Add project documentation

This commit is contained in:
root
2026-06-03 01:00:39 -06:00
parent eff60ed9d2
commit ac0112ca66
11 changed files with 501 additions and 208 deletions
+49 -208
View File
@@ -1,235 +1,76 @@
# Xterra Overland Power & Monitoring Dashboard Architecture
# Xterra Overland Power & Monitoring Dashboard
## Overview
## Purpose
The Xterra Overland Power & Monitoring Dashboard is a distributed monitoring and control system consisting of:
A custom monitoring and control system for a Nissan Xterra using a Raspberry Pi Pico 2 W dashboard interface and an ESP32 cargo-area controller.
* Raspberry Pi Pico 2 W dashboard module
* ESP32 cargo-area controller
* RS-485 wired communications
* WiFi backup communications
* Touchscreen dashboard interface
The system provides:
The system is designed to operate completely offline and continue functioning even when WiFi is disabled.
---
## System Goals
* Monitor house battery status
* Monitor fridge temperatures
* Monitor rear seat temperature
* Monitor outside ambient temperature
* Control Starlink power
* Control fridge power
* Provide a dashboard display while driving
* Expand later to vehicle telemetry and trip logging
---
- House battery monitoring
- Fridge monitoring
- Temperature monitoring
- Power control
- Alarm management
- Future vehicle telemetry
## Dashboard Module
### Hardware
* Raspberry Pi Pico 2 W
* 3.5" touchscreen
* Powered by 5V from cargo-area buck converter
- Raspberry Pi Pico 2 W
- 3.5" SPI Capacitive Touchscreen
- RS-485 communications
- WiFi backup communications
### Responsibilities
* Display information
* Accept touch input
* Send commands to controller
* Display alarms and warnings
* Provide user configuration interface
- Touchscreen user interface
- Local web dashboard
- Alarm display
- Configuration management
- Relay control interface
- Data visualization
### Communications
Primary:
* RS-485 over CAT5
Secondary:
* WiFi HTTP API
---
## Controller Module
## Cargo Module
### Hardware
* ESP32 relay board
* House battery connection
* Bosch-style automotive relays
- ESP32 Relay Controller
- RS-485 Interface
- House Battery Interface
- DS18B20 Temperature Sensor Bus
- Bosch Relay Drivers
### Responsibilities
* Read sensors
* Interface with BMS
* Control relays
* Serve API data
* Handle logging
---
## Temperature Sensors
### Planned Sensors
1. Fridge Zone 1
2. Fridge Zone 2
3. Rear Seat Temperature
4. Outside Ambient Temperature
5. Battery Compartment Temperature (future)
### Interface
* DS18B20
* Shared 1-Wire bus
* Connected to ESP32
---
## Battery Monitoring
### Planned BMS
* Xiaoxiang / JBD Bluetooth BMS
### Data Collected
* State of Charge
* Voltage
* Current
* Remaining Capacity
* Runtime Estimate
* Battery Temperature
* Cell Voltages
* Cell Imbalance
---
## Relay Control
### Current Loads
* Starlink
* Fridge
### Future Loads
* Inverter
* Camp Lights
### Design
ESP32 relay outputs SHALL NOT carry load current.
ESP32 relays will only energize Bosch-style 30A/40A automotive relays.
All loads must be fused appropriately.
---
- Sensor collection
- Relay control
- Alarm processing
- Communications server
- Configuration storage
## Communications
### Primary
Primary:
- RS-485
RS-485 over CAT5
Backup:
- WiFi HTTP API
Advantages:
* Reliable
* Noise resistant
* Independent of WiFi
* Works while driving
### Backup
WiFi HTTP API
Used for:
* Phone access
* Web dashboard
* Configuration
* Future Home Assistant integration
---
## WiFi Rules
### Starlink OFF
* Dashboard operational
* Sensors operational
* Relay control operational
* WiFi disabled
* Web dashboard disabled
### Starlink ON
* WiFi enabled
* Web dashboard enabled
* Remote access enabled
### Override
User may temporarily enable WiFi for troubleshooting.
Default timeout:
10 minutes.
---
## Dashboard Behavior
### Ignition ON
* Screen active
* Full brightness
### Ignition OFF
* Screen black
* Pico remains powered
* Touch input remains active
Touching screen:
* Wake display
* Display dashboard
* Auto-sleep after timeout
---
Future:
- MQTT
- Home Assistant
- Grafana
- InfluxDB
## Future Expansion
### Vehicle Data
* OBD-II
* CAN bus
* Fuel level
* RPM
* Coolant temperature
* Vehicle speed
### Navigation
* GPS
* Trip logging
### Connectivity
* MQTT
* Home Assistant
* InfluxDB
* Grafana
### Additional Sensors
* Additional DS18B20 sensors
* Voltage sensors
* Current sensors
* Environmental monitoring
- JBD/Xiaoxiang BLE Battery Monitoring
- OBD-II
- CAN Bus
- GPS
- Trip Logging
- Fuel Level
- Coolant Temperature
- RPM
- Starlink Diagnostics