协议更新

This commit is contained in:
liuzl 2022-08-10 10:22:50 +08:00
commit b541e925cb
15 changed files with 79 additions and 0 deletions

29
readme.md Normal file
View File

@ -0,0 +1,29 @@
#### 支持的设备类型
- L10/L11
- H01
- F01
- F08
- G02
- H03
- H018
- HD01BT
- L01/L02/L03
- L08
- PCH01W
#### 算法/推送文档地址
 [品传设备平台](https://console-docs.apipost.cn/preview/3ec81051c6579c1d/9854ba99c0860340)

Binary file not shown.

View File

@ -0,0 +1,334 @@
AiLink八电极体脂秤协议透传应用说明
版本V3.1.19
更新日期2020年04月29日
深圳市易连物联网有限公司版权所有
目录
目录 - 2 -
1 蓝牙接口(默认) - 3 -
1.1 蓝牙名称AiLink_xxxx - 3 -
1.2 UUID说明 - 3 -
1.3 蓝牙连接服务列表1FFE0举例 - 3 -
1.4 广播数据 - 3 -
1.4.1 第一类广播设置 - 4 -
1.5 八电极体脂秤 - 6 -
1.5.1 MCU上报称重状态 - 6 -
1.5.2 MCU上报阻抗数据 - 7 -
1.5.3 MCU上报心率数据 - 8 -
1.5.4 MCU发送温度数据 - 9 -
1.5.5 MCU发送测量完成 - 10 -
1.5.6 APP下发操作指令 - 11 -
1.5.7 设备上发错误码 - 12 -
蓝牙接口(默认)
1 蓝牙名称AiLink_xxxx
xxxx为Mac地址后4个字符
2 UUID说明
BM模块有两个服务UUID一个是模块固定的服务UUID为FFE0一个是用
户可以自定义的服务UUID默认为FEE0。
易连物联网的AiLink APP交互使用的服务UUID为 FFE0。
同时两个UUID都可以作为普通的数据交互UUID。
3 蓝牙连接服务列表1FFE0举例
1. 服务UUID
0000FFE0-0000-1000-8000-00805F9B34FB
2. 特征值UUID1
0000FFE1-0000-1000-8000-00805F9B34FB
属性read,write,write no response
功能 APP下发的数据会通过此UUID透传给MCU
3. 特征值UUID2
0000FFE2-0000-1000-8000-00805F9B34FB
属性read,notify
功能: MCU发给BLE的数据由此UUID透传给APP
4. 特征值UUID3
0000FFE3-0000-1000-8000-00805F9B34FB
属性read,write,write no response,notify
功能APP与BLE进行设置类指令的UUID有write和notify
4 广播数据
说明:广播数据有两类,用户只能选择其中的一类进行设置。
第一类广播AiLink设置默认。使用我司AILInk
APP接入的设置需根据我司要求的格式进行设置。
第二类广播用户自定义设置。不使用我司AiLink
APP接入的设置用户可以根据自身需求进行设置。若不设置则默认为我司设置。
1 第一类广播设置
AiLink设置广播数据内容包含详情设置请查看设置读取CID、PID、VID
1、Company ID 。固定496eInInet缩写此处预留后续申请SIG
company号
2、CID产品类型2bytes例如血压计为0x0001额温枪为0x0002祥查
看协议透传产品介绍)
3、VID厂商ID 2byte (由我司分配)
4、PID产品ID 2byte (由厂商分配)
5、Mac地址MAC是固定的大小端序可设置默认小端序
例如广播出来的自定义数据为:
6e49000100010001126134231102
6e49为In0001是CID表示产品类型0001是VID表示厂商ID0001是PID表示产
品ID。
126134231102是Mac地址因为是小端序所以Mac地址是02 11 23
34 61 12
蓝牙工具显示如下图:
[pic][pic]
6 八电极体脂秤
1 MCU上报称重状态
数据格式:
|Byte |Default |Description |
|0 |0xA9 |包头 |
|1~2 |0x0013 |产品类型CID |
|3 | |Payload长度 |
|4 | |类型:称重 |Payload |
| | |01 | |
|5 | |Type测量状态 | |
| | |01实时体重 | |
| | |02稳定体重 | |
|6 | |重量数据高位 |注:当单位是组合单 | |
| | | |位时 如1ST5LB | |
| | | |则该值是1*14+5=19 | |
| | | |,需将数值转为小单 | |
| | | |位数值 | |
| | | |,同时在后面的单位 | |
| | | |声明里申明是 st:lb | |
| | | |单位。 | |
|7 | |重量数据次高位 | | |
|8 | |重量数据低位 | | |
|9 | |数据标志: | |
| | |Bit7~4重量数据精度该数据标识的是次 | |
| | |级单位里的数据格式) | |
| | |00000位小数 | |
| | |00011位小数 | |
| | |00102位小数 | |
| | |00113位小数 | |
| | | | |
| | |Bit3~0当前单位标识整一组数据的单 | |
| | |位类型) | |
| | |0000kg | |
| | |0001斤 | |
| | |0100st:lb | |
| | |0110lb | |
|10 | |保留为00 | |
|11 |SUM |校验和byte1~byte12 |
|12 |0x9A |包尾 |
2 MCU上报阻抗数据
数据格式:
|Byte |Default |Description |
|0 |0xA9 |包头 |
|1~2 |0x0013 |产品类型CID |
|3 | |Payload长度 |
|4 | |类型:测试阻抗 |Payload |
| | |02 | |
|5 | |Type阻抗测量 | |
| | |01测阻抗中 | |
| | |02测阻抗失败 | |
| | |03测阻抗成功带上阻抗数据并使用APP| |
| | |算法(APP 会根据byte7的算法标识进行计算)| |
| | |04测阻抗结束。 | |
|6 | |通道: | |
| | |0x00 双脚阻抗 0x01 双手阻抗 | |
| | |0x02 左手阻抗 0x03 右手阻抗 | |
| | |0x04 左脚阻抗 0x05 右脚阻抗 | |
| | |0x06 左全身阻抗 0x07 右全身阻抗 | |
| | |0x08 右手左脚阻抗 | |
| | |0x09 左手右脚阻抗 0x0A 躯干阻抗 | |
|7-10 | |阻抗数据字节精度为1Ω | |
|11 | |体脂算法ID每个客户都有自己的算法ID1| |
| | |~255 | |
|12 |0 |保留位 | |
|13 |SUM |校验和byte1~byte12 |
|14 |0x9A |包尾 |
3 MCU上报心率数据
数据格式:
|Byte |Default |Description |
|0 |0xA9 |包头 |
|1~2 |0x0013 |产品类型CID |
|3 | |Payload长度 |
|4 | |类型:测试心率 |Payload |
| | |03 | |
|5 | |Type心率测量 | |
| | |01测心率中 | |
| | |02测心率成功带上心率数据 | |
| | |03测心率失败 | |
|6 | |心率数据精度1bpm | |
|7 |0x00 |保留 | |
|8 |SUM |校验和 |
|9 |0x9A |包尾 |
4 MCU上报身高数据
数据格式:
|Byte |Default |Description |
|0 |0xA9 |包头 |
|1~2 |0x0013 |产品类型CID |
|3 | |Payload长度 |
|4 | |类型:测试身高 |Payload |
| | |05 | |
|5 | |Type身高测试 | |
| | |01测身高中 | |
| | |02测身高成功带上心率数据 | |
| | |03测身高失败 | |
|6 | |单位: | |
| | |0x00cm | |
| | |0x01inch | |
| | |0x02ft-in | |
|7 | |身高数据大端序精度1 | |
|8 | | | |
|9 |0x00 |保留 | |
|10 |SUM |校验和 |
|11 |0x9A |包尾 |
5 MCU发送测量完成
数据格式:
|Byte |Default |Description |
|0 |0xA9 |包头 |
|1~2 |0x0013 |产品类型CID |
|3 | |Payload长度 |
|4 |0x0F |Type测量完成 |Payload |
| | |0x0F | |
|5 |0 |保留 | |
|6 |SUM |校验和 |
|7 |0x9A |包尾 |
6 APP下发操作指令
数据格式:
|Byte |Default |Description |
|0 |0xA9 |包头 |
|1~2 |0x0013 |产品类型CID |
|3 | |Payload长度 |
|4 |0x81 |Typeapp下发操作指令 |Payload |
| | |0x81 | |
|5 | |操作: | |
| | |0x01 : 校准 | |
| | |0x02 : 温度单位切换 | |
| | |0x03 : 重量单位切换 | |
|6 | |当操作是0x02时 | |
| | |0摄氏度℃ | |
| | |1华氏度℉ | |
| | | | |
| | |当操作是0x03时 | |
| | |0kg | |
| | |1斤 | |
| | |4st:lb | |
| | |6lb | |
|7 | |保留 0x00 | |
|8 |SUM |校验和 |
|9 |0x9A |包尾 |
MCU回复操作结果
数据格式:
|Byte |Default |Description |
|0 |0xA9 |包头 |
|1~2 |0x0013 |产品类型CID |
|3 | |Payload长度 |
|4 |0x82 |TypeMCU回复操作结果 |Payload |
| | |0x82 | |
|5 | |操作: | |
| | |0x01 : 校准 | |
| | |0x02 : 温度单位切换 | |
| | |0x03重量单位切换 | |
|6 | |操作结果: | |
| | |0操作成功 | |
| | |1操作失败 | |
| | |2正在操作中 | |
|7 | |保留 0x00 | |
|8 |SUM |校验和 |
|9 |0x9A |包尾 |
7 设备上发错误码
数据格式:
|Byte |Default |Description |
|0 |0xA9 |包头 |
|1~2 |0x0013 |产品类型CID |
|3 | |Payload长度 |
|4 |0xFF |Tpye错误码 |Payload |
|5 | |错误内容: | |
| | |1超重 | |
| | |… | |
|6 |SUM |校验和 |
|7 |0x9A |包尾 |

View File

@ -0,0 +1,571 @@
Ailink 广播身高仪应用说明
版本V1.1
更新日期2021 年 03 月 24 日
深圳市易连物联网有限公司版权所有
本产品的规格书如有变更,恕不另行通知。
深圳市易连物联网有限公司保留在不另行通知的情况下,对其中所包含的规格书和材料进行更改
的权利,同时由于信任所引用的材料所造成的损害(包括结果性损害),包括但不限于印刷上的错误
和其他与此出版物相关的错误,易连物联网将不承担责任。
深圳市易连物联网有限公司 -1-
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000
修改记录
文档版本 作者 发布日期 修改说明
V1.0 LYX 2020/12/7 1.增加身高仪协议
V1.1 lxl 2021/3/24 1.增加应用实例
深圳市易连物联网有限公司 -2-
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000
目录
修改记录........................................................................................................................................................- 2 -
目录................................................................................................................................................................- 3 -
1 概述............................................................................................................................................................- 4 -
2 说明............................................................................................................................................................- 4 -
3 工作模式....................................................................................................................................................- 5 -
3.1 模式一:断电模式。.....................................................................................................................- 5 -
3.2 模式二:长供电休眠模式。.........................................................................................................- 5 -
4 蓝牙接口(数据)....................................................................................................................................- 6 -
4.1 蓝牙名称ELK...............................................................................................................................- 6 -
4.2 UUID 0xF0A0............................................................................................................................... - 6 -
4.3 广播数据格式.................................................................................................................................- 6 -
5 BM 模块与 MCU 交互协议........................................................................................................................ - 7 -
5.1 串口格式.........................................................................................................................................- 7 -
5.2 设置(获取)指令.........................................................................................................................- 7 -
5.2.1 开机指令............................................................................................................................................. - 8 -
5.2.2 关机..................................................................................................................................................... - 9 -
5.2.3 设置蓝牙名称................................................................................................................................... - 10 -
5.2.4 设置设备 ID.......................................................................................................................................- 11 -
5.2.5 自定义数据传输............................................................................................................................... - 12 -
6 AILINK 产品接入介绍............................................................................................................................... - 13 -
6.1 身高仪...........................................................................................................................................- 13 -
6.1.1 工作流程........................................................................................................................................... - 13 -
6.1.2 发送身高数据................................................................................................................................... - 13 -
6.1.3 应用实例........................................................................................................................................... - 15 -
7 自定义说明..............................................................................................................................................- 16 -
8 联系我们..................................................................................................................................................- 16 -
9 附录..........................................................................................................................................................- 16 -
深圳市易连物联网有限公司 -3-
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000
1 概述
本文档适用于 BM30V1.0 版本模块。
本模块使用的是广播数据格式透传数据。
本模块使用 UART 数据交互MCU 通过 UART 将数据传到 BM 模块BM 模块将数据传到 APP
实现数据透传。也可以通过协议透传命令快速适配综合超级应用 APPAiLink快速实现血压计、额
温枪、体温计、婴儿秤、身高仪等智能化。
请扫描此二维码下载 AiLink APP。
如使用 AILink 时,需严格按照协议透传产品介绍里面的流程进行操作。
下文中表明的 MCU 为与 BM 模块连接交互的芯片BLE 则为 BM 模块.
2 说明
2.1 BM 与 APP 通过广播格式实现数据传送。
2.2 BM 模块上电需要时间进行配置当配置完成进入就绪时BM 模块会主动给 MCU 返回一
个 BM 开机状态信息。
深圳市易连物联网有限公司 -4-
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000
3 工作模式
 BM 模块支持两种工作模式,断电模式和不断电休眠模式,用户可以根据自身需求合
理选择工作模式。
用户可以在设计 PCB 的时候,预留两种方式的电路。详情请查看硬件规格书规格书。
3.1模式一:断电模式。
 在此模式下BM 模块完全断电,需要供电才能正常工作,这种模式有利于省电。
3.2模式二:长供电休眠模式。
 此模式下BM 模块需要长供电不会断电关机串口已关闭BM 处于低功耗模式)。
 工作流程:
1、MCU 发送开机指令。
2、MCU 发送正常自定义数据。
3、MCU 发送关机休眠指令。
 自动关机休眠BM 模块 60s 无接收到串口数据时,会自动进入关机休眠模式。
深圳市易连物联网有限公司 -5-
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000
4 蓝牙接口(数据)
4.1 蓝牙名称ELK
蓝牙名称可通过指令修改,且断电保存。
4.2 UUID 0xF0A0
4.3 广播数据格式
为了保证 APP 能完整接收到数据,数据的设置间隔需大于 200ms。
Byte Value 内容
0 0x03 广播 UUID =0xF0A0
1 0x03
2 0xA0
3 0xF0
4 0x04
5 0x09 蓝牙广播名称(可通过指令改变该值)
6 0x45
7 0x4C
8 0x4B
9 0x15 自定义数据声明
10 0xFF
11 0x00 ID注意如果不接入 AILink 超级 APP则该值请不要设
12 0x00 置)
13 0x00
14-19 MAC 小端序
20 校验和: byte21-byte30 的累加和
21-30 用户自定义数据,根据串口数据填入
深圳市易连物联网有限公司 -6-
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000
5 BM 模块与 MCU 交互协议
5.1 串口格式
波特率 96008 数据位无校验位1 停止位,无硬流控
5.2 设置(获取)指令
 设置类指令。
 开机
 关机
 设置蓝牙名称
 设置 ID
 设置自定义数据
设置类指令格式规范:
Byte Value Description
0 0xA6 包头
Payload 长度(最大 16byte
1 Payload
(1~n)校验和
2 ~n 包尾n+2 不能超过 20
n+1 SUM1~n
n+2 0x6A
包头和包尾是固定的,分别为 0xA6和 0x6A。
检验和是指 byte1 + byte2 + …+byte n 的和,取低位 1 byte。
设置指令里,数据的 Byte 数不能超过 20byte。
为了保证 APP 能完整接收到数据,数据的设置间隔需大于 200ms。
深圳市易连物联网有限公司 -7-
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000
5.2.1 开机指令
BM 模块处于休眠时,需要发送开机指令让其进入工作模式。
格式:
Byte Value Description
0 0xA6 包头
包尾
1 0x02
2 0x1A
3 0x01
4 0x1D
5 0x6A
MCU 开机返回
Byte Value Description
包头
0 0xA6
包尾
1 0x02
2 0x1A
3 0x00
4 0x1C
5 0x6A
深圳市易连物联网有限公司 -8-
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000
5.2.2 关机
BM 接收到 MCU 发送的关机指令后,会进入休眠模式,同时返回关机指令。关机休眠后,不
发送广播数据。
BM 模块 60s 无接收到串口数据时,也会自动关机。
BM 关机后Tx 输出高Rx 浮空输入(注意状态,不要导致漏电)。
MCU 发送的关机指令
Byte Value Description
包头
0 0xA6
包尾
1 0x02
2 0x19
3 0x01
4 0x1C
5 0x6A
BM 关机返回
Byte Value Description
包头
0 0xA6
包尾
1 0x02
2 0x19
3 0x00
4 0x1B
5 0x6A
深圳市易连物联网有限公司 -9-
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000
5.2.3 设置蓝牙名称
MCU 发送的设置蓝牙名称指令
Byte Value Description
0 0xA6 包头
1 0x04 1、蓝牙名称只能设置 3 个字符
2、蓝 牙 名 称 的 参 数 对 应 ASCII 码 表 例 如 蓝 牙 名 称 =123
2 0x01 byte3=0x31byte4=0x32byte5=0x33
Sumbyte1-byte5 的累加和
3 包尾
4
5
6
7 0x6A
BM 返回的设置结果指令
Byte Value Description
0 0xA6 包头
包尾
1 0x02
2 0x01
3 0x00
4 0x03
5 0x6A
深圳市易连物联网有限公司 - 10 -
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000
5.2.4 设置设备 ID
注意:当设备不接入 AILink 超级 APP 时,请不要设置该值。否则您所使用的 APP
无法解析数据。
该数值请联系我司分配。
MCU 发送的设置设备 ID 指令
Byte Value Description
0 0xA6 包头
1 0x04 CID
VID
2 0x1D PID
Sumbyte1-byte5 的累加和
3 包尾
4
5
6
7 0x6A
FC2502 返回的设置 ID 结果指令
Byte Value Description
0 0xA6 包头
包尾
1 0x02
2 0x1D
3 0x00
4 0x1F
5 0x6A
深圳市易连物联网有限公司 - 11 -
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000
5.2.5 自定义数据传输
MCU 可通过该指令BM 将数据通过广播的格式,将自定义数据传输到 APP。为了保证
APP 能完整接收到数据,自定义数据的设置间隔需大于 200ms。
MCU 发送的设置自定义数据指令
Byte Value Description
0 0xA6 包头
长度
1 0x0B 类型
默认 0x00
2 0x03 默认 0x00
默认 0x00
3 默认 0x00
默认 0x00
4 默认 0x00
默认 0x00
5 默认 0x00
默认 0x00
6 默认 0x00
Sum该值为 byte1 到 byte12 的累加和)
7 包尾
8
6
10
11
12
13
14 0x6A
BM 返回的结果:
Byte Value Description
包头
0 0xA6 Payload 长度
1 0x02 包尾
2 0x03 Payload
3 0x00
4 0x05
5 0x6A
深圳市易连物联网有限公司 - 12 -
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000
6 AILINK 产品接入介绍
BM30 支持 AILINK 产品的接入,只需根据协议更改 ID 和自定义数据即可。
6.1身高仪
6.1.1 工作流程
为了保证 APP 能完整接收到数据,数据的设置间隔需大于 200ms。
1. 设备上电
2. 唤醒模块 (断电模式则供电,休眠模式则发开机指令)
3. 设置模块的 IDCID、VID、PID 联系我司分配),该值模块断电保存(必设)。
4. 设置模块蓝牙名称(选设),该值模块断电保存。
5. 发送数据。
6. 发送关机指令(或者直接断模块电)。
6.1.2 发送身高数据
Byte Value Description
0 0xA6 包头
1 0x0B 测量数据
serial number 数据流水号 ,串口每发一组新数据,数据+1 ,达
2 0x03 到最大值则从零开始加(主要为了让 APP 识别需要存多少条数据,
同一次测试的稳定数据,流水号不能变,否则 APP 会保存多组数
3 据)
测量标识符
4 0x00正在测量
0x01 :稳定身高体重
5-6 0xFF测试失败
身高数据2byte大端序
注:当单位是组合单位时,如 1 9 ft 则 该 值 是 1*12+9=21
需将数值转为最小单位数值,同时在后面的单位声明里申明是 ft-in 单
位。
深圳市易连物联网有限公司 - 13 -
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000
7 身高数据标志:单位、小数点
Bit0 - bit3单位
8-9 0cm
10 1inch
2ft-in
11 Bit4-bit7小数点
0无小数点。
12 11 位小数点。
22 位小数点。
13 33 位小数点。
14 0x6A 体重数据2byte ,大端序。无体重功能,则该值为 0xFFFF
当 单 位 是 组 合 单 位 时 如 1ST 5LB 则 该 值 是
1*14+5=19 ,需将数值转为小单位数值,同时在后面的单位声明里申
明是 st:lb 单位。
体重数据标志:单位、小数点(无体重功能,则该值为 0xFFFF
Bit0-bit3单位
0kg
1
2lboz
3oz
4stlb
5g
6lb
Bit 4:重量正负
0正重量重量为正数
1负重量重量为负数
Bit5 ~bit7小数点
0无小数点。
11 位小数点。
22 位小数点。
电量
0%-100%
无电量检测,则该值为 0xFF
保留位,都为 0
Sum该值为 byte1 到 byte12 的累加和)
包尾
深圳市易连物联网有限公司 - 14 -
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000
BM 返回的接收:
Byte Value Description
包头
0 0xA6 Payload 长度
1 0x02 包尾
2 0x03 Payload
3 0x00
4 0x05
5 0x6A
6.1.3 应用实例
(1) MCU 指令发送实例:
1 开机指令
MCU 发→◇A6 02 1A 01 1D 6A □
MCU 收←◆A6 02 1A 00 1C 6A
2 设置 CID VID PID 信息(必设,具体值请联系我司获取)
MCU 发→◇A6 04 1D 03 03 02 29 6A □
MCU 收←◆A6 02 1D 00 1F 6A
3 发送测量成功的身高数据:
稳定身高 170.5 cm体重 45.5 kg电量 90%
MCU 发→◇A6 0B 03 01 01 06 A9 10 01 C7 20 5A 00 11 6A □
MCU 收←◆A6 02 03 00 05 6A
或者:
稳定身高 1 9 ft体重 45.5 kg电量不支持
MCU 发→◇A6 0B 03 01 01 00 15 00 FF FF FF FF 00 21 6A
MCU 收←◆A6 02 03 00 05 6A
4 关机指令
MCU 发→◇A6 02 19 01 1C 6A □
MCU 收←◆A6 02 19 00 1B 6A
深圳市易连物联网有限公司 - 15 -
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000
(2) 注意事项:
1 测量完成后用户切换单位,不需要再次发送切换单位后的数据。
2 发送间隔MCU 的发送间隔必须要大于 200ms ,发送间隔低于 200ms 会有丢包的可能性。
3 上电要求:模块在上电时,先给模块上电到正常供电电压,再延迟 1000ms 给 RX/TX 通
讯接口发送数据。
7 自定义说明
8 联系我们
深圳市易连物联网有限公司
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室
Tel: +860755-81773367
Email:hw@elinkthings.com
Web: www.elinkthings.com
9 附录
深圳市易连物联网有限公司 - 16 -
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000

View File

@ -0,0 +1,916 @@
Wifi ble 八电极秤通信协议
版本V0.1
更新日期2021 年 05 月 04 日
深圳市易连物联网有限公司版权所有
本产品的规格书如有变更,恕不另行通知。
深圳市易连物联网有限公司保留在不另行通知的情况下,对其中所包含的规格书和材料进行更改的权利,
同时由于信任所引用的材料所造成的损害(包括结果性损害),包括但不限于印刷上的错误和其他与此出版物
相关的错误,易连物联网将不承担责任。
深圳市易连物联网有限公司 -1-
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000
修改记录
文档版本 作者 发布日期 修改说明
V0.1 lxl 2021/5/4 1.初稿
深圳市易连物联网有限公司 -2-
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000
目录
修改记录.................................................................................................................................................................................. - 2 -
目录.......................................................................................................................................................................................... - 3 -
1 说明...................................................................................................................................................................................... - 5 -
1.1 目的........................................................................................................................................................................... - 5 -
2 蓝牙接口(默认配置)...................................................................................................................................................... - 5 -
2.1 蓝牙名称AiLink_xxxx............................................................................................................................................ - 5 -
2.2 UUID 说明...................................................................................................................................................................- 5 -
2.3 蓝牙服务 0xFFE0 结构:......................................................................................................................................... - 5 -
3 设置/查询指令.....................................................................................................................................................................- 6 -
3.1 设置访问的 IP 地址 Type = 0x8B........................................................................................................ - 6 -
3.2 获取访问的 IP 地址 Type = 0x8C........................................................................................................ - 7 -
3.3 设置访问的端口号 Type = 0x8D.........................................................................................................- 8 -
3.4 获取访问的端口号 Type = 0x8E......................................................................................................... - 9 -
3.5 设置访问的路径 Type = 0x96........................................................................................................... - 10 -
3.6 获取访问的路径 Type = 0x97........................................................................................................... - 11 -
3.7 获取当前连接的 AP 名字wifi 名称) Type = 0x94........................................................................- 11 -
3.8 设置蓝牙名称 Type = 0x01................................................................................................................. - 12 -
3.9 获取蓝牙名称 Type = 0x02................................................................................................................. - 14 -
3.10 读取 MAC 地址 Type = 0x0d............................................................................................................. - 15 -
3.11 获取模块 SN 号 Type = 0x95.............................................................................................................- 16 -
3.12 读取模块版本号 Type = 0x0e........................................................................................................... - 16 -
3.13 设置模块立即进入休眠 Type = 0x19............................................................................................... - 18 -
3.14 唤醒模块 Type = 0x1a....................................................................................................................... - 19 -
3.15 恢复出厂设置 Type = 0x22............................................................................................................... - 20 -
3.16 获取模块状态 Type = 0x26............................................................................................................... - 21 -
3.17 模块上报状态.......................................................................................................................................- 21 -
4 MCU 发送测量结果............................................................................................................................................................ - 22 -
5 标定模式............................................................................................................................................................................ - 23 -
5.1 APP 下发标定重量.................................................................................................................................. - 23 -
5.2 MCU 返回标定结果.................................................................................................................................- 24 -
6 工作流程/应用实例.......................................................................................................................................................... - 25 -
6.1 准备阶段................................................................................................................................................................. - 25 -
6.2 测量阶段................................................................................................................................................................. - 25 -
6.3 服务器数据处理阶段.............................................................................................................................................- 26 -
6.4 标定阶段................................................................................................................................................................. - 27 -
6.5 获取模块唯一码,生成设备外壳上的二维码.................................................................................................... - 27 -
6.5.1 方案一:获取模块 MAC 地址,生成设备外壳上的二维码........................................................................... - 27 -
6.5.2 方案二:获取模块 SN生成设备外壳上的二维码........................................................................................- 27 -
6.6 注意事项................................................................................................................................................................. - 27 -
深圳市易连物联网有限公司 -3-
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000
7 联系我们............................................................................................................................................................................ - 28 -
深圳市易连物联网有限公司 -4-
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000
1 说明
1.1目的
本文档适用于八电极体脂秤如何蓝牙配网,然后通过 wifi 发送数据给服务器。
2 蓝牙接口(默认配置)
2.1蓝牙名称AiLink_xxxx
其中 xxxx 为 Mac 地址后 4 个字符。
2.2UUID 说明
模块有两个服务 UUID一个是模块固定的服务 UUID为 FFE0一个是用户可以自定义的服务 UUID默认
为 FEE0。
2.3蓝牙服务 0xFFE0 结构:
 服务 UUID
0000FFE0-0000-1000-8000-00805F9B34FB
 特征值 UUID1
0000FFE1-0000-1000-8000-00805F9B34FB
属性read,write,write no response
功能 APP 下发的数据会通过此 UUID 透传给 MCU
 特征值 UUID2
0000FFE2-0000-1000-8000-00805F9B34FB
属性read,notify
功能: MCU 发给 BLE 的数据由此 UUID 透传给 APP
 特征值 UUID3
0000FFE3-0000-1000-8000-00805F9B34FB
属性read,write,write no response,notify
功能APP 与 BLE 进行设置类指令的 UUID有 write 和 notify
深圳市易连物联网有限公司 -5-
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000
3 设置/查询指令
3.1 设置访问的 IP 地址 Type = 0x8B
模块接收: Value Description Payload
Byte 0xA6
0 0x8B 包头
1 Payload 长度
2 Sum1~n Type设置访问的 IP 地址
3 0x6A 0后面没有包
1后面还有包
4~n 网址(最多 14byte 最多合计 56byte
n+1 校验和
n+2 包尾
模块响应: Value Description Payload
Byte 0xA6
0 0x02 包头
1 0x8B Payload 长度
2 Type回复设置访问的 IP 地址结果
3 Sum1~3 结果值:
0x6A 0x00成功
4 0x01失败
5 0x02不支持
校验和
包尾
 举例:假设网址是 http://47.113.114.70:8092/index/,那么 IP 地址是“47.113.114.70”,对应 ascii 码是
0x34 0x37 0x2e 0x31 0x31 0x33 0x2e 0x31 0x31 0x34 0x2e 0x37 0x30
设置网址A6 0F 8B 00 34 37 2E 31 31 33 2E 31 31 34 2E 37 30 21 6A
深圳市易连物联网有限公司 -6-
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000
3.2 获取访问的 IP 地址 Type = 0x8C
模块接收: Value Description Payload
Byte 0xA6 包头 Payload
0 0x01 Payload 长度
1 0x8C Type获取访问的 IP 地址
2 0x8D 校验和
9 0x6A 包尾
10
Value Description
模块响应: 0xA6 包头
Byte Payload 长度
0 0x8C Type回复访问的 IP 地址
1 0x00后面没有包
2 Sum1~n 0x01后面还有包
3 0x6A 网址(最多 14byte 最多联系 4 个包 56byte
校验和
4~n 包尾
n+1
n+2
深圳市易连物联网有限公司 -7-
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000
3.3 设置访问的端口号 Type = 0x8D
模块接收: Value Description Payload
Byte 0xA6 Payload
0x03 包头
0 0x8D Payload 长度
1 Type设置访问的端口号
2 Sum1~4 端口号的高字节
3 0x6A 端口号的低字节
4 校验和
5 包尾
6
模块响应: Value Description
Byte 0xA6
0 0x02 包头
1 0x8D Payload 长度
2 Type回复设置访问的端口号结果
3 Sum1~4 结果值:
0x6A 0x00成功
4 0x01失败
5 0x02不支持
校验和
包尾
 举例:设置端口 8092
发送A6 03 8D 1F 9C 4B 6A
深圳市易连物联网有限公司 -8-
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000
3.4 获取访问的端口号 Type = 0x8E
模块接收: Value Description Payload
Byte Payload
0xA6 包头
0 0x01 Payload 长度
1 0x8E Type获取访问的端口号
2 0X8F 校验和
3 0x6A 包尾
4
Value Description
模块响应: 0xA6
Byte 0x03 包头
0x8E Payload 长度
0 Type回复访问的端口号
1 Sum1~4 端口号的高字节
2 0x6A 端口号的低字节
3 校验和
4 包尾
5
6
深圳市易连物联网有限公司 -9-
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000
3.5 设置访问的路径 Type = 0x96
模块接收: Value Description Payload
Byte 0xA6
0 0x96 包头
1 Payload 长度
2 Sum1~n Type设置访问的路径
3 0x6A 0后面没有包
1后面还有包
4~n 网址(最多 14byte 最多合计 56byte
n+1 校验和
n+2 包尾
模块响应: Value Description Payload
Byte 0xA6
0 0x02 包头
1 0x96 Payload 长度
2 Type回复设置访问的路径结果
3 Sum1~3 结果值:
0x6A 0x00成功
4 0x01失败
5 0x02不支持
校验和
包尾
 举例:假设网址是 http://47.113.114.70:8092/index/,那么访问路径是“/index/”,对应 ascii 码是
0x2F 0x 69 0x 6E 0x 64 0x 65 0x 78 0x 2F
设置网址A6 09 96 00 2F 69 6E 64 65 78 2F 15 6A
深圳市易连物联网有限公司 - 10 -
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000
3.6 获取访问的路径 Type = 0x97
模块接收: Value Description Payload
Byte 0xA6 包头 Payload
0 0x01 Payload 长度
1 0x8C Type获取访问的网址 Payload
2 0x8D 校验和 Payload
9 0x6A 包尾
10 - 11 -
Value Description
模块响应: 0xA6 包头
Byte Payload 长度
0 0x8C Type回复访问的网址
1 0x00后面没有包
2 Sum1~n 0x01后面还有包
3 0x6A 网址(最多 14byte 最多联系 4 个包 56byte
校验和
4~n 包尾
n+1
n+2
3.7 获取当前连接的 AP 名字wifi 名称) Type = 0x94
模块接收: Value Description
Byte
0xA6 包头
0 0x01 Payload 长度
1 0x94 Type获取当前 AP 名
2 0x95 校验和
3 0x6A 包尾
4
模块响应: Value Description
Byte
0 0xA6 包头
Payload 长度
1 Type回复当前 AP 名
AP 名字
2 0x94
3~n
n+1 Sum1~n 校验和
深圳市易连物联网有限公司 邮编518000
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室
n+2 0x6A 包尾
 举例:发送 A6 01 94 95 6A
回复A6 10 94 49 4F 54 2D 77 69 66 69 00 00 00 00 00 00 00 6C 6A
3.8 设置蓝牙名称 Type = 0x01
模块接收: Value Description Payload
Byte 0xA6
0 Len 包头
1 0x01 Payload 长度(最大 16byte
2 Name Type设置蓝牙名称
3~n Num 名称(需要对应 ASCII 表)
n+1 MAC 字符个数:名称后面跟随的 MAC 字符的个数
Sum1~n 0x00代表没有则是固定蓝牙名称。
n+2 0x6A 0x01代表后面带有 mac 地址的 1 个字符,例如:
N+3 Swan_x。
模块响应: Value 0x02代表后面带有 mac 地址的 2 个字符,例如:
Byte 0xA6 Swan_xx。
0 0x02 默认 Num=4Num 最大为 12
1 0x01 注Name 长度+“_”+Num 最大为 15
2 校验和
3 Sum1~3 包尾
0x6A
4 Description Payload
5
包头
Payload 长度
Type回复设置蓝牙名称结果
结果值:
0x00成功立即生效
0x01失败
0x02不支持
校验和
包尾
深圳市易连物联网有限公司 - 12 -
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000
设置蓝牙名称可以设置为固定字符作为蓝牙名称,例如设置为 swan所有的模块都会显示为 swan。同时也可
以设置为固定蓝牙名称+“_”+ Mac 地址的方式,这样子有利于每个模块的名称都有差异。
 举例 蓝牙的 MAC 地址为 12 : 34 : 56 : 78 : 9A : BC。
如果设置蓝牙名称为 swan且不带 MAC 地址时,那么发送 A6 06 01 73 77 61 6E 00 C0 6A ,则蓝牙名称为 swan
如果设置蓝牙名称为 swan且带 MAC 地址 2 个字符,那么发送 A6 06 01 73 77 61 6E 02 C2 6A ,则蓝牙名称
为 swan_BC
如果设置蓝牙名称为 swan且带 MAC 地址 4 个字符,那么发送 A6 06 01 73 77 61 6E 04 C4 6A ,则蓝牙名称
为 swan_9ABC
整个蓝牙名称长度最长为 15 个字符。
深圳市易连物联网有限公司 - 13 -
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000
3.9 获取蓝牙名称 Type = 0x02
模块接收: Value Description Payload
Byte Payload
0xA6 包头
0 0x01 Payload 长度
1 0x02 Type获取蓝牙名称
2 0x03 校验和
3 0x6A 包尾
4
模块响应: Value Description
Byte
0xA6 包头
0 Len Payload 长度(最大 16 byte
1 0x02 Type回复蓝牙名称
2 Name 蓝牙名称(最长 15 byte
3~n Sum1~n 校验和
n+1 0x6A 包尾
n +2
 举例:蓝牙名称为 swan_BC
发送查询指令A6 01 02 03 6A
BM 返回名称A6 08 02 73 77 61 6E 5F 42 43 A7 6A
深圳市易连物联网有限公司 - 14 -
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000
3.10 读取 MAC 地址 Type = 0x0d
模块接收: Value Description Payload
Byte 0xA6 包头 Payload
0x01 Payload 长度
0 0x0D Type读取 MAC 地址值
1 0x0E 校验和
2 0x6A 包尾
3
4 Value Description
模块响应: 0xA6 包头
Byte 0x07 Payload 长度
0x0D Type回复 MAC 地址值
0 Mac 地址值6byte、小端序
1 Sum1~8 校验和
2 0x6A 包尾
3~8
9
10
 举例MAC 地址为 11 22 33 44 55 66
返回A6 07 0D 66 55 44 33 22 11 79 6A
深圳市易连物联网有限公司 - 15 -
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000
3.11 获取模块 SN 号 Type = 0x95
模块接收: Value Description Payload
Byte
0xA6 包头
0 0x01 Payload 长度
1 0x95 Type获取 SN 号
2 0x96 校验和
3 0x6A 包尾
4
模块响应: Value Description Payload
Byte 0xA6
0x10 包头
0 0x95 Payload 长度
1 Type回复 SN 号
2 Sum1~17 SN 号
3~17 0x6A 校验和
18 包尾
19
 举例:发送 A6 01 95 96 6A
回复A6 10 95 57 4D 05 88 4A 18 32 23 CD 1E 55 8B C2 F8 2F 41 6A
3.12 读取模块版本号 Type = 0x0e
模块接收: Value Description Payload
Byte
0xA6 包头 - 16 -
0 0x01 Payload 长度
1 0x0E Type读取 BM 模块软硬件版本号
2 0x0F 校验和
3 0x6A 包尾
4
模块响应: Value Description
Byte 包头
0xA6 Payload 长度
0 0x0A
1
深圳市易连物联网有限公司 邮编518000
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室
2 0x0E Type回复 BM 模块软硬件版本号
3 产品型号。byte3 、byte4 为 ASCII 字符byte5 为数
4 字。
5
6 硬件版本号 H
7 软件版本号 S Payload
8 定制版本号 P
9 年 实际年份=年+2000
例如2019 年
年=2019-2000=19
10 月 1~12
11 日 1~31
12 Sum1~11 校验和
13 0x6A 包尾
 举例:如软硬件版本号为 WM05H1S1.0P0_20190507
解析WM05 为产品型号,对应实际实际数据为 0x57 0x4D 0x05
H1 为硬件版本号 1对应实际数据为 0x01
S1.0 为软件版本号 1.0 对应实际数据为0x0A带 1 位小数点)
P0 为定制版本号,对应实际数据为 0
2019-2000=19对应实际数据 0x13
返回A6 0A 0E 57 4D 05 01 0A 00 13 05 07 EB 6A
深圳市易连物联网有限公司 - 17 -
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000
3.13 设置模块立即进入休眠 Type = 0x19
模块接收: Value Description
Byte 0xA6
0 Len 包头
1 0x19 Payload 长度
2 0x01 Type设置进入睡眠
3 Value0x01
4 Sum1~6 休眠模式:
0x6A 0x00BLE 关闭WIFI 关闭,串口关闭(掉电模式)。
5
6 Payload
7 0x01BLE 正常工作WIFI 正常工作,串口关闭(正
8 常睡眠)。
保留位
保留位
校验和
包尾
模块响应: Value Description Payload
Byte 0xA6
0 Len 包头
1 0x19 Payload 长度
2 Type回复设置进入睡眠的结果
3 Sum1~3 结果值:
0x6A 0x00成功成功后 100ms 后进入睡眠)
4 0x01失败
5 0x02不支持
校验和
包尾
 举例:设置进入掉电模式
发送A6 05 19 01 00 00 00 1f 6A
深圳市易连物联网有限公司 - 18 -
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000
3.14 唤醒模块 Type = 0x1a
模块接收: Value Description Payload
Byte Payload
0xA6 包头
0 0x02 Payload 长度
1 0x1A Type设置模块唤醒
2 0x01 Value0x01
3 0x1D 校验和
4 0x6A 包尾
5
模块响应: Value Description
Byte 0xA6
0 0x02 包头
1 0x1A Payload 长度
2 Type回复设置模块唤醒结果
3 Sum1~3 结果值:
0x6A 0x00成功
4 0x01失败
5 0x02不支持
校验和
包尾
如果模块处于睡眠状态,第一次发指令是没有响应的,此指令只是唤醒模块。
深圳市易连物联网有限公司 - 19 -
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000
3.15 恢复出厂设置 Type = 0x22
模块接收: Value Description Payload
Byte Payload
0 0xA6 包头
1 0x02 Payload 长度
2 0x22 Type设置恢复出厂设置
3 0x01 Value0x01
4 0x25 校验和
5 0x6A 包尾
模块响应: Value Description
Byte 0xA6
0 0x02 包头
1 0x22 Payload 长度
2 Type回复设置模块重启结果
3 Sum1~3 结果值:
0x6A 0x00成功成功后100ms 后恢复出厂设置)
4 0x01失败
5 0x02不支持
校验和
包尾
深圳市易连物联网有限公司 - 20 -
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000
3.16 获取模块状态 Type = 0x26
模块接收: Value Description Payload
Byte
0 0xA6 包头
1 0x01 Payload 长度
2 0x26 Type获取状态
3 0x27 校验和
4 0x6A 包尾
模块响应: Value Description
Byte 0xA6
0 0x03 包头
1 0x26 Payload 长度
2 Type返回模块状态
3 Sum1~4 模块状态:
0x6A bit0-bit3 表示 BLE 状态:
4 0无连接
1已连接
5 2配对完成
6 Bit4-bit7 表示 wifi 状态:
0没连接 AP
1连接 AP 失败连接时密码错误、AP 信号不好、主 Payload
动断开都会是这个状态;
2连接的 AP 信号不好;
3成功连接上 AP
4正在连接 AP
工作状态:
0唤醒
1进入休眠
2模块准备就绪
校验和
包尾
3.17 模块上报状态
当 BLE、WIFI、功耗模式改变时模块都会通过获取模块状态的响应包格式主动进行上报状态变化。
深圳市易连物联网有限公司 - 21 -
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000
4 MCU 发送测量结果
数据 1 Default Description
Byte 0xA9 包头
0x10 长度
0 0x01 数据 1
1 模式:
2 0体脂模式
3 1体重模式
重量数据
4~6
7 数据标志:
Bit7~4重量数据精度
00000 位小数
00011 位小数
00102 位小数
00113 位小数
8~9 SUM1~18 Bit3~0当前单位标识整一组数据的单位类型
10~11 0x9A 0000kg
12~13 0001
14~15 0100st:lb
16~17 0110lb
18
19 双脚阻抗
双手阻抗
左手阻抗
右手阻抗
左脚阻抗
校验和
包尾
数据 2 Default Description
包头
Byte 0xA9 长度
0x10 数据 2
0 0x02
1
2
深圳市易连物联网有限公司 - 22 -
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000
3~4 SUM1~18 右脚阻抗
5~6 0x9A 左全身阻抗
7~8 右全身阻抗
9~10 右手左脚阻抗
11~12 左手右脚阻抗
13~14 躯干阻抗
15~16 身高数据
注:当单位是组合单位时,如 1 9 ft 则 该 值 是 1*12+9=21 ,需将
17 数值转为最小单位数值,同时在后面的单位声明里申明是 ft-in 单位。
18 身高数据标志:单位、小数点
19 Bit0 - bit3单位
0cm
1inch
2ft-in
Bit4-bit7小数点
0无小数点。
11 位小数点。
22 位小数点。
33 位小数点。
校验和
包尾
5 标定模式
5.1 APP 下发标定重量
Byte Default Description
0 0xA9 包头
产品类型CID
1~2 0x0026 Payload 长度
类型APP 下发标定重量
3 Type测量状态
3重量标定
4 0x40 重量数据高位 Payload
重量数据次高位
5 重量数据低位 注:当单位是组合单位时 如
1ST 5LB 则 该 值 是
6 1*14+5=19 ,需将数值转为小
7 单位数值 ,同时在后面的单位
8
深圳市易连物联网有限公司 - 23 -
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000
9 声明里申明是 st:lb 单位。
10 数据标志:
Bit7~4重量数据精度该数据标识的是次级单位里的
11 SUM 数据格式)
00000 位小数
12 0x9A 00011 位小数
00102 位小数
00113 位小数
Bit3~0当前单位标识整一组数据的单位类型
0000kg
0001
0100st:lb
0110lb
保留为00
校验和byte1~byte10
包尾
5.2 MCU 返回标定结果
APP 收到 MCU 的测量完成指令后,需回复该指令。
数据格式:
Byte Default Description
0 0xA9 包头
1~2 0x0026 产品类型:
3 Payload 长度
4 0x41 Type返回标定结果
5 0x00 : 成功 Payload
0x01 : 失败
0x02不支持
6 SUM1~5 (1~5)校验和
7 0x9A 包尾
深圳市易连物联网有限公司 - 24 -
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000
6 工作流程/应用实例
6.1准备阶段
(1) MCU 上电,等待模块回复
(2) 模块上电成功,回复模块状态指令
(3) MCU 设置网址IP、端口模块回复设置网址成功
举例:
目标网址http://test.ailink.revice.bak.aicare.net.cn/api/v1/wifiDevice/register
其中IP 地址为http://test.ailink.revice.bak.aicare.net.cn
访问的路径为:/api/v1/wifiDevice/register
MCU 设置 IP 地址:
发→◇A6 10 8B 01 74 65 73 74 2E 61 69 6C 69 6E 6B 2E 72 65 07 6A □
发→◇A6 10 8B 01 76 69 63 65 2E 62 61 6B 2E 61 69 63 61 72 CD 6A □
发→◇A6 0A 8B 00 65 2E 6E 65 74 2E 63 6E 6E 6A □
MCU 收到模块返回的设置 IP 地址成功:
收←◆A6 02 8B 00 8D 6A
MCU 设置访问的路径:
发→◇A6 10 96 01 2F 61 70 69 2F 76 31 2F 77 69 66 69 44 65 6D 6A □
发→◇A6 10 96 00 76 69 63 65 2F 72 65 67 69 73 74 65 72 2F 10 6A □
MCU 收到模块返回的设置访问路径成功:
收←◆A6 02 96 00 98 6A
(4) 设备连接小程序
(5) 模块回复 MCU 连接成功的状态
(6) 用户在小程序上进行配网操作。注:配网时,设备需要保持亮屏状态。
(7) 配网成功,模块回复 MCU 配网成功,小程序显示配网成功。
MCU 收到模块回复的配网成功:
收←◆A6 03 26 31 02 5C 6A
6.2测量阶段
(1) 用户上称测量。
(2) 秤端屏幕亮起MCU 发送唤醒指令给模块
(3) 模块工作、尝试连接已配置的网络。
深圳市易连物联网有限公司 - 25 -
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000
(4) 模块返回给 MCU连接网络成功
(5) 测量完毕MCU 发送测量结果数据给模块,模块把测量结果数据发送给服务器。
MCU 发送测量结果数据:
发→◇A9 10 01 00 00 01 F4 10 00 C8 00 C8 00 C8 00 C8 00 C8 FE 9A
发→◇A9 10 02 00 C8 00 C8 00 C8 00 C8 00 C8 00 C8 00 96 00 58 9A
指令解析:
A9 10 01数据 1 00体脂模式 00 01 F4(500 重量) 10一位小数单位kg00 C8双脚阻抗20000 C8
双手阻抗20000 C8左手阻抗20000 C8右手阻抗20000 C8左脚阻抗200FE校验和9A
A9 10 02数据 2 00 C8右脚阻抗20000 C8左全身阻抗20000 C8右全身阻抗20000 C8右手左
脚阻抗20000 C8左手右脚阻抗20000 C8躯干阻抗20000 96身高数据15000一位小数点
cm58校验和9A
模块上传数据到服务器成功,模块返回给 MCU 数据透传成功。
收←◆57 4D 05 88 4A 18 71 00 35 D7 0E 44 7B B1 E8 00 A9 10 01 00 00 01 F4 10 00 C8 00 C8 00 C8 00 C8 00 C8 FE
9A
收←◆57 4D 05 88 4A 18 71 00 35 D7 0E 44 7B B1 E8 00 A9 10 02 00 C8 00 C8 00 C8 00 C8 00 C8 00 C8 00 96 00 58
9A
其中57 4D 05 88 4A 18 71 00 35 D7 0E 44 7B B1 E8 ,是模块 SN 号;
00 ,是间隔位
A9 10 01 00 00 01 F4 10 00 C8 00 C8 00 C8 00 C8 00 C8 FE 9A ,是模块上传的数据
6.3服务器数据处理阶段
(1) 服务器接收到设备上传的测量结果数据
(2) 服务器解析、处理测量数据。
(3) 服务器推送处理后的数据到小程序。
举例:
模块上传数据1112模块 sn=574d05884a1871004fcd043a71a7de00。
服务器收到设备的数据请求"params":"V00FiEoYcQBPzQQ6cafeABES"
服务器接收到数据,进行 base64 解码,得出 1112。
深圳市易连物联网有限公司 - 26 -
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000
6.4标定阶段
(1) 设备连接 APP
(2) APP 下发“进入标定模式”指令
(3) MCU 接收到标定模式指令MCU 回复进入标定模式的结果。
(4) MCU 进入标定模式
6.5 获取模块唯一码,生成设备外壳上的二维码
6.5.1 方案一:获取模块 MAC 地址,生成设备外壳上的二维码
(1) MCU 发送“读取 BLE 地址”指令给模块
(2) 模块返回 MAC 地址
(3) MCU 截取 MAC 地址内容,生成对应二维码
发→◇A6 01 0D 0E 6A □
收←◆A6 07 0D 88 4A 18 71 00 35 A4 6A
其中88 4A 18 71 00 35 是设备的 MAC 地址。
6.5.2 方案二:获取模块 SN生成设备外壳上的二维码
(1) MCU 发送“读取模块 SN 号”指令给模块
(2) 模块返回 SN 号信息
(3) MCU 截取 SN 号,生成对应二维码
发→◇A6 01 95 96 6A □
收←◆A6 10 95 57 4D 05 88 4A 18 71 00 35 D7 0E 44 7B B1 E8 1B 6A
其中57 4D 05 88 4A 18 71 00 35 D7 0E 44 7B B1 E8 ,是设备的 SN 号
6.6 注意事项
(1) WM05 是 ble wifi 模块MCU 发送数据给模块,模块会优先从蓝牙上传数据。所以使用 WM05
模块发送数据到服务器的时候,需要断开蓝牙连接。
(2) BLESlave与 APPMaster交互的每包数据默认最大为 20byte当 MCU 端一次性发送超过
20byte 时,模块会将数据进行分包发送,需 50byte 则分为 20+20+10分 3 次发送。
(3) 模块上电需要时间进行配置,当配置完成,进入就绪时,模块会主动给 MCU 返回模块状态信息,
详情请查看“模块上报状态”。
(4) 当模块 BLE 连接时候,数据通道是串口和 BLE如果 BLE 没有连接,而 WIFI 连接上时,数据
通道是串口和 WIFI。
深圳市易连物联网有限公司 - 27 -
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000
7 联系我们
深圳市易连物联网有限公司
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室
Tel: +860755-81773367
Email:hw@elinkthings.com
Web: www.elinkthings.com
深圳市易连物联网有限公司 - 28 -
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000

Binary file not shown.

After

Width:  |  Height:  |  Size: 48 KiB

View File

@ -0,0 +1,50 @@
一、串口设置:
1、UART,波特率是9600起始位1bit,数据位 8bit停止位 1bit
二、电子秤串口通讯格式:
(一)秤接收
数据:
1、开始字节(1字节) 0x02 (固定)
2、备用1 (1字节) 0x53 (固定)
3、数据2 (1字节) 0x31 变化在手机上面设置的参数性别0x30 女0x31
4、数据3 (4字节) 0x30,0x30,0x30 (固定)
5、数据4 (4字节) 0x33,0x30 变化在手机上面设置的参数年龄30岁
6、检验码 (1字节) 前面1-5项的异或。checksum=0x02 xor ......xor 0x03 (变化,计算出来)
7、结束字节(1字节) 0x03 (固定)
(二)秤发送
数据:
1、开始字节(1字节) 0x02 固定
2、开始字节(1字节) 0x40 备用
3、数据1 (5字节) 0x30,0x31,0x30,0x30,0x35 体重: 01005,真实值:10.05(单位KG)
4、数据2 (5字节) 0x30,0x31,0x37,0x30,0x35 身高: 01705,真实值:170.5(单位cm)
5、数据3 (5字节) 0x30,0x30,0x31,0x38,0x36 脂肪: 00186,真实值:18.6 (单位%
6、数据4 (5字节) 0x30,0x30,0x36,0x33,0x39 水分: 00639,真实值:63.9 (单位%
7、数据5 (5字节) 0x30,0x30,0x33,0x36,0x37 肌肉: 00367,真实值:36.7 (单位%
8、数据6 (5字节) 0x30,0x30,0x30,0x33,0x32 骨络: 00032,真实值:3.2 (单位KG)
9、数据7 (5字节) 0x30,0x31,0x38,0x32,0x36 卡路里:01826;真实值:1826 (单位:卡路里)
a、数据8 (5字节) 0x30,0x30,0x31,0x37,0x32 BMI值: 00172,真实值:17.2 (单位)
b、数据9 (5字节) 0x30,0x30,0x30,0x36,0x33 内脂: 00063,真实值:6.3 (单位%
c、状态 (1字节) 0x40 体型: 0x40=偏瘦0x41=正常0x42=偏肥0x43=肥胖
d、检验码 (1字节) 0x5b 校验: 前面1-b项的异或。即0x02 xor ......xor 0x03
e、结束字节(1字节) 0x03 固定
说明:
1、上面格式中状态与数据1-9为测量值ASCII格式
2、其它数据为固定数据不需要理会。
3、校验字节需要计算用异或C语言为“^”.
4、上面数据格式中除了数据7外其它数据都要除以10或者除以100

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,650 @@
ailink 广播体脂秤应用说明
版本V1.3
更新日期2021 年 3 月 16 日
深圳市易连物联网有限公司版权所有
本产品的规格书如有变更,恕不另行通知。
深圳市易连物联网有限公司保留在不另行通知的情况下,对其中所包含的规格书和材料进行更改
的权利,同时由于信任所引用的材料所造成的损害(包括结果性损害),包括但不限于印刷上的错误
和其他与此出版物相关的错误,易连物联网将不承担责任。
深圳市易连物联网有限公司 -1-
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000
修改记录
文档版本 作者 发布日期 修改说明
V1.0 LYX 2020/8/4 1.增加广播体脂秤协议
V1.1 lxl 2020/11/6 1. 更正概述中描写的支持模块版本。
V1.2 lxl 2021/2/19 1、更新广播秤应用实例
2、修改测量数据指令里的体重例子
V1.3 lxl 2021/3/16 3、增加上电要求
1、增加 MCU 判断/等待 蓝牙 UART 回复。
深圳市易连物联网有限公司 -2-
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000
目录
修改记录........................................................................................................................................................- 2 -
目录................................................................................................................................................................- 3 -
1 概述............................................................................................................................................................- 4 -
2 说明............................................................................................................................................................- 4 -
3 工作模式....................................................................................................................................................- 5 -
3.1 模式一:断电模式。.....................................................................................................................- 5 -
3.2 模式二:长供电休眠模式。.........................................................................................................- 5 -
4 蓝牙接口(数据)....................................................................................................................................- 6 -
4.1 默认蓝牙名称ELK.......................................................................................................................- 6 -
4.2 UUID 0xF0A0............................................................................................................................... - 6 -
4.3 广播数据格式.................................................................................................................................- 6 -
5 BM 模块与 MCU 交互协议........................................................................................................................ - 7 -
5.1 串口格式.........................................................................................................................................- 7 -
5.2 上电.................................................................................................................................................- 7 -
5.3 设置(获取)指令.........................................................................................................................- 7 -
5.3.1 开机指令............................................................................................................................................. - 8 -
5.3.2 关机..................................................................................................................................................... - 9 -
5.3.3 设置蓝牙名称................................................................................................................................... - 10 -
5.3.4 设置设备 ID.......................................................................................................................................- 11 -
5.3.5 自定义数据传输............................................................................................................................... - 12 -
6 AILINK 产品接入介绍............................................................................................................................... - 13 -
6.1 体脂秤...........................................................................................................................................- 13 -
6.1.1 工作流程........................................................................................................................................... - 13 -
6.1.2 发送测量数据................................................................................................................................... - 13 -
6.1.3 应用实例........................................................................................................................................... - 15 -
7 自定义说明..............................................................................................................................................- 18 -
8 联系我们..................................................................................................................................................- 18 -
9 附录..........................................................................................................................................................- 18 -
深圳市易连物联网有限公司 -3-
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000
1 概述
本文档适用于 BM30V1.0 版本模块。
本模块使用的是广播数据格式透传数据。
本模块使用 UART 数据交互MCU 通过 UART 将数据传到 BM 模块BM 模块将数据传到 APP
实现数据透传。也可以通过协议透传命令快速适配综合超级应用 APPAiLink快速实现血压计、额
温枪、体温计、婴儿秤、身高仪等智能化。
请扫描此二维码下载 AiLink APP。
如使用 AILink 时,需严格按照协议透传产品介绍里面的流程进行操作。
下文中表明的 MCU 为与 BM 模块连接交互的芯片BLE 则为 BM 模块.
2 说明
2.1 BM 与 APP 通过广播格式实现数据传送。
2.2 BM 模块上电需要时间进行配置当配置完成进入就绪时BM 模块会主动给 MCU 返回一
个 BM 开机状态信息。
深圳市易连物联网有限公司 -4-
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000
3 工作模式
 BM 模块支持两种工作模式,断电模式和不断电休眠模式,用户可以根据自身需求合
理选择工作模式。
用户可以在设计 PCB 的时候,预留两种方式的电路。详情请查看硬件规格书规格书。
3.1模式一:断电模式。
 在此模式下BM 模块完全断电,需要供电才能正常工作,这种模式有利于省电。
3.2模式二:长供电休眠模式。
 此模式下BM 模块需要长供电不会断电关机串口已关闭BM 处于低功耗模式)。
 工作流程:
1、MCU 发送开机指令。
2、MCU 发送正常自定义数据。
3、MCU 发送关机休眠指令。
 自动关机休眠BM 模块 60s 无接收到串口数据时,会自动进入关机休眠模式。
深圳市易连物联网有限公司 -5-
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000
4 蓝牙接口(数据)
4.1 默认蓝牙名称ELK
蓝牙名称可通过指令修改,且断电保存。
4.2 UUID 0xF0A0
4.3 广播数据格式
Byte Value 内容
0 0x03 广播 UUID =0xF0A0
1 0x03
2 0xA0 蓝牙广播名称(可通过指令改变该值)
3 0xF0
4 0x04 自定义数据声明
5 0x09 ID注意如果不接入 AILink 超级 APP则该值请不要设
6 0x45 置)
7 0x4C MAC 小端序
8 0x4B 校验和: byte21-byte30 的累加和
9 0x15 用户自定义数据,根据串口数据填入
10 0xFF
11 0x00
12 0x00
13 0x00
14-19
20
21-30
深圳市易连物联网有限公司 -6-
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000
5 BM 模块与 MCU 交互协议
5.1 串口格式
波特率 96008 数据位无校验位1 停止位,无硬流控
5.2 上电
(1) BM30 T1 支持常供电模式、断电模式:
常供电模式下,蓝牙关机进入休眠状态。 60s 无操作、发送关机指令进入休眠模式;
断电模式下,芯片完全断电,需要供电才能正常工作。
(2) 上电要求:
模块在上电时,先给模块上电到正常供电电压,再延迟 1000ms 给 RX/TX 通讯接口发送数据,
请注意上电的电压和文波不要超过限制要求,避免损坏模块。
5.3 设置(获取)指令
 设置类指令。
 开机
 关机
 设置蓝牙名称
 设置 ID
 设置自定义数据
设置类指令格式规范:
Byte Value Description
0 0xA6 包头
Payload 长度(最大 16byte
1 Payload
(1~n)校验和
2 ~n 包尾n+2 不能超过 20
n+1 SUM1~n
n+2 0x6A
包头和包尾是固定的,分别为 0xA6和 0x6A。
检验和是指 byte1 + byte2 + …+byte n 的和,取低位 1 byte。
设置指令里,数据的 Byte 数不能超过 20byte。
为了保证 APP 能完整接收到数据,数据发送间隔需大于 200ms。
深圳市易连物联网有限公司 -7-
电话860755-81773367
邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000
5.3.1 开机指令
BM 模块处于休眠时,需要发送开机指令让其进入工作模式。
格式:
Byte Value Description
0 0xA6 包头
包尾
1 0x02
2 0x1A
3 0x01
4 0x1D
5 0x6A
MCU 开机返回
Byte Value Description
包头
0 0xA6
包尾
1 0x02
2 0x1A
3 0x00
4 0x1C
5 0x6A
深圳市易连物联网有限公司 -8-
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000
5.3.2 关机
BM 接收到 MCU 发送的关机指令后,会进入休眠模式,同时返回关机指令。关机休眠后,不
发送广播数据。
BM 模块 60s 无接收到串口数据时,也会自动关机。
BM 关机后Tx 输出高Rx 浮空输入(注意状态,不要导致漏电)。
MCU 发送的关机指令
Byte Value Description
包头
0 0xA6
包尾
1 0x02
2 0x19
3 0x01
4 0x1C
5 0x6A
BM 关机返回
Byte Value Description
包头
0 0xA6
包尾
1 0x02
2 0x19
3 0x00
4 0x1B
5 0x6A
深圳市易连物联网有限公司 -9-
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000
5.3.3 设置蓝牙名称
MCU 发送的设置蓝牙名称指令
Byte Value Description
0 0xA6 包头
1 0x04 1、蓝牙名称只能设置 3 个字符
2、蓝 牙 名 称 的 参 数 对 应 ASCII 码 表 例 如 蓝 牙 名 称 =123
2 0x01 byte3=0x31byte4=0x32byte5=0x33
Sumbyte1-byte5 的累加和
3 包尾
4
5
6
7 0x6A
BM 返回的设置结果指令
Byte Value Description
0 0xA6 包头
包尾
1 0x02
2 0x01
3 0x00
4 0x03
5 0x6A
深圳市易连物联网有限公司 - 10 -
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000
5.3.4 设置设备 ID
注意:当设备不接入 AILink 超级 APP 时,请不要设置该值。否则您所使用的 APP
无法解析数据。
该数值请联系我司分配。
MCU 发送的设置设备 ID 指令
Byte Value Description
0 0xA6 包头
1 0x04 CID
VID
2 0x1D PID
Sumbyte1-byte5 的累加和
3 包尾
4
5
6
7 0x6A
FC2502 返回的设置 ID 结果指令
Byte Value Description
0 0xA6 包头
包尾
1 0x02
2 0x1D
3 0x00
4 0x1F
5 0x6A
深圳市易连物联网有限公司 - 11 -
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000
5.3.5 自定义数据传输
MCU 可通过该指令BM 将数据通过广播的格式,将自定义数据传输到 APP。为了保证
APP 能完整接收到数据,自定义数据的设置间隔需大于 200ms。
MCU 发送的设置自定义数据指令
Byte Value Description
0 0xA6 包头
长度
1 0x0B 类型
默认 0x00
2 0x03 默认 0x00
默认 0x00
3 默认 0x00
默认 0x00
4 默认 0x00
默认 0x00
5 默认 0x00
默认 0x00
6 默认 0x00
Sum该值为 byte1 到 byte12 的累加和)
7 包尾
8
6
10
11
12
13
14 0x6A
BM 返回的结果:
Byte Value Description
包头
0 0xA6 Payload 长度
1 0x02 包尾
2 0x03 Payload
3 0x00
4 0x05
5 0x6A
深圳市易连物联网有限公司 - 12 -
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000
6 AILINK 产品接入介绍
BM30 支持 AILINK 产品的接入,只需根据协议更改 ID 和自定义数据即可。
6.1 体脂秤
6.1.1 工作流程
1. 设备上电
2. 唤醒模块 (断电模式则供电,休眠模式则发开机指令)
3. 设置模块的 IDCID、VID、PID 联系我司分配),该值模块断电保存。
4. 设置模块蓝牙名称(选设),该值模块断电保存。
5. 发送体重阻抗数据。
6. 发送关机指令(或者直接断模块电)。
6.1.2 发送测量数据
Byte Value Description
包头
0 0xA6
测量数据
1 0x0B serial number 数据流水号 ,串口每发一组新数据,数据+1 ,达到最
大值则从零开始加
2 0x03 测量标识符
0x00 :开始测试
3 0x00 :正在测量体重 (此时阻抗数值为 0
0x01 :正在测量阻抗(此时阻抗数值为 0
4 0x02 :阻抗测量成功
0x03 :阻抗测量失败(此时阻抗数值为 0xFFFF
0xFF :测试结束
5 数据属性
Bit7 :温度单位 0=℃ 1=℉
Bit6-3体重单位
深圳市易连物联网有限公司 - 13 -
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000
6-7 0000kg
0001
8-9 0100st:lb
10 0110lb
11-12 Bit2-1体重小数点
00 :无小数点
13 01 : 1 个小数点
10 2 个小数点
14 0x6A 11 3 个小数点
Bit0 :重量类型
0实时重量1稳定重量
体重,大端序
最高位 =0 :正重量
最高位 = 1 :负重量
例如byte6 =0x80byte7=0x64 ,则重量为 -100
Byte6 =0x00byte7=0x64 ,则重量为 100
备注:对于 STLB 单位,需要把数值转为 LB但是单位需要声明
为 ST:LB .
阻抗,大端序
体脂秤算法 ID 编号,需联系我司分配。
温度值,大端序 ,精度 0.1
最高位 = 0 :正温度
最高位 = 1 :负单位
无温度测量,则该值为 0xFFFF
Sum该值为 byte1 到 byte12 的累加和)
包尾
BM 返回的接收:
Byte Value Description
包头
0 0xA6 Payload 长度
1 0x02 包尾
2 0x03 Payload
3 0x00
4 0x05
5 0x6A
深圳市易连物联网有限公司 - 14 -
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000
6.1.3 应用实例
(1) 体重、阻抗测量失败的工作流程:
1 开机指令
MCU 发→◇A6 02 1A 01 1D 6A □
MCU 收←◆A6 02 1A 00 1C 6A
2 设置 CID VID PID 信息(必设,具体值请联系我司获取)
MCU 发→◇A6 04 1D 01 03 02 27 6A □
MCU 收←◆A6 02 1D 00 1F 6A
3 开始测量,实时体重=0.0kg,阻抗=0算法 ID=01
MCU 发→◇A6 0B 03 01 00 02 00 00 00 00 01 FF FF 10 6A □
MCU 收←◆A6 02 03 00 05 6A
4 正在测量体重,实时体重=25.0kg,阻抗=0算法 ID=01
MCU 发→◇A6 0B 03 02 00 02 00 FA 00 00 01 FF FF 0B 6A □
MCU 收←◆A6 02 03 00 05 6A
5 正在测量体重,实时体重=50.0kg,阻抗=0算法 ID=01
MCU 发→◇A6 0B 03 03 00 02 01 F4 00 00 01 FF FF 07 6A □
MCU 收←◆A6 02 03 00 05 6A
6 正在测量体重,稳定体重=50.0kg,阻抗=0算法 ID=01
MCU 发→◇A6 0B 03 04 00 03 01 F4 00 00 01 FF FF 09 6A □
MCU 收←◆A6 02 03 00 05 6A
7 正在测量阻抗,稳定体重=50.0kg,阻抗=0算法 ID=01
MCU 发→◇A6 0B 03 05 01 03 01 F4 00 00 01 FF FF 0B 6A □
MCU 收←◆A6 02 03 00 05 6A
8 阻抗测量失败,稳定体重=50.0kg,阻抗=0算法 ID=01
MCU 发→◇A6 0B 03 06 03 03 01 F4 00 00 01 FF FF 0E 6A □
MCU 收←◆A6 02 03 00 05 6A
9 测量结束,稳定体重=50.0kg,阻抗=0算法 ID=01
MCU 发→◇A6 0B 03 07 FF 03 01 F4 00 00 01 FF FF 0B 6A □
MCU 收←◆A6 02 03 00 05 6A
10 关机指令
MCU 发→◇A6 02 19 01 1C 6A □
MCU 收←◆A6 02 19 00 1B 6A
深圳市易连物联网有限公司 - 15 -
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000
(2) 体重、阻抗测量成功的工作流程:
11 开机指令
MCU 发→◇A6 02 1A 01 1D 6A □
MCU 收←◆A6 02 1A 00 1C 6A
12 设置 CID VID PID 信息(必设,具体值请联系我司获取)
MCU 发→◇A6 04 1D 01 03 02 27 6A □
MCU 收←◆A6 02 1D 00 1F 6A
13 开始测量,实时体重=0.0kg,阻抗=0算法 ID=01
MCU 发→◇A6 0B 03 01 00 02 00 00 00 00 01 FF FF 10 6A □
MCU 收←◆A6 02 03 00 05 6A
14 正在测量体重,实时体重=25.0kg,阻抗=0算法 ID=01
MCU 发→◇A6 0B 03 02 00 02 00 FA 00 00 01 FF FF 0B 6A □
MCU 收←◆A6 02 03 00 05 6A
15 正在测量体重,实时体重=50.0kg,阻抗=0算法 ID=01
MCU 发→◇A6 0B 03 03 00 02 01 F4 00 00 01 FF FF 07 6A □
MCU 收←◆A6 02 03 00 05 6A
16 正在测量体重,稳定体重=50.0kg,阻抗=0算法 ID=01
MCU 发→◇A6 0B 03 04 00 03 01 F4 00 00 01 FF FF 09 6A □
MCU 收←◆A6 02 03 00 05 6A
17 正在测量阻抗,稳定体重=50.0kg,阻抗=0算法 ID=01
MCU 发→◇A6 0B 03 05 01 03 01 F4 00 00 01 FF FF 0B 6A □
MCU 收←◆A6 02 03 00 05 6A
18 阻抗测量成功,稳定体重=50.0kg,阻抗=560算法 ID=01
MCU 发→◇A6 0B 03 06 02 03 01 F4 02 30 01 FF FF 3F 6A □
MCU 收←◆A6 02 03 00 05 6A
19 测量结束,稳定体重=50.0kg,阻抗=560算法 ID=01
MCU 发→◇A6 0B 03 07 FF 03 01 F4 02 30 01 FF FF 3D 6A □
MCU 收←◆A6 02 03 00 05 6A
20 关机指令
MCU 发→◇A6 02 19 01 1C 6A □
MCU 收←◆A6 02 19 00 1B 6A
深圳市易连物联网有限公司 - 16 -
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000
(3) 注意事项:
1 发送间隔MCU 的发送间隔必须要大于 200ms ,发送间隔低于 200ms 会有丢包的可能性。
2 上电要求:模块在上电时,先给模块上电到正常供电电压,再延迟 1000ms 给 RX/TX 通
讯接口发送数据。
3 MCU 发送指令中流水号需要变化,流水号不变化 APP 会认为是同一条指令。
如果担心数据丢包可以发送多条流水号相同的指令,流水号
4 MCU 在测量结束后一定要发“测量结束”指令不发送“测量结束”指令APP 不会保存
当次的数据。
5 APP 逻辑:
1) APP 接收到“开始测量”的指令,进入测量模式;接收到“测量结束”的指令,结束测
量、记录数据。
2) APP 判断“开始测量”“结束测量”这两条指令来开始、结束测量,中间的数据不影响
可以重复发送。
3) APP 根据流水号判断是不是同一条数据;如果 APP 接收到相同流水号的数据,只会取第
一条指令的数据。
4) APP 判断流水号不一致,就是不同的数据;流水号不一定是递增的。
5) 如果要连发两条测量指令,那测量指令的流水号要一样。
(4) MCU 判断/等待 蓝牙 UART 回复:
1 MCU 发送指令给蓝牙模块后,如果 MCU 超时没有收到模块回复,建议 MCU 重复发送指令
2~3 次或延长等待时间如果还是不行MCU 不再等待模块回复,开始发送称重数据指令。
深圳市易连物联网有限公司 - 17 -
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000
7 自定义说明
8 联系我们
深圳市易连物联网有限公司
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室
Tel: +860755-81773367
Email:hw@elinkthings.com
Web: www.elinkthings.com
9 附录
深圳市易连物联网有限公司 - 18 -
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,784 @@
Wifi ble 四电极秤通信协议
版本V0.4
更新日期2022 年 03 月 01 日
深圳市易连物联网有限公司版权所有
本产品的规格书如有变更,恕不另行通知。
深圳市易连物联网有限公司保留在不另行通知的情况下,对其中所包含的规格书和材料进行更改的权利,
同时由于信任所引用的材料所造成的损害(包括结果性损害),包括但不限于印刷上的错误和其他与此出版物
相关的错误,易连物联网将不承担责任。
深圳市易连物联网有限公司 -1-
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000
修改记录
文档版本 作者 发布日期 修改说明
V0.1 lxl 2021/10/12 1.初稿
V0.2 lxl 2021/10/14 1.修改服务器网址
V0.3 lxl 2021/10/28 1.约定服务器返回数据
V0.1 lxl 2022/3/1 1.按客户要求增加阻抗值
深圳市易连物联网有限公司 -2-
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000
目录
修改记录.................................................................................................................................................................................. - 2 -
目录.......................................................................................................................................................................................... - 3 -
1. 说明..................................................................................................................................................................................... - 4 -
1.1 目的........................................................................................................................................................................... - 4 -
2 蓝牙接口(默认配置)...................................................................................................................................................... - 4 -
2.1 蓝牙名称AiLink_xxxx............................................................................................................................................ - 4 -
2.2 UUID 说明...................................................................................................................................................................- 4 -
2.3 蓝牙服务 0xFFE0 结构:......................................................................................................................................... - 4 -
3 设置/查询指令.....................................................................................................................................................................- 5 -
3.1 设置访问的 IP 地址 Type = 0x8B........................................................................................................ - 5 -
3.2 获取访问的 IP 地址 Type = 0x8C........................................................................................................ - 6 -
3.3 设置访问的端口号 Type = 0x8D.........................................................................................................- 7 -
3.4 获取访问的端口号 Type = 0x8E......................................................................................................... - 8 -
3.5 设置访问的路径 Type = 0x96............................................................................................................. - 9 -
3.6 获取访问的路径 Type = 0x97........................................................................................................... - 10 -
3.7 获取当前连接的 AP 名字wifi 名称) Type = 0x94........................................................................- 10 -
3.8 设置蓝牙名称 Type = 0x01................................................................................................................. - 11 -
3.9 读取 MAC 地址 Type = 0x0d............................................................................................................... - 13 -
3.10 获取模块 SN 号 Type = 0x95.............................................................................................................- 14 -
3.11 读取模块版本号 Type = 0x0e........................................................................................................... - 14 -
3.12 设置模块立即进入休眠 Type = 0x19............................................................................................... - 16 -
3.13 唤醒模块 Type = 0x1a....................................................................................................................... - 17 -
3.14 恢复出厂设置 Type = 0x22............................................................................................................... - 18 -
3.15 获取模块状态 Type = 0x26............................................................................................................... - 19 -
3.16 模块上报状态.......................................................................................................................................- 19 -
4 MCU 发送测量结果............................................................................................................................................................ - 20 -
5 工作流程/应用实例.......................................................................................................................................................... - 21 -
5.1 准备阶段................................................................................................................................................................. - 21 -
5.2 测量阶段................................................................................................................................................................. - 22 -
5.3 服务器返回结果.....................................................................................................................................................- 22 -
5.4 服务器数据处理阶段.............................................................................................................................................- 23 -
5.5 注意事项................................................................................................................................................................. - 23 -
6 联系我们............................................................................................................................................................................ - 24 -
深圳市易连物联网有限公司 -3-
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000
1. 说明
1.1目的
本文档适用于 WIFI+BLE 体脂秤如何蓝牙配网,然后通过 wifi 发送数据给服务器。
2 蓝牙接口(默认配置)
2.1蓝牙名称AiLink_xxxx
其中 xxxx 为 Mac 地址后 4 个字符。
2.2UUID 说明
模块有两个服务 UUID一个是模块固定的服务 UUID为 FFE0一个是用户可以自定义的服务 UUID默认
为 FEE0。
2.3蓝牙服务 0xFFE0 结构:
 服务 UUID
0000FFE0-0000-1000-8000-00805F9B34FB
 特征值 UUID1
0000FFE1-0000-1000-8000-00805F9B34FB
属性read,write,write no response
功能 APP 下发的数据会通过此 UUID 透传给 MCU
 特征值 UUID2
0000FFE2-0000-1000-8000-00805F9B34FB
属性read,notify
功能: MCU 发给 BLE 的数据由此 UUID 透传给 APP
 特征值 UUID3
0000FFE3-0000-1000-8000-00805F9B34FB
属性read,write,write no response,notify
功能APP 与 BLE 进行设置类指令的 UUID有 write 和 notify
深圳市易连物联网有限公司 -4-
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000
3 设置/查询指令
3.1 设置访问的 IP 地址 Type = 0x8B
模块接收: Value Description Payload
Byte 0xA6
0 0x8B 包头
1 Payload 长度
2 Sum1~n Type设置访问的 IP 地址
3 0x6A 0后面没有包
1后面还有包
4~n 网址(最多 14byte 最多合计 56byte
n+1 校验和
n+2 包尾
模块响应: Value Description Payload
Byte 0xA6
0 0x02 包头
1 0x8B Payload 长度
2 Type回复设置访问的 IP 地址结果
3 Sum1~3 结果值:
0x6A 0x00成功
4 0x01失败
5 0x02不支持
校验和
包尾
 举例:假设网址是 http://47.113.114.70:8092/index/,那么 IP 地址是“47.113.114.70”,对应 ascii 码是
0x34 0x37 0x2e 0x31 0x31 0x33 0x2e 0x31 0x31 0x34 0x2e 0x37 0x30
设置网址A6 0F 8B 00 34 37 2E 31 31 33 2E 31 31 34 2E 37 30 21 6A
深圳市易连物联网有限公司 -5-
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000
3.2 获取访问的 IP 地址 Type = 0x8C
模块接收: Value Description Payload
Byte 0xA6 包头 Payload
0 0x01 Payload 长度
1 0x8C Type获取访问的 IP 地址
2 0x8D 校验和
9 0x6A 包尾
10
Value Description
模块响应: 0xA6 包头
Byte Payload 长度
0 0x8C Type回复访问的 IP 地址
1 0x00后面没有包
2 Sum1~n 0x01后面还有包
3 0x6A 网址(最多 14byte 最多联系 4 个包 56byte
校验和
4~n 包尾
n+1
n+2
深圳市易连物联网有限公司 -6-
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000
3.3 设置访问的端口号 Type = 0x8D
模块接收: Value Description Payload
Byte 0xA6 Payload
0x03 包头
0 0x8D Payload 长度
1 Type设置访问的端口号
2 Sum1~4 端口号的高字节
3 0x6A 端口号的低字节
4 校验和
5 包尾
6
模块响应: Value Description
Byte 0xA6
0 0x02 包头
1 0x8D Payload 长度
2 Type回复设置访问的端口号结果
3 Sum1~4 结果值:
0x6A 0x00成功
4 0x01失败
5 0x02不支持
校验和
包尾
 举例:设置端口 8092
发送A6 03 8D 1F 9C 4B 6A
深圳市易连物联网有限公司 -7-
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000
3.4 获取访问的端口号 Type = 0x8E
模块接收: Value Description Payload
Byte Payload
0xA6 包头
0 0x01 Payload 长度
1 0x8E Type获取访问的端口号
2 0X8F 校验和
3 0x6A 包尾
4
Value Description
模块响应: 0xA6
Byte 0x03 包头
0x8E Payload 长度
0 Type回复访问的端口号
1 Sum1~4 端口号的高字节
2 0x6A 端口号的低字节
3 校验和
4 包尾
5
6
深圳市易连物联网有限公司 -8-
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000
3.5 设置访问的路径 Type = 0x96
模块接收: Value Description Payload
Byte 0xA6
0 0x96 包头
1 Payload 长度
2 Sum1~n Type设置访问的路径
3 0x6A 0后面没有包
1后面还有包
4~n 网址(最多 14byte 最多合计 56byte
n+1 校验和
n+2 包尾
模块响应: Value Description Payload
Byte 0xA6
0 0x02 包头
1 0x96 Payload 长度
2 Type回复设置访问的路径结果
3 Sum1~3 结果值:
0x6A 0x00成功
4 0x01失败
5 0x02不支持
校验和
包尾
 举例:假设网址是 http://47.113.114.70:8092/index/,那么访问路径是“/index/”,对应 ascii 码是
0x2F 0x 69 0x 6E 0x 64 0x 65 0x 78 0x 2F
设置网址A6 09 96 00 2F 69 6E 64 65 78 2F 15 6A
深圳市易连物联网有限公司 -9-
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000
3.6 获取访问的路径 Type = 0x97
模块接收: Value Description Payload
Byte 0xA6 包头 Payload
0 0x01 Payload 长度
1 0x8C Type获取访问的网址 Payload
2 0x8D 校验和 Payload
9 0x6A 包尾
10 - 10 -
Value Description
模块响应: 0xA6 包头
Byte Payload 长度
0 0x8C Type回复访问的网址
1 0x00后面没有包
2 Sum1~n 0x01后面还有包
3 0x6A 网址(最多 14byte 最多联系 4 个包 56byte
校验和
4~n 包尾
n+1
n+2
3.7 获取当前连接的 AP 名字wifi 名称) Type = 0x94
模块接收: Value Description
Byte
0xA6 包头
0 0x01 Payload 长度
1 0x94 Type获取当前 AP 名
2 0x95 校验和
3 0x6A 包尾
4
模块响应: Value Description
Byte 0xA6
0x94 包头
0 Payload 长度
1 Sum1~n Type回复当前 AP 名
2 AP 名字
3~n 校验和
n+1
深圳市易连物联网有限公司 邮编518000
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室
n+2 0x6A 包尾
 举例:发送 A6 01 94 95 6A
回复A6 10 94 49 4F 54 2D 77 69 66 69 00 00 00 00 00 00 00 6C 6A
3.8 设置蓝牙名称 Type = 0x01
模块接收: Value Description Payload
Byte 0xA6
0 Len 包头
1 0x01 Payload 长度(最大 16byte
2 Name Type设置蓝牙名称
3~n Num 名称(需要对应 ASCII 表)
n+1 MAC 字符个数:名称后面跟随的 MAC 字符的个数
Sum1~n 0x00代表没有则是固定蓝牙名称。
n+2 0x6A 0x01代表后面带有 mac 地址的 1 个字符,例如:
N+3 Swan_x。
模块响应: Value 0x02代表后面带有 mac 地址的 2 个字符,例如:
Byte 0xA6 Swan_xx。
0 0x02 默认 Num=4Num 最大为 12
1 0x01 注Name 长度+“_”+Num 最大为 15
2 校验和
3 Sum1~3 包尾
0x6A
4 Description Payload
5
包头
Payload 长度
Type回复设置蓝牙名称结果
结果值:
0x00成功立即生效
0x01失败
0x02不支持
校验和
包尾
深圳市易连物联网有限公司 - 11 -
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000
设置蓝牙名称可以设置为固定字符作为蓝牙名称,例如设置为 swan所有的模块都会显示为 swan。同时也可
以设置为固定蓝牙名称+“_”+ Mac 地址的方式,这样子有利于每个模块的名称都有差异。
 举例 蓝牙的 MAC 地址为 12 : 34 : 56 : 78 : 9A : BC。
如果设置蓝牙名称为 swan且不带 MAC 地址时,那么发送 A6 06 01 73 77 61 6E 00 C0 6A ,则蓝牙名称为 swan
如果设置蓝牙名称为 swan且带 MAC 地址 2 个字符,那么发送 A6 06 01 73 77 61 6E 02 C2 6A ,则蓝牙名称
为 swan_BC
如果设置蓝牙名称为 swan且带 MAC 地址 4 个字符,那么发送 A6 06 01 73 77 61 6E 04 C4 6A ,则蓝牙名称
为 swan_9ABC
整个蓝牙名称长度最长为 15 个字符。
深圳市易连物联网有限公司 - 12 -
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000
3.9 读取 MAC 地址 Type = 0x0d
模块接收: Value Description Payload
Byte 0xA6 包头 Payload
0x01 Payload 长度
0 0x0D Type读取 MAC 地址值
1 0x0E 校验和
2 0x6A 包尾
3
4 Value Description
模块响应: 0xA6 包头
Byte 0x07 Payload 长度
0x0D Type回复 MAC 地址值
0 Mac 地址值6byte、小端序
1 Sum1~8 校验和
2 0x6A 包尾
3~8
9
10
 举例MAC 地址为 11 22 33 44 55 66
返回A6 07 0D 66 55 44 33 22 11 79 6A
深圳市易连物联网有限公司 - 13 -
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000
3.10 获取模块 SN 号 Type = 0x95
模块接收: Value Description Payload
Byte
0xA6 包头
0 0x01 Payload 长度
1 0x95 Type获取 SN 号
2 0x96 校验和
3 0x6A 包尾
4
模块响应: Value Description Payload
Byte 0xA6
0x10 包头
0 0x95 Payload 长度
1 Type回复 SN 号
2 Sum1~17 SN 号
3~17 0x6A 校验和
18 包尾
19
 举例:发送 A6 01 95 96 6A
回复A6 10 95 57 4D 05 88 4A 18 32 23 CD 1E 55 8B C2 F8 2F 41 6A
3.11 读取模块版本号 Type = 0x0e
模块接收: Value Description Payload
Byte
0xA6 包头 - 14 -
0 0x01 Payload 长度
1 0x0E Type读取 BM 模块软硬件版本号
2 0x0F 校验和
3 0x6A 包尾
4
模块响应: Value Description
Byte 包头
0xA6 Payload 长度
0 0x0A
1
深圳市易连物联网有限公司 邮编518000
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室
2 0x0E Type回复 BM 模块软硬件版本号
3 产品型号。byte3 、byte4 为 ASCII 字符byte5 为数
4 字。
5
6 硬件版本号 H
7 软件版本号 S Payload
8 定制版本号 P
9 年 实际年份=年+2000
例如2019 年
年=2019-2000=19
10 月 1~12
11 日 1~31
12 Sum1~11 校验和
13 0x6A 包尾
 举例:如软硬件版本号为 WM05H1S1.0P0_20190507
解析WM05 为产品型号,对应实际实际数据为 0x57 0x4D 0x05
H1 为硬件版本号 1对应实际数据为 0x01
S1.0 为软件版本号 1.0 对应实际数据为0x0A带 1 位小数点)
P0 为定制版本号,对应实际数据为 0
2019-2000=19对应实际数据 0x13
返回A6 0A 0E 57 4D 05 01 0A 00 13 05 07 EB 6A
深圳市易连物联网有限公司 - 15 -
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000
3.12 设置模块立即进入休眠 Type = 0x19
模块接收: Value Description
Byte 0xA6
0 Len 包头
1 0x19 Payload 长度
2 0x01 Type设置进入睡眠
3 Value0x01
4 Sum1~6 休眠模式:
0x6A 0x00BLE 关闭WIFI 关闭,串口关闭(掉电模式)。
5
6 Payload
7 0x01BLE 正常工作WIFI 正常工作,串口关闭(正
8 常睡眠)。
保留位
保留位
校验和
包尾
模块响应: Value Description Payload
Byte 0xA6
0 Len 包头
1 0x19 Payload 长度
2 Type回复设置进入睡眠的结果
3 Sum1~3 结果值:
0x6A 0x00成功成功后 100ms 后进入睡眠)
4 0x01失败
5 0x02不支持
校验和
包尾
 举例:设置进入掉电模式
发送A6 05 19 01 00 00 00 1f 6A
深圳市易连物联网有限公司 - 16 -
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000
3.13 唤醒模块 Type = 0x1a
模块接收: Value Description Payload
Byte Payload
0xA6 包头
0 0x02 Payload 长度
1 0x1A Type设置模块唤醒
2 0x01 Value0x01
3 0x1D 校验和
4 0x6A 包尾
5
模块响应: Value Description
Byte 0xA6
0 0x02 包头
1 0x1A Payload 长度
2 Type回复设置模块唤醒结果
3 Sum1~3 结果值:
0x6A 0x00成功
4 0x01失败
5 0x02不支持
校验和
包尾
如果模块处于睡眠状态,第一次发指令是没有响应的,此指令只是唤醒模块。
深圳市易连物联网有限公司 - 17 -
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000
3.14 恢复出厂设置 Type = 0x22
模块接收: Value Description Payload
Byte Payload
0 0xA6 包头
1 0x02 Payload 长度
2 0x22 Type设置恢复出厂设置
3 0x01 Value0x01
4 0x25 校验和
5 0x6A 包尾
模块响应: Value Description
Byte 0xA6
0 0x02 包头
1 0x22 Payload 长度
2 Type回复设置模块重启结果
3 Sum1~3 结果值:
0x6A 0x00成功成功后100ms 后恢复出厂设置)
4 0x01失败
5 0x02不支持
校验和
包尾
深圳市易连物联网有限公司 - 18 -
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000
3.15 获取模块状态 Type = 0x26
模块接收: Value Description Payload
Byte
0 0xA6 包头
1 0x01 Payload 长度
2 0x26 Type获取状态
3 0x27 校验和
4 0x6A 包尾
模块响应: Value Description
Byte 0xA6
0 0x03 包头
1 0x26 Payload 长度
2 Type返回模块状态
3 Sum1~4 模块状态:
0x6A bit0-bit3 表示 BLE 状态:
4 0无连接
1已连接
5 2配对完成
6 Bit4-bit7 表示 wifi 状态:
0没连接 AP
1连接 AP 失败连接时密码错误、AP 信号不好、主 Payload
动断开都会是这个状态;
2连接的 AP 信号不好;
3成功连接上 AP
4正在连接 AP
工作状态:
0唤醒
1进入休眠
2模块准备就绪
校验和
包尾
3.16 模块上报状态
当 BLE、WIFI、功耗模式改变时模块都会通过获取模块状态的响应包格式主动进行上报状态变化。
深圳市易连物联网有限公司 - 19 -
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000
4 MCU 发送测量结果
Byte Default Description
0 A9 包头
1 0x0F 数据长度15
2 标志位:
0x00心跳MCU 开机状态以 1000ms 间隔发送)
0x01测量结果
3 重量数据高字节
4 重量数据中字节
5 重量数据低字节
6 0x11 重量数据精度1 位小数
当前单位:斤
7 0x71 ASCII 码q 数据长度
8 0x6E ASCII 码n
9 0x11 十进制17
10 0x26 十进制38
11 0x4F 十进制79
12 0x1D 十进制29
13 0x09 十进制09
14 阻抗数据高字节
15 阻抗数据低字节(精度为 1Ω
16 0x00 保留位
17 校验和sum1~16
18 9A 包尾
测量结果数据MCU 串口发送十六进制数据,
测量失败重量数据为0xFF。
无测量结果数据重量数据为0xFF。
举例:测量结果 145.4 斤
A9 0F 01 00 05 AE 11 71 6E 11 26 4F 1D 09 00 00 00 A1 9A
00 05 AE重量原始数据1454
服务器接收到数据后,先进行 base64 解码,获取里面的测量结果值;因为 MCU 上传的测量结果数据是十六进制数
据,服务器需要转成十进制数据进行处理
深圳市易连物联网有限公司 - 20 -
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000
5 工作流程/应用实例
5.1准备阶段
(1) MCU 上电,等待模块回复
(2) 模块上电成功,回复模块状态指令
(3) MCU 设置网址IP、端口模块回复设置网址成功
举例:
目标网址http://apiweight.lijianmeishouba.com/api/device/getweight
其中IP 地址为http://apiweight.lijianmeishouba.com
访问的路径为:/api/device/getweight
MCU 设置 IP 地址:
发→◇A6 10 8B 01 61 70 69 77 65 69 67 68 74 2E 6C 69 6A 69 34 6A □
发→◇A6 10 8B 01 61 6E 6D 65 69 73 68 6F 75 62 61 2E 63 6F 28 6A □
发→◇A6 03 8B 00 6D FB 6A □
MCU 收到模块返回的设置 IP 地址成功:
收←◆A6 02 8B 00 8D 6A
MCU 设置访问的路径:
发→◇A6 10 96 01 2F 61 70 69 2F 64 65 76 69 63 65 2F 67 65 AA 6A □
发→◇A6 09 96 00 74 77 65 69 67 68 74 9B 6A □
MCU 收到模块返回的设置访问路径成功:
收←◆A6 02 96 00 98 6A
举例:
目标网址http://apiweight.lijianmeishouba.com/api/system/device/getweight
其中IP 地址http://apiweight.lijianmeishouba.com
访问的路径为:/api/system/device/getweight
MCU 设置 IP 地址:
发→◇A6 10 8B 01 61 70 69 77 65 69 67 68 74 2E 6C 69 6A 69 34 6A □
发→◇A6 10 8B 01 61 6E 6D 65 69 73 68 6F 75 62 61 2E 63 6F 28 6A □
发→◇A6 03 8B 00 6D FB 6A □
MCU 收到模块返回的设置 IP 地址成功:
收←◆A6 02 8B 00 8D 6A
MCU 设置访问的路径:
发→◇A6 10 96 01 2F 61 70 69 2F 73 79 73 74 65 6D 2F 64 65 DC 6A □
发→◇A6 10 96 00 76 69 63 65 2F 67 65 74 77 65 69 67 68 74 44 6A □
深圳市易连物联网有限公司 - 21 -
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000
MCU 收到模块返回的设置访问路径成功:
收←◆A6 02 96 00 98 6A
(4) 设备连接小程序
(5) 模块回复 MCU 连接成功的状态
(6) 用户在小程序上进行配网操作。注:配网时,设备需要保持亮屏状态。
小程序配网 demohttp://doc.elinkthings.com/web/#/36?page_id=140
(7) 配网成功,模块回复 MCU 配网成功,小程序显示配网成功。
MCU 收到模块回复的配网成功:
收←◆A6 03 26 31 02 5C 6A
5.2测量阶段
(1) 用户上称测量。
(2) 秤端屏幕亮起MCU 发送唤醒指令给模块
(3) 模块工作、尝试连接已配置的网络。
(4) 模块返回给 MCU连接网络成功
(5) 测量完毕MCU 发送测量结果数据给模块,模块把测量结果数据发送给服务器。
MCU 发送测量结果:
举例:测量结果 145.4 斤
A9 0F 01 00 05 AE 11 71 6E 11 26 4F 1D 09 00 00 00 A1 9A
00 05 AE重量原始数据1454
5.3服务器返回结果
MCU 发送测量结果数据到服务器后,服务器会返回数据接收结果。
(1) 服务器接收数据成功,服务器固定返回 json 字符串:
{"status":"1","data":"QTkwMTAxOUE="}
其中QTkwMTAxOUE=,是对字符串 A901019A 进行 base64 编码得到。
(2) MCU 发送测量结果后MCU 接收到串口数据0x41 39 30 31 30 31 39 41
MCU 认为数据发送到服务器成功。
深圳市易连物联网有限公司 - 22 -
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000
5.4服务器数据处理阶段
(1) 服务器接收到设备上传的测量结果数据
(2) 服务器解析、处理测量数据。
(3) 服务器推送处理后的数据到小程序。
举例:
模块上传数据1112模块 sn=574d05884a1871004fcd043a71a7de00。
服务器收到设备的数据请求"params":"V00FiEoYcQBPzQQ6cafeABES"
服务器接收到数据,进行 base64 解码,得出 1112。
5.5 注意事项
(1) WM05 是 ble wifi 模块MCU 发送数据给模块,模块会优先从蓝牙上传数据。所以使用 WM05
模块发送数据到服务器的时候,需要断开蓝牙连接。
(2) BLESlave与 APPMaster交互的每包数据默认最大为 20byte当 MCU 端一次性发送超过
20byte 时,模块会将数据进行分包发送,需 50byte 则分为 20+20+10分 3 次发送。
(3) 模块上电需要时间进行配置,当配置完成,进入就绪时,模块会主动给 MCU 返回模块状态信息,
详情请查看“模块上报状态”。
(4) 当模块 BLE 连接时候,数据通道是串口和 BLE如果 BLE 没有连接,而 WIFI 连接上时,数据
通道是串口和 WIFI。
深圳市易连物联网有限公司 - 23 -
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000
6 联系我们
深圳市易连物联网有限公司
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室
Tel: +860755-81773367
Email:hw@elinkthings.com
Web: www.elinkthings.com
深圳市易连物联网有限公司 - 24 -
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,649 @@
ailink 广播体脂秤应用说明
版本V1.3
更新日期2021 年 3 月 16 日
深圳市易连物联网有限公司版权所有
本产品的规格书如有变更,恕不另行通知。
深圳市易连物联网有限公司保留在不另行通知的情况下,对其中所包含的规格书和材料进行更改
的权利,同时由于信任所引用的材料所造成的损害(包括结果性损害),包括但不限于印刷上的错误
和其他与此出版物相关的错误,易连物联网将不承担责任。
深圳市易连物联网有限公司 -1-
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000
修改记录
文档版本 作者 发布日期 修改说明
V1.0 LYX 2020/8/4 1.增加广播体脂秤协议
V1.1 lxl 2020/11/6 1. 更正概述中描写的支持模块版本。
V1.2 lxl 2021/2/19 1、更新广播秤应用实例
2、修改测量数据指令里的体重例子
V1.3 lxl 2021/3/16 3、增加上电要求
1、增加 MCU 判断/等待 蓝牙 UART 回复。
深圳市易连物联网有限公司 -2-
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000
目录
修改记录........................................................................................................................................................- 2 -
目录................................................................................................................................................................- 3 -
1 概述............................................................................................................................................................- 4 -
2 说明............................................................................................................................................................- 4 -
3 工作模式....................................................................................................................................................- 5 -
3.1 模式一:断电模式。.....................................................................................................................- 5 -
3.2 模式二:长供电休眠模式。.........................................................................................................- 5 -
4 蓝牙接口(数据)....................................................................................................................................- 6 -
4.1 默认蓝牙名称ELK....................................................................................................................... - 6 -
4.2 UUID 0xF0A0............................................................................................................................... - 6 -
4.3 广播数据格式.................................................................................................................................- 6 -
5 BM 模块与 MCU 交互协议........................................................................................................................ - 7 -
5.1 串口格式.........................................................................................................................................- 7 -
5.2 上电.................................................................................................................................................- 7 -
5.3 设置(获取)指令.........................................................................................................................- 7 -
5.3.1 开机指令............................................................................................................................................. - 8 -
5.3.2 关机..................................................................................................................................................... - 9 -
5.3.3 设置蓝牙名称................................................................................................................................... - 10 -
5.3.4 设置设备 ID.......................................................................................................................................- 11 -
5.3.5 自定义数据传输............................................................................................................................... - 12 -
6 AILINK 产品接入介绍............................................................................................................................... - 13 -
6.1 体脂秤...........................................................................................................................................- 13 -
6.1.1 工作流程........................................................................................................................................... - 13 -
6.1.2 发送测量数据................................................................................................................................... - 13 -
6.1.3 应用实例........................................................................................................................................... - 15 -
7 自定义说明..............................................................................................................................................- 18 -
8 联系我们..................................................................................................................................................- 18 -
9 附录..........................................................................................................................................................- 18 -
深圳市易连物联网有限公司 -3-
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000
1 概述
本文档适用于 BM30V1.0 版本模块。
本模块使用的是广播数据格式透传数据。
本模块使用 UART 数据交互MCU 通过 UART 将数据传到 BM 模块BM 模块将数据传到 APP
实现数据透传。也可以通过协议透传命令快速适配综合超级应用 APPAiLink快速实现血压计、额
温枪、体温计、婴儿秤、身高仪等智能化。
请扫描此二维码下载 AiLink APP。
如使用 AILink 时,需严格按照协议透传产品介绍里面的流程进行操作。
下文中表明的 MCU 为与 BM 模块连接交互的芯片BLE 则为 BM 模块.
2 说明
2.1 BM 与 APP 通过广播格式实现数据传送。
2.2 BM 模块上电需要时间进行配置当配置完成进入就绪时BM 模块会主动给 MCU 返回一
个 BM 开机状态信息。
深圳市易连物联网有限公司 -4-
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000
3 工作模式
 BM 模块支持两种工作模式,断电模式和不断电休眠模式,用户可以根据自身需求合
理选择工作模式。
用户可以在设计 PCB 的时候,预留两种方式的电路。详情请查看硬件规格书规格书。
3.1模式一:断电模式。
 在此模式下BM 模块完全断电,需要供电才能正常工作,这种模式有利于省电。
3.2模式二:长供电休眠模式。
 此模式下BM 模块需要长供电不会断电关机串口已关闭BM 处于低功耗模式)。
 工作流程:
1、MCU 发送开机指令。
2、MCU 发送正常自定义数据。
3、MCU 发送关机休眠指令。
 自动关机休眠BM 模块 60s 无接收到串口数据时,会自动进入关机休眠模式。
深圳市易连物联网有限公司 -5-
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000
4 蓝牙接口(数据)
4.1 默认蓝牙名称ELK
蓝牙名称可通过指令修改,且断电保存。
4.2 UUID 0xF0A0
4.3 广播数据格式
Byte Value 内容
0 0x03 广播 UUID =0xF0A0
1 0x03
2 0xA0 蓝牙广播名称(可通过指令改变该值)
3 0xF0
4 0x04 自定义数据声明
5 0x09 ID注意如果不接入 AILink 超级 APP则该值请不要设
6 0x45 置)
7 0x4C MAC 小端序
8 0x4B 校验和: byte21-byte30 的累加和
9 0x15 用户自定义数据,根据串口数据填入
10 0xFF
11 0x00
12 0x00
13 0x00
14-19
20
21-30
深圳市易连物联网有限公司 -6-
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000
5 BM 模块与 MCU 交互协议
5.1 串口格式
波特率 96008 数据位无校验位1 停止位,无硬流控
5.2 上电
(1) BM30 T1 支持常供电模式、断电模式:
常供电模式下,蓝牙关机进入休眠状态。 60s 无操作、发送关机指令进入休眠模式;
断电模式下,芯片完全断电,需要供电才能正常工作。
(2) 上电要求:
模块在上电时,先给模块上电到正常供电电压,再延迟 1000ms 给 RX/TX 通讯接口发送数据,
请注意上电的电压和文波不要超过限制要求,避免损坏模块。
5.3 设置(获取)指令
 设置类指令。
 开机
 关机
 设置蓝牙名称
 设置 ID
 设置自定义数据
设置类指令格式规范:
Byte Value Description
0 0xA6 包头
Payload 长度(最大 16byte
1 Payload
(1~n)校验和
2 ~n 包尾n+2 不能超过 20
n+1 SUM1~n
n+2 0x6A
包头和包尾是固定的,分别为 0xA6和 0x6A。
检验和是指 byte1 + byte2 + …+byte n 的和,取低位 1 byte。
设置指令里,数据的 Byte 数不能超过 20byte。
为了保证 APP 能完整接收到数据,数据发送间隔需大于 200ms。
深圳市易连物联网有限公司 -7-
电话860755-81773367
邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000
5.3.1 开机指令
BM 模块处于休眠时,需要发送开机指令让其进入工作模式。
格式:
Byte Value Description
0 0xA6 包头
包尾
1 0x02
2 0x1A
3 0x01
4 0x1D
5 0x6A
MCU 开机返回
Byte Value Description
包头
0 0xA6
包尾
1 0x02
2 0x1A
3 0x00
4 0x1C
5 0x6A
深圳市易连物联网有限公司 -8-
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000
5.3.2 关机
BM 接收到 MCU 发送的关机指令后,会进入休眠模式,同时返回关机指令。关机休眠后,不
发送广播数据。
BM 模块 60s 无接收到串口数据时,也会自动关机。
BM 关机后Tx 输出高Rx 浮空输入(注意状态,不要导致漏电)。
MCU 发送的关机指令
Byte Value Description
包头
0 0xA6
包尾
1 0x02
2 0x19
3 0x01
4 0x1C
5 0x6A
BM 关机返回
Byte Value Description
包头
0 0xA6
包尾
1 0x02
2 0x19
3 0x00
4 0x1B
5 0x6A
深圳市易连物联网有限公司 -9-
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000
5.3.3 设置蓝牙名称
MCU 发送的设置蓝牙名称指令
Byte Value Description
0 0xA6 包头
1 0x04 1、蓝牙名称只能设置 3 个字符
2、蓝 牙 名 称 的 参 数 对 应 ASCII 码 表 例 如 蓝 牙 名 称 =123
2 0x01 byte3=0x31byte4=0x32byte5=0x33
Sumbyte1-byte5 的累加和
3 包尾
4
5
6
7 0x6A
BM 返回的设置结果指令
Byte Value Description
0 0xA6 包头
包尾
1 0x02
2 0x01
3 0x00
4 0x03
5 0x6A
深圳市易连物联网有限公司 - 10 -
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000
5.3.4 设置设备 ID
注意:当设备不接入 AILink 超级 APP 时,请不要设置该值。否则您所使用的 APP
无法解析数据。
该数值请联系我司分配。
MCU 发送的设置设备 ID 指令
Byte Value Description
0 0xA6 包头
1 0x04 CID
VID
2 0x1D PID
Sumbyte1-byte5 的累加和
3 包尾
4
5
6
7 0x6A
FC2502 返回的设置 ID 结果指令
Byte Value Description
0 0xA6 包头
包尾
1 0x02
2 0x1D
3 0x00
4 0x1F
5 0x6A
深圳市易连物联网有限公司 - 11 -
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000
5.3.5 自定义数据传输
MCU 可通过该指令BM 将数据通过广播的格式,将自定义数据传输到 APP。为了保证
APP 能完整接收到数据,自定义数据的设置间隔需大于 200ms。
MCU 发送的设置自定义数据指令
Byte Value Description
0 0xA6 包头
长度
1 0x0B 类型
默认 0x00
2 0x03 默认 0x00
默认 0x00
3 默认 0x00
默认 0x00
4 默认 0x00
默认 0x00
5 默认 0x00
默认 0x00
6 默认 0x00
Sum该值为 byte1 到 byte12 的累加和)
7 包尾
8
6
10
11
12
13
14 0x6A
BM 返回的结果:
Byte Value Description
包头
0 0xA6 Payload 长度
1 0x02 包尾
2 0x03 Payload
3 0x00
4 0x05
5 0x6A
深圳市易连物联网有限公司 - 12 -
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000
6 AILINK 产品接入介绍
BM30 支持 AILINK 产品的接入,只需根据协议更改 ID 和自定义数据即可。
6.1 体脂秤
6.1.1 工作流程
1. 设备上电
2. 唤醒模块 (断电模式则供电,休眠模式则发开机指令)
3. 设置模块的 IDCID、VID、PID 联系我司分配),该值模块断电保存。
4. 设置模块蓝牙名称(选设),该值模块断电保存。
5. 发送体重阻抗数据。
6. 发送关机指令(或者直接断模块电)。
6.1.2 发送测量数据
Byte Value Description
包头
0 0xA6
测量数据
1 0x0B serial number 数据流水号 ,串口每发一组新数据,数据+1 ,达到最
大值则从零开始加
2 0x03 测量标识符
0x00 :开始测试
3 0x00 :正在测量体重 (此时阻抗数值为 0
0x01 :正在测量阻抗(此时阻抗数值为 0
4 0x02 :阻抗测量成功
0x03 :阻抗测量失败(此时阻抗数值为 0xFFFF
0xFF :测试结束
5 数据属性
Bit7 :身高单位 0=cm 1=FT
Bit6-3体重单位
深圳市易连物联网有限公司 - 13 -
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000
6-7 0000kg
0001
8-9 0100st:lb
10 0110lb
11-12 Bit2-1体重小数点
00 :无小数点
13 01 : 1 个小数点
10 2 个小数点
14 0x6A 11 3 个小数点
Bit0 :重量类型
0实时重量1稳定重量
体重,大端序
最高位 =0 :正重量
最高位 = 1 :负重量
例如byte6 =0x80byte7=0x64 ,则重量为 -100
Byte6 =0x00byte7=0x64 ,则重量为 100
备注:对于 STLB 单位,需要把数值转为 LB但是单位需要声明
为 ST:LB .
阻抗,大端序
体脂秤算法 ID 编号,需联系我司分配。
身高值,大端序 ,精度 0.1
无温度测量,则该值为 0xFFFF
Sum该值为 byte1 到 byte12 的累加和)
包尾
BM 返回的接收:
Byte Value Description
包头
0 0xA6 Payload 长度
1 0x02 包尾
2 0x03 Payload
3 0x00
4 0x05
5 0x6A
深圳市易连物联网有限公司 - 14 -
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000
6.1.3 应用实例
(1) 体重、阻抗测量失败的工作流程:
1 开机指令
MCU 发→◇A6 02 1A 01 1D 6A □
MCU 收←◆A6 02 1A 00 1C 6A
2 设置 CID VID PID 信息(必设,具体值请联系我司获取)
MCU 发→◇A6 04 1D 01 03 02 27 6A □
MCU 收←◆A6 02 1D 00 1F 6A
3 开始测量,实时体重=0.0kg,阻抗=0算法 ID=01
MCU 发→◇A6 0B 03 01 00 02 00 00 00 00 01 FF FF 10 6A □
MCU 收←◆A6 02 03 00 05 6A
4 正在测量体重,实时体重=25.0kg,阻抗=0算法 ID=01
MCU 发→◇A6 0B 03 02 00 02 00 FA 00 00 01 FF FF 0B 6A □
MCU 收←◆A6 02 03 00 05 6A
5 正在测量体重,实时体重=50.0kg,阻抗=0算法 ID=01
MCU 发→◇A6 0B 03 03 00 02 01 F4 00 00 01 FF FF 07 6A □
MCU 收←◆A6 02 03 00 05 6A
6 正在测量体重,稳定体重=50.0kg,阻抗=0算法 ID=01
MCU 发→◇A6 0B 03 04 00 03 01 F4 00 00 01 FF FF 09 6A □
MCU 收←◆A6 02 03 00 05 6A
7 正在测量阻抗,稳定体重=50.0kg,阻抗=0算法 ID=01
MCU 发→◇A6 0B 03 05 01 03 01 F4 00 00 01 FF FF 0B 6A □
MCU 收←◆A6 02 03 00 05 6A
8 阻抗测量失败,稳定体重=50.0kg,阻抗=0算法 ID=01
MCU 发→◇A6 0B 03 06 03 03 01 F4 00 00 01 FF FF 0E 6A □
MCU 收←◆A6 02 03 00 05 6A
9 测量结束,稳定体重=50.0kg,阻抗=0算法 ID=01
MCU 发→◇A6 0B 03 07 FF 03 01 F4 00 00 01 FF FF 0B 6A □
MCU 收←◆A6 02 03 00 05 6A
10 关机指令
MCU 发→◇A6 02 19 01 1C 6A □
MCU 收←◆A6 02 19 00 1B 6A
深圳市易连物联网有限公司 - 15 -
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000
(2) 体重、阻抗测量成功的工作流程:
11 开机指令
MCU 发→◇A6 02 1A 01 1D 6A □
MCU 收←◆A6 02 1A 00 1C 6A
12 设置 CID VID PID 信息(必设,具体值请联系我司获取)
MCU 发→◇A6 04 1D 01 03 02 27 6A □
MCU 收←◆A6 02 1D 00 1F 6A
13 开始测量,实时体重=0.0kg,阻抗=0算法 ID=01
MCU 发→◇A6 0B 03 01 00 02 00 00 00 00 01 FF FF 10 6A □
MCU 收←◆A6 02 03 00 05 6A
14 正在测量体重,实时体重=25.0kg,阻抗=0算法 ID=01
MCU 发→◇A6 0B 03 02 00 02 00 FA 00 00 01 FF FF 0B 6A □
MCU 收←◆A6 02 03 00 05 6A
15 正在测量体重,实时体重=50.0kg,阻抗=0算法 ID=01
MCU 发→◇A6 0B 03 03 00 02 01 F4 00 00 01 FF FF 07 6A □
MCU 收←◆A6 02 03 00 05 6A
16 正在测量体重,稳定体重=50.0kg,阻抗=0算法 ID=01
MCU 发→◇A6 0B 03 04 00 03 01 F4 00 00 01 FF FF 09 6A □
MCU 收←◆A6 02 03 00 05 6A
17 正在测量阻抗,稳定体重=50.0kg,阻抗=0算法 ID=01
MCU 发→◇A6 0B 03 05 01 03 01 F4 00 00 01 FF FF 0B 6A □
MCU 收←◆A6 02 03 00 05 6A
18 阻抗测量成功,稳定体重=50.0kg,阻抗=560算法 ID=01
MCU 发→◇A6 0B 03 06 02 03 01 F4 02 30 01 FF FF 3F 6A □
MCU 收←◆A6 02 03 00 05 6A
19 测量结束,稳定体重=50.0kg,阻抗=560算法 ID=01
MCU 发→◇A6 0B 03 07 FF 03 01 F4 02 30 01 FF FF 3D 6A □
MCU 收←◆A6 02 03 00 05 6A
20 关机指令
MCU 发→◇A6 02 19 01 1C 6A □
MCU 收←◆A6 02 19 00 1B 6A
深圳市易连物联网有限公司 - 16 -
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000
(3) 注意事项:
1 发送间隔MCU 的发送间隔必须要大于 200ms ,发送间隔低于 200ms 会有丢包的可能性。
2 上电要求:模块在上电时,先给模块上电到正常供电电压,再延迟 1000ms 给 RX/TX 通
讯接口发送数据。
3 MCU 发送指令中流水号需要变化,流水号不变化 APP 会认为是同一条指令。
如果担心数据丢包可以发送多条流水号相同的指令,流水号
4 MCU 在测量结束后一定要发“测量结束”指令不发送“测量结束”指令APP 不会保存
当次的数据。
5 APP 逻辑:
1) APP 接收到“开始测量”的指令,进入测量模式;接收到“测量结束”的指令,结束测
量、记录数据。
2) APP 判断“开始测量”“结束测量”这两条指令来开始、结束测量,中间的数据不影响
可以重复发送。
3) APP 根据流水号判断是不是同一条数据;如果 APP 接收到相同流水号的数据,只会取第
一条指令的数据。
4) APP 判断流水号不一致,就是不同的数据;流水号不一定是递增的。
5) 如果要连发两条测量指令,那测量指令的流水号要一样。
(4) MCU 判断/等待 蓝牙 UART 回复:
1 MCU 发送指令给蓝牙模块后,如果 MCU 超时没有收到模块回复,建议 MCU 重复发送指令
2~3 次或延长等待时间如果还是不行MCU 不再等待模块回复,开始发送称重数据指令。
深圳市易连物联网有限公司 - 17 -
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000
7 自定义说明
8 联系我们
深圳市易连物联网有限公司
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室
Tel: +860755-81773367
Email:hw@elinkthings.com
Web: www.elinkthings.com
9 附录
深圳市易连物联网有限公司 - 18 -
电话860755-81773367 邮箱hw@elinkthings.com
地址:深圳市宝安区西乡街道银田工业区侨鸿盛文化创意园写字楼 A 栋五层 502 室 邮编518000

View File

@ -0,0 +1,135 @@
健康秤 APP 接入协议-广播体脂秤
版本历史
历史版 修改内容 版本日期
本.
初始版本 2014-12-11
REV1.0 把公司 ID 改为产品 ID 2015-5-8
REV1.1 删减没有用到的功能 2015-7-21
REV1.2 修订广播体脂秤协议 2017-11-28
REV2.0
Rev 1.2 第 2 页 /共 5 页
健康秤 APP 接入协议-广播体脂秤
1 协议概述
本协议文档,仅仅关注蓝牙与 APP 交互的协议的定制,涉及到底层与蓝牙交互,
如需要发送的命令(如广播 0x1000005c, 连接通讯 0x1000005a)等需要参考蓝牙
模块数据手册。
蓝牙模块的通信接口(如 UART 或 SPI协议请参考蓝牙模块数据手册。
2 协议帧格式
设备上传数据帧格式:
说明 起始位 版本号 数据域长度 数据域正文 校验位
CS
代码 0xCA Ver Len DATA 1
字节 1 1 1 可变
帧格式字段说明:
字段名称 说明
起始位 命令均以 0xCA 开头,以此来判断是否是一帧的开始
版本号 帧的版本号,用以在后续帧扩展的时使用。
数据域长度 用以指出数据域正文的长度 一共有多少个字节
数据域正文 这里用以保存所有与本设备有关的信息和携带的数据
校验位 用于蓝牙与 APP 之间通信的校验
(“版本号开始到数据域正文结束”按位异或得到的值”)
注:校验位 CS 计算公式:
发送方从发送数据的“版本号开始到数据域正文结束”按位异或得到的值存放在 CS 位;
Rev 1.2 第 3 页 /共 5 页
健康秤 APP 接入协议-广播体脂秤
2.1 广播数据包
Byte Value Description
0 0xCA 起始位
1 0x20 版本号V2.0
2 0x0B 数据域长度
0x-- 产品 ID
3-6 0x01 设备类型 0-体重秤 1-体脂秤
7 0x-- 消息体属性,定义参照表 1
8 注:为 0 则后续测量流水号,重量及电阻均为 0
测量流水号
9 0x-- 从 1 开始流水;每次测量后结果加 1到 255 后
又从 1 开始流水0 保留
10 0x-- 重量高字节
11 0x 重量低字节
12 0x00
13 0x00 电阻高字节(精度 0.1)
14 0x00 电阻低字节
校验码
表1
消息体 Bit7 Bit6 Bit5 Bit4 Bit3 Bit2 Bit1 Bit0
单位选择 小数点 数据类型
属性 保留
Bit4-3 单位选
00 = KG(默认)
01 = 斤
10 = LB
11 =
ST:LB
Bit2-1 小数位数选择
00 = 1 位小数(默认)
01 = 0 位小数
10 = 2 位小数
保留 1 位小数,则上传的体重值为实际值的 10 倍,保留 2 位小数,则上传的体重值为实际
值的 100 倍,以此类推。
Bit0 数据类型 消息体属性 的小数位
0 = 广播数据
1 = 测量数据
关于单位和小数位数的说明APP 显示的小数位数是由秤决定,即由
数位决定,默认单位是 kg小数位 1 位。
举例:
Rev 1.2 第 4 页 /共 5 页
健康秤 APP 接入协议-广播体脂秤
项目 消息体属性 重量高字节 重量低字节
50kg1 位小数,非锁定 0x00 0x01 0xF4
50 斤1 位小数,非锁定 0x08 0x01 0xF4
50LB1 位小数,非锁定 0x10 0x01 0xF4
4:13 ST:LB1 位小数1非 0x00 0x04 0x82
注意1.ST:LB 单位默认约定ST 字节固定为整数LB 字节固定为 1 位小数。此时的小数点
选择位表示的是转换成其它单位后的小数位。
Rev 1.2 第 5 页 /共 5 页