Bluetooth cannot enable

I see a couple threads about bluetooth but neither seem to be my issue. Unfortunately I do not know at what point bluetooth stopped working but it was working great for quite a while and I know it was working back in January. Trying to figure out what is going on and hoping for some help. The wifi/bluetooth card is an intel AX200 and the wifi works (though I dont use it). I went to connect a headset today and the tray icon shows no adapters when I hover over it. When I go to configure it theres an enable button that simply does nothing.

I have rebooted (issue persists)
Forced reinstall of bluetooth packages (issue persists)
rfkill toggle to disable reenable (issue persists)
systemctl restart bluetooth (issue persists)

lsusb

:~ # lsusb |grep Blue
Bus 001 Device 003: ID 8087:0029 Intel Corp. AX200 Bluetooth

rfkill

:~ # rfkill
ID TYPE      DEVICE      SOFT      HARD
 0 bluetooth hci0   unblocked unblocked
 1 wlan      phy0   unblocked unblocked

bluetoothctl show

:~ # bluetoothctl show
No default controller available

systemctl stats bluetooth (shows some plugin failures but the service is running)

:~ # systemctl status bluetooth
â—Ź bluetooth.service - Bluetooth service
     Loaded: loaded (/usr/lib/systemd/system/bluetooth.service; enabled; preset: disabled)
     Active: active (running) since Tue 2023-02-21 15:07:32 EST; 11min ago
       Docs: man:bluetoothd(8)
   Main PID: 21863 (bluetoothd)
     Status: "Running"
      Tasks: 1 (limit: 4915)
        CPU: 27ms
     CGroup: /system.slice/bluetooth.service
             └─21863 /usr/libexec/bluetooth/bluetoothd

Feb 21 15:07:32 generichostname bluetoothd[21863]: Bluetooth daemon 5.66
Feb 21 15:07:32 generichostname systemd[1]: Started Bluetooth service.
Feb 21 15:07:32 generichostname bluetoothd[21863]: Starting SDP server
Feb 21 15:07:32 generichostname bluetoothd[21863]: profiles/audio/vcp.c:vcp_init() D-Bus experimental not enabled
Feb 21 15:07:32 generichostname bluetoothd[21863]: src/plugin.c:plugin_init() Failed to init vcp plugin
Feb 21 15:07:32 generichostname bluetoothd[21863]: profiles/audio/mcp.c:mcp_init() D-Bus experimental not enabled
Feb 21 15:07:32 generichostname bluetoothd[21863]: src/plugin.c:plugin_init() Failed to init mcp plugin
Feb 21 15:07:32 generichostname bluetoothd[21863]: profiles/audio/bap.c:bap_init() D-Bus experimental not enabled
Feb 21 15:07:32 generichostname bluetoothd[21863]: src/plugin.c:plugin_init() Failed to init bap plugin
Feb 21 15:07:32 generichostname bluetoothd[21863]: Bluetooth management interface 1.22 initialized

Installed pacakges

~ # zypper se -si blue
Loading repository data...
Reading installed packages...

S  | Name                      | Type    | Version         | Arch   | Repository
---+---------------------------+---------+-----------------+--------+----------------------
i+ | bluedevil5                | package | 5.27.0-1.1      | x86_64 | Main Repository (OSS)
i  | bluedevil5-lang           | package | 5.27.0-1.1      | noarch | Main Repository (OSS)
i+ | bluez                     | package | 5.66-1.4        | x86_64 | Main Repository (OSS)
i+ | bluez-auto-enable-devices | package | 5.66-1.4        | noarch | Main Repository (OSS)
i  | bluez-cups                | package | 5.66-1.4        | x86_64 | Main Repository (OSS)
i+ | bluez-firmware            | package | 1.2-150.1       | x86_64 | Main Repository (OSS)
i  | bluez-qt-imports          | package | 5.103.0-1.1     | x86_64 | Main Repository (OSS)
i  | bluez-qt-udev             | package | 5.103.0-1.1     | x86_64 | Main Repository (OSS)
i+ | kernel-firmware-bluetooth | package | 20230210-1.1    | noarch | Main Repository (OSS)
i  | libbluetooth3             | package | 5.66-1.4        | x86_64 | Main Repository (OSS)
i  | libbluetooth3-32bit       | package | 5.66-1.4        | x86_64 | Main Repository (OSS)
i  | libKF5BluezQt6            | package | 5.103.0-1.1     | x86_64 | Main Repository (OSS)
i  | libQt5Bluetooth5          | package | 5.15.8+kde5-1.1 | x86_64 | Main Repository (OSS)
i  | libQt5Bluetooth5-imports  | package | 5.15.8+kde5-1.1 | x86_64 | Main Repository (OSS)
i+ | NetworkManager-bluetooth  | package | 1.42.0-1.1      | x86_64 | Main Repository (OSS)

Everything looks fine apart from “bluetoothctl show” not showing a controller.

Can you try executing “bluetoothctl show” as root to see if that is some kind of rights issue?

Yes that and all the commands were executed as root.

Here are a couple screenshots. One from the system tray showing No Adapaters found from the bluetooth widget and the second showing Bluetooth is disabled in system settings.

Any other errors? For instance do you see something relevant on system logs?

sudo journalctl -b -p 0..3

You could also try clearing /var/lib/bluetooth/* on a root shell. It’s more of a last resort way as it doesn’t tell you what’s wrong but should cause no harm by doing so and maybe get the issue fixed.

Hi, one wonders if it’s a firmware issue for the device since the controller is seen.

Looks like I missed a log entry when looking before.

Feb 21 14:29:20 generichostname kernel: Bluetooth: hci0: Reading Intel version command failed (-110)

Cant beleive I missed that error. Found some other people who had the problem way back and it appears the fix they were using still works. Looking at various places I can find mention it happens randomly. Will continue reading and trying to find out what causes it and what a permanent fix may be. But for now executing the following commands work.

sudo rmmod btusb
sudo rmmod btintel

sudo modprobe btintel
sudo modprobe btusb

After running those commands bluetooth try icon popped up and shows I have devices that are paired with the machine and I am able to connect them without issue.

2 Likes