How the HEMS works: load management and PV charging
At runtime, the HEMS performs two technically separate jobs: load management to protect the fuse, and PV charging to make use of solar surplus. Both functions can be active independently. A prerequisite is an activated HEMS on the CEM wallbox and, depending on the mode, a supported energy meter.
The two functions at a glance
Load management ensures that the sum of charging currents stays below the fuse limit — with or without accounting for other household loads. PV charging additionally routes any available PV surplus to the vehicle. The two jobs run independently: an installation can be operated purely for load management, whereas PV charging in turn requires a configured house energy meter.
Static load management
Without a configured meter, the HEMS distributes a fixed current budget evenly across all paired wallboxes. Other loads in the building are unknown, so the limit has to be chosen conservatively — in the worst case, full household consumption and charging run in parallel.
Dynamic load management
With a house meter, the HEMS observes household consumption and recalculates the charging budget continuously: available = grid limit − house load. Charging power grows and shrinks accordingly, without putting the fuse at risk.
PV charging
The HEMS calculates the PV surplus (generation − house load) and routes it to the vehicle instead of exporting it to the grid. Prerequisites: a configured house meter, PV mode enabled in the wallbox (see "Configuring PV optimization"), and currently exactly one wallbox — multiple are not supported.
Supported energy meters
For dynamic load management and PV charging, the HEMS needs a supported energy meter at the grid connection point. The meter is connected via Modbus TCP or Modbus RTU through an RTU-to-TCP converter. Currently supported:
- ABB B21 (Modbus TCP/RTU)
- ABB B23 (Modbus TCP/RTU)
- Carlo Gavazzi EM111 (Modbus TCP/RTU)
- Carlo Gavazzi EM112 (Modbus TCP/RTU)
- Carlo Gavazzi EM24 (Modbus TCP/RTU)
- Carlo Gavazzi EM24-DIN_E1 (Modbus TCP only)
- Carlo Gavazzi EM340 (Modbus TCP/RTU)
- Eastron SDM120 (Modbus TCP/RTU)
- Eastron SDM630 (Modbus TCP/RTU)
- Eastron SDM630 (IT grid, Modbus TCP/RTU)
- Hager ECR180D (Modbus TCP/RTU)
- Hager ECR380D (Modbus TCP/RTU)
- KOSTAL Smart Energy Meter (Modbus TCP/RTU)
- Negotica P1 Gateway (Modbus TCP/RTU)
- Schneider iEM3155 (Modbus TCP/RTU)
- Schneider iEM3555 (Modbus TCP/RTU)
- Shelly Pro 3 EM (Modbus TCP only)
- Siemens PAC1600 1×230 V (Modbus TCP/RTU)
- Siemens PAC2200 (Modbus TCP only)
- Siemens PAC2200 (IT grid, Modbus TCP only)
- Steca PV inverter (proprietary connection)
- Xemex P1MB 1.0 (Modbus TCP/RTU)
- SunSpec-compliant devices (Modbus TCP/RTU)