Jump to content

Automatically Control Vacation Lighting


dnl

Recommended Posts

Posted

A more intuitive option would be divide the sections of the UI. One section to specify trigger events for the program, another to build the IF statement (which wouldn't change much). As far as the guts of the ISY, it's being done inherently, so making explicit should simplify things in the code, but may add to the XML used to save each program.

 

In addition, a very simple, one-time-execution method of transforming the XML for existing programs upon upgrading could be devised that would pull out the trigger events inherent in the programs and explicity list them in the trigger events, thus no ones programs would break upon upgrading.

 

It would be a definite improvement to the ISY, IMO, and a little bit of near-term pain for longer-term benefit.

 

Using two programs (one disabled) is doable, but unless you use two programs in every case, you don't really get the overall simplification to the programming model that would come with actually splitting the specification of trigger events and IF conditions.

 

OK, I've beaten this (possibly dead) horse to death. I suggested this in the suggestions section a year ago. It is there if they ever want to do it, and I would be glad to provide whatever assistance to its implementation, including interface design (I believe in the ISY that strongly). But, I'm ready to move on.

Posted

Using the little boxes and having them default to checked means, that for the most part, programming ISY would be exactly the same as currently. Unchecking the boxes would be available to those who want to venture into it. And I think I may have made it too complex to have a "condition" box and "trigger" box since I can't think of any logic that would allow something to trigger a program and not at least be an "or" condition. So just one box needed, a "trigger" box.

 

Using a separate "trigger" section would require that you have to write your conditions twice for the majority of your programs. It would sort of be like the current situation where you use two programs.

 

Along those lines, perhaps a solution to this issue that wouldn't require redoing the logic of ISY, would be to allow opening multiple associated programs at once on the same screen. It would be easier to keep track of what you are doing in the current scheme if you could see both your trigger program and execution program at once.

Posted

I was thinking of something like this:

 

http://cid-9429f89896e797d8.photos.live.com/self.aspx/Public%20Folder/ISY%20UI%201.png

 

For those that cannot view this picture, here is the jist:

 

When
       Control 'Outdoor / Driveway Motion-Sensor' is switched On

If
       From    Sunset 
       To      Sunrise (next day)
   And Status 'Outdoor / Driveway Floods' is Off

Then
       Set Scene 'Outdoor / Driveway Floods on Motion' On
       Wait  8 minutes 
       Set Scene 'Outdoor / Driveway Floods on Motion' Off

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

You would put a "Trigger" button down below in conjunction with the "Condition," "Action," and "Comment" buttons in the interface below (I think the "Schedules" button/interface should be absorbed under "Triggers" and "Conditions"). You wouldn't have to write your conditions twice, because most often your triggers and conditions would be seperate. For example, a condition of "Time is 4:30 PM" in the current model would just become a trigger, because it wouldn't make sense to test for this in the IF once the program was triggered, in most cases.

 

Note that this is an ideal implementation, that provides maximum flexibility and ease of understanding, in my (humble?) opinion.

 

That being said, I would be exceedingly happy with the checkbox!!!! :D

Guest
This topic is now closed to further replies.

  • Recently Browsing

    • No registered users viewing this page.
  • Who's Online (See full list)

    • There are no registered users currently online
  • Forum Statistics

    • Total Topics
      37.1k
    • Total Posts
      371.5k
×
×
  • Create New...