Introduction: DDR-style Musical Instrument

About: Was a graduate student at the MIT Media Lab. Now co-founder of elroyair.com.

This is a quickly-built musical instrument that I made using the "free" promotional dance-dance-revolution dance mats that Kraft is giving out.

Step 1: Get a Free DDR Dancemat

Kraft is giving these out for $6 - including shipping, so it won't set you back much to get one.

Step 2: Build a Software Program That Can Accept Joystick Input

The Kraft dance pad is basically a USB joystick, so any software that can read data from a joystick can listen to it. I used pure-data. To get a joystick working in pure-data, try this or this.

I mapped each pad on the dance mat to a different key from the C major scale. C Major opens up many entry-level tunes, such as "lean on me", "heart and soul" and "pachabel's cannon". Here are the frequencies that I used:

Note / Letter / Frequency (Hz)
do C 264
re D 297
me E 330
fa F 352
so G 396
la A 440
ti B 495
do C' 528

The mapping is very basic, but good enough to try it out and realize that this instrument has the potential to get a person in shape by the time they reach even a intermediate skill level! I mapped the "select" pad in the upper left corner switches between sine wave and sawtooth wave output.

You can download a copy of pure-data here, make sure you find the one that matches your computer platform. Then, you can get the 2 pure-data files that I attached to this step below - note that they are for windows though, so if you're on a mac you'll probably have to modify them a bit.

If you're on windows, grab my updated version of the joystick .dll for pure-data here. Once you install pure-data on your computer, put the .dll into the same folder as the two .pd files, and plug the dancepad into your USB port, you can double-click kraftwindows.pd and you should be up and running!

Thanks to Joe Rothermich for adapting my original linux-based patch to work in windows!

Step 3: Learn How to Use It!

Once it's built, the next challenge is to learn to play the instrument.



This is a video of me, trying to play a very simple version of "lean on me"..



I made the [select] button toggle the instrument's behavior betweent the square wave and a sawtooth wave. Here is a video that shows how the sawtooth wave sounds.