So I'm having some challenges figuring out how to write a rule I am working with. What I am wanting is to turn on a set of switches in the evening once the illumination in the room drops to a specific level. I currently have the trigger as a "change" in the illumination sensor with the action comprised of an if/then statement indicating if the illumination drops below 6, to turn on the lights. The issue is how do I make it stop? LOL If I manually shut off the lights, they turn back on. If another rule turns them off, they come back on. What is the best way to format a rule to turn lights on in the evening based on illumination but do not turn them back on if they are turned off either manually or by another rule? I usually have no problem working through these rules but this one has me stumped.
Thanks in advance.
I have similar rules. Initially when I set it up I just used a wait for event. Trigger was the change in illuminance, action was if illuminance reports less than ?? Lux then light on, wait for event, illuminance reports more than ?? Lux - light off, else light off, end if. The problem there is as you’ve seen - it triggers and runs with every reported change so the rule is constantly running and if you switch off manually, it will turn back on as soon as your sensor reports a change in level.
The better way of doing it is with 2 rules. The first sets a Boolean variable based on the light level and the second rule uses the state of that Boolean to turn your lights on and off.
The first rule is below. It will trigger once when the light level reaches 15 (in my case), then the required expression will prevent it from triggering again until the light level goes back above 15:
Then the second rule. This triggers when the Boolean changes. If it changes to on, the lights are turned on, otherwise they are turned off:
If you turn your lights off manually, they will remain off until either you turn them on manually again or, when the Boolean changes to True again the following evening.