This repository contains 3D-printable models, PCB design files and Arduino code needed to make an arcade controller that looks like this:
To make one you will need:
- 3D printed case parts - top and bottom
- the custom PCB
- Arduino Pro Micro
- 12x Kailh low profile (choc v1) switches of your choice
- (optionally) 12x Kailh low profile hotswap sockets
- 3D printed buttoncaps
- 6x 6x6x8mm tact switches
- 5x 3x10mm wood screws
- a soldering iron
The case should be printed at 0.20mm layer height. The top part should be printed upside-down, the bottom part should be printed as-is. They don't require supports.
The PCB can be ordered from a number of online services using the included Gerber files, I used JLCPCB (leave all the settings at default, you can choose the PCB color). PCB thickness should be 1.6mm.
The switches can be soldered in directly to the PCB or you can use hotswap sockets. If you want to use hotswap sockets, you will have to print the appropriate bottom part of the case (it's 1mm thicker).
The Arduino has to be soldered directly on top of the PCB, otherwise it won't fit in the case (the plastic base of the pin header can't go between the Arduino and the PCB).
You don't have to use the code included here, you can use any other ATmega32U4-compatible firmware. The included firmware works with the PS3 and PC.