Thanks for your patience and continued assistance, oberkc!
If
From Sunset
To Sunrise (next day)
And Status 'Porch Lights' is Off
Then
Set 'Porch Lights' 50%
Else
Set 'MBR Light' On
Set 'Porch Lights' Off
Let me make sure I get this 100% correct. In the example above, will this program execute
a. at sunset
b. at sunrise
c. every time the status of 'Porch Lights' changes (and evaluate to true and execute the "Then" statements if the
current time is between sunset and sunrise AND the status of 'Porch Light' is off, or execute the "Else" statements any
other time of day OR any other status)
d. every time the status of 'Porch Lights' changes between sunset and sunrise only, and execute "Then" if the status of
'Porch Light' is Off, or "Else" if it is in any other state
a,b, and c?
a,b, and d?
?
Not sure I like either answer, problem being is that the status change acts as a trigger in itself if I interpret you correctly. Here's an example UD shows in their manual:
That statement makes you belief that the status is ONLY evaluated at the specified time, not every time the status changes. Now in my example we are dealing with a timeframe, so if we apply the logic from their example, you would think it's either only at sunset and sunrise, or sunset/sunrise/any time in between that the status changes. Then again, their statement "program will execute only..." is suspect to me as well, shouldn't it be "program will evaluate to true" or something to that effect?
You almost have to know the internals of their code to figure out how this stuff works, or do a lot of experimenting which I'm trying to do as well as much as possible, but this evening I got a nice error message on my UD Admin console:
Failing Communicating With
Cannot Communicate With Front Porch Door Lights (3 17 93 1). Please check connections.
OK
Then it had the same error message for the foyer lamps, but those had come on nevertheless, whereas the porch lights did not (but their "current state" in the console shows 50%).
Ok, got part of the answer. Just changed the status to 53% in the admin console to see if I could turn on the porch lights "manually", and they started going on, off, on, off, etc - checked the program and I had basically the same logic as above, so I deleted the "And" condition/trigger and saved the changes which stopped the madness. The status change is definitely a trigger, question remains if that trigger is valid all day or only during sunset to sunrise.
Ran another test program with a from-to AND Status ... condition, the status change does indeed trigger the program to run at any time (it evaluates to false/else outside the from-to timeframe, and true/then inside the timeframe).
For those of you still awake reading this, hope it helped a bit. Now I have to figure out what's causing these communication errors (still popping up even if issuing commands from the console, though some of them execute despite the error msg).