Tune Taps

—– In collaboration with Mike Milazzo —–

Tune Taps are a tool for tap dancers to create any sound imaginable.

Mike and I are both dancers, and we found that we had the same dream: to make music with our feet. I’ve been a tap dancer my whole life and expanding the sound of a tap shoe from metal to anything a midi program can play was a challenge I couldn’t wait to undertake.  We created TuneTaps, a system that senses our feet in the place of normal tap shoes but communicates with the computer to play the sound.

TT_POSTER

Our first working prototype, more video to come:

A Last Minute Change: XBee

Although we successfully connected both shoes using Bluetooth, the longest both stayed paired for was about 5 min. That just wasn’t going to cut it for the 4 hour ITP Spring Show! There’s nothing like an approaching deadline to kick your productivity into high gear!

Enter: XBee Radios & LilyPad XBee

Having no knowledge of XBee radios, my best resources were :

Programming the XBee, example projects, etc:

Making things Talk: Project 10 Duplex Radio Transmission (& other XBee projects throughout the book)

Tips on programming XBee, example projects, lists of common mistakes, etc.:

http://www.faludi.com/projects/zigbee/

Sparkfun’s list of AT commands for programming the XBee:

https://dlnmh9ip6v2uc.cloudfront.net/learn/materials/29/22AT%20Commands.pdf

An example using the Lilypad Arduino and Lilypad XBee connected (which I ended up using.):

http://thegeekmovement.com/blog/?p=63

The Solution:

4 Radios, 2 Networks, 1 Max patch. Although much of what I read showed that I could use one radio to receive and two to transmit, in my haste to make it work in 2 days, I used two pairs of radios. The beauty of Max MSP is that it can communicate with multiple serial ports at once. So, two XBee radios connected via USB to my computer, and two XBee radios nestled on top of Lilypad XBee boards lived in each shoe. The Lilypad Arduino’s and battery also were on board all snug inside the shoe pouch. Surprisingly, the entire thing was still so light that I could not tell I had something strapped to my foot.

Here’s the final setup:

Lilypad Arduino; XBee Lilypad; Battery; Clip Pouch

Innersoles with Force Sensitive Resistors;

2 XBee radios connected via USB; Max MSP patch sending out MIDI; Garageband

TT_POSTER

Tap Shoe Progress

I’ve been frustrated with the technical bluetooth stuff, so I needed to take a step back and focus on what I was REALLY doing. So, I went ahead and made a wired version of the tap shoes to check it out.

I learned a lot about how I tap dance– that I expect the toe tap to be on the tip of my shoe, and how often I use the tip of the toe. I also learned that this is much harder to map because the dancer is standing on the sensor in it’s resting state. There are many possibilities with this, so here’s a video of my progress:

More updates to come on where to go from here!

Power to the Dancers

Ok, I’m gonna say it….

It really bothers me that the dancers dream of “digital sound shoes” has been realized through corporate ad campaigns for shoe companies and not through the dance community. Let’s put the power of these shoes in the hand of real tap dancers–to broaden their talents with this technology.

Here are some really talented tappers who have carried a large board into the street and changed into their tap shoes to perform. I would like to enable this to happen with any type of shoe and without a special floor.

 

Making Music

Mike did a great job figuring out the code for Max MSP to translate the FSR’s in the shoes to MIDI:

 

And I worked on using bluetooth — I connected it to Processing first to test:

 

We will eventually work on making the shoes into a looper, but for now the next step is to connect the bluetooth signal to Max MSP and build the project for 2 shoes. Here are some ideas for the product design:

IMG_0089

IMG_0090

Making a Plan.

IMG_7345

Our biggest hurdle is to figure out if we want to make a matt or a shoe, but to do that, we first need to remind ourselves how to use Arduino! We also spent a bit of time figuring out what to tackle in what order, and imagining what materials we will need throughout the process.

To refresh our memory, we did some labs from the P-Comp website. The FSR lab was a success– allowing Arduino to play tones base on the tone library. The MIDI lab was a different story- We couldn’t get the computer to recognize the midi interface. 😦 We will need help with this one.

Bio Final Project Concept Development

 

We will produce a foot-based musical creation tool for dancers.

Inputs Outputs
Pressure
Sound
looped tap audio
turning specific loops on and off

There will be two main components of this tool: a physical interface and computer midi interface. The midi interface will be wirelessly connected to the physical interface and will process rhythms created by the dancer to create and loop a variety of midi sounds. The physical interface will create those rhythms and control the type and looping of the sounds output by the computer interface.

There are two main ways that the physical interface may manifest itself: as a pressure sensitive mat on the floor or pressure sensitive shoes with a secondary interface to control the output. We are currently researching the viability of several designs that are consistent with these two possibilities.

Both mat-based ones would include buttons to control the type of midi sounds being output. We could also have additional buttons that serve as play controls for looping the tracks. The matt could possibly include piezo sensors or FSR sensors. The matt could be wireless or tethered to the computer.

The shoe design would require the dancer to wear shoes outfitted with FSR’s in the heels and toes to sense the pressure applied while dancing. The dancer would need to wear a wireless transmitter to send the info back to the arduino and midi controlled computer.

To control the looping and playback of the sounds,  we could create a more experimental approach: allowing the user to begin and end tracks with repetition. In order to start a track, users would repeat a bar several times. The system will constantly record a certain number of bars at a time, so that it can repeat those bars when it notices a pattern. In order to stop the track, they would repeat a rhythm from an existing track. This would be a very complex system that will require further research. Or, the user could wear controls on their hand, arm or stomp on the controls.