Jump to content

Any way to incorporate ANY off event on all insteon devices in a programs 'if' logic?


pwmcmaho

Recommended Posts

As the subject says, is there anyway to have any off event to any insteon device trigger the if condition logic of a program?

TLDR:  I have a nighttime program that runs and turns on some lights ... however, I need to trap when any of those lights are turned off, either by themselves or through other programs and then turn them back on. 

Currently I use a variable to keep track of the nighttime status and then a big ol nasty OR blob for a bunch of the devices that are most likely to turn one of the devices in the nighttime scene off ...  but that can be a bit much to manage... so looking for something easy.

Thanks!

Link to comment

It depends on what you mean by if they're turned off "by themselves". By someone manually turning one off? One way might be to use the "Virtual" plugin to create a virtual light that gets turned on at the beginning of the night, and then make all these night lights controllers for a scene that turns that virtual light on or off. That way if one of them is turned off, the virtual light also turns off, and you could have a single IF statement looking for the status change to off for that virtual light, during the night time. Just an idea that I haven't tested.

Link to comment

Two other options:

1). A long IF with ALL the lights you have in that scene separated by ORs, that if switched off (during the time period you want ), then maybe wait 30 seconds and then turn the scene back on. 

example: 

IF 

From 9pm until 6am next day

AND (

Light A is switched off

or Light B is switched off

of light c is switched off

)

THEN wait 30 seconds,. turn scene "nighttime" on

 

Or 2)

Just turn that scene on every 10 minutes during the duration you want it on, so it will "self correct" w/o any monitoring needed.

example: 

IF From 9pm until 6am

THEN 

repeat every 10 minutes

Turn "nighttime" scene on. 

The advantage of this technique is that you can have in your scene all the other lights that you want off to turn off as well, again w/o monitoring 

 

I have  use both techniques above for different scenarios.  For my Bedtime scene. I probably have 30 lights included in it so I use the "every 10 minutes" technique but I think I use 20 minutes so that if someone goes out to the kitchen and turns a light on to see they have in theory anywhere from 0-20 minutes that the light will stay on, and then it goes off. Not always ideal, but it works w.o monitoring all 30 lights as to which are turned on, which are turned off etc. 

 

 

Link to comment
17 hours ago, Guy Lavoie said:

...make all these night lights controllers for a scene that turns that virtual light on or off. 

Would this work?  I thought controllers for scenes are always responders too.  Wouldn't this plan make the single manually switched-off light turn off all the lights that are controllers in the scene, and not just the virtual light?

-Tom

Link to comment
3 hours ago, xlurkr said:

Would this work?  I thought controllers for scenes are always responders too.  Wouldn't this plan make the single manually switched-off light turn off all the lights that are controllers in the scene, and not just the virtual light?

-Tom

It's a conceptual idea, that I haven't tested. But I can picture that kind of thing possibly working. Devices can both be controllers and responders (like we do with virtual 3 way circuits) or not, like in many scene applications. That's the big advantage with Insteon: the multiple linking concept.  You'd be testing for the virtual light getting turned off, during the nighttime, which shouldn't occur according to your description of the way it's supposed to work. I'd test it with a couple of switches.

Link to comment

All interesting ideas ...  Thanks!

Currently I am using @dbwarner5 option 1 ... which does work ...  I do include a random repeat of 2-4 times just to give some backup in case a message gets lost.

@Guy Lavoie - that is an interesting idea ... basically the challenge with building programs is that while you might take an action based on an event, other actions can unintentionally interfere with the intended desire of the original program (e.g. keep a collection of lights on during a period of time) ...

@larryllix - That is an interesting idea ... and I might do that one ... my hesitation is that I will need to create one of those programs for each device AND each program to ensure that all the programs are covered ...  Might be a little bit easier to go for the MASSIVE if statement that @dbwarner5 suggested ...

hmmm..

Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


×
×
  • Create New...