Greetings everyone,
I know many folks have wanted to use 8Bitdo controllers on linux, and that includes the Ultimate Software.
I use the 8Bitdo Ultimate 2 controller on my Arch install. And I had been wanting to check for firmware updates, and was doing some searching and couldn’t find anything that could help me.
I found out that I can run that software through Lutris with minimal configuration.
- Open Add game dialogue box
- select “Add locally installed game”
- Filled out Name under Game info, and selected Runner (Wine)
- Game options tab I selected the executable, selected Working directory, and set Wine prefix path
- Runner options I used GE-Proton (latest)
- Launched
I want to note; unsure if you would have to, but I have udev rules added:
ACTION=="add", ATTRS{idVendor}=="2dc8", ATTRS{idProduct}=="6103", RUN+="/sbin/modprobe xpad", RUN+="/bin/sh -c 'echo 2dc8 6103 > /sys/bus/usb/drivers/xpad/new_id'"
ACTION=="add", ATTRS{idVendor}=="2dc8", ATTRS{idProduct}=="310b", RUN+="/sbin/modprobe xpad", RUN+="/bin/sh -c 'echo 2dc8 310b > /sys/bus/usb/drivers/xpad/new_id'"
Hope this helps someone.
Edit:
I want to add I am also using xpadneo-dkms from the AUR.
Thanks for this! I have a couple of 8BitDo products so saved this for when I inevitably need to use it.
There’s a web app that will update your controllers on linux without needing to install anything or using any workarounds
Yes, but beware those that refuse to install chromium when this bullshit happens.

The current browser does not support this tool.
Booo. I have Firefox… But wish I knew this earlier.
This is nice to know! However, not all controllers are supported I am seeing.
I end up installing Windows 10 on a virtual machine with QEMU/KVM, and updated the firmware there by passthrough the USB device. I didn’t even try WINE and thought it might be more trouble than worth the efforts. Looks like I was wrong.
BTW there is also GE-Wine if I’m not mistaken. For non Steam games, it is recommended to use GE-Wine instead GE-Proton, but maybe that advice is as old as I am. I don’t even know why that was the case.
Looking at the github for Wine-GE https://github.com/GloriousEggroll/wine-ge-custom it appears to be archived; and I can’t recall where I read it, but Proton-GE replaces that functionality (Someone please correct me if I am wrong)
I have also tested using my system Wine version (11.9) as well, and same results; can use Ultimate Software V2.
I have been toying with getting V1 working, but to no avail.
Why do you try to get Software V1 working, if V2 works?
The older Ultimate Controller 1 does not work in V2 unfortunately
8bitdo does really good gamepads for good price, but their software sucks! I don’t get why they don’t support older controllers in the newer software…
I was trying with Ultimate Software V1, and did not have the same luck.
You’re a hero! Thanks for documenting and sharing!!
Is there a sensible page in the Archwiki where this could be made findable?
I will have a look at the Arch Wiki to see if I can contribute!




