小米蓝牙设备
小米(米家)蓝牙设备都遵循蓝牙4.0BLE协议,能够接入ioBroker的蓝牙设备都是使用的BLE广播的方式。
支持设备列表
- 花花草草检测仪
- 米家温湿度检测仪
所需硬件
因为要通过BLE进行通信,所以运行ioBroker的机器首先得支持蓝牙4.0及以上的硬件。
我在N1上刷Armbian最新的版本(5.86),可以正常识别到板载蓝牙,测试可以使用。
同时我也用外部USB蓝牙适配器测试,同样也可以加入到ioBroker中。
安装流程
- 在插件商店安装插件(适配器)Bluetooth Low Engergy
因为插件(适配器)安装会执行gyp,所以安装时间会稍微长一点(数分钟)。
-
确认当前可用的蓝牙设备的设备号。
这里用需要执行两句命令行程序,可以选择ssh到机器上,或者直接安装wetty插件(适配器)在网页端执行命令。sudo apt-get install bluetooth bluez libbluetooth-dev libudev-dev libcap2-bin hciconfig -a
第一句命令是安装一些操作蓝牙设备的依赖程序。
第二句是查找当前机器上可用的蓝牙设备设备号,我的机器上显示如下hci2: Type: Primary Bus: USB BD Address: 00:19:86:00:09:B3 ACL MTU: 1021:8 SCO MTU: 64:1 UP RUNNING RX bytes:962 acl:0 sco:0 events:48 errors:0 TX bytes:2190 acl:0 sco:0 commands:48 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 Name: 'aml #3' Class: 0x000000 Service Classes: Unspecified Device Class: Miscellaneous, HCI Version: 4.0 (0x6) Revision: 0x1000 LMP Version: 4.0 (0x6) Subversion: 0x220e Manufacturer: Broadcom Corporation (15) hci1: Type: Primary Bus: SDIO BD Address: 00:00:00:00:00:00 ACL MTU: 0:0 SCO MTU: 0:0 DOWN RX bytes:0 acl:0 sco:0 events:0 errors:0 TX bytes:0 acl:0 sco:0 commands:0 errors:0 Features: 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 Packet type: DM1 DH1 HV1 Link policy: Link mode: SLAVE ACCEPT hci0: Type: Primary Bus: UART BD Address: AA:AA:AA:AA:AA:AA ACL MTU: 1021:8 SCO MTU: 64:1 UP RUNNING RX bytes:88887274 acl:0 sco:0 events:2777650 errors:0 TX bytes:3131 acl:0 sco:0 commands:115 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 Name: 'aml' Class: 0x000000 Service Classes: Unspecified Device Class: Miscellaneous, HCI Version: 4.1 (0x7) Revision: 0x0 LMP Version: 4.1 (0x7) Subversion: 0x6119 Manufacturer: Broadcom Corporation (15)
- hci2: 是外部USB蓝牙插件(适配器)的设备号。
- hci1: 无效设备。注意:如果你设备上只显示这个设备,说明你设备上还没有蓝牙设备。
- hci0: 是N1板载蓝牙。
所以我的机器可用的设备号是0和2.
-
配置BLE插件(适配器)
BLE插件(适配器)的配置需要配置之前找到的设备号,以及需要接入的设备的插件。
我以hci0
设备为例:
- 确认设备状态
- 首先确认driverState是PowerOn状态。
- 其次确认allowNewDevice是true打开的状态。
- 然后根据蓝牙设备发广播的周期不同,我们会陆陆续续收到设备的广播包。
欢迎补充设备支持列表
欢迎大家测试一下,看看家里面的蓝牙设备是不是都可以接进来。
如果有能够接入的新的设备,请留言告知。
如果有设备没能接进来,也麻烦说一下,我看看怎么远程抓包,争取接入进来。
有关在群晖docker的部署方式,请参考:【解决方案】蜗牛黑群使用3米绿联延迟线USB3.0+绿联蓝牙插件(适配器)不能使用
https://bbs.iobroker.cn/forum.ph … 1&extra=#pid510