Atheros 蓝牙无法在 Ubuntu 14.10 上运行

Atheros 蓝牙无法在 Ubuntu 14.10 上运行

固定的,看看启动板错误

我在 Ubuntu Gnome 14.10 x64 上遇到了一个非常奇怪的问题。我的内置 WiFi/蓝牙适配器被检测到,WiFi 工作正常。它的蓝牙功能也被检测到,所有 GUI 和命令行命令似乎可以正常工作(它们没有返回任何错误),但无法检测到其他蓝牙设备,其他设备也无法看到我的笔记本电脑。我怀疑是天线问题(症状相同),但在 Windows 8.1 上它运行正常。

我的笔记本电脑是 Acer Aspire E3-111-C1LY

root@pantheratigris:~# hcitool dev
Devices:
    hci0    00:71:CC:60:XX:XX              // a full MAC was displayed
root@pantheratigris:~# time hcitool scan   // with nearby Bluetooth visible Android phone
Scanning ...

real    0m10.248s
user    0m0.001s
sys     0m0.005s
matega@pantheratigris:~$ lsusb
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 003: ID 04f2:b47f Chicony Electronics Co., Ltd 
Bus 001 Device 004: ID 0489:e078 Foxconn / Hon Hai 
Bus 001 Device 002: ID 05e3:0608 Genesys Logic, Inc. USB-2.0 4-Port HUB
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
matega@pantheratigris:~$ lsusb -t
/:  Bus 02.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/1p, 5000M
/:  Bus 01.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/6p, 480M
    |__ Port 2: Dev 2, If 0, Class=Hub, Driver=hub/4p, 480M
        |__ Port 1: Dev 4, If 0, Class=Wireless, Driver=btusb, 12M
        |__ Port 1: Dev 4, If 1, Class=Wireless, Driver=btusb, 12M
    |__ Port 4: Dev 3, If 0, Class=Video, Driver=uvcvideo, 480M
    |__ Port 4: Dev 3, If 1, Class=Video, Driver=uvcvideo, 480M
matega@pantheratigris:~$ hciconfig --all
hci0:   Type: BR/EDR  Bus: USB
    BD Address: 00:71:CC:60:XX:XX  ACL MTU: 1022:8  SCO MTU: 183:5
    UP RUNNING PSCAN 
    RX bytes:1212 acl:0 sco:0 events:72 errors:0
    TX bytes:2050 acl:0 sco:0 commands:72 errors:0
    Features: 0xff 0xfe 0x0d 0xfe 0xd8 0x7f 0x7b 0x8f
    Packet type: DM1 DM3 DM5 DH1 DH3 DH5 HV1 HV2 HV3 
    Link policy: RSWITCH HOLD SNIFF 
    Link mode: SLAVE ACCEPT 
    Name: 'ubuntu-gnome-0'
    Class: 0x7c0100
    Service Classes: Rendering, Capturing, Object Transfer, Audio, Telephony
    Device Class: Computer, Uncategorized
    HCI Version: 4.0 (0x6)  Revision: 0x3101
    LMP Version: 4.0 (0x6)  Subversion: 0x1
    Manufacturer: Atheros Communications, Inc. (69)
matega@pantheratigris:~$ 

答案1

您能否发布结果lsusbhciconfig --all因为有些芯片组尚未得到正确支持

我已经修补了几个模块,这样你的蓝牙就可以在 14.10 和 3.16.0-28 64 位内核下工作了,希望uname -a它也能显示 x86_64

可以找到压缩的新模块https://www.dropbox.com/s/kufg12cf28eh36l/Ubuntu1410.zip?dl=0将它们提取到桌面然后在终端中sudo mv /lib/modules/3.16.0-28-generic/kernel/drivers/bluetooth/ath3k.ko /lib/modules/3.16.0-28-generic/kernel/drivers/bluetooth/ath3k.ko.bak

sudo modprobe -r btusb

sudo mv /lib/modules/3.16.0-28-generic/kernel/drivers/bluetooth/btusb.ko /lib/modules/3.16.0-28-generic/kernel/drivers/bluetooth/btusb.ko.bak
cd Desktop
cd Ubuntu1410
sudo cp btusb.ko /lib/modules/3.16.0-28-generic/kernel/drivers/bluetooth/btusb.ko
sudo cp ath3k.ko /lib/modules/3.13.0-39-generic/kernel/drivers/bluetooth/ath3k.ko
sudo apt-get install linux-firmware
sudo modprobe ath3k
sudo modprobe btusb

运气好的话,它会起作用,因为我没有看到在 14.10 中加载固件时出现 xhci 故障,就像在 14.04 中一样

新编辑 1/1/2015,使用修补的 ath3k.c 和 btusb.c 文件的不同方法编辑:下载此https://www.dropbox.com/s/ajxndivy4vwgapv/test.zip?dl=0并将其解压到 /home,这样你就会在主目录中有一个名为 test 的文件夹,然后在终端中

sudo apt-get install build-essential
cd test
cp /usr/src/linux-headers-$(uname -r)/Module.symvers Module.symvers
make all
sudo modprobe -r ath3k
sudo modprobe -r btusb
sudo mv /lib/modules/$(uname -r)/kernel/drivers/bluetooth/ath3k.ko /lib/modules/$(uname -r)/kernel/drivers/bluetooth/ath3k.ko.bak
sudo mv /lib/modules/$(uname -r)/kernel/drivers/bluetooth/btusb.ko /lib/modules/$(uname -r)/kernel/drivers/bluetooth/btusb.ko.bak
sudo cp ath3k.ko  /lib/modules/$(uname -r)/kernel/drivers/bluetooth/
sudo cp btusb.ko  /lib/modules/$(uname -r)/kernel/drivers/bluetooth/

然后重新启动。

答案2

尝试使用以下命令并再次安装蓝牙基因组,然后检查您是否能够连接到蓝牙设备,

sudo apt-get install bluetooth blueman bluez-hcidump bluewho python-bluez  bluez-tools

希望这可以帮助。

相关内容