When listening to dubstep, a common dance move consists of wobbling your hands through the air. Until now, the music was influencing how the dancer reacted. But what if the opposite were true? What if the music reacted to what the dancer was performing? Enter the DubGlove!

What it does

A user puts on the DubGlove which measures the distance of the hand from any object (the tabletop, floor, a friend's face, etc). As as user varies the distance of the glove from an object, varying digital music data (MIDI) is sent to a connected computer. With this, a user can do the wobble-hand-dance and control the pitch, volume, and even "wobble" (LFO) of a synthesized instrument within a digital audio workstation program (DAW).

How we built it

An ultrasonic range finder is used to measure the distance between the DubGlove and an object that it points at. This is connected to an Arduino that is programmed to convert the analog range finder values to MIDI packets. These MIDI packets are sent over the Arduino's serial-USB interface. A program called hairless-midi is used to read the serial packets off of the COM port and convert them to actual MIDI values. Another program, loopMIDI, is necessary to make a virtual MIDI cable in order to route the data from hairless-midi into the digital audio workstation software, Ableton Live. Once Ableton Live receives the MIDI data, the values can be mapped to any parameter within the program (volume, pitch, timbre, etc...).

Challenges we ran into

For the majority of the project, the hairless-midi program was behaving strangely. As it turned out, Modifications (i.e. hacks) in the Arduino MIDI library were required so that the hairless-midi program could do the conversion properly. Locating already available software and designing/developing portions of the system that current software couldn't handle proved to be laborious.

Accomplishments that we're proud of

It actually works quite well!

What we learned

How MIDI data is organized. How to edit Arduino libraries (cpp).

What's next for DubGlove

Add buttons to the top of the glove to be able to switch between control modes (i.g. switch instruments that the ultrasonic sensor is manipulating).

Built With

Share this project: