Super Nintendo to USB HID controller adapter firmware for cheap CH552 board with
- low latency (controllers polled continously, reports at USB high speed)
- also works with NES pads
- Sega Genesis Mini compatible (note that the controller always presents as 6 button regardless of what's plugged into it though)
On a weact CH552 board wire it up so:
SNES CH552 board
------- -----------
CLOCK 14
LATCH 15
DATA 16
5V 5V
GND GND
See the pinout.
Flash the board by holding the P36 button down while connecting it to your PC and QUICKLY (within a few seconds) flash the snes2usb.bin with a flash tool like wchisp. "make flash" is set up in the makefile for this.
If you want to play with the code, get SDCC.
The usb.c and helper macros are taken & cobbled together from UNIT Electronics Cocket Nova examples using SDCC which themselves are derived from the wagiminator examples. All credit to them for making this much easier.
Most of this code & what it is adapted from is GPL3 with the exception of the wagiminator stuff (that was also in the Cocket Nova examples) being CC 3.0 Attribution-ShareAlike and I made some changes to it. The CH552 specific headers are probably public domain. My code (main.c mostly) is hereby public domain So don't use this commercially I guess.