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

Series X|S controller not listed in bluetooth devices Ubuntu 22.04.3 #442

Open DoobleD opened 8 months ago

DoobleD commented 8 months ago

Hi folks,

Thanks for providing this.

My series X|S controller is not listed in the available bluetooth devices on Ubuntu 22.04.3 using either the system bluetooth GUI or bluetoothctl from the command line as instructed here.

My bluetooth supports BLE, and pairing with the controller works fine from my Windows partition on the same computer. I have also updated the controller firmware while on Windows.

$ btmgmt info
Index list with 1 item
hci0:   Primary controller
    addr C8:94:02:C1:67:1E version 11 manufacturer 70 class 0x10010c
    supported settings: powered connectable fast-connectable discoverable bondable link-security ssp br/edr hs le advertising secure-conn debug-keys privacy configuration static-addr phy-configuration wide-band-speech 
    current settings: powered connectable discoverable bondable ssp br/edr le secure-conn 
    name <obfuscated>
    short name 
hci0:   Configuration options
    supported options: public-address 
    missing options: 

Any idea?

EDIT 1 | Added bluetooth chipset and kernel version:

$ lspci -knn | grep Net -A3
01:00.0 Network controller [0280]: MEDIATEK Corp. Device [14c3:0608]
    Subsystem: MEDIATEK Corp. Device [14c3:0608]
    Kernel driver in use: mt7921e
    Kernel modules: mt7921e
$ uname -a
Linux home 6.2.0-35-generic #35~22.04.1-Ubuntu SMP PREEMPT_DYNAMIC Fri Oct  6 10:23:26 UTC 2 x86_64 x86_64 x86_64 GNU/Linux

EDIT 2 | Updated to latest bluetooth chipset driver based on this guide:

$ ethtool -i wlp1s0
driver: mt7921e
version: 6.2.0-35-generic
firmware-version: ____010000-20230526130958
expansion-rom-version: 
bus-info: 0000:01:00.0
supports-statistics: yes
supports-test: no
supports-eeprom-access: no
supports-register-dump: no
supports-priv-flags: no
kakra commented 8 months ago

Try updating the Xbox controller to latest firmware in Windows. This works by USB or with the original Xbox radio dongle using the Xbox Accessories App from Windows Store, you cannot update the firmware via Bluetooth connection (there's no such support in the protocol).

After updating the firmware, if it still does not work, try pairing to a smartphone first. Also, try double clicking or short holding (1s) the connect button (only works with firmware 5.x, XBXS should be on 5.x when shipped) to switch it between Xbox dongle and Bluetooth mode. I'm currently not sure which connect button press switches to which mode.

Also, look if maybe your Bluetooth chipset needs a firmware package to be installed. Usually, most firmware is provided in the linux-firmware package but sometimes there are extra packages for specific hardware.

DoobleD commented 8 months ago

Thank you @kakra!

I had upgraded the controller to the latest firmware already from Windows with USB, and I have also paired with my Android smartphone without issue.

I did enable pairing mode by holding the connect button for ~1 sec (the controller light starts blinking fast), is that what you mean? I'm not sure I get the difference between dongle and bluetooth mode. I don't have any external dongle, just the controller and a bluetooth chipset in my computer.

I tried looking around for a specific Linux driver for my chipset but had no much luck with that. The default driver seems to work fine for other bluetooth devices though (ear buds and so on).

deathxxx123 commented 2 months ago

The controller is no more working after lastest firmwre. Im thinking for xbox dongle and end this kind of problems for once.