Physical Switch Events Not Triggering Rule Machine Rule

I’ll have to try it out again. It’s actually something I tried a couple years ago or longer on RM 2 I think. Thanks for always being so quick to fix bugs. I do hope you sleep sometimes.

1 Like

Bruce never sleeps; he simply reboots every 36 hours.

2 Likes

The hot fix release with this fix is out.

3 Likes

How do I use this hot fix? I see mention of version 5 and 5.1 but what are those versions of? Thanks

Go to Settings / Check for Updates. Update your hub from there. The fix applies to Rule 5.1 rules, those that are created now in Rule Machine.

1 Like

ok, thanks, Bruce. I was confused because I saw "Version 1.0.2 (11/29/2021)" in the new Rule Machine. I haven't used it yet, all my rules are still in legacy. Guess that would be a good Sunday project to get those all moved over to the new hotness.

1 Like

OK, i'm testing this out now but not getting the results I would hope for. First off, I didn't know there was a different trigger called "Physical Switch" so that would have been my first problem back in March when I started this post.

So now I've configured my RM5.1 rule to use the "physical switch" trigger method to close my garage door when I physically turn OFF a Z-Wave switch on my wall. (and open it when I turn it ON)

So, to test this, I pressed the OFF button on the Z-wave switch so the switch was in the OFF state. Then I used my garage door opener remote to open the garage door. Then I pressed the OFF button on the Z-Wave switch that was already turned off but it did not trigger the rule. It logged each of these physical switch OFF events in the HE logs section but not in the "events" tab for the device. It didn't fire the rule to close the garage door until I physically turned the switch back on and off again.

image

It looks like in the last screenshot of the events from the device, only the last two ON and OFF commands are seen. My 3 OFF presses that were logged by Hubitat at 3:42:54, 3:43:01 and 4:43:04 are missing from the events view on the device.

I hope i'm not missing some instructions or clarification on this from above. I did upgrade to the latest version of HE.

thanks,
Dan

in case that wasn't totally clear above, what I'm trying ask, is should all of the physical OFF events that show up in the HE log, also show up in the device event log? Or do they not show up there because the device state is already OFF so any additional OFF events are considered redundant for that device?

1 Like

I've done a little more experimentation with this tonight. I am trying to do this with a Leviton DZ15S switch. As mentioned, HE picks up these repeated physical OFF events no problem, I can hit the off button 10 times and I'll see 10 HE logs but the app/RM5 event log never sees them. The app only sees the OFF event if the switch is changing state. I am using the "Generic Z-Wave Smart Switch" driver for this device. I tried pretty much every other driver but the smart switch is the only one that picks up the physical events.

I tested this with one of my UltraPro (Jasco/Honeywell) dimmers and had the same problem however with those dimmers, I noticed the driver exposes a button press "2" for the down paddle and "1" for the up paddle and that is seen in the app event log regardless of current switch state or how many times you hit a button repeatedly. With this, I could build a rule that opens the garage door on button 1 and closes it on button 2. So I think I could swap some switches around in the house but It's a lot of work.

Seems like either a driver issue or an app subscription issue. Those subsequent OFF events from the switch just aren't getting passed through to the RM5.1 rule.

For now, I just doubled up on a simple rule that mirrors my Konnected garage door open/close sensor to the light switch. I already had one to mirror the GoControl garage door opener with the Leviton switch but HE or GoControl don't play well together and often times HE will miss state updates from the GoControl when I use my garage door remote to open/close.

@bravenel Any ideas how to get these OFF events passed through to the RM5.1 rule?

1 Like

The platform discards events that don't represent state changes.

This could only be overcome with a custom driver, or a driver that changes the event from switch-off to button press (no state, so each is sent).

1 Like

Thanks, Bruce. Ok yeah I started looking into custom driver dev last night and got overwhelmed but good to know that would be the solution. Thanks

1 Like

For anyone else who might come across this later, I think I have this working now by using a custom driver with a small modification.

I used the "Almost Any Z-Wave Plus Switch Driver" by @jvm33 "

I commented out the IF statement that only sends the event if the device changes and added a "isStateChange: true" to the end of the sendEvent command.

This seemed to allow my garage door open/close rule to trigger even when there's a mismatch between the garage door and the switch. For example, if the garage door is open but the switch is OFF, I hit the OFF button on the switch again and it sends a physical event for the "Close Garage Door" rule to pick up.

I think? I don't really know what I'm doing here but this seems to work. I had to get rid of my rules that sync the switch to the garage door because I think there was some double-firing going on. I'll try to add those back in once I have a chance to test this out for a while. The only reason they would matter now is so the indicator LED on the switch aligns with the garage door open/close state.

1 Like

Well, i'm back to the original problem from the start of this post where my physical event is not triggering the rule. I just went to open my garage door with the Leviton switch and in this case, the switch was definitely off because I heard it click when I turned it on yet the RM5.1 rule that is configured to open the garage door whenever the switch turns on, didn't fire even though the physical event was clearly logged for the switch.

in the screenshot above, the switch ON event at 12:58:57 didn't trigger the rule. I hit the switch again at 12:59:51 and this did trigger the rule. The events seem to be identical yet one worked and the other didn't.

Was hubitat just not paying attention?

here's my rule

Please turn on logging for the rule, Events and Triggers. They you could post a screenshot of those logs should it fail again. It would be useful to see the Events from the device that preceded the ones you showed above.

thanks, @bravenel, ok I have events and triggers logging turned on now for the open and close garage door rule.

here's more of the events from that device

I also have a simple automation rule that keeps the switch in sync with the garage door opener device.

I just left for an errand again and this time when I hit the on button on the switch, it triggered as expected the first time with everything in the same state (garage door closed, switch off)

I'll post up here with logs if it fails again. Thanks for the help.

Dan

@bravenel ok it just did it again on my way out for some errands. There's nothing in the app event logs though, completely empty. Am I missing something basic?

I know the rule runs, seems like there should be something in there. It looks like none of my apps/rules have events in them. :confused:

Most apps don't post any events.

ok, any ideas how I can troubleshoot this? Were we expecting something in the rule's event log when the failure occurred? Is there any more logging I can turn on to catch this?

I have a rule that turns on the garage light as soon as I open the door into the garage (triggered via Konnected alarm sensor) so I typically open the door and use the switch to open the garage door at the same time. Could too many things happening at the same time be causing the issue?

thanks,
Dan

1 Like