I tested a small surplus-power automation last winter and ran into a problem that may be familiar to anyone switching a load from live P1 data.
My setup was:
- HomeWizard Wi-Fi P1 Meter (HWE-P1)
- HomeWizard Energy Socket (HWE-SKT)
- Home Assistant
- a basic electric heater fixed at 750 W
- gas heating as the main heat source
I used the P1 meter’s current net power as the input. The heater could start when the house exported enough power to cover the 750 W load. The Energy Socket let me confirm the heater’s consumption and switch it from Home Assistant.
The first version reacted too closely to the live power value. A short cloud or another appliance could remove the surplus within seconds. The heater then switched off and came back on when the value crossed the threshold again.
I later added a weather forecast condition. The automation checked both the current surplus and whether the sunny period looked likely to continue. That reduced the rapid switching in this setup. I did not keep the exact thresholds, entity names or weather provider, so I cannot share reliable drop-in YAML.
The useful part for me was the order of work:
- Check how the P1 integration reports import and export in your own setup.
- Measure the appliance by itself and confirm its real power draw.
- Observe how fast the net value moves when clouds and household loads change.
- Add a second condition before letting the automation switch the load.
- Keep manual control and a safe off state.
An electric heater needs extra care. I kept the load at 750 W. The socket’s maximum rating does not prove that a heater, wall outlet or remote switching arrangement is safe. The heater manual and local electrical guidance still apply, including any requirements for a thermostat, overheat protection and external switching.
I saw lower gas use while running this setup, but I did not run a controlled before-and-after measurement. I cannot attach a percentage or cost saving to it.
I would be interested in how others stop short changes in net export from causing repeated switching. Do you use a start/stop margin, a minimum run time, a forecast condition, or a combination?