MIA in practice: before and after
During development we measured it: the same controller, the same simulated house, once with a conventional thermostat and once with MIA. Less overshoot, a much more even temperature.

How did we measure? coming soon
The controller was real: a myIO Server V4 Opta ran MIA with its own firmware. The house was simulated by a program: the thermal behaviour of a room with a radiator, in 20-second steps. This let us play the same night twice, once with the thermostat alone and once with MIA.
The underfloor heating figures come from a computer model.
MIA is coming to V4 GIGA and V4 Opta.

The result in numbers
Nights measured on the controller: radiator
set band (18.0–18.5 °C)relay ON (heating)MIA early switching
At midnight the room is still cooling after the day period, so the first hour of both nights is above the band. The thermostat switched off at 18.5 °C, but the radiator kept heating: the room warmed up to 18.79 °C. MIA switched off already at 18.27 °C, because it had learned how much the radiator keeps heating afterwards: the peak was 18.55 °C. The short switch-on at 02:55 was the one-off price of learning: by the next cycle it had learned the real 6-minute lead time.
Underfloor heating: where it matters most
set band (21.0–21.5 °C)relay ON (heating)
The floor keeps heating long after it is switched off: with half an hour of dead time and an hour of thermal inertia. A conventional thermostat overshoots by 0.6 degrees and spends 71 % of the day outside the set band. The same house with MIA: the peak stays at the top of the band, and it is in the band 98 % of the day. For this it switches 12 times a day instead of 7.
No heating the street with the window open
Airing the room while the radiator heats at full power? This is common with a conventional thermostat: the cold air cools the room, so the thermostat heats even harder. MIA recognises this.
Open window detection. If the temperature drops suddenly within a few minutes, much faster than the room normally cools, MIA suspects an open window: it logs it and lets you know. No window sensor needed, the room's temperature sensor is enough.
Heating pause with an open window (optional). MIA then stops heating that room while you air it. Once you close the window and the temperature starts rising again, or the set time runs out (30 minutes by default), the heating returns. You can override it by hand at any time, and frost protection is always on: if the room would cool below 8 °C, the heating switches back on.
In the tests it recognised every simulated window opening, with no false alarms, and on the controller the heating pause worked 7 times out of 7.

What does this mean for you?
- No overheated rooms: MIA switches off early, because it knows how much the radiator or the floor keeps heating afterwards.
- No overcooling either: it starts again in time, so the temperature stays in the band you set.
- No heating the street while you air the room: with the window open, the heating can pause.
- The difference is biggest with underfloor heating: MIA factors in the thermal inertia of the heavy floor in advance.
- It learns by itself: it learns from how your house behaves and keeps adapting to it.
MIA keeps learning
MIA is the machine-learning layer of myIO, and this is only the beginning. It gets new skills through updates, without touching the wiring.
What we are working on, for example:
- spotting unusual power consumption from the energy meter data;
- estimating your home’s heat loss with an outdoor temperature sensor;
- suggestions based on your habits, for example for the schedules.
For professionals
- Controller: myIO Server V4 Opta, firmware 4.15.1. Here MIA switches early within the thermostat band: based on the learned after-heating it switches off earlier, and on earlier.
- Simulation: room with a radiator, set band 18.0–18.5 °C, 20-second trace, one point per minute; nights of 20 and 21 October 2026.
- Thermostat: average overshoot of 3 clean heating cycles 0.26 °C (0.29 °C on the night shown). MIA: one clean cycle (the 03:54 early switch-off); the second was disturbed by an open window, so 0.05 °C is one measurement, not an average.
- Floor model (on a computer): 2400 s time constant, 30 min dead time, 1-Wire sensor; after 3 days of learning, one hysteresis day, then one MIA day.
- Stability: during the 9-hour measurement MIA never left the set band, there was no restart, and memory use stayed flat.
- Open window detection: a drop of at least 0.5 °C over the last 5 minutes, at least three times faster than the learned cooling; the open flag lasts until the temperature has not fallen for 3 consecutive minutes, at most 30 minutes. Result: 8/8 simulated openings detected, 0 false alarms.
- Heating pause: the zone relay switches off and is held (the thermostat does not switch it back); released by a +0.2 °C recovery, the hold time (30 minutes by default), a manual override or frost protection (8.0 °C). On the controller: 7/7 trials.