# Xterra Overland Dashboard API Specification ## Overview The ESP32 acts as the system controller and provides status and control endpoints. Primary communication is RS-485. WiFi HTTP API is provided for: * Web dashboard * Mobile access * Configuration * Future Home Assistant integration --- # GET /status Returns complete current system status. Example: ```json { "timestamp": 1748910000, "battery": { "soc": 82, "voltage": 13.2, "current": -6.4, "remaining_ah": 82.5, "runtime_hours": 11.2, "temperature_f": 77.4 }, "temps": { "fridge_zone_1": 35.8, "fridge_zone_2": 12.1, "rear_seat": 78.0, "outside": 88.4 }, "relays": { "starlink": false, "fridge": true }, "network": { "wifi_enabled": false, "rs485_connected": true } } ``` --- # GET /battery Returns detailed battery information. Example: ```json { "soc": 82, "voltage": 13.2, "current": -6.4, "power_w": -84.5, "remaining_ah": 82.5, "runtime_hours": 11.2, "temperature_f": 77.4, "cells": [ 3.299, 3.301, 3.300, 3.298 ], "cell_delta_mv": 3 } ``` --- # GET /temps Returns all temperature sensors. Example: ```json { "fridge_zone_1": 35.8, "fridge_zone_2": 12.1, "rear_seat": 78.0, "outside": 88.4 } ``` --- # GET /relays Returns relay states. Example: ```json { "starlink": false, "fridge": true } ``` --- # POST /relay/starlink Request: ```json { "state": true } ``` Response: ```json { "success": true, "starlink": true } ``` --- # POST /relay/fridge Request: ```json { "state": true } ``` Response: ```json { "success": true, "fridge": true } ``` --- # GET /network Returns network status. Example: ```json { "wifi_enabled": false, "rs485_connected": true, "starlink_enabled": false } ``` --- # POST /network/wifi Enable WiFi temporarily. Request: ```json { "minutes": 10 } ``` Response: ```json { "success": true, "expires_minutes": 10 } ``` --- # Future Endpoints ## Vehicle Data GET /vehicle ```json { "speed_mph": 62, "rpm": 2200, "coolant_temp_f": 192, "fuel_percent": 48 } ``` ## GPS GET /gps ```json { "lat": 43.6629, "lon": -116.6874, "speed_mph": 0, "heading": 0 } ``` ## Historical Data GET /history GET /history/temps GET /history/battery ## Home Assistant MQTT integration planned.