Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

SnrNotHere16/Arduino-Micro-Mini-Gamepad

Open more actions menu

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

56 Commits
56 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Arduino-Micro-Mini-Gamepad

This project uses the hitletgo promicro (atmega32u4). I used this mcu because it has an hid (human interface device) library and it is cheap. This project was inspired from my previous fightstick project, which used the tiva c tm4c123 https://github.com/SnrNotHere16/ArcadeStickWithScreen

My motivation was to create a fightstick that I could play fighitng games like Street Fighter. Although my fight stick worked perfectly on emulators, it did not register properly on Steam. Because I could not get the fightstick to work, I figured that if I created a hid keyboard device then steam should be able to register the commands properly.

Arduino-Micro-Mini-Keyboard on Steam

Here is an image of me using the gamepad on Street Fighter 30th Anniversary Collection

Here is an image of the keys assigned to each button though I may change this in the future.
https://github.com/SnrNotHere16/Arduino-Micro-Mini-Gamepad/blob/main/microGamePad/microGamePadFinal.ino

I decided to incorporate a keyboard that uses the arrow keys instead of "awsd" as well.
https://github.com/SnrNotHere16/Arduino-Micro-Mini-Gamepad/blob/main/microGamePad/microGamePadFinalWdirectionalkeys.ino

Breadboard prototype (Fritzing)

Schematic (Circuit Maker)

PCB Design (Circuit Maker)


First PCB image

I sent the gerber files from circuit maker to JLCPCB and got my board printed out and shipped.

Help

https://www.youtube.com/watch?v=U0oaebN8pbc
https://github.com/shveytank/Arduino-Game-Controller

Morty Proxy This is a proxified and sanitized view of the page, visit original site.