We were of course inspired by Guitar Hero, the Xbox Adaptive Controller, and the Nintendo Power Glove. We took interest in alternative controllers, and tried to give our spin on these ideas using a pair of gloves and different components.

What it does

It lets you play your favorite songs on any rhythm game with only a pair of gloves!

How we built it

We acquired 5 flex sensors and an accelerometer, then carefully mounted these components to two gloves. We wired everything through an Arduino Uno Rev3, allowing us to organize our output and map it all to corresponding keys. We coded queues for each input, trying our best to match the movements you'd make with an actual guitar. Through sweat, blood, and tears, we ended up with a cool and functional alternative controller.

Challenges we ran into

Originally we tried to use two Arduinos, connecting one (an Arduino/Genuino 101) via bluetooth. The Arduino/Genuino 101 had an on-board accelerometer, so we attempted to use that to measure if a player was "strumming" or not. We had a lot of trouble getting the Arduino/Genuino 101 to output data that could be easily interpreted for a game, so we attempted to wire it to our other Arduino (the Arduino Uno Rev 3) in order to make use of the data from the accelerometer. The delay between them was too great, so we instead wired our standalone accelerometer to our other Arduino (the Arduino Uno Rev3), which could simply mimic a keyboard. Additionally, we had to flash custom firmware onto the Arduino Uno, as it did not have onboard HID support. All input needed to adhere to the poorly-documented communication protocols through the USB output on the Arduino. Finally, the delays required for input to properly register required rigorous testing and fine tuning in order to properly activate on a given note's threshold.

Accomplishments that we're proud of

We got 54% accuracy on the Guitar Hero 3 chart of Slow Ride using our full functionality!

On a more serious note, we are very proud of creating a device that can be used to mimic playing a guitar. We feel that we did well to interpret the movements that a guitar player would make, utilizing some unique sensors and equipment. We utilized our electrical engineering knowledge to get accurate readings from these sensors. The accuracy we achieved with our alternative controller is satisfactory, matching a user's intentions fairly well. The fact that we were able to leverage custom firmware to build a custom input device that ended up so relatively comprehensive and whole, in just a few hours, is immensely satisfying.

What we learned

We each came into this with some prior knowledge of the systems we'd be using, but each of us came out of this ordeal with some new skills. Some of us learned how to work with git, some of us learned how to solder, some learned how to program Arduino microcontrollers (and how to interpret the output of the various sensors that could be used with them), and some learned how to wire simple (but practical) circuits.

What's next for Air Guitar Hero

With some more time and money, we could certainly acquire better components and make everything wireless, making it an actual air guitar! We'd also be able to improve the accuracy of inputs and more easily fine tune the controller to each player, making for a more satisfying user experience.

Built With

Share this project: