Design and verify whole-home energy routines: shift loads off-peak under time-of-use tariffs, enforce safety interlocks on high-draw devices, run vacation energy policies, and measure real savings against a baseline. Use when someone wants to cut their electricity bill with automation, schedule appliances around cheap hours, or prove a savings claim with measured kWh.
name: home_energy_routines description: Design and verify whole-home energy routines: shift loads off-peak under time-of-use tariffs, enforce safety interlocks on high-draw devices, run vacation energy policies, and measure real savings against a baseline. Use when someone wants to cut their electricity bill with automation, schedule appliances around cheap hours, or prove a savings claim with measured kWh.
Home Energy Routines
Purpose
A smart home that only turns lights on and off leaves the real money on the table. The big bills come from big thermal loads (HVAC, water heater, EV charging) and when those loads run. This skill designs routines that move electricity use to cheap hours and cut waste, then proves the savings with measured data instead of vibes.
It pairs with home_assistant_routines for the automation craft (confirmations, presence, failure fallbacks). This skill owns the energy strategy: tariff math, load shifting, safety interlocks, and measurement. It does not re-teach automation basics; it assumes the routine is built right and asks whether the routine saves anything.
Workflow
Follow these steps in order. Do not skip measurement.
1. Read the tariff before touching a schedule
Everything downstream depends on this. Ask for, or look up, the actual rate plan.
- Flat rate: load timing changes nothing on the bill. Skip to standby waste and vacation mode. Never build off-peak schedules for a flat-rate house; they add complexity for zero savings.
- Time-of-use (TOU): note the peak window and the peak vs off-peak rates in the user's currency. Peak windows vary by supplier and country and are typically afternoon/evening, with off-peak overnight. Do not hardcode 4-9 PM or any specific window from memory; read the tariff.
- Savings formula for one shifted load:
shifted_kWh x (peak_rate - offpeak_rate). Use only the user's real rates. A number built on someone else's tariff is fiction.
2. Rank loads by draw
Not all automation candidates matter. Rank by energy per cycle, biggest first:
- HVAC (heating/cooling): the largest load in most homes. Strategy is setback timing and pre-conditioning, not constant tight control.
- Water heater: second largest. Heat water before peak, coast through it.
- EV charging: huge but perfectly deferrable. Charge inside the off-peak window.
- Dryer and dishwasher: medium draws, easy to delay-start.
- Standby waste ("vampire" loads): small per device, but measured over 24/7 they add up. TVs, consoles, chargers, old cable boxes. Measure before cutting; some "waste" is security cameras and routers that must stay up.
See references/loads.md for the estimation method (DOE Energy Saver: watts x hours = Wh, and per-cycle figures for appliances).
3. Build the shift routines
The reusable patterns, biggest first. Full YAML examples in references/examples.md.
- EV charging window: allow charging only during off-peak hours, with a manual override for "I need it now." Never strand the driver: the override must be one tap and obvious.
- Water heater pre-heat: heat to target before the peak window opens, then let the heater idle through peak. Add a temperature sensor check so you do not reheat water that is already hot.
- HVAC pre-conditioning and setback: cool or heat the house ahead of peak, then relax the setpoint during peak hours. Keep setbacks inside safe bounds: no pipe-freeze temperatures in winter, no heat-danger levels for pets.
- Delay-start appliances: dishwasher and dryer run after off-peak starts. Use the appliance's own delay timer when it has one; only automate the plug or start command when the device is dumb.
4. Add safety interlocks
High-draw loads are where automation mistakes get physical. These are non-negotiable; they override every schedule.
- Stagger high-draw starts. Two 3-4 kW loads starting at the same second can trip a breaker or spike demand charges. Sequence big loads with a few minutes between starts.
- Never fully kill safety-critical loads. Fridge, freezer, smoke/CO detectors, medical devices, and security cameras are not energy-saving candidates. A vacation routine that switches off the wrong circuit destroys food or worse.
- Bound thermal setbacks. Set hard limits on HVAC setpoints in both directions, and floor the water heater so it never drops below usable/safe hot water temperatures for the household.
- Confirm before expensive mistakes. If a routine could strand someone without hot water or leave the house without heat on a freeze night, put a confirmation gate on it (see
home_assistant_routines, the confirmation layer).
5. Vacation energy mode
Away for days is the highest-leverage routine. It is an energy policy, not just a security scene:
- Water heater off or vacation mode (it reheats in hours when you return; weeks of standby heat loss is pure waste).
- HVAC to away setbacks within the safety bounds from step 4.
- Standby circuits off via smart plugs, but keep a keep-alive list: fridge, cameras, network gear, anything on a timer.
- One return routine that restores everything before the household walks in, and verifies each device actually came back on.
6. Measure, baseline, then claim
A savings claim without a baseline is marketing. Build the measurement before changing anything.
- Instrument first: put the shifted loads on the energy dashboard as individual devices (Home Assistant: Settings, Dashboards, Energy, Individual devices; each device needs a kWh energy sensor,
device_class: energy, state_class: total_increasing). Whole-house bill comparison alone cannot prove which routine did the work.
- Run a baseline of two to four weeks with routines off but sensors on.
- Change one thing at a time. If three routines go live the same week, attribute the total honestly, not per routine.
- Weather-normalize HVAC claims. Heating and cooling swing with the weather; a mild month after a hot month looks like savings without any routine. Compare against similar weather periods or say plainly that the claim is not weather-normalized.
- Report in kWh and money: per-device kWh before and after, multiplied by the user's real tariff rates. If the sensor data cannot support a number, say so and report what was measured instead of estimating.
Details and templates in references/measurement.md.
Output Contract
Every energy engagement ships with:
- The tariff read: plan type, peak window, rates used (or a note that they are flat/unconfirmed and what that implies).
- The routine set: YAML or configs for each shift/vacation routine, with interlocks marked at each decision point.
- An interlock list: which loads stagger, which loads are excluded from automation, and the thermal bounds.
- A measurement plan: which devices are metered, baseline dates, and the before/after template.
- A savings report, only after measurement: per-device kWh deltas, cost at real rates, and any caveats (weather, simultaneous changes, estimation vs metering). No savings number may appear before data exists.
Operating Rules
- No routine ships without the tariff read. Flat rate means no scheduling routines, full stop.
- Never invent tariff rates, peak hours, appliance wattages, or savings figures. Unverifiable = cut it or mark it as an estimate the user must confirm.
- Safety interlocks override schedules and convenience. A routine that can trip a breaker, freeze pipes, spoil food, or strand a driver does not ship.
- Keep drafts staged. Routines go live only after a test run; staged is never live.
- Every factual claim about tariffs, devices, or HA energy features must trace to the user's bill, the official docs, or measured data. Links in
references/sources.md.
- Report measured kWh before money, and money before claims. Order matters: data first, conclusions second.
No ratings yet — be the first to rate it.