7 Commits

Author SHA1 Message Date
evan.liu
ead16ef671 V1.00.23 + OTA tool fine-grained progress display
- firmware version bump V1.00.22 -> V1.00.23 (0x00010017), no code change;
  user-verified BLE OTA (APP1->APP2) and UART OTA both PASS
- ble_ota_update.py: frame-level live progress bar on tty (bar/pct/bytes/
  rate/per-frame ack RTT, ~10fps throttled), 5%-step lines when redirected;
  resend/resync notices no longer mix into the bar line; END summary now
  reports resent/resynced counters; BEGIN/END stage banners
- docs: dev log 46, AGENTS.md sync
2026-09-04 21:33:25 +08:00
evan.liu
5dcbdbad65 V1.00.22 + OTA tool bank-misselection fix (triple protection)
- firmware: version bump to V1.00.22 (0x00010016), no code change
- ble_ota_update.py: cur-bank detection now reads the full devinfo output
  and parses strictly (early break at the 'cur bank:' prefix could miss
  'APP2' and silently default to APP1 -> wrong payload selection, caught
  by the device bank_mismatch guard on hardware)
- new pre-flight check_blob_bank(): payload vector reset PC must land in
  the target bank before transferring (BLE and UART paths)
- UART path: post-reboot verification over the text CLI (bank+version),
  deterministic PASS/FAIL like the BLE path
- verified: UART OTA APP2->APP1 V1.00.22 full pass with auto-verify
- docs: dev log 45, AGENTS.md sync
2026-09-04 20:49:15 +08:00
evan.liu
4b4f20774d mcm-ddc-ble V1.00.14:引入cJSON v1.7.18到src/infra(分配经cJSON_InitHooks挂FreeRTOS pvPortMalloc,惰性初始化);参数接口层JSON化(appget json输出JSON对象,appset json {"led":500}入参,未知键忽略前向兼容,越界整体不生效,成功回显JSON);Flash存储层保持caiic_params_t二进制记录不动;uvprojx三target加infra组;文档同步(开发日志§34/ble_protocol.md §6.5/AGENTS.md);整包+OTA包已出到tools/out 2026-09-04 13:35:26 +08:00
evan.liu
d82b6217a4 mcm-ddc-ble V1.00.11~13:CLI新增reset/factory/uartrst/uartinfo四条维护命令(复位单板/恢复出厂设置/复位串口/查询串口参数);CLI读写特征应答改分包上报(缓冲512B->1024B+读游标,片长att_mtu-2恒短读避开Read Blob偏移不下发的栈限制,0长度包=应答结束);help恢复完整帮助表+help <cmd>单条查询;ble_cli_test.py与App McmCli.ts同步改循环读;文档同步(开发日志31~33/ble_protocol.md/AGENTS.md/App修改记录);整包+OTA包已出到tools/out 2026-09-04 11:29:28 +08:00
evan.liu
b5186aa30f 修复Boot跳转后BLE失败:Boot跳转前__enable_irq( PRIMASK继承问题),APP/Boot的IRAM改从0x20004000起(低16KB为ROM/BLE保留区,踩了必HardFault);bootsetting增加start_address,Boot按地址跳转;merge_image.py生成缺省bootsetting并支持参数化;make_package改-r全量重建;mcm-ddc-ble重链接到0x01008000并出caiic_ble_full整包;HardFault加栈帧打印 2026-09-02 21:04:08 +08:00
evan.liu
5d5c1d827c Boot改为跳转时不校验镜像CRC(校验移到OTA升级过程),修复Keil下载后无法调试;新增debug_app.ini调试旁路;补充开发日志(第19节)与mcm-ddc-ble工程日志 2026-09-02 08:22:53 +08:00
evan.liu
bcd307db92 接入BLE:自定义GATT服务(CAIIC-MCM)+CLI-over-BLE帧协议+双bank直写OTA;新增自写bootloader(Boot工程,512KB布局);器件改N32WB031KEQ6-2 2026-09-01 23:00:00 +08:00