The default button-to-pin assignments in the GP-2040 Pico firmware will work well for most arcade controllers. The diagram above shows the GPIO pin numbering for the joystick and thirteen user buttons, as well as the reset button and enable switch.
Wiring Harness
The microswitches that are actuated by the buttons and joysticks all use spade connector wiring. You can use these to connect to the terminal PiCowbell directly, or in the case of the X-Arcade, these are bundled and connected to the original PCB with JST-XH 5-conductor shrouded connectors.
Note how many of the ground runs are daisy-chained to reduce the number of connections back to the main board.
We can use the JST-XH cable sets to make the wiring simpler -- unplug them from the old PCB and plug them into the cable extensions to wire into the terminal blocks.
I used a continuity tester on my multimeter to determine the switch-to-wire correspondence and labeled each cable set before wiring.
This also included one sub-harness for the built-in power LED, and the selector switch for the enable pin.
USB Cable Extension
Use an available hole (from removing the old PS/2 and D-sub cabling) to run a USB micro-B panel mount extension. This plugs into the Pico on one end, and mounts to the exterior on the other.
You can then plug in a USB cable externally to plug into your gaming machine, and remove it when not in use.
This particular controller is a dual user setup. Since you can plug multiple USB devices into your computer for multiplayer gaming, a second Pico wired to the second set of buttons would give you exactly what you need for head-to-head gaming!
Text editor powered by tinymce.