-
vd960DBN V1.02.05(DBN 单侧发布) Stable
released this
2026-08-21 09:07:40 +08:00 | 23 commits to main since this releasevd960DBN V1.02.05 — 2026-08-21(DBN 通信板单侧更新)
配套版本矩阵
组件 版本 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上报新增loop_ver(地感固件"主.次.次")+loop_hw_ver(地感硬件)——来自 Loop0x4A查询缓存(上电自动查一次 + OTA done 后刷新),查询未完成/失败为空串- 新增 §4.25
loop_version_query:平台实时查询 Loop 版本(0x4A 异步 → 回包loop_ver/loop_hw_ver/version_str),超时回code=5 - 固件:
loop_uart_proto新增LoopVerCache版本缓存;iot_mqtt_srv新增iot_verq_poll()异步回包 + 后台刷新(上电/OTA done) - 单测 44 断言全过(
tests/test_iot_loop_ver.c)
🔧 联网稳定性修复(2026-08-20 系列)
- SocketSend 0x11 死循环:改为 200ms 退避重试(≤10 次),不再 3 次强制断连;
SocketCreat失败置SocketId_TCP=0xFF+ 中止 Connect(不再 timeout 死循环) - OTA 下载失败:
ota_json_extract_hex()兼容json.dumps空格(单片 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.c44 例 + 既有 ota/offlog/snapshot/mqtt 单测全过 - 待板级回归:MQTT 联网长稳、
loop_version_query实际回包、OTA 全流程
Downloads