This is an automated archive made by the Lemmit Bot.
The original was posted on /r/homeassistant by /u/Any_Slice9096 on 2026-06-22 17:02:45+00:00.
I built TopoMation because my Home Assistant occupancy automations stopped fitting the simple "one room, one motion sensor, one light" model.
TopoMation is a custom Home Assistant integration where you model the home as a hierarchy: property, buildings, grounds, floors, areas, and subareas. Each level can have its own occupancy entity, and the integration can generate normal Home Assistant automations from that model.
The cases that pushed me toward this were things like:
- bathrooms without dedicated motion sensors, where the light switch is still a useful occupancy signal
- pantries/closets that need very short hold times
- bedrooms where mmWave/presence should hold longer than motion
- kitchen/family-room layouts where two HA areas behave like one open space
- devices that belong to a floor, building, driveway, yard, or whole property instead of one room
- wanting simple entities like "anyone upstairs", "anyone outside", or "anyone on the property"
The screenshots show:
- The TopoMation hierarchy/tree.
- A Basement Hallway lighting rule: room becomes occupied, only if it is dark, turn on the hallway light.
- Ambient config: inherited lux source and dark/bright thresholds.
- Generated Home Assistant automation: normal trigger, condition, and action.
It is still beta, and I am looking for feedback from people with occupancy-heavy setups or weird real-house edge cases.
Repo:
https://github.com/mjcumming/topomation
Examples:
https://github.com/mjcumming/topomation/blob/main/docs/examples.md