How To Build A USB SNES Controller For The PC, iPad, And PS3 – Part 4: The Build
02 Jan 2013
So now we know what we're building, the theory behind all the input standards, and the code that's going to power it. All we need to do now is test and build it. Thankfully, we can test our creating without ever lifting a soldering iron.
The Test Rig
This is what we need to build in order to test the controller:
The controller doesn't require a socket. All I did was bend back some high gauge wire onto itself, but there's a variety of ways you can get wires plugged into the controller.
The SNES pinout is as follows:
Once you've got the wires in place, find some way to connect them to the Teensy. I happened to have a Teensy++ with Header Pins laying around, so that's what I used to test the code. Once the controller has been plugged into the Teensy, connect the Teensy to your computer. Upload the code and test out the three modes. You can test out the PS3 functionality by plugging your testing rig into the PS3 and pressing Start-Select-X. If you have a iPad Camera Connection Kit, you can test the iCade functionality on your iPad now as well.
To build our multiplatform USB SNES controller, you will need:
A Super Nintendo controller. These aren't too hard to come by, but there are plenty of fakes floating around. The third party knock off controllers should work fine for this guide, but most people like to make sure they're using a genuine Nintendo controller if they're going to all the trouble to hack it. See if a potential controller is genuine, make sure the logo is silkscreened on the controller, not embossed on the plastic. My local non-Gamestop used game store has legitimate used SNES controllers for $20, but their inventory ran dry just as I started this project. Thankfully, I was fortunate enough to discover that there were several auctions on eBay for Japanese Super Famicon controllers, which an end auction price and shipping of roughly $20.
As we discussed in Part 3, we're using a Teensy for the brains of our controller. The Teensy 3.0 is the most recent Teensy, but I used the Teensy 2.0 in my controller. It's still available, and a bit cheaper. Both will do though. $16.
Did I mention our controller is also going to house an 8GB flash drive? It's going to house an 8GB flash drive. When you plug the controller into the computer, the flash drive will mount as well, allowing you to carry all your games along with you. $9.
We need a USB hub to wire all of this together. I've used this style USB hub with success in the past. $5.
You're going to need a long cord coming out of your SNES controller, as well as a very short Mini-USB cable. You can kill two birds with one stone by ordering a long Mini-USB Male to USB Male cord. You can splice this cable from any USB device you happen to have laying around. I already owned one of these, but I forgot to take a picture of it. $5.
You'll need some soldering tools too. A basic set like this can run you as low as $20. Not pictured: The ability to solder.
The entire controller costs roughly $85 if you don't already own one of those parts. That doesn't include the tools needed to make it, or the weekend afternoon it takes to build. Unfortunately, due to the high costs, there's no way one could practically sell one of these for less than $100. This places the controller firmly in the, "Fun learning experience" category, and I doubt you'll see one of these for sale any time soon.
We need to remove the casing from several parts.
First, remove the casing from your flash drive.
Next, remove the casing from the USB hub.
Cut the USB sockets and plug off of their wires. If your hub has a long cord on it, you may want to keep the plug on.
Desolder the wires from the hub, leaving just the bare circuit board. Take care not to complete de-pad the solder points, or else you won't have anything to attach new parts to.
Using four short pieces of cable, solder the pins coming out of the USB flash drive's socket onto the USB hub. Make sure you have the order of the pins correctly, and make sure you don't accidentally de-pad the hub. If that happens, that socket will be useless, and you'll have to try again. That happened to me when I was building this, which is why the position is completely different in the next photo.
See that little white thing? That's the Mini-USB "cable". It's been stripped down as small as possible and soldered down onto the USB hub. I was lucky to have a cable who's internal wires matched the same colors as the wires we snipped off the USB hub.
Remember what I was saying about making sure not to de-pad the hub? Seriously, be careful!
At this point you'll want to solder on the long length of USB cable we have remaining from that short snippet of Mini-USB cable. Once it's soldered into place, you can test your hub to make sure that the flash drive and Teensy both still work.
Put your contraption aside and get the SNES controller out.
Remove the screws. No tricks here, just five standard Philips head screws.
This is what the innards look like. Give the black plug in the middle a firm tug, and it should pop out.
Solder the five wires onto the Teensy. The wires colors match the pinout at the top of this page.
By now hopefully all of your parts loosely fit on the SNES controller. Now there's just one more thing you need to do.
The back of the controller doesn't have any room on it for our parts.
Bust out your Dremel. You have a Dremel, right?
Don't forget the safety goggles! You don't want chips of plastic in your eye.
There's three spots you need to level out. They don't have to be perfectly flat, but they should be close to it.
That's it, you're done! Lay all the parts down, slowly close the lid, and screw the two pieces together. By the way, in case you were wondering: Yes, you can use two at once.
That's the end of my guide. I hope this was all informative. Feel free to ask any questions in the comments below.