You will need the following items:
SNES Controller
Teensy 2.0 USB Board (http://www.pjrc.com/teensy/ )
USB Cable (http://www.pjrc.com/store/cable_usb_mini_b.html )
Soldering Iron
Solder and Flux
Wire Stripper
Slip Joint Pliers
Needle Nose Pliers
Diagonal Pliers
Knife or Blade
Philips Precision Screwdriver
Step 1: The SNES Controller
Step 2: The Teensy USB Board
First, we need to put our program onto the Teensy. Download the Teensy loader application at:
http://www.pjrc.com/teensy/loader.html .
Next, download our USB/PS3 program for SNES from:
https://github.com/johnburkert/YeOldeJoystick/blob/master/hex/ps3_gamepad_snes.hex .
This file is the program we are going to run on the Teensy. It tells the Teensy to behave like a PS3 controller. If you are a programmer, feel free to grab the source code and make your own modifications. I also have a hex file that tells the Teensy to treat the SNES gamepad like a USB Keyboard, which is useful for some Android tablets that have USB input, but don't support gamepads.
Now that we have the loader application and the hex file, we need to put the hex file on the Teensy.
Step 1: Connect the Teensy to your PC
Step 2: Press the reset button on the Teensy
Step 3: Select the hex file you downloaded above with the loader application.
Step 4: Press 'Program'
Step 5: Wait a few seconds...
Step 6: Press 'Reboot'
Step 7: Wait a few seconds...
Step 8: You are done programming the Teensy!
Additional instructions for connecting and programming the Teensy can be found at http://www.pjrc.com/teensy/first_use.html .
Step 3: Stripping the wire harness
Step 4: Soldering the wire harness to the Teensy
White Cable (VCC) -> Teensy VCC
Yellow Cable (CLOCK) -> Teensy PB0
Orange Cable (LATCH) -> Teensy PB1
Red Cable (DATA) -> Teensy PB2
Brown Cable (GND) -> Teensy GND
Teensy pinout is at:
http://www.pjrc.com/teensy/pinout.html (Teensy 2.0 Pin Assignments, Using C Language)
Step 5: Making room for the Teensy
Step 6: Put the USB cable on a diet
Step 7: Putting it all together
Step 8: Button Mappings
A -> Circle
B -> Cross
X -> Triangle
Y -> Square
L1 -> L1
R1 -> R1
Up -> Up
Down -> Down
Left -> Left
Right -> Right
Start -> Start
Select -> Select
Virtual Button Mappings:
Select + Start -> PS Home
Select + L1 -> L2
Select + R1 -> R2
Select + Start + L1 + R1 -> Reboot (for when you want to load a new program with the Teensy loader application)
You can test your new gamepad in Windows 7 by running "joy.cpl". Highlight the controller and select 'Properties'.
Step 9: Credits
http://www.artlum.com/gameduino/nes.html
For amazing details on SNES/NES pinouts:
http://pinouts.ru/Game/snescontroller_pinout.shtml
For blowing my mind with PS3 Home button support (This code is the basis for what we are using here):
http://www.slashdev.ca/2010/05/25/ps3-gamepad-with-home-button/
For developing a kick-ass, affordable and easy-to-use USB board:
http://www.pjrc.com/teensy/index.html


















































Visit Our Store »
Go Pro Today »




e.g. http://www.ebay.co.uk/itm/ATMEL-Minimum-Development-Board-Core-System-Shield-Board-for-Atmega32-Mega32-AVR-/281012534396?pt=LH_DefaultDomain_0&hash=item416da6fc7c
Thank you
http://www.hammondmfg.com/dwg9.htm
My local Fry's carries them. Good Luck!
http://ladyada.net/make/usbgamepad/