feat(ota): add authenticated firmware update workflow

- report firmware versions at startup and every six hours with a fresh device JWT
- support optional HMAC headers and retry once after authorization rejection
- handle forced and confirmed updates through managed OTA state
- stream images to the inactive partition and verify size, SHA-256, and format
- coordinate OTA HTTPS activity with voice teardown and restoration
- confirm pending images and expose configuration, status, and integration docs
This commit is contained in:
chenjintao
2026-08-14 15:25:34 +08:00
parent 0cfb10252c
commit 5a18036ec6
17 changed files with 1860 additions and 8 deletions
@@ -143,6 +143,8 @@ void control_plane_local_wake_resume_after_foreground(void);
bool control_plane_local_wake_prompt_gate_active(void);
void control_plane_ptt_reset_capture_window(void);
bool control_plane_voice_turn_is_idle(void);
bool control_plane_ota_voice_services_allowed(void);
bool control_plane_runtime_is_stopping(void);
esp_err_t control_plane_start_system_event_task(void);
void control_plane_stop_system_event_task(void);