Auto-connect failing with bluez 5.71-1 [Failed to load link keys for hci0]
Description:
With bluez 5.71-1, my bluetooth headset is not auto-connecting correctly at startup like it usually does. Instead it goes into a connected/disconnected state loop.
I have to manually connect to the headset first (via blueman
or bluetoothctl
). After that it works as intended, the headset automatically reconnect if I stop and restart it (until I reboot the system, then the issue comes back).
Basically, the first auto-connect after the (re)boot of the system isn't working anymore. For what it's worth, a soft-reboot after I initially connect the headset manually is okay, the issue does not happen.
systemctl status bluetooth
reports the following error:
$ systemctl status bluetooth
● bluetooth.service - Bluetooth service
Loaded: loaded (/usr/lib/systemd/system/bluetooth.service; enabled; preset: disabled)
Active: active (running) since Fri 2023-12-15 11:03:18 CET; 25s ago
Docs: man:bluetoothd(8)
Main PID: 592 (bluetoothd)
Status: "Running"
Tasks: 1 (limit: 38404)
Memory: 3.1M (peak: 3.6M)
CPU: 33ms
CGroup: /system.slice/bluetooth.service
└─592 /usr/lib/bluetooth/bluetoothddéc. 15 11:03:18 Arch-Desktop bluetoothd[592]: Battery Provider Manager created
déc. 15 11:03:18 Arch-Desktop bluetoothd[592]: Failed to load link keys for hci0: Invalid Parameters (0x0d)
déc. 15 11:03:38 Arch-Desktop bluetoothd[592]: Endpoint registered: sender=:1.28 path=/MediaEndpoint/A2DPSink/sbc
déc. 15 11:03:38 Arch-Desktop bluetoothd[592]: Endpoint registered: sender=:1.28 path=/MediaEndpoint/A2DPSource/sbc
déc. 15 11:03:38 Arch-Desktop bluetoothd[592]: Endpoint registered: sender=:1.28 path=/MediaEndpoint/A2DPSink/sbc_xq_453
déc. 15 11:03:38 Arch-Desktop bluetoothd[592]: Endpoint registered: sender=:1.28 path=/MediaEndpoint/A2DPSource/sbc_xq_453
déc. 15 11:03:38 Arch-Desktop bluetoothd[592]: Endpoint registered: sender=:1.28 path=/MediaEndpoint/A2DPSink/sbc_xq_512
déc. 15 11:03:38 Arch-Desktop bluetoothd[592]: Endpoint registered: sender=:1.28 path=/MediaEndpoint/A2DPSource/sbc_xq_512
déc. 15 11:03:38 Arch-Desktop bluetoothd[592]: Endpoint registered: sender=:1.28 path=/MediaEndpoint/A2DPSink/sbc_xq_552
déc. 15 11:03:38 Arch-Desktop bluetoothd[592]: Endpoint registered: sender=:1.28 path=/MediaEndpoint/A2DPSource/sbc_xq_552
Downgrading to 5.70-2 solves the issue.
Additional info:
- package version(s): 5.71-1
- config and/or log files: No custom config. I'm using the
linux
kernel (v6.6.7 currently) and the Asus bt500 bluetooth adapter. - link to upstream bug report, if any: https://github.com/bluez/bluez/issues/686 & https://lore.kernel.org/linux-bluetooth/55903fdb-e970-4b89-b620-daa93bad7811@archlinux.org/
Steps to reproduce:
- (Re)boot the system
- Start bluetooth headset
- See it going into a connected/disconnected loop on the system side.