Ubuntu – Bluetooth not working in Ubuntu 16.04 with [0cf3:3004] Atheros adapter

atherosbluetoothdrivers

My laptop, an MSI GS70 Stealth Pro, has build a build in Bluetooth device that Ubuntu seems to not recognize.

When I go to System Settings > Bluetooth it says No Bluetooth adapters found.

From what I've seen in other threads, I leave here some hopefully helpful info:

rfkill list:

1: phy0: Wireless LAN
   Soft blocked: no
   Hard blocked: no

dmesg | grep Blue:

[    2.951161] Bluetooth: Core ver 2.21
[    2.951173] Bluetooth: HCI device and connection manager initialized
[    2.951176] Bluetooth: HCI socket layer initialized
[    2.951177] Bluetooth: L2CAP socket layer initialized
[    2.951181] Bluetooth: SCO socket layer initialized
[    2.959062] Bluetooth: HCI UART driver ver 2.3
[    2.959064] Bluetooth: HCI UART protocol H4 registered
[    2.959065] Bluetooth: HCI UART protocol BCSP registered
[    2.959066] Bluetooth: HCI UART protocol LL registered
[    2.959066] Bluetooth: HCI UART protocol ATH3K registered
[    2.959067] Bluetooth: HCI UART protocol Three-wire (H5) registered
[    2.959085] Bluetooth: HCI UART protocol Intel registered
[    2.959093] Bluetooth: HCI UART protocol BCM registered
[    2.959093] Bluetooth: HCI UART protocol QCA registered
[    3.931392] Bluetooth: BNEP (Ethernet Emulation) ver 1.3
[    3.931394] Bluetooth: BNEP filters: protocol multicast
[    3.931397] Bluetooth: BNEP socket layer initialized
[    4.100415] Bluetooth: Patch file not found ar3k/AthrBT_0x00000200.dfu
[    4.100417] Bluetooth: Loading patch file failed
[    9.725996] Bluetooth: RFCOMM TTY layer initialized
[    9.726003] Bluetooth: RFCOMM socket layer initialized
[    9.726006] Bluetooth: RFCOMM ver 1.11
[   48.509706] Bluetooth: HIDP (Human Interface Emulation) ver 1.2
[   48.509710] Bluetooth: HIDP socket layer initialized

lspci -knn | grep Net -A2; lsusb :

02:00.0 Network controller [0280]: Qualcomm Atheros QCA6174 802.11ac Wireless Network Adapter [168c:003e] (rev 20)
    Subsystem: Bigfoot Networks, Inc. Killer N1525 Wireless-AC [1a56:1525]
    Kernel driver in use: ath10k_pci
    Kernel modules: ath10k_pci
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 003 Device 005: ID 05e3:0660 Genesys Logic, Inc. USB 2.0 Hub
Bus 003 Device 004: ID 093a:2521 Pixart Imaging, Inc. Optical Mouse
Bus 003 Device 003: ID 05e3:0660 Genesys Logic, Inc. USB 2.0 Hub
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 003: ID 1770:ff00  
Bus 001 Device 002: ID 24ae:2003  
Bus 001 Device 004: ID 0cf3:3004 Atheros Communications, Inc. AR3012 Bluetooth 4.0
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

How do I fix this problem?

Best Answer

This problem exists because Atheros re-used the chip VID and PID.

See this bug report

As a workaround you can patch the btusb.c module and change it from ath3k to Rome.

I've built a DKMS package to fix this issue and uploaded it to my PPA.

https://launchpad.net/~hanipouspilot/+archive/ubuntu/bluetooth/+files/btusb-lp1542743-dkms_0.1_all.deb

Install this deb and reboot. This should fix the issue.

Related Question