Skip to content

Instantly share code, notes, and snippets.

@ammuench
Last active February 28, 2025 11:07
Show Gist options
  • Save ammuench/0dcf14faf4e3b000020992612a2711e2 to your computer and use it in GitHub Desktop.
Save ammuench/0dcf14faf4e3b000020992612a2711e2 to your computer and use it in GitHub Desktop.
8BitDo Ultimate 2.4GHz wifi working in linux

FROM https://www.reddit.com/r/Fedora/comments/zmvkdj/8bitdo_ultimate_bluetooth_controller_working_in/


I've bought this new controller from 8BitDo and wished to use on linux, to my sadness the controller didn't work out of the box, neither by cable, the 2.4G dongle or bluetooth.

So I've tried a number of solutions and this one from u/GodOfEmus over in the 8bitdo community was the one to work for me:

  1. Create a new file /etc/udev/rules.d/99-8bitdo-xinput.rules
  2. Paste this udev rule in there, then save and exit the file:
  ACTION=="add", ATTRS{idVendor}=="2dc8", ATTRS{idProduct}=="3106", RUN+="/sbin/modprobe xpad", RUN+="/bin/sh -c 'echo 2dc8 3106 > /sys/bus/usb/drivers/xpad/new_id'"
  1. Run the following command in a terminal: sudo udevadm control --reload
  2. Unplug and replug the controller if it was already plugged in, it might take a second if you have the bluetooth version

It will basically "cheat" the OS to see the controller as an generic xbox device, so sadly no bluetooth nor gyro control if you care about that, but the rumbling is working for me.

Link to the original post: https://www.reddit.com/r/8bitdo/comments/ykdsmv/ultimate_24_ghz_model_right_analog_not_working_in/

And link to the comment of u/GodOfEmus with the solution: https://www.reddit.com/r/8bitdo/comments/ykdsmv/comment/iv48s4k/?utm_source=share&utm_medium=web2x&context=3

Sharing this solution here to spread the word in our community

@BeardSpike
Copy link

BeardSpike commented Feb 3, 2025

With the help of /r/linux_gaming about CachyOS not picking up the 3mode, one of the users there has pinpointed the issue to the charging dock. Not CachyOS problem at all.
The dongle should be plugged into the charging dock at all times.

So issue was PEBKAC, not with the charging dock.

I keep steam running in the background at all times (Steam is set to autostart on my desktop), and I never have problems with this controller. Steam keeps it alive.

Hmm,

Riddle me this, I removed the 99-8bitdo-xinput.rules, plugged it in as manual states.

The controller now connects but only when games are turned off, this is regardless if I have xinput.rules files or not - oddly enough Discord, CoreCtrl, Steam, Heroic Games Launcher don't interfere with it.

Or if I use any recording software whatsoever in the background it won't connect, like GPU Screen Recorder - if Replay Buffer is turned on it won't connect, nor through the dongle, nor wired - when I turn Replay Buffer off it connects then I can turn RB on, turn any game on and it works both wired and through the dongle.

The only mode I can turn it on when it disconnects and I have any game on or Replay Buffer on is through 8BitDo USB Wireless Adapter 2 in Android BT Mode... It always connects.

This is so weird for me, I guess I could keep it alive like you with Steam and have it always on in the background but I Just wanted to point this out and also ask if any user who has 3-mode has the same issues? Should it be like this?

I now know more about this controller than ever before - it has it quirks on Linux for sure.

@BeardSpike
Copy link

I just wanted to share.

I bought a second 8BitDo controller 2,4Ghz which is 2C like a two weeks ago.

This one always connects regardless of open apps and games through 2,4Ghz dongle.

I guess 3-Mode is just that weird, at least for me.

I might sell 2C in a while since 8BitDo just released Ultimate 2 controller with 1000Hz TMR joysticks and gyro - and I don't quite like vibrations on 2c plus feel of the grip/shell.

If I buy this new controller I will gladly share how it behaves under Linux for me.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment