docs: synchronize host mesh protocol
This commit is contained in:
@@ -36,13 +36,14 @@ DST_L = 0C
|
||||
### 1.2 接收端串口收到的 Mesh 数据格式
|
||||
|
||||
```text
|
||||
F1 DD 09 | SRC_H SRC_L | DST_H DST_L | BUSINESS | 0A
|
||||
F1 DD 08/09/0A | SRC_H SRC_L | DST_H DST_L | BUSINESS | 0A
|
||||
```
|
||||
|
||||
这是接收方 UART 侧看到的接收格式,不是设备或主机发送时使用的格式。
|
||||
其中前两字节是发送方短地址,后两字节是接收方短地址;业务帧中不再重复
|
||||
嵌入发送方或接收方地址。部分模块/串口工具可能显示为`0D 0A`,设备解析器
|
||||
兼容`0A`和`0D 0A`两种接收表现。
|
||||
嵌入发送方或接收方地址。根据当前实测,第三字节可能显示为`08`、`09`或`0A`,
|
||||
设备和上位机解析器应兼容这三种表现。帧尾通常为`0A`,部分模块或串口工具可能
|
||||
显示为`0D 0A`;其中`0D`属于外层结束符,不能计入业务数据。
|
||||
|
||||
无论发送方是主机还是设备,发送时都统一使用第1.1节的格式:
|
||||
|
||||
@@ -202,7 +203,7 @@ DATA[0] = 当前继电器控制状态
|
||||
设备接收侧看到:
|
||||
|
||||
```text
|
||||
F1 DD 09 34 FA 35 FA 01 01 01 50 E0 0A
|
||||
F1 DD 0A 34 FA 35 FA 01 01 01 50 E0 0A
|
||||
```
|
||||
|
||||
设备向主机地址`34FA`回复:
|
||||
@@ -217,8 +218,8 @@ F1 DD 09 34 FA 35 FA 01 01 01 50 E0 0A
|
||||
41 54 2B AA A1 FF FF A0 01 01 01 50 E0 0D 0A
|
||||
```
|
||||
|
||||
设备收到广播后执行控制,并向发送方地址回复`0x81`。正式多设备版本应对广播
|
||||
应答增加随机错峰延时,避免多个设备同时发送。
|
||||
设备收到广播后执行控制,并向发送方地址回复`0x81`。广播应答增加随机错峰
|
||||
延时,避免多个设备同时发送造成网络拥塞。
|
||||
|
||||
### 4.2 `0x02` 查询继电器状态
|
||||
|
||||
|
||||
@@ -213,7 +213,7 @@ CRC正确
|
||||
业务数据帧格式:
|
||||
|
||||
```text
|
||||
SRC_H | SRC_L | CMD | LEN | DATA | CRC16_L | CRC16_H
|
||||
CMD | LEN | DATA | CRC16_H | CRC16_L
|
||||
```
|
||||
|
||||
说明:
|
||||
@@ -224,6 +224,7 @@ SRC_H | SRC_L | CMD | LEN | DATA | CRC16_L | CRC16_H
|
||||
- `LEN`:DATA长度;
|
||||
- `DATA`:命令数据;
|
||||
- `CRC16`:CRC-16/MODBUS,计算范围为 CMD、LEN、DATA,高字节在前;
|
||||
- 发送方和接收方 Mesh 短地址由 JDY-28M 外层帧携带,业务帧不重复添加地址;
|
||||
- CRC错误时静默丢弃,不执行继电器动作,不返回错误帧。
|
||||
|
||||
JDY-28M的Mesh外层帧负责目标地址、源地址、Mesh头和帧尾,业务帧本身不重复添加地址。
|
||||
@@ -238,6 +239,11 @@ JDY-28M的Mesh外层帧负责目标地址、源地址、Mesh头和帧尾,业
|
||||
| `0x04` | 故障/恢复上报 | 设备→主机 | DATA为故障码或恢复码 |
|
||||
| `0x05` | 查询设备短地址 | 主机→设备 | 返回2字节短地址 |
|
||||
| `0x06` | 配置电流阈值 | 主机→设备 | 2字节,单位mA,低字节在前,保存到EEPROM |
|
||||
|
||||
当前汇编主程序已经完成并通过实物验证的命令为:`0x01`、`0x02`和`0x05`。
|
||||
`0x03`、`0x04`、`0x06`、`0x07`以及`0x08~0x0E`属于已确定的协议设计,
|
||||
在当前汇编主程序中尚未全部完成或尚未完成实物验证,上位机不应据此判断当前
|
||||
固件已经支持这些命令。
|
||||
| `0x0E` | 查询当前固件版本 | 主机→设备 | 无DATA |
|
||||
| `0x0D` | OTA升级结果上报 | 设备→主机 | DATA为升级结果码 |
|
||||
|
||||
|
||||
Reference in New Issue
Block a user