Files

62 lines
4.4 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# AGM-C3 固件 v2.1
发布日期:2026-10-13。设备型号:`AGM-C3`;芯片:ESP32-C3,最低修订版本 v0.3;Flash:4 MB,DIO / 80 MHz;AT 协议:`2`。
本版本包含新版页面、四种时间待机配色、串口 OTA 和启动自检回滚。推荐搭配 [AgentMate 服务端 v0.6.0](../../../service/v0.6.0/README.md),详细变更见 [CHANGELOG.md](CHANGELOG.md)。
## 下载
- [完整烧录包 agentmate-AGM-C3-v2.1.zip](https://git.eehut.com/agentmate/agentmate_release/raw/branch/main/device/AGM-C3/v2.1/agentmate-AGM-C3-v2.1.zip):包含应用、支持回滚的 bootloader、分区表、OTA 初始化数据、字库、构建信息和烧录说明。
- [单独应用固件 agentmate-AGM-C3-v2.1.bin](https://git.eehut.com/agentmate/agentmate_release/raw/branch/main/device/AGM-C3/v2.1/agentmate-AGM-C3-v2.1.bin):仅供已有兼容分区和回滚 bootloader 的设备通过面板串口 OTA 更新,不适用于空白芯片。
- [SHA256SUMS](SHA256SUMS) · [BUILDINFO.txt](BUILDINFO.txt)。
下载后使用 `shasum -a 256 <文件>`、`sha256sum <文件>` 或 PowerShell `Get-FileHash <文件> -Algorithm SHA256` 与清单核对;ZIP 内另有全部烧录文件的校验清单。
## 首次安装与旧版设备升级
v1.4 等旧设备需先使用完整烧录包安装支持回滚的 bootloader。仅通过 OTA 上传 v2.1 应用不能替换 bootloader。烧录前在 AgentMate 面板安全移除设备,等待“已移除,可烧录”,并关闭其他串口工具。
电脑需要 Python 和本次构建配套的 esptool 4.10.0:
```sh
python -m pip install esptool==4.10.0
```
解压 ZIP,进入 `agentmate-AGM-C3-v2.1` 目录,将 `PORT` 替换为实际串口(macOS `/dev/cu.usbserialXXXX`、Linux `/dev/ttyUSB0` 或 Windows `COM3`),执行:
```sh
python -m esptool --chip esp32c3 --port PORT --baud 460800 write_flash @flash_args
```
| 文件 | 烧录地址 | 用途 |
| --- | --- | --- |
| bootloader.bin | 0x000000 | 启用应用回滚的引导程序 |
| partition-table.bin | 0x008000 | 分区表 |
| ota_data_initial.bin | 0x00F000 | 重置初始启动槽为 ota_0 |
| agentmate_esp32.bin | 0x020000 | v2.1 应用 |
| hzk16.bin | 0x380000 | 16×16 字库 |
此命令不清空整片 Flash,保留 `0x9000` 开始的 NVS 配置。完整烧录会重置 OTA 槽选择到 ota_0。仅适用于 AGM-C3,不能混用其他设备型号。
## 已有 OTA 基础固件的设备
若已经安装支持串口 OTA 和应用回滚的基础固件,可在服务 v0.6.0 的设备面板选择本地应用 `.bin`,或检查官方固件更新。服务先验证文件和目标版本,通过备用槽升级,重启后等待自检再确认运行版本。在线升级只允许较新稳定版;同版本重刷或降级使用本地文件升级。
应用 OTA 保留 NVS、字库、分区表和 bootloader。上传结束只表示镜像接收成功;提交后设备重启,新镜像首次启动自检失败会回滚。服务会等待自检窗口后重新发现并检查版本。首次安装本版后,当前最新版本为 v2.1,检查更新不会再次提供同版本在线升级。
不确定分区布局、bootloader 或当前启动槽时,请使用完整烧录包。不要直接把应用写入固定槽地址作为通用升级方法。
## 首次启动与恢复连接
新 NVS 首次启动进入 `FACTORY` 产测模式;产测完成后,通过 UART0(115200、8N1、CRLF)发送 `AT+MODE=NORMAL`,设备保存模式并重启。`AT+INFO?` 应报告型号 `AGM-C3`、软件版本 `v2.1` 和协议 `2`。
关闭烧录工具后,在面板点击“重新连接”,或拔出后重新插入设备。原有设备 ID、模式、亮度和主题保存在 NVS。
## 构建来源与验证
源码提交:[c859021f029a1f2595b091fdc2b89892d28729f5](https://git.eehut.com/liuchuansen/agentmate_esp32/commit/c859021f029a1f2595b091fdc2b89892d28729f5);components 子模块:`0d64650af522f1871cf2d96133d9ed78711d8234`。版本由源码 `CMakeLists.txt` 的 `project(... VERSION 2.1)` 定义。
使用 ESP-IDF `v5.5.1-789-g8d036f2edc`,由受版本控制的 `sdkconfig.defaults` 生成独立发布配置。包内 `sdkconfig`、`partitions.csv` 和 `BUILDINFO.txt` 记录配置与工具链;`CONFIG_BOOTLOADER_APP_ROLLBACK_ENABLE=y`,强制启动自检失败测试关闭,UART0 不输出普通控制台日志。
已通过 ESP-IDF 构建、应用镜像校验、字库 CRC、ASan/UBSan UI/LED 与 XMODEM/OTA 生命周期主机测试。本次没有执行真机烧录或实际串口升级验收。