2.1 KiB
Hardware
Cargo ESP32
The cargo ESP32 is the controller and source of truth.
Responsibilities:
- BMS BLE
- Relays
- DS18B20 temps
- WebUI
- HTTP API
- AP mode
- Alarms
Relay board outputs are trigger/control outputs only.
High-current loads must use properly fused automotive relays or contactors.
Do not directly route fridge, Starlink, inverter, lights, or other major loads through the ESP32 relay board.
Dashboard
Target:
Waveshare ESP32-S3-Touch-LCD-5
Reasons:
- ESP32-S3 is mature enough for LVGL dashboard
- 5 inch 800x480 display gives enough UI space
- WiFi connects to Cargo ESP32 AP
- CAN interface with onboard TJA1051 supports future OBD-II vehicle data
- microSD allows future logging
- 7-36V VIN supports vehicle power
Dashboard Power
Preferred:
ACC switched 12V
-> fuse
-> Waveshare VIN
Do not use OBD-II pin 16 for permanent dashboard power.
CAN / OBD-II
OBD-II pins:
Pin 6 = CAN-H
Pin 14 = CAN-L
Pin 5 = Signal Ground, optional if needed
Pin 16 = Battery 12V, do not use for permanent display power
Waveshare CAN termination must remain disabled on vehicle CAN.
Preferred CAN wiring:
OBD pin 6 -> Waveshare CAN-H
OBD pin 14 -> Waveshare CAN-L
Optional:
OBD pin 5 -> board/system ground
Use twisted pair. Cat5e/Cat6 twisted pair is acceptable for short vehicle runs.
Avoid Scotchlok/vampire taps on vehicle CAN. Prefer OBD splitter or proper automotive splice.
Vehicle Data
Coolant temp:
Standard OBD-II PID 0105
RPM:
Standard OBD-II PID 010C
Vehicle speed:
Standard OBD-II PID 010D
Transmission Temperature Sender
Preferred over Nissan-specific trans-temp CAN reverse engineering.
Candidate:
Autometer 2258 / 2259 style sender
Resistance table:
100F = 1123 ohms
120F = 708 ohms
140F = 460 ohms
150F = 374 ohms
170F = 253 ohms
190F = 175 ohms
210F = 123 ohms
230F = 89 ohms
250F = 65 ohms
280F = 42 ohms
300F = 32 ohms
320F = 25 ohms
340F = 20 ohms
Implementation:
- Sender to ADC voltage divider, or
- Sender to ADS1115 over I2C if no suitable exposed ADC exists
Use lookup-table interpolation.