用途
OTA Deployment Guardian 用于设备需要远程更新、且一旦失去更新路径代价高昂的场景。典型用途包括:ESP32、Nano ESP32 或 Uno R4 WiFi 的 OTA 上传;网络端口短暂出现后消失;IDE 能 ping 通设备却无法上传;维持远程气象站或已部署板卡的可更新性;避免 OTA 部署后设备自砖。
普通工作台 USB 上传不适用本技能,除非用户明确是在为后续 OTA 部署做准备。
主要能力
技能附带以下参考资源:
references/ota-safe-sketch.md:sketch 侧最低 OTA 契约与防护规则references/discovery-and-network-ports.md:IDE、mDNS、IP 可达性及网络端口消失的分诊references/recovery-and-rollback.md:发布安全、回滚与最后手段恢复规划references/native-espidf-rollback.md:原生应用槽位、启动接受、停止输出确认与回滚兼容的 NVS/校准模式../../docs/board-support/uno-r4-family.md:Uno R4 Minima 与 Uno R4 WiFi 板卡家族的注意事项
使用方式
- 确认开发板家族:原生 ESP-IDF 打开
references/native-espidf-rollback.md,构建接入仍由embedded-build-workflow负责,而不是 Arduino sketch 说明;ESP32 或 Nano ESP32 打开references/ota-safe-sketch.md;Uno R4 WiFi 还需打开../../docs/board-support/uno-r4-family.md。 - 区分发现失败与 sketch 失败:ping 通但网络端口消失,打开
references/discovery-and-network-ports.md;OTA 首次可用、新 sketch 运行后消失,则需核查新 sketch 是否仍实现ota-safe-sketch.md中的 OTA 路径。 - 建议发布前,查阅
references/recovery-and-rollback.md,检查恢复路径、回滚策略,以及哪些能力必须通过 USB 保持可用。 - 当 OTA 先前可用、后来变得不可靠时,将核心版本变化视为可能变量。
核心规则
- 除非 sketch 保持 OTA 路径存活,否则绝不假设新 sketch 后 OTA 仍然可用。
- 区分可达性与 OTA 发现。ping 成功不证明 IDE 能发现或上传。
- 对高代价远程设备,至少保留一条恢复路径。
- 对 Uno R4 WiFi,明确保留板卡家族的注意事项;其 WiFi 侧与普通 ESP32 板卡不是同一套运行模型。
验证要点
- 确认 sketch 启动后仍连接目标网络并服务 OTA 路径。
- 确认失败是仅发现、仅上传,还是设备完全不可达。
- 远程部署场景下,建议更新前确认回滚或物理恢复方案。
- 若板卡或核心版本近期变更,先记录确切版本,再判断失败是否出在用户代码。
安全与维护边界
密钥、签名镜像、依赖版本、分阶段发布、回滚、漏洞响应与退役等,应使用路由器的连接设备安全参考。本技能的板卡级 OTA 流程不能证明设备具备安全启动、认证更新或可恢复的现场部署;这些控制需在确切目标上验证。
集成
- 需要命令行上传或端口检查时,配合
arduino-cli-skill。 - OTA 路径仅在脱离 USB 或现场供电条件下失败时,配合
field-power-and-connectivity-triager。 - OTA sketch 本身无法构建时,配合
error-message-explainer。
共享输出契约
使用共享的 Arduino 技能契约(../../docs/arduino-skill-contract.md):说明假设、所需工具与版本、实现步骤、按证明阶段划分的测试/证据、已知限制,以及恢复/安全说明。
限制
本技能不涵盖普通工作台 USB 上传(除非为后续 OTA 做准备),且不提供安全启动、认证更新、依赖版本管理、分阶段发布等安全控制措施,这些属于连接设备安全参考的范畴。具体收费、价格、支持平台等信息暂未提供。