Hi, im new with Arduino and i want to introduce my project which is called Arduino Gamepad Emulator and a minimalistic arduino library that enables to make use of the main application.
I wanted to make a gamepad with my Arduino UNO clone by attaching buttons and joysticks to it. I found out that in case of Arduino UNO or NANO its not as easy as it may seem to be because they don’t have a ATmega32u4 chip which supports HID class. In this case we cannot use directly the most popular library called “Joystick.h”.
I read that to achieve the desired effect it is needed to use Flip application and reprogram chip firmware which is possible only when having ATmega16u4 (im not sure). But cheaper clones have a CH340 chip too… I don’t know what to do then.
Inspired by a youtube video i wrote a minimalistic arduino library which handles buttons and joysticks and sends messages about its state changes via serial port.
Additionally i wrote a C++ console application which tracks the messages sent via serial port from arduino and enables to assign actions to components connected to arduino. Buttons can emulate keys. Joystick can emulate either mouse or 4 buttons.
I think the whole thing met my expectations, all you need is a few lines of code in arduino and a very fast configuration in application and you have a working
A disadvantage of the app is that it has to run in the background…
But I tested it in the Witcher 3, and on my machine(i7-6820hq) i noticed increase in CPU usage within only 1 percent.
Links to github repositories :
I’d love to hear your feedback