如何解决无法初始化设备 hci0。错误?

问题描述 投票:0回答:3

嗨,我正在尝试与

ibeacons
raspberry
合作。现在我能够用 Radialnetworks 的脚本检测到我的
ibeacons
(在这里找到解决方案带有 BLE 加密狗的 RaspberryPi 可以检测 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)离开范围并返回范围时,蓝牙崩溃,就会发生此错误。

raspberry-pi ibeacon bluez
3个回答
4
投票

发生这种情况是由于与设备通信的低级 USB 问题导致设备处于无法恢复的不良状态。一旦设备进入此状态并且重置不起作用,您必须通过拔下并重新插入 USB 设备来重新启动该设备。

您可以通过告诉 USB 驱动程序使用 USB 1.0 速度来减少这种情况的发生。但是,这样做会降低网络速度并使某些 USB 2.0 键盘不再工作。您是否应该这样做取决于您的用例。

有关更改 USB 速度的说明,请参阅此处:http://www.raspberrypi.org/forums/viewtopic.php?t=34120


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

0
投票

我的蓝牙应用程序设置为服务。重置后: 须藤 hciconfig hci0 重置 并重新启动服务,它可以工作,但大约一天后它停止工作,并且我收到“无法初始化设备”错误。所以我给 root 用户添加了两个 cron 作业:

m h dom mon dow 命令

0 4 * * * hciconfig hci0 重置 5 4 * * * systemctl 重新启动 ruuvisensor.service 这会在每天凌晨 4 点重置并重新启动,到目前为止,蓝牙连接并未丢失。

© www.soinside.com 2019 - 2024. All rights reserved.