Using the 8BitDo Micro game controller with a Mac

I came across this brilliant little MacStories article on using a tiny 8BitDo Game Controller for automation and control on a Mac.

“What a neat idea!”, I thought. “I have one of those, I’ll see if I can use it for anything.”

Sadly, I got a bit confused about how to set this up and so I want to add the missing pieces to the MacStories article.

The 3 Ultimate Software Apps!

Short version

Even if you have some other 8BitDo Ultimate Software installed, get the version linked in the MacStories article, and ignore that it’s “Designed for iPad”.

Long version

It turns out there are, I think, three 8BitDo Universal Controller apps!

The one linked from the MacStories article is the one that I finally got working. It’s in the App Store and is advertised as “Designed for iPad”. So I didn’t think it was what I needed for my Macbook, but it works fine.

I got confused because I already had the version linked here installed and it too is called “8BitDo Ultimate Software”. But it seems to be an older version and it demands that you plug the controller in using a USB cable. And I tried every possible combination of cables, and pressing-controller-buttons-to-get-it-into-Mac-mode, and the switch on the bottom without success.

It looks like the software in the paragraph above is the older version of what is now “Ultimate Software V2“. But I couldn’t get the controller to connect to that either.

So it seems the Ultimate Software was far from it – at least one version is definitely “Penultimate”. Use the “Designed for iPad” app in the app store. That’s what you need for the job of setting up keyboard profiles.

The connection modes

Short version

When you connect the 8BitDo Micro to the “Designed for iPad” “Ultimate Software” app, you need to have it in “K” mode using the “S-D-K” mode switch on the bottom. You may have to re-pair the controller as a keyboard using Bluetooth.

Long version

So, I did have an app that the controller would connect to over USB: The Firmware Updater app!

But the connector would only connect to this when the mode switch on the bottom was set to D mode. I believe this is short for “Direct”.

However, when connecting to the “Ultimate Software”, things got confusing again.

I needed to switch it into “K” mode, which I believe is “Keyboard” mode. This means that your controller pretends to be a Bluetooth keyboard.

I even had to re-pair my controller using Bluetooth so that it appeared as a separate keyboard device.

Once this was done, the “Ultimate Software” recognised it and I could set up the profiles as per the original article.

Phew!

What a mess.

Using the controller

As the original article mentions, this is kinda cool. I set it up as a little web browsing controller with the D-pad being scroll up and down with up- and down-arrow keys mapped. The B button mapped to “Tab” to tab through links on a page; the A button mapped to “Enter” to follow links, the Y button mapped to “Cmd-Left-Arrow” to go back.

With that mapping I could kinda happily browser the web. Neat! And an interesting exercise in accessibility!

Changing profiles seems to send the key mapping to the controller over Bluetooth. The mappings carry on working even after closing the Ultimate Software.

It is a little annoying having to change profiles manually. So it feels more like something you set and use for a specific purpose, rather than having it change the mapping as you change between apps. I think the article covers that well.

I can see me using this as a fun little “clicker” for conference slides. That would kinda be cool.

Anyway, I hope this helped if you were as stuck as I was.

What weird things are you using game controllers for? Perhaps this has inspired you to try some things out? Let me know.