Intro: Raspberry Pi Drum Kit
The Raspberry Pi Drum Set is an inexpensive alternative to an acoustic drum set or Roland V-Drums. Made with a robust PVC stand and a $5 Raspberry Pi Zero, this drum set is a great build for both amateurs and aficionados. There are multiple variations of the drum kit. Extra cymbals can be added and drums or cymbals can be removed to make your drum kit truly your own. The drum kit variation we will build in this Instructable is the model displayed at Maker Faire Bay Area 2017. It has three cymbals, six drums, six pads, and three pedals. The layout is as shown above, where the yellow circles are cymbals and the white area is drum heads and the brown rectangles are pedals.
To make the Raspberry Pi Drum Kit, you will need a variety of different parts all available from your local hardware store.
1) At least 40ft of 3/4" PVC pipe
2)Paper plates (at least 10, but get more), 11" in diameter recommended
3)At least 8 alligator Clips
4) Raspberry Pi Zero (will be discussed further down)
5)40 male header pins (available from Sparkfun)
6) Wooden dowel rods, about 0.6" wide
7)At least 12 1/4" 20 bolts and 60 corresponding nuts (6 washers recommended)
8) 2 acorn nuts
9)100 ft. of stranded wire
10) Roll of electrical tape
11) 2 terminal blocks
12) Aluminum Foil
13) 25 3/4" 'T' fittings
14) 15 3/4" 90º elbow bends
15) 4 3/4" 45º elbow bends
16) Blue Glue
17)Female to female jumper wires (doesn't have to be this exactly, but make sure it has a female connector end!)
Before you buy your Raspberry Pi 0, make sure you buy all of the required components so you can use your Pi. You need a Micro HDMI to HDMI adapter, a USB on-the-go cable, and an sd card with the latest version of Raspian or other OS. I recommend buying CanaKit's Raspberry Pi Zero Kit (Click It). Make sure you get the starter kit. The only thing you will need other than the Raspberry Pi Zero Starter Kit is a computer monitor(with speakers or 3.5mm output) and an HDMI cable, both of which you probably have if you are reading this instructable.N.B I have no affiliation with CanaKit nor are they sponsoring me.
Step 1: Make the Stand
The stand is very simple to make. You will just need pipe cutters or a saw and a vice. Note that the stand will not fit together if the PVC pieces are not cut to the exact length (ask me how I know). It is a good Idea to blue glue certain parts of the stand together to make assembly and disassembly easier. Make sure to follow the video very closely on this step or your drum kit may be unusable!
Step 2: String the Wires Through the Drum Kit
Now we need to drill holes in the stand so we can string the wires through. Drill holes in fittings as shown in the video. Then string the wire through the holes. To string the wire through the fittings, it is helpful to disconnect the fitting from the part of the stand you are stringing the wire through. Do not separate the two wires yet! Also, make sure to cut more wire than you need.
Step 3: Solder Alligator Clips to the Ends of the Wires
To connect the drum heads to the raspberry pi, we will use alligator clips. Cut your alligator clips in half, then strip the ends about 1 inch. Also, strip the ends of the wire coming out of the drum stand by 1 inch. Now connect each alligator clip half to the wiring from the drum stand. Wrap the wires together and then solder them together. You can insulate the connection with shrink wrap or electrical tape or even hot glue. When you get to wiring the pads, wrapping the connections with different colors of tape can help you keep the wires straight.
Step 4: Make the Drum Heads and Cymbals
This step is always lots of fun! To make the drum heads and cymbals, you will need aluminum foil, paper plates, and a hot glue gun. Cut the aluminum foil so that it is a bit larger than the paper plate. Then apply a generous amount of hot glue on the paper plate. Press the aluminum foil onto the paper plate. Be careful, the hot glue can burn you through the aluminum foil. I would quickly press the aluminum foil on in many different places and keep moving my hand around to not get burned. If you want to get creative, you can cut the drum heads and cymbals to different sizes.
Step 5: Make the Pads
Now that you have finished making the drum heads and cymbals, you can make the pads. Cut the front and back out of a cereal box and glue them together such that you see the cardboard and not the cereal box design. Now cut out an even number (I used 6) of rectangles that are the same size. Make sure they fit on the cardboard without touching each other. Now glue them down with a generous amount of hot glue. Now attach the alligator clips onto the aluminum foil.
Step 6: Connect Drums to Raspberry Pi
Cut the female to female jumper wires in half and strip both ends. Also, strip the ends of the wires coming from the drum stand. Solder 2' pieces of wire to the female connector. Connect the wires coming from the drum kit to the terminal block. For each connection, attach one of the female to female jumper wires you cut in half as shown in the picture.
Step 7: Prepare the Raspberry Pi 0
Now we will solder male header pins onto the Raspberry Pi 0. Make sure nothing is inserted in the raspberry pi. You could possibly ruin your sd card if it is inserted while soldering. Snap the male header pins such that you have a row that would fit on the Raspberry Pi. Now solder the male header pins to your board. Make sure to touch the soldering iron to the header pin and copper pad at the same time.
Step 8: Connect the Drums to the Raspberry Pi 0
Now we connect the drum set to the Raspberry Pi 0. Plug each of the female connectors into a GPIO Pin on the Raspberry Pi. If you purchased the CanaKit Raspberry Pi Starter Kit, then you have a diagram of all the pins on your raspberry pi. If not, download the picture (picture from AB Electronics UK).
Step 9: Make the Drumsticks
To make the drumsticks, we must cut the dowel rods into lengths of 16 1/2 ". You can deviate from that length, but 16 1/2 " is standard. Now drill a 1/4" hole in the center of the end of the dowel rod. Start with a small drill bit and step up to 1/4" from there. Failure to do so may result in the wood splitting. Now insert your 1/4 20 threaded rod into the hole as far as it will go. Mark 1 inch from the end of the dowel rod and cut the threaded rod. I used a Dremel with the cutting wheel, but a hacksaw will work just as well. If you use a Dremel tool, exercise caution and wear eye goggles and work gloves. After you are done cutting the threaded rod, it will be hot (especially true with the Dremel, The rod burned a hole through my work glove), so give it time to cool before handling. Now Mix up a batch of Epoxy and glue the threaded rod into the hole in the drumstick. Give it 20 minutes to cure, and then attach a nut and an acorn nut. If you have stranded wire, strip the end and wrap it between the nut and acorn nut. Use 2 wrenches to tighten the acorn nut and nut together. If you have solid core wire like I do, you will need a fork terminal. If your fork terminal has a plastic housing, remove it. Then strip your solid core wire and insert into the fork terminal. Crimp it down using a vice and insert it between the nut and acorn nut and tighten them together. Bend the end of the fork terminal down and secure the wire to the drumstick, most profusely at the tip of the wood. Don't cover up the metal tip.
Step 10: Make the Pedal (Optional)
All commercial drum sets have a kick drum, but your drum kit doesn't have to have one. If you don't want to make a kick drum, skip this step.
Start out by cutting two 6 inch pieces of would from a strip that is 2.5 inches wide. The piece of wood should be thin. Then take a hinge and drill all the holes necessary for the hinge on both pieces of wood. Drive the screws into the holes of one side. Cut off the overhanging screws with a hacksaw or Dremel Tool (same warnings that were in step 10 apply). Repeat for the other side. Now drill a hole large enough to fit a momentary push button (normally open) through near the front of the drum pedal. Now glue thin springs between the two wood pieces. Solder wires (the female connectors with the extension wire) onto the switch and hook one of them up to a GPIO pin, and the other to 3.3 volts.
Step 11: Program the Raspberry Pi
Take your micro sd card and follow these (click on it) instructions to install your operating system. Whatever operation system you have, make sure it has Scratch. If you bought the CanaKit Raspberry Pi 0 Starter Kit, you will not have to do this, the flash card included is ready to go. You've done that, attach your keyboard, mouse, and micro sd card. Once it boots, open scratch. Create a new variable for each drum you will have as well as a sprite for each. Now open up the stage and place a When Green Flag Clicked and Broadcast node into it. Connect them together and add a new broadcast. Type "configyourgpiopinnumberinpulldown" with yourgpiopinnumber replaced with the GPIO pin you want to use for the drum head. Now upload the code shown in the picture for each sprite. Click on a sprite to open it, then change all the variables to the certain drum you are programming. Also, change the GPIO pin the whichever GPIO pin you plugged the drum into. Now, look at the values of each drumheads variable. It should be one. If not, plug that certain drumhead into a different GPIO pin and change the broadcast under stage and GPIO pin under the drum's sprite. Plug the drumstick into the 3.3v pin on your raspberry pi. Now go to the sounds tab under the sprite and add whichever sound you want, then select it on the play sound nod. Press the green flag and your drum kit now is running!
Step 12: Alternative Way
On the morning of 5-21, the last day of Maker Faire, I switched the way the drum kit was run. I had been having some problems with delay using the GPIO pins, so I switched to using a keyboard. This method is better if you have few drum heads. It also has the advantage of being able to use any computer that has a USB input, as opposed to having to use a Raspberry Pi for the GPIO pins. You can use either a keyboard emulator(you can use an Arduino) or rip the circuitry out of an actual keyboard. If you use Arduino as your keyboard emulator, you can skip the next step.
Step 13: Remove the Keyboard Circuitry
Start by unscrewing your keyboard. Once the top is removed, remove the circuitry. Now take a wire and start touching terminals together. Make a chart of which button is pressed. Look for a row where one terminal can make usable buttons, then hook all the connections to the drum heads. Hook the terminal that triggers those keys to the drumsticks. Use sandpaper to scrape off the protective coating on the terminal, then take one strand of copper wire and solder it to the terminal. Now connect the ends of each wire to the wire strung through the PVC pipe.This certainly isn't the easiest way to do it, but if you don't want to spend the time making a keyboard emulator, this will work.
Step 14: Program Scratch
Now drag a "when _____ key pressed" block into your sprite. Select a key that you figured out in the last step or assigned in your keyboard emulator with the drop down menu on the "when _____ key pressed" block. Now drag a "play sound ______" into the sprite. Go to the sounds tab and import the sounds you want for your drum heads. Now on the "play sound _____" block, select your desired sound. copy this block continuing the steps until you have all the drum heads programmed. Plug in the keyboard circuitry (or keyboard emulator) to you computer, then run the scratch program. When you hit a drum head it will make a sound.
Step 15: Conclusion
Above is a video of the drum kit at Maker Faire Bay Area 2017. If you want to use the same sounds I did, go to this link Music Radar Free Drum Sounds. I used the Ride Bell and Crash Cymbal included with Scratch, and I used a random free splash cymbal sound off the internet. Enjoy your drum set and post your drum kit in the comments if you make one.