Files

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,详细变更见 CHANGELOG.md。

下载

下载后使用 shasum -a 256 <文件>、sha256sum <文件> 或 PowerShell Get-FileHash <文件> -Algorithm SHA256 与清单核对;ZIP 内另有全部烧录文件的校验清单。

首次安装与旧版设备升级

v1.4 等旧设备需先使用完整烧录包安装支持回滚的 bootloader。仅通过 OTA 上传 v2.1 应用不能替换 bootloader。烧录前在 AgentMate 面板安全移除设备,等待“已移除,可烧录”,并关闭其他串口工具。

电脑需要 Python 和本次构建配套的 esptool 4.10.0:

python -m pip install esptool==4.10.0

解压 ZIP,进入 agentmate-AGM-C3-v2.1 目录,将 PORT 替换为实际串口(macOS /dev/cu.usbserialXXXX、Linux /dev/ttyUSB0 或 Windows COM3),执行:

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;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 生命周期主机测试。本次没有执行真机烧录或实际串口升级验收。