1

I am having trouble making Bluetooth working on my Dell XPS 13. Under kernel 3.19 I managed to get it working by using the firmware from the Windows driver (see here).

For various reasons I had to upgrade to a 4.x kernel version. Now Bluetooth is not working anymore even with the previous workaround.

The Bluetooth card is a Broadcom 216F BT.


The output of lspci :

00:00.0 Host bridge: Intel Corporation Broadwell-U Host Bridge -OPI (rev 09)
[...]
00:04.0 Signal processing controller: Intel Corporation Broadwell-U Camarillo Device (rev 09)
[...]
02:00.0 Network controller: Broadcom Corporation BCM4352 802.11ac Wireless Network Adapter (rev 03)

The output of lsusb is

Bus 003 Device 002: ID 8087:8001 Intel Corp. 
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 005: ID 0c45:670c Microdia 
Bus 001 Device 004: ID 04f3:20d0 Elan Microelectronics Corp. 
Bus 001 Device 003: ID 0a5c:216f Broadcom Corp. 
Bus 001 Device 002: ID 062a:4102 Creative Labs 
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

The output of dmesg | egrep -i 'firm|blue' is

[2.253256] bluetooth hci0: Direct firmware load for brcm/BCM20702A1-0a5c-216f.hcd failed with error -2
[2.253259] Bluetooth: hci0: BCM: Patch brcm/BCM20702A1-0a5c-216f.hcd not found

EDIT 1 : After running :

sudo mv /lib/firmware/brcm/BCM20702A0-0a5c-216f.hcd /lib/firmware/brcm/BCM20702A1-0a5c-216f.hcd

Bluetooth seem broken and dmesg | egrep -i 'firm|blue' output :

[    4.257018] Bluetooth: hci0 command 0x0a0a tx timeout
[   12.259564] Bluetooth: hci0: BCM: Patch command 0a0a failed (-110)
[   14.265142] Bluetooth: hci0 command 0x1001 tx timeout
[   22.267585] Bluetooth: hci0: BCM: Reading local version info failed (-110)

Any idea or any solution to make Bluetooth work here ?

Thanks in advance.

For future references I have a Dell XPS 13 9353 (2015)

hg8
  • 13,462

1 Answers1

1

If you already installed the firmware according to the link in your question, just rename the file.

sudo mv /lib/firmware/brcm/BCM20702A0-0a5c-216f.hcd /lib/firmware/brcm/BCM20702A1-0a5c-216f.hcd

It looks like the new kernel module is looking for another file. But firmware is the same.

If you want to use older kernels too, run

sudo cp /lib/firmware/brcm/BCM20702A0-0a5c-216f.hcd /lib/firmware/brcm/BCM20702A1-0a5c-216f.hcd

instead. It will keep both files.

Pilot6
  • 90,100
  • 91
  • 213
  • 324
  • Thanks for your answer. I have renamed the firmware with your first command but now I do not have bluetooth at all... (kernel 4.1.6) – hg8 Aug 19 '15 at 17:15
  • What does it say in dmesg? And you need to power off and power on the comp. – Pilot6 Aug 19 '15 at 17:16
  • I have updated my question. I have powered off my computer (no reboot -turned off, turned on) – hg8 Aug 19 '15 at 17:22
  • That must be some regression in that kernel that should be reported to kernel maintainers. Why not use kernel 3.19 while it is being fixed? – Pilot6 Aug 19 '15 at 17:23