


It also has interrupts on every pin so that makes it especially nice for this application. (2) Arduino DUE has support of native USB which can act like a keyboard using the keyboard library that comes in the Arduino IDE. This is the method I used for my second controller. The documentation for UnoJoy is very good so to install and use it simply follow the steps in the README included in the download. You will run out of input on an UNO fast. If you do this I suggest using an Arduino Mega for the additional inputs. This will only allow for 1 way communication but is it very easy to setup. The main advantage of this is that it allows for easy analog input and buttons can be reassigned in the game setting.

(1) UnoJoy is this firmware for the Arduino that makes it behave like a generic USB joystick. Here are the main 3 I considered as a result of my research: There are many options for your microcontroller and many ways that you could choose to communicate with your computer/game.
