Godzilla multiplied by Arcade Games plus McDonalds divided by Pepsi Max plus StepMania equals Tom Tilley
Thomas Tilley
Godzilla arcade games McDonalds Pepsi MAX StepMania Tom Tilley

[ Home ] [ Publications ] [ Resume ] [ Family ] [ Projects ] [ The Others ] [ Sitemap ]

Home
Publications
Resume
Family
Projects
Wooden DDR Mat
The Others
Sitemap

Wooden DDR Mat

2005


Wooden Dance Dance Revolution dance mat This is not quite the world's crustiest Dance Dance Revolution (DDR) dance mat but it's up there (down there?) with them. This mat was made out of scavenged wood and parts and if you exclude the joypad (which we already had in our possession) it cost a total of $8.00 for the wood screws and some duct-tape.

Back in the days when we still relied on a 56k dial-up connection we were fortunate enough to house-sit for some friends over Christmas. They had blitzing cable modem which we made good use of and after seeing a link in this Slashdot post I decided to download StepMania.

StepMania screenshotIt was some months later that I rediscovered the download on my laptop and decided to install the game. Stepmania is an open source DDR-style music and rhythm game. After downloading some step songs and playing it on the keyboard I realised that I just had to build a mat to play the game as nature intended - using my feet.

On the web you can find plans for all sorts of cool DIY dance mats/pads including metal pads, plastic pads, capacitive pads, and even the LASER powered LASER Dance Matrix "mat" along with many commercial pads which range from the cheap to the deluxe. In a throwback to my initial experince with the game you can also now get a USB powered mat for your fingers although it's actually a stand alone repeat the pattern style game like Simon. We still had some free wood left over from our hovercraft project and a Thrustmaster Firestorm Digital 3 joypad so I decided to build a wooden dance mat.




The four direction pads on the arcade machines are 280mm (11") squares and I decided to use a sandwich like construction with 3 layers:

  1. A base layer
  2. A middle layer to cover and protect the pad switches
  3. A top layer with the four direction pads plus fixed squares in the center and corners to help hold the direction pads in place.

I had one piece of white chipboard which was large enough for a square base and one slightly smaller piece of black chipboard which could be cut and moved around to fill in the middle layer. Unfortunately, I only had some smaller pieces of masonite for the top layer with enough wood for five squares and not the nine I needed (the 4 dance pads plus five fixed squares).

Hmmm. It was then that I remebered that if you are ever in trouble and you have nowhere else to turn then you can always rely on geometry. Rather than making a square mat I decide to use an octagon instead. By cutting the four corner pieces in half I could re-use the cut-off pieces in the top layer to act as my four fixed corner guides. Along with the five pieces of masonite I now had enough wood for the top layer.

White square wooden pad base layer showing cut lines right arrow White octagonal wooden pad base

The middle layer was already smaller than the base layer and needed to match its octagonal shape. I cut the middle layer into four sections which formed a cross shaped channel when the pieces were spread out to align with the edges of the base. This made a convenient place to run wiring that would then be concealed beneath the fixed center square and corner pieces. It really didn't have to be this complex but the mat was made on a budget and I wanted to re-use materials that I already had.

Black wooden middle layer showing cut lines right arrow Middle layer octagon on top of the octagonal base right arrow Aligned middle and base layeroctagons showing the wiring channel

I scaveneged four tactile (tact) switches from the control panel of an old vcr to place under each of the four direction pads. As it serendipitously turned out the square body of the switches was the same height as the board used for the middle layer. By drilling a hole for each of the switches only the button protruded and the body of the switch was protected by the board. As a result they could take a serious pounding without being damaged.

Montage showing a VCR panel tact switch, the switch itself, and a pad mounted switch

The switches were wired using flexible flat ribbon cable - which was also scavenged - from an old dot matrix printer. One end of the cable was split into four strips and folded to run underneath the middle layer to each of the switches while the the other end was wired to an old 25-pin parallel printer cable. Two pieces of pink camp mat foam were duct taped on either side of each switch so the weight of the direction pads didn't depress the switch and to give the pad some bounce. This compressed nicely when you stepped on the pad so that the switch was depressed. The picture below right shows the area beneath the right-hand side pad with the red arrow indicating the position of the tact switch.

Wired tact switch with ribbon cable Printer cable and flat ribbon junction Open right pad showing the bounce foam and tact switch

With the switches mounted the fixed centre square and the four corner triangles were then mounted and held in place with wood screws. These acted as guides that allowed the direction pads to move up and down but restricted their horizontal movement. The direction pads themselves were held in place with tasteful yellow duct tape which was also used to make the arrows on each pad. My kids then added some custom artwork and the completed pad can be seen in the picture below right.

Southeast corner of the pad before mounting the corner triangle right arrow Southeast corner of the pad with the corner triangle mounted right arrow The completed wooden DDR dance pad

At this point I faced that classic problem: having built something cool, how do I connect it to a computer?

Joystick Hacking

StepMania was able to accept joystick input and so I decided to hack my Thrustmaster USB joypad and use it to connect the dance pad to the computer. I still wanted to be able to use the joypad so I placed a female 25 pin D-SUB parallel port connector underneath the joystick.
Montage showing the Thrustmaster joypad, the D-sub port mounted underneath, and the hacked joypad with the dance mat cable connected.

Although I only needed 4 buttons for the dance mat I decided to wire all of the joypad's connections to the D-SUB connector. The joypad used a common connection for all of the buttons and the direction pad requiring a total of 13 pins on the connector: 8 for the buttons, 4 for the direction pad and one for the common. There were only a few solder pads that could be wired without interfering with the normal operation of the buttons so for most of the connections I carefully scratched the green coating off to reveal the copper and soldered the wire to the track. You can find some more hints and thoughts on hacking different types of controllers here.

joypad PCB with patch wires soldereed to the tracks

I initially wired the DB-25 connector so that the 4 direction pads on the mat were mapped to up, down, left and right on the joypad. Unfortunately I'd failed to think through the fact that most joystick drivers don't allow you to press up AND down or left AND right at the same time. The mat worked great for single steps but any combos involving arrows in opposite directions didn't work. This can also be a potential problem with PS2 to USB converters which some people use to connect PlayStation dance mats to the PC. You can find a list of compatible adaptors and creative workarounds on the StepMania website.

After some quick resoldering to remap the direction pads to 4 buttons our $8.00 wooden dance mat was up and running. We also used two of the buttons on the joystick for "Start" and "Back". Here's a picture of my daughter stomping to the beat on the finished mat.

My daughter dancing on the wooden DDR mat

Other Projects

You may also be interested in reading about some of my other projects:

hacked joysticks PVC water pipe Guitar Hero TRON/motorbikes mercury switch
Wooden DDR Mat
Wooden DDR Mat
Asteroids Cabinet Fish Tank
Asteroids Cabinet Fish Tank
Web Kiosk Online Keyboard
Web Kiosk Online Keyboard
Spiritual Gifts Applet
Spiritual Gifts Applet
Hovercraft
Hovercraft
Everyday uses for PVC water pipe
Everyday uses for PVC water pipe
Bug-zapper Guitar Hero Controller
Bug-zapper Guitar Hero Controller
PVC Water Pipe Tron Controller
PVC Water Pipe Tron Controller
PVC Racing Cars
PVC Racing Cars
Virtual Pinball
Virtual Pinball
Halo Motorbike Helmet
Halo Motorbike Helmet
Multiplayer Guitar Hero
Multiplayer Guitar Hero
Bamboo Racing Cars
Bamboo Racing Cars
REAL-Tron
REAL-Tron
Terminator Xeyes
T-800 Terminator Xeyes
Plasma Pong Table
Plasma Pong Table
Voting Machine
Voting Machine
Blossom Motorbike Helmet
Blossom Motorbike Helmet
Coffee Grinder Puzzle Bobble
Coffee Grinder Puzzle Bobble
Stormtrooper Motorbike Helmet
Stormtrooper Motorbike Helmet
TRON Handheld POV Display
TRON Handheld POV Display
Countertop MAME Arcade Cabinet
Countertop MAME Arcade Cabinet
Lollybot
Lollybot
Payap Pinball Machine
Payap Pinball
Spacewar! Controllers
Spacewar! Controllers