Introduction: Fingertip Piano

Try this puppet with piano fingertips

Step 1: Supply List

To begin this project, you will need the following items:

1 large breadboard

1 small breadboard

1 arduino uno

8 push buttons

1 DBX-05PN audio box

8 10k-ohm pulldown resistors

20 stranded 22AWG jumper wires with solid tips

17 non-bendy shorter wires

1 9V battery w/connector to Arduino

gloves

8 wires (18")

Step 2: Connect Wires From Small Breadboard to the Arduino

1. First, place one end of each, 22AWG jumper wire, on to the small breadboard. Using the "A" row of the breadboard, begin placing the wires starting with number 3 hole. Be sure to leave one hole in between each wire. So you are using 3, 5, 7, 9 and so on.

2. Next place the other end of the wire (keeping wires straight and in order) into the digital pins 1, 3 through 9 of the arduino.

Step 3: Connecting Small Breadboard to the Large Breadboard

1. Using row E in the small breadboard, place a wire using the same corresponding number as the first row of wires as column A.

2. Place the other end of the wire into the large breadboard using row F and placing the first wire into hole 6. The next wire will go into hole 11. Always leaving 4 holes in between each wire. Continue to place the wires in order so they do not overlap.

Step 4: Installing Non-bendy Wires

1. First, cut 8 non-bendy wires about 1 1/2 inches long and strip both ends.

2. Place one end of the wire into the corresponding hole as the wires placed into the large breadboard. Begin with row "H" and hole 6. Make sure you leave one hole between the wire and the non-bendy wire. Place the other end of the non-bendy wire into row A and hole 6. Continue down until each wire has a corresponding non-bendy wire.

3. Next, cut 8 smaller non-bendy wire about 1" long and strip both ends.

4. Place one end of the smaller non-bendy wire into the same row (A) as the larger non-bendy wire, leaving one hole between them. Place the other end across the positive line of the large breadboard. Follow this pattern for all 8 wires.

Step 5: Insert the 10k-ohm Resistors and Push Buttons

1. Place one end of the 10k resistors next to the larger non-bendy wire (row B). Place the other end in the hole between large non-bendy wire and the small non-bendy wire next to the negative (blue) line. Follow this step for all 8 resistors.

2. Place each push button in rows E and F. Make sure each button is spaced two breadboard holes apart.

Step 6: Here Is the Code for Your Arduino

copy and paste this code

int button_C = 2;

int button_D = 3;
int button_E = 4;
int button_F = 5;
int button_G = 6;
int button_A = 7;
int button_B = 8;
int button_Cup = 9;

int speaker = 13;

int buttonstate_C = 0;
int buttonstate_D = 0;
int buttonstate_E = 0;
int buttonstate_F = 0;
int buttonstate_G = 0;
int buttonstate_A = 0;
int buttonstate_B = 0;
int buttonstate_Cup = 0;

//NOTES         'c'  , 'd',  'e',  'f',  'g', 'a',  'b',  'C'
int tones[] = { 1915, 1700, 1519, 1432, 1275, 1136, 1014, 956 }; //freq
int Cur_tone = 0;

void setup()
{
  pinMode(button_C, INPUT);
  pinMode(button_D, INPUT);
  pinMode(button_E, INPUT);
  pinMode(button_F, INPUT);
  pinMode(button_G, INPUT);
  pinMode(button_A, INPUT);
  pinMode(button_B, INPUT);
  pinMode(button_Cup, INPUT);

  pinMode(speaker, OUTPUT);
}

void loop()
{
	buttonstate_C = digitalRead(button_C);
	buttonstate_D = digitalRead(button_D);
	buttonstate_E = digitalRead(button_E);
	buttonstate_F = digitalRead(button_F);
	buttonstate_G = digitalRead(button_G);
	buttonstate_A = digitalRead(button_A);
	buttonstate_B = digitalRead(button_B);
	buttonstate_Cup = digitalRead(button_Cup);

	if((buttonstate_C == HIGH) || (buttonstate_E == HIGH) || 
		(buttonstate_G == HIGH) || (buttonstate_D == HIGH) || 
		(buttonstate_F == HIGH) || (buttonstate_A == HIGH) || 
		(buttonstate_B == HIGH) || (buttonstate_Cup == HIGH) )
	{ 
		if (buttonstate_C == HIGH)
		{
			Cur_tone = tones[0];
		} 
		if (buttonstate_E == HIGH)
		{
			Cur_tone = tones[1];
		}
		if (buttonstate_G == HIGH)
		{
			Cur_tone = tones[2];
		}
		if (buttonstate_D == HIGH)
		{
			Cur_tone = tones[3];
		}
		if (buttonstate_F == HIGH)
		{
			Cur_tone = tones[4];
		}
		if (buttonstate_A == HIGH)
		{
			Cur_tone = tones[5];
		}
		if (buttonstate_B == HIGH)
		{
			Cur_tone = tones[6];
		}
		if (buttonstate_Cup == HIGH)
		{
			Cur_tone = tones[7];
		}

		digitalWrite(speaker, HIGH);
		delayMicroseconds(Cur_tone);
		digitalWrite(speaker, LOW);
		delayMicroseconds(Cur_tone);
	}
	else //in case no button is pressed , close the piezo
	{
		digitalWrite(speaker, LOW);
	}

}

As you see the frequencies for the notes are :

1915, 1700, 1519, 1432, 1275, 1136, 1014, 956

Step 7: Connecting Wire to the Pushbuttons

Before the next step you can do this test. Replace the legs of the pushbutton with to jumper wires.

  1. Once you have placed all the buttons on the large breadboard, you will need to remove each one. You will take each push button and place it on a small piece of board. (. ½” sq) .

  2. Take to long strips of wire and put in the same hole as the push button.

  3. Solder each one.

  4. Place the other end in the holes where the push button was removed.

  5. Do each button the same. Make sure the buttons still work making their sounds.

Step 8: Sewing Pushbuttons Into Gloves

  1. Now we are ready to sew the buttons into the gloves. Turn the glove inside out. Take the top four buttons and sew into the fingers on the right hand glove

  2. Take the remaining wires with their buttons and sew into the fingertips of the left handed glove.

  3. To make the wires easier to handle, take each fingertip set of wires and put them through a small piece of shrink wrap. Do all 8 fingertips the same way.

  4. Gather each set of wires for each hand. Slide all eight wires through a straw. Do this for both hands.

  5. Turn the glove right side out.

Step 9:

Next you will place the wires into your toy. I choose Minnie Mouse, but you can place it in any large doll/stuffed toy of your choice.

  1. More than likely you will need to open up the back of your doll and take out most of the stuffing in the middle section. Cut a small slit in the hand of your doll, (close to where the wrist might be)

  2. Slide the right sided wired glove into the hole on the dolls wrist. Pull the wires and the straw through the dolls arm until in is inside the middle part of the doll. Place your wires, and boards, into a box and place the box into the doll. Plug the battery into the port on the aurduino. Leave the battery on the outside of the box for easier access.

  3. Sew your gloves on top of your toy's hands.

Step 10:

Congratulations. Enjoy playing the piano through your fingertips.