From d8f756ee53b4f632d5c01dfdb4ba232d1c2706d3 Mon Sep 17 00:00:00 2001 From: nick Date: Thu, 4 Jun 2026 12:19:28 -0600 Subject: [PATCH] Add embedded ESP32 web dashboard --- .../overland-controller.ino | 139 ++++++++++++++++++ 1 file changed, 139 insertions(+) diff --git a/firmware/esp32/overland-controller/overland-controller.ino b/firmware/esp32/overland-controller/overland-controller.ino index 91d1c96..a877a78 100644 --- a/firmware/esp32/overland-controller/overland-controller.ino +++ b/firmware/esp32/overland-controller/overland-controller.ino @@ -12,6 +12,141 @@ #include "app_config.h" #include "logger.h" + +const char INDEX_HTML[] PROGMEM = R"rawliteral( + + + + + + Overland Controller + + + +
+
+
+

Overland Controller

+
Local camp dashboard
+
+
Connecting...
+
+ +
+
+
Battery
+
--%
+
+
Voltage--
+
Current--
+
Remaining--
+
+ +
+
BMS
+
--
+
Battery temp--
+
Cell delta--
+
Cycles--
+
+ +
+
Temperatures
+
+
+ +
+
Relays
+
+
+ +
+
Alarms / System
+
+
Firmware--
+
Uptime--
+
+
+
+ + + + +)rawliteral"; + WebServer server(80); HardwareSerial DashboardSerial(2); @@ -875,6 +1010,10 @@ void setup() { Serial.println(WiFi.softAPIP()); } + server.on("/", HTTP_GET, []() { + server.send_P(200, "text/html", INDEX_HTML); + }); + server.on("/status", handleStatus); server.on("/relay/relay_1/on", HTTP_GET, handleGenericRelayRoute); server.on("/relay/relay_1/off", HTTP_GET, handleGenericRelayRoute);