Real-Time Monitoring
- Main Monitor — PV power, battery SOC, load, grid status, SP port power, room temp on one page
- Energy Flow Diagram — animated power flow: solar, battery, grid, loads, EPS output
- Gauge View — large graphical gauges for SOC, PV, load, and battery power
- Detailed Monitor — full register data: per-leg voltage, frequency, power factor, energy counters
- Data History Charts — 7-day on-device logging for solar yield, SOC, grid, load
- Live update interval — ~2 second refresh from inverter
Dual Inverter Support
- Master + Slave — both inverters polled in the same scan cycle
- Aggregate totals — combined PV, battery power, and load across both units
- Per-inverter breakdowns — PV1/PV2/PV3 per string, per unit
- SOC sync logic — promotes the best battery reading as system SOC automatically
- Individual tracking — serial number, firmware, and status per inverter
Battery BMS Visibility
- Up to 15 packs — per-pack SOC, voltage, current, temperature, and cycle count
- Cell-level data — min/max cell voltage and delta per pack
- Fault flags — over-voltage, under-voltage, over-temp, and BMS alarm flags per pack
- FET temperatures — charge and discharge FET temp per pack
- Local LAN tap — passive WiFi intercept of BMS data, no cloud account needed
- Works offline — no EG4 internet connection required
Quick Charge
- Timed AC charge session — 15 min to 4 hours, set and walk away
- Full save/restore — saves all inverter charge settings before starting, restores when done
- Auto-restore on expiry — timer fires and restores original registers automatically
- Manual stop — end the session early from the browser at any time
- Reboot-safe — restore logic fires on next boot if device was rebooted mid-session
- Verified write order — register sequence confirmed against inverter firmware behavior
GridBoss Control
- SP1–SP4 live power — real-time wattage on each smart port
- SP port on/off — toggle any smart port directly from the web UI
- Generator control — start/stop generator via GridBoss
- Operating mode display — current GridBoss mode and state
Inverter Settings
- Charge voltage ceiling — absorption and float voltage
- Discharge cutoff — minimum battery voltage before cutoff
- AC charge current limit
- Time-of-use schedules — charge and discharge time windows
- AC charge mode — time window / SOC / combined
- Operating mode — Self-use, Time-of-use, Backup
- Grid export limit
- Battery type selection
- Low temperature charge cutoff
Smart Outlets
- 4 outlet channels — Kasa HS103/EP40, Shelly Gen1, Shelly Pro/Gen2
- Local LAN only — no Kasa cloud, no Shelly cloud, no internet required
- Trigger: SOC High/Low — turn load on or off based on battery state
- Trigger: Temp High/Low — control loads based on room temperature sensor
- Trigger: Grid Lost — shed loads automatically when grid goes down
- Trigger: Time Schedule — fixed daily on/off window
- Hysteresis control — prevents rapid on/off switching near thresholds
- Live status display — outlet on/off state shown on main monitor page
- Background state polling — catches changes made from Kasa app or manual switch
- KLAP + legacy XOR — automatic protocol fallback for all Kasa firmware versions
Push Notifications (Pushover)
- Battery SOC low — configurable threshold
- Battery full
- Grid lost / restored
- Room temp high — warning and critical levels
- Room temp low
- Test notification — send from settings page to verify credentials
- 2°C hysteresis — no repeated alerts for same event
Home Assistant / MQTT
- 27 MQTT entities — solar, battery, grid, load, SP ports, room temp, inverter mode
- Auto-discovery — appears in Home Assistant automatically, no YAML needed
- Any MQTT broker — Mosquitto, HiveMQ, or any standard MQTT v3.1 broker
- Fully optional — MQTT is disabled by default, enable only if needed
Hardware & Reliability
- Seeed XIAO ESP32-S3 — ~37°C at idle with mini heatsink, quiet and reliable
- DS18B20 room temp sensor — optional, self-configuring on GPIO header
- mDNS hostname — access via bossmonitor.local from any device
- Recovery access point — BossMonitor-Recovery hotspot at 192.168.15.1 always available
- OTA firmware updates — upload from browser, no USB cable needed after initial flash
- Persistent settings — all config stored in flash, survives reboots and power outages
- No cloud dependency — fully functional during internet outages
- No subscription — one-time purchase, no recurring fees