Use self device in the condition used

This used to not be possible (so you might read a lot of posts saying it isn't), and it's still not possible to handle all cases where you might want to refer to the triggering device, and I'm not sure that yours is one. Unrelated to Rule Machine is the fact that you'll probably get the "On" event (switch: on) from the Inovelli device before you get the CentralScene/button event (e.g., pushed: 1), so your test to see if the device was on will likely succeed every time. Someone asked a question recently about this, and you can do some reading in that thread if you want to see possible workarounds:

Back to RM-specific things here, you can use a custom action under Set Mode or Variables, Run Custom Action > Run Custom Action to run any command on the same device that triggered the Rule. The command you'll want (after you choose a "prototype" device to get through this part of the UI) is the setLevel() command with at least a single number parameter of 99 (or 100 if your device/driver accepts that--Z-Wave technically maxes out at 99). Optionally, you can provide a second number parameter for fade time (in seconds). So, if you trigger on a certain device button push, using the above custom action (for setLevel()) on the trigger device should work.

But you can't use the trigger device as part of a conditional, so you can't check if it's on before doing the setLevel(100). If you triggered with the "on" event, you'd already know it's on, but to get what you want, I think you need to trigger with a button event (pushed), and then there's no way to check.

So...you might need to write individual Rules. But if it helps, there is a clone feature on the App Status (gear icon) page. :slight_smile: Someone also might be able to write a custom app that does this more cleanly...

2 Likes