I’ve been playing games on Steam for months and I have TWO Xbox controllers that work fine with both USB and Bluetooth. Now they both still work fine with USB but are weird with Bluetooth…
I am running:
Linux version 5.15.60-1-MANJARO (builduser@fv-az462-678) (gcc (GCC) 12.1.1 20220730, GNU ld (GNU Binutils) 2.39) #1 SMP PREEMPT Thu Aug 11 13:14:05 UTC 2022
- For the past 5 months, my (2) Xbox controllers has been working perfectly over Bluetooth for all of my Steam games.
- I DID have to update the firmware in both of the controllers on a Windows 10 machine.
- Both controllers DO connect to Bluetooth and they DO rumble on connect.
- Both controllers WORK but they exhibit the same behavior: some stick actions work, some stick actions are reversed, some buttons are mapped wrong.
- This happened between SEP 1 and 4. I don’t remember exactly when it stopped working, but it WAS working normally on AUG 29 because I was live-streaming some Elden Ring on Twitch.
- Both controllers work normally when connected via USB cables.
- I can start the game using the controller with USB, then disconnect the USB cable and it will switch over to Bluetooth, rumble, and then the mappings are wrong and I can’t play the game. If I plug the USB cable back in, it returns to normal and I can play the game.
In case it helps, here’s my modinfo, up to, but not including the signing key:
# modinfo hid_xpadneo filename: /lib/modules/5.15.60-1-MANJARO/updates/dkms/hid-xpadneo.ko.xz version: 0.9.4 description: Linux kernel driver for Xbox ONE S+ gamepads (BT), incl. FF author: Kai Krakow <email@example.com> author: Florian Dollinger <firstname.lastname@example.org> license: GPL srcversion: E2618C906388296F82E12D6 alias: hid:b0005g*v0000045Ep00000B13 alias: hid:b0005g*v0000045Ep00000B22 alias: hid:b0005g*v0000045Ep00000B05 alias: hid:b0005g*v0000045Ep00000B20 alias: hid:b0005g*v0000045Ep000002E0 alias: hid:b0005g*v0000045Ep000002FD depends: ff-memless retpoline: Y name: hid_xpadneo vermagic: 5.15.60-1-MANJARO SMP preempt mod_unload sig_id: PKCS#7 signer: DKMS module signing key ...
I uninstalled xpadneo-dkms, rebooted, and reinstalled it. No errors. Same problem - inputs are mapped wrong.
Here’s the output from
dmesg -wdH while connecting the Xbox controller via Bluetooth:
[< 9.904653>] xpadneo 0005:045E:0B13.000C: BLE firmware version 5.13 [< 0.000003>] xpadneo 0005:045E:0B13.000C: pretending XB1S Windows wireless mode (changed PID from 0x0B13 to 0x02FD) [< 0.000001>] xpadneo 0005:045E:0B13.000C: working around wrong SDL2 mappings (changed version from 0x00000513 to 0x00001130) [< 0.000001>] xpadneo 0005:045E:0B13.000C: report descriptor size: 283 bytes [< 0.000001>] xpadneo 0005:045E:0B13.000C: fixing up Rx axis [< 0.000001>] xpadneo 0005:045E:0B13.000C: fixing up Ry axis [< 0.000001>] xpadneo 0005:045E:0B13.000C: fixing up Z axis [< 0.000000>] xpadneo 0005:045E:0B13.000C: fixing up Rz axis [< 0.000001>] xpadneo 0005:045E:0B13.000C: fixing up button mapping [< 0.000067>] xpadneo 0005:045E:0B13.000C: enabling compliance with Linux Gamepad Specification [< 0.000026>] input: Xbox Wireless Controller as /devices/virtual/misc/uhid/0005:045E:0B13.000C/input/input38 [< 0.000181>] xpadneo 0005:045E:0B13.000C: input,hidraw10: BLUETOOTH HID v11.30 Gamepad [Xbox Wireless Controller] on 98:3b:8f:97:4f:68 [< 0.000004>] xpadneo 0005:045E:0B13.000C: controller quirks: 0x00000050 [< 0.990135>] xpadneo 0005:045E:0B13.000C: Xbox Wireless Controller [14:cb:65:7f:11:d0] connected
Finally, I did a number of tests with the controller connected to Bluetooth, and it seemed to be working, so I decided to make a chart, using https://gamepad-tester.com/ to test all sticks and buttons, first using USB, then using Bluetooth:
XBOX Controller Test using https://gamepad-tester.com/ Controller USB Bluetooth ---------- --- --------- Left stick - up axis 1- axis 1- same - down axis 1+ axis 1+ same - left axis 0- axis 0- same - right axis 0+ axis 0+ same - press b9 b9 same Right stick - up axis 4- axis 4- same - down axis 4+ axis 4+ same - left axis 3- axis 3- same - right axis 3+ axis 3+ same - press b10 b10 same D-pad - up axis 7- axis 7- same - down axis 7+ axis 7+ same - left axis 6- axis 6- same - right axis 6+ axis 6+ same X button b2 b2 same Y button b3 b3 same A button b0 b0 same B button b1 b1 same LT axis 2-to+ axis 2-to+ same LB b4 b4 same RT axis 5-to+ axis 5-to+ same RB b5 b5 same page b6 b6 same menu b7 b7 same
As you can see, my controller is STILL working properly over Bluetooth, and all of the mappings are the SAME as USB! From here, I thought the problem must be a recent Steam update???
I posted on the Steam Forum and tried a number of suggestions with Steam General Controller settings, and per game settings. Nothing made a difference.
So now I’m back here and I’m ready to try anything you all can suggest.