3 Simple Ways to
Share What You Make

With Instructables you can share what you make with the world — and tap into an ever-growing community of creative experts.

PhotosPhotos

Share one or more photos of a project, recipe, or whatever you've made, quickly and easily.

Step by StepStep-By-Step

Share your step-by-step photos with text instructions of what you made so others can do it too!

VideoVideo

Share your how-to video. You'll need your embed code from a video site such as YouTube.

Musical Glove

Musical Glove

Using the LilyPad Arduino, a way to create tones in the range of an octave based on thumb positioning.

SUPPLIES
Black cotton knit glove
Conductive thread
LilyPad Arduino
Sewing needle
Piezo speaker

SWITCHES
1. Place the LilyPad right side up on the backside of the glove such that pins 5-13 are near the fingers. The “LilyPad Arduino” text should be upside down when you hold the glove with the fingers up.
2. Take a long strand of conductive thread and tie it around the LilyPad’s port 13. Knot it once or twice tightly around the port so that it is firmly connected.
3. Put both ends of the knot through the needle, and sew with the thread up on the index finger. When you reach near the top of the index finger, sew the thread around on the left side to the front of the finger.
4. Make a few stitches on the finger tip to give a larger surface for the switch.
5. When you’re done, tie the thread in a knot and cut off loose ends.
6. Repeat steps 2-5 with the other switches. This is where they go:

12 Middle of index finger
11 Top of middle finger
10 Middle of middle finger
9 Top of ring finger
8 Middle of ring finger
7 Top of little finger
6 Top of palm between little and ring fingers

Be sure not to let any of the threads’ paths cross.

SPEAKER
1. Connect the ground pin to the tip of the thumb using the same method as above, going around the LilyPad. Leave a space in the stitching underneath pin 2 where the thread will be on the underside of the fabric, because you’ll need to go over it in the next step.
2. Connect pin 2 to a spot on the wrist of the glove, going over the space you left in the ground thread.
3. Using another piece of conductive thread, sew from any point on the ground thread to the wrist, making a knot about a centimeter to the left of the where you connected pin 2.
4. Push the speaker’s pins into the wrist of the glove, such that the + is connected to pin 2 and the – is connected to ground.

TIPS
- The glove’s fabric will stretch when you put it on, so sew the conductive thread with some slack.
- Make sure you only sew on one side of the glove – don’t let the thread go through to the other side because then you will sew your glove shut.
- Don’t place the LilyPad too far up on the glove; keep it closer to your wrist than your knuckles.

CODE

int speakerPin = 2;
int switchPin6 = 6;
int switchPin7 = 7;
int switchPin8 = 8;
int switchPin9 = 9;
int switchPin10 = 10;
int switchPin11 = 11;
int switchPin12 = 12;
int switchPin13 = 13;
int ledPin = 13;
int switchPins[7] = {6, 7, 8, 9, 10, 11, 12};


void setup() {
  pinMode(ledPin, OUTPUT);
  pinMode(speakerPin, OUTPUT);
  pinMode(switchPin12, INPUT);
  pinMode(switchPin13, INPUT); 
  pinMode(switchPin6, INPUT);
  pinMode(switchPin7, INPUT);
  pinMode(switchPin8, INPUT);
  pinMode(switchPin9, INPUT);
  pinMode(switchPin10, INPUT);
  pinMode(switchPin11, INPUT);
  int i = 6;
  while (i < 13) {
    digitalWrite(i, HIGH);
    i++;
  }
}

void loop() {
  digitalWrite(ledPin, HIGH);
  while (1) {
   if (digitalRead(switchPin6) == LOW) {
     digitalWrite(ledPin, LOW);
     makeNoise(6, 2093);
          digitalWrite(ledPin, HIGH);
     break;
   } 
   if (digitalRead(switchPin7) == LOW) {
     makeNoise(7, 2349);
     break;
   } 
   if (digitalRead(switchPin8) == LOW) {
     makeNoise(8, 2637);
     break;
   } 
   if (digitalRead(switchPin9) == LOW) {
     makeNoise(9, 2793);
     break;
   } 
   if (digitalRead(switchPin10) == LOW) {
     makeNoise(10, 3136);
     break;
   } 
   if (digitalRead(switchPin11) == LOW) {
     makeNoise(11, 3520);
     break;
   } 
   if (digitalRead(switchPin12) == LOW) {
     makeNoise(12, 3951);
     break;
   } 
   if (digitalRead(switchPin13) == LOW) {
     makeNoise(13, 4186);
     break;
   } 
 }

}

void makeNoise(int switchPin, int frequencyInHertz) {
          long delayAmount = (long)(1000000/frequencyInHertz);
          boolean y = true;
          while (y) {
              digitalWrite(speakerPin,HIGH);
              delayMicroseconds(delayAmount);
              digitalWrite(speakerPin,LOW);
              delayMicroseconds(delayAmount);
              y = checkforchange(switchPin);
          }
      int switchValues[7];
      int i = 0;
      while (i < 7) {
        switchValues[i] = digitalRead(switchPins[i]);
        i++;
      }
}


boolean checkforchange(int currentSensor) {
      if (digitalRead(currentSensor) == HIGH) {
        return false;
      }
      return true;
}
 

3 comments
May 2, 2012. 9:51 AMaccy says:
excuse me, could you tell me what is the name of the board that is to connect with LilyPad Arduino and computer. thanks
Mar 3, 2011. 12:38 PMamonmillner says:
I like how you have a section called tips that includes one about the tips of the glove - avoiding sewing fingertips shut is indeed key for this project to be successful. Thanks for the post.
Mar 3, 2011. 6:51 AMrtty21 says:
A video would boost this instructable a ton! nevertheless, I'm following ya. I've got faith in you.

Pro

Get More Out of Instructables

Already have an Account?

close

All Steps Viewing
View all steps of an Instructable on the same page when you're a Pro Member.

Upgrade to Pro today!
1
Followers
1
Author:natmatnatmat