蓝牙无法在Ubuntu 16.04中使用 Atheros适配器

我的笔记本电脑,MSI GS70 Stealth Pro,已经构建了一个Ubuntu似乎无法识别的蓝牙设备。

当我进入System Settings > Bluetooth它说No Bluetooth adapters found

从我在其他线程中看到的,我留下了一些希望有用的信息:

rfkill列表:

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

dmesg | grep蓝色:

 [ 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 

我该如何解决这个问题?

这个问题的存在是因为Atheros重新使用了芯片VID和PID。

请参阅此错误报告

作为一种解决方法,您可以修补btusb.c模块并将其从ath3k更改为罗马。

我已经构建了一个DKMS包来解决这个问题并将其上传到我的PPA。

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

安装此deb并重新启动。 这应该可以解决问题。

Ubuntu 16.04,内核版本4.4.0-116

我的设备是

 >> lspci -knn | grep bt -A2; lsusb [..] Bus 003 Device 008: ID 04ca:3011 Lite-On Technology Corp. [..] >> lspci | grep -i ath 07:00.0 Network controller: Qualcomm Atheros QCA6174 802.11ac Wireless Network Adapter (rev 20) 

我不得不做以下事情(将芯片组ID添加到Pilot6的btusb-driver-patch)以使用Atheros Combo-Card和蓝牙芯片组Lite-On在Acer Aspire V17 Nitro VN7-791G-72FC上运行我的蓝牙适配器:

 wget https://launchpad.net/~hanipouspilot/+archive/ubuntu/bluetooth/+files/btusb-lp1542743-dkms_0.1_all.deb mkdir tmp dpkg-deb -R btusb-lp1542743-dkms_0.1_all.deb tmp sudo nano tmp/usr/src/btusb-lp1542743-0.1/btusb.c 

 "static const struct usb_device_id blacklist_table[] = {" 

使用以下代码添加新行:

 { USB_DEVICE(0x04ca, 0x3011), .driver_info = BTUSB_QCA_ROME }, 

编译,安装和重启后:

 sudo dpkg-deb -b tmp btusb-lp1542743-dkms_0.1_all_modifiedAdd3011.deb sudo dpkg -i ./btusb-lp1542743-dkms_0.1_all_modifiedAdd3011.deb sudo reboot 

现在一切正常。 :-) 我很高兴。