Picture of DDR-style musical instrument
This is a quickly-built musical instrument that I made using the "free" promotional dance-dance-revolution dance mats that Kraft is giving out.
Remove these adsRemove these ads by Signing Up

Step 1: Get a free DDR dancemat

Picture of 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

Picture of 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.
make3d2 years ago
I put kfatwindows.pd and kraftpad_win32wrapper.pd in anywhere, but where i put the joystick .dll?

In same folder that pd_joystick, downloaded of http://crca.ucsd.edu/~jsarlo/pd/?


C:\Program Files (x86)\pd\extra?

I am newbie.
davidmerrill (author)  make3d2 years ago

It has been some time since I wrote this, and I actually don't remember where that .dll needs to go. But I'd try duplicating it, putting a copy of it in both of those places -- and you might also try putting a copy into the windows directory for good measure.

Best of luck!
Tomcat947 years ago
I can't seem to find that pad. The link does not work... :((((
jon22118 years ago
glad to see people using Pure Data
could u use that pad just as a controler for step mania (the computer DDR thing)?
davidmerrill (author)  stickdeathgod8 years ago
I haven't tried that, but I think you could.. It looks identical to the $60 DDR controller that is for sale online..
saites20018 years ago
I don't think you should have held the camera while playing that. Neat project, though. Would you be willing to post your code?
davidmerrill (author)  saites20018 years ago
p.s. thanks to Joe Rothermich for adapting my original code to work in Windows (it was in Linux)
davidmerrill (author)  saites20018 years ago
You're in luck! If you're using windows, you can use the code that I put up, on the "build a software program" page of this instructable. http://www.instructables.com/id/EIYJEPMACQERIE1WXB/
davidmerrill (author)  saites20018 years ago
heh, yeah I wanted the viewer to get the feel for what it's like to actually play the instrument! apologies for any nausea that this caused.. Sure, I'll post the code in a few days - I don't have it with me at the moment.
mrbob10008 years ago
awsome instructable
radiorental8 years ago
very nice! I did some thing similar here: http://www.instructables.com/id/EIJMKZV2EAEP2877XF/?ALLSTEPS I'll certainly add this to the repetoire for my intended users - thanks!
simon setup.png
davidmerrill (author)  radiorental8 years ago
nice project! looks like fun.