The Z-wave protocol is a great invention, but as anyone on this board probably knows (perhaps all too well) it’s not perfect. One limitation is the inability for devices to properly send status updates, which is a big handicap for creating intelligent scenes.
Here is a scenario I’m working with:
[ul][li]Room is equipped with light switch (dimmer) and motion sensor. The switch is in direct line of sight of the motion sensor.[/li]
[li]Action 1: Light is programmed to turn on if motion sensor is tripped.[/li]
[li]Action 2: Light is programmed to turn off after set interval after motion sensor is untripped (30 seconds).[/li]
[li]If a user pushes the switch (regardless if the light is already on or not), action 2 should be bypassed and the light should be kept on[/li]
[li]Here is the problem: to get to the light switch, the motion sensor will always trip the light and vera will always see the status as on. As far as I can tell, there is no way for Vera to sense another signal has been sent from the switch and trigger the override.[/li][/ul]
Even though I’m using Leviton light switches which do support status, z-wave cannot distinguish if the light was turned on locally or remotely (or can it?).
I’ve seen a lot of the sample PLEG scenarios where the motion sensor and switches are mounted apart from each other, and I feel like PLEG can overcome these shortcomings. However, I’m having a hard time finding how. Can someone help light the way?
P.S. I’m also having a bit of trouble with the auto off function in PLEG. The autooff condition (action 2) timer always triggers from the first time the motion is untripped. Is there a way to reset the timer if someone is moving around in the area and untrips the motion sensor again?
awesome, i’ll try it out. Thanks Richard!
Just wanted to report back for posterity. Thanks again for the help.
Unfortunately, while the thread was a great step in the right direction, vera is still fundamentally missing the ability to report the live status of the switch and I was not able to use pleg as a workaround.
I was not able to find a way to expose the status of the switch to pleg if the motion sensor turned on the light.
You might be able to achieve what you want if you replaced your switch with a Fibaro FGS221 dual switch module. Use switch1/relay1 to signal Vera and use relay2 to control the light.
Use a PLEG to turn on relay2 when it sees switch1 turn on or the motion sensor is tripped more than 1 minute after switch1 was last turned off. PLEG can turn off relay2 when the motion timeout elapses - unless switch1 is on. When switch1 turns off, PLEG turns off relay2. Or something like that…
The dual-switch Fibaro module has instant-status on both switches and is very compact. It’s the same size and price as the single switch but just limited to 1.5kW per switch instead of 3kW for the single. 1.5kW is a lot of light. 8)
@RexBeckett,
Thanks for the suggestion. I’ll look into it and hopefully it’ll work out. Seems like it might be tough to source Fibaro parts here in the US though. Wish me luck!
Just to clarify that devices can properly send status updates, as long as they support that feature. Unfortunately, it is protected by a patent, so there’s only a few vendors that pay the licensing fee (e.g. Leviton). And there’s others that seem to have actively worked around the patent (by creating a hybrid device) (e.g. Fibaro). And there’s others that haven’t done anything, but may still show some form of instant update due to workarounds in Vera’s firmware (e.g. GE).
Even though I'm using Leviton light switches which do support status, z-wave cannot distinguish if the light was turned on locally or remotely (or can it?).
I believe a status update will only be sent if the device was controlled locally (or remotely using a Leviton controller).
The action when controlling the switch (or dimmer) locally, is defined by the switch: if it’s on, it goes off. If it’s off, it goes on. Always; no Z-Wave involved.
Isn’t it like this: if the motion sensor trips, Vera turns on the switch; she updates the status to on. If you then press the paddle, the switch turns off and a status update is sent to Vera; she updates the status to off.
So perhaps you can use a scene that ‘immediately’ turns the light back on and bypasses the sensor, if the switch is turned off and the sensor is tripped and not bypassed. And a scene that re-arms the sensor; perhaps triggered by the switch being turned off while the sensor is in bypass, wait the ‘untrip delay’ in the sensor, then re-arm.
(Assuming that you use the sensor to do the timing (the 30 seconds you mentioned?). Not covered is the case where you return to the room, turn the light back on manually, during the ‘untrip delay’.)
Oti,
Thanks for chiming in. Yes, actually, that was the next thing I wanted to try before moving on to another hardware solution. It’s not ideal since it’s a bit counter-intuitive for the lights to turn off in order for them to turn on and it’s a bit more of a complicated than I’d like, but it’s certainly worth a shot.
Roughly speaking, I will probably have it setup something like this:
[ul][li]Motion sensor turns on light and flips a virtual switch (disarm motion sensor and define this as auto mode)[/li]
[li]If the physical switch is turned off within 30 seconds, turn the light back on and toggle the virtual switch(rearm motion sensor and define this as manual mode)[/li]
[li]If the light was turned on in auto mode, turn off automatically after x amount of time. [/li]
[li]If the light was turned on in manual mode, do nothing.[/li][/ul]
Hopefully this will work out.
The approach that the PLEG example I referenced above uses does not require you to turn the light out.
It senses the order of things … If motion happened … and the light was turned on, after, but within 30 seconds it knows it was auto turned on. (The interval could be shortened).
Richard,
Yes, that’s true. From your post, you wrote “Note: If your light is turned on manually … or by some other event then your condition … This logic will NOT turn it off.” which makes sense. Unfortunately, in this case, that “other” event would never occur.
It would work perfectly if not for the fact that the switch is in direct line of sight of the motion sensor. This means vera would never receive an on signal from the switch since the motion sensor would always turn the light on first.
From what i’ve been able to find, none of my switches (GE, Evolve, and Leviton) have the ability to repeat a ‘power on’ status once the light is already on.
Am I being dense about the setup? Perhaps there’s something i’m overlooking?
In the meantime, i’ll play with it to see if i can use the ‘off’ status as a trigger instead.
Thanks again!
In the PLEG example … If the motion turned on the light … you are probably happy. If you want it to not turn off … toggle it off then on and it will stay on … because the AutoOn status will be cleared.
[hr]
Shorten the interval to 5 seconds …