feat: settings manager with NVS persistence

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
2026-08-03 10:49:13 -04:00
parent 6af7fca1a0
commit 2a1db82c33
3 changed files with 168 additions and 1 deletions

View File

@@ -1,6 +1,9 @@
#include <Arduino.h>
#include <M5Unified.h>
#include "config.h"
#include "settings.h"
SettingsManager settingsManager;
void setup() {
auto cfg = M5.config();
@@ -15,9 +18,15 @@ void setup() {
pinMode(PIN_SPK_EN, OUTPUT);
digitalWrite(PIN_SPK_EN, LOW);
settingsManager.begin();
Settings settings = settingsManager.get();
Serial.printf("[main] Provisioned: %s\n", settingsManager.isProvisioned() ? "yes" : "no");
Serial.printf("[main] Immich URL: %s\n", settings.immich_url.c_str());
Serial.printf("[main] Interval: %d min\n", settings.interval_min);
Serial.printf("[main] Free heap: %d, PSRAM: %d\n",
ESP.getFreeHeap(), ESP.getFreePsram());
Serial.println("[main] Boot complete (skeleton)");
Serial.println("[main] Boot complete");
}
void loop() {