iobroker--设备接入--小米蓝牙设备接入ioBroker

小米蓝牙设备

小米(米家)蓝牙设备都遵循蓝牙4.0BLE协议,能够接入ioBroker的蓝牙设备都是使用的BLE广播的方式。

支持设备列表

所需硬件

因为要通过BLE进行通信,所以运行ioBroker的机器首先得支持蓝牙4.0及以上的硬件。
我在N1上刷Armbian最新的版本(5.86),可以正常识别到板载蓝牙,测试可以使用。
同时我也用外部USB蓝牙适配器测试,同样也可以加入到ioBroker中。

安装流程

  1. 在插件商店安装插件(适配器)Bluetooth Low Engergy
    因为插件(适配器)安装会执行gyp,所以安装时间会稍微长一点(数分钟)。

  1. 确认当前可用的蓝牙设备的设备号。
    这里用需要执行两句命令行程序,可以选择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板载蓝牙。
      所以我的机器可用的设备号是02.
  2. 配置BLE插件(适配器)
    BLE插件(适配器)的配置需要配置之前找到的设备号,以及需要接入的设备的插件。
    我以hci0设备为例:

  1. 确认设备状态
  • 首先确认driverState是PowerOn状态。
  • 其次确认allowNewDevice是true打开的状态。
  • 然后根据蓝牙设备发广播的周期不同,我们会陆陆续续收到设备的广播包。

欢迎补充设备支持列表

欢迎大家测试一下,看看家里面的蓝牙设备是不是都可以接进来。
如果有能够接入的新的设备,请留言告知。
如果有设备没能接进来,也麻烦说一下,我看看怎么远程抓包,争取接入进来。

有关在群晖docker的部署方式,请参考:【解决方案】蜗牛黑群使用3米绿联延迟线USB3.0+绿联蓝牙插件(适配器)不能使用
https://bbs.iobroker.cn/forum.ph … 1&extra=#pid510

【解决方案】蜗牛黑群使用3米绿联延迟线USB3.0+绿联蓝牙适配器不能使用
https://bbs.iobroker.cn/t/topic/764/1

:D:D:D 期待更多蓝牙适配

老妖哥 这个蓝牙是胜为的吗

没找到购买链接。。。。

大部分蓝牙4.0 USB适配器都行吧。

N1自带蓝牙可用,已接入米家电子温湿度计Pro。

米家新出的蓝牙温湿度计2,N1能蓝牙发现并且接入,但是读不出数据来。不知道有没有大神能解决 :joy

要抓蓝牙数据,然后更新iob的插件文件才行。

萝卜大神,没太明白你的意思。你是说要需要iob有配套插件才能实现?只用蓝牙适配器连接的话是没有用的是嘛?

又有东西玩 。支持小米手环这类的吗

没有试过.
如果你有设备可以试一试

可以加入小米的蓝牙mesh吗?

mesh蓝牙筒灯能用吗?

我前两天跟老妖讨论了这个问题,他在找好的工具,难度应该不高。难度在于老妖上班忙,没时间搞。得等他有空下来。

希望大佬搞一搞蓝牙的筒灯,我也发愁呢,不知道选哪个