10 Commits
Author SHA1 Message Date
wuchuyuan 6cee0c36c3 把 business 层改名为 logic 层,入口改为 mcu_logic,避免 business 语义不清。
目录 business/ → logic/,mcu_business → mcu_logic;Makefile、工程文件和打包脚本里的路径一并改掉。
2026-09-12 10:21:50 +08:00
wuchuyuan 1972a1fb58 增加 APP 0x40 查询版本功能 2026-09-11 18:48:00 +08:00
wuchuyuan 01887c32b6 补上命令行编译和固件打包:一次出带 Key / 不带 Key 两套,USB 只烧选中的那套。
- Makefile 源文件列表对齐 CodeBlocks,命令行 make 能编过;编完自动打到 ../release/
- 新增 tools/pack_firmware:按版本打出烧录器 / APP UFW / 网关双备份包,带 Key 和不带 Key 各一套
- build.bat key 烧带 Key,默认或不带参数烧 nokey;另一套只生成不写 Flash
- 删掉未使用的 version.txt;release/ 不进仓库
2026-08-21 15:57:51 +08:00
wuchuyuan c0b5fcc4c5 加上模组 OTA:APP 用 55AA 的 0x30~0x39 升级,MCU 和模组分开升。
- MCU 升级:模组只原样转发,不存 MCU 固件
- 模组自己升级:写到备用区,校验通过后再切过去,成功回 0x34,等 APP 回 0x35 再重启
- 升模组时先通知 MCU 先别上报;升的过程中不跑心跳、不处理普通控制
- 关掉原来的 JSON OTA,改走这条协议
2026-08-20 16:12:08 +08:00
wuchuyuan 7b7583668b 补齐 MCU 桥 P1(管理/对时/版本),并接入硬件 RTC;网关侧发送改为等 GATT CCC 就绪,避免回连刚连上就 app_send_fail。
P1 业务:
- 管理:0x16 出厂复位(清配对+时区)、0x18 模组重启、0x1A 通知 MCU 重启(预留)
- 对时:网关 DEVICEINFO 下发 Unix 秒+时区,写入 RTC;MCU 0x1C/0x1D 读当前时间
- 版本:UART 0x40 拉 MCU 信息,SOC 0x41 上报网关;网关 ACK 等待 2s,最多 3 次
RTC:
- 新增 usr_periph,打开板级 "rtc";开发板无 32K 用 LRC,量产模组再改 CLK_SEL_32K
- 对时补偿 +1s;时区存 VM;出厂复位清除时区;硬件走时,软件只刷新 UTC 缓存
链路与 0x14:
- VM paired_flag 仍表示已绑定;CONFIGURED 改为绑定+已连接+CCC,否则保持 RECONNECTING
- 0x07/0x41 等 notify 未就绪不发送、不占重试,避免 MCU 过早上报
2026-08-14 19:22:41 +08:00
wuchuyuan c681db0590 重构 usr_mcu_bridge:拆成 protocol/business 分层,精简上报与 UART 超时逻辑
1、协议层迁入 protocol/,业务拆为 identity/pairing/link_status,mcu_bridge 收敛为薄门面
2、0x07 上报不再缓存重发,由 MCU 侧超时重发;模组只记 SN,网关 ACK 后回 0x08
3、APP 透传重试用尽后主动回 FAIL;UART ACK 等待统一为 MCU_UART_ACK_WAIT_MS=500ms
2026-08-13 12:23:41 +08:00
wuchuyuan 95973ec52d 1、修复APP控制回传栈溢出导致软复位,改为轻量打包路径
2、MCU ACK回传不再走大desc/encode,改用wrap_raw;otadata改为指针并增大mcu_bridge栈,避免soft_reset_exception。
2026-08-12 10:07:35 +08:00
wuchuyuan 8581d15f46 修复低功耗时,RX接收不到数据的问题:把RX设置为唤醒口,但是这样子会有个问题,用户发过来的第一包数据会出现错包,利用重发机制可实现正常通讯,MCU端也可以发送数据的时候带上两个字节的0,模组可通过解析器寻头正常识别 2026-08-11 14:21:43 +08:00
wuchuyuan 4bfe10d728 1、将固件改造为 BLE 串口模组:新增 usr_mcu_bridge,移除旧 jb_proto
2、通过 UART 55AA 对接外部 MCU,完成身份/透传/配对/心跳;桥接忙时注册 LP target 拦住休眠,空闲可进 SLEEP,兼顾串口可靠与低功耗。
2026-08-10 16:03:55 +08:00
wuchuyuan 75195c7290 在SOC的SDK上进行修改,删除了静态库链接,增加了文档 2026-08-05 18:13:49 +08:00