Align docs with ESP32-S3 dashboard architecture
This commit is contained in:
+29
-12
@@ -20,38 +20,45 @@ Reason:
|
||||
|
||||
The ESP32 is installed near the electrical system and should continue operating even if the dashboard is disconnected.
|
||||
|
||||
## Decision: Pico Is a Dashboard, Not the Controller
|
||||
## Decision: Waveshare ESP32-S3 Is the Dashboard Client
|
||||
|
||||
The Pico dashboard is responsible for user interaction.
|
||||
The Waveshare ESP32-S3 touchscreen dashboard is responsible for local user interaction.
|
||||
|
||||
It should not own critical control state.
|
||||
It connects to the Cargo ESP32 access point and consumes the HTTP API. It should not own critical control state.
|
||||
|
||||
Reason:
|
||||
|
||||
The dashboard may reboot, disconnect, or be removed without disabling the controller.
|
||||
|
||||
## Decision: UART Is the Primary Dashboard Link
|
||||
## Decision: HTTP Is the Primary Dashboard Link
|
||||
|
||||
UART is the preferred Pico-to-ESP32 communication path.
|
||||
HTTP over the Cargo ESP32 local WiFi network is the preferred dashboard-to-controller communication path.
|
||||
|
||||
Reason:
|
||||
|
||||
- Simple wiring
|
||||
- Deterministic
|
||||
- No WiFi dependency
|
||||
- Works offline
|
||||
- Easier to debug electrically
|
||||
- Matches the WebUI and future integration contract
|
||||
- Avoids a dedicated dashboard data cable
|
||||
- Supports the Waveshare ESP32-S3 dashboard target
|
||||
- Keeps the dashboard a simple client
|
||||
|
||||
HTTP remains useful for setup, debugging, and future web UI.
|
||||
The Cargo ESP32 AP remains available for local operation without internet.
|
||||
|
||||
## Decision: UART Is Optional Diagnostics
|
||||
|
||||
UART JSON may remain useful for service diagnostics, simulator work, or alternate clients.
|
||||
|
||||
Reason:
|
||||
|
||||
USB serial and UART are useful recovery/debug paths, but the dashboard architecture should not depend on a Pico or UART cable.
|
||||
|
||||
## Decision: HTTP and UART Should Share a Data Model
|
||||
|
||||
The same status/config model should be used across:
|
||||
|
||||
- UART
|
||||
- HTTP
|
||||
- Simulator
|
||||
- Future MQTT/Home Assistant integrations
|
||||
- Optional UART diagnostics
|
||||
|
||||
Reason:
|
||||
|
||||
@@ -177,3 +184,13 @@ Cloud dashboards and remote access are not current priorities.
|
||||
Reason:
|
||||
|
||||
The core controller/dashboard system should be reliable locally before remote features are considered.
|
||||
|
||||
## Decision: Future Pi Zero Is Optional
|
||||
|
||||
A Pi Zero may be added later for long-term logging, charts, dashboards, or local integrations.
|
||||
|
||||
It must not own relay control, BMS state, alarm authority, or persistent controller configuration.
|
||||
|
||||
Reason:
|
||||
|
||||
The Cargo ESP32 must continue operating as the controller and source of truth without any higher-level computer powered on.
|
||||
|
||||
Reference in New Issue
Block a user