Live data from Hacker News

Building a USB SNES Controller

blog.chybby.com

31–40 of 101 posts

Re: Building a USB SNES Controller

#31
my very first electronics projects were classic controller to USB conversions. I remember struggling with PIC after just wrapping my head around BASIC Stamps, and trying to follow raphnet tutorials https://www.raphnet.net/electronique/multiuse_tiny1/index_en...

going to show this article when people ask 'how do i get started with a fun electronics project' :)

Re: Building a USB SNES Controller

#32
post #2

Of course completely awesome to make a modification like this. However, if you yourself want a USB SNES controller, consider buying one instead. 8BitDo offers them with the SN 30 Pro - the quality is good, they work with the Nintendo Switch or PC (including Linux), they have the additional buttons needed for modern games, there is a wired and a wireless version and the newer variant has afaik a replaceable battery (u…

Maybe if you want to play super mario, the 8bitdo sn30pro works. But it has a huge problem of false diagonals, making is absolutely worthless to play tetris, or any fighting game that requires precise control. If you need precise controls, avoid this model.

I have the SF30 Pro since a few years now and there might have been different revisions, but I definitely did not observe that. And I played through Hollow Knight with it, so I doubt that the controls are imprecise - I would not have had succeeded. Granted though, neither tried Tetris nor a classical fighting game.

Re: Building a USB SNES Controller

#34
post #14

Reminds me of that meme that says > Look What They Need to Mimic a Fraction of Our Power! That tiny arduino has a 16Mhz chip, while the NES main CPU ran at 1.66 MHz. Just a funny fact :)

I once designed a custom PCB that fits inside the original NES four score case. You can connect 4 NES controllers to it and the inputs were sent to a Raspberry Pi via UDP (so no wire between couch table and TV was needed).

I think my PCB had more parts for its simple power supply than all 4 NES controllers combined.

These things are an absolute masterpiece of simplicity!

Re: Building a USB SNES Controller

#35
post #34
post #14

Reminds me of that meme that says > Look What They Need to Mimic a Fraction of Our Power! That tiny arduino has a 16Mhz chip, while the NES main CPU ran at 1.66 MHz. Just a funny fact :)

I once designed a custom PCB that fits inside the original NES four score case. You can connect 4 NES controllers to it and the inputs were sent to a Raspberry Pi via UDP (so no wire between couch table and TV was needed). I think my PCB had more parts for its simple power supply than all 4 NES controllers combined. These things are an absolute masterpiece of simplicity!

My coworker has done a similar thing, designing a PCB that allows us to connect the SNES controller over RJ45 to a custom Pi hat. We have students writing bare metal code for it!

Re: Building a USB SNES Controller

#36
post #26

Looking at the described protocol it seems the SNES controller uses a simple 16-bit parallel-in-serial-out shift register - and a quick Google confirmed that. This means the timing is almost certainly quite loose, and there's a pretty decent chance you might even be able to poll it as the 1kHz "needed" for "serious" gaming. And it'd be pretty trivial to offload the readout to the MCU's SPI peripheral.

It's extremely loose! Using a custom PCB to connect the controller over RJ45 to a custom Pi hat I wrote some code to simply display the button presses on screen, to test the functionality of the controller (we are modifying hundreds). I had to play around a lot with the timings to match up the response of the program with the speed of my finger pushing a button, else the program would return "you pushed B" a dozen times on a single push.

I do wonder how much original SNES devs had to consider similar scenarios.

Re: Building a USB SNES Controller

#37
post #2

Of course completely awesome to make a modification like this. However, if you yourself want a USB SNES controller, consider buying one instead. 8BitDo offers them with the SN 30 Pro - the quality is good, they work with the Nintendo Switch or PC (including Linux), they have the additional buttons needed for modern games, there is a wired and a wireless version and the newer variant has afaik a replaceable battery (u…

There is also the 8BitDo Mod Kit for SNES/SFC Classic Edition Controller which allows to convert original SNES controllers to bluetooth. https://shop.8bitdo.com/products/8bitdo-mod-kit-for-snes-sfc...

Re: Building a USB SNES Controller

#38
post #14

Reminds me of that meme that says > Look What They Need to Mimic a Fraction of Our Power! That tiny arduino has a 16Mhz chip, while the NES main CPU ran at 1.66 MHz. Just a funny fact :)

In that case, you’ll love tom7’s Reverse Emulation video: https://youtube.com/watch?v=ar9WRwCiSr0

Re: Building a USB SNES Controller

#40
This brings back memories. The first (and only) hardware project I've ever done is building a 4-controller multitap that connected via parallel port. It ended up working really well--lots of fun playing games on snes9x with friends.
Post reply on HN