负载格式
上行数据包解析
追踪器数据协议提供了不同的数据包来对应不同的信息,每个数据包的字节数可能不同。帧结构如下图所示。帧内容以大端字节序发送。
| 数据 ID | 数据值 |
|---|---|
| 1 字节 | 50 字节(最大) |
Data ID: 功能编号。
Data Value: 位置、传感器数据和其他信息。
上电数据包 (0x27)
上电数据包由设备在启动后立即发送。它包含当前的配置参数和设备状态。帧 ID 为 0x27,总长度为 46 字节。
| 0x27 | Byte2 | Byte3~4 | Byte5~6 | Byte7 | Byte8 | Byte9~10 | Byte11~12 |
|---|---|---|---|---|---|---|---|
| ID | 电池电量 | 软件版本 | 硬件版本 | 工作模式 | 定位策略 | 心跳间隔 | 周期模式上行间隔 |
| Byte13~14 | Byte15 | Byte16 | Byte17 | Byte18 | Byte19~20 | Byte21~22 |
|---|---|---|---|---|---|---|
| 事件模式上行间隔 | 使能三轴加速度计 | 使能拆卸告警 | GNSS 扫描超时 | 使能运动事件 | 三轴运动阈值 | 运动时上行间隔 |
| Byte23 | Byte24~25 | Byte26 | Byte27~28 | Byte29 | Byte30 | Byte31~46 |
|---|---|---|---|---|---|---|
| 使能静止事件 | 静止超时 | 使能震动事件 | 三轴震动阈值 | iBeacon 扫描超时 (s) | UUID 过滤有效字节数 | UUID 过滤器 (16 字节) |
原始负载示例
27 56 0100 0101 01 08 02d0 003c 003c 00 01 3c 00 001e 0005 00 0168 00 012c 03 00 00000000000000000000000000000000
| 字节 | 字段 | 类型 | 原始数据 | 说明 |
|---|---|---|---|---|
| 1 | 帧 ID | uint8 | 27 | 27 为数据包 ID |
| 2 | 电池电量 | uint8 | 56 | 0x56 = 86(DEC)电池电量为 86% |
| 3~4 | 软件版本 | uint16 | 0100 | 0x0100 = v1.0软件版本为 v1.0 |
| 5~6 | 硬件版本 | uint16 | 0101 | 0x0101 = v1.1硬件版本为 v1.1 |
| 7 | 工作模式 | uint8 | 01 | 01 = 周期模式00: 待机模式01: 周期模式02: 事件模式 |
| 8 | 定位策略 | uint8 | 00 | 07 = 0x07,表示设备使用 Bluetooth + Wi-Fi + GNSS 定位策略 00: 仅 GNSS01: 仅 Wi-Fi02: Wi-Fi + GNSS03: GNSS + Wi-Fi04: 仅 Bluetooth05: Bluetooth + Wi-Fi06: Bluetooth + GNSS07: Bluetooth + Wi-Fi + GNSS08: GNSS + Bluetooth |
| 9~10 | 心跳间隔 | uint16 | 02d0 | 0x02D0 = 720 分钟 |
| 11~12 | 周期模式上行间隔 | uint16 | 003c | 0x003C = 60 分钟 |
| 13~14 | 事件模式上行间隔 | uint16 | 003c | 0x003C = 60 分钟 |
| 15 | 使能三轴加速度计 | uint8 | 00 | 00: 禁用01: 使能 |
| 16 | 使能拆卸告警 | uint8 | 01 | 00: 禁用01: 使能 |
| 17 | GNSS 扫描超时 | uint8 | 3c | 0x3C = 60 秒 |
| 18 | 使能运动事件 | uint8 | 00 | 00: 禁用01: 使能 |
| 19~20 | 三轴运动阈值 | uint16 | 001e | 0x001e = 30 mg |
| 21~22 | 运动时上行间隔 | uint16 | 0005 | 0x05 = 5 分钟 |
| 23 | 使能静止事件 | uint8 | 00 | 0x00: 禁用0x01: 使能 |
| 24~25 | 静止超时 | uint16 | 0168 | 0x0168 = 360 分钟 |
| 26 | 使能震动事件 | uint8 | 00 | 00: 禁用01: 使能 |
| 27~28 | 三轴震动阈值 | uint16 | 012c | 0x012c = 300 mg |
| 29 | iBeacon 扫描超时 (s) | uint8 | 03 | 0x03 = 3 秒 |
| 30 | UUID 过滤有效字节数 | uint8 | 00 | UUID 过滤器中有效字节的数量 (0–16) |
| 31~46 | UUID 过滤器 | 16 bytes | 0000000000000000 0000000000000000 | 16 字节 Bluetooth UUID 过滤器。只有前 N 个字节(由 byte30 定义)有效 |
周期模式数据包 (0x28)
周期模式参数数据包包含当前工作模式的配置。帧 ID 为 0x28,总长度为 30 字节。
| 0x28 | Byte2 | Byte3 | Byte4~5 | Byte6~7 | Byte8~9 | Byte10 | Byte11 | Byte12 | Byte13 | Byte14 | Byte15~30 |
|---|---|---|---|---|---|---|---|---|---|---|---|
| ID | 工作模式 | 定位策略 | 心跳间隔 | 上行间隔 | 事件模式上行间隔 | 使能三轴加速度计 | 使能拆卸告警 | GNSS 扫描超时 | iBeacon 扫描超时 | UUID 过滤有效字节数 | UUID 过滤器 (16 字节) |
原始负载示例
28 01 07 02d0 003c 003c 01 00 3c 0a 10 00000000000000000000000000000000
| 字节 | 字段 | 类型 | 原始数据 | 说明 |
|---|---|---|---|---|
| 1 | 帧 ID | uint8 | 28 | 28 为数据包 ID |
| 2 | 工作模式 | uint8 | 01 | 01 = 周期模式00: 待机模式01: 周期模式02: 事件模式 |
| 3 | 定位策略 | uint8 | 07 | 07 = 0x07,表示设备使用 Bluetooth + Wi-Fi + GNSS 定位策略 00: 仅 GNSS01: 仅 Wi-Fi02: Wi-Fi + GNSS03: GNSS + Wi-Fi04: 仅 Bluetooth05: Bluetooth + Wi-Fi06: Bluetooth + GNSS07: Bluetooth + Wi-Fi + GNSS08: GNSS + Bluetooth |
| 4~5 | 心跳间隔 | uint16 | 02d0 | 0x02D0 = 720 分钟 |
| 6~7 | 上行间隔 | uint16 | 003c | 0x003C = 60 分钟 |
| 8~9 | 事件模式上行间隔 | uint16 | 003c | 0x003C = 60 分钟 当没有事件触发时,将每 60 分钟上传一次数据。 |
| 10 | 使能三轴加速度计 | uint8 | 01 | 00: 禁用01: 使能 |
| 11 | 使能拆卸告警 | uint8 | 00 | 00: 禁用01: 使能 |
| 12 | GNSS 扫描超时 | uint8 | 3c | 0x3C = 60 秒 |
| 13 | iBeacon 扫描超时 | uint8 | 0a | 0x0A = 10 秒 |
| 14 | UUID 过滤有效字节数 | uint8 | 10 | UUID 过滤器中有效字节的数量 (0–16) |
| 15~30 | UUID 过滤器 | 16 bytes | 0000000000000000 0000000000000000 | 16 字节 Bluetooth UUID 过滤器。只有前 N 个字节(由 byte14 定义)有效 |
事件模式数据包 (0x29)
事件参数数据包包含运动、静止和震动事件的配置设置。帧 ID 为 0x29,总长度为 12 字节。
| 0x29 | Byte2 | Byte3~4 | Byte5~6 | Byte7 | Byte8~9 | Byte10 | Byte11~12 |
|---|---|---|---|---|---|---|---|
| ID | 使能运动事件 | 三轴运动阈值 | 运动时上行间隔 | 使能静止事件 | 静止超时 | 使能震动事件 | 三轴震动阈值 |
原始负载示例
29 01 0064 001e 01 012c 00 012c
| 字节 | 字段 | 类型 | 原始数据 | 说明 |
|---|---|---|---|---|
| 1 | 帧 ID | uint8 | 29 | 29 为数据包 ID |
| 2 | 使能运动事件 | uint8 | 01 | 00: 禁用01: 使能 |
| 3~4 | 三轴运动阈值 | uint16 | 0064 | 0x0064 = 100 mg |
| 5~6 | 运动时上行间隔 | uint16 | 001e | 0x001E = 30 分钟 |
| 7 | 使能静止事件 | uint8 | 01 | 0x00: 禁用0x01: 使能 |
| 8~9 | 静止超时 | uint16 | 012c | 0x012C = 300 分钟 |
| 10 | 使能震动事件 | uint8 | 00 | 0x00: 禁用0x01: 使能 |
| 11~12 | 三轴震动阈值 | uint16 | 0000 | 0x012c = 300 mg |
心跳数据包 (0x2A)
心跳数据包由设备周期性发送,用于上报当前状态。它包含基本的设备信息和传感器状态。帧 ID 为 0x2A,总长度为 6 字节。
| 0x2A | Byte2 | Byte3 | Byte4 | Byte5 | Byte6 |
|---|---|---|---|---|---|
| ID | 电池电量 | 工作模式 | 定位策略 | 使能三轴加速度计 | 使能拆卸告警 |
原始负载示例
2a 56 01 07 01 00
| 字节 | 字段 | 类型 | 原始数据 | 说明 |
|---|---|---|---|---|
| 1 | 帧 ID | uint8 | 2A | 2A 为数据包 ID |
| 2 | 电池电量 | uint8 | 56 | 0x56 = 86(DEC)电池电量为 86% |
| 3 | 工作模式 | uint8 | 01 | 01 = 周期模式00: 待机模式01: 周期模式02: 事件模式 |
| 4 | 定位策略 | uint8 | 07 | 07 = 0x07,表示设备使用 Bluetooth + Wi-Fi + GNSS 定位策略 00: 仅 GNSS01: 仅 Wi-Fi02: Wi-Fi + GNSS03: GNSS + Wi-Fi04: 仅 Bluetooth05: Bluetooth + Wi-Fi06: Bluetooth + GNSS07: Bluetooth + Wi-Fi + GNSS08: GNSS + Bluetooth |
| 5 | 使能三轴加速度计 | uint8 | 01 | 00: 禁用01: 使能 |
| 6 | 使能拆卸告警 | uint8 | 00 | 00: 禁用01: 使能 |
GNSS 位置数据包(加速度计开启,0x2B)
GPS 位置数据包包含 GNSS 定位数据以及加速度计和电池信息。帧 ID 为 0x2B,总长度为 23 字节。
| 0x2B | Byte2~3 | Byte4 | Byte5~8 | Byte9~10 | Byte11~12 | Byte13~14 | Byte15~18 | Byte19~22 | Byte23 |
|---|---|---|---|---|---|---|---|---|---|
| ID | 事件状态 | 运动 ID | UTC 时间戳 | 加速度计 X | 加速度计 Y | 加速度计 Z | 经度 | 纬度 | 电池电量 |
原始负载示例
2b 0100 00 694b3dc6 032f fffe 0241 06ca5098 01587ee4 62
| 字节 | 字段 | 类型 | 原始数据 | 说明 |
|---|---|---|---|---|
| 1 | 帧 ID | uint8 | 2B | 2B 为数据包 ID |
| 2~3 | 事件状态 | uint16 | 0100 | 0x0100 = 拆卸事件位 0: false 位 1: 开始运动事件 位 2: 结束运动事件 位 3: 静止事件 位 4: 震动事件 位 5: 温度事件 位 6: 光照事件 位 7: SOS 事件 位 8: 单击事件 位 9: 拆卸事件 转换为十六进制: 0x0001: 开始运动事件0x0002: 结束运动事件0x0004: 静止事件0x0008: 震动事件0x0010: 温度事件0x0020: 光照事件0x0040: SOS 事件0x0080: 单击事件0x0100: 拆卸事件 |
| 4 | 运动 ID | uint8 | 00 | 0: 不需要记录为特定运动。1~255: 在相同运动状态下上报的定位数据(相同 ID 表示同一次运动) |
| 5~8 | UTC 时间戳 | uint32 | 694b3dc6 | 0x694B3DC6 = 1766538694(DEC) 秒转换为 UTC 时间: 2025-12-24 01:11:34 |
| 9~10 | 加速度计 X | int16 | 032f | 0x032F = 815 mg |
| 11~12 | 加速度计 Y | int16 | fffe | 0xFFFE = -2 mg |
| 13~14 | 加速度计 Z | int16 | 0241 | 0x0241 = 577 mg |
| 15~18 | 经度 | uint32 | 06ca5098 | 0x06CA5098 = 113,922,200 → 113.922200° |
| 19~22 | 纬度 | uint32 | 01587ee4 | 0x01587EE4 = 22,576,868 → 22.576868° |
| 23 | 电池电量 | uint8 | 62 | 0x62 = 98% |
Wi-Fi 定位数据包(加速度计开启,0x2C)
Wi-Fi 定位数据包包含 Wi-Fi 扫描结果以及加速度计和电池信息。帧 ID 为 0x2C,总长度会根据扫描到的 Wi-Fi 接入点数量动态变化(23 + (n-1) * 7 字节,其中 n 为 MAC-RSSI 对的数量)。
| 0x2C | Byte2~3 | Byte4 | Byte5~8 | Byte9~10 | Byte11~12 | Byte13~14 | Byte15 | Byte16 | Byte17+(n-1)*7 ~ Byte23+(n-1)*7 |
|---|---|---|---|---|---|---|---|---|---|
| ID | 事件状态 | 运动 ID | UTC 时间戳 | 加速度计 X | 加速度计 Y | 加速度计 Z | 电池电量 | MAC-RSSI 计数 (n) | MAC-RSSI 对 (n) |
MAC-RSSI 格式
| Byte0~5 | Byte6 |
|---|---|
| MAC 地址(6 字节) | RSSI (int8) |
原始载荷示例
2c 0000 00 69685f82 0004 0015 03e5 64 05 107c61841bf8 e4 3447d468f627 e1 a4ba70bc229d d3 9483c46d5dfc d2 4c10d567b467 d0
| Byte | 值 | 类型 | 原始数据 | 描述 |
|---|---|---|---|---|
| 1 | 帧 ID | uint8 | 2C | 2C 是数据包 ID |
| 2~3 | 事件状态 | uint16 | 0000 | 0x0000 = 未触发任何事件 Bit 0: false Bit 1: 开始移动事件 Bit 2: 结束移动事件 Bit 3: 静止事件 Bit 4: 震动事件 Bit 5: 温度事件 Bit 6: 光照事件 Bit 7: SOS 事件 Bit 8: 单击事件 Bit 9: 拆卸事件 转换为十六进制: 0x0001: 开始移动事件0x0002: 结束移动事件0x0004: 静止事件0x0008: 震动事件0x0010: 温度事件0x0020: 光照事件0x0040: SOS 事件0x0080: 单击事件0x0100: 拆卸事件 |
| 4 | 运动 ID | uint8 | 00 | 0: 不需要记录为特定运动。1~255: 在相同运动状态下上报的定位数据(相同 ID 表示相同运动) |
| 5~8 | UTC 时间戳 | uint32 | 69685f82 | 0x69685F82 = 1768447874(DEC) 秒转换为 UTC 时间: 2026-01-15 03:31:14 |
| 9~10 | 加速度计 X | int16 | 0004 | 0x0004 = 4 mg |
| 11~12 | 加速度计 Y | int16 | 0015 | 0x0015 = 21 mg |
| 13~14 | 加速度计 Z | int16 | 03e5 | 0x03E5 = 997 mg |
| 15 | 电池电量 | uint8 | 64 | 0x64 = 100% |
| 16 | MAC-RSSI 计数 (n) | uint8 | 05 | 检测到的 Wi-Fi 接入点数量(n = 5) |
| 17~23 | MAC-RSSI 对 1 | 7 bytes | 107c61841bf8 e4 | MAC: 10:7C:61:84:1B:F8, RSSI: 0xE4 = -28 (int8) |
| 24~30 | MAC-RSSI 对 2 | 7 bytes | 3447d468f627 e1 | MAC: 34:47:D4:68:F6:27, RSSI: 0xE1 = -31 (int8) |
| 31~37 | MAC-RSSI 对 3 | 7 bytes | a4ba70bc229d d3 | MAC: A4:BA:70:BC:22:9D, RSSI: 0xD3 = -45 (int8) |
| 38~44 | MAC-RSSI 对 4 | 7 bytes | 9483c46d5dfc d2 | MAC: 94:83:C4:6D:5D:FC, RSSI: 0xD2 = -46 (int8) |
| 45~51 | MAC-RSSI 对 5 | 7 bytes | 4c10d567b467 d0 | MAC: 4C:10:D5:67:B4:67, RSSI: 0xD0 = -48 (int8) |
BLE 定位数据包(加速度计开启,0x2D)
BLE 定位数据包包含蓝牙扫描结果以及加速度计和电池信息。帧 ID 为 0x2D,总长度会根据扫描到的蓝牙设备数量动态变化(23 + (n-1) * 7 字节,其中 n 为 MAC-RSSI 对的数量,最大 n = 5)。
| 0x2D | Byte2~3 | Byte4 | Byte5~8 | Byte9~10 | Byte11~12 | Byte13~14 | Byte15 | Byte16 | Byte17+(n-1)*7 ~ Byte23+(n-1)*7 |
|---|---|---|---|---|---|---|---|---|---|
| ID | 事件状态 | 运动 ID | UTC 时间戳 | 加速度计 X | 加速度计 Y | 加速度计 Z | 电池电量 | MAC-RSSI 计数 (n) | MAC-RSSI 对 (n) |
MAC-RSSI 格式
| Byte0~5 | Byte6 |
|---|---|
| MAC 地址(6 字节) | RSSI (int8) |
原始载荷示例
2d 0000 00 69686032 fff9 0015 03df 64 05 c30000564b3b ce c20303003f00 ce 588c81a0fbf2 cc c20303003f03 cb c30000564af2 c7
| Byte | 值 | 类型 | 原始数据 | 描述 |
|---|---|---|---|---|
| 1 | 帧 ID | uint8 | 2D | 2D 是数据包 ID |
| 2~3 | 事件状态 | uint16 | 0000 | 0x0000 = 未触发任何事件 Bit 0: false Bit 1: 开始移动事件 Bit 2: 结束移动事件 Bit 3: 静止事件 Bit 4: 震动事件 Bit 5: 温度事件 Bit 6: 光照事件 Bit 7: SOS 事件 Bit 8: 单击事件 Bit 9: 拆卸事件 转换为十六进制: 0x0001: 开始移动事件0x0002: 结束移动事件0x0004: 静止事件0x0008: 震动事件0x0010: 温度事件0x0020: 光照事件0x0040: SOS 事件0x0080: 单击事件0x0100: 拆卸事件 |
| 4 | 运动 ID | uint8 | 00 | 0: 不需要记录为特定运动。1~255: 在相同运动状态下上报的定位数据(相同 ID 表示相同运动) |
| 5~8 | UTC 时间戳 | uint32 | 69686032 | 0x69686032 = 1768448050(DEC) 秒转换为 UTC 时间: 2026-01-15 03:34:10 |
| 9~10 | 加速度计 X | int16 | fff9 | 0xFFF9 = -7 mg |
| 11~12 | 加速度计 Y | int16 | 0015 | 0x0015 = 21 mg |
| 13~14 | 加速度计 Z | int16 | 03df | 0x03DF = 991 mg |
| 15 | 电池电量 | uint8 | 64 | 0x64 = 100% |
| 16 | MAC-RSSI 计数 (n) | uint8 | 05 | 检测到的蓝牙设备数量(n = 5,最大 5) |
| 17~23 | MAC-RSSI 对 1 | 7 bytes | c30000564b3b ce | MAC: C3:00:00:56:4B:3B, RSSI: 0xCE = -50 (int8) |
| 24~30 | MAC-RSSI 对 2 | 7 bytes | c20303003f00 ce | MAC: C2:03:03:00:3F:00, RSSI: 0xCE = -50 (int8) |
| 31~37 | MAC-RSSI 对 3 | 7 bytes | 588c81a0fbf2 cc | MAC: 58:8C:81:A0:FB:F2, RSSI: 0xCC = -52 (int8) |
| 38~44 | MAC-RSSI 对 4 | 7 bytes | c20303003f03 cb | MAC: C2:03:03:00:3F:03, RSSI: 0xCB = -53 (int8) |
| 45~51 | MAC-RSSI 对 5 | 7 bytes | c30000564af2 c7 | MAC: C3:00:00:56:4A:F2, RSSI: 0xC7 = -57 (int8) |
GNSS 定位数据包(加速度计关闭,0x2E)
GNSS 定位数据包包含 GPS 定位数据以及电池信息。帧 ID 为 0x2E,总长度为 17 字节。
| 0x2E | Byte2~3 | Byte4 | Byte5~8 | Byte9~12 | Byte13~16 | Byte17 |
|---|---|---|---|---|---|---|
| ID | 事件状态 | 运动 ID | UTC 时间戳 | 经度 | 纬度 | 电池电量 |
原始载荷示例
2e 0100 01 64f1a2b3 06ca5098 01587ee4 62
| Byte | 值 | 类型 | 原始数据 | 描述 |
|---|---|---|---|---|
| 1 | 帧 ID | uint8 | 2E | 2E 是数据包 ID |
| 2~3 | 事件状态 | uint16 | 0000 | 0x0000 = 未触发任何事件 Bit 0: false Bit 1: 开始移动事件 Bit 2: 结束移动事件 Bit 3: 静止事件 Bit 4: 震动事件 Bit 5: 温度事件 Bit 6: 光照事件 Bit 7: SOS 事件 Bit 8: 单击事件 Bit 9: 拆卸事件 转换为十六进制: 0x0001: 开始移动事件0x0002: 结束移动事件0x0004: 静止事件0x0008: 震动事件0x0010: 温度事件0x0020: 光照事件0x0040: SOS 事件0x0080: 单击事件0x0100: 拆卸事件 |
| 4 | 运动 ID | uint8 | 00 | 0: 不需要记录为特定运动。1~255: 在相同运动状态下上报的定位数据(相同 ID 表示相同运动) |
| 5~8 | UTC 时间戳 | uint32 | 64f1a2b3 | 0x64f1a2b3 = 1693557427(DEC) 秒转换为 UTC 时间: 2023-09-01 08:37:07 |
| 9~12 | 经度 | uint32 | 06ca5098 | 0x06CA5098 = 113,922,200 → 113.922200° |
| 13~16 | 纬度 | uint32 | 01587ee4 | 0x01587EE4 = 22,576,868 → 22.576868° |
| 17 | 电池电量 | uint8 | 62 | 0x62 = 98% |
Wi-Fi 定位数据包(加速度计关闭,0x2F)
Wi-Fi 定位数据包包含 Wi-Fi 扫描结果以及电池信息。帧 ID 为 0x2F,总长度会根据扫描到的 Wi-Fi 接入点数量动态变化(17 + (n-1) * 7 字节,其中 n 为 MAC-RSSI 对的数量,最大 n = 5)。
| 0x2F | Byte2~3 | Byte4 | Byte5~8 | Byte9 | Byte10 | Byte11+(n-1)*7 ~ Byte16+(n-1)*7 |
|---|---|---|---|---|---|---|
| ID | 事件状态 | 运动 ID | UTC 时间戳 | 电池电量 | MAC-RSSI 计数 (n) | MAC-RSSI 对 (n) |
MAC-RSSI 格式
| Byte0~5 | Byte6 |
|---|---|
| MAC 地址(6 字节) | RSSI (int8) |
原始载荷示例
2f 0000 00 69685f82 64 05 107c61841bf8 e4 3447d468f627 e1 a4ba70bc229d d3 9483c46d5dfc d2 4c10d567b467 d0
| Byte | 值 | 类型 | 原始数据 | 描述 |
|---|---|---|---|---|
| 1 | 帧 ID | uint8 | 2F | 2F 是数据包 ID |
| 2~3 | 事件状态 | uint16 | 0000 | 0x0000 = 未触发任何事件 Bit 0: false Bit 1: 开始移动事件 Bit 2: 结束移动事件 Bit 3: 静止事件 Bit 4: 震动事件 Bit 5: 温度事件 Bit 6: 光照事件 Bit 7: SOS 事件 Bit 8: 单击事件 Bit 9: 拆卸事件 转换为十六进制: 0x0001: 开始移动事件0x0002: 结束移动事件0x0004: 静止事件0x0008: 震动事件0x0010: 温度事件0x0020: 光照事件0x0040: SOS 事件0x0080: 单击事件0x0100: 拆卸事件 |
| 4 | 运动 ID | uint8 | 00 | 0: 不需要记录为特定运动。1~255: 在相同运动状态下上报的定位数据(相同 ID 表示相同运动) |
| 5~8 | UTC 时间戳 | uint32 | 69685f82 | 0x69685F82 = 1768447874(DEC) 秒转换为 UTC 时间: 2026-01-15 03:31:14 |
| 9 | 电池电量 | uint8 | 64 | 0x64 = 100% |
| 10 | MAC-RSSI 计数 (n) | uint8 | 05 | 检测到的 Wi-Fi 接入点数量(n = 5,最大 5) |
| 11~17 | MAC-RSSI 对 1 | 7 bytes | 107c61841bf8 e4 | MAC: 10:7C:61:84:1B:F8,RSSI: 0xE4 = -28 (int8) |
| 18~24 | MAC-RSSI 对 2 | 7 bytes | 3447d468f627 e1 | MAC: 34:47:D4:68:F6:27,RSSI: 0xE1 = -31 (int8) |
| 25~31 | MAC-RSSI 对 3 | 7 bytes | a4ba70bc229d d3 | MAC: A4:BA:70:BC:22:9D,RSSI: 0xD3 = -45 (int8) |
| 32~38 | MAC-RSSI 对 4 | 7 bytes | 9483c46d5dfc d2 | MAC: 94:83:C4:6D:5D:FC,RSSI: 0xD2 = -46 (int8) |
| 39~45 | MAC-RSSI 对 5 | 7 bytes | 4c10d567b467 d0 | MAC: 4C:10:D5:67:B4:67,RSSI: 0xD0 = -48 (int8) |
BLE 定位数据包(加速度计关闭,0x30)
BLE 定位数据包包含蓝牙扫描结果以及电池信息。帧 ID 为 0x30,总长度会根据扫描到的蓝牙设备数量动态变化(17 + (n-1) * 7 字节,其中 n 为 MAC-RSSI 对的数量,最大 n = 5)。
| 0x30 | Byte2~3 | Byte4 | Byte5~8 | Byte9 | Byte10 | Byte11+(n-1)*7 ~ Byte16+(n-1)*7 |
|---|---|---|---|---|---|---|
| ID | 事件状态 | 运动 ID | UTC 时间戳 | 电池电量 | MAC-RSSI 计数 (n) | MAC-RSSI 对 (n) |
MAC-RSSI 格式
| Byte0~5 | Byte6 |
|---|---|
| MAC 地址(6 字节) | RSSI (int8) |
原始载荷示例
30 0000 00 69686032 64 05 c30000564b3b ce c20303003f00 ce 588c81a0fbf2 cc c20303003f03 cb c30000564af2 c7
| Byte | Value | Type | Raw Data | Description |
|---|---|---|---|---|
| 1 | 帧 ID | uint8 | 30 | 30 是数据包 ID |
| 2~3 | 事件状态 | uint16 | 0000 | 0x0000 = 未触发任何事件 Bit 0: false Bit 1: 开始移动事件 Bit 2: 结束移动事件 Bit 3: 静止事件 Bit 4: 震动事件 Bit 5: 温度事件 Bit 6: 光照事件 Bit 7: SOS 事件 Bit 8: 单击事件 Bit 9: 拆卸事件 转换为十六进制: 0x0001: 开始移动事件0x0002: 结束移动事件0x0004: 静止事件0x0008: 震动事件0x0010: 温度事件0x0020: 光照事件0x0040: SOS 事件0x0080: 单击事件0x0100: 拆卸事件 |
| 4 | 运动 ID | uint8 | 00 | 0: 不需要记录为特定运动。1~255: 在相同运动状态下上报的定位数据(相同 ID 表示相同运动) |
| 5~8 | UTC 时间戳 | uint32 | 69686032 | 0x69686032 = 1768448050(DEC) 秒转换为 UTC 时间: 2026-01-15 03:34:10 |
| 9 | 电池电量 | uint8 | 64 | 0x64 = 100% |
| 10 | MAC-RSSI 计数 (n) | uint8 | 05 | 检测到的蓝牙设备数量(n = 5,最大 5) |
| 11~17 | MAC-RSSI 对 1 | 7 bytes | c30000564b3b ce | MAC: C3:00:00:56:4B:3B,RSSI: 0xCE = -50 (int8) |
| 18~24 | MAC-RSSI 对 2 | 7 bytes | c20303003f00 ce | MAC: C2:03:03:00:3F:00,RSSI: 0xCE = -50 (int8) |
| 25~31 | MAC-RSSI 对 3 | 7 bytes | 588c81a0fbf2 cc | MAC: 58:8C:81:A0:FB:F2,RSSI: 0xCC = -52 (int8) |
| 32~38 | MAC-RSSI 对 4 | 7 bytes | c20303003f03 cb | MAC: C2:03:03:00:3F:03,RSSI: 0xCB = -53 (int8) |
| 39~45 | MAC-RSSI 对 5 | 7 bytes | c30000564af2 c7 | MAC: C3:00:00:56:4A:F2,RSSI: 0xC7 = -57 (int8) |
带加速度计的定位状态数据包 (0x31)
定位状态数据包包含定位状态以及加速度计数据、事件状态和电池信息。帧 ID 为 0x31,总长度为 15 字节。
| 0x31 | Byte2 | Byte3~4 | Byte5~8 | Byte9~10 | Byte11~12 | Byte13~14 | Byte15 |
|---|---|---|---|---|---|---|---|
| ID | 定位状态 | 事件状态 | UTC 时间戳 | 加速度计 X | 加速度计 Y | 加速度计 Z | 电池电量 |
原始载荷示例
31 00 0100 694b3db0 003a 039d fe84 62
| Byte | Value | Type | Raw Data | Description |
|---|---|---|---|---|
| 1 | 帧 ID | uint8 | 31 | 31 是数据包 ID |
| 2 | 定位状态 | uint8 | 00 | 0x00: 定位成功。0x01: GNSS 扫描超时。0x02: Wi-Fi 扫描超时。0x03: Wi-Fi + GNSS 扫描超时。0x04: GNSS + Wi-Fi 扫描超时。0x05: Bluetooth 扫描超时。0x06: Bluetooth + Wi-Fi 扫描超时。0x07: Bluetooth + GNSS 扫描超时。0x08: Bluetooth + Wi-Fi + GNSS 扫描超时。0x09: 位置服务器解析 GNSS 位置失败。0x0A: 位置服务器解析 Wi-Fi 位置失败。0x0B: 位置服务器解析 Bluetooth 位置失败。0x0C: 由于精度较差导致位置解析失败。0x0D: 时间同步失败。0x0E: 由于星历(Almanac)过旧导致失败。0x0F: GNSS + Bluetooth 扫描超时。 |
| 3~4 | 事件状态 | uint16 | 0000 | 0x0000 = 未触发任何事件 Bit 0: false Bit 1: 开始移动事件 Bit 2: 结束移动事件 Bit 3: 静止事件 Bit 4: 震动事件 Bit 5: 温度事件 Bit 6: 光照事件 Bit 7: SOS 事件 Bit 8: 单击事件 Bit 9: 拆卸事件 转换为十六进制: 0x0001: 开始移动事件0x0002: 结束移动事件0x0004: 静止事件0x0008: 震动事件0x0010: 温度事件0x0020: 光照事件0x0040: SOS 事件0x0080: 单击事件0x0100: 拆卸事件 |
| 5~8 | UTC 时间戳 | uint32 | 694B3DB0 | 0x694B3DB0 = 1766538672(DEC) 秒转换为 UTC 时间: 2025-12-24 01:11:12 |
| 9~10 | 加速度计 X | int16 | 003a | 0x003A = 58 mg |
| 11~12 | 加速度计 Y | int16 | 039d | 0x039D = 925 mg |
| 13~14 | 加速度计 Z | int16 | fe84 | 0xFE84 = -380 mg |
| 15 | 电池电量 | uint8 | 62 | 0x62 = 98% |
定位状态数据包(加速度计关闭,0x32)
定位状态数据包包含定位状态以及事件状态和电池信息。帧 ID 为 0x32,总长度为 9 字节。
| 0x32 | Byte2 | Byte3~4 | Byte5~8 | Byte9 |
|---|---|---|---|---|
| ID | 定位状态 | 事件状态 | UTC 时间戳 | 电池电量 |
原始载荷示例
32 00 0100 694b3db0 62
| Byte | Value | Type | Raw Data | Description |
|---|---|---|---|---|
| 1 | 帧 ID | uint8 | 32 | 32 是数据包 ID |
| 2 | 定位状态 | uint8 | 00 | 0x00: 定位成功。0x01: GNSS 扫描超时。0x02: Wi-Fi 扫描超时。0x03: Wi-Fi + GNSS 扫描超时。0x04: GNSS + Wi-Fi 扫描超时。0x05: Bluetooth 扫描超时。0x06: Bluetooth + Wi-Fi 扫描超时。0x07: Bluetooth + GNSS 扫描超时。0x08: Bluetooth + Wi-Fi + GNSS 扫描超时。0x09: 位置服务器解析 GNSS 位置失败。0x0A: 位置服务器解析 Wi-Fi 位置失败。0x0B: 位置服务器解析 Bluetooth 位置失败。0x0C: 由于精度较差导致位置解析失败。0x0D: 时间同步失败。0x0E: 由于星历(Almanac)过旧导致失败。0x0F: GNSS + Bluetooth 扫描超时。 |
| 3~4 | 事件状态 | uint16 | 0100 | 0x0000 = 未触发任何事件 Bit 0: false Bit 1: 开始移动事件 Bit 2: 结束移动事件 Bit 3: 静止事件 Bit 4: 震动事件 Bit 5: 温度事件 Bit 6: 光照事件 Bit 7: SOS 事件 Bit 8: 单击事件 Bit 9: 拆卸事件 转换为十六进制: 0x0001: 开始移动事件0x0002: 结束移动事件0x0004: 静止事件0x0008: 震动事件0x0010: 温度事件0x0020: 光照事件0x0040: SOS 事件0x0080: 单击事件0x0100: 拆卸事件 |
| 5~8 | UTC 时间戳 | uint32 | 694B3DB0 | 0x694B3DB0 = 1766538672(DEC) 秒转换为 UTC 时间: 2025-12-24 01:11:12 |
| 9 | 电池电量 | uint8 | 62 | 0x62 = 98% |
下行数据包,FPort=5
该追踪器支持通过 LoRaWAN 下发一些命令来调整参数。如果设备处于休眠状态,下行命令会在设备下一次唤醒并上传数据时生效。
由于 LoRaWAN Class A 的特性,下行窗口只会在上行之后打开,因此命令并非实时生效。例如,如果上报间隔设置为 10 分钟,设备可能需要等待最长 10 分钟,才能在下一次发送窗口中接收到下行命令。
注意:FPort=5
请求设备状态数据包 (0x8F)
| 0x8F |
|---|
| ID |
示例:
8F:请求最新的设备状态和定位数据包。
设置工作模式与定位策略 (0x90)
| 0x90 | Byte2 | Byte3 | Byte4~5 | Byte6~7 | Byte8~9 |
|---|---|---|---|---|---|
| ID | 工作模式 | 定位策略 | 心跳间隔 | 周期模式上行间隔 | 事件模式上行间隔 |
| Byte10 | Byte11 | Byte12 | Byte13 | Byte14 | Byte15~30 |
|---|---|---|---|---|---|
| 启用三轴加速度计 | 启用拆卸告警 | GNSS 扫描超时 (S) | iBeacon 扫描超时 (S) | UUID 过滤有效字节数 | UUID 过滤 |
注意:
心跳间隔 / 周期模式上行间隔 / 事件模式上行间隔的单位:分钟
示例:
90 01 01 02d0 0014 0005 01 01 1e 0a 10 00000000000000000000000000000000
| Byte | Value | Type | Raw Data | Description |
|---|---|---|---|---|
| 1 | 帧 ID | uint8 | 90 | 90 是数据包 ID |
| 2 | 工作模式 | uint8 | 01 | 01 = 周期模式00: 待机模式01: 周期模式02: 事件模式 |
| 3 | 定位策略 | uint8 | 01 | 00: 仅 GNSS01: 仅 Wi-Fi02: Wi-Fi + GNSS03: GNSS + Wi-Fi04: 仅 Bluetooth05: Bluetooth + Wi-Fi06: Bluetooth + GNSS07: Bluetooth + Wi-Fi + GNSS08: GNSS + Bluetooth |
| 4~5 | 心跳间隔 | uint16 | 02d0 | 0x02D0 = 720 分钟 |
| 6~7 | 周期模式上行间隔 | uint16 | 0014 | 0x0014 = 20 分钟 |
| 8~9 | 事件模式上行间隔 | uint16 | 0005 | 0x0005 = 5 分钟当未触发事件时,将每 5 分钟上传一次数据。 |
| 10 | 启用三轴加速度计 | uint8 | 01 | 00: 禁用01: 启用 |
| 11 | 启用拆卸告警 | uint8 | 01 | 00: 禁用01: 启用 |
| 12 | GNSS 扫描超时 | uint8 | 1E | 0x1E = 30 秒 |
| 13 | iBeacon 扫描超时 | uint8 | 0A | 0x0A = 10 秒 |
| 14 | UUID 过滤有效字节数 | uint8 | 10 | UUID 过滤中有效字节的数量 (0–16) |
| 15~30 | UUID 过滤 | 16 bytes | 0000000000000000 0000000000000000 | 16 字节 Bluetooth UUID 过滤。只有前 N 个字节(由 byte30 定义)是有效的 |
设置事件模式阈值 (0x91)
| 0x91 | Byte2 | Byte3~4 | Byte5~6 | Byte7 | Byte8~9 |
|---|---|---|---|---|---|
| ID | 启用运动事件 | 三轴运动阈值 | 运动时上行间隔 | 启用静止事件 | 静止超时时间 |
| Byte10 | Byte11~12 |
|---|---|
| 启用震动事件 | 三轴震动阈值 |
示例:
91 01 001e 0005 01 01 2c
| Byte | 值 | 类型 | 原始数据 | 描述 |
|---|---|---|---|---|
| 1 | 帧 ID | uint8 | 91 | 91 是数据包 ID |
| 2 | 启用运动事件 | uint8 | 01 | 00: 禁用01: 启用 |
| 3~4 | 三轴运动阈值 | uint16 | 001e | 0x001E = 30 mg当加速度超过 30 mg 时,设备判定为处于运动状态 |
| 5~6 | 运动时上行间隔 | uint16 | 0005 | 0x0005 = 5 分钟检测到运动时,上报间隔为 5 分钟 |
| 7 | 启用静止事件 | uint8 | 01 | 00: 禁用01: 启用 |
| 8~9 | 静止超时时间 | uint16 | 012c | 0x012C = 300 分钟如果设备保持静止超过 300 分钟,将触发静止事件 |
| 10 | 启用震动事件 | uint8 | 01 | 00: 禁用01: 启用 |
| 11~12 | 三轴震动阈值 | uint16 | 012c | 0x012C = 300 mg当加速度超过 300 mg 时,将触发震动事件 |
请求设备状态数据包 (0x92)
| 0x92 |
|---|
| ID |
示例:
92:强制进行一次 GNSS 定位修正。
设置工作模式 & 定位策略 & 事件模式阈值 (0x97)
| 0x97 | Byte2 | Byte3 | Byte4~5 | Byte6~7 | Byte8~9 |
|---|---|---|---|---|---|
| ID | 工作模式 | 定位策略 | 心跳间隔 | 周期模式上行间隔 | 事件模式上行间隔 |
| Byte10 | Byte11 | Byte12 | Byte13 | Byte14 | Byte15~30 |
|---|---|---|---|---|---|
| 启用三轴加速度计 | 启用拆卸告警 | GNSS 扫描超时时间 | iBeacon 扫描超时时间 | UUID 过滤有效字节数 | UUID 过滤器 |
运动事件设置
| Byte31 | Byte32~33 | Byte34~35 |
|---|---|---|
| 启用运动事件 | 三轴运动阈值 | 运动时上行间隔 |
静止事件设置
| Byte36 | Byte37~38 |
|---|---|
| 启用静止事件 | 静止超时时间 |
震动事件设置
| Byte39 | Byte40~41 |
|---|---|
| 启用震动事件 | 三轴震动阈值 |
示例:
97 01 02 003c 001e 000a 01 01 0a 05 10 00000000000000000000000000000000 01 001e 0005 01 012c 01 012c
| Byte | 值 | 类型 | 原始数据 | 描述 |
|---|---|---|---|---|
| 1 | 帧 ID | uint8 | 97 | 97 是数据包 ID |
| 2 | 工作模式 | uint8 | 01 | 00: 待机模式01: 周期模式02: 事件模式 |
| 3 | 定位策略 | uint8 | 02 | 00: 仅 GNSS01: 仅 Wi-Fi02: Wi-Fi + GNSS03: GNSS + Wi-Fi04: 仅 Bluetooth05: Bluetooth + Wi-Fi06: Bluetooth + GNSS07: Bluetooth + Wi-Fi + GNSS08: GNSS + Bluetooth |
| 4~5 | 心跳间隔 | uint16 | 003c | 0x003C = 60 秒 |
| 6~7 | 周期模式上行间隔 | uint16 | 001e | 0x001E = 30 秒 |
| 8~9 | 事件模式上行间隔 | uint16 | 000a | 0x000A = 10 分钟当没有事件被触发时,每 10 分钟上传一次数据。 |
| 10 | 启用三轴加速度计 | uint8 | 01 | 00: 禁用01: 启用 |
| 11 | 启用拆卸告警 | uint8 | 01 | 00: 禁用01: 启用 |
| 12 | GNSS 扫描超时时间 | uint8 | 0a | 0x0A = 10 秒 |
| 13 | iBeacon 扫描超时时间 | uint8 | 05 | 0x05 = 5 秒 |
| 14 | UUID 过滤有效字节数 | uint8 | 10 | 0x10 = 16 字节 |
| 15~30 | UUID 过滤器 | byte[16] | 0000000000000000 0000000000000000 | UUID 过滤值(16 字节) |
| 31 | 启用运动事件 | uint8 | 01 | 00: 禁用01: 启用 |
| 32~33 | 三轴运动阈值 | uint16 | 001e | 0x001E = 30 mg |
| 34~35 | 运动时上行间隔 | uint16 | 0005 | 0x0005 = 5 分钟检测到运动时,上报间隔为 5 分钟 |
| 36 | 启用静止事件 | uint8 | 01 | 00: 禁用01: 启用 |
| 37~38 | 静止超时时间 | uint16 | 012c | 0x012C = 300 分钟 |
| 39 | 启用震动事件 | uint8 | 01 | 00: 禁用01: 启用 |
| 40~41 | 三轴震动阈值 | uint16 | 012c | 0x012C = 300 mg |
技术支持与产品讨论
感谢您选择我们的产品!我们将为您提供多种支持,确保您在使用我们产品的过程中尽可能顺畅。我们提供多种沟通渠道,以满足不同的偏好和需求。