更新时间:2024-10-12 02:19:58下载pdf
蓝牙 LE 标准协议接入提供业务透传通道服务,在蓝牙 LE 连接下,为 MCU 和 App 提供透传通道服务,以便直接满足客制化需求并实现双方直接通信。
业务透传通道服务指的是蓝牙通用模组提供的一种服务,通过该通道服务,MCU 可以在蓝牙连接下直接与 App 建立通讯通道,以便满足 MCU 不同的开发需求。
适用场景:
适用固件:目前,仅 BF6H 蓝牙单点通用固件支持,而其他固件会在后续支持。
MCU -> 模组:
字段 | 字节数 | 说明 |
---|---|---|
帧头 | 2 | 0x55 0xAA |
版本号 | 1 | 0x00 |
命令字 CMD | 1 | 0xC4 |
数据长度 Len | 2 | 0x02 |
SubCmd | 1 | 0x00 |
DATA | 1 | Config |
CRC8 | 1 | 从帧头开始按字节求和得出的结果对 256 求余 |
Config 说明:
模组 -> MCU:
字段 | 字节数 | 说明 |
---|---|---|
帧头 | 2 | 0x55 0xAA |
版本号 | 1 | 0x00 |
命令字 CMD | 1 | 0xC4 |
数据长度 Len | 2 | 0x02 |
SubCmd | 1 | 0x00 |
DATA | 1 |
|
CRC8 | 1 | 从帧头开始按字节求和得出的结果对 256 求余 |
业务透传通道支持双向数据透传,模组不对透传的数据进行任何解析处理,而是直接将其透传给 App 进行处理。通常,使用该通道需要与面板或 App 的定制逻辑相配合。
MCU <-> 模组:
字段 | 字节数 | 说明 |
---|---|---|
帧头 | 2 | 0x55 0xAA |
版本号 | 1 | 0x00 |
命令字 CMD | 1 | 0xC4 |
数据长度 Len | 2 | Len 高 8 位 Len 低 8 位 |
SubCmd | 1 | 0x01 |
DATA | Len-1 | RAW_DATA :透传数据 |
CRC8 | 1 | 从帧头开始按字节求和得出的结果对 256 求余 |
以下是通过业务透传通道服务实现的一些应用示例。
当手机系统有消息通知时,模组会通过业务透传通道下发以下业务数据格式的数据:
消息通知数据格式【消息通知数据通过透传通道下发】 | |||
---|---|---|---|
字段名称 | TYPE | DATA_LENGTH | DATA |
字段长度 | 1 字节 | 2 字节 | n 字节 |
字段值 | ~ | n | ~ |
采用 TLD 格式表示消息通知格式,具体字段含义如下: TYPE:通知类型 DATA_LENGTH:通知内容长度,大端格式 DATA:通知内容 |
|||
type 大类,高 4 bits | type 子类,低 4 bits | type 值 | 通知类型 | DATA_LENGTH | DATA | |
---|---|---|---|---|---|---|
0000 消息通知-原定义 |
0001 | 0x01 | 电话 | ~ | 类型 1 字节 0x01:来电 0x02:接听 0x03:挂断 |
电话号码(Unicode 编码) 仅类型为来电时才有该字段。 |
0010 | 0x02 | 短信 | ~ | 编码采用 Unicode,2 字节表示 1 个字符。 例如汉字【今】Unicode 编码为 \u4eca,传输顺序为 0xCA,0x4E |
||
0011 | 0x03 | 腾讯 QQ | ~ | |||
0100 | 0x04 | 微信 | ~ | |||
0101 | 0x05 | ~ | ||||
0110 | 0x06 | Messenger | ~ | |||
0111 | 0x07 | ~ | ||||
1000 | 0x08 | ~ | ||||
1001 | 0x09 | ~ | ||||
1010 | 0x0A | ~ | ||||
1011 | 0x0B | Viber | ~ | |||
1100 | 0x0C | Line | ~ | |||
1101 | 0x0D | Skype | ~ | |||
1110 | 0x0E | Outlook | ~ | |||
1111 | 0x0F | Others | ~ | |||
0011 消息通知-新增 |
0001 | 0x31 | WhatsappBusiness | ~ | 编码采用 Unicode,2 字节表示 1 个字符。 例如汉字【今】Unicode 编码为 \u4eca,传输顺序为 0xCA,0x4E |
|
0010 | 0x32 | ~ | ||||
0011 | 0x33 | Calendar | ~ | |||
0100 | 0x34 | KakaoTalk | ~ | |||
0101 | 0x35 | VKontakte | ~ | |||
0110 | 0x36 | Tumblr | ~ | |||
0111 | 0x37 | Snapchat | ~ | |||
1000 | 0x38 | Telegram | ~ | |||
1001 | 0x39 | YouTube | ~ | |||
1010 | 0x3A | ~ | ||||
1011 | 0x3B | TikTok | ~ | |||
1100 | 0x3C | Gmail | ~ | |||
1101 | 0x3D | Tuya | ~ |
消息通知示例:
微信: 今天真热
55 AA 00 C4 00 0C 01 04 00 08 CA 4E 29 59 1F 77 ED 70 68
电话挂断(03 为挂断):
55 AA 00 C4 00 05 01 01 00 01 03 CE
电话来电(01 为来电): 15000000000
55 AA 00 C4 00 19 01 01 00 17 01 31 00 35 00 30 00 30 00 30 00 30 00 30 00 30 00 30 00 30 00 30 00 0C
A:每当应用层收到消息通知开关 DP 数据为打开的时候,必须通过透传通道开关(CMD-0xC400)同时启用透传通道和手机消息通知服务。对于 iOS 使用场景,模组在收到打开的命令后,将向手机发送配对请求和请求系统通知权限。用户需要在面板弹框中确认,才可正常使用消息通知功能。
另外,当设备解除绑定时,用户应根据 App 弹窗提示在系统蓝牙设置中解除蓝牙配对,否则设备可能出现连接异常。
如果在开发过程遇到问题,您可以登录 TuyaOS 开发者论坛 TuyaOS-蓝牙设备开发 版块进行沟通咨询。
该内容对您有帮助吗?
是意见反馈该内容对您有帮助吗?
是意见反馈