Introduction: Musical MIDI Shoes

Picture of Musical MIDI Shoes
Like many people, I often find myself unconsciously tapping my feet, whether it's along to a song or out of some nervous habit. As fun as that is though, I've always felt as if something has been missing. If only I could trigger the sounds of say, a rabid pack of furious jungle beasts instead of those boring old toe taps. Or, you know, drum sounds or something. I guess that's cool too.

Well, now my dreams have been realized! In this instructable I'll show you how to go about making a pair of awesome musical shoes.

I've entered these in the Art of Sound contest, so, you know, feel free to vote for me!

Step 1: Materials: What You'll Need

Picture of Materials: What You'll Need

Bill of Materials

4 Force Sensitive Resistors

A lot of DIY drum pads have been made with piezoelectric transducers, but in my experience these are unreliable at best. For straight up drum pads they might work ok, but in shoes the sensors are always under a certain amount of pressure, they're not just experiencing brief impacts. Piezos are frustratingly delicate and unpredictable. They crack and bend easily, and the wires to which they are typically attached are usually pretty flimsy.

So, instead, you should use FSRs, or Force Sensitive Resistors. These components are easy-to-use, durable, and more reliable than piezos, at least in this application. Basically, the more pressure you apply to an FSR, the less resistive it becomes. Initially, it has infinite resistance, meaning it acts like a break in the circuit. I bought mine from adafruit. There are certainly other vendors, but I have no idea how and/or if they differ.

1 Pair of Shoes

Yes, this would seem to speak for itself, but there are actually a couple things to take into consideration. For my shoes I used a pair of thrift store skate shoes, the kind with a lot of padding in the heel. This is important, because you need something to conceal the jacks that you'll install in the heel. Otherwise, your shoes are going to be pretty uncomfortable. For this reason, I wouldn't recommend using thin-walled shoes like dress shoes, unless you want to add additional padding. Also, try to pick a shoe that has a rigid material on the outside of the heel, as this will make mounting the jacks much easier.

4-6 10Kohm Resistors

These are pull-down resistors that will each be connected to ground and one end of each FSR.

1 Arduino

The Arduino is an open source microcontroller - it enables communication between the FSRs and your computer. They are available from numerous vendors. If you've never done any programming before you might want to check out some of the tutorials.

1 Project Box

This will house the Arduino and serve as an interface between the shoes and computer. You can order a project box online, buy one at Radioshack, or use something you already have lying around that is more or less box-like.

8-10 1/8" Mono/Stereo Jacks

You only have two heels and two toes, but the Arduino has six analog inputs, so you might as well give yourself the option of using those at some point in the future. Four of these jacks will go in your shoes, and the other 4-6 in the project box. You can get them from Radioshack, Digi-Key, and many other places.

4-6 1/8" Mono/Stereo Cables

...for connecting the shoes to the interface. You'll find them at most electronics-type stores, like Radioshack, Best Buy, or Future Shop. I'm sure you can order them online, too.

1 USB Cable

...for connecting the Arduino to your computer.

1 Roll of Electrical Tape

...for securing the sensors in the shoes.

Mad Foot-tapping Skillz

...quantities may vary.

Step 2: The Interface

Picture of The Interface

You can do this project with just a breadboard and the Arduino, but for the sake of tidiness and portability, you should build a little interface. All you need to do is mount the Arduino in a project box, drill 4-6 (dependent on how many sensors you want to use) holes for the 1/8" audio jacks, one hole for an LED, and a square hole for the Arduino's USB jack. Then solder everything up and you'll be good to go!

Each audio jack in the interface should have a 10K resistor and a lead for analog input connected to one terminal, and a lead for the 5V supply connected to the other. What terminals you use will depend on whether you have a mono or stereo jack. Both will work, stereo will just provide an additional, unnecessary terminal. The way this works is, we apply 5V across the FSR, so when we press it, it allows a little bit through, and the Arduino can look for this and send a signal to the computer.

Now, grab your soldering iron, some hookup wire, follow the schematic and the diagram, and you'll be fine.

You could definitely add a lot of extra LEDs and whatnot to this box, i.e. one for every sensor or something. Additionally, it would be pretty straightforward to make a very simple shield for the Arduino using a protoboard and six or so male header pins. You could even get a more robust one made professionally by some PCB company on the interwebs. The prototype shown in this instructable is a pretty basic setup, so there's lots of room left for expansion (literally, there's plenty of free space in that box).

Step 3: Shoe Surgery

Picture of Shoe Surgery

So, with these padded skate shoes, you're going to have to perform a little dissection to mount the jacks in the heels.

In the shoes that I used, the heel padding was contained by a mesh-like material stitched to the sole of the shoe. So first, see if you can pry the top layer of the sole out temporarily, so you can get at the stitching which attaches this mesh stuff to the shoe. Once you have access to it, just start cutting. Don't completely remove the stuff if you plan on replacing the padding at the end. Just cut where the mesh has been stitched to the sole. An exacto knife should work just fine.

Once you've liberated the padding, take a look at the outer heel material. You need to drill two holes in the heel, but whatever you do, don't use a drill press. Since the material is probably still quite flexible, if anything were to get caught, there would be a whole mess of twisting, flailing sneaker. Just use a hand drill and a bit of elbow grease. The bit you use should be a little larger than the diameter of the jack.

With your holes drilled, install the jacks and screw the nuts and washers on tight. You'll almost certainly have to use some glue to secure them. Epoxy or super glue should do the trick just fine. Apply some glue around the exterior of the jack's barrel and the inside of the hole and stick 'em together.

Now, tape the FSRs to the inside of the shoes. Be careful with the FSRs, the leads on them will hold up just fine as long as you don't twist them too much - they don't handle torsion well. If you plan on gluing them down permanently, hold off for now. Sensor placement is very important and it depends on the size and shape of your feet, as well as your unique foot-tapping style.

With the electronics installed, put the padding back behind the mesh, and find some way of reattaching the mesh to the inside of the shoe. I glued some velcro to the mesh and to the shoe, so that I can open it up and perform maintenance if the need arises.

Now, just plug your shoes into the interface. You're ready to do some Arduino programming!

Step 4: Programmin'

Picture of Programmin'

There is a surprising amount of information online on how to program an Arduino for use with DIY drum triggers. Google will tell you so. I learned a great deal from looking at the code of todbot, adafruit, mschaff, and Spikenzie Labs. I also received considerable input from the always effervescent W. Xavier Snelgrove.

So, you could use MAX/MSP/Jitter or Pure Data to process the signals from the Arduino, and that might actually give you more flexibility (I'll try to post some info on this soon), but instead there's a really great little application out there called Serial-MIDI Converter. It does just what you might think - converts signals sent over a serial connection to MIDI. It works with any MIDI-compatible program such as Garageband or Ableton Live. Click on the link and download it, all the info on how to use it is right there on the download page.

Like I said, if you've never used or programmed an Arduino before, you really should check out the Getting Started section on the official Arduino site, as well as their tutorials.

The code is commented, so I won't explain it in detail, I'll just post the sketch here at the bottom of the page. Basically, you just set a lower and upper threshold for each sensor. If the upper threshold is exceeded, a MIDI message is triggered, and once the force sinks below the lower threshold, another hit can be triggered. It's called hysteresis, and it makes sure that you don't set off multiple messages per hit.

You may have to fiddle around with the thresholds, depending on your personal foot-tapping style and weight distribution.

Step 5: Testing and Playing

Woo, now you have musical shoes! Mess around with the placement of sensors, the impact thresholds, whatever, just make some noises and enjoy yourself. Entertain others, impress at parties, charm the young woman/man of your fancy. It'll be all like BOOSH BOOSH WHAM BOOOSH BOOSH WHAM SPLASH - and then like BIP BOP. BLEEP BLOP. BING BONG. Like, so awesome, guys.

Spikenzie Labs
W. Xavier Snelgrove
Similar project from Andrew Schneider at NYU


T0BY (author)2016-12-03


Vmusic2Ya (author)2016-02-26

Very cool. I am building a novel MIDI Instrument. I will have about 40 inputs, for 40 different notes or pitches.

Any recommendation on which Arduino to use?

YesItsMeJimmy (author)Vmusic2Ya2016-07-20


georgekelly (author)2016-03-20

I'm aattempting to complete this project. I have everything wired BUT I don't have the code. Coul . Someone help with the code? Thanks

Vmusic2Ya (author)2016-02-26

Very cool. I am building a novel MIDI Instrument. I will have about 40 inputs, for 40 different notes or pitches.

Any recommendation on which Arduino to use?

Vmusic2Ya (author)2016-02-26

Very cool. I am building a novel MIDI Instrument. I will have about 40 inputs, for 40 different notes or pitches.

Any recommendation on which Arduino to use?

jamesbrosuk (author)2015-02-09

excellent, but you could have used a nicer pair of trainers?

Uncle Foo (author)2014-05-02

Thanks for breaking down the code to something usable. All the other examples had millions of bells & whistles to sort through. This was exactly what I needed for my project.

hilukasz (author)2013-12-28

Daito Manabe inspired?

ihan1 (author)2013-06-25

hey im now doing this project
and everything is done
but still not working
becuase i dont know
in arduino where i set this part ???
(you just set a lower and upper threshold for each sensor. If the upper threshold is exceeded, a MIDI message is triggered, and once the force sinks below the lower threshold, another hit can be triggered. It's called hysteresis, and it makes sure that you don't set off multiple messages per hit.)
may are you help me ?
please explain to me
how i setting arduino

kgarapati (author)2012-12-15

great work........
did you use serial-MIDI converter(hardware) for this project....?

heeroyui (author)2012-12-11

could i use audio jacks from old cd roms and headphone cords to connect?

Sir__Walter (author)2012-11-05

Hey, great work.
Was thinking you could make kind of a dance dance revolution kind of thing using these!

lrissman (author)2011-10-29

Love your work!

Ive been wanting to put together my DIY electronic drum kit for a while,
but dont have much space in my little home studio.

And i thought of this midi shoe idea and googled it to see if it had already been done.

You beat me to the punch. :)

I have a question.
I am wondering if the shoes you have made using the FSR's can be used with conventional drum modules??

or will they only work with piezo triggers?

Thx again for a fantastic Instructables.

Superfish (author)2011-07-29

Oh Man, a childhood dream comes true.

I have a question regarding the FSR's ( I'm currently reconstructing your idea!! ;) )
It's a bit difficult to choose the correct FSR's

If you could have a quick look here:

It would be more than appreciated if you could give me an advise which one are the correct FSR's.

From my prospective i think that the FSR's on the page mostly differentiate from there size.

Thanks alot in advance.


thobson (author)Superfish2011-07-29

The FSR-400, 402, and 406 should all work just fine. You can see that they're rated for 10g - 10kg, which is a good range for foot tapping. The 406 is bigger, so you can take that into consideration. I found that the 402-sized ones worked just fine in the design described in this instructable.

Thanks! I'd love to see the final product.

Superfish (author)thobson2011-08-03

Thanks a lot, man! Sure i'll kepp you up to date when i'm finished!!

ssen2 (author)2011-07-23

search 4 megalizer in google itz almost similar bt is wireless

Rafael Marfil (author)2011-07-21

Nice instrument mate ;-)

Hoboman (author)2011-04-30

What if you used the concept that some toy pianos used to play music. You know when you played a song, but as long as you hit a note, it still made the right sound to play the next note in the song? That way, you could dance the rhythm to play the song, going note by note, with the correct pitches already preset. Anyone understanding where I'm going here?

carml (author)2011-04-09

Where did you get the Arduino and how big is it.

rochelle1 (author)2011-02-21

Hey this is a really cool project. Im doing something similar with a table top pad but I'm a total newbie to this. lol Can you use Processing software with this as well?

thobson (author)rochelle12011-02-22

Almost certainly!

aznxshinobi (author)2010-06-20

reminds me of the nike shoe commercial

solobuffalo (author)aznxshinobi2011-02-22

That was the exact thought I had when i saw the title of this instructable. Very cool to see it brougth to life.

schwartzdaniel48 (author)2010-10-25

Just so you know I successfully made a pair which I plan to use for a composition project soooo thanks!

Meroki (author)2010-10-11

make several pairs of these

and make a midi shoe band.

ThorsMitersaw (author)2010-08-22

Forbidden planet shoes!

farzadbayan (author)2010-07-31

Very nice , I like this shoe !

kitt2106 (author)2010-06-19

it's wonderful,but where to get them

instructables4ever (author)2009-07-26

Your amazing.

All your amazing are belong to Instructables.

ergolicious (author)2010-06-17

I want to have a pair that goes UNCE UNCE UNCE while I walk.

BeanGolem (author)ergolicious2010-06-18

I believe the correct spelling is "unn-tss unn-tss unn-tss"

yoyology (author)2010-06-17

So, essentially, these are Arduino-controlled tap shoes? EPIC!

pickboy2mm (author)2010-05-20


LH237 (author)2009-12-01

I can't wait to put this together...stomping away to some serious beats!!

Online Music Production School

kingmetal (author)2009-09-29

I'm going to try to put this project together! Super excited. Are the senors pressure sensitive? I know that FSRs aren't that accurate - did you ever consider piezo sensors? I don' t know much about either!

Dysphoria (author)2009-08-12

Why not just use drum triggers? Btw, this has helped me at my church. :) Our kick drum was loose on the elec set we use, so I made one shoe and used that.

m0j0j03y (author)2009-08-01

That is AMAZING. I have the worst habit of tapping lol. at least this way, it will sound musical to people who aren't listening to the songs in my head. (and the voices...) anyhow you could make so much money if you started full scale production. to bad it would never fit in converse lol. nice -ible. *voted!*

nycnyusa (author)2009-07-26

that's awesome! how much money did it cost

thobson (author)nycnyusa2009-07-26

Hey, thanks! The cost depends on the type/quality of shoes you use and whether or not you already have an Arduino. The shoes I used were from a thrift store, I think they were about nine bucks. FSRs from adafruit are seven dollars each, so that comes to $28. The cost of resistors and wire is small enough to be more or less negligible. All in all I'd put the cost in the 40-50 dollar range, excluding the cost of the Arduino.

thobson (author)thobson2009-07-26

Oh, I forgot the jacks, LED, and project box! Those might add on another few bucks or so, so I'll expand my estimated range to 40-65 dollars. It really depends on what you already have on hand at home or in your workshop.

S1L3N7 SWAT (author)2009-07-26

Very cool!

Callum Snowden (author)2009-07-26


brunoip (author)2009-07-25

Excellent work

About This Instructable




More by thobson:Musical MIDI ShoesBuilding A Stereo Tube Amp
Add instructable to: