506 lines
7.2 KiB
Markdown
506 lines
7.2 KiB
Markdown
# Hardware Status
|
|
|
|
Last Updated: 2026-06-03
|
|
|
|
This document is stale and records earlier hardware ordering/status notes. Current hardware direction is documented in `docs/HARDWARE.md` and `docs/dashboard-esp32s3.md`.
|
|
|
|
The current dashboard target is the Waveshare ESP32-S3-Touch-LCD-5 over WiFi/HTTP. No Pico dashboard is planned.
|
|
|
|
--------------------------------------------------
|
|
|
|
## Dashboard Hardware
|
|
|
|
### Raspberry Pi Pico 2 W
|
|
|
|
Status:
|
|
- Ordered
|
|
|
|
Purpose:
|
|
- Dashboard controller
|
|
- Touchscreen UI
|
|
- Audible alarms
|
|
- UART communications
|
|
|
|
Notes:
|
|
- Waiting for delivery
|
|
|
|
--------------------------------------------------
|
|
|
|
### 3.5 Inch Touchscreen
|
|
|
|
Display Controller:
|
|
- ST7796S
|
|
|
|
Touch Controller:
|
|
- FT6336U
|
|
|
|
Status:
|
|
- Ordered
|
|
|
|
Purpose:
|
|
- Main dashboard display
|
|
|
|
Testing Required:
|
|
- Display initialization
|
|
- Touch functionality
|
|
- Performance testing
|
|
|
|
--------------------------------------------------
|
|
|
|
### Active 5V Buzzer
|
|
|
|
Status:
|
|
- Ordered
|
|
|
|
Purpose:
|
|
- Audible alarms
|
|
|
|
Testing Required:
|
|
- Alarm volume
|
|
- Dashboard mounting location
|
|
|
|
--------------------------------------------------
|
|
|
|
## Controller Hardware
|
|
|
|
### ESP32 2-Channel Relay Board
|
|
|
|
Status:
|
|
- On Hand
|
|
|
|
Purpose:
|
|
- Relay control
|
|
- Sensor collection
|
|
- Communications
|
|
|
|
Known Information:
|
|
|
|
GPIO16 = Relay Output 1
|
|
GPIO17 = Relay Output 2
|
|
|
|
Relay ON = HIGH
|
|
Relay OFF = LOW
|
|
|
|
Testing Required:
|
|
- Verify relay operation
|
|
- Verify startup behavior
|
|
|
|
--------------------------------------------------
|
|
|
|
## Communications Hardware
|
|
|
|
### CAT5 Cable
|
|
|
|
Status:
|
|
- On Hand
|
|
|
|
Purpose:
|
|
- Dashboard power
|
|
- UART communications
|
|
- Ignition sense
|
|
|
|
--------------------------------------------------
|
|
|
|
### RS485 Modules
|
|
|
|
Status:
|
|
- Ordered
|
|
|
|
Purpose:
|
|
- Future fallback communication
|
|
|
|
Current Plan:
|
|
- Not used initially
|
|
|
|
Testing Required:
|
|
- Only if UART proves unreliable
|
|
|
|
--------------------------------------------------
|
|
|
|
## Sensor Hardware
|
|
|
|
### DS18B20 Waterproof Sensors
|
|
|
|
Quantity:
|
|
- 4
|
|
|
|
Status:
|
|
- Ordered
|
|
|
|
Assignments:
|
|
|
|
Sensor 1
|
|
- Fridge Zone 1
|
|
|
|
Sensor 2
|
|
- Fridge Zone 2
|
|
|
|
Sensor 3
|
|
- Rear Seat Area
|
|
|
|
Sensor 4
|
|
- Outside Air
|
|
|
|
Testing Required:
|
|
- Address discovery
|
|
- Temperature validation
|
|
|
|
--------------------------------------------------
|
|
|
|
## Power Hardware
|
|
|
|
### 12V To 5V Buck Converter
|
|
|
|
Status:
|
|
- Planned
|
|
|
|
Purpose:
|
|
- Dashboard power
|
|
|
|
Requirements:
|
|
|
|
Input:
|
|
- Vehicle 12V
|
|
|
|
Output:
|
|
- 5V
|
|
|
|
Recommended:
|
|
- 3A minimum
|
|
|
|
--------------------------------------------------
|
|
|
|
### Bosch Relays
|
|
|
|
Status:
|
|
- Planned
|
|
|
|
Purpose:
|
|
- Starlink power
|
|
- Fridge power
|
|
|
|
Future:
|
|
- Inverter
|
|
- Camp lights
|
|
|
|
Requirements:
|
|
- 30A or 40A automotive relays
|
|
|
|
--------------------------------------------------
|
|
|
|
### Fuse Block
|
|
|
|
Status:
|
|
- Planned
|
|
|
|
Purpose:
|
|
- Circuit protection
|
|
|
|
--------------------------------------------------
|
|
|
|
## Future Hardware
|
|
|
|
### JBD / Xiaoxiang BMS
|
|
|
|
Status:
|
|
- Existing battery system
|
|
|
|
Purpose:
|
|
- Battery monitoring
|
|
|
|
Future Integration:
|
|
- BLE communications
|
|
|
|
--------------------------------------------------
|
|
|
|
### ELM327
|
|
|
|
Status:
|
|
- Future
|
|
|
|
Purpose:
|
|
- OBD-II integration
|
|
|
|
--------------------------------------------------
|
|
|
|
### GPS Module
|
|
|
|
Status:
|
|
- Future
|
|
|
|
Purpose:
|
|
- Vehicle tracking
|
|
- Trip logging
|
|
|
|
--------------------------------------------------
|
|
|
|
## Bring-Up Checklist
|
|
|
|
ESP32
|
|
|
|
[ ] Verify relay outputs
|
|
[ ] Verify WiFi AP
|
|
[ ] Verify HTTP status endpoint
|
|
[ ] Verify DS18B20 support
|
|
|
|
Pico
|
|
|
|
[ ] Display test
|
|
[ ] Touch test
|
|
[ ] Buzzer test
|
|
[ ] UART communications
|
|
|
|
Vehicle
|
|
|
|
[ ] Install CAT5 run
|
|
[ ] Install buck converter
|
|
[ ] Install relays
|
|
[ ] Install sensors
|
|
[ ] Install dashboard enclosure
|
|
|
|
--------------------------------------------------
|
|
|
|
## Notes
|
|
|
|
Current Communication Plan:
|
|
|
|
Primary:
|
|
- UART over CAT5
|
|
|
|
Backup:
|
|
- WiFi HTTP API
|
|
|
|
Fallback:
|
|
- RS485
|
|
|
|
Current UI Plan:
|
|
|
|
- Touchscreen only
|
|
- No physical buttons required
|
|
|
|
Current Logging Plan:
|
|
|
|
- No persistent logging planned
|
|
- Focus on live monitoring and alarms
|
|
|
|
## ESP32 Cargo Controller Bring-Up Results
|
|
|
|
### Date
|
|
|
|
2026-06-04
|
|
|
|
### Hardware
|
|
|
|
- ESP32 2-channel relay board
|
|
- ESP32-WROOM-32
|
|
- Integrated dual relay module
|
|
|
|
### Firmware Status
|
|
|
|
- Firmware compiles successfully
|
|
- Firmware uploads successfully
|
|
- Board boots reliably
|
|
- No watchdog resets observed
|
|
|
|
### WiFi Access Point
|
|
|
|
Status: PASS
|
|
|
|
Verified:
|
|
|
|
- AP starts correctly
|
|
- SSID visible
|
|
- Client devices can connect
|
|
- HTTP API accessible
|
|
|
|
### Status Endpoint
|
|
|
|
Status: PASS
|
|
|
|
Endpoint:
|
|
|
|
/status
|
|
|
|
Issue Found:
|
|
|
|
- Original streaming JSON implementation produced malformed responses
|
|
- Browser reported "cannot parse response"
|
|
|
|
Resolution:
|
|
|
|
- Replaced streamed response with serialized JSON string response
|
|
|
|
Result:
|
|
|
|
- Valid JSON returned successfully
|
|
|
|
### Relay Control
|
|
|
|
Status: PASS
|
|
|
|
Verified:
|
|
|
|
/relay/starlink/on
|
|
/relay/starlink/off
|
|
/relay/fridge/on
|
|
/relay/fridge/off
|
|
|
|
Results:
|
|
|
|
- Relay 1 responds correctly
|
|
- Relay 2 responds correctly
|
|
- Relay state updates correctly
|
|
- Relay state reflected correctly in status API
|
|
|
|
### Relay Default State
|
|
|
|
Issue Found:
|
|
|
|
- Fridge relay defaulted to ON
|
|
|
|
Root Cause:
|
|
|
|
bool fridge = true;
|
|
|
|
Resolution:
|
|
|
|
bool fridge = false;
|
|
|
|
Result:
|
|
|
|
- Both relays now default OFF at boot
|
|
|
|
### DS18B20 Testing
|
|
|
|
Status: BLOCKED
|
|
|
|
Hardware:
|
|
|
|
- Waterproof DS18B20 sensors
|
|
- 5 meter leads
|
|
|
|
Current Result:
|
|
|
|
- Sensors not detected
|
|
|
|
Likely Cause:
|
|
|
|
- Missing 4.7kΩ pull-up resistor on 1-Wire bus
|
|
|
|
Planned Fix:
|
|
|
|
- Install 4.7kΩ resistor between GPIO4 and 3.3V
|
|
- Retest sensor detection
|
|
|
|
### Overall Milestone Status
|
|
|
|
ESP32 Hardware Bring-Up
|
|
|
|
Status: COMPLETE
|
|
|
|
Completed:
|
|
|
|
- Boot validation
|
|
- WiFi validation
|
|
- HTTP API validation
|
|
- Relay validation
|
|
|
|
Remaining:
|
|
|
|
- DS18B20 validation after resistor installation
|
|
|
|
|
|
## JBD/Xiaoxiang BMS Bring-Up Results
|
|
|
|
### Date
|
|
|
|
2026-06-04
|
|
|
|
### Hardware
|
|
|
|
- DGJBD / Xiaoxiang-compatible BMS
|
|
- Bluetooth name: Greta
|
|
- ESP32 BLE address: a5:c2:37:2c:05:dc
|
|
- Battery capacity: 150Ah
|
|
- Chemistry: 4S LiFePO4
|
|
|
|
### BLE Discovery
|
|
|
|
Status: PASS
|
|
|
|
Verified BLE service and characteristics:
|
|
|
|
- Service: 0xff00
|
|
- Notify characteristic: 0xff01
|
|
- Write characteristic: 0xff02
|
|
- Write mode: write without response
|
|
|
|
### BMS Read Test
|
|
|
|
Status: PASS
|
|
|
|
Verified JBD basic status command:
|
|
|
|
DD A5 03 00 FF FD 77
|
|
|
|
Confirmed live values:
|
|
|
|
- SOC: 70%
|
|
- Pack voltage: 13.34V
|
|
- Current: 0.00A
|
|
- Remaining capacity: 104.88Ah
|
|
- Nominal capacity: 150.00Ah
|
|
- Cycle count: 3
|
|
- Cell count: 4
|
|
- Temperature: approximately 67.6°F
|
|
|
|
### ESP32 Firmware Integration
|
|
|
|
Status: PASS
|
|
|
|
Verified:
|
|
|
|
- Main firmware connects to BMS
|
|
- BMS data is read repeatedly
|
|
- BMS data is parsed correctly
|
|
- Serial monitor reports live SOC, voltage, current, and remaining Ah
|
|
|
|
### Notes
|
|
|
|
- First BMS read after boot may time out.
|
|
- Subsequent reads succeed consistently.
|
|
- Current implementation reads basic pack telemetry only.
|
|
- Cell voltage and cell delta support will require an additional JBD command.
|
|
|
|
## JBD Cell Voltage Bring-Up Results
|
|
|
|
### Date
|
|
|
|
2026-06-04
|
|
|
|
### Status
|
|
|
|
PASS
|
|
|
|
### Verified
|
|
|
|
- JBD cell voltage command works
|
|
- ESP32 receives cell voltage packet
|
|
- Firmware parses 4 cell voltages
|
|
- Firmware calculates min cell voltage
|
|
- Firmware calculates max cell voltage
|
|
- Firmware calculates cell delta
|
|
|
|
### Observed Values
|
|
|
|
- Cell count: 4
|
|
- Minimum cell voltage: 3.336V
|
|
- Maximum cell voltage: 3.337V
|
|
- Cell delta: 1mV
|
|
|
|
### Notes
|
|
|
|
- Pack appears well balanced.
|
|
- First BMS status read after boot may timeout, but subsequent reads succeed.
|
|
- This behavior is acceptable for current bring-up.
|