-
1Identify cables on your cable
Depending where you got your cable from, the wire colors probably won't match with mine, so you have to map each pin with a wire color.
Multimeter probes don't fit so grab another wire to probe each pin. With multimeter set to continuity, in one hand hold a wire (on one end of the cable) to the multimeter probe. With the second hand (and a lot of dexterity) hold a short wire pressed to your multimeter probe and try to plug it into each pin in the connector side of the cable until you find the connecting pin.
Write down which pin is connected to which wire. You can find pin numbers on the wiki page: https://en.wikipedia.org/wiki/Atari_joystick_port. Note that the view is as looking at your commodore/atari port, not at the cable! So when you count the pin number on your cable, you have to mirror it!
-
2Soldering
Solder the SNES connector as (NOTE: SNES pin numbering starts from the square side, and the last pin number is on the rounded side) to the Arduino pins:
- 1 -> 5V
- 2 -> A0
- 3 -> A1
- 4 -> A2
- 7 -> GND (on the other side of 5V pin)
If you printed the enclosure, now it's the time to pull the cable through the hole on the bottom.
Solder the cable to the Arduino pins:
- 1 -> D12
- 2 -> D11
- 3 -> D10
- 4 -> D9
- 5 - not connected
- 6 -> D8
- 7 -> VIN
- 8 -> GND
- 9 -> not connected
Check the pictures if you're having trouble.
-
3Flash the firmware
Open Arduino IDE, connect the board, select the COM port and board "Arduino Nano".
Get the code from the github (link in the links section) and flash it. It's the snes2c64.ino file you need.
-
4Test it
With usb connected, connect a SNES controller. Press on the action buttons and direction pad. The green led should light up when any of those is pressed. If it doesn't, then you haven't wired the SNES connector correctly.
If you wired the cable incorrectly, there is risk you're going to fry something in your precious vintage electronics. So it's sensible you test once again the pinout.
Don't forget that when when looking at the pinout for the 9 pin connector, the controller side is mirrored. So counting from right to left (first the longer row, then the smaller row), find the 7th pin and ensure it's indeed soldered to VIN on the Arduino. Same with 8th pin, should be GND.
Next you can test that the cable pins are pulled down when you press a button on the controller. Still with the USB attached (and powered), with the multimeter set to DC voltage, attach the black probe to the SNES connector pin 1 (5V), and with the red probe touching any of the D8-D12 pins, press all controller buttons until you find one that shows -5V on the multimeter. Otherwise multimeter should show 0V. That's because when you press a button, the corresponding action pin is pulled down to GND.
-
5The moment of truth
If all good so far, and if you're brave enough, you can plug the cable and start playing the games with a SNES controller.
Discussions
Become a Hackaday.io Member
Create an account to leave a comment. Already have an account? Log In.