Dance

How to Get USB DDR Controllers Working on a Mac

So I got my girlfriend a pair of USB DDR (Dance Dance Revolution) controllers and figured it would be easy to get them setup on my Mac laptop with an emulator, but I ended up spending a few hours scouring various Reddit threads before I could get it working.

The process isn’t too complicated once you know the steps, but I couldn’t find a single source that lays out all the instructions, so I’m sharing them here so hopefully you won’t struggle as much as I did!

For the record, here is the USB DDR/StepMania Dance Mat that I purchased on Amazon. The description says it doesn’t work with Mac, but I was able to get them working just fine:

USB DDR Controllers

For my computer setup I’m using a 2022 13 inch MacBook Pro running MacOS 14.6 Sonoma.

Step 1) Get USB-C adaptors

First step’s first, the controllers use USB-A, and the newer Macs only come with USB-C, so you’ll need to pick up a couple of USB to USB-C adaptors. This is pretty straightforward, but PRO TIP I would get ones with a thin end like this one:

Reason being I got a slightly thicker one from Anker, and I wasn’t able to plug them in side by side on my 13 inch MacBook Pro! I ended up having to connect them to my 15 inch MacBook Pro (which has USB sockets on either side of the laptop) in order to get them both working at the same time.

Step 2) Get the Enjoyable gamepad mapper

I tried various methods of trying to map the gamepad to keys, and this was the only one I was able to get working.

Go to the Enjoyable website and download their gamepad mapper. Once you have it installed, plug-in both of the controllers and you can start mapping gamepad presses to keystrokes on the computer.

For my gamepads, I mapped on mat so the arrows correspond to the arrow keys, and for the other one I mapped the arrows to ‘AWSD’ (‘A’ = left, ‘W’ = up, etc like in old videogames). I also mapped one of the “Start” buttons to the “Enter” key.

Once you have everything mapped, go to the “Mappings” menu and select “Enable”. You should now be able to trigger those keypresses by stepping on the gamepad!

Step 3) Download DDR emulator

StepMania is the DDR emulator I had heard of before purchasing the gamepads, but as of this writing StepMania does not work on Macs higher than macOS 10.15.

Instead, the emulator you want to get is called Project Outfox. This is an open source DDR emulator that is compatible with SIM files from StepMania and most importantly works on newer model Macs.

Step 4) Configure the keys in Outfox

With Enjoyable active, the gamepad that is set to arrows keys should already be working. For the other one, you will need to map the letters ‘AWSD’ (or whatever you chose) to the controls in Outfox.

From the menu, go to Options -> Input & Calibration -> Config Key/Joy Mappings. From there you can use your keyboard (use the arrow keys to navigate, right arrow to configure controller 2) to select which keys you want to map to which controls.

Step 5) Download SIM Files

You should pretty much good to go after step 4! However, Outfox only comes pre-installed by one song by default. If you want more music, you can download it from the following website. The site has hundreds of songs including some classics from DDR as well as many fan created SIM files. Some of my favorites include songs from Zelda, Doctor Mario and Final Fantasy.

Step 6) Bonus Tips

Some bonus tips…

We have a wood floor, and the controller slides around quite a bit so we were able to fix this by just scotch taping the corners onto the ground. Pretty secure, and easy enough to peel off when not in use.

We also taped strips of velcro along the borders, so we could feel where the borders of the arrow are with are feet.

Hope these tips help you get started playing DDR on your Mac without too much hassle! Let me know in the comments if you were able to get it working for you, or if you have any other questions!

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.