Hello!
I’ve been working on a custom integration called Vesta that takes over the logic of your existing heaters — TRVs, switches, or climate entities — and makes them smarter without replacing your hardware or depending on any cloud service.
What it does
Every minute, Vesta evaluates each room and decides whether to heat and at what temperature, based on a layered system:
- Frost protection: always on, cannot be disabled
- Emergency heat: link a switch to force all heaters to max instantly (emergency cold)
- Vacation mode: link an input_boolean to drop all rooms to 5°C from an automation or dashboard
- Away mode: automatic based on Person entities, with smart pre-heating when you’re heading home (GPS-based, filters out stationary presence)
- Schedule: uses HA’s built-in Schedule helper; each block can carry a temperature or mode directly in its additional data field
- Manual override: holds your setpoint for 4 hours, then returns to schedule automatically
Self-learning
Vesta tracks how fast each room heats up and cools down over time. These rates improve the pre-heating calculation and adapt to your home’s actual thermal behaviour.
Energy savings tracking
Each room creates sensor entities for heating time and hours saved per feature. If you configure your energy price and annual consumption, Vesta estimates monthly kWh and cost savings using the Heating Degree Hours method — each hour of setpoint reduction is weighted by how cold it was outside at that moment, so the estimate is more accurate than a simple hours × factor approach.
Other details
- Multiple temperature sensors per room, averaged automatically — falls back to TRV internal sensor if all go offline
- TRV valve-openness estimation from internal sensor for better power tracking
- Area auto-discovery when adding a room
- Global defaults with per-room overrides for schedule, presence, temperatures
- Fully local, no cloud, MIT licence
Happy to hear feedback or questions!