Rooms Manager: Smarter Rooms: Personalized home automation with Occupancy



use a scene? define a scene to do that then create a routine that triggers that scene. then in the rule instead of specifying lights/level have the rule run that routine.


I was able to get a rule to trigger a WebCore piston that then controlled the lights turning on at a percentage and increasing to 100% over x amount of time; however, now I am running into a different issue.

Info: Trying to better control over master bathroom lights. In home mode they will turn on using the above piston where they fade to a higher percentage over x minutes. When the night routine is triggered the bathroom lights will turn on at 1% with motion. Where the issue is occurring is in that time period before night mode. Night mode is triggered when all occupants in the house are asleep, I.E. two people. I am attempting to have the bathroom lights turn on at the 1% during home mode, when one person is asleep and the other is awake, this is usually during a specified time range, but the rules for the room seem to only trigger the previous webcore piston while in home mode. Am I just messing up a setting in the rules wherein the time range is being ignored for the rooms rules?


I even tried to utilize the sleep setting for the bathroom. However, found out upon the motion sensor detecting motion would reset the room to vacant instead of asleep, even when the defined sleep switch was turned on.

Anyway to default the sensor to go from asleep > motion detected turn lights on for x amount of time > checking > asleep?


so when both are asleep the mode is night and when 1 person is awake and the other asleep the mode is home?

what rules do you have for each of these modes / times?



in asleep setting there is 2 sets of switches:

  1. asleep switch to set asleep state when this switch is on
  2. night switches to turn on when in asleep state and there is motion

you have the asleep switch turned on and the night switches turn on with motion? then after whatever timeout is set the night switches should turn off and the room should go back to asleep state … is this not happening?


The night switches don’t work for me. They don’t turn on when there is motion and the room is in asleep state. Havent debugged it yet, dont have the time


update to the latest version and go in the room settings and save the settings for the room then check please.


I was having the same issue as Johnwilliam. The other issue I was seeing was the sleep switch not keeping the room in asleep after motion detection.

Will update to test the night switch.


I use the default three modes from ST:Home, Night and Away.

When both users are awake it is Home mode. When both users are asleep (phones on chargers triggers WebCore presence sensor to read asleep) which in turns triggers Night mode and the bedroom to be in asleep mode.

I have been trying to get the bathroom lights to turn on at 1% in Night mode. Attempted to use asleep state for the bathroom but the sensor would trigger occupancy, turn the lights on, (not at 1%) then go to checking > vacant after x time instead of returning to asleep. It seems like the motion event was canceling out the asleep state and therefore not triggering the rule to turn lights on at 1%.


after updating to the latest if you still find this happening … please let me know and I will fix it.


Already updated when i wrote that message


and still not working? i actually checked this when i read your message and everything seemed to be working fine.

did you also go in to the rooms manager and save the rooms again?


It seems like I have everything working now. I did use some webcore pistons prior to your update. I just need to conduct some additional testing once the pistons are paused.


UPDATE: updated to github with the following changes:

*  Version: 0.40.0
*   DONE:   6/1/2018
*   1) cleaned up the settings page for rooms manager.
*   2) updated rooms device settings to deal with ST change of json parser which broke settings.
*   3) for rooms device events added a little more descriptive text.
// TODO make time range display actual time range not just the time type.
*   4) overhauled the view all settings page which had fallen behind.
*   5) added link to help text on github in app.
*   6) added setting for how fast room changes to VACANT if currently ASLEEP and room contact sensor is left open.
*   7) added setting for optional time range to set room to ENGAGED, LOCKED or ASLEEP with power wattage.
*   8) for CHECKING state added a lux value above which light will not get turned on for CHECKING state.
*   9) seperated the setting for reset ENGAGED and reset ASLEEP wtihout transitioning through the CHECKING state.
*   10) added fix to handle time preference settings for hubitat which does not handle timezone correctly for these settings.
*   11) introduced motion active check for when room state is transitioning to CHECKING state.
*   12) cleaned up some small bugs here and there along with some code cleanup.

remember for hubitat you have to comment 2 lines and uncomment 3 lines in the metadata definition section for the rooms occupancy driver. theres comments in that section to identify which lines.


cant find these lines: “remember for hubitat you have to comment 2 lines and uncomment 3 lines in the metadata definition section for the rooms occupancy driver. theres comments in that section to identify which lines.”

And the night lights still dont work for me:
Living Room [236] | 236 | true
Living Room motionActiveEventHandler


dont see these lines in the driver?

metadata {
	definition (
    	name: "rooms occupancy",
        namespace: "bangali",
        author: "bangali")		{
		capability "Actuator"
// for hubitat comment the next line and uncomment the one after that is currently commented
		capability "Button"
//		capability "PushableButton"		// hubitat changed `Button` to `PushableButton`  2018-04-20
		capability "Sensor"
		capability "Switch"
		capability "Beacon"
// for hubitat comment the next line and uncomment the one after that is currently commented
		capability "Lock Only"
//		capability "Lock"		// hubitat does not support `Lock Only` 2018-04-07
		attribute "occupancy", "enum", ['occupied', 'checking', 'vacant', 'locked', 'reserved', 'kaput', 'donotdisturb', 'asleep', 'engaged']
		attribute "alarmEnabled", "boolean"
		attribute "alarmTime", "String"
		attribute "alarmDayOfWeek", "String"
		attribute "alarmRepeat", "number"
		attribute "alarmSound", "String"
		attribute "countdown", "String"
		command "occupied"
        command "checking"
		command "vacant"
        command "locked"
		command "reserved"
		command "kaput"
		command "donotdisturb"
		command "asleep"
		command "engaged"
// for hubitat uncomment the next line
//		command "push"		// for use with hubitat useful with dashbooard 2018-04-24
		command "turnOnAndOffSwitches"
		command "turnSwitchesAllOn"
		command "turnSwitchesAllOff"
		command "turnNightSwitchesAllOn"
		command "turnNightSwitchesAllOff"
		command "alarmOffAction"
		command "updateOccupancy", ["string"]

hmm … night lights seem to work fine for me … will look at it. btw … please share the view all settings for the room want to replicate them in a room and try it.


Sorry thought it was in the app but you said driver haha Found it.


Motion timeout ・  ・  ・  ・  ・  ・   600 seconds


Switches ・  ・  ・  ・  ・  ・  ・  ・   1
Night switches ・  ・  ・  ・  ・  ・   2
Set level ・  ・  ・  ・  ・  ・  ・  ・  5%
Night motion sensor ・  ・  ・  ・  ・ 1
Motion timeout ・  ・  ・  ・  ・  ・   240 seconds
Light on when ・  ・  ・  ・  ・  ・  ・ With motion 
Button device ・  ・  ・  ・  ・  ・  ・ Bedroom Button
Button number ・  ・  ・  ・  ・  ・  ・ null


	1: Mode=[Day, Evening, Night] State=[occupied] Lux=35 ON=3 Level=100
	2: Disabled=true Mode=[Day, Evening, Night] State=[asleep] ON=2 Level=10


was going to put out a release today with device health tracking and support for issuing any device any command via rules … but bit tied up with work … will probably release wed/thu.



The install from repo option loads but it missing the DTH. So I am unable to install correctly, any idea why?


on github the DTH seems to be there:

in the ST IDE are you installing the DTH from under the My Device Handlers section?