ESP32 add-on that gives a dumb MPPT charge controller a brain — web dashboard, SOC, NASA/OWM adaptive thresholds

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.