Picture of SNES + Teensy = USB/PS3 Gamepad
The Super Nintendo controller is one of the best gamepads ever made. This tutorial will show how you can breathe life into your old SNES controller so you can use it with your PC and your PS3.

You will need the following items:

SNES Controller 
Teensy 2.0 USB Board ( )
USB Cable ( )
Soldering Iron
Solder and Flux
Wire Stripper
Slip Joint Pliers
Needle Nose Pliers
Diagonal Pliers
Knife or Blade
Philips Precision Screwdriver
Remove these adsRemove these ads by Signing Up

Step 1: The SNES Controller

Picture of The SNES Controller
Remove the 5 screws from the back of the SNES controller and pull the back of the controller off. We can see the back of the PCB and the wire harness connector. Remove the wire harness. We are going to use the wire harness to attach the Teensy, so be careful when removing it.
joshdgatlin4 months ago

the hex code keeps turning the teensy on and off and it won't show that i'm using a virtua stick what could be the problem"

same here

thezer0122 months ago

So what exactly could you do on a ps3 or pc with this controller?

ferret1413 months ago

Hi I'm trying to build this as a christmas present for someone but I've hit a hurdle on two boards.

My Teensy 2.0 shows up as "Virtua Stick High Grade" for a second then becomes "USB Input Device"

My Pololu A-Star 32U4 Micro also shows up as "Virtua Stick High Grade" but constantly disconnects and re-connects.

Can anyone offer a solution to either of these problems?

johnburkert (author)  ferret1413 months ago
Does the controller still work? Teensy tech support may be able help

Thank you for replying so promptly to my last message (can't say the same for myself). The solution was simple. It would help if the 5V line hadn't slipped out of the breadboard. It worked and the controller mod was a gift well received.

Any ideas why the A-Star board behaved the way it did? Do note the PB0 isn't broken out on the A-Star but the Teensy didn't mind when I had CLK not attached.

joshdgatlin4 months ago

where is the source code? I need to make a lot of adjustments to this program so that I will be able to use it for a class project.

johnburkert (author)  joshdgatlin4 months ago
JoePerkins1 year ago
I've tried now and it works :)
JoePerkins1 year ago
This is great, I've been waiting to do this for ages. Would this work with a PAL gamepad? If not, what changes should I make?

Thanks! :D
Can this work for the Teensy 3.0?
Macflame2 years ago
Could I use a ATMEGA32L-8AU MCU AVR Development Board for this?
Tomdf2 years ago
Cool! I hadn't heard of these Teeny things, thanks for the intro :D
Abby_Santi2 years ago
this is really cool but im guessing using different codes can this be done with an NES controller also? have you ever tired it?if so would you be willing to post the codes for us to use?

Thank you
quadcrunk3 years ago
does this work with Teensy++
johnburkert (author)  quadcrunk3 years ago
yes, but you will need to make changes to the makefile for the different processor and the pin locations are different on the Teensy++.
Ok thanks, I was wondering if you can modify the make file and compile for me because I'm not familiar at all on how to modify the files.
mdgrover3 years ago
Excellent instructable! I'm trying a different approach - using the exact same circuit and code, but keeping the Teensy outside of the controller. I created an SNES controller "jack" by cutting a cheap controller extension cable in half, and connecting the corresponding wires to the Teensy. This allows you to plug the SNES controller into the circuit instead of modding the actual controller. The downside of course is that you have to create some kind of housing for the Teensy, SNES jack and the USB. I'll let you know if it turns out as expected.
johnburkert (author)  mdgrover3 years ago
Very cool. I have a famicom project I am working on with an external teensy and I was going to use one of these:

My local Fry's carries them. Good Luck!
johnburkert (author) 3 years ago
I posted a follow-up tutorial using this same hack with a joystick.
pfred23 years ago
So your project is the first half of this?
johnburkert (author)  pfred23 years ago
We go about it differently. They solder directly to the pcb. I read the output and convert. I like my solution better.
Do you know why they did it their way as opposed to how you did it?
johnburkert (author)  pfred23 years ago
Their way takes a lot more time and effort. The only reason to do it that way is if the controller's chip is dead. They are bypassing the chip when they solder directly to the pcb. The advantage of my way is it works with any snes controller (even the super advantage joystick) and it takes less time. But if your controller is busted, then soldering to the pcb is the only way to do it.
Thanks for the explanation, that would make sense. Though it seems to me that their way would work with any, where as your way would only work with a functional controller.
mikeasaurus3 years ago
Awesome retro hack!