智能蓝牙灯描述
SMART BLUETOOTH LE LIGHT PROFILE
版本历史
版本 | 时间 | 作者 | 描述 |
---|---|---|---|
1.0.0 | 20230210 | 胡伟 | 初始化文档 |
1.1.0 | 20230221 | 胡伟 | 增加DFU功能 |
1.2.0 | 20230312 | 胡伟 | 增加摔倒报警定义 |
1.3.0 | 20230602 | 胡伟 | 增加灯光颜色定义,完善mode定义 |
1.3.1 | 20230714 | 胡伟 | 完善文档定义 |
1.3.2 | 20230726 | 胡伟 | 修改灯类型定义 |
1.4.0 | 20240206 | 胡伟 | 完善尾灯命令定义 |
1.4.1 | 20240313 | 胡伟 | 增加Light Functions |
1.4.2 | 20240318 | 胡伟 | 增加时序图,调整命令格式 |
1.5.0 | 20240416 | 胡伟 | 调整命令格式 |
1.5.1 | 20240529 | 毛峰 | Light Mode Status 增加充电中/充电完成 |
1.5.2 | 20240531 | 毛峰 | 修改自动休眠时间最小值为30 |
作者
姓名 | 邮箱 | 公司 |
---|---|---|
胡伟 | wei.hu@bi-ci.com | 上海大不自多信息科技有限公司 |
版权告知
本文档版权属于上海大不自多信息科技有限公司。
1 介绍
Bluetooth Light Profile用于通过Bluetooth Light Service服务从蓝牙灯读取数据和控制灯。
1.1 描述依赖
基于蓝牙Generic Attribute Profile (GATT) 定义。
1.2 蓝牙规范和兼容性要求
本规范要求蓝牙版本4.0以及以上,支持低功耗蓝牙(BLE)。
1.3 专业术语
1. Bluetooth Light Device:蓝牙灯设备,后面简称BL Device
2. Bluetooth Light Profile:蓝牙灯配置,简称BL Profile
3. Bluetooth Light Service:蓝牙灯服务,蓝牙层服务,简称BLS
4. Device Information Service:蓝牙标准设备信息服务,简称DIS
5. Battery Service:蓝牙标准电池服务,简称BS
6. Radar Service:简称RS
1.4 UUID定义
服务或者特征 | UUID |
---|---|
Light Service | 0xADB425D4-B1C6-11ED-AFA1-0242AC120002 |
Light Features | 0x8CE5DD01-0A4D-11E9-AB14-D663BD873D93 |
Light Machine Status | 0x8CE5DD02-0A4D-11E9-AB14-D663BD873D93 |
Light Control Point | 0x8CE5DD03-0A4D-11E9-AB14-D663BD873D93 |
Light Network | 0x8CE5DD04-0A4D-11E9-AB14-D663BD873D93 |
Radar Service | 0x6A4E3200-667B-11E3-949A-0800200C9A66 |
Radar Measurement | 0x6A4E3203-667B-11E3-949A-0800200C9A66 |
Radar Control Point | 0x6A4E3201-667B-11E3-949A-0800200C9A66 |
表1
2 配置
2.1 规则
本规范定义了4个角色:BL Device,Collector, BL Broadcaster(LE)和BL Observer(LE)。
BL Device 灯设备
Collector(APP or 码表):用户接受设备信息
BL Broadcaster(LE) 组网广播
BL Observer(LE)组网监听
2.2 服务关系
图 2-1
3 Bluetooth Light设备要求
BL设备必须包含且仅包含一个Bluetooth Light Service (简称BLS)
BL设备必须包含标准蓝牙的Device Information Service(简称DIS)
BL设备必须包含标准蓝牙的Battery Service (简称BS)
BL设备可选包含Radar Service (简称RS)
3.1 Bluetooth Light Service要求
3.1.1 低功耗传输要求
本节中描述Bluetooth Light设备定义的Bluetooth Light服务必须通过低功耗蓝牙传输(Low Energy)。
3.1.1.1 服务UUIDs 广播
Bluetooth Light设备广播时,必须在广播信息中带有Bluetooth Light Service的uuid信息,以增强用户使用体验,方便用户在发现时识别设备类型。
3.1.1.2 设备名称广播
为了增强用户体验,设备名称必须在广播时提供。
3.2 广播服务数据
本节定义了BL设备的广播信息内容,允许客户端通过广播信息确定设备类型。自定义广播数据如下表:
广播数据字段 | 类型 | 大小 | 要求 |
---|---|---|---|
Service Data AD Type | UINT8 | 1 | M |
BLS UUID(short) | UINT16 | 2 | M |
Flags | UINT8 | 1 | M |
BL Type | UINT8 | 1 | M |
表 2
在广播信息中提供蓝牙标准的灯具设备16bits Appearance Value=0x0580:
3.2.1 Flags AD字段
Bit | 定义 | 值 |
---|---|---|
0 | BL 设备可用状态 | 0:false1.true |
1-7 | 保留 | 0 |
表 3
3.2.2 Bluetooth Light Type AD字段
UInt8,1字节表示
Value | Meaning |
---|---|
0 | Reserved |
1 | Front light(车 前灯) |
2 | Tail Light |
3 | Head light(头灯) |
4 | Reserved |
5 | Reserved |
6 | Reserved |
7 | Reserved |
表 4 当前设备类型
3.2 字节顺序Byte Ordering
本文档中当特征值或者描述值有多个字节组成时,定义如下:
LSB | Least Significant Bit(最低有效位) |
---|---|
LSO | Least Significant Octet(最低有效字节) |
MSB | Most Significant Bit(最高有效位) |
MSO | Most Significant Octet(最高有效字节) |
表 5
3.3 DIS要求
参考蓝牙官方标准协议,DIS服务UUID为0x180A,本设备需要的特征服务表定义如下:
特征 | UUID | 支持 | 描述 |
---|---|---|---|
Manufacturer Name String | 0x2A29 | M | 设备制造商的名称,写设备制造商为外界所熟识的名称 |
Model Number String | 0x2A24 | M | 由设备制造商定义,建议写为某个产品的型号 |
Serial Number String | 0x2A25 | M | 由制造商定义的产品编号,为每个产品赋一唯一的编号,可以按实际应用定义自己产品SN的格式。 |
Hardware Revision | 0x2A27 | M | 产品的硬件编号,建议使用三位数以点相隔,分别表示主版本号,副版本号,发行编号 |
Firmware Revision | 0x2A26 | M | 固件软件版本号,建议使用三位数以点相隔,分别表示主版本号,副版本号,发行编号 |
Software Revision | 0x2A27 | O | 应用软件版本号,建议使用三位数以点相隔,分别表示主版本号,副版本号,发行编号(偶数发行,奇数调试) |
System ID | 0x2A23 | O | 包含OUI( Oranizationally Unique Identifier)和一个由制造商为该产品编排的唯一编号 |
PnP ID | 0x2A50 | O | 包含由国标组织颁给制造商的编号,制造商定义的产品ID,由制造商定义的产品版本信息 |
表 6
3.4 BS要求
参考蓝牙官方标准协议,BS服务UUID为0x180F,本设备需要的特征服务表定义如下:
特征 | UUID | 支持 | 描述 |
---|---|---|---|
Battery Level | 0x2A19 | M | 电池电量 0~100 |
Battery Level Status | 0x2BED | O | 电池电量状态定义,包括是否充电中 |
表 7
3.5 RS 要求
Radar 服务为可选服务,如果本服务存在表示该设备支持雷达功能。
4 服务和特性
BLS 是灯设备的主要属性和功能,设备支持的服务和特征如下表:
Profile需求 | 章节 | 支持 |
---|---|---|
Service 发现 | 4.1 | 必需 |
BLS 服务发现 | 4.1 | 必需 |
DIS 服务发现 | 4.1 | 必需 |
BS 服务发现 | 4.1 | 必需 |
RD 服务发现 | 4.1 | 可选 |
特性发现 | 4.2 | 必需 |
BLS 服务特征发现 | 4.2.1 | 必需 |
DIS 服务特征发现 | 4.2.2 | 必需 |
BS 服务特征发现 | 4.2.3 | 必需 |
RD 服务发现 | 4.6 | 可选 |
表 8
4.1 服务发现
使用低功耗蓝牙传输时,Collector应该在遍历发现主服务,并比对出相应的uuid的服务。
Bluetooth Light Service UUID:见表1-1
Radar Service uuid:见表1-1
4.2 特征发现
4.2.1 Bluetooth Light 特征发现
Bluetooth Light Characteristics包含以下特性
Characteristics | 支持 | 属性 | 描述 |
---|---|---|---|
Bluetooth Light Feature | M | Read | 灯支持的特性 |
Bluetooth Light Machine Status | M | Read, Notify | 当前灯的状态,支持读和通知模式 |
Bluetooth Light Control Point | O | Write, Indicate | 控制和设置灯的状态,支持写和写响应 |
Bluetooth Light Network | O | Write, Indicate | 配置灯的组网,暂不实现 |
表 9
4.2.2 DIS特征发现
参考蓝牙官方标准协议
4.2.3 BS特征发现
参考蓝牙官方标准协议
自定义 Battery Level Status如下表:
Value | 描述 |
---|---|
0(0x00) | Reserved |
1(0x01) | Battery Status = New/Full |
2(0x02) | Battery Status = Good |
3(0x03) | Battery Status = Ok |
4(0x04) | Battery Status = Low |
5(0x05) | Battery Status = Critical |
6(0x06) | Battery Status = Charging |
表 10
4.3 Bluetooth Light Features特征
特征UUID:0x8ce5dd01-0a4d-11e9-ab14-d663bd873d93
Bluetooth Light Feature特征用于描述本设备支持的特性。定义结构如下:
Feature | Light Type | Light Mode | Beam | Focus | Intensity | Color | Basic Functions | Reserved |
---|---|---|---|---|---|---|---|---|
字段类型 | UINT16 | UINT32 | UINT8 | UINT8 | UINT8 | UINT8 | UINT32 | |
大小 | 2 octets | 4 octets | 1 octet | 1 octet | 1 octet | 1 octet | 4 octets | 6 octets |
字节顺序 | LSO...MSO | LSO...MSO | LSO...MSO | |||||
单位 | None | None | None | % | % | None |
表 11
4.3.1 灯类型特性支持(Light Type Feature)定义
当Light Type Feature 字段中的某个位设置为 1 (True) 时,服务支持关联的功能。 如果服务不支持相关功能,则相关功能位应设置为 0(false),设备Type支持配置表:
Bit | 定义 | 值 |
---|---|---|
0 | Reserved | 0 |
1 | Front light 车前灯 | 0 - Not Support 1 - Support |
2 | Tail light 车尾灯 | 0 - Not Support 1 - Support |
3 | Head light 头灯 | 0 - Not Support 1 - Support |
4 ~ 15 | Reserved | 0 |
表 12
4.3.2 灯模式特性支持(Light Mode Feature)定义
当Light Mode Feature 字段中的某个位设置为 1 (True) 时,服务支持关联的功能。 如果服务不支持相关功能,则相关功能位应设置为 0(false),设备支持模式表如下:
Bit | 描述 | 值 |
---|---|---|
0 | 关闭 Light off | 0 - Not Support 1 - Support |
1 | 81-100% 强度intensity | 0 - Not Support 1 - Support |
2 | 61-80% 强度intensity | 0 - Not Support 1 - Support |
3 | 41-60% 强度intensity | 0 - Not Support 1 - Support |
4 | 21-40% 强度intensity | 0 - Not Support 1 - Support |
5 | 0-20% 强度intensity | 0 - Not Support 1 - Support |
6 | 慢闪烁 Slow flash | 0 - Not Support 1 - Support |
7 | 快闪烁 Fast flash | 0 - Not Support 1 - Support |
8 | 随机闪烁 Random flash | 0 - Not Support 1 - Support |
9 | 自动 Auto | 0 - Not Support 1 - Support |
10 | 左转自动结束Turn signal left(self cancelling) | 0 - Not Support 1 - Support |
11 | 左转中Turn signal left(ongoing) | 0 - Not Support 1 - Support |
12 | 右转自动结束Turn signal right(self cancelling) | 0 - Not Support 1 - Support |
13 | 右转中Turn signal right(ongoing) | 0 - Not Support 1 - Support |
14 | 警示灯(双闪)Hazard lights | 0 - Not Support 1 - Support |
15 | Light ON 常亮 | 0 - Not Support 1 - Support |
16 | 摔倒检测 Fall Detection | 0 - Not Support 1 - Support |
17 | SOS Flash | 0 - Not Support 1 - Support |
18 | Flash 3Hz | 0 - Not Support 1 - Support |
19 | Warning Flash | 0 - Not Support 1 - Support |
20 | Fall Warning Flash, 摔倒闪烁和声音提醒 | 0 - Not Support 1 - Support |
21 | Dynamic Flash 动态闪烁 | 0 - Not Support 1 - Support |
22 | Dynamic Color 动态颜色渐变 | 0 - Not Support 1 - Support |
23 24 | undefined | (Reserved for charge state) |
25 | Reserved | 0 |
26 | Reserved | 0 |
27 | Reserved | 0 |
28 | Reserved | 0 |
29 | Reserved | 0 |
30 | Reserved | 0 |
31 | Reserved | 0 |
表 13
4.3.3 灯光支持特性Light Beam Feature定义
当Light Beam Feature 字段中的某个位设置为 1 (True) 时,服务支持关联的功能。 如果服务不支持相关功能,则相关功能位应设置为 0(false),设备支持模式表如下:
Bits | 描述 | 值 |
---|---|---|
0 | Reserved | 0 |
1 | Beam远近光 | 0 不支持 1 支持 |
2~7 | 支持的模式的数量值 | 0 不支持灯光模式1~32 支持的灯模式数量 |
表 14
4.3.4 灯光聚焦特性 Beam Focus Feature定义
1Byte,支持调整的最大光束焦点的百分比,值范围0~100,如果不支持填写0xFF
4.3.5 灯光强度特性Light Intensity Feature定义
1Byte,支持调整的最大强度百分比,值范围0~100,不支持:0xFF。
4.3.6 灯光颜色特性Light Color Feature定义
1Byte,灯光支持的颜色
value | 描述 |
---|---|
0 | 单色 |
1 | 8色 |
2 | 16色 |
3 | 256色 |
4 | 65535色 |
5 | 1600W色 |
6 | 1600W色+Alpha |
7 | 保留 |
表 15
4.3.7 灯光功能支持定义 Light Functions 支持
32bit
Bit | 描述 | 值 |
---|---|---|
0 | 自动休眠 | 0 - Not Support 1 - Support |
1 | 震动唤醒 | 0 - Not Support 1 - Support |
2 | 休眠时间设置 | 0 - Not Support 1 - Support |
3 | 刹车检测 | 0 - Not Support 1 - Support |
4 | 刹车触发亮度 | 0 - Not Support 1 - Support |
5 | 光感检测 | 0 - Not Support 1 - Support |
6 | 导航支持 | 0 - Not Support 1 - Support |
7 | 动画支持 (是否支持动画展示) | 0 - Not Support 1 - Support |
8 | 团队动画支持 | 0 - Not Support 1 - Support |
9 | 运动数据联动支持 | 0 - Not Support 1 - Support |
10 | 遥控器支持 | 0 - Not Support 1 - Support |
11-31 | Reserved | 0 |
表 16
4.4 Bluetooth Light Machine Status特征
Bluetooth Light Machine Status特征用于描述本设备目前的设备状态。特征UUID:0x8ce5dd02-0a4d-11e9-ab14-d663bd873d93,定义结构如下:
Byte | 描述 | 大小 | 默认值 | 单位 |
---|---|---|---|---|
0 | Flags | 1 octet | ||
* | Light index | 1 octet | 0 | |
* | Light type | 1 octet | ||
* | Light Mode Status | 1 octet | ||
* | Light Beam Mode Status | 1 octet | ||
* | Light Beam Focus | 1 octet | 1% | |
* | Light Intensity | 1 octet | 1% | |
* | Light Functions | N octets |
表 17
各个数据项位置根据以下flag值定制是否要展示
Flags field 定义
Flag bit | Value = 0 | Value = 1 |
---|---|---|
0 | Light index field not present 不展示 | Light index field present 展示 |
1 | Light type field not present 不展示 | Light type field present 展示 |
2 | Light mode field not present 不展示 | Light mode field present 展示 |
3 | Light Beam mode field not present 不展示 | Light Beam mode field present 展示 |
4 | Light Beam field not present 不展示 | Light Beam field present 展示 |
5 | Light Intensity field not present 不展示 | Light Intensity field present 展示 |
6 | Light Functions field not present 不展示 | Light Functions field present 展示 |
表 18
Light Functions 数据结构定义, Light Function Status data size不定长
Function type 定义如下:
key值 | Title | 定义 | Data Type | Data size |
---|---|---|---|---|
0x10 | AutoSleep | 自动休眠 | Bool | 1 octet |
0x11 | AutoWake | 自动唤醒 | Bool | 1 octet |
0x12 | AutoSleepTime | 自动休眠时间 | UINT16 | 2 octets |
0x13 | Brake | 刹车灯开关 | Bool | 1 octet |
0x14 | BrakeIntensity | 刹车灯亮度 | UINT8 | 1 octet |
0x15 | AmbientLight | 光感开关 | Bool | 1 octet |
0x16 | TeamAnimation | 团队动画开关 | Bool | 1 octet |
0x17 | Navigation | 导航开关 | Bool | 1 octet |
0x19 | AnimationID | 当前动画id | UINT32 | 4 octets |
0x1A | TeamAnimationID | 团队动画id | UINT32 | 4 octets |
表 19
functions 数据在 设备状态变化时通知,蓝牙连接成功后,全量更新一次
4.4.1 Light index
灯的索引值,默认0
4.4.2 Light type
灯的类型参考表3-4
4.4.3 Light mode 灯模式当前状态
1字节表示,每个已链接灯模式状态描述如下表:
值 | 定义 |
---|---|
0 | 灯光关闭 |
1 | 81-100% 强度intensity |
2 | 61-80% 强度intensity |
3 | 41-60% 强度intensity |
4 | 21-40% 强度intensity |
5 | 0-20% 强度intensity |
6 | 慢闪烁 Slow flash |
7 | 快闪烁 Fast flash |
8 | 随机闪烁 Random flash |
9 | 自动 Auto |
10 | 左转结束Turn signal left(self cancelling) |
11 | 左转中Turn signal left(ongoing) |
12 | 右转结束Turn signal right(self cancelling) |
13 | 右转中Turn signal right(ongoing) |
14 | 警示灯(双闪)Hazard lights (both left and right indicators flashing continuously) |
15 | Light ON 常亮 |
16 | 摔倒检测 Fall Detection |
17 | SOS Flash |
18 | Flash 3Hz |
19 | Warning Flash |
20 | Fall Warning Flash, 摔倒闪烁和声音提醒 |
21 | Dynamic Flash 动态闪烁 |
22 | Dynamic Color 动态颜色渐变 |
23 | Charging 充电中 |
24 | Charge done 充电完成 |
25+ |
表 20
4.4.4 Light Beam Mode
值 | 定义 |
---|---|
0 | Low Beam(Normal) |
1 | High Beam |
2~255 | Reserved |
表 21
4.4.5 Light Beam Focus 当前值
1Byte,当前光束焦点的百分比,值范围0~100,如果不支持填写0xFF
4.4.6 Light Intensity 当前值
1Byte,当前光强度百分比,值范围0~100,不支持:0xFF。
4.5 Bluetooth Light Control Point 特征
特征UUID:0x8ce5dd03-0a4d-11e9-ab14-d663bd873d93,在Bluetooth Light Control Point 特征通道中,向本通道写入命令,命令的格式定义如下表:
Op Code | Parameter | |
---|---|---|
Order | LSO...MSO | |
Type | UINT8 | Variable |
Size | 1 octet | 0~18 octets |
表 24
4.5.1 Operate Code 操作定义
通用控制命令操作符号表,用于设备的基础功能控制和响应
Op Code | 支持 | 定义 | 参数 | 描述 |
---|---|---|---|---|
0x00 | M | Request Control | N/A | 请求对设备的控制,响应码为0x80 |
0x01 | M | Reset | N/A | 请求重置设备的控制,响应码为0x80 |
0x02 | O | Set Light Type | Light Type:UINT8 参考 4.3.1 | 设置灯的类型 |
0x09 | O | Set Light Color | 最长4字节 | 最长4字节颜色控制 |
0x24 | O | 请求 已配对 遥控器 | UInt32 遥控器ID 0xFFFFFFFF 请求已配对遥控器 | |
0x25~0X7F | N | 保留 | ||
0x80 | M | 响应代码 | 参考 4.5.2 | 标记对Control Point的请求响应 |
0x81~0xD9 | N | 保留 | ||
0xDA | O | 设置设备时间日期 | 8字节 | UInt32 GMT时间+UInt32 当地时间 时间戳 小端存储 |
0xDB~0xDF | N | 保留 | ||
0xDF | O | 请求设备进入DFU状态 | N/A | 设备进入DFU状态,即断开,无返回值 |
0xF0~0xFF | N | 保留 |
表 25
前灯相关控制命令
Op Code | 支持 | 定义 | 参数 | 描述 |
---|---|---|---|---|
0x03 | O | Set Light Mode | Light Mode: UINT8 附表 1 | 设置灯的模式 |
0x04 | O | Set Light Beam Mode | UINT80 Low Beam1 High Beam | |
0x05 | O | Set Light Focus | 设置光束焦点的百分比,值范围0~100 UINT8 | |
0x06 | O | Set Light Intensity | 设置光强度百分比,值范围0~100 UINT8 | |
0x07 | O | Set Light Intensity Mode | 设置光强度模式UINT80 Manual1 Auto | |
0x08 | O | Set Fall Detection Mode | 设置光强度模式UINT80 Off1 On | 如果打开,设备检测到摔倒后将通知手机给紧急联系人打电话或者短信 |
表 26
警示灯相关控制命令
Op Code | 支持 | 定义 | 参数 | 描述 |
---|---|---|---|---|
0x10 | O | 自动休眠 | 0 - 设置关 1 - 设置开 0xFF - 请求状态 | 自动休眠开关状态 |
0x11 | O | 震动唤醒 | 0 - 设置关 1 - 设置开 0xFF - 请求状态 | |
0x12 | O | 休眠时间 | 30 ~ 6000 当前值UInt16 0xFFFF - 请求状态 | 秒 |
0x13 | O | 刹车检测 | 0 - 设置关 1 - 设置开 0xFF - 请求状态 | |
0x14 | O | 刹车检测触发亮度 | 值UInt16(0~100, 最大亮度百分比) 0xFFFF - 请求状态 | |
0x15 | O | 光感检测 | 0 - 设置关 1 - 设置开 0xFF - 请求状态 | |
0x16 | O | 同频动画 | 0 - 设置关 1 - 设置开 0xFF - 请求状态 | |
0x17 | O | 导航同步 | 0 - 设置关 1 - 设置开 0xFF - 请求状态 | |
0x18 | O | 数据同步 | 0 - 设置关 1 - 设置开 0xFF - 请求状态 | |
0x19 | O | 当前动画id | 0~2^32-2 动画id 0xFFFFFFFF - 请求状态 | 设置当前动画id |
0x1A | O | 同频动画 ID | 0~2^32-2 动画id 0xFFFFFFFF - 请求状态 |
表27
运动数据和导航映射命令
Op Code | 支持 | 定义 | 参数 | 描述 |
---|---|---|---|---|
0x0A | O | Set Workout Data | 最长18字节 | 最长18字节 运动数据 |
0x0B | O | Set Navigation | 最长18字节 | 最长18字节 导航数据 |
表 28
4.5.2 Response Code 操作定义
在Bluetooth Light Control Point 特征通道中响应数据格式如下:
Reponse CodeOp Code=0x80 | Request Op Code | Result Code | Response Parameter | |
---|---|---|---|---|
Order | LSO...MSO | |||
Type | UINT8 | UINT8 | UINT8 | |
Size | 1 octet | 1 octet | 1 octet | 0~17 octets |
表 29
4.5.3 Result Code 定义
Result Code | 定义 | Request Op Code | Response Parameter |
---|---|---|---|
0x00 | Reserved | N/A | N/A |
0x01 | 成功 | 参考 4.5.1 | 参考 4.5.4 |
0x02 | 不支持Op Code | 参考 4.5.1 | N/A |
0x03 | 非法参数 | 参考 4.5.1 | N/A |
0x04 | 失败 | 参考 4.5.1 | N/A |
0x05 | 没有权限 | 参考 4.5.1 | N/A |
0x06~FF | Reserved | N/A | N/A |
表 30
4.5.4 OPCode 为0x10~0x24 Functions Response Parameter
Op Code | 支持 | 定义 | Response Parameter | 描述 |
---|---|---|---|---|
0x10 | O | 自动休眠 | 0 - 关 1 - 开 | |
0x11 | O | 震动唤醒 | 0 - 关 1 - 开 | |
0x12 | O | 自动休眠时间 | 当前值UInt16 | |
0x13 | O | 刹车检测 | 0 - 关 1 - 开 | |
0x14 | O | 刹车检测触发亮度 | 值UInt16(0~100, 最大亮度百分比) | |
0x15 | O | 光感检测 | 0 - 关 1 - 开 | |
0x16 | O | 同频动画 | 0 - 关 1 - 开 | |
0x17 | O | 导航同步 | 0 - 关 1 - 开 | |
0x18 | O | 数据同步 | 0 - 关 1 - 开 | |
0x19 | O | 当前动画 ID | UInt32 id | |
0x1A | O | 同频动画 ID | 0~2^32-2 动画id 0xFFFFFFFF - 请求状态 | |
0x24 | O | 遥控器ID | UInt32 id |
表 31
时序图:
4.6 Bluetooth Light Network特征
特征UUID:0x8ce5dd04-0a4d-11e9-ab14-d663bd873d93
4.6.1 Remote Controller 遥控器网络
遥控器配对
遥控器控制命令与4.5 Bluetooth Light Control Point 控制命令相同。 遥控器功能定义:
- 开灯常亮 0x03 15
- 关灯 0x03 00
- 左转灯 0x03 11
- 右转灯 0x03 13
4.7 Radar Service 服务
RS服务主要包括以下两个特征:
Characteristics | 支持 | 属性 | 描述 |
---|---|---|---|
Radar Measurement | M | Notify | 雷达实时数据通知 |
Radar Control Point | O | Write, Indicate | 控制和设置雷达的状态,支持写和写响应 |
表 32
4.7.1 Radar Measurement
Radar Measurement uuid:6A4E3203-667B-11E3-949A-0800200C9A66
Radar Measurement 特征返回数据格式定义:
Time code | Radar Data | |
---|---|---|
Order | LSO...MSO | |
Type | UINT8 | Variable |
Size | 1 octet | 0~18 octets (3*ThreatDataCount) |
表 33
ThreatData危险对象定义如下:
Speed | Distance | ThreatLevel | |
---|---|---|---|
Type | UINT8 | UINT8 | 表 4-15 |
Size | 1 octet | 1 octet | 1 octet |
Unit | KM/H | M | 无 |
表 34
ThreatLevel 定义:
Value | 定义 |
---|---|
0 | NoThreat |
1 | MediumRisk |
2 | HighRisk |
3 | LeftMediumRisk |
4 | LeftHighRisk |
5 | RightMediumRisk |
6 | RightHighRisk |
7 | Reserve |
表 35
4.7.2 Radar Control Point
Radar Control Point uuid:6A4E3201-667B-11E3-949A-0800200C9A66
待定
5 产品用例
户外骑行需要自行车灯来提高人们对周围环境的能见度,能更清楚的看到前方的路线。通常,使用白色前灯,红色作为警示的尾灯,当然也有一些可以放在头盔上用于照明或者警示作用,或者添加转向信号提示骑车人或者后续车辆。
蓝牙自行车灯通过APP或者码表作为控制器,显示车灯信息,控制车灯状态,展示车灯的制造商和产品 ID、电池电量和自行车灯的状态; 例如开或关,以及闪烁速度。
通常户外骑行用户会用到2或者2个以上的灯,控制多个灯和灯的组网方案将在下一个版本讨论。
5.1 设备搜索和连接
TODO
5.2 设备状态获取
待定
5.3 设备控制
待定
5.5 设备组网
待定
6 设备固件升级
本节描述了Nordic芯片的蓝牙固件升级流程。
基于Nordic 的蓝牙固件升级流程(以下称本协议)用以规范适用于符合行者XOSS硬件开放平台的设备的固件更新,包括版本检查,固件升级的命令和数据传输。
6.1 DFU 状态下服务信息
DFU状态下需要提供DIS服务和DFU服务。
DIS服务通过标准蓝牙设备信息服务(DIS)来获取设备当前信息,包括设备生产商,设备型号,串号,硬件版本号,固件版本号。
无论是正常模式下还是固件升级模式下,都需要提供DIS服务。参考4.2.2
DFU服务使用标准SecureDFUService,UUID:FE59
SecureDFUPacket Characteristic UUID:8EC90002-F315-4F60-9FB8-838830DAEA50
SecureDFUControlPoint Characteristic UUID:8EC90001-F315-4F60-9FB8-838830DAEA50
6.2 设备固件版本检查和升级流程
客户端检查流程
1. App端下载最新的固件
2. 连接设备是如果处于设备正常状态,则通过DFU命令出发设备进入DFU状态,如果已经是DFU状态直接进入第四步;
3. App端通过名称识别自动连接DFU设备;
4. 进入Nordic DFU升级流程。
附表
Mode值 | 定义 | 模式 | 间隔Interval | Duration |
---|---|---|---|---|
0 | 灯光关闭off | Steady | Continuous | |
1 | 81-100% 强度intensity | Steady | Continuous | |
2 | 61-80% 强度intensity | Steady | Continuous | |
3 | 41-60% 强度intensity | Steady | Continuous | |
4 | 21-40% 强度intensity | Steady | Continuous | |
5 | 0-20% 强度intensity | Steady | Continuous | |
6 | 慢闪烁 Slow flash | Defined | 1000ms | Continuous |
7 | 快闪烁 Fast flash | Defined | 250ms | Continuous |
8 | 随机闪烁 Random flash | Random | Continuous | |
9 | 自动 Auto | Random | Continuous | |
10 | 左转结束Turn signal left(self cancelling) | Defined | 500ms | 4s |
11 | 左转中Turn signal left(ongoing) | Defined | 500ms | Continuous |
12 | 右转Turn signal right(self cancelling) | Defined | 500ms | 4s |
13 | 右转中Turn signal right(ongoing) | Defined | 500ms | Continuous |
14 | 警示灯(双闪)Hazard lights (both left and right indicators flashing continuously) | Defined | 500ms | Continuous |
15 | Light ON 常亮 | Defined | ||
16 | Fall Dectection 摔倒仅闪烁 | Defined | ||
17 | SOS Flash | Defined | ||
18 | Flash 3Hz | Defined | ||
19 | Warning Flash | Defined | ||
20 | Fall Warning Flash, 摔倒闪烁和声音提醒 | Defined | ||
21 | Dynamic Flash 动态闪烁 | Defined | ||
22 | Dynamic Color 动态颜色渐变 | Defined | ||
23~24 | Reserved for Charge state ,Not support for set | Not supported | ||
25 ~47 | Reserved | |||
48 | 自定义模式 | Defined | ||
X | 自定义模式 | Defined | ||
63 | 自定义模式 | Defined |
附表 1 标准Light Mode值表