The right moment for every kilowatt-hour
Every 15 minutes, each Cantabile box looks 48 hours ahead and decides when to heat, charge, store and wait – for the lowest cost within the comfort and limits that people set.
Cheap and sunny hours do the work
The planner sees the price of every quarter-hour, the expected solar yield and the expected use. It moves what can be moved:
- the battery charges from the sun at midday and covers the expensive evening,
- the car charges in the cheapest hours before it is needed,
- the heat pump pre-heats when power is cheap and the house can store the warmth,
- shades help to keep cooled rooms cool.
What cannot move – comfort temperatures, the car ready by morning, a battery reserve – is a firm condition, not a wish.
- Power price
- Solar yield
- Battery charges
- Battery discharges
- Car charges
Forecast, plan, act, learn
Forecast
Use and solar yield per site, from the weather forecast of the German Weather Service (DWD), a physical PV model calibrated to the plant, and learned daily and weekly rhythms. Rooms get a learned thermal model: how fast they warm up and cool down.
Plan
A mixed-integer optimisation over 48 hours in 15-minute steps, solved on the box in seconds. It re-plans every quarter-hour, and at once when a new tariff, model, limit or command arrives.
Act
Commands go to the devices through Home Assistant – only through the safety guard, and steadily: a few changes a day instead of several an hour.
Learn
Every night the box retrains its forecasts on its own history: special days, the yearly rhythm, cold snaps. In the cloud a challenger model replaces the current one only when it forecasts better.
Nothing is switched without a reason and a right
- Only devices the owner consented to, per device and for the site
- Every command stays within the device's bounds
- Rate limits; minimum on and off times for heat pumps, air conditioners and boilers
- A manual change makes the agent leave that device alone for a while
- Safe defaults when data gets stale; the device's own firmware safety is never overridden
Floors and limits, nested
Every controlled value has limits per level. Each level can only narrow the range of the level above: the landlord sets a comfort floor, the tenant may raise it. The box enforces the result – no command crosses it.
- Law and grid operatore.g. a §14a limit
- Cantabile policyplatform-wide safety limits
- Buildingconnection limit, building rules
- Owner or landlordcomfort floor
- Residentown preferences within the range
Every failure ends in local control – never in discomfort
Four operating modes
| Mode | What happens |
|---|---|
| off | Nothing runs. |
| shadow | Plans and records what it would do and what it would save; switches nothing. Every new site starts here. |
| advisory | Publishes its plan to Home Assistant and the console. |
| auto | Acts on its plan through the guard. |
When something fails
| Failure | Behaviour |
|---|---|
| Cloud unreachable | The box plans on with its last tariffs and its own forecasts; data is buffered. |
| Building tier down | Flats plan on their own with the last price signals. |
| Home Assistant down | Devices fall back to their own thermostats and defaults. |
| Bad forecast | The next quarter-hour's plan corrects it; a model that keeps erring is replaced. |
The plan and the forecast, visible
Every site's plan and its forecasts are shown in the console – what the box intends to do, and how well it predicted what happened.


No invented numbers in a plan
A plan is only as good as its facts. Cantabile does not fill gaps with assumptions:
- No tariff, no price optimisation. The box plans for comfort and limits only, and says why – and how to enter the price from the bill.
- No battery without its facts. Capacity, power, efficiency and a state-of-charge sensor, or the battery stays in its safe state.
- Sourced data only. Grid fees, levies and basic-supply tariffs carry their source and date; a missing value is reported, not made up.
The owner stays in charge
Weekly temperature schedules, the car ready by a given time, a battery reserve and overrides – set in Home Assistant or on the Hub's own pages. The plan works around them.
Coming: a shared forecasting model that learns from all sites that consent, for a better start on new sites.
Next: what the plan works with
Prices, grid fees, §14a windows and fixed charges – composed per quarter-hour.