Files
overland-controller/firmware/esp32-s3-dashboard

ESP32-S3 Dashboard Firmware

This is the placeholder for the current dashboard firmware direction.

Target hardware

Current dashboard target:

  • Waveshare ESP32-S3 touchscreen display
  • WiFi connection to the Cargo ESP32 access point
  • HTTP/REST communication with the Cargo ESP32 API
  • Future LVGL-based dashboard UI

Responsibilities

The ESP32-S3 dashboard is responsible for:

  • Touchscreen UI
  • Vehicle gauges
  • Dashboard rendering
  • Future CAN/OBD-II vehicle visualization
  • Future tilt/roll/off-road screen visualization

Not responsible for

The ESP32-S3 dashboard does not own:

  • Relay authority
  • BMS authority
  • Alarm authority
  • Cargo ESP configuration storage
  • Load-switching hardware control as the source of truth

The Cargo ESP32 remains the power-system controller and source of truth.

v1 communication path

Dashboard ESP32-S3
        <-> WiFi / HTTP REST
Cargo ESP32 AP

Not v1 dashboard communication:

  • Pico UART
  • ESP-NOW
  • MQTT
  • CAN between controllers

Selected Hardware

The selected dashboard hardware target is:

Waveshare ESP32-S3 Touch LCD 5B

Display details:

  • 5-inch touchscreen
  • 1024x600 resolution
  • Capacitive touch
  • ESP32-S3 platform
  • Native WiFi
  • Integrated CAN transceiver available for future vehicle integration

This is the current active dashboard target. The archived Pico dashboard is not active firmware.

Bring-Up Plan

Initial Waveshare ESP32-S3 Touch LCD 5B work should start with standalone bench testing.

Bring-up order:

  1. Confirm USB/serial detection.
  2. Flash a known-good Waveshare demo.
  3. Confirm 1024x600 display output.
  4. Confirm capacitive touch input.
  5. Build a minimal project dashboard boot screen.
  6. Connect to Cargo ESP WiFi AP.
  7. Read /api/v1/status and /api/v1/config.
  8. Render outputs dynamically from the Cargo ESP API.

Do not start with CAN, OBD-II, tilt sensors, or vehicle wiring.