Jump to content

"Control" reporting from auxiliary switch


asbril

Recommended Posts

Posted

I have reported before on  a program that I want.  The base is that when Motion Sensor 1 is On then Hallway Ceiling light goes On for 2 1/2 minutes. However if that Hallway Ceiling Light is already On when the Motion Sensor is activated, then I don't want the Hallway Ceiling to go Off after 2 1/2 minutes.

I believed that I had resolved this with the following 3 programs :

(1) IF

Motion Sensor 1 status is ON

THEN

Hallway Ceiling light ON

Wait 2:30 minutes

Hallway Ceiling light Off

(2) IF

Hallway Ceiling Light is Switched On

THEN

Stop Program (1)

Disable Program (1)

(3)

IF

Hallway Ceiling light is switched Off

Or Hallway Ceiling light status is Off

THEN

Enable Program (1)

However this does not work all the time and I realized that the Hallway Ceiling light is a 4 way and ISY only recognizes Switch On/OFF when activated on the main switch. The auxiliary switches report  the Status to ISY, but not the Switch On/Off

I am afraid that if I add to (2) in IF Or Hallway Ceiling Status is On, then in (1) the 2:30 minutes would not work because of the Stop and Disable command in (2).

Can someone "enlighten" me on what to do ?

 

Posted

Asbril, Motion Detector (MD) versus manual switches are PITA's. What I do is set a variable when the MD is switched on. Then if the Load is switched on by one of the switches, you can check the variable to see if it was switched on by the MD (if variable is non-zero), or manually by any switch on the 4-way. If any switch turns on the lights manually (non-MD detection), check the MD turned-on variable first and set another variable (or I typically use a different value like 2 for manual mode), to prevent the timer program from turning off the load. The MD-Turned on variable is only to allow you to detect whether the MD sent an On command, versus a wall switch (when a wall switch turns on the Load, the same Lights are on status will occur, so is useless to steer any program logic), however, when the MD sends an On command, you can detect that the MD is the source of the On command (not a wall switch).

So when the MD turns on, your timer program can control its turn off period, but only if the variable (call it MDLtg, etc) is on, or set to the MD-Turned-On the-Lights value. Of course if a switch is manually turned on and then you walk into the detection range of the MD, it will want to set the variable, unless you prevent that by first checking that the lighting mode variable is not set to manual mode (ie. for me - 2). When the lights are turned off, clear the variable back to zero to allow it to reset to the Off state - allowing it to detect the controlling On command initiating device (ie. manual switch or MD).

For this scheme to work, the MD will have to be set for On Only command mode and a program (not the MD on-time), will have to turn off the lights/controlled load.

I also make a lot of use of Fast On commands at switches to "lock on" lighting, fans, etc. that are timed off by a program, again by setting a variable to a "lock-on" value and using that in programs to disable timed-off.

Also, if you have multiple switches in a 3, 4..n-way switch arrangement, put them into a Scene and make every switch a Controller to simplify sync'ing all of the remote/slave switches status to the Load Controller status (nothing to do with your question).

I hope my explanation is not confusing, as I wrote it rather quickly, but hope you can get an idea of how to solve your problem. If you need more help, or want to see a program (unfortunately many are needed to do an adequate job of controlling this situation, depending upon your requirements/complexity of human interaction with the lights), please let me know, and I can try to post.

 

Posted
3 minutes ago, SeeGreen said:

Asbril, Motion Detector (MD) versus manual switches are PITA's. What I do is set a variable when the MD is switched on. Then if the Load is switched on by one of the switches, you can check the variable to see if it was switched on by the MD (if variable is non-zero), or manually by any switch on the 4-way. If any switch turns on the lights manually (non-MD detection), check the MD turned-on variable first and set another variable (or I typically use a different value like 2 for manual mode), to prevent the timer program from turning off the load. The MD-Turned on variable is only to allow you to detect whether the MD sent an On command, versus a wall switch (when a wall switch turns on the Load, the same Lights are on status will occur, so is useless to steer any program logic), however, when the MD sends an On command, you can detect that the MD is the source of the On command (not a wall switch).

So when the MD turns on, your timer program can control its turn off period, but only if the variable (call it MDLtg, etc) is on, or set to the MD-Turned-On the-Lights value. Of course if a switch is manually turned on and then you walk into the detection range of the MD, it will want to set the variable, unless you prevent that by first checking that the lighting mode variable is not set to manual mode (ie. for me - 2). When the lights are turned off, clear the variable back to zero to allow it to reset to the Off state - allowing it to detect the controlling On command initiating device (ie. manual switch or MD).

For this scheme to work, the MD will have to be set for On Only command mode and a program (not the MD on-time), will have to turn off the lights/controlled load.

I also make a lot of use of Fast On commands at switches to "lock on" lighting, fans, etc. that are timed off by a program, again by setting a variable to a "lock-on" value and using that in programs to disable timed-off.

Also, if you have multiple switches in a 3, 4..n-way switch arrangement, put them into a Scene and make every switch a Controller to simplify sync'ing all of the remote/slave switches status to the Load Controller status (nothing to do with your question).

I hope my explanation is not confusing, as I wrote it rather quickly, but hope you can get an idea of how to solve your problem. If you need more help, or want to see a program (unfortunately many are needed to do an adequate job of controlling this situation, depending upon your requirements/complexity of human interaction with the lights), please let me know, and I can try to post.

 

I can see this working with insteon but he uses only zwave. 

Posted

I think lilyoyo1 has the right idea

(1) IF
    Motion Sensor 1 status is ON

THEN
    Hallway Ceiling light ON

    Wait 2:30 minutes
    Hallway Ceiling light Off

(2) IF
    Hallway Ceiling LightSwitch1 is Switched On   
    OR
    Hallway Ceiling LightSwitch2 is Switched On 
    OR  
    Hallway Ceiling LightSwitch3 is Switched On
    OR
    Hallway Ceiling LightSwicth4 is Switched On

THEN
    Stop Program (1)

    Disable Program (1)

(3) IF
     Hallway Ceiling light is switched Off
  <---- don't think this is needed
    Or Hallway Ceiling light status is Off

THEN
     Enable Program (1)

Posted
1 hour ago, lilyoyo1 said:

Does the isy see any presses from the other switches

It will the status from ON to Off or vice versa, but only as a status change

Posted
18 minutes ago, larryllix said:

  Hallway Ceiling LightSwitch1 is Switched On   
    OR
    Hallway Ceiling LightSwitch2 is Switched On 
    OR  
    Hallway Ceiling LightSwitch3 is Switched On
    OR
    Hallway Ceiling LightSwicth4 is Switched On

 

No that will not work. The auxiliary switches are slaves of the main switch. ISY does not distinguish the "slaves" from the "master and there are no separate nodes. Therefore I was surprised that ISY  identifies the change of "control" on the auxiliary switches only as change of status.

You are right though that (most likely) about the change in (3)

Does the King of Variables have an idea with a variable ?

Posted
9 minutes ago, asbril said:

It will the status from ON to Off or vice versa, but only as a status change

Does their status change when you use the motion sensor

Posted
1 minute ago, lilyoyo1 said:

Does their status change when you use the motion sensor

ISY does not know the auxiliary switches. ISY only sees one node. Basically the auxiliary are only known to the main switch and change the status of the main switch. That seems to be the reason that when I manually switch the light On or Off from one of the auxiliary switches, ISY only sees a change of status and not a change of control. I would think that UDI could find a solution for this, meaning identifying any change coming from the main switch as a change of control. 

Posted
4 minutes ago, Teken said:

This would be a good time to use multi tap - No?!?

Maybe.... I could create a scene with the multi-tap, but even if I would remember to multitap, I am sure that the rest of the family would not.

What making a change to (1) ?

IF

 MS is On

And Hallway Light is not On

 

Posted
6 minutes ago, asbril said:

Maybe.... I could create a scene with the multi-tap, but even if I would remember to multitap, I am sure that the rest of the family would not.

What making a change to (1) ?

IF

 MS is On

And Hallway Light is not On

 

I suppose this really comes down to how complex or easy you want this to be done. If you know (generally) speaking at X time of day the hallway should remain lit. I would simply create a program that is timed / scheduled to run the timer - or not.

Posted
1 minute ago, Teken said:

I suppose this really comes down to how complex or easy you want this to be done. If you know (generally) speaking at X time of day the hallway should remain lit. I would simply create a program that is timed / scheduled to run the timer - or not.

That is a helpful idea for the evening. but I am still looking for something that would work all day, without needing to have the light On all day.

Posted
1 minute ago, asbril said:

That is a helpful idea for the evening. but I am still looking for something that would work all day, without needing to have the light On all day.

As others noted using a variable with multi-tap would be the cleanest approach. You need only teach the family unit to double tap or what ever number you find convenient. The only other idea would be to use a multi button keypad and program one of the buttons to enable a schedule halt of the timer. It would be a single button placed somewhere or several areas to over ride the timer.

I dunno I'm having a hard time understanding how often lights in a hallway would need to stay on?!? In the worst case scenario just make the timer longer from 2.5 minutes from to what ever. If you get real fancy a dedicated button with multi tap could be used to extend the time for when ever you need it to be longer. So the choices are do away with the whole concept of a timed shut off. 

- Implement a much longer shut off period

- Schedule: From X time Y days run lights for Z time

- Multi-Tap: This can be used to stop the timer, add more time.

- Geo Location: If you have dipped your toes into this new feature. Using iBeacons will allow a person with a portable device use hyper local detection.

Posted
1 minute ago, Teken said:

As others noted using a variable with multi-tap would be the cleanest approach. You need only teach the family unit to double tap or what ever number you find convenient. The only other idea would be to use a multi button keypad and program one of the buttons to enable a schedule halt of the timer. It would be a single button placed somewhere or several areas to over ride the timer.

I dunno I'm having a hard time understanding how often lights in a hallway would need to stay on?!? In the worst case scenario just make the timer longer from 2.5 minutes from to what ever. If you get real fancy a dedicated button with multi tap could be used to extend the time for when ever you need it to be longer. So the choices are do away with the whole concept of a timed shut off. 

- Implement a much longer shut off period

- Schedule: From X time Y days run lights for Z time

- Multi-Tap: This can be used to stop the timer, add more time.

- Geo Location: If you have dipped your toes into this new feature. Using iBeacons will allow a person with a portable device use hyper local detection.

I am going to think about it. Thanks !!!!!  :-)

 

Posted

I believe that I have found the solution.

In (2) I changed  Hallway Ceiling Switched to Status is On

and added

Status MS is Off,

So new set of program is as in the attached pictures.

(1).jpg

(2).jpg

(3).jpg

Posted
1 hour ago, asbril said:

I believe that I have found the solution.

In (2) I changed  Hallway Ceiling Switched to Status is On

and added

Status MS is Off,

So new set of program is as in the attached pictures.

 

 

 

I suggest you add a long Wait time and an Off line  to any manual override programs. I have learned back in the X10 days that if you have enough automatic, no need to touch, lights, the family will learn to never touch anything and will leave the lights on.

After all others didn't program the system and will never remember which ones are automatic and which ones need to be turned off.

We find lights left on when guest leave. Now I make a tour after guests leave so lights aren't left on for weeks until I find them.

 

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...