Rooms Manager: Smarter Rooms: Personalized home automation with Occupancy



Only Announce from and announce to hours - which also require an entry


none of those should be required. please update from repo and give it a try.



All good now… and the recursion issue with asleep/vacant on turn off is also fixed! Thanks for the lightning fast turnaround!


New to all this, and just found this smartapp.

In installed from the repo and I get an “Error Saving Page” every time I try to save the room. Can someone point me in the right direction to get started?

The only thing I can find in the log is
warn Exception ‘java.lang.IndexOutOfBoundsException: toIndex = 5’ encountered parsing ‘cmd: 600D, payload: 02 00 82 01’


did you save and publish the DTH and both smartapps from the repo?

when first creating the room give it a name and save it. then go back into the room and edit it to configure with devices and settings.

does that help with the issue?


I missed the DTH. Thank you.


With this app, can I, for example, set a dimmer to 50% while occupied and 10% while VACANT, but only if the LUX level is below a threshold and only during select location modes?

In other words, I want to maintain a minimum during dawn and dusk, but not while the location mode is SLEEP and not while there’s enough ambient light through the windows. I’ve had some difficulty figuring out how do that… how/when to apply rules, etc.


sure you can. create 2 rules:

  1. state = occupied; lux = xxx; switches on; level = 50%
  2. state = vacant; mode = mode1, mode2; lux = yyy; switches on; level = 10%;

on the second rule you can also specify time window of sunset to sunrise and either skip the mode or include the mode as well.

you will need to specify other settings like motion sensor, timeouts, lux sensor etc but those would be the 2 rules needed.

if you have other questions please feel free to ask.


Wow @bangali, this is pretty amazing. Thanks for all your hard work!

How do you handle multiple motion sensors on a single room? Where it says “Last Motion Inactive” I assume that means that it will consider the room vacant only after all sensors report inactive?

And where it asks “what lux level?”, is that the level under which the lights will activate? In other words, if it is over that level the lights will not come on? Will it consider the room “occupied”, just no lights? I’m struggling a little bit here with if/how the lights get turned off (as opposed to simply not being turned on) when the lux reading reaches the set value.


i should do it the smart way. :slight_smile: but right now if multiple motion sensors in a room every time a motion sensor reports inactive it justs resets the timer. which works fine if all motion sensors in the room are homogenous like in my own setup. however theres no guarantee of that. will update to wait for last inactive.

correct. over that level lights will not come on. the room will be considered occupied but since the rule will not match the lux level no lights will be switched on.

there is a flag in mode and other settings which when set turns off all lights when no rule matches.


UPDATE: updated version 0.12.0 to github with the following changes:

*  Version: 0.12.0
*   DONE:   2/8/2018
*   1) added alarm to rooms occupancy. tested somewhat. family kind of upset with me for random alarms going off :-(
*   2) sunrise & sunset now support offset in minutes. so if you always wanted sunrise -30 or sunset +30 now you can.

*  Version: 0.11.5
*   DONE:   2/5/2018
*   1) added setting for locked state timeout setting.
*   2) on motion active added check for power value to set room to engaged instead of occupied.
*   3) on occupied switch check power value to set room to engaged instead of occupied.
*   4) on contact close check for both occupied and checking state to set room to engaged.
*   5) for motion inactive with multiple motion sensors check all sensors for active before setting timer.


@bangali. Does this dth expose a switch capability for the locked state?

This would be grand if you could ask google Home or Alexa to lock or unlock a room state.

Just a wish if it doesn’t. I tried but it doesn’t seem to work, or at least not without creatin a virtual switch to run a piston to do it? Or… maybe I just haven’t figured out the verbage correctly.

Thanks, keep the great work!



not for the locked state. the switch exposed sets room to occupied/vacant on on/off.

do you happen to use ask alexa? that would allow you to change room states through voice commands:

thank you.


Unfornate;y no, I have google home. , was hoping dang it…lol.


well i was thinking of putting in a setting to pick which state is set when the room occupancy device switch is turned on.

so you could configure your setup to set room to locked when the room switch is turned on.

may be that would work?


I’m thinking it would. As long as google sees the device as a switch it can turn it on. Thus the problem that I have that my lights sometimes, not all the time, will turn off because lack of motion. And not have to pull my mobile device out to lock the room on or off, rather can be done via voice


Have you tried using the engaged state? using the engaged state helps in situations where the room is occupied but you are not moving around.

does google home currently see rooms occupancy device as a switch and is able to turn it on to set the room to occupied?



Yes it sees it as a device. If I tell it to turn in the device, in this case I made an empty room called ‘stuff’. I did not attach any switches or lights to the room

If I tell google to turn on ‘stuff’ it changes it state to occupied.

Only thing is if I try this with my ‘kitchen’ room, it turns on all the attached lights and switches is in that room. Ultimately that works, however if I currently have only 1 switch on and I tell google to turn on ‘kitchen’ it turns all the other switches and lights on. Not desired action.

What I would prefer is to do is if:

  1. turned on switches/lights manually
  2. lock The switches/lights in current state,by telling google or using the smart app, until I tell google to unlock them, or turn them off manually
  3. Leave the other lights/switches alone and dot change their state
  4. Disable rules during locked state
  5. go back to monitoring state ( re establish rules) after unlocking room or turning off switches / lights manually


it should only turn on those lights that are specified in the rule for occupied state. does the occupied state rule have all the switches and lights specified?



Yes it does hmmm might have adjust that.

Still I think maybe locked would be better to have switch, at least in my case. Now if it would be possible, to have locked be a lock device type and occupied be a switch device type then we could have both the cake and eat it too.

Then we could say google turn on ‘stuff’ and occupied state would trigger
Say google lock ‘stuff’ and lock state would be triggered.

Of course when one is activated disable the other.