Prioritize JBD BMS integration in roadmap
This commit is contained in:
+116
-226
@@ -1,294 +1,184 @@
|
|||||||
# Implementation Roadmap
|
# Revised Milestone Order
|
||||||
|
|
||||||
## Purpose
|
## Milestone 1: ESP32 Hardware Bring-Up
|
||||||
|
|
||||||
This document defines the planned implementation order for the Xterra Overland Power & Monitoring Dashboard.
|
### Goal
|
||||||
|
|
||||||
The goal is to build the system incrementally, validating hardware and software at each stage before adding additional complexity.
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
# Current Status
|
|
||||||
|
|
||||||
## Complete
|
|
||||||
|
|
||||||
* Project architecture defined
|
|
||||||
* Hardware architecture defined
|
|
||||||
* UART protocol defined
|
|
||||||
* Pico architecture defined
|
|
||||||
* UI wireframes defined
|
|
||||||
* ESP32 firmware compiles
|
|
||||||
* Simulator exists and functions
|
|
||||||
|
|
||||||
## In Progress
|
|
||||||
|
|
||||||
* ESP32 controller firmware
|
|
||||||
* Communication protocol implementation
|
|
||||||
|
|
||||||
## Not Started
|
|
||||||
|
|
||||||
* Pico firmware
|
|
||||||
* Display integration
|
|
||||||
* Touch integration
|
|
||||||
* Buzzer integration
|
|
||||||
* End-to-end communications
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
# Milestone 1: ESP32 Hardware Bring-Up
|
|
||||||
|
|
||||||
## Goal
|
|
||||||
|
|
||||||
Verify cargo-controller hardware.
|
Verify cargo-controller hardware.
|
||||||
|
|
||||||
## Tasks
|
### Tasks
|
||||||
|
|
||||||
* Flash ESP32 firmware
|
- Flash ESP32 firmware
|
||||||
* Verify boot process
|
- Verify WiFi AP
|
||||||
* Verify AP mode
|
- Verify HTTP API
|
||||||
* Verify HTTP API
|
- Verify relay outputs
|
||||||
* Verify relay outputs
|
- Verify DS18B20 framework
|
||||||
* Verify DS18B20 framework
|
- Verify UART initialization
|
||||||
* Verify UART initialization
|
|
||||||
|
|
||||||
## Success Criteria
|
### Success Criteria
|
||||||
|
|
||||||
* ESP32 boots reliably
|
- ESP32 boots reliably
|
||||||
* Relay outputs function correctly
|
- Relays operate correctly
|
||||||
* Status API responds correctly
|
- HTTP API responds correctly
|
||||||
* No crashes or watchdog resets
|
- No crashes or watchdog resets
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
# Milestone 2: Pico Hardware Bring-Up
|
## Milestone 2: JBD/Xiaoxiang BMS Integration
|
||||||
|
|
||||||
## Goal
|
### Goal
|
||||||
|
|
||||||
|
Replace placeholder battery values with live battery telemetry.
|
||||||
|
|
||||||
|
### Tasks
|
||||||
|
|
||||||
|
- BLE communication
|
||||||
|
- JBD packet parsing
|
||||||
|
- Battery SOC
|
||||||
|
- Voltage
|
||||||
|
- Current
|
||||||
|
- Remaining Ah
|
||||||
|
- Runtime calculations
|
||||||
|
- Battery temperature
|
||||||
|
|
||||||
|
### Success Criteria
|
||||||
|
|
||||||
|
- Live battery telemetry available
|
||||||
|
- Battery data exposed through API
|
||||||
|
- Placeholder battery values removed
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Milestone 3: Pico Hardware Bring-Up
|
||||||
|
|
||||||
|
### Goal
|
||||||
|
|
||||||
Verify dashboard hardware.
|
Verify dashboard hardware.
|
||||||
|
|
||||||
## Tasks
|
### Tasks
|
||||||
|
|
||||||
* Verify Pico 2 W operation
|
- Display initialization
|
||||||
* Verify ST7796S display
|
- Touch initialization
|
||||||
* Verify FT6336U touch controller
|
- Buzzer verification
|
||||||
* Verify buzzer operation
|
|
||||||
|
|
||||||
## Success Criteria
|
### Success Criteria
|
||||||
|
|
||||||
* Display initializes reliably
|
- Display functional
|
||||||
* Touch events are detected
|
- Touch functional
|
||||||
* Buzzer can be activated
|
- Buzzer functional
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
# Milestone 3: UART Communications
|
## Milestone 4: UART Communications
|
||||||
|
|
||||||
## Goal
|
### Goal
|
||||||
|
|
||||||
Establish communications between Pico and ESP32.
|
Connect Pico and ESP32.
|
||||||
|
|
||||||
## Tasks
|
### Tasks
|
||||||
|
|
||||||
* Wire UART over CAT5
|
- UART transport
|
||||||
* Implement status requests
|
- Status requests
|
||||||
* Implement status responses
|
- Status responses
|
||||||
* Implement relay commands
|
- Relay commands
|
||||||
* Implement error handling
|
- Error handling
|
||||||
* Implement communication timeout detection
|
- Timeout detection
|
||||||
|
|
||||||
## Success Criteria
|
### Success Criteria
|
||||||
|
|
||||||
* Pico receives live status
|
- Live data displayed on Pico
|
||||||
* Pico can control relays
|
- Relay control operational
|
||||||
* Communication loss is detected
|
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
# Milestone 4: Dashboard UI Foundation
|
## Milestone 5: Dashboard UI
|
||||||
|
|
||||||
## Goal
|
### Goal
|
||||||
|
|
||||||
Render live data on the touchscreen.
|
Create the primary user interface.
|
||||||
|
|
||||||
## Tasks
|
### Tasks
|
||||||
|
|
||||||
* Create screen manager
|
- Dashboard screen
|
||||||
* Create app state
|
- Battery screen
|
||||||
* Create dashboard screen
|
- Temperatures screen
|
||||||
* Create navigation bar
|
- Power screen
|
||||||
* Create communication status indicators
|
- System screen
|
||||||
|
|
||||||
## Success Criteria
|
### Success Criteria
|
||||||
|
|
||||||
* Live battery data displayed
|
- All screens functional
|
||||||
* Live temperature data displayed
|
- Navigation stable
|
||||||
* Navigation functional
|
- Live updates working
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
# Milestone 5: Detailed Screens
|
## Milestone 6: DS18B20 Integration
|
||||||
|
|
||||||
## Goal
|
### Goal
|
||||||
|
|
||||||
Implement all planned screens.
|
Implement all production temperature sensors.
|
||||||
|
|
||||||
## Tasks
|
### Sensors
|
||||||
|
|
||||||
### Battery Screen
|
- Fridge Zone 1
|
||||||
|
- Fridge Zone 2
|
||||||
|
- Rear Seat Area
|
||||||
|
- Outside Air
|
||||||
|
|
||||||
* SOC
|
### Success Criteria
|
||||||
* Voltage
|
|
||||||
* Current
|
|
||||||
* Runtime
|
|
||||||
* Temperature
|
|
||||||
|
|
||||||
### Temperature Screen
|
- Sensors report correctly
|
||||||
|
- Sensor failures detected
|
||||||
* Fridge Zone 1
|
|
||||||
* Fridge Zone 2
|
|
||||||
* Rear Seat
|
|
||||||
* Outside Air
|
|
||||||
|
|
||||||
### Power Screen
|
|
||||||
|
|
||||||
* Starlink control
|
|
||||||
* Fridge control
|
|
||||||
|
|
||||||
### System Screen
|
|
||||||
|
|
||||||
* Communication status
|
|
||||||
* Sensor status
|
|
||||||
* Firmware information
|
|
||||||
|
|
||||||
## Success Criteria
|
|
||||||
|
|
||||||
* All screens functional
|
|
||||||
* Navigation stable
|
|
||||||
* Live updates working
|
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
# Milestone 6: Alarm System
|
## Milestone 7: Alarm System
|
||||||
|
|
||||||
## Goal
|
### Goal
|
||||||
|
|
||||||
Implement alerting and warning system.
|
Implement monitoring and alerting.
|
||||||
|
|
||||||
## Tasks
|
### Tasks
|
||||||
|
|
||||||
* Alarm manager
|
- Alarm manager
|
||||||
* Alarm overlay
|
- Alarm overlay
|
||||||
* Communication alarms
|
- Buzzer integration
|
||||||
* Battery alarms
|
- Communication alarms
|
||||||
* Temperature alarms
|
- Battery alarms
|
||||||
* Sensor fault alarms
|
- Temperature alarms
|
||||||
* Buzzer manager
|
- Sensor fault alarms
|
||||||
|
|
||||||
## Success Criteria
|
### Success Criteria
|
||||||
|
|
||||||
* Alarms trigger correctly
|
- Alarms trigger correctly
|
||||||
* Alarm overlay displays correctly
|
- Audible alerts function correctly
|
||||||
* Buzzer alerts function correctly
|
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
# Milestone 7: DS18B20 Integration
|
## Milestone 8: Vehicle Integration
|
||||||
|
|
||||||
## Goal
|
### Potential Features
|
||||||
|
|
||||||
Implement all production sensors.
|
- Ignition state
|
||||||
|
- OBD-II
|
||||||
## Sensors
|
- CAN bus
|
||||||
|
- Fuel level
|
||||||
### Fridge Zone 1
|
- Engine data
|
||||||
|
|
||||||
Monitor refrigerator compartment.
|
|
||||||
|
|
||||||
### Fridge Zone 2
|
|
||||||
|
|
||||||
Monitor freezer compartment.
|
|
||||||
|
|
||||||
### Rear Seat Area
|
|
||||||
|
|
||||||
Monitor passenger compartment.
|
|
||||||
|
|
||||||
### Outside Air
|
|
||||||
|
|
||||||
Monitor ambient exterior temperature.
|
|
||||||
|
|
||||||
## Success Criteria
|
|
||||||
|
|
||||||
* All sensors report correctly
|
|
||||||
* Sensor failures are detected
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
# Milestone 8: JBD/Xiaoxiang BMS Integration
|
|
||||||
|
|
||||||
## Goal
|
|
||||||
|
|
||||||
Replace simulated battery data with live battery data.
|
|
||||||
|
|
||||||
## Tasks
|
|
||||||
|
|
||||||
* BLE communication
|
|
||||||
* Battery status retrieval
|
|
||||||
* Runtime calculations
|
|
||||||
* Health monitoring
|
|
||||||
|
|
||||||
## Success Criteria
|
|
||||||
|
|
||||||
* Live battery data displayed
|
|
||||||
* No simulated battery values required
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
# Milestone 9: Vehicle Integration
|
|
||||||
|
|
||||||
## Goal
|
|
||||||
|
|
||||||
Add vehicle-specific information.
|
|
||||||
|
|
||||||
## Potential Features
|
|
||||||
|
|
||||||
* Ignition state
|
|
||||||
* OBD-II integration
|
|
||||||
* CAN bus integration
|
|
||||||
* Engine information
|
|
||||||
* Fuel information
|
|
||||||
|
|
||||||
## Status
|
|
||||||
|
|
||||||
Future planning only.
|
Future planning only.
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
# Milestone 10: Future Expansion
|
## Milestone 9: Future Expansion
|
||||||
|
|
||||||
## Potential Features
|
### Potential Features
|
||||||
|
|
||||||
* Additional relays
|
- Additional relays
|
||||||
* Inverter control
|
- Inverter control
|
||||||
* Lighting control
|
- Lighting control
|
||||||
* Starlink diagnostics
|
- GPS
|
||||||
* GPS integration
|
- Starlink diagnostics
|
||||||
* Home Assistant integration
|
- Home Assistant
|
||||||
|
|
||||||
## Status
|
|
||||||
|
|
||||||
Future planning only.
|
Future planning only.
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
# Explicitly Not Planned
|
|
||||||
|
|
||||||
The following items are currently out of scope:
|
|
||||||
|
|
||||||
* Cloud connectivity
|
|
||||||
* Internet dependency
|
|
||||||
* User accounts
|
|
||||||
* Persistent logging
|
|
||||||
* Historical graphing
|
|
||||||
* Subscription services
|
|
||||||
|
|
||||||
The system should remain fully functional offline.
|
|
||||||
|
|||||||
Reference in New Issue
Block a user