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
1.88k stars 110 forks source link

xpadneo: item fetching failed at offset 18/22 | parse failed | failed with error -22 #341

Closed h1sashin closed 2 years ago

h1sashin commented 2 years ago

Version of xpadneo

0.9.1

Controller Model

Connection mode

Installed Software

Severity / Impact

Describe the Bug

As in docs controller is connected but did not rumble. So I ran dmesg and it showed my a xpadneo and hid-generic errors

Steps to Reproduce

  1. Install prerequisites
  2. Install xpadneo from github
  3. connect to the controller
  4. there you are

Expected Behavior

Controller connected properly

System Information

# uname -a
Linux charlotte 5.15.28-1-MANJARO #1 SMP PREEMPT Fri Mar 11 14:12:57 UTC 2022 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-btmon.txt xpadneo-dmesg.txt xpadneo-lsusb.txt

kakra commented 2 years ago

This error even occurs in hid-generic:

[14273.930768] hid-generic 0005:045E:0B13.0009: item fetching failed at offset 18/22
[14273.930780] hid-generic: probe of 0005:045E:0B13.0009 failed with error -22

I suspect the controller isn't paired correctly in Bluetooth, or a Bluetooth module/feature is missing. A descriptor size of 22 bytes seems rather short.

h1sashin commented 2 years ago

Okay so today I was able to connect controller to my friend's windows pc and update its firmware, now I'm able to connect properly without any config.

kakra commented 2 years ago

Do you know which firmware version it had before the update?

h1sashin commented 2 years ago

Probably the first this controller ever had, I bought it on release and used it under Windows all the time.

gladish commented 2 years ago

Same issue for me. Controller is running 5.13.3143.0. I removed the device using bluetoothctl and then re-added it. Works ok now.

[wingman]: uname -a Linux wingman 5.8.0-1032-raspi #35-Ubuntu SMP PREEMPT Wed Jul 14 10:51:21 UTC 2021 aarch64 aarch64 aarch64 GNU/Linux

[wingman]: /lib/bluetooth/bluetoothd --version 5.63