我在树莓派上遇到了这个问题。
在我的python程序运行一段时间之后,似乎一个(或多个)蓝牙适配器将“锁定”并且hciconfig -a将输出: :连接超时(110)
root ~ # hciconfig -a
hci3: Type: BR/EDR Bus: USB
BD Address: 5C:F3:70:61:CA:D6 ACL MTU: 9000:8 SCO MTU: 64:1
UP RUNNING
RX bytes:5315773 acl:178107 sco:0 events:287995 errors:0
TX bytes:487424645 acl:527773 sco:0 commands:13454 errors:0
Features: 0xbf 0xfe 0xcf 0xfe 0xdb 0xff 0x7b 0x87
Packet type: DM1 DM3 DM5 DH1 DH3 DH5 HV1 HV2 HV3
Link policy: RSWITCH SNIFF
Link mode: SLAVE ACCEPT
Can't read local name on hci3: Connection timed out (110)
当使用多个适配器时,问题似乎更频繁地显现出来。
我正在研究的项目涉及使用多个(有时是单个)USB蓝牙适配器来将文件推送到手机。 执行以下操作的python程序:
1.自动检测适配器 - #hciconfig -a
2.配置它们 - #hciconfig CMD
3.查询设备 - #hcitool -i inq
4.Obex推送文件(可能与其他线程和其他线程同时) - bluez dbus
我系统中的一些信息:
root ~ # modinfo btusb
filename: /lib/modules/3.12.29-1-ARCH/kernel/drivers/bluetooth/btusb.ko.gz
license: GPL
version: 0.6
description: Generic Bluetooth USB driver ver 0.6
author: Marcel Holtmann <marcel@holtmann.org>
srcversion: 61D6539530170376DCAF49C
alias: usb:v*p*d*dcE0dsc01dp01ic*isc*ip*in*
...
depends: bluetooth
intree: Y
vermagic: 3.12.29-1-ARCH preempt mod_unload modversions ARMv6
...
root ~ # pacman -Q
...
bluez 5.24-1
bluez-utils 5.24-1
...
dbus 1.8.0-1
dbus-glib 0.102-1
...
libusb 1.0.18-1
...
linux-api-headers 3.13.2-1
linux-firmware 20140217.343e460-1
linux-raspberrypi 3.12.29-1
任何想法/建议?
是否有较新版本的btusb?我看了,但我大部分空手而归
注意:我有点像Linux新手(虽然我正在学习)= - )
...
PS:
这些论坛似乎表明类似的东西可能已被修复:
https://bbs.archlinux.org/viewtopic.php?id=183411
https://bbs.archlinux.org/viewtopic.php?id=183038
但引用的问题似乎与Atheros适配器芯片组有关,我正在使用Broadcom芯片组。另外,看来最新版本的linux我可以获得rpi是13.13标题和linux-raspberrypi 13.12