定制我的固件
想用自己的硬件组合(不同的屏、麦克风、扬声器、按键)?在网页上选一选,生成固件配置,烧进设备就能跑。
思路:通用固件 + 运行时配置
我们没有为每种硬件组合单独编译固件,而是:
- 每个主控一个通用固件(支持的屏 / 麦 / 扬驱动都编进去了)。
- 你在网页选好硬件 → 生成一份硬件配置(
hw_profile)。 - 把通用固件 + 配置烧 / 写进设备,固件开机按配置初始化对应外设。
好处:秒级出配置、无需云端编译;改硬件只改配置,不用重新编译。
一步步来
- 控制台 → 🤖 我的设备 → 「🛠 定制我的固件」。
- 选 主控板:
- M5 AtomS3R / M5 Core2 等预设板 —— 屏 / 麦 / 扬 / 引脚都配好了,直接下一步。
- 通用 ESP32-S3 —— 自己选屏 / 麦 / 扬,引脚可改。
- 设默认音量 / 亮度(可选)。
- 点 「生成配置 + 下载」,得到
hw_profile.json。 - 用 配置我买的设备 连上设备写入配置(或随通用固件一起烧)。
支持哪些硬件
可选的主控 / 屏 / 麦克风 / 扬声器 / 引脚清单,由 GET /console/firmware/catalog 实时给出(也是固件读取配置的单一真源)。当前预设:AtomS3R(ES8311 音频 + 128×128 屏)、Core2(SPM1423 麦 + NS4168 扬 + 320×240 触屏)。
进阶 / 路线
- 阶段1(现在):通用固件 + 运行时配置,覆盖主流板,秒级。
- 阶段2(后续):真正异形组合(新主控 / 新驱动 / 超出全家桶)→ 云端按配置现编(PlatformIO),排队几分钟出二进制。
- 想完全自己写固件?看 硬件接入 的 API +
hw_profileschema。
现状:网页定制器 + catalog + 配置生成已就绪;通用固件二进制与 profile 驱动化在端侧固件仓推进中。