Introduction: DDR-style Musical Instrument

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.

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.


luzverdeclara (author)2017-02-06

Hello David,

congratulations for your work. I'm transfering from Max to Pd.

The [hi] object is already made on Max for any operative system. I have been using it with DDR also a couple years ago. Now I would like to rebuild my DDR Max patch on Pd but, I cannot find a [hid] object for Pd running on windows.

I have download the patches for window from the links above but I cannot find the link for the joystick.dll object that you comment.

Please, would be you so nice to tell me where to download for avoid broken links?

Thank you very much

Hi! Your best bet will be to find Pd-extended for windows. That's the most complete installer that exists today. If the .dll isn't part of that, I'm not sure where it'll be found. Best of luck!

make3d (author)2012-08-19

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


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

I am newbie.

davidmerrill (author)make3d2012-08-19


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!

Tomcat94 (author)2008-05-28

I can't seem to find that pad. The link does not work... :((((

jon2211 (author)2006-12-02

glad to see people using Pure Data

stickdeathgod (author)2006-11-07

could u use that pad just as a controler for step mania (the computer DDR thing)?

I haven't tried that, but I think you could.. It looks identical to the $60 DDR controller that is for sale online..

saites2001 (author)2006-09-02

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)saites20012006-09-26

p.s. thanks to Joe Rothermich for adapting my original code to work in Windows (it was in Linux)

davidmerrill (author)saites20012006-09-26

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.

davidmerrill (author)saites20012006-09-03

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.

mrbob1000 (author)2006-09-01

awsome instructable

radiorental (author)2006-09-01

very nice! I did some thing similar here: I'll certainly add this to the repetoire for my intended users - thanks!

davidmerrill (author)radiorental2006-09-01

nice project! looks like fun.

About This Instructable




Bio: currently a graduate student at the MIT Media Lab
More by davidmerrill:Awesome SandwichDDR-style musical instrumentIndoor Deck
Add instructable to: