如何从Movesense传感器广播包数据中提取加速度计与心率数据
Movesense传感器广播包解析指南
1. 核心字段定位
你提供的广播包中,所有自定义测量数据都存储在manufacturerData的19字节缓冲区里,服务UUIDfe06是Movesense自定义广播的标准标识。
2. 厂商数据固定前缀解析
缓冲区前3字节是固定识别标识:
- 第0-1字节:
0x9f 0x0为小端序的Suunto厂商ID(0x009F),是Movesense设备的标准厂商标识 - 第2字节:
0xff标识当前广播包为自定义测量数据类型
3. 加速度计数据提取(默认配置下)
默认广播配置中,加速度计数据为3个连续的16位有符号小端序整数,对应X/Y/Z三轴,偏移位置为第3-8字节:
- X轴:第3字节(低8位)+第4字节(高8位),组合原始值为
(0x0d << 8) | 0xd4 = 3540 - Y轴:第5字节(低8位)+第6字节(高8位),组合原始值为
(0x00 << 8) | 0x00 = 0 - Z轴:第7字节(低8位)+第8字节(高8位),组合原始值为
(0x24 << 8) | 0xed = 9453
换算注意:加速度实际值需要和你配置的传感器量程对应,16位有符号原始值的换算系数规则为:量程范围/32768,例如±8g量程下换算系数为8/32768≈0.000244g/LSB,你可以根据自己的量程配置调整换算系数
4. 心率数据提取(默认配置下)
默认配置中心率数据为8位无符号整数,存储在第15字节:
- 原始值为
0x45,转换为十进制是69,即当前心率为69次/分钟 - 第16-17字节
0x95 0x88为小端序的RR间期数据(如果配置了该字段),单位为毫秒
5. 注意事项
- 以上偏移量仅适用于Movesense默认的加速度+心率广播配置,如果你修改了自定义广播的载荷结构,需要按照你定义的字段顺序调整偏移量
- 所有多字节数值都采用小端序存储,解析时注意不要搞反高低字节顺序
内容的提问来源于stack exchange,提问作者statspro1
相关产品推荐
相关产品推荐

