Jump to content

Folders - sometimes don't work


thruster999

Recommended Posts

Hello,

 

I use folders quite a bit to make sure that specific programs only run at certain times of the day/night. However many times when the folder conditions are true (status=true) and the program within the folder conditions become true, the program does not run - unless I run the IF option manually from the Program Summary Tab from the admin console.

 

Is this a known bug? Or is it that that the conditions of the programs within the folder must be true the instant the conditions of the folder are true?

 

I appreciate the help.

 

btw

 

The folder is called 'dinner 8:30 to 9:30'

IF

From 8:30:00pm

To 9:30:00pm (same day)

Then

Allow programs in this folder to run

 

 

The program located in the folder is called 'Evening Counters'

IF

program 'Kitchen is Dark' is true

Then

Set 'Kitchen Counters' on

 

So even though the status of Kitchen is Dark was true at 8:30 the program 'Evening Counters' did not run and remained false. However I ran the (If) from the Program Summary tab and it ran because all the conditions were true.

Link to comment

Hi thruster999,

 

Programs do not run automatically when a folder becomes True. But they can use the folder condition to trigger them.

 

If
       Program 'Kitchen is Dark' is True
   And Folder  'dinner 8:30 to 9:30' is True

Then
       Set 'Kitchen Counters' On

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


 

Rand

Link to comment

Hello Rand and Michel

 

I'm using firmware v2.7.14

 

In the examples I posted all the conditions were true as soon as the folder conditions became true at 8:30.

 

The Program status for 'Kitchen is Dark' became true over one hour before the status of the folder became true. It actually triggered another program not in a folder.

 

btw I have tried to also include the condition

And Folder 'dinner 8:30 to 9:30' is True

with the same outcome.

 

For some reason 'Evening Counters' does not run.

 

Last night I took it out of the folder and put it into the root and added the time condition to 'Evening Counters'

IF

program 'Kitchen is Dark' is true

AND

From 8:30:00pm

To 9:30:00pm (same day)

 

It ran perfectly. At 8:30 ('Kitchen is Dark' was already true) the Kitchen Counter lights came on.

 

???

Link to comment

I suspect that sub-routine had it nailed. I suspect you are seeing the difference between "status" and events that trigger an action. That is, when is a condition evaluated that will cause it to execute the program and choose the "then" or "else" paths?

 

The condtion "kitchen is dark" is evaluated only when it changes from dark to light and from light to dark. As I understand it, these are the points in time, and the only points in time, where the program would execute. If you put it in a folder that is valid between these points-in-time, then the program will neither evaluate itself, nor executre.

 

The folder condition, itself, never triggers a program. It only enables programs. It is only the conditions within the program, itself, that cause a program to run.

 

For example, assume the light to dark transition happens at 7:00p and the dark-to-light transition happens at 7:00a. You then this program into a folder based on the condition that the folder is true between 8:00p and 9:30p. This program will never run. The folder conditions do not force an evaluation of the program. The program conditions fall when the program is disabled, due to the folder conditions.

 

I hope this was of some help.

Link to comment

Hello oberkc

 

I never realized that. That a trigger has to occur between 8:30 and 9:30 and not prior.

 

However, I did try what Rand suggested and added the condition (trigger)

 

And Folder 'dinner 8:30 to 9:30' is True

 

ie

IF

program 'Kitchen is Dark' is true

And Folder 'dinner 8:30 to 9:30' is True

Then

Set 'Kitchen Counters' on

 

and it still did not work. As I posted earlier I had to move the program into the root and add the schedule condition.

 

Anyway, wouldn't the above added statement act as an appropriate trigger?

Link to comment

I don't use a lot of "true" statements, so I can only speculate without further experimentation, but it sounds like "true", as a condition of a program, also acts as a program trigger at the transitions, and perhaps not at all. The conditions: "from...until", "time is..." "control....", "status..." all act as triggers, so I can only surmise that it might be necessary to include on of these in your program. Since I am also curious as to the behaviour of these, I intend to check out when I get more time.

 

I am also unsure how you define "dark". Is this an input from an Elk security panel? If so, I understand this to be sunset.

 

It sounds like we must concern ourselves with two possibilities...one, if dark happens before 8:30, the other if it happens after 8:30. Until we can come up with something a little more efficient, try a brute force method:

 

Create a time folder, with condtions being time is from 8:30 until 9:30 (same day). Create a program, called dark (or whatever), with your conditions from sunset until sunrise (next day), with no actions. This program should reside outside your time folder.

 

Create a second program, inside your time folder, that looks like:

 

If 
(
program "dark" is true
and
time is 8:31 <<)
or 
time is sunset

then
Set 'Kitchen Counters' on 

 

This should get you pretty close until I can look into other options. Realize, of course, that your lights could come on up to a minute late under certain conditions.

Link to comment

Hi oberkc

 

I'll try it

 

btw the 'Kitchen is Dark' program is just used as a boolean variable.

 

I have a 2420m montion sensor installed in the kitchen. I have a program that tests the dusk/dawn setting every 5 minutes and after two sequential identical outcomes, either on or off, it changes the 'Kitchen is Dark' program status to true or false by running either the Then or Else portion of the program. 'Kitchen is Dark' has no programming in it. Strictly used as a variable.

 

Anyway, I use the program, succesfully, to change scene settngs in the Kitchen. I've also been able to use it sucessfully as a test condition outside of folders - but no luck within folders.

 

However, I ended up posting my issue in this thread because it doesn't appear to only be my 'Kitchen is Dark' program. I've also used the folder=true test and got the same results. The program I want to run, doesn't.

 

Thanks for your help

Link to comment

If you are happy with the current "kitchen is Dark' program, then I would use it in place of my suggested program (dusk to dawn). The only thing that jumped out at me is the possibility that turning the lights on would then cause your kitchen dark to change states. I don't think this will cause problems in your current situation, but it is something to watch out for.

 

I am still a little surprised that sub-routine's suggestion did not work. He states that folder conditions (and I assume he means whenever a folder changes state) triggers a program. He did not state specifically that program changes-of-state trigger programs, but I would have assumed that they would as well. In my set up, I have not had the need to use this capability, so my knowledge about such things is based only what I have read.

 

By chance, when you used Rand's suggestion, you did not happen to have your program inside the 'dinner 830 to 930' folder? If so, this could, in my mind keep your program from running when dark occurs before 830. If you did, I would try it again, ensuring that the program was outside the folder.

Link to comment

That seems odd.

 

Here are the programs / folder I have had running for some weeks:

 

Sunset Status (no folder):

If
       From    Sunset 
       To      Sunrise (next day)

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

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


 

Night Rates (a folder):

Folder Conditions for 'Night Rates'
Add conditions to limit when programs in this folder are allowed to run.



If
       From     6:00:00PM
       To       6:00:00AM (next day)

Then
  Allow the programs in this folder to run.


 

Sunset (in Night Rates folder):

If
       Program 'Sunset Status' is True
   And Folder  'Night Rates' is True

Then
       Set Scene 'OL Evening' On

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


 

I experimented with the schedules on the status program and the folder and the program runs no matter which turns True first.

 

Hmm...

Link to comment
Guest
This topic is now closed to further replies.

×
×
  • Create New...