RetroPie forum home
    • Recent
    • Tags
    • Popular
    • Home
    • Docs
    • Register
    • Login

    Timing problems with SNES controller hooked into RPi 3

    Scheduled Pinned Locked Moved Projects and Themes
    snesraspberry pi 3
    3 Posts 2 Posters 946 Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • G
      gjtorikian
      last edited by

      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.

      DarksaviorD 1 Reply Last reply Reply Quote 0
      • DarksaviorD
        Darksavior @gjtorikian
        last edited by Darksavior

        @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

        1 Reply Last reply Reply Quote 0
        • G
          gjtorikian
          last edited by

          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!

          1 Reply Last reply Reply Quote 0
          • First post
            Last post

          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.