My cheap 12V MPPT controller does its job but it's completely blind — no
data, no history, no remote access. So I wired an ESP32 to it.
What it does now:
- Live web dashboard (voltage, current, SOC%, lux, charge status)
- 30-day Ah history charts
- Adaptive cutoff voltage from NASA POWER historical irradiance + OWM forecasts
- SOC tracking via INA226 coulomb counting, NVS-persisted across deep sleep
- Deep sleep at night with periodic battery check wake-ups
- Remote access via DuckDNS + free Oracle Cloud VPS
- 15 languages
All parts under €5 each on AliExpress (ESP32, INA226, VEML7700, AOD4184 MOSFET).
Single .ino file, Arduino IDE. Running on my actual 2-panel home installation.
GitHub:
https://github.com/akgang-rgb/ESP32-Smart-Solar-Controller-MPPT-Firmware-Web-Dashboard
Full firmware + illustrated PDF doc + BOM also on Gumroad if you want to support the project.
Happy to answer technical questions.

