Mikael,
Consider the foloowing program to control my water heater ....
If
On Mon, Tue, Wed, Thu, Fri
From 5:30:00 AM
To 8:00:00 AM (same day)
Or
On Mon, Tue, Wed Thu, Fri
From 8:00:00 PM
To 12:00:00 AM (next day)
Then
Set 'Water Heater' On
Else
Set 'Water Heater' Off
Today is Tuesday. At 7:30:00 AM we had a power failure. The power returned at 10:30:00 AM. Investigating the state of my ISY world at this time revealed that the water heater was ON.
Inspection of this program summary data revealed nothing (blank) under Last Run Time, nothing under Last Finish Time, and 2009/08/04 08:00:00PM under Next Scheduled Run Time.
It appears to me that the else clause was not executed as expected. Instead, when evaluating the condition, it immediately determined it would simply rerun the program at 8pm.
I can see how this would be valid and a nice optimization if the ISY knows the current state of the device under control to be correct. However, if the state of the device is indeterminate such as after a power failure, does it not make sense on the first running of the program to execute the appropriate action clause?
Currently, I am running 2.7.3
Thanks in advance for your comments,
Rick