Final: Piano Gloves

Created by Chris, Tevyn, Derek

We tweaked our initial design slightly due to some technical complications. Our final piano gloves are made of:

  • Arduino Uno (1)
  • Cloth Gloves (2)
  • Jumper Wires
  • Jumper Extenders
  • Duct Tape
  • Wrapping Paper and Aluminum Foil
  • LED Strips (2)
  • Potentiometers (2)
  • Breadboard (1)
  • Speaker (1)
  • Wii Chuck (1)
  • Wii Chuck jumper cable adapter (1)

Our gloves operate in this manner: the power wire is run through both thumbs. The signal wires are run through the other eight fingers, which connect to the breadboard. On the breadboard, the signal wires each connect to ground. When the 8 non-thumb fingers do not touch a thumb, the circuit is broken. When a non-thumb finger touches a thumb, the circuit completes and a note is played. When each note plays, a color unique to each note lights up both LED strips. We programed our gloves to play the 8 notes of a C major scale. We wrote the code so that only a single note can be played at one time. We have one potentiometer on the breadboard that controls the volume of the notes played and we use the Wii Chuck to control the duration of the notes played depending on its y-axis position. The duration controls the amount of space between notes.

While the gloves are being played, the notes are written to the serial port. We wrote a scheme program to take the notes written to the serial port and format them to be read by a Lilypond file. With this Lilypond file, we are able to generate sheet music showing the order the notes are played. Additionally, we generate a MIDI file that plays the sheet music written with Lilypond.

We also can use the notes written to the serial port as training data for a random music generating Markov Model. With this, we are able to generate random music–based on previous input music–and both print the sheet music with Lilypond and generate a MIDI file that plays the random music.

Initially, we planned on threading the fingers of our Piano Gloves with conductive thread, but we found the conductive thread too unreliable to generate a consistent instrument. We additionally tried using conductive ribbon connected to each finger, but as with the conductive thread, the conductive ribbon was too inconsistent to work reliably. We ended up increasing the surface area of the signal with conductive wrapping paper duct taped to each finger, which provided a more consistent and reliable signal. In the final version of our gloves, we replaced the conductive wrapping paper with Aluminum Foil. We found that over time, as the gloves were repeatedly played, the wrapping paper deteriorated and needed to be replaced. Aluminum Foil proved to be much more durable than the initial wrapping paper we used.

Also, we planned on controlling both the volume and duration of the notes with the Wii Chuck, but we found the Wii Chuck better suited for controlling only the sustain and a potentiometer better suited for controlling the volume. The Wii Chuck controls the duration of the notes played depending on the its y-axis position. Additionally, the Z button on the Wii Chuck controls the amount of time that data is recorded from the Piano Gloves. When the Z button is pressed, our program stops taking input data from the Piano Gloves and prints the notes received to a Lilypond file.

Here is our final design:

Here are a few videos of our piano gloves as we were building them:

Here is a transcribed piece of sheet music and generated with Lilypond from a song we played with the piano gloves:


To demonstrate the our Markov Model, here is the video of the input data:

and here is the random sheet music generated from the input music from the video:


note: the short length of the random music is extremely rare. Our input data contained 84 different notes to train the Markov Model and the maximum length of the randomly generated music was set to 60 notes. Even then, the total length of the randomly generated was only three notes.

and here is a Lilypond generated MIDI (converted to mp3 to work with DocuWiki) file of the random sheet music generated from our Markov Model:


Finally, here is a video of our Piano Gloves with the Wii Chuck controlling the duration of the notes played:

We pulled design ideas from Chris and Tevyn's previous two projects: the 8-bit wonder and the Piano Shirt (pictures and links below) to generate our final piano gloves.

the 8-bit wonder

Created by Chris and Tevyn

We used the main circuit design from the 8-bit wonder on our piano gloves.


Piano Shirt

Created by Chris and Tevyn

The circuit is grounded through Tevyn's side. We used aluminum foil to increase the signal surface area for each key. We applied this idea to the design of our piano gloves.

Last modified: 2011/12/14 23:09