Difference between revisions of "USB SNES Controller"

From EttiWiki
Jump to navigationJump to search
(Introduction)
m
Line 5: Line 5:
 
I bought a few ''[[Wikipedia:Gamepad|gamepads]]'' then, but still, they were missing some more or less important keys compared to the original SNES controller and the real "Nintendo feeling" never came up. (See, back then, USB did not exist yet. Instead, joysticks and gamepads had this 15-pin D-sub connector that you had to plug into your soundcard, and calibration also for gamepads was crucial because inputs were still analog.)
 
I bought a few ''[[Wikipedia:Gamepad|gamepads]]'' then, but still, they were missing some more or less important keys compared to the original SNES controller and the real "Nintendo feeling" never came up. (See, back then, USB did not exist yet. Instead, joysticks and gamepads had this 15-pin D-sub connector that you had to plug into your soundcard, and calibration also for gamepads was crucial because inputs were still analog.)
  
Many years later, the idea struck me to program a microcontroller to interface with an original SNES controller on the one hand, and provide a standard [[Wikipedia:USB human interface device class|USB HID]] interface on the other hand, so that it could be used with any PC, with any operating system and without the need for additional drivers.
+
Many years later, the idea struck me to program a microcontroller to interface with an original SNES controller on the one hand, and provide a standard [[Wikipedia:USB human interface device class|USB HID]] interface on the other hand, so that it could be used with any PC, any operating system and without the need for additional drivers.
  
 
The vision I had in mind was a circuit so small that I could hide it in a standard USB connector. The result would be an SNES controller with a USB plug. I did not want to modify the electronics within the controller itself so it would still be usable on a normal SNES.
 
The vision I had in mind was a circuit so small that I could hide it in a standard USB connector. The result would be an SNES controller with a USB plug. I did not want to modify the electronics within the controller itself so it would still be usable on a normal SNES.

Revision as of 07:34, 13 June 2011

During my childhood I used to play many great games on the Super Nintendo (SNES). Many years later, I heard of snes9x and played a few of these games again on my PC. What always annoyed me was the controller: it was nearly impossible to play these games with the keyboard.

Snes9x joypad.png

I bought a few gamepads then, but still, they were missing some more or less important keys compared to the original SNES controller and the real "Nintendo feeling" never came up. (See, back then, USB did not exist yet. Instead, joysticks and gamepads had this 15-pin D-sub connector that you had to plug into your soundcard, and calibration also for gamepads was crucial because inputs were still analog.)

Many years later, the idea struck me to program a microcontroller to interface with an original SNES controller on the one hand, and provide a standard USB HID interface on the other hand, so that it could be used with any PC, any operating system and without the need for additional drivers.

The vision I had in mind was a circuit so small that I could hide it in a standard USB connector. The result would be an SNES controller with a USB plug. I did not want to modify the electronics within the controller itself so it would still be usable on a normal SNES.

Components

SNES controller

Microcontroller

Code

Prototype

Final