atar-axis / xpadneo

Advanced Linux Driver for Xbox One Wireless Controller (shipped with Xbox One S)
https://atar-axis.github.io/xpadneo/
GNU General Public License v3.0
2.03k stars 115 forks source link

Xpadneo not surviving kernel updates on Ubuntu 22.04 / Kernel 6.5.0? #491

Open ipkpjersi opened 3 months ago

ipkpjersi commented 3 months ago

Version of xpadneo

v0.9.6

Controller Model

Connection mode

Installed Software

Protocol Information

Please help us identify at which layer the problem can be found if you want to report mapping errors or if the controller fails to be detected:

Please describe how it is failing below in the next sections.

Severity / Impact

Describe the Bug

Before, at least I think pre Linux kernel 6.x, it used to survive kernel updates and RPCS3 would continue to work properly with evdev mode. Now it requires a reinstall of xpadneo for evdev mode to start working properly again. The joysticks are out of range and the buttons are mapped incorrectly, etc after every kernel update.

Steps to Reproduce

  1. Install xpadneo v0.9.6.
  2. Update kernel to latest version through apt-get update / apt-get dist-upgrade.

Expected Behavior

I expect xpadneo to survive kernel updates like it used to and for RPCS3 to work as expected with evdev mode.

Screenshots / GIFs / Videos

303970279-7f545bc5-dc7b-4287-a014-8723b66e3705

System Information

# uname -a
Linux fast-cottage 6.5.0-45-generic #45~22.04.1-Ubuntu SMP PREEMPT_DYNAMIC Mon Jul 15 16:40:02 UTC 2 x86_64 x86_64 x86_64 GNU/Linux
# xxd -c20 -g1 /sys/module/hid_xpadneo/drivers/hid:xpadneo/0005:045E:*/report_descriptor | tee >(cksum)
zsh: no matches found: /sys/module/hid_xpadneo/drivers/hid:xpadneo/0005:045E:*/report_descriptor
4294967295 0

Controller and Bluetooth Information

xpadneo-lsusb.txt xpadneo-dmesg.txt xpadneo-btmon.txt.gz

Additional Context

The weird thing is, the controller works as expected with SDL mode, just not with evdev mode, evdev mode requires a reinstall of xpadneo: 2024-08-10_13-11-32_0

2024-08-10_13-09-58_0

If you need any additional information, please let me know.

kakra commented 3 months ago

The hidraw device bypasses kernel drivers, user-space like SDL will read the raw commands from the device. Thus for such software, it will work regardless of xpadneo being installed.

This looks like our dkms integration may be somewhat broken. I'll look into it.

ipkpjersi commented 3 months ago

I'm not sure if it helps but here's my dkms status:

sudo dkms status
hid-xpadneo/v0.9.6, 6.5.0-41-generic, x86_64: installed
hid-xpadneo/v0.9.6, 6.5.0-45-generic, x86_64: installed
nvidia/535.183.06, 6.5.0-41-generic, x86_64: installed
nvidia/535.183.06, 6.5.0-45-generic, x86_64: installed
openrazer-driver/3.8.0, 6.5.0-41-generic, x86_64: installed
openrazer-driver/3.8.0, 6.5.0-45-generic, x86_64: installed
zfs/2.2.5, 6.5.0-45-generic, x86_64: installed

It does have it installed for both my older and newer kernel, not sure if that matters, probably not.