elvisimprsntr Posted February 3, 2012 Posted February 3, 2012 BACKGROUND I have a number of programs that trigger on various zones and combinations of other zones. Unfortunately there seems to be a significant difference between how programs trigger between the Elk and ISY. For example: I have an Elk program that monitors garage motion, door position and alarm status. WHEN ZONE GARAGE MOTION BECOMES NOT SECURE AND GARAGE DOOR IS NOT SECURE AND GARAGE (AREA 4) ARMED STATE = ARMED THEN SEND EMAIL MESSAGE THEN TURN GARAGE RECORD ON FOR 2 SECONDS There is a subtile timing delay that I am taking advantage of in this case to avoid sending me message and recording video every time I come home from work and open my garage door. Because the light built in to the garage door opener turns on when immediately when the motor starts, this triggers the IP camera motion detection. at this moment in time the garage door has not physically moved and the garage door is still secured, thus will not send me a message or record video. This also eliminates sending me a message if something falls in the garage or the camera pans the garage while the garage door is closed. The program in the elk is primarily used for when I forget to close the garage door at night (a frequent occurrence when I drive home from the pub) after the Elk automatically arms itself every night after a certain time. The big difference here is in the Elk WHEN... BECOMES is a state change (edge) trigger. the other conditions are current state (level) checks. In the Elk the first conditional check is ALWAYS an edge trigger and all subsequent conditionals ate level checks. There is no other way to program the Elk. Here is the problem with implementing the same program in the ISY. Here is what I created. If ( Elk Zone 'Garage Motion' is Violated And Elk Zone 'Garage Door' is Violated ) And ( Elk Area 'Garage' 'Armed State' is Armed Away Or Elk Area 'Garage' 'Armed State' is Armed Stay ) Then Set Elk Output 'Garage Record' On for 2 Seconds Else - No Actions - (To add one, press 'Action') This similar program implemented in the ISY will trigger every time I open my garage door when the house is armed. This is because I believe the ISY IF conditional checks are LEVEL and not EDGE triggered. QUESTION Are ALL the ISY conditionals LEVEL triggered? Is there a different way for me to accomplish the same outcome? Or is there a possibility for a future enhancement to the ISY conditionals checks? Thanks in advance.
Michel Kohanim Posted February 5, 2012 Posted February 5, 2012 Hello apostolakisl, ISY programs are event driven and thus evaluated every time the event applies to conditions in the program, the program is evaluated. The only exception is integer variables (not state variables). With kind regards, Michel
Recommended Posts