Room occupancy is something I’ve been playing with for several years, and I’m yet to find a really good solution to it. Having said that Hass has a Bayesian filter component which can give you a probability of occupancy based on a bunch of weighted inputs, for example if a motion sensor triggered in the last minute the room is probably occupied, likewise if the TV in the living room is playing video.
I keep toying with the idea of a bunch of BLE beacons in every room and then using signal strength triangulation in a mobile app to determine which room someone is in but that falls over the moment someone leaves their phone in a room.
I’ve just recently found out about ESPrensense [1], which does this, but running on ESP32 microcontrollers, so it should be much less resource intensive.
I keep toying with the idea of a bunch of BLE beacons in every room and then using signal strength triangulation in a mobile app to determine which room someone is in but that falls over the moment someone leaves their phone in a room.