TopoMation: beta custom integration for occupancy-driven whole-home automation

I’ve been working on a Home Assistant custom integration called TopoMation.

It started as a way to manage occupancy automation across my home and cabin without maintaining a pile of per-room automations by hand. The basic idea is that Home Assistant’s floors and areas are useful, but real homes often need a deeper model: property, building, grounds, floors, rooms, subareas, open-plan spaces, and devices that belong to something larger than a single room.

TopoMation adds a real location hierarchy on top of Home Assistant floors and areas. Each level gets its own occupancy entity, so things like “is anyone home,” “is anyone upstairs,” or “is anyone outside” become normal HA binary sensors you can use in automations. It can also generate normal Home Assistant automations for common occupancy-driven workflows: lighting, fans/switches, media players, some HVAC fan workflows, and vacuums.

I’m sharing it as a beta, not as a polished product. It runs in my installations every day and has a decent test suite, but it has not had any outside installs yet. It also touches a lot of Home Assistant surface area: areas, floors, entities, services, custom panels, and automation creation. Home Assistant setups vary a lot, so I can’t realistically predict every combination of versions, device integrations, entity models, browsers, and household layouts.

If you like trying custom integrations, are comfortable reading HA logs, and can start with one room before modeling your whole house, I’d love feedback.

A few expectations up front:

  • This is a one-person project.
  • Please back up your HA config before trying it.
  • Start small: one room, one occupancy source, one light, one rule.
  • It is not meant to replace the full Home Assistant automation editor.
  • It is not a support-backed or turnkey product yet.
  • If you want something polished and low-risk, this probably is not that yet.

GitHub repo and README:

Please report bugs, install problems, automation behavior issues, and feature ideas on GitHub Issues:

I don't monitor this forum thread closely, so GitHub Issues are the best place for anything you want me to actually see and track.

1 Like

Quick update on TopoMation.

I tightened up the README, added a set of real-house examples, added repository topics for discovery, and added Home Assistant/HACS validation to CI. The goal is still the same: help with occupancy automation setups that have outgrown one-room-at-a-time logic.

Here is one small example flow from my own setup:

  1. A Basement Hallway lighting rule in TopoMation: when the room becomes occupied, only if it is dark, turn on the Basement Hallway light.

  2. The Ambient tab showing where the inherited lux source and dark/bright thresholds come from.

  3. The generated Home Assistant automation. It is a normal HA automation with a trigger, condition, and action, so it can be opened, inspected, disabled, and traced like anything else in HA.

The kinds of setups I am especially looking for beta feedback on:

  • Open-plan spaces where adjacent rooms should sometimes share occupancy.

  • Bathrooms, closets, pantries, garages, sheds, or outdoor zones with odd sensor mixes.

  • Whole-floor, whole-building, or whole-property automations.

  • Rooms that combine motion, mmWave/presence, contact sensors, switches, media players, or camera detections.

A few concrete examples are here:

Repo:

If you try it, please start with one boring room, one occupancy source, one light, and one vacant rule before modeling the whole house. Bug reports and behavior reports are easiest for me to track on GitHub Issues, but I will watch this thread for beta feedback and questions.

And if TopoMation looks useful, a GitHub star is genuinely appreciated. It helps other Home Assistant users discover the project.