Am I on the right track?

I've been trying to create a Rule (or a webcore piston) to turn on some outside lights and change the color temporarily on some of them when my front garage door opens, then return the colored bulbs to their previous state after the door closes OR after 5 minutes. I've tried a few different versions, but none so far have worked the way I want them to. Will this version work, and if not, how can I get the desired results?

The Part giving me trouble is getting the lights to Restore then turn off after either door closes or 5 minutes.

What do your logs say? One thing I see is that your rule would stall whenever the IF statement isnā€™t true. You might need to change that to a wait for expression or event in order to get the rule to progress to the restore/off steps. The logs would be able to help confirm this, but thatā€™s my first guess as to the issue.

I'll have to wait until it runs to see the logs. I did it that way because RM doesn't have a "changed to" option like WebCoRE. More tweaking to do.

Thatā€™s where the wait for event can help. Basically, the actions would be:

Capture lights
Set lights to white at 75%
Wait for Event - door to close (with a timeout of five minutes)
Restore lights

The timeout on the wait event would cause the rule to progress after five minutes if the door did not close.

3 Likes

I have a few questions/comments...

  1. Why are you checking for Front Door acceleration active inside the actions? That was your trigger, so I would assume that it would be active 100% of the time.
  2. You have an IF-THEN-ELSE without any actions inside the IF. Is that intentional? Seems odd to see that. You can rethink your logic and eliminate it if there is indeed a no-action for this.
  3. Your trigger has the ONLY IF statement in it... That's a perfect use of a required expression. Add it as an AND with the existing required expression.
3 Likes

Did some adjustments based on the information provided, it seems to be working fine. Thanks!

2 Likes

My knowledge of some of the terminology and functionality for RM is somewhat limited. I tend to go with a "let's see what this does" approach when having difficulty. I figure I can start over if I mess it up... or restore a backup if I REALLY screw up.