Connect IoT - BLE驱动程序#
低功耗蓝牙(简称Bluetooth LE或BLE,原名智能蓝牙)是由蓝牙技术联盟(SIG)设计和销售的一种无线个人局域网技术,旨在面向医疗保健、健身、信标、安全和家庭娱乐行业中的创新应用提供。与经典蓝牙相比,低功耗蓝牙旨在大幅降低功耗和成本,同时保持类似的通信范围。
数据类型#
这些是受支持的特定数据类型:
| 名称 | 描述 |
|---|---|
| UInt8 | 无符号整数8位 |
| UInt16 | 无符号整数16位 |
| UInt32 | 无符号整数32位 |
| Int8 | 有符号整数8位 |
| Int16 | 有符号整数16位 |
| Int32 | 有符号整数32位 |
| 浮点型 | 浮点数 |
| 双精度 | 浮点双精度数 |
| 字符串 | ASCII 值(文本字符串) |
| 十六进制 | 十六进制格式的缓冲区值 |
Table: BLE特定数据类型
异常流程参数#
异常流程支持以下参数:
| 名称 | 类型 | 可能的值 | 默认值 | 描述 |
|---|---|---|---|---|
| 地址 | 字符串 | "" | BLE设备的Mac地址 | |
| ID | 字符串 | "" | BLE设备的ID | |
| name | 字符串 | "" | BLE设备的名称 | |
| pollInterval | 整数 | 2000 | 当没有可用的更改值通知时,变量轮询之间的时间。仅用于事件。(毫秒) | |
| bleMode | 枚举 | DirectConnection 侦听器 | DirectConnection | BLE通信模式 |
| byteOrder | 枚举 | BigEndian LittleEndian | BigEndian | 设备数据的字节顺序 |
| usbDeviceIndex | 整数 | 0 | BLE USB设备的索引 |
Table: BLE特定参数
Note
如果设置多个设备标识符(地址、ID、名称),则所有标识符都必须与设备属性相匹配。
扩展参数#
属性#
| 名称 | 类型 | 可能的值 | 默认值 | 描述 |
|---|---|---|---|---|
| byteOrder | 枚举 | 默认 BigEndian LittleEndian | 默认 | 设备数据的字节顺序。通过使用Default可使用EquipmentSetup任务中定义的相同设置 |
事件属性#
| 名称 | 类型 | 可能的值 | 默认值 | 描述 |
|---|---|---|---|---|
| isTrigger | 布尔值 | True | 当值更改时触发事件 |
备注/行为#
- 当事件具有多个属性带
isTrigger标志时:- 每次任何属性值更改时都会触发它。
- 此时将请求其他属性的值。
- 可能有多个触发器具有相同的设置值(因为它们未更改)。如果不希望出现这种行为,请将其分成多个事件,每个事件都有自己的触发器集。
- 如果事件没有带有isTrigger标志的属性,则永远不会触发该事件
要求#
Windows#
- 兼容的蓝牙4.0 USB适配器 ⧉
-
插入USB BT加密狗
- 从以下位置运行Zadig http://zadig.akeo.ie/ ⧉
- 按“选项”|“列出所有设备”
- 从下拉列表中选择设备(即CSR8510 A10)
- 按“更新驱动程序”
Ubuntu/Debian/Raspbian#
基于Fedora/其他RPM#
已知问题#
- 在Windows环境中运行时,由于Microsoft自身存在且尚未解决的一些限制和错误,无法使用Microsoft的BLE堆栈。要绕过此限制,通信驱动程序必须依赖于BLE适配器的原始USB访问(使用WinUSB)。
- 每个设备只允许对一个进程进行USB原始访问。这意味着每个BLE适配器只能控制一个外围设备。