Scheduled Maintenance: We are aware of an issue with Google, AOL, and Yahoo services as email providers which are blocking new registrations. We are trying to fix the issue and we have several internal and external support tickets in process to resolve the issue. Please see: viewtopic.php?t=158230

 

 

 

XBox One controller has different mappings in BT and USB

Need help with peripherals or devices?
Post Reply
Message
Author
ngolia
Posts: 28
Joined: 2010-02-17 21:17

XBox One controller has different mappings in BT and USB

#1 Post by ngolia »

I've got an XBox One controller, and a few months ago the button mappings got messed up when it's in Bluetooth mode, which means it doesn't work properly in games with preset mappings for XBox. I've managed to mostly remap it with jstest-gtk and jscal-store, but the "View"/"Select" button and the "Xbox"/"Mode" button don't generate any events according to jstest-gtk. Those two buttons do produce events when the controller is connected by USB cable, and the mappings work as expected in games. Previously the mappings in Bluetooth were the same as in USB, although I'm not sure whether the above two buttons worked in both or either mode.

For Bluetooth the identifiers are:

Code: Select all

NAME="Xbox Wireless Controller"
VENDOR="0a12"
PRODUCT="0001"
The above vendor/product codes seem to be for the Bluetooth receiver rather than the controller.

For USB cable:

Code: Select all

NAME="Microsoft X-Box One S pad"
VENDOR="045e"
PRODUCT="02ea"
Anyway, I don't know what package I should investigate further or file a bug against. bluez? udev? The kernel:- which subsystem/module? Maybe even xserver-xorg-input-joystick? This isn't Debian-specific BTW, I also tested it on Arch today and found the same discrepancy. Also, when Googling I found xpadneo, claiming to be the first and only XBox One S controller driver, but mine has always worked with the xpad driver (from stock kernel I think).

User avatar
pylkko
Posts: 1802
Joined: 2014-11-06 19:02

Re: XBox One controller has different mappings in BT and USB

#2 Post by pylkko »

According to what you say, you changed something and then it stopped working, however, you also know that before that it worked perfectly. One might then suggest that you undo that change.

ngolia
Posts: 28
Joined: 2010-02-17 21:17

Re: XBox One controller has different mappings in BT and USB

#3 Post by ngolia »

I didn't change anything, other than performing a dist-upgrade. I'm pretty sure that this happened before buster, so the only way I can undo my own actions is to wipe and install oldstable, which doesn't seem sensible. I'd rather try to work out exactly what changed upstream and see if that alone can be reverted/fixed.

However, apparently the controller can get firmware updates when used in Windows, so perhaps that's what's happened. But I probably can't undo that either, so it would be nice if the Linux driver could be updated to cope with the change.

User avatar
pylkko
Posts: 1802
Joined: 2014-11-06 19:02

Re: XBox One controller has different mappings in BT and USB

#4 Post by pylkko »

Fair enough. The easiest way to get it to work (especially since you do not know what changed) is to go back, however, you might be able to remap it.



Do you have the xwiimote package installed?

http://dvdhrm.github.io/xwiimote/

"xwiimote is an open-source device driver for Nintendo Wii / Wii U remotes. It
contains tools and libraries which work together with the official hid-wiimote
kernel driver, available since linux-3.1."

Code: Select all

apt install xwiimote
follow the manual to check and change the keys (read the link, especially under xwiishow)

ngolia
Posts: 28
Joined: 2010-02-17 21:17

[Solved] XBox One controller has different mappings in BT &

#5 Post by ngolia »

I think xwiimote is just for Wii remotes, it doesn't claim to be compatible with Xbox controllers too AFAICT. I went ahead and installed xpadneo, that's fixed it. It even has a battery monitor, a feature which never made itself apparent in Windows, so that's cool.

Post Reply