uname -r
5.15.0-47-generic
[ 28.937010] Bluetooth: Core ver 2.22
[ 28.937137] Bluetooth: HCI device and connection manager initialized
[ 28.937141] Bluetooth: HCI socket layer initialized
[ 28.937143] Bluetooth: L2CAP socket layer initialized
[ 28.937147] Bluetooth: SCO socket layer initialized
[ 29.114249] Bluetooth: hci0: Bootloader revision 0.4 build 0 week 30 2018
[ 29.115253] Bluetooth: hci0: Device revision is 2
[ 29.115255] Bluetooth: hci0: Secure boot is enabled
[ 29.115256] Bluetooth: hci0: OTP lock is enabled
[ 29.115256] Bluetooth: hci0: API lock is enabled
[ 29.115257] Bluetooth: hci0: Debug lock is disabled
[ 29.115258] Bluetooth: hci0: Minimum firmware build 1 week 10 2014
[ 29.117680] Bluetooth: hci0: Found device firmware: intel/ibt-19-0-4.sfi
[ 30.630512] Bluetooth: BNEP (Ethernet Emulation) ver 1.3
[ 30.630515] Bluetooth: BNEP filters: protocol multicast
[ 30.630519] Bluetooth: BNEP socket layer initialized
[ 30.858356] Bluetooth: hci0: Waiting for firmware download to complete
[ 30.859200] Bluetooth: hci0: Firmware loaded in 1700701 usecs
[ 30.859223] Bluetooth: hci0: Waiting for device to boot
[ 30.873207] Bluetooth: hci0: Device booted in 13666 usecs
[ 30.873586] Bluetooth: hci0: Found Intel DDC parameters: intel/ibt-19-0-4.ddc
[ 30.876206] Bluetooth: hci0: Applying Intel DDC parameters completed
[ 30.879255] Bluetooth: hci0: Firmware revision 0.4 build 126 week 5 2022
[ 72.231170] Bluetooth: RFCOMM TTY layer initialized
[ 72.231175] Bluetooth: RFCOMM socket layer initialized
[ 72.231178] Bluetooth: RFCOMM ver 1.11
s -l /usr/lib/firmware/intel/ibt-20-*
-rw-r--r-- 1 root root 9 Aug 31 07:11 /usr/lib/firmware/intel/ibt-20-0-3.ddc
-rw-r--r-- 1 root root 798484 Aug 31 07:11 /usr/lib/firmware/intel/ibt-20-0-3.sfi
-rw-r--r-- 1 root root 9 Aug 31 07:11 /usr/lib/firmware/intel/ibt-20-1-3.ddc
-rw-r--r-- 1 root root 799860 Aug 31 07:11 /usr/lib/firmware/intel/ibt-20-1-3.sfi
-rw-r--r-- 1 root root 9 Aug 31 07:11 /usr/lib/firmware/intel/ibt-20-1-4.ddc
-rw-r--r-- 1 root root 798484 Aug 31 07:11 /usr/lib/firmware/intel/ibt-20-1-4.sfi
Possibly between kernel 5.17.7.arch1-1 -> 5.18.1.arch1-1
]]>I found following:
- If I am connected with Ethernet cable, there are no disconnects of bluetooth
- If I am connected with WiFi to 5.18 GHz network, there are no disconnects of bluetooth
If I connect to higher 5Ghz frequencies, then bluetooth start disconnecting every couple of minutes. 2.4Ghz is OK.
]]>Oct 29 23:19:01 arch bluetoothd[555]: src/profile.c:ext_io_disconnected() Unable to get io data for Hands-Free Voice gateway: getpeername: Transport endpoint is not connected (107)
Oct 29 23:19:03 arch bluetoothd[555]: /org/bluez/hci0/dev_94_DB_56_C0_08_CF/sep1/fd1: fd(29) ready
Oct 29 23:20:29 arch bluetoothd[555]: src/profile.c:ext_io_disconnected() Unable to get io data for Hands-Free Voice gateway: getpeername: Transport endpoint is not connected (107)
Oct 29 23:20:30 arch bluetoothd[555]: /org/bluez/hci0/dev_94_DB_56_C0_08_CF/sep1/fd2: fd(28) ready
But I've noticed that there's a new version of linux-firmware (20211027) on kernel.org and there are quite a few changes related to bluetooth on Intel cards. Maybe this is going to fix the issue.
]]>I'll try to also install this firmware updates on my Dell XPS 15 9550 (it has same wifi card Intel AX200 and experiences same reconnection issues).
]]>Sharing my setup:
* laptop: Alienware M15 R4
* network card: Intel AX200
* linux-firmware version: 20210919
* audio: pipewire. version 0.3.38-2~ubuntu21.04
* command "sudo dmesg | grep 'Bluetooth: hci' | grep 'Firmware revision'", outputs: "Bluetooth: hci0: Firmware revision 0.3 build 164 week 35 2021"
* OS: Ubuntu 21.04
* Kernel: 5.11.0-37-generic
I have been using the HSP/HFP audio codec for a while (with a horrible audio quality) and it seems to work (no disconnects for now).
So might it be an A2DP bug?
Other info:
Kernel: Linux host 5.10.67-1-lts #1 SMP Sat, 18 Sep 2021 18:21:20 +0000 x86_64 GNU/Linux
Bluetooth: hci0: Firmware revision 0.0 build 191 week 21 2021
Bus 003 Device 002: ID 8087:0029 Intel Corp. AX200 Bluetooth
Seems I was running quite an old build the whole time, so thank you for this hint.
]]>After powering off and booting I can see that firmware is loaded:
dmesg | grep -i bluetooth:
[ 14.980983] Bluetooth: Core ver 2.22
[ 14.981007] Bluetooth: HCI device and connection manager initialized
[ 14.981010] Bluetooth: HCI socket layer initialized
[ 14.981012] Bluetooth: L2CAP socket layer initialized
[ 14.981015] Bluetooth: SCO socket layer initialized
[ 15.333279] Bluetooth: hci0: Bootloader revision 0.4 build 0 week 30 2018
[ 15.334281] Bluetooth: hci0: Device revision is 2
[ 15.334283] Bluetooth: hci0: Secure boot is enabled
[ 15.334284] Bluetooth: hci0: OTP lock is enabled
[ 15.334284] Bluetooth: hci0: API lock is enabled
[ 15.334285] Bluetooth: hci0: Debug lock is disabled
[ 15.334286] Bluetooth: hci0: Minimum firmware build 1 week 10 2014
[ 15.336868] Bluetooth: hci0: Found device firmware: intel/ibt-19-0-4.sfi
[ 17.079353] Bluetooth: hci0: Waiting for firmware download to complete
[ 17.080290] Bluetooth: hci0: Firmware loaded in 1710254 usecs
[ 17.080300] Bluetooth: hci0: Waiting for device to boot
[ 17.095338] Bluetooth: hci0: Device booted in 14694 usecs
[ 17.104700] Bluetooth: hci0: Found Intel DDC parameters: intel/ibt-19-0-4.ddc
[ 17.106391] Bluetooth: hci0: Applying Intel DDC parameters completed
[ 17.109370] Bluetooth: hci0: Firmware revision 0.0 build 118 week 15 2021
[ 17.169305] Bluetooth: hci0: MSFT filter_enable is already on
[ 17.427181] Bluetooth: BNEP (Ethernet Emulation) ver 1.3
[ 17.427183] Bluetooth: BNEP filters: protocol multicast
[ 17.427186] Bluetooth: BNEP socket layer initialized
[ 24.251601] Bluetooth: RFCOMM TTY layer initialized
[ 24.251608] Bluetooth: RFCOMM socket layer initialized
[ 24.251612] Bluetooth: RFCOMM ver 1.11
[ 25.416319] Bluetooth: hci0: MSFT filter_enable is already on
Resets are visible as:
[ 1063.106465] Bluetooth: hci0: Hardware error 0x0a
[ 1063.118494] Bluetooth: hci0: Retrieving Intel exception info failed (-16)
[ 1063.233364] Bluetooth: hci0: MSFT filter_enable is already on
Interestingly, resets happens only if I'm connected to 2.4GHz Wi-Fi. In case of 5GHz Wi-Fi connection, bluetooth headphones works fine.
]]>My system:
Bus 003 Device 008: ID 8087:0026 Intel Corp. (AX 201?)
Sennheiser Momentum 2 headset
core/linux-firmware 20210511.7685cf4-1
Linux anonymous 5.12.12-arch1-1 #1 SMP PREEMPT Fri, 18 Jun 2021 21:59:22 +0000 x86_64 GNU/Linux
aur/bluez-git 1:5.58.r80.gd7c2a4cee-1 (+39 0.00) (Installed: 1:5.59.r10.g864d03727-1)
extra/pulseaudio 14.2-3
[ 0.000000] microcode: microcode updated early to revision 0x88, date = 2021-03-31
[ 0.115607] ACPI: Core revision 20210105
[ 0.650478] microcode: sig=0x806c1, pf=0x80, revision=0x88
[ 2.813984] Bluetooth: hci0: Bootloader revision 0.4 build 0 week 30 2018
[ 2.814992] Bluetooth: hci0: Device revision is 2
[ 4.507979] Bluetooth: hci0: Firmware revision 0.0 build 118 week 15 2021
when disconnect happens, I could see such messages in dmesg
[ 2047.226573] Bluetooth: hci0: Hardware error 0x0a
[ 2047.238063] Bluetooth: hci0: Retrieving Intel exception info failed (-16)
[ 2047.362971] Bluetooth: hci0: MSFT filter_enable is already on
[ 2053.754291] input: MOMENTUM TW 2 (AVRCP) as /devices/virtual/input/input47
Any ideas?
]]>[ 7.669588] Bluetooth: Core ver 2.22
[ 7.669617] Bluetooth: HCI device and connection manager initialized
[ 7.669620] Bluetooth: HCI socket layer initialized
[ 7.669622] Bluetooth: L2CAP socket layer initialized
[ 7.669627] Bluetooth: SCO socket layer initialized
[ 7.850054] usbcore: registered new interface driver btusb
[ 7.850535] Bluetooth: hci0: Bootloader revision 0.1 build 42 week 52 2015
[ 7.851558] Bluetooth: hci0: Device revision is 2
[ 7.851560] Bluetooth: hci0: Secure boot is enabled
[ 7.851561] Bluetooth: hci0: OTP lock is enabled
[ 7.851562] Bluetooth: hci0: API lock is enabled
[ 7.851563] Bluetooth: hci0: Debug lock is disabled
[ 7.851563] Bluetooth: hci0: Minimum firmware build 1 week 10 2014
[ 7.854151] Bluetooth: hci0: Found device firmware: intel/ibt-17-16-1.sfi
[ 7.912781] Bluetooth: BNEP (Ethernet Emulation) ver 1.3
[ 7.912784] Bluetooth: BNEP filters: protocol multicast
[ 7.912788] Bluetooth: BNEP socket layer initialized
[ 9.382521] Bluetooth: hci0: Waiting for firmware download to complete
[ 9.383564] Bluetooth: hci0: Firmware loaded in 1497570 usecs
[ 9.383633] Bluetooth: hci0: Waiting for device to boot
[ 9.397501] Bluetooth: hci0: Device booted in 13607 usecs
[ 9.397549] Bluetooth: hci0: Found Intel DDC parameters: intel/ibt-17-16-1.ddc
[ 9.399638] Bluetooth: hci0: Applying Intel DDC parameters completed
[ 9.461661] Bluetooth: hci0: MSFT filter_enable is already on
it's strange in
/usr/lib/firmware/intel/
, I have versions 11 through 20 of the firmware, how come it loads 17?
Should I just try and delete the other versions?
]]>