feat: add WiFi onboarding captive portal

When no WiFi credentials are configured or connection fails, the device
automatically starts a soft AP (MimiClaw-XXXX) with a captive portal.
Users can configure WiFi, LLM, Telegram, Feishu, Proxy and Search
settings via a mobile-friendly web page, then the device restarts and
connects with the new credentials.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
crispyberry
2026-03-08 12:15:26 +08:00
parent b6e11d837b
commit 6c283553f9
8 changed files with 590 additions and 21 deletions

View File

@@ -49,3 +49,13 @@ EventGroupHandle_t wifi_manager_get_event_group(void);
* Scan and print nearby APs.
*/
void wifi_manager_scan_and_print(void);
/**
* Check if WiFi credentials exist (NVS or build-time secrets).
*/
bool wifi_manager_has_credentials(void);
/**
* Stop WiFi (for mode switching during onboarding).
*/
esp_err_t wifi_manager_stop(void);