Homevolt Battery Integration -- 114 entities, CT clamps, schedules, error reporting

Hi all,

I’ve built a custom integration for the Homevolt battery system (Tibber / Polarium) that provides comprehensive local monitoring via HTTP polling – no cloud required.

Why another Homevolt integration?

There’s a core integration that was recently merged, but it only polls 2 API endpoints and creates ~32 sensors. My integration polls 6 endpoints and creates 114 entities covering everything the battery exposes.

What you get

  • 19 system sensors – power, SOC, energy produced/consumed/imported/exported, temperature, frequency, phase angle

  • 6 voltage + 3 current sensors – per-phase L1/L2/L3 plus line-to-line voltages

  • 14 BMS sensors – per battery module: SOC, temperature, cycles, energy, alarms

  • 36 CT clamp sensors – per-phase voltage, current, power, power factor, RSSI, PDR, frequency

  • 12 CT node sensors – battery voltage, temperature, uptime, firmware, OTA status

  • 6 schedule sensors – current action, next action, entry count, local mode

  • 6 diagnostic sensors – error report summary, EMS info/warnings/alarms, firmware versions

  • 5 status sensors – uptime, WiFi RSSI, firmware ESP/EFR, error report health

  • 9 binary sensors – WiFi/MQTT connected, CT available, USB powered, firmware update available, schedule local mode

Smart polling

Instead of hitting all endpoints every cycle, it uses tiered polling:

  • EMS data: every 30s (configurable 10-300s)

  • Error report: every ~2 minutes

  • Status, nodes, schedule: every ~5 minutes

Installation

Add as a custom repository in HACS:

  1. Open HACS in Home Assistant

  2. Click the three dots menu → Custom repositories

  3. Add https://github.com/martinwelen/Homevolt4HA as type Integration

  4. Install and restart

The integration supports Zeroconf discovery – it should find your Homevolt automatically.

Links

Feedback and feature requests welcome!