DIY Game Controller Project with a Pro Micro which uses an Atmega32U Microcontroller for emulating a Game Controller

SO this post is gonna be about a "DIY Gaming USB Controller" which we have been working on recently at ElectroPunkz Labs.

the idea here is to make a cheap Atmega32U based USB controller with buttons and analog joysticks that can be used to play games

like NFS, GTA, half-life, LITTLE FIGHTER 2!etc

We've made our controller in two form factors, the first one is based on PS1 or SNES config and other is a straight-up Xbox USB controller with analog sticks and buttons (not yet finalized)

We gonna Make V1 in this post which is the PS1 layout Controller!

It's better if you watch the project's Video First-

the hardware is pretty simple and easy to get (except for the PCB, you can make your own with the attached PDF file of PCB)

  • Arduino Leonardo/ Pro Micro/ Atmega32U
  • Buttons (tick tack switches)
  • Custom etched PCB (button matrix PDF is attached)
  • 10K Resistors
  • Jumper wires

BUILTPROCESS(Wiring, assembly, etc)

The first thing that we need to do is prepare the Basic Setup which is basically 12 Pushbuttons connected in pull-down Config with a Pro Micro, basically this-

we tested this on a breadboard and then prepared a PCB according to the above schematic.

After making the PCB (in OrCad cadence) we printed its TOP Layer's PDF on a Glossy paper.

I cut the Glossy paper according to PCB shape and place it on a copper clad board and apply heat to it for Transferring the Ink from glossy paper to the Copper clad board. (Basic Tone Transfer Method, watch my video about this topic)

After getting the PCB ready, we Dropped it in an Etching Solution and etch the PCB, after that, we just drilled holes for components, and our DIY GAME CONTROLLER PCB was Ready!

Then we just put everything on it according to the schematic and the circuit was ready.

After getting the Circuit Ready, we Designed and 3D printed the PCB Housing/Case for the controller in Fusion360.

Now we just need to upload the code and play some games with it.

Upload the Code provided on your Pro Micro.

word of advice, first test your board/setup thoroughly, check the resistance and connectivity of PCB traces because if something is missing this would cause a lot of keyboard error because missing ground lines will send irregular signals to the pins and your pro micro will keep on pressing random keys which will make reprogramming the Pro micro very difficult.

The first thing that you need to do is Open Notepad, and start pressing the keys of your Controller and check whether the keys on the press are displaying the right words that are assigned

or just use any Keyboard testing app or web app.

If everything is working according to the code, then open any game start playing it with this DIY GAMING CONSOLE!

watch the video-

Well, the first thing that I'm gonna add to this setup is Analog Joysticks for playing proper games which uses a mouse for navigating the player, kinda like XBOX ONE CONSOLE.

V2 will have a proper PCB with XBOX One Controller Layout so stay tuned for that.

Leave a comment if you guys have any problem!

Arnov Sharma
Just an Average Maker from India