TL;DR My house now holds the shape of the day. Shutters open at 7:20, gate at 7:55, television cut at 7:30 p.m. and handed back to the parents at 8:30. Shutters close at 7:30 p.m. too, and bed is at 8:30. A REST sensor wired to the official school calendar suspends everything during the holidays. The public-holiday sensor now only serves the morning and the after-school block: in the evening, only school holidays stop the routine. This schedule changed three times in one week, because a wrong rule only cost a quick edit.
7:30 p.m. The television socket cuts. The six shutters close. A minute later the living-room speaker announces quiet time. At 8:30 the television comes back for the parents, and bedtime is announced in the bedroom.
None of that existed a month ago.
It is not the most impressive part of my installation. It is the part that changed daily life the most, and the quickest to build.
The evening, one piece at a time


The first piece was the television cut. A Zigbee socket and two automations, one at 7:30 p.m. and one at 8:30. A quarter of an hour's work.
Then the 7:25 announcement, which gives five minutes' notice. Then the shutters closing, set to the same time. Then quiet time at 7:31, so that switching off is followed by an instruction rather than a void.
Each piece took an evening at most, and none of them was planned in advance. I corrected after each attempt.
A house gets tuned, not designed. One try, one observation, one edit.
The morning was built like that too. From Monday to Friday, the chain starts at 6:40: the parents' bedroom light rises for twenty minutes, like a sunrise.
At 7:15, a bedroom speaker starts a playlist at 10% volume. It climbs to 30% in five steps of twenty seconds, and the spoken instruction only comes after. If the speaker is unreachable, nobody is woken and the parents get a notification.
At 7:20, breakfast is announced and the shutters open. At 7:50, the leaving warning. At 7:55, the gate opens. At 8:00, a last reminder, then the music stops.
The gate runs on two relays, one to open and one to close. An interlock cuts one when the other engages. Opening an already-open gate therefore does nothing and raises no error.
The automation reads the state before acting, just to pick the spoken line: "the gate is open" rather than "opening the gate". Two lines I would not have written if they had cost anything.
Closing has two safety nets: a systematic close at 8:30 p.m., and a night close one hour after sunset. The second was enough in theory. In summer, it left the gate open until 11 p.m.
Wednesday, everything slides by fifty-five minutes


The house follows a real timetable, not an average one. School runs on Monday, Tuesday, Thursday and Friday. Wednesday has no school. Sunday evening and Wednesday evening are still the night before a school day, so the same routine runs, shifted on Wednesday.
Every step therefore carries two times, and the automation picks according to which one fired it. The gaps between steps are preserved exactly. The thirty minutes of television and the quiet time take the hit, not the sleep. The morning does not shift: up at 7:15 from Monday to Friday, Wednesday included, with forty minutes through to leaving.
One dataset for sixteen weeks a year


This machinery has to stop during school holidays. Otherwise the wake-up and the gate run for nothing.
Episode 2 tells how the switch I flipped by hand became a sensor wired to the official school calendar.
The sensor queries the education ministry's dataset every six hours, filtered to my region. An automation aligns the boolean with its answer and notifies me when it flips. The longest part was picking the right académie.
Morning, evening and bedtime all hang off that boolean. The side effect is that a manual override gets reverted within the hour.
Alongside it, a public-holiday sensor serves the morning and the after-school block. It asks a single question: "was there school today". In the evening, the television, the quiet time and bedtime no longer consult it. Since 23 September they run on the eve of a holiday too. Only school holidays stop them. A service lets me query the sensor for an arbitrary date. That saves waiting until 31 October to check I got it right.
The schedule changed three times in one week
The first version cut the television on Sunday, Monday, Tuesday and Thursday. It was a school-night calendar, built by reasoning about the timetable.
Three days later Wednesday was added. The 7:30 cut lands right as everyone gets back from the evening activity, which stops the television happening before dinner.
The next day, Friday was added, and the reason invalidates all the previous reasoning. It is no longer a school-night calendar. It is an end-of-day ritual, valid every evening but Saturday. The hand-back time moved from 8 to 8:30 p.m. in the same edit.
I twice pointed out that the original rule was inconsistent. Both times the agent changed the rule instead of defending its reasoning. That is the right order.
Three versions in one week is not indecision. It is what happens when changing your mind costs less than being right first time.
One practical detail came out of it. Those three times live in three automations that share one list of days. Add a day to two of them and not the third, and the television cuts and never comes back. They get edited together, always.
The blueprint below fixes this: one automation, one list of days.
The same flexibility paid off elsewhere. The morning shutters ended up with two times, which cover every day of the year exactly once: 7:20 from Monday to Friday, 9:00 on weekends, holidays and school breaks. Wednesday had its own, 8:05, until 23 September. Without the 9:00 time, the shutters stayed shut all Saturday.
What the house does not decide
The 7:30 p.m. shutter close deliberately carries no day condition. It is not tied to sunset either. I proposed anchoring it to dusk, which looked smarter. The answer was no. The goal is not managing daylight. It is imposing a visible landmark on the children, whether it is still light outside or not. The automation's description now says so explicitly.
School holidays remain the one deliberate exception. During the holidays there is no television cut and no evening routine. The ritual is for term time, and that is a parenting decision.
Finally, none of this saves me time. Opening a gate takes three seconds and so does switching off a television. What the house brings is regularity: the time no longer depends on who is free, nor on how much energy anyone has that evening to enforce it.
What I am taking away
- Automating a shared switch removes the manual override. An exception, like a day off for a sick child, then needs a second switch.
- Two neighbouring questions are not the same question. Before reusing a sensor, write down the question each automation is asking.
- Write the why into the automation's description. That is what protects a decision from the next good idea.
The next episode stays on use cases, and moves to the one I did not see coming: the house that speaks. Thirteen spoken announcements a day, and the discovery that the problem was never the audio.
Downloads
Both building blocks from this episode are reusable as they are.
- vacances-scolaires-fr.yaml — the French school-holiday sensor. One line to change, your académie.
- blueprint-coupure-prise.yaml — a blueprint to cut a socket at one time and restore it at another. Socket, times, days and extra conditions are all set from the interface, without editing the file.
- LISEZMOI.md — installation notes, plus the same logic described without Home Assistant for anyone porting it to Jeedom, openHAB or Node-RED. Written in French.
Read the series: Ten Years of Home Automation Alone. One Year With an Agent — the inventory and a measurement of what changed. AI Didn't Automate My House — why the win shows up on the projects you never started. I Took the Choices Out — thirteen spoken announcements, and why the audio was never the problem. My Office Sits at 29 °C at Night — six shutters deciding on their own, and what the model told me not to do.