release(vd960DBN): 固件版本 1.02.04 → 1.02.05 (2026-08-21)
涵盖 8-20 联网稳定性修复系列 + 8-21 MQTT 协议 V1.10 实现: - SocketSend 0x11 退避 / SocketCreat 失败中止 (死循环闭环) - OTA hex 提取兼容 json.dumps 空格 - OTA 刷写状态回 idle + ota_report 主动上报 - OTA 命令缓冲 union 合并 (RAM 90% 复位闭环) - MQTT V1.10: dev_info_query/initialize 补 loop_ver/loop_hw_ver + loop_version_query 实时查询 cmcng.h 三段式一致: FIRMWARE_VER="1.02.05" + MAIN=1/SUB=2/SUBSUB=5 README 当前发布行 + 子项目版本表 → 1.02.05 CHANGELOG 新增 V1.02.05 条目 (配套矩阵: MQTT V1.07→V1.10) devlog V4.8 条目补版本说明 产品手册/技术规格书留待打 tag 正式发布时同步
This commit is contained in:
@@ -5,6 +5,44 @@
|
||||
|
||||
---
|
||||
|
||||
## vd960DBN V1.02.05 — 2026-08-21(DBN 通信板单侧更新)
|
||||
|
||||
> 本次为 **vd960DBN 单侧发布**(Loop 固件未变,可正常配套)。涵盖 2026-08-20 联网稳定性修复系列 + 2026-08-21 MQTT 协议 V1.10 实现。
|
||||
|
||||
**配套版本矩阵**
|
||||
|
||||
| 组件 | 版本 |
|
||||
|------|------|
|
||||
| vd960DBN 固件 (CH32V208, DLD960GA) | **1.02.05** |
|
||||
| vd960Loop 固件 (AT32F421) | 1.0(不变) |
|
||||
| DLD960Loop 串口协议(0x7F / 0x9F OTA) | V1.05(不变) |
|
||||
| DLD960 TCP JSON 协议(:5960) | V1.03(不变) |
|
||||
| DLD960 IoT MQTT 协议 | **V1.10** |
|
||||
| DLD960 BLE 协议 | V1.02(不变) |
|
||||
|
||||
### 🆕 MQTT 协议 V1.10:网络上报携带地感版本(配合远程 OTA 版本核对)
|
||||
- `dev_info_query` 响应 / `initialize` 上报 data 新增 **`loop_ver`**(地感固件 `"主.次.次"`)+ **`loop_hw_ver`**(地感硬件)——来自 Loop `0x4A` 查询缓存(上电自动查一次 + OTA done 后刷新),查询未完成/失败为空串
|
||||
- 新增 §4.25 **`loop_version_query`** 命令:平台实时查询 Loop 版本(0x4A 异步 → 回包 `loop_ver`/`loop_hw_ver`/`version_str`),超时回 `code=5`
|
||||
- 固件实现:`loop_uart_proto.c/h` 新增 `LoopVerCache` 版本缓存 + `lup_cache_from_info()`/`lup_refresh_version_cache()`;`iot_mqtt_srv.c` 新增 `iot_verq_poll()` 异步回包 + 后台刷新
|
||||
- **单测 44 断言全过**(版本解析/缓存/异步回包时序,`tests/test_iot_loop_ver.c`)
|
||||
|
||||
### 🔧 联网稳定性修复(2026-08-20 系列)
|
||||
- **SocketSend 0x11 死循环**:WCHNET `WCHNET_ERR_MEM(0x11)` 为瞬时发送缓冲不足(`WCHNET_NUM_TCP_SEG=2`)——改为 200ms 退避重试(≤10 次),不再 3 次强制断连;`SocketCreat` 失败置 `SocketId_TCP=0xFF` + 中止 Connect(不再 timeout 死循环)
|
||||
- **OTA 下载失败**:`ota_json_extract_hex()` 兼容 `json.dumps` 空格(`"data": "..."`),单片 CRC 全错根因闭环
|
||||
- **OTA 刷写状态语义**:刷写成功状态回 `idle`(镜像保留可重刷)+ 补 `ota_report done/failed` 主动上报(平台判定主依据)
|
||||
- **联网复位事故**:OTA 命令缓冲合并 union(RAM 90% 栈余量不足 → HardFault 复位闭环)
|
||||
|
||||
### 📋 已知约束
|
||||
- UART2 0x4A 版本查询与 `loop_data`/事件上报共用总线(低频命令,理论无冲突)——**待板上验证时序**
|
||||
- OTA done 后缓存刷新存在 Loop 复位时间窗(查询可能超时,可接受;平台可用 `loop_version_query` 主动核对)
|
||||
- BLE→Loop OTA 透传模式无自动退出(V1.02.03 遗留,升级后需断电重启)
|
||||
|
||||
### 验证
|
||||
- ✅ gcc 隔离单测:`test_iot_loop_ver.c` 44 例(V1.10)+ 既有 ota/offlog/snapshot/mqtt 单测全过
|
||||
- [ ] 待板级回归:MQTT 联网长稳、`loop_version_query` 实际回包、OTA 全流程
|
||||
|
||||
---
|
||||
|
||||
## vd960DBN V1.02.04 — 2026-08-19(DBN 通信板单侧更新)
|
||||
|
||||
> 本次为 **vd960DBN 单侧发布**(Loop 固件未变,协议未变更,可正常配套)。
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# vd_960 — DLD960 四通道车辆检测器(双 MCU 架构)
|
||||
|
||||
> 当前发布:**vd960DBN V1.02.04**(2026-08-19,DBN 单侧更新)· 完整版本见 [CHANGELOG.md](CHANGELOG.md)
|
||||
> 当前发布:**vd960DBN V1.02.05**(2026-08-21,DBN 单侧更新)· 完整版本见 [CHANGELOG.md](CHANGELOG.md)
|
||||
|
||||
## 产品概述
|
||||
|
||||
@@ -41,7 +41,7 @@ DLD960 是一款基于环形线圈检测原理的四通道车辆检测器,支
|
||||
| 子项目 | 目录 | MCU | 固件版本 | 功能 |
|
||||
|--------|------|-----|---------|------|
|
||||
| vd960Loop | `vd960Loop/` | AT32F421 | 1.0 | 线圈驱动、频率采样、车辆检测算法、0x7F 串口上报 |
|
||||
| vd960DBN | `vd960DBN/` | CH32V208 | 1.02.04 | 蓝牙管理、TCP/IP(WCHNET)、MQTT、串口桥接、4G 扩展(RFU) |
|
||||
| vd960DBN | `vd960DBN/` | CH32V208 | 1.02.05 | 蓝牙管理、TCP/IP(WCHNET)、MQTT、串口桥接、4G 扩展(RFU) |
|
||||
|
||||
> ⚠ 发布约束:自协议 V1.05 起(variation 2B无符号 → 3B有符号),**Loop 固件与 DBN 固件必须同版本配套发布**,禁止混刷。
|
||||
|
||||
|
||||
@@ -11,11 +11,11 @@
|
||||
#include <stdint.h>
|
||||
|
||||
#define PRODUCT_MODEL "DLD960GA"
|
||||
#define FIRMWARE_VER "1.02.04"
|
||||
#define FIRMWARE_VER "1.02.05"
|
||||
#define HARDWARE_VER "1.0"
|
||||
#define FIRMWARE_VER_MAIN 1
|
||||
#define FIRMWARE_VER_SUB 2
|
||||
#define FIRMWARE_VER_SUBSUB 4
|
||||
#define FIRMWARE_VER_SUBSUB 5
|
||||
#define HARDWARE_VER_MAIN 1
|
||||
#define HARDWARE_VER_SUB 1
|
||||
|
||||
|
||||
@@ -6,6 +6,8 @@
|
||||
|
||||
## 2026-08-21 — MQTT 协议 V1.10 代码落地:网络上报携带地感版本(loop_ver/loop_hw_ver)
|
||||
|
||||
> **固件版本:归入 vd960DBN V1.02.05 发布**(2026-08-21 升版,cmcng.h 三段式一致:FIRMWARE_VER="1.02.05" + MAIN=1/SUB=2/SUBSUB=5)。V1.02.05 涵盖 8-20 联网稳定性修复系列(SocketSend 0x11 / OTA hex 空格 / union 合并 / 刷写状态语义)+ 本次 V1.10 协议实现。
|
||||
|
||||
### 背景
|
||||
|
||||
协议 V1.10(`DLD960_IoT_MQTT协议.md`,commit 3be9e50)三处新增,本次为固件实现:
|
||||
|
||||
Reference in New Issue
Block a user