Guitarduino Hero
A homemade and cost-effective solution to rock out with Guitar Hero!

Guitar Hero is awesome! But guitar controllers are hard to find and more expensive than ever.
That's why I built my own.
I got a joystick module to serve as my strum bar, got big buttons for the controller, and used breadboards to form the neck of the guitar. Then I wired it all up, and got the C++ firmware written to recognize the analog input of the joystick and the digital inputs from the buttons.
Then I had to get the Arduino recognized as a game controller. Configuring third-party drivers, I was able to get my laptop to see my Arduino as a generic controller, and map my buttons to a software model.
Once that was done, I had to use an advanced method to program the firmware: DFU Mode.
With DFU Mode enabled, the device was programmed and thus, the controller was ready. All that was left to do was rock out!

To my delight, the device had incredible reliability, and it was just as responsive as any game controller I've ever used, and for the exceptionally low cost of it, it provided many many hours of entertainment.