so I’m trying to put together a RetroPie to play NES games, and I’ve got an original NES controller. I wanted to hook it up directly to the GPIO pins without having to fuss with any adapters, so I cut off its plug and connected up some crimp pins:
I’ve tried to follow various different connection instructions that I’ve found online, but I haven’t yet had any luck getting the emulation station startup to see the controller.
It comes up saying “no joystick detected” and the button presses aren’t read. Can anyone offer some guidance for getting this to work? It would be most appreciated!
Thanks for those schematics, they confirm how I thought the controller was wired. The ones I’ve followed for connecting it to the Pi GPIO pins are:
I haven’t had any luck getting the controller to communicate following either. I’m using the latest RetroPie image, and I assumed that it auto-loaded the gamecon_gpio_rpi driver at startup? Do I have to activate it somehow?
So I loaded the driver via the RetroPie script (thanks for that!), and then discovered that since I’m on a rev2 Raspberry Pi I had to load it with this command:
sudo modprobe gamecon_gpio_rpi map=0,0,0,0,2,0
At that point I still had no love running jstest. So then I tried using the 5v pin instead of the 3.3v pin, and there it was!
So now I’m working on figuring out the protection circuit that’s recommended so that the 5V doesn’t blow up the controller or the Pi. I think I get the idea using a 500 ohm resistor and a standard diode. We’ll see what happens next…
Hmm, so does this mean the original NES controller requires 5V to work instead of 3.3? Because I’m getting ready to solder my original NES controller ports to my petrock-purchased GPIO adpater, which I believe only provides 3.3V, correct?
Yup, I got mine working. What type of enclosure are you using? I am using the original NES, so what I did was solder the original port cables to 1″ square board that has a 2×5 header. That way I can connect it directly to the GPIO adapter using a standard 10-pin ribbon cable. Also, the 3.3v was no problem for me using the GPIO adapter.