您好我正在尝试使用ibeacons
和raspberry
。现在我能够通过radialnetworks的脚本检测我的ibeacons
(在这里找到解决方案Can RaspberryPi with BLE Dongle detect iBeacons?)我下载了他们的图像(devian OS)等。但问题是在玩了几分钟的ibeacons之后,打开/关闭其中一些,添加更多,然后突然停止工作,我正在使用加密狗CSR 4.0和我买IOGEAR GBU521W6
,因为我认为可能是硬件,但发生了同样的事情,开始检测ibeacon并阻止它。
我收到错误Can't init device hci0. error
,然后收到set scan parameters failed file descriptor in bad state
。
有关它发生了什么的任何建议吗?
- 编辑 -
当您离开范围时(https://www.gimbal.com/gimbal-proximity-beacons)并且您返回范围,蓝牙崩溃时,会发生此错误。
答案 0 :(得分:4)
这是因为与设备通信的低级USB问题导致设备进入无法恢复状态。一旦设备进入此状态并且重置不起作用,您必须通过拔下USB插头重新插入USB设备并重新插入USB设备。
通过告诉USB驱动程序使用USB 1.0速度,您可以更少地发生这种情况。但是,这样做会降低网络速度,使一些USB 2.0键盘不再起作用。是否应该这样做取决于您的使用案例。
有关更改USB速度的说明,请参阅此处:http://www.raspberrypi.org/forums/viewtopic.php?t=34120
答案 1 :(得分:0)
似乎蓝牙已被软阻止并添加到rfkill列表中。执行rfkill list
。如果输出如下所示,则表明蓝牙已被阻止。
0: hci0: Bluetooth
Soft blocked: yes
Hard blocked: no
1: phy0: Wireless LAN
Soft blocked: no
Hard blocked: no
2: phy1: Wireless LAN
Soft blocked: no
Hard blocked: no
要取消阻止蓝牙,请执行
rfkill unblock bluetooth
这将解除对蓝牙的阻止。通过执行rfkill list
检查状态。输出应如下所示:
0: hci0: Bluetooth
Soft blocked: no
Hard blocked: no
1: phy0: Wireless LAN
Soft blocked: no
Hard blocked: no
2: phy1: Wireless LAN
Soft blocked: no
Hard blocked: no