You are not logged in.
Hi!
I'm having issues with setting up Bluetooth on my ThinkPad 10 20c3, which has integrated WiFi+BT Broadcom chip. Device shows up under rfkill, but bluetoothctl doesn't recognize it. In dmesg I see this:
[ 14.214807] Bluetooth: hci0: command 0x0c03 tx timeout
[ 22.108131] Bluetooth: hci0: BCM: Reset failed (-110)The interesting thing is it worked flawlessly, when running Arch Linux in live mode from USB: there I was able to install bluez, run bluetoothctl, and list devices (btw. this is why I choose Arch over Alpine, as in the latter one BT was not working in both live and standalone mode, giving me the same result as I am having now).
I'm honestly tired of this, and don't know how to deal with it. Tried following things:
* multiple reinstallation trials
* putting appropriate .hcd files under /lib/firmware/brcm folder
* even copying entire /lib/firmware from Arch Live to standalone's /lib/firmware didn't help
* disconnecting battery for 2 minutes, and reconnecting it again didn't help
* reloading/loading modules: btusb, btbcm, hci_uart, etc.
* restarting services
* adding btusb.enable_autosuspend=n to boot options
* installed some package from AUR, I don't recall name, but it was something like bt-broadcom-firmware
Important(?) note: live version is running through Ventoy, as for some reason I have i386 EFI on x86_64 processor - this is the only way to actually boot anything from USB.
I grabbed logs from both live and standalone versions of Arch:
LIVE:
root@archiso ~ # uname -a
Linux archiso 6.7.6-arch1-2 #1 SMP PREEMPT_DYNAMIC Thu, 29 Feb 2024 19:08:51 +0000 x86_64 GNU/Linux
root@archiso ~ # dmesg | grep -i blue
[ 38.780585] Bluetooth: Core ver 2.22
[ 38.780657] NET: Registered PF_BLUETOOTH protocol family
[ 38.780662] Bluetooth: HCI device and connection manager initialized
[ 38.780672] Bluetooth: HCI socket layer initialized
[ 38.780678] Bluetooth: L2CAP socket layer initialized
[ 38.780689] Bluetooth: SCO socket layer initialized
[ 39.231783] Bluetooth: HCI UART driver ver 2.3
[ 39.231795] Bluetooth: HCI UART protocol H4 registered
[ 39.231798] Bluetooth: HCI UART protocol BCSP registered
[ 39.232087] Bluetooth: HCI UART protocol LL registered
[ 39.232092] Bluetooth: HCI UART protocol ATH3K registered
[ 39.232224] Bluetooth: HCI UART protocol Three-wire (H5) registered
[ 39.232451] Bluetooth: HCI UART protocol Intel registered
[ 39.232816] Bluetooth: HCI UART protocol Broadcom registered
[ 39.232936] Bluetooth: HCI UART protocol QCA registered
[ 39.232940] Bluetooth: HCI UART protocol AG6XX registered
[ 39.233166] Bluetooth: HCI UART protocol Marvell registered
[ 39.658897] Bluetooth: hci0: BCM: chip id 90
[ 39.659385] Bluetooth: hci0: BCM: features 0x0f
[ 39.660461] Bluetooth: hci0: BCM4324B5
[ 39.660466] Bluetooth: hci0: BCM4324B5 (002.006.006) build 0000
[ 39.701187] Bluetooth: hci0: BCM: firmware Patch file not found, tried:
[ 39.703441] Bluetooth: hci0: BCM: 'brcm/BCM4324B5.hcd'
[ 39.705678] Bluetooth: hci0: BCM: 'brcm/BCM.hcd'
[ 396.692380] audit: type=1130 audit(1711009216.194:214): pid=1 uid=0 auid=4294967295 ses=4294967295 msg='unit=bluetooth comm="systemd" exe="/usr/lib/systemd/systemd" hostname=? addr=? terminal=? res=success'
[ 396.786954] Bluetooth: BNEP (Ethernet Emulation) ver 1.3
[ 396.786965] Bluetooth: BNEP filters: protocol multicast
[ 396.786987] Bluetooth: BNEP socket layer initialized
[ 396.789585] Bluetooth: MGMT ver 1.22
130 root@archiso ~ # lsmod | grep -i bt
btqca 28672 1 hci_uart
btrtl 32768 1 hci_uart
btintel 57344 1 hci_uart
btbcm 24576 1 hci_uart
bluetooth 1114112 27 btrtl,btqca,btintel,hci_uart,btbcm,bnep
root@archiso ~ # lsmod | grep -i blue
bluetooth 1114112 27 btrtl,btqca,btintel,hci_uart,btbcm,bnep
ecdh_generic 16384 2 bluetooth
crc16 12288 1 bluetooth
rfkill 40960 6 rfkill_gpio,bluetooth,cfg80211
root@archiso ~ # rfkill list
0: LNV4752:00: GPS
Soft blocked: no
Hard blocked: no
1: hci0: Bluetooth
Soft blocked: no
Hard blocked: no
2: phy0: Wireless LAN
Soft blocked: no
Hard blocked: no
root@archiso ~ # bluetoothctl list
Controller FD:F7:F3:84:AD:8D archiso [default]
root@archiso ~ # lspci
00:00.0 Host bridge: Intel Corporation Atom Processor Z36xxx/Z37xxx Series SoC Transaction Register (rev 0d)
00:02.0 VGA compatible controller: Intel Corporation Atom Processor Z36xxx/Z37xxx Series Graphics & Display (rev 0d)
00:14.0 USB controller: Intel Corporation Atom Processor Z36xxx/Z37xxx, Celeron N2000 Series USB xHCI (rev 0d)
00:1a.0 Encryption controller: Intel Corporation Atom Processor Z36xxx/Z37xxx Series Trusted Execution Engine (rev 0d)
00:1f.0 ISA bridge: Intel Corporation Atom Processor Z36xxx/Z37xxx Series Power Control Unit (rev 0d)
root@archiso ~ # lsusb
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 002: ID 1a40:0101 Terminus Technology Inc. Hub
Bus 001 Device 003: ID 0781:5583 SanDisk Corp. Ultra Fit
Bus 001 Device 004: ID 413c:2113 Dell Computer Corp. KB216 Wired Keyboard
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
root@archiso ~ # cat /proc/cmdline
BOOT_IMAGE=/arch/boot/x86_64/vmlinuz-linux archisobasedir=arch archisodevice=UUID=2024-03-01-15-06-37-00STANDALONE:
[root@HUPC HU]# uname -a
Linux HUPC 6.8.1-arch1-1 #1 SMP PREEMPT_DYNAMIC Sat, 16 Mar 2024 17:15:35 +0000 x86_64 GNU/Linux
[root@HUPC HU]# dmesg | grep -i blue
[ 11.448104] Bluetooth: Core ver 2.22
[ 11.449218] NET: Registered PF_BLUETOOTH protocol family
[ 11.449232] Bluetooth: HCI device and connection manager initialized
[ 11.449245] Bluetooth: HCI socket layer initialized
[ 11.449250] Bluetooth: L2CAP socket layer initialized
[ 11.449284] Bluetooth: SCO socket layer initialized
[ 11.764224] Bluetooth: HCI UART driver ver 2.3
[ 11.764238] Bluetooth: HCI UART protocol H4 registered
[ 11.764241] Bluetooth: HCI UART protocol BCSP registered
[ 11.764291] Bluetooth: HCI UART protocol LL registered
[ 11.764295] Bluetooth: HCI UART protocol ATH3K registered
[ 11.764319] Bluetooth: HCI UART protocol Three-wire (H5) registered
[ 11.764434] Bluetooth: HCI UART protocol Intel registered
[ 11.764579] Bluetooth: HCI UART protocol Broadcom registered
[ 11.764610] Bluetooth: HCI UART protocol QCA registered
[ 11.764613] Bluetooth: HCI UART protocol AG6XX registered
[ 11.764633] Bluetooth: HCI UART protocol Marvell registered
[ 12.637705] Bluetooth: BNEP (Ethernet Emulation) ver 1.3
[ 12.637716] Bluetooth: BNEP filters: protocol multicast
[ 12.637729] Bluetooth: BNEP socket layer initialized
[ 14.214807] Bluetooth: hci0: command 0x0c03 tx timeout
[ 22.108131] Bluetooth: hci0: BCM: Reset failed (-110)
[root@HUPC HU]# lsmod | grep -i bt
btqca 28672 1 hci_uart
btrtl 32768 1 hci_uart
btintel 57344 1 hci_uart
btbcm 24576 1 hci_uart
bluetooth 1114112 13 btrtl,btqca,btintel,hci_uart,btbcm,bnep
[root@HUPC HU]# lsmod | grep -i blue
bluetooth 1114112 13 btrtl,btqca,btintel,hci_uart,btbcm,bnep
ecdh_generic 16384 1 bluetooth
rfkill 40960 6 rfkill_gpio,bluetooth,cfg80211
crc16 12288 2 bluetooth,ext4
[root@HUPC HU]# rfkill list
0: LNV4752:00: GPS
Soft blocked: no
Hard blocked: no
1: hci0: Bluetooth
Soft blocked: no
Hard blocked: no
2: phy0: Wireless LAN
Soft blocked: no
Hard blocked: no
[root@HUPC HU]# bluetoothctl list
[root@HUPC HU]# lspci
00:00.0 Host bridge: Intel Corporation Atom Processor Z36xxx/Z37xxx Series SoC Transaction Register (rev 0d)
00:02.0 VGA compatible controller: Intel Corporation Atom Processor Z36xxx/Z37xxx Series Graphics & Display (rev 0d)
00:14.0 USB controller: Intel Corporation Atom Processor Z36xxx/Z37xxx, Celeron N2000 Series USB xHCI (rev 0d)
00:1a.0 Encryption controller: Intel Corporation Atom Processor Z36xxx/Z37xxx Series Trusted Execution Engine (rev 0d)
00:1f.0 ISA bridge: Intel Corporation Atom Processor Z36xxx/Z37xxx Series Power Control Unit (rev 0d)
[root@HUPC HU]# lsusb
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
[root@HUPC HU]# cat /proc/cmdline
BOOT_IMAGE=/boot/vmlinuz-linux root=UUID=54f0740f-f96f-4eba-819d-ef8ebe57ea9b rw loglevel=3 quiet btusb.enable_autosuspend=nLast edited by fibur (2024-03-22 09:08:30)
Offline
Are those the entire lspci/lsusb outputs???
Wild guess: the iso ships https://archlinux.org/packages/extra/x8 … oadcom-wl/ - have you installed that?
Online
Yup, it’s entire output of these commands. I guess my Bluetooth chip is not typical USB device but something communicating via UART.
After installing that package you mentioned, it didn’t help + WiFi stopped working
Offline
wl is blacklisting the bcrm modules and apparently they're the only ones driving the hardware.
Please post your complete system journal for the iso and your installed system:
sudo journalctl -b | curl -F 'file=@-' 0x0.stOnline
FYI I removed broadcom-wl to make wifi working again.
Logs for installed system: http://0x0.st/XrEq.txt
Logs for iso live: http://0x0.st/XrEm.txt
Offline
The differences might be that
a) the iso still has a 6.7 kernel (try the LTS kernel to see whether this is a6.8 regression)
b) the installed system boots faster™
For the latter and a potential race condition, try to
hciconfig hci0 down
modprobe -r hci_uart
modprobe btbcm # just in case, you can check lsmod
modprobe hci_uart
hciconfig hci0 upAnd see whether you're still getting the
Mar 21 19:59:35 localhost kernel: Bluetooth: hci0: command 0x0c03 tx timeout
Mar 21 19:59:43 localhost kernel: Bluetooth: hci0: BCM: Reset failed (-110)errors.
Online
Hm, that's interesting. Downgrading to Linux-lts (6.6) fixed the issue, which is strange, because when I tried with Alpine Linux of the same kernel version, I had the same result (I guess there're some differences in kernel build config)
Anyway, it still didn't allow me to scan anything, but I figured out I just needed to put BCM4324B5.hcd in /lib/firmware/brcm.
Thank you for help, I didn't suspect it would be so easy to fix ![]()
Offline
You want to keep an eye on 6.8 to see whether this gets fixed or raise a bug upstream, LTS won't stay at 6.6 forever.
I'd also not rule out a race condition (wrt the alpine situation) and try to reload the module on 6.8 and see whether chip then responds.
Online
Created an account to say I had the same issue with my Acer Aspire SW5-012 (exact same "0x0c03 tx timeout" output), which to my understanding also handles WiFi & Bluetooth via UART. Spent probably 10 hours straight trying to find some sort of lead to what any of it meant, but the LTS kernel seems to have fixed my issue as well, lol.
linux dmesg:
[root@flower syl]# uname -r
6.8.1-arch1-1
[root@flower syl]# dmesg | grep -i blue
[ 11.216079] Bluetooth: Core ver 2.22
[ 11.216129] NET: Registered PF_BLUETOOTH protocol family
[ 11.216134] Bluetooth: HCI device and connection manager initialized
[ 11.216143] Bluetooth: HCI socket layer initialized
[ 11.216151] Bluetooth: L2CAP socket layer initialized
[ 11.216165] Bluetooth: SCO socket layer initialized
[ 11.504035] Bluetooth: HCI UART driver ver 2.3
[ 11.504048] Bluetooth: HCI UART protocol H4 registered
[ 11.504052] Bluetooth: HCI UART protocol BCSP registered
[ 11.504111] Bluetooth: HCI UART protocol LL registered
[ 11.504116] Bluetooth: HCI UART protocol ATH3K registered
[ 11.504150] Bluetooth: HCI UART protocol Three-wire (H5) registered
[ 11.504265] Bluetooth: HCI UART protocol Intel registered
[ 11.504712] Bluetooth: HCI UART protocol Broadcom registered
[ 11.504748] Bluetooth: HCI UART protocol QCA registered
[ 11.504753] Bluetooth: HCI UART protocol AG6XX registered
[ 11.504783] Bluetooth: HCI UART protocol Marvell registered
[ 13.108406] Bluetooth: BNEP (Ethernet Emulation) ver 1.3
[ 13.108421] Bluetooth: BNEP filters: protocol multicast
[ 13.108435] Bluetooth: BNEP socket layer initialized
[ 13.801828] Bluetooth: hci0: command 0x0c03 tx timeout
[ 21.907703] Bluetooth: hci0: BCM: Reset failed (-110)linux-lts dmesg:
[root@flower syl]# uname -r
6.6.22-1-lts
[root@flower syl]# dmesg | grep -i blue
[ 11.220700] Bluetooth: Core ver 2.22
[ 11.220778] NET: Registered PF_BLUETOOTH protocol family
[ 11.220784] Bluetooth: HCI device and connection manager initialized
[ 11.220794] Bluetooth: HCI socket layer initialized
[ 11.220800] Bluetooth: L2CAP socket layer initialized
[ 11.220816] Bluetooth: SCO socket layer initialized
[ 11.430089] Bluetooth: HCI UART driver ver 2.3
[ 11.430104] Bluetooth: HCI UART protocol H4 registered
[ 11.430108] Bluetooth: HCI UART protocol BCSP registered
[ 11.430182] Bluetooth: HCI UART protocol LL registered
[ 11.430188] Bluetooth: HCI UART protocol ATH3K registered
[ 11.430500] Bluetooth: HCI UART protocol Three-wire (H5) registered
[ 11.430872] Bluetooth: HCI UART protocol Intel registered
[ 11.432463] Bluetooth: HCI UART protocol Broadcom registered
[ 11.432503] Bluetooth: HCI UART protocol QCA registered
[ 11.432509] Bluetooth: HCI UART protocol AG6XX registered
[ 11.432538] Bluetooth: HCI UART protocol Marvell registered
[ 11.919769] Bluetooth: hci0: BCM: chip id 84
[ 11.920346] Bluetooth: hci0: BCM: features 0x0f
[ 11.936834] Bluetooth: hci0: BCM4324B3
[ 11.936847] Bluetooth: hci0: BCM4324B3 (002.004.006) build 0000
[ 11.943124] Bluetooth: hci0: BCM: firmware Patch file not found, tried:
[ 11.943136] Bluetooth: hci0: BCM: 'brcm/BCM4324B3.hcd'
[ 11.943141] Bluetooth: hci0: BCM: 'brcm/BCM.hcd'
[ 13.381553] Bluetooth: BNEP (Ethernet Emulation) ver 1.3
[ 13.381564] Bluetooth: BNEP filters: protocol multicast
[ 13.381575] Bluetooth: BNEP socket layer initialized
[ 13.388026] Bluetooth: MGMT ver 1.22
[ 13.388353] Bluetooth: ISO socket layer initialized
[ 23.888601] Bluetooth: RFCOMM TTY layer initialized
[ 23.888622] Bluetooth: RFCOMM socket layer initialized
[ 23.888639] Bluetooth: RFCOMM ver 1.11Maybe there is some sort of regression? Not too familiar with how the kernel's structured, but it could have something to do with this specific SoC? Was gonna post my lspci output here as well, but it's equivalent to fibur's.
Offline
https://github.com/torvalds/linux/tree/ … /bluetooth hasn't been all that active so either it's a race condition, or a change in the kernel config or the only thing that looks remotely related would be https://github.com/torvalds/linux/commi … c01b369ac7 …
Online