Jump to content

My ELK and WAITing...


ncoig

Recommended Posts

Posted

So I recently tried to pare down my lines of code in the ISY, and combined a few things into single programs versus more. Evidently I should have left it alone, but I need understand the WHY of my failure...

 

I know that if a THEN or ELSE statement contains a WAIT and the conditions change during the WAIT, it changes the evaluation, however, in my simple program, the state doesn't change, the program still shows "TRUE" yet my variable doesn't change and programs dependent on that variable don't fire. WHY?

 

My program:

 

If

Elk Area 'The xxx Estate' 'Armed State' is Armed Away

 

Then

Wait 8 minutes

$House_Occupied = 0

$Night_Mode = 0

 

Else

- No Actions - (To add one, press 'Action')

 

 

The purpose of this (not that it matters) is because I don't want my HVAC settings going up and down over and over if I leave, then run back up the stairs to get something and have to disarm/arm the system in quick succession, as well as leaving lights on until I'm well gone.

 

-N

Posted

Are those Integer or State Variables? Were the values changed by the Program but did not trigger other Programs? If that is the case it sounds like the Variables are Integer Variables when they should be State Variables.

Posted

Your program should trigger on any change of state of the Elk. It must change from anything else to armed away to run true, all other changes will run false.

 

So, either something is wrong with your ISY/Elk, or something else is changing your variables.

 

First, check your program summary page. Assuming you are home, your alarm will not be armed away so the program should be false. If it is true, something is wrong with your Elk/ISY.

 

Second, arm the alarm to away. You should immediately see the program change to true and show "running then". After 8 minutes it should show a finished run time and the "running then" change to "idle".

 

Now, there is no excuse for variables not being "0". If they are not 0 then look to see if you have another program that ran at the same time this program finished, a program that might have run because those variables are state variables and they were a trigger for some other program to change them.

Guest
This topic is now closed to further replies.

×
×
  • Create New...