Please do not post a support request without first reading and following the advice in https://retropie.org.uk/forum/topic/3/read-this-first

Timing problems with SNES controller hooked into RPi 3



  • Heya! I've soldered wires from the back of my SNES' controller board and into my Raspberry Pi v3. That is, I opened up the SNES, and attached wires from the back "rivets" to the various GPIO pins of the Pi. I did this because I wanted original hardware, but, I wanted the ability to capture the SNES controller input onto the Pi while still playing real SNES cartridges.

    But, I cannot seem to poll any of the button inputs properly. jstest reports that all the buttons are set to high. The weird thing is that on the SNES, once everything is plugged in, none of the buttons work except the B button, which acts as if every button is being pushed (the character will jump, the game will pause, the game will act as if the A button is being pressed, etc). I remember reading somewhere that the B button is significant in the polling for input, but I can't find that article I was reading anymore.

    Does anyone have any suggestions or tips on how I can read controller input properly? I feel like everything is wired up correctly because something happens once I start plugging into the RPi, but my suspicion is that polling is off because of all the wacky behavior.



  • @gjtorikian I'm also using the real snes controller ports. I'm using this setup with the gamecon driver with no issues:

    Pin1=3.3v
    Pin5=D2
    Pin6=GND
    Pin7=D1
    Pin19=C1/C2
    Pin23=L



  • Thanks so much for this!

    Apparently, I'm a knucklehead and had two things wrong in my wiring:

    • D1 was in Pin3, not Pin7
    • I had the clock and latch wiring reversed

    I'm now able to read controller data with jstest. Thanks again!


 

Contributions to the project are always appreciated, so if you would like to support us with a donation you can do so here.

Hosting provided by Mythic-Beasts. See the Hosting Information page for more information.