
Chris Jahn
Administrators-
Posts
1745 -
Joined
Everything posted by Chris Jahn
-
yardman 49, You missed it by one code drop; the following was added to the 2.5 RC1 drop, and of course is in the final release (2.6): - 'Restore Device' now removes links to unknown devices - 'Restore Device' now removes duplicate links - 'Restore Device' now moves keypad led links to front of link database - 'Restore Device' now ensures link to PLM for responder only devices Complete list: http://forum.universal-devices.com/viewtopic.php?t=266
-
2.4.15: short Wait gets stuck if there is nothing after it
Chris Jahn replied to evarsanyi's topic in ISY994
Your first example will work as you have described, but unfortunately due to a bug, your second program will not loop as you described. You could use two programs as a workaround to this bug. The bug is that if you run a program from itself, it will continue running the current actions even though the program true/false may have changed. I have logged this bug and it will be fixed in the next release. Here's the workaround for your second program: Program: ThisProgram If - No Conditions - Then Wait 5 seconds Run program 'RunThisProgram' (Else Path) Else Wait 5 seconds Run program 'RunThisProgram' Program: RunThisProgram If - No Conditions - Then Run program 'ThisProgram' Else Run program 'ThisProgram' (Else Path) -
Its definitely a topic to think about for Triggers 2.0. When program conditions change for a running program it immediately stops, and then runs either the Then or Else. In this case, there isn't much choice but to to stop immediately otherwise you could have both the Then and Else running simultaneously.
-
The initial improvement to our X10 support is to allow a blank entry for either the unit id or command in both conditions and actions. This solves many of the current the limitations. e.g. Then Send X10 'I1/On (3)' Wait 1 second Repeat 12 times Send X10 'I/Dim (15)' So you would get ... 1007 12/21/2007 11:30:37 pm Receive I1 1008 12/21/2007 11:30:38 pm Receive I On 1009 12/21/2007 11:30:40 pm Receive I Dim 5 1010 12/21/2007 11:30:42 pm Receive I Dim 5 1011 12/21/2007 11:30:44 pm Receive I Dim 5 ...
-
ControLinc buttons as triggers as opposed to controllers?
Chris Jahn replied to mdcastle's topic in ISY994
The Bright/Dim triggers were incorrectly added to the conditions list in the beta, and were removed in one of the last beta drops. -
You can use Folder conditions to accomplish most nesting You can force a program to be true or false. A program is true when 'Then' runs and false when 'Else' runs. If you want it to be false after the 'Then' completes, add 'Run Program (Else Path)' as the last action in your 'Then'. You could simulate this by changing the true/false state of a dummy program by adding a 'Run' as the first action, and a 'Run Else' as the last action, then comparing the true/false value of that dummy program. I'm not sure I understand this one, maybe a more detailed example would help. Can't use fractions of seconds now; what would you use them for?
-
The programs continue to run, although this may not be the best semantics. You can stop the programs explicitly, as in the following example. Make sure 'Program A' is not in the Folder, and that 'Program 1' and 'Program 2' are in the folder. Program A: IF Condition 1 THEN - Else Stop Program 1 Stop Program 2 Folder: IF Program A is True THEN Allow the programs in this folder to run. Program 1: IF Condition 2 THEN Action 1 ELSE Action 2 ENDIF Program 3: IF Condition 3 THEN Action 3 ELSE Action 4 ENDIF
-
You can do this using folder conditions. Folders can be nested as well. In your example, create a folder and put your programs in it as follows Folder: IF Condition 1 THEN Allow the programs in this folder to run. Program 1: IF Condition 2 THEN Action 1 ELSE Action 2 ENDIF Program 3: IF Condition 3 THEN Action 3 ELSE Action 4 ENDIF
-
2.4.15: short Wait gets stuck if there is nothing after it
Chris Jahn replied to evarsanyi's topic in ISY994
The program you have posted will remain True because the last thing it ran was the 'Then'. To make it False after 5 seconds, add one more line: Program: ThisProgram If X10 'L9/On (3)' is Received Then Wait 5 seconds Run program 'ThisProgram' (Else Path) Else - No Actions - (To add one, press 'Action') -
An alternative to removing/adding links to ensure they are in the correct order in the database is to create your scene and then run "Restore Device" for the keypadlinc. In addition to rewriting the links to the device, it moves the links for the secondary buttons to the correct location in the database.
-
Thank you for the kind words, not mention participating in the Beta. Thanks to all of your input, we have a much better end product than we would have otherwise had. Have a great holiday!
-
Yeah, really. Thanks. Sounds like 'else' is kind of a misnomer, doesn't it? I'll have to play with that one. Didn't realize that's how it worked. It was difficult coming up with terms that match every situation, so we stayed with the common If/Then/Else. You can think of 'Then' as 'Becomes True', and 'Else' as 'Becomes False'.
-
Here is the same thing in one program: If From Sunset To 11:00:00PM (same day) Then Set low voltage to on Else Set low voltage to off
-
There is currently a limitation in Replace device such that it does not update the programs. This will be added in the future, or at a minimum a warning will be included in the popup.
-
Glenn, Yes, you can use one program, and that is really the intent of having 'From/To' time ranges. Here is an example: http://forum.universal-devices.com/viewtopic.php?t=519 All programs are run based on events, such as button presses or a light coming on. In the case of Time, the events are when you enter a time range (Runs the 'Then'), and when you leave a time range (Runs the 'Else').
-
I moved the thread over here: http://forum.universal-devices.com/viewtopic.php?t=618
-
We will be enhancing the X10 support in a future release. In addition to the suggestions we have received, we will address the requirements that 'Just Another Joe' summarized very well in this post: http://forum.universal-devices.com/viewtopic.php?t=592
-
There currently is no 'refresh' command on the ISY, but it is a good idea and something to consider for the future.
-
At some point in the future we'll be adding variables and other features. Variables in particular would be useful in creating a state machine. I'm not sure what you are getting at here; the current programming model is entirely event driven.
-
2.5 RC1: timer program loops forever, mostly locks up ISY
Chris Jahn replied to evarsanyi's topic in ISY994
After posting my response, I realized that you are right, it is actually a bug. The 'query' should not be sending a status event if the status has not actually changed (and thus should not cause your program to loop). This will be changed for the final release. -
2.5 RC1: timer program loops forever, mostly locks up ISY
Chris Jahn replied to evarsanyi's topic in ISY994
evarsanyi, Here's a way of making that work ... if you want the Fan to turn off after 20 minutes if the SwitchLinc's are off, you can do that using two programs: If Status 'Mbath/Toilet1 - Fan' is On And Status 'Mbath/Toilet2 - Vanity' is Off And Status 'Mbath1 - Shower' is Off And Status 'Mbath2 - Vanity' is Off Then Wait 20 minutes Set 'Mbath/Toilet1 - Fan' Off Else - No Actions - (To add one, press 'Action') If Status 'Mbath/Toilet1 - Fan' is On Then Set 'Mbath/Toilet2 - Vanity' Query Set 'Mbath1 - Shower' Query Set 'Mbath2 - Vanity' Query Else - No Actions - (To add one, press 'Action') -
If a program is set to run at Reboot then when the ISY is restarted, the programs with this flag set are run equivalent to using 'Run' from the Program Summary page. The 'Then' path of the program is run, and the program state is changed to True.
-
I think you need the group of Or's to be true right? In other words at least one them being true. Otherwise in this case, you'd just use AND for every thing.
-
The parentheses group the conditions the way you want them to be. eg. A or B or C and D and E - To be true: Either A or B must be true, or C/D/E all must be true - same as: A or B or (C and D and E) (A or B or C) and D and E - To be true: D, E, and One of A/B/C must be true,
-
One other possibility is that after 15 seconds, the program turns False, but another program immediately runs it again using the 'Then' path, making it appear as though it never stops. Easiest way to test this is to make a copy of this program, and run this copy directly from the program summary screen, it should show 'Running Then'/True for 15 seconds, then 'Idle'/False.