Jump to content

Manually writing a Program?


eyost
Go to solution Solved by MrBill,

Recommended Posts

Hi all,

I apologize for not asking the question in a clear manner, but here goes...

I have found the following program here but cannot for the life of me figure out how to add it 
to the ISY.

I assume that it has to be manually written int TextEdit and then imported? I tried that but it 
doesn't show up in the ISY.

If
       From     1:00:00AM on 2013/11/15
       To       1:00:00AM on 2014/01/01

Then

Else

Thanks for any help...

Ed

 

 

Link to comment
42 minutes ago, eyost said:
Hi all,

I apologize for not asking the question in a clear manner, but here goes...

I have found the following program here but cannot for the life of me figure out how to add it 
to the ISY.

I assume that it has to be manually written int TextEdit and then imported? I tried that but it 
doesn't show up in the ISY.

If
       From     1:00:00AM on 2013/11/15
       To       1:00:00AM on 2014/01/01

Then

Else

Thanks for any help...

Ed

 

 

How do you normally write your programs in the isy? It's the same way

Link to comment
41 minutes ago, eyost said:
Hi all,

I apologize for not asking the question in a clear manner, but here goes...

I have found the following program here but cannot for the life of me figure out how to add it 
to the ISY.

I assume that it has to be manually written int TextEdit and then imported? I tried that but it 
doesn't show up in the ISY.

If
       From     1:00:00AM on 2013/11/15
       To       1:00:00AM on 2014/01/01

Then

Else

Thanks for any help...

Ed

 

 

programs must be entered into ISY by using the admin console program editor. There is a special tab to edit programs in the Admin Console. Program elements are accessed via pulldown menus so that you cannot make a typo error.
When done editing a line, Update must be clicked for each line. When done the program must be Saved on the left menu.
All programs can be backed up and then the same file may be Restored back into ISY.

No separate text editor can be used.

Link to comment
14 hours ago, larryllix said:

programs must be entered into ISY by using the admin console program editor. There is a special tab to edit programs in the Admin Console. Program elements are accessed via pulldown menus so that you cannot make a typo error.
When done editing a line, Update must be clicked for each line. When done the program must be Saved on the left menu.
All programs can be backed up and then the same file may be Restored back into ISY.

No separate text editor can be used.

Thanks so much for the help!

Link to comment
2 hours ago, MrBill said:

If you're trying to figure out how to include a date in a schedule, uncheck "Daily"

image.png.fe7e96c3901810dce6a922ebc9248d84.png

Man oh man I feel like a dummy - guess I need new glasses. This makes it so much easier!

Edited by eyost
Link to comment
Man oh man I feel like a dummy - guess I need new glasses. This makes it so much easier!
...and just to add to that with a common gottcha, if a time frame goes over the end of the day (midnight) don't forget to check "NEXT DAY"


OOOOPS! my bad

My comments above do not apply to this case of a multiple day time frame length.

Link to comment
1 minute ago, larryllix said:

...and just to add to that with a common gottcha, if a time frame goes over the end of the day (midnight) don't forget to check "NEXT DAY"

Hmm, not sure I follow. What I want is to activate a program for a specified date range that say I will be out of town.

If Date from is 07/01/2023 through 07/05/2023 then run Living Room program which has on/off times based upon specific times.

I assume from 07/01/2023 12:00:01 AM to 07/06/2023 12:00:01 AM then... would do the trick?

Link to comment
Hmm, not sure I follow. What I want is to activate a program for a specified date range that say I will be out of town.
If Date from is 07/01/2023 through 07/05/2023 then run Living Room program which has on/off times based upon specific times.
I assume from 07/01/2023 12:00:01 AM to 07/06/2023 12:00:01 AM then... would do the trick?
The second 12:01 AM would be the next day and requires the option to be selected or it won't work with a 0 seconds selection.


EDIT: Oops, I missed your date change so the technique I stated does not apply to your example.

Edited by larryllix
Link to comment
17 hours ago, eyost said:

I assume from 07/01/2023 12:00:01 AM to 07/06/2023 12:00:01 AM then... would do the trick?

Personally I would use 07/01/2023 12:00:01 AM to 07/05/2023 11:59:59 PM

17 hours ago, eyost said:

If Date from is 07/01/2023 through 07/05/2023 then run Living Room program which has on/off times based upon specific times.

There is a couple of approaches for this... Have this program enable/disable the living room program.

or have the living room program use this program as a vacation flag.  in that case create this program as a program that has an IF, but leave THEN and ELSE blank, then have your living room program check to see if this program is True.

 

vacation - [ID 01F8][Parent 0001]

If
        From    12:00:00AM on 2023/07/01
        To      11:59:59PM on 2023/07/05
 
Then
   - No Actions - (To add one, press 'Action')
 
Else
   - No Actions - (To add one, press 'Action')

----------------

LivingRm - [ID 01F9][Parent 0001]

If
        From    Sunset
        To      10:30:00PM (same day)
    And Program 'vacation' is True
 
Then
        Set 'LR Lamp 1#' On
 
Else
        Set 'LR Lamp 1#' On

 

 

  • Like 1
Link to comment
There is a couple of approaches for this... Have this program enable/disable the living room program.
or have the living room program use this program as a vacation flag.  in that case create this program as a program that has an IF, but leave THEN and ELSE blank, then have your living room program check to see if this program is True.
 
vacation - [iD 01F8][Parent 0001]
If
        From    12:00:00AM on 2023/07/01
        To      11:59:59PM on 2023/07/05
 
Then
   - No Actions - (To add one, press 'Action')
 
Else
   - No Actions - (To add one, press 'Action')
----------------
LivingRm - [iD 01F9][Parent 0001]
If
        From    Sunset
        To      10:30:00PM (same day)
    And Program 'vacation' is True
 
Then
        Set 'LR Lamp 1#' On
 
Else
        Set 'LR Lamp 1#' On
 
 
I will strongly second the usage of a variable flag. I run most of my lighting and most of my system on variable flags.

While it may seem like you are doubling the code and the program bulk, think about it down the road when you want to add another sensor into your vacation trigger logic. The new program only had to set the variable to True or 1 to control the works.

Then there is the other half of the formula...think about adding another function...say turn off your ventilation while you're on vacation...just trigger a program by the same variable. ...simple as that.

Away and want to the status of your complex system? just inspect the variable.

Once set up it really does centralize your functions and make things simpler in the end.

Sent from my SM-G781W using Tapatalk

Link to comment
20 minutes ago, larryllix said:

I will strongly second the usage of a variable flag. I run most of my lighting and most of my system on variable flags.

While it may seem like you are doubling the code and the program bulk, think about it down the road when you want to add another sensor into your vacation trigger logic. The new program only had to set the variable to True or 1 to control the works.

Then there is the other half of the formula...think about adding another function...say turn off your ventilation while you're on vacation...just trigger a program by the same variable. ...simple as that.

Away and want to the status of your complex system? just inspect the variable.

Once set up it really does centralize your functions and make things simpler in the end.

When the variable is only tracking one thing there's no need to use anything but an empty program and whether it's true or false.  As many programs as you want can reference that flag.  There was a spirited thread on this topic awhile back....

Link to comment
16 hours ago, MrBill said:

When the variable is only tracking one thing there's no need to use anything but an empty program and whether it's true or false.  As many programs as you want can reference that flag.  There was a spirited thread on this topic awhile back....

Yes, There has always seemed to be a fear of writing too many programs with the usage of variable/flags. As an old coder it is hard for some to get over the concept of so many programs. At first is seems like you are complicating program things but after using them, it makes programming a larger system much simpler. I remember many negative arguments against variable usage.

Even with my Alexa voice control (on/off only)  I use this path style:
Alexa vocal-->program-->variable-->program(s)-->device(s)

All levels of lighting are based on a value in a variable and then a triggered program  controls banks of lights, depending on the last value in that variable.

Another side benefit is the ease of saving the levels of 15 bulbs into a single variable so that a flashing bulbs warning can be used temporarily, and then restored after, by using only one line of ISY code.
 

Link to comment
Guest
This topic is now closed to further replies.

  • Recently Browsing

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

  • Forum Statistics

    • Total Topics
      36.9k
    • Total Posts
      370.2k
×
×
  • Create New...