Possible to disable rule if physical switch turned off?

I have a couple of fans that turn on when my wood burning stove warms up, but every once in a while I would like to manually turn one or both fans off (while the rule is keeping them on) by using its GE Embrighten fan dimmer switch off button. Currently, if I switch it off, it will turn right back on 30 seconds later, unless I pause the rule. Is there a way to have the physical operation of the switch override the rule? Maybe set up a virtual switch for the rule, and have the actual switch as a condition in the rule?

Try the switch in your screenshot called “Use required expression”. It will allow you to define something that will have to be true prior to the rule running.

You could also try changing your ifthen to check if the burner is on and then immediately exit the rule. Then if it’s not on, proceed with the rest of your rule in an else statement.

2 Likes

Like @Angus_M indicates, using a virtual switch in “Use Required Expression” will work.

I have something similar setup. I have another rule that turns the virtual switch off when I manually turn off a specific switch. I have it setup to automatically turn back on after 1 hour.

One thing you might try is adding a separate remote such as a push button.
Before doing anything else, the rule would check the status of the push button.
As long as the push button is on, the rule would continue on with its operation.
If the push button is off, the rule terminates.

1 Like

After thinking about it, I'm thinking the virtual switch idea might not work. If the stove temperature falls below the rule threshold, this would turn the physical switch off per the rule, thereby turning the virtual switch off as well, stopping the rule, and requiring me to manually turn the switch back on when the temperature is above the threshold. The virtual switch has no way of knowing if it was turned off by the rule or by a human.

As a temporary workaround, I was thinking of changing the action to say if fireplace fan AND living room fan is off, then turn on fan. I would rarely if ever turn both fans off manually, so the rule would not try to turn on the fan that I manually shut off.

Then, the other rule I have that shuts both fans off when the temperature falls below 130degF would allow the rule to automatically run and turn both fans on when the stove gets reloaded again.

Does this sound right?

Some devices support the “Off (Physical)” vs “Off (Digital)”. You can see this if you go to the device driver and then click on the “events” tab. If Physical off is supported, than that could be used. Also, some switches (Ex.: Inovelli) will also support button press events when the switch is physically turned on or off. That could also be used.

1 Like

I had all this bother a few weeks back as you cannot use Physical Switch as a required expression or within an action. To get around it create a hub variable and then create a rule with the trigger as switch physical and the action as set variable to true. Then use the state of that variable in your rule. I created rules like this and then used those within the main rule. This was so a motion rule would not run if I had the light on and also that if the light triggered on motion, simply adjusting the dimmer level physically would cause the light to remain on permanently:


I use Lutron Pico remotes to trigger various rules. However, I use Basic Rules rather than Rule Machine. However, I do not think the status of the remote is preserved.