-
- Set room occupancy state for each room, using any or all of the following devices:
- Presence sensors.
- Motion sensors.
- Contact sensors.
- Music players.
- Button pushes.
- Switches on and off.
- Power wattage.
- Create rules that evaluate:
- For all rules:
- Room occupancy state
- Hub mode
- Day of week
- Lux value
- Humidity range
- Date filter
- Time trigger
- For temperature rules additionally:
- Temperature
- For all rules:
- Rules allow you to:
- For execution rules:
- Turn on and off lights / switches.
- Auto adjust level and color temperature when turning on lights.
- Set light color when turning on.
- Setup recurring schedules for holiday light show including annually recurring holidays.
- On Hubitat, send any command to any device.
- Run pistons.
- Run routines.
- Start and stop music players.
- Set window shade position.
- Turn on and off lights / switches.
- For temperature rules:
- Maintain room temperature with thermostat or in-room AC and heaters.
- Turn fan on/off and manage fan speed with room temperature.
- Control vents with room temperature.
- For execution rules:
- Other settings:
- Setup multiple color routines for holiday light shows.
- Announce when:
- Contact sensor stays open.
- Outside door is opened.
- Turn on night lights with motion while room state is asleep.
- Turn on outdoor lights on a daily schedule.
- Set room occupancy state for each room, using any or all of the following devices:
-
- Set alarm to play on a daily or weekly schedule for each room.
-
- Check and announce:
- Device battery status.
- Device health monitoring status.
- Announce:
- Arrival and departure by name including with randomly selected greetings.
- Time every quarter, half or on the hour.
- Sunrise and sunset.
- Announcements support speakers and / or lights.
- Github updated notification.
- Check and announce:
While ST has a concept of rooms it is essentially a grouping mechanism which does not enable personalized automation. In contrast rooms occupancy considers the room as a meta device and automates common tasks associated with a “room” physical or virtual. What makes it really useful is not just the room's occupancy state but the ability to manage automation for rooms in a set of rules for the room based on the occupancy state of the room and data from various sensors. When creating a room device through the smartapp you are able to create these rules for the rooms making your rooms really smart.
You can continue reading here for the summarized version or read the more detailed and always the latest version on Github which also describes the individual settings:
Rooms Manager and Rooms Occupancy readme on Github
What these rules enable is many common tasks around rooms which most users go through automating at some point. Usually through setting up a few rules or using a few pistons. I have been there and done that myself. While those work to a degree it requires creating a set of rules and/or pistons to enable contextual automation per "room". As you incorporate more and more automation using rules and/or pistons these often become a maintenance challenge while still not enabling the kind of comprehensive automation that should be possible for typical devices in a room. The goal of this app is to make that possible by evaluating all sensor input from various devices in the room and enabling rules that act on these sensor values in the context of various typical automation needs in a "room".
If there is one principle that these apps are built on, it is - that your home automation should work in the background in a repeatable and predictable manner without requiring repeated human intervention. In short, your automation should work for you and not the other way around. But even more importantly perhaps, this app gets you the kind of WAF for your home automation that you have always dreamed about. 🙂
Additionally, these room occupancy devices also have attributes, capabilities and commands which are useable in webCoRE or other smartapps like Smart Lighting in ST or Rule Machine in Hubitat. There is a range of other automations that webCoRE makes possible that could not otherwise be done without writing a custom smartapp for it. I use webCoRE for that and am I big fan of Adrian. So checkout webCoRE as well if you don't already use it.
One last time, please consider continuing reading the rest of this readme on Github because that always has the most updated version:
Rooms Manager and Rooms Occupancy readme on Github
This app works by setting rooms occupancy to various states based on a set of sensors as specified by the user. It takes this state and attribute values from various sensors and evaluates a set of rules that you create to match the conditions. When all of the conditions for the rule matches, it executes actions specified on these matching rules.
As an example, you can specify motion sensors in Occupied settings to set a room state to Occupied when there is motion from any of those motion sensors. Then create a rule to turn on some lights. In this rule you could also set that these lights should only be turned on if a lux sensor is at a certain lux value or lower. Or you could specify that only turn on the lights during certain times. Or you could specify turn on the lights at a certain level during certain times and at another level during other times.
As a part of the Occupied settings you can also specify timeout values so the room does not indefinitely stay set to Occupied state and the lights turn off after a while when there is no motion. How quickly that happens is controlled by you through the timeout value you specify in the settings. By specifying settings in the Checking settings you are also able to dim the lights before the lights turn off completely so there is a visual cue to the room occupant that the lights will turn off because they have not moved in a while.
Off course you may be in the room while and not be moving for a while like reading a book or watching TV. That's when you use the Engaged settings to set the room to Engaged state. See below for additional details.
Occupied is you go to a room are in there for a few minutes then leave the room. Lights come on when you enter the room and turn off after a couple of minutes of your leaving the room. Think of Occupied as a transient state and Engaged below as a somewhat persistent state.
Engaged is when you stay in a room for an extended period of time and may be motionless for some or all of the time. since we cant depend on the motion event for engaged state there are different options to set the room to engaged for extended occupancy. these are all under engaged settings and there is more coming. but these help make sure the switches you set to on stay on even if there is no motion in the room. When in Engaged state you have a different and longer timeout state than the Occupied state. So there is still a motion requirement but a much higher time threshold than the Occupied state.
Asleep state is meant for use while the room should be 'asleep' as in not respond to most typical automation like motion automation. But it does allow for other automation like using a night light and using a button to turn on or off the night lights. You are still able to create rules for the Asleep state but it additionally support a little bit for Asleep state specific automation in the Asleep settings.
Vacant state is for when the room is vacant and you want everything to get turned off. It is possible to setup rules for Vacant settings as well but not required.
Occupied state is used for transition between states and not user controlled. For example, when moving from Occupied to Vacant occupancy state the room will transition to Checking state. While the app does not allow creating rules for checking state there is some settings available to control dimming of the lights when in Checking state.
Locked state disables all automations for the room and allows you to control lights and other devices in the room either manually or some other way.
The states 'locked', 'reserved', 'kaput' and 'donotdisturb' are effectively all similar in that they all disable automation. That being the case there is some sensors allowed to set / unset rooms to / from Locked state but no other automation beyond that for these occupancy states. Here is a quick description of the various top level settings and how the app works. At the heart of the app is the concept of room states and rules to automate devices based on these room's states and other sensor inputs. (In the following description when I talk about sensors it refers to devices that have attributes which are used to drive decisions in the room's rules.)
Note: Many of the following settings are optional but when specified will require other settings to be specified. Like specifying a motion sensor is optional. But if you do specify a motion sensor the motion event to trigger timeout countdown becomes required.
Room sensors used in checking rule conditions based occupancy state and data from these sensors.
Motion sensor(s) | Room motion sensor(s) for motion activated state change like Occupied or Engaged |
Motion event | Motion event to use for timeout. Choose the motion active event to start the timeout if your motion sensor does not generate a motion inactive event following the motion active event rather stays continuously active with no inactive event in between. |
Room Buttons | Select up to 5 buttons all of which will allow toggling through selected states. |
Selected states | Select states room buttons above will toggle through. |
Presence sensor(s) | Presence sensor to associate with the room. Helps control certain room actions based on presence state |
Lux sensor | Room lux sensor to use with rules for lights and switches. For some rooms specifying an outdoor sensor might work better than a room lux sensor. |
Humidity sensor | Room humidity sensor to use with rules for lights and switches |
Music player | Room music player to use with rules for lights and switches |
Power meter | Room power sensor to use with rules for lights and switches |
Window shade | Room window shade to use in rules |
The next 6 settings group are for how the room is set to each of those 6 occupancy states and settings specific to that occupancy state.
- Count = 5: Light traffic.
- Count = 7: Medium traffic.
- Count = 9: Heavy traffic.
- Arrives: Change room occupancy to Engaged.
- Departs: Change room occupancy to Vacant.
- Both: Both of the actions.
- Neither: None of the actions.
- Sunrise: Matches to local sunrise time with offset if specified
- Sunset: Matches to local sunset time with offset if specified
- Time: Matches to specific time/li>
- Sunrise: Matches to local sunrise time with offset if specified
- Sunset: Matches to local sunset time with offset if specified
- Time: Matches to specific time/li>
-
Settings for night lights with motion while in Asleep state.
- Sunrise: Matches to local sunrise time with offset if specified
- Sunset: Matches to local sunset time with offset if specified
- Time: Matches to specific time/li>
Settings that specify how this occupancy state is set. Normally it is based on motion but there are also other ways of detecting Occupied state like a specific switch turning on. Available settings:
Button | Set room occupancy to Occupied state when button is pushed |
Button number | Button number of button selected above |
Only sets Occupied | Option to turn off toggling between Occupied and Vacant state for this button. When set to true the button will only set Occupied state and no longer toggle. This helps if you are pressing a button with no visual feedback to set the room to Occupied but accidentally press it twice and don't want the room to toggle to Vacant state when it is already in Occupied state. |
Switch | Switch which when turned on will set room occupancy state to Occupied |
Timeout | Value in seconds for room state timeout after last motion event |
Settings that specify how this occupancy state is set. Normally it is based on motion but there are also other ways of detecting Engaged state like a button being pressed.
When room is busy | Set room to Engaged state if Occupied state is triggered frequently in a short period of time and the lights should stay on for longer than in Occupied state.
Counts the number of time the occupancy state changes between Engaged <> Occupied <> Checking <> Vacant within ((Occupied no motion timer + Checking dim timer) * 10). This is to automate Engaged state for when the room is flipping between Occupied and Vacant frequently in a short period of time. |
Button | Set room occupancy to Engaged state when button is pushed |
Button number | Button number of button selected above |
Only sets Engaged | Option to turn off toggling between Engaged and Vacant state for this button. When set to true the button will only set Engaged state and no longer toggle. This helps if you are pressing a button with no visual feedback to set the room to Engaged but accidentally press it twice and don't want the room to toggle to Vacant state when it is already in Engaged state. |
Presence sensor actions | Choose if room occupancy state should switch with presence sensor:
|
Keep room engaged with presence | Keeps room occupancy set to Engaged when presence sensor is present |
When music playing | Keeps room occupancy set to Engaged when music is playing |
Switch | Switch which when turned on will set room occupancy to Engaged and when turned off will set room occupancy to Vacant. |
Power value | Power value in watts which when reached will set room occupancy to Engaged |
Power time range | Allows specifying time range from - to and matches to current time when evaluating power value for setting state. Supports the following values:
|
Trigger from vacant | When false room will need to be in a state other than Vacant for the Asleep state to be triggered |
Power stays below | Power value has to stay below power value above for this many seconds before room state timeout countdown will start. This is keep room state from changing frequently with power value fluctuating. |
Contact sensor | Contact sensor(s) when closed will set room occupancy to Engaged with motion |
Outside door | For use with outside doors like garage doors where the Engaged state is triggered with motion if the door is open |
Does not trigger Engaged | For use with areas like landing or hallway leading to different rooms with contact sensor on those doors. You want any of the room doors opening to turn on the lights even before the landing/hallway motion sensor detects motion but you do not want these doors to set the landing/hallway to Engaged. Turn on this setting in that case. |
Timeout | Value in seconds for room occupancy timeout from Engaged to Vacant |
Reset Engaged/Asleep | Reset Engaged or Asleep state when another room changes to Engaged or Asleep |
Reset Engaged directly | Reset room occupancy to Vacant directly without transitioning through Checking state |
Settings for timeout and light levels while in checking state.
Dim timer | Dim lights for how many seconds for visible notification of checking state and that lights and switches will be turned off. |
Dim level by | If any lights are on dim them by this level. |
Dim level to | If no lights are on turn them on at this level. |
Lux value? | If no lights are on turn them on only when lux is at or below this lux value. |
Do not restore | When transitioning from Checking state to another state do not restore the light levels to their previous value if that state is Vacant. |
Settings that specify how this occupancy state is set. Normally it is based on motion but there are also other ways of detecting Occupied state like a specific switch turning off.
Button | Set room occupancy to Vacant state when button is pushed |
Button number | Button number of button selected above |
Switch | Switch which when turned off will set room occupancy to Vacant |
Stop music | Pause music player when room occupancy changes to Vacant |
Settings that specify how this occupancy state is set. Asleep is tricky because there is no true commonly used physical asleep sensors. So, these settings allow other ways of setting Asleep occupancy state and specifying night light settings which are a little different from how lights work through the rules.
Sleep sensor | Sleep sensor to set room occupancy to Asleep. (not a lot of device option here that supports sleep state. some users use the webCoRE presence sensor which I had originally modified to support sleep state, subsequently Adrian added the sleep state code to main.) |
Button | Set room occupancy to Asleep state when button is pushed |
Button number | Button number of button selected above |
Only sets Asleep | Option to turn off toggling between Asleep and Vacant state for this button. When set to true the button will only set Asleep state and no longer toggle. This helps if you are pressing a button by the bedside to set the room to Asleep but accidentally press it twice and don't want the room to toggle to Vacant state when it is already in Asleep state. |
Switch | Switch which when turned off will set room occupancy to Asleep |
Power value | Power value in watts which when reached will set room occupancy to Asleep |
Power time range | Allows specifying time range from - to and matches to current time when evaluating power value for setting state. Supports the following values:
|
Trigger from vacant | When false room will need to be in a state other than Vacant for the Asleep state to be triggered |
Power stays below | Power value has to stay below power value above for this many seconds before room state timeout countdown will start. This is to keep room state from changing frequently with power value fluctuating. |
Timeout | Option to turn off Asleep state after certain number of hours in case you forget to turn it off in the morning. Specially useful if you do not have a contact sensor on the bedroom doors. |
Reset with Contact | Option to turn off Asleep state after certain number of hours in case you forget to turn it off in the morning |
Turn on | Switches to turn on with motion while in Asleep state |
Level | Set level when turning on switches above |
Color temperature | Set color temperature when turning on switches above |
Which motion sensors? | Pick which room motion sensors will trigger night lights when Asleep. If you multiple motion sensors in the room and only want some of them trigger night lights but not others, you can pick the ones here that should trigger night lights. |
Timeout | Value in seconds for night light timeout |
Button | Button to control night lights only |
Button number | Button number of button selected above |
Button action | Either toggle or turn night lights on or off |
Settings that specify how this occupancy state is set. This state disables all automation for the room.
Switch | Switch to set room occupancy to Locked |
On or off | Set Locked state when switch turns on or turns off |
Power value | Power value in watts which when reached will set room occupancy to Locked |
Power time range | Allows specifying time range from - to and matches to current time when evaluating power value for setting state. Supports the following values:
|
Trigger from vacant | When false room will need to be in a state other than Vacant for the Locked state to be triggered |
Power stays below | Power value has to stay below power value above for this many seconds before room state timeout countdown will start. This is to keep room state from changing frequently with power value fluctuating. |
Contact | Contact to set room occupancy to Locked |
Open or closed | Set Locked state when contact is open or closed |
Switches off | When true turn off switches when room occupancy changes to Locked |
Override | When true allows use of devices in Locked state that would otherwise cause another room state to be activated. |
Timeout | Option to turn off Locked state after certain number of hours |
These group of settings allow for light routine settings used in the rules.
-
Create holiday light patterns to use on different holidays or other special occasion.
Settings to specify auto level and color temperature settings for the room which allows using 'AL' as a light level rule to automatically calculate and use these values based on time of day, wake and sleep time specified. Also allows specifying hours before and after wake and sleep times the light level and color temperature should be dimmed for optimal light levels.
Minimum level | Minimum light level |
Maximum level | Maximum light level |
Wakeup time | Wakeup time |
Sleep time | Sleep time |
Fade up to wake time | Fade light level up to wake time |
Hours before | How many hours before wakeup time should light level start fading up |
Hours after | How many hours after wakeup time should light level stop fading up |
Fade down to sleep time | Fade light level down to sleep time |
Hours before | How many hours before sleep time should light level start fading down |
Hours after | How many hours after sleep time should light level stop fading down |
Auto color temperature | Set color temperature along with level |
Minimum kelvin | Minimum color temperature for light |
Maximum kelvin | Maximum color temperature for light |
Fade up to wake time | Fade color temperature up to wake time |
Hours before | How many hours before wakeup time should color temperature start fading up |
Hours after | How many hours after wakeup time should color temperature stop fading up |
Fade down to sleep time | Fade color temperature down to sleep time |
Hours before | How many hours before sleep time should color temperature start fading down |
Hours after | How many hours after sleep time should color temperature stop fading down |
Settings to specify holiday light patterns for use in rules during various holiday seasons. Allows for rotating colors through or slow twinkling any set of lights specified in the rules.
List of previously defined holiday light patterns |
Option to create new holiday light pattern |
Color string name | Name for this holiday light pattern for use in specifying with rules |
Colors | Comma delimited list of colors |
Light routine | Either Rotate or Twinkle where twinkle is a slow twinkle so the hub does not get saturated with frequent on and off commands |
How many seconds | Either rotate colors or turn on and off after every how many seconds |
Light level | Button to control night lights only |
Temperature settings is their own group.
- Cool: Cool room only
- Heat: Heat room only
- Both: Both cool and heat
- Neither: Neither
Manage temperature settings for the room in conjunction with thermostat or switch controlled room AC and/or heater. After adding temperature settings remember create temperature rules in maintain rules so the app can automate temperature control based on these rules.
Temperature sensors | Room temperature sensors |
Maintain temperature | Maintain temperature:
|
Use thermostat | Use thermostat to heat and cool or use in room AC and heater controlled by switches |
Thermostat | Thermostat |
Delta temperature | Room temperature sensor - thermostat temperature reading |
AC switch | Switch for in room AC |
Heater switch | Switch for in room heather |
Check presence | Specify presence sensors to check for presence before maintaining temperature |
Check contact closed | Specify window contact sensors to check for closed before maintaining temperature |
Switch override | Allow thermostat or AC / heater switch to be manually overridden for how many minutes |
Outdoor temperature | Outdoor temperature sensor that is not currently used but have plans to use |
Adjust temperature | Adjust cooling and heating temperature by 0.5ªF when outside temperature is respectively over 90ªF and below 32ªF |
Fan switch | Fan switch to use in rules |
Room vents | Room vents to automate with thermostat and room temperature. |
Here are the rest of the settings starting with the heart of the app - Maintain Rules, which allows you to maintain automation rules for the room and turn them in to smart rooms.
-
Add a new rule or edit existing rule settings.
- Asleep
- Engaged
- Occupied
- Vacant: Normally you don't need to create rules for the Vacant state. But if you want one of the lights to stay on during certain times in the evening even when the room is Vacant create a rule for the Vacant state with the right mode, times and switch(es)
- Execution: Allows turning on and off switches, executing routines and pistons, starting or stopping music player and setting window shade position
- Temperature: Allows setting room temperature to maintain and room fan on and off settings
- yyyy: Matches to current year when evaluating rule
- YYYY: Matches to next year when evaluating rule
- Sunrise: Matches to local sunrise time with offset if specified
- Sunset: Matches to local sunset time with offset if specified
- Time: Matches to specific time/li>
-
Execute other actions.
-
Override individual timer settings when this rule evaluates as true. For example normal timeout settings for Occupied state may be 180 seconds. But during Night mode the Occupied state timeout could be overridden here to be 30 seconds.
- Sunrise: Matches to local sunrise time with offset if specified
- Sunset: Matches to local sunset time with offset if specified
- Time: Matches to specific time/li>
-
Specify speaker devices and timings to use for spoken announcement.
-
Specify color bulbs and timings to use for color announcement.
-
Settings for door and window spoken and color announcements.
Here's where to create the rules that check room occupancy state, various sensor values and other variables to decide which lights and switches should be turned on or off. It also allows executing a piston or routine or even starting and stopping a music player based on the rules.
List of defined rules |
Option to create new rule |
Rule number | For tracking rule settings, not editable |
Rule name | User defined descriptive rule name |
Rule disabled | Quick way to to turn off the rule instead of editing and removing each setting for that rule |
Modes | Matches to location mode when evaluating rule. Available choices are based on modes defined for that hub location |
Occupancy state | Matches to current occupancy state when evaluating rule. Available choices are:
|
Days of week | Matches to current day when evaluating rule |
Rule type | Either Execution or Temperature depending on the rule type you are creating:
|
Lux value | Matches to current lux value from sensor <= this value when evaluating rule. |
Humidity range | Matches to current humidity reading from sensor |
Date filter | Matches to current date when evaluating rule entered in yyyy/mm/dd format. Supports the following special values:
|
Time trigger | Allows specifying time range from - to and matches to current time when evaluating rule. Supports the following values:
|
Turn on which lights / switches | List of devices to turn on |
Set level | Level value if the light or switch being turned on supports level. Also allows picking either Auto Level or one of the Holiday Light routines defined earlier |
Set color | Color to set when turning on light if the light supports color |
Set color temperature | Color temperature to set when turning on light if light supports color temperature |
Turn off which lights / switches | List of devices to turn off |
Routines | Select routines to execute when rule evaluates as true |
Piston | Select piston to execute when rule evaluates as true |
Music player | Select if music player should be started or stopped when rule evaluates as true |
Window shade | Set window shade to one of the preselected positions when rules evaluates as true |
Occupied timeout | Timeout in seconds when rule evaluates as true |
Engaged timeout | Timeout in seconds when rule evaluates as true |
Checking timeout | Timeout in seconds when rule evaluates as true |
Night light timeout | Timeout in seconds when rule evaluates as true |
Time trigger | Allows specifying time range from - to and matches to current time when evaluating rule. Supports the following values:
|
Manage room temperature settings:
Cool temperature | Temperature to cool room to |
Heat temperature | Temperature to heat room to |
Temperature range | Select the temperature range within which the room temperature is maintained based on cool and heat temperature above. |
Fan control:
Fan on temperature | Temperature at which to turn on fan. |
Fan speed increments | Temperature increments with which to increment fan speed. |
Room vents control:
Rooms vents | Room vents if specified are automatically controlled with thermostat and temperature. |
Adjacent rooms allow specifying which rooms are adjacent to that room so you can automatically turn on lights in the next room when moving through this room or force adjacent rooms to Checking state when there is motion in this room.
Adjacent rooms | Select the adjacent rooms to this room. |
Adjacent room motion | If motion in adjacent room force motion check in this room to confirm someone is still in this room. |
Adjacent room lights | If motion in this room move adjacent rooms to Checking state so lights come on dimmed and lights the pathway. |
Announcement settings for rooms with support for both speakers and color announcements.
Speakers | Select speaker for spoken announcements |
Speech | Select speech device for spoken announcements |
Media player | Select media player for spoken announcements |
Volume | Volume to use for spoken announcements |
Variable volume | Use variable volume for spoken announcements |
Spoken announcement during hours:
From hour | Announcements are made from this hour |
To hour | Announcements are made to this hour |
Switches | Color bulbs to use for color announcements |
Color announcement during hours:
From hour | Announcements are made from this hour |
To hour | Announcements are made to this hour |
Announcement modes:
Modes | Announcements are only made in these modes |
Announce door | Announce when door opens or closes |
Speaker | Announce with speaker |
Color | Select color for announcement |
Announce stays open | Announce when door stays open every so many minutes |
Speaker | Announce with speaker |
Color | Select color for announcement |
Window announcement:
Announce window | Announce window opens or closes |
Speaker | Announce with speaker |
Color | Select color for announcement |
Miscellaneous settings that don't fit any where else, like in which modes should all automation be disabled or what icon to use for the room in the rooms manager and a few other settings.
Away modes | The room is set to VACANT when mode changes to any of these away modes. |
Pause automation modes | When in any of these modes all automation is paused for rooms. |
Days of week | Days of week which no automation should run, like say you didn't want to run any automation on Sundays. |
Celsius | Set this to switch input and display from fahrenheit to celsius. |
Icon URL | Icon to use for this room in Rooms Manager. |
Dim lights off | When turning off lights this dims them to off over specified number of seconds instead of turning them off directly. |
Turn all off | This turns off all switches when no rules match so you don't need to create a rule for Vacant state to turn off lights. |
Only on state change | This processes the rules every 5 minutes on ST and every 1 minute on Hubitat to process the rules and set any matching switches . |
Volume | Volume for announcements when music device is specified. |
Contact announce | Announce when contact sensors open. |
Contact stays open announcement | If contacts specified are outside doors this lets you select intervals in which to announce the door is open till its closed again. |
Rooms_device.on() | Ability to select which state represents on() when device is turned on programmatically from webCoRE, Smart Lighting or Rules Engine. |
What the name says.
For a github install from repo in ST use : owner: adey / name: bangali / branch: master. Install and publish the rooms occupancy DTH then install and publish the rooms manager and rooms child app smartapps. So 1 device driver and 2 smartapps ALL need to be saved and published before using the smartapp.
For a manual install here are the links, in order of DTHs and smartapps you should save and publish.
rooms occupancy DTH:
https://raw.githubusercontent.com/adey/bangali/master/devicetypes/bangali/rooms-occupancy.src/rooms-occupancy.groovyWhen saving the driver in Hubitat please see the comments in the capabilities section where you will need to comment a few lines and uncomment a few others. This is not necessary to do on SmartThings.
rooms manager smartapp:
https://raw.githubusercontent.com/adey/bangali/master/smartapps/bangali/rooms-manager.src/rooms-manager.groovy
rooms child smartapp:
https://raw.githubusercontent.com/adey/bangali/master/smartapps/bangali/rooms-child-app.src/rooms-child-app.groovy
Then go to ST app -> Automation tab -> Add a Smartapp -> My apps in ST app and install rooms manager app then create your rooms within rooms manager.
When creating a room first give the room a name and save the room then go back in to the room to add various settings to the room. This is because the app uses app state to manage the rules and in ST the app state is not consistent till the app has been saved once.
- Like this post to help other users find this app
- Submit a feature request on this thread or by creating an issue on Github
- Submit a bug for something that is not working quite right here or on Github
- Donate to support development of the app: donate here.
1. Outdoor lights with no motion sensor?
-
Setup a room say `Outdoor` with the following settings specified for the rule:
Name of the rule. |
Time from and to settings when the lights should turn on and off respectively. |
Lights or other switches to turn off. |
Optionally you can also specify the level, color and color temperature or use a Holiday Light rule that you have setup. |
2. Turn off switches after X seconds with no motion sensor? (power saver)
-
Setup a room with the following Engaged settings:
Set the switches you want turned off as engaged switches. |
Specify the seconds after which you want the light turned off as the timeout setting. |
Name of the rule. |
From the state drop down pick state as Engaged. |
All switches in Engaged settings as switches to turn on. |
3. Want to turn on/off switches on a certain day of the year?
-
Setup a room with the following Engaged settings:
Set all of the switches you will turn on as engaged switches. |
Name of the rule. |
From date and to date. (make sure hide advanced settings is false on the main settings page) |
Switches to turn on. |
Switches to turn off. |
Here are a couple of screenshots of the device tiles for a Rooms Occupancy device from SmartThings. Note this is not applicable for Hubitat since Hubitat does not have device tiles, at least for now.
Finally here is a screenshot of the rooms child settings page which captures all the settings groups available for each room. On both SmartThings and Hubitat this looks quite similar except that one is thru the app interface and the other is html.