Pete C Posted February 18, 2022 Share Posted February 18, 2022 Hello Community! I am working to understand a complex (~60 program) system that came with my home as purchased. The original owner set variables to run programs based on sunrise and sunset using about 10 variables. I am trying to find where variables are set and called so I can understand the logic and intent of the programs. Is there a way to search programs for the existence of variables so I can trace when and why they are set without manual searches? I can of course see when variables are changed in the variables window. Many thanks to those more experienced than I! Link to comment
MrBill Posted February 18, 2022 Share Posted February 18, 2022 Yes, right click a program or folder in the program tree and pick "Find/Replace" fill out the dialog box and click Find. I used to always instruct to use "my programs" at the top, but it was pointed out to me it doesn't matter where you click Find from that it always starts at the top. Link to comment
kevinkaz Posted February 18, 2022 Share Posted February 18, 2022 Just to clarify. Did you try to use the find/replace? Link to comment
MrBill Posted February 18, 2022 Share Posted February 18, 2022 6 minutes ago, kevinkaz said: Just to clarify. Did you try to use the find/replace? Find is generally what I'm needing/using. I'm not sure I've ever had the need for Replace. I will point out that that unless the Replace drop-down is changed it defaults to whatever the Find drop-down was last set, Replacing with the same is functionally equivalent to Find. Link to comment
Pete C Posted February 18, 2022 Author Share Posted February 18, 2022 GREAT to know this trick. My prior owner got pretty sophisticated with variables and some are making the lights do very strange things. Thank you! Link to comment
MrBill Posted February 18, 2022 Share Posted February 18, 2022 2 minutes ago, DPhelps said: GREAT to know this trick. My prior owner got pretty sophisticated with variables and some are making the lights do very strange things. I you're taking over an existing system two important questions: Do you understand the difference between a State and Integer Variable? Do you understand the concept of the Event Based programs in the ISY? Master those two topics before making too many changes. ISY programs don't work like most new users expect them to. 2 Link to comment
Pete C Posted February 18, 2022 Author Share Posted February 18, 2022 State / Integer - YES! Event Based Programming - Will investigate. If this is using state variables to trigger events then I am familiar. THX - I appreciate any expert guidance as I learn this system on my own. Link to comment
MrBill Posted February 18, 2022 Share Posted February 18, 2022 26 minutes ago, DPhelps said: If this is using state variables to trigger events then I am familiar. Yes. The part that trips some up tho is (for example) If $sDay= 1 then Turn on the light wait 1 hour Turn off the light else (nothing) If the light turns on and is waiting to turn off and the value of @sDay changes, the light won't turn off, as soon as the value of the $sDay changes the currently running program evaporates and a new copy executes, and since the value changed it's not 1 anymore, which means that the empty Else will run and immediately finish. Another common trip up is Else runs more often than at first realized, especially in the case of compound IF statements. When the value of any condition in the IF statement changes the entire IF is re-evaluated, whenever the result is false Else runs. Link to comment
dbwarner5 Posted February 18, 2022 Share Posted February 18, 2022 @DPhelps This wiki alos does a good job of helping with how programs execute in ISY. https://wiki.universal-devices.com/index.php?title=ISY-99i/ISY-26_INSTEON:Scope,_Precedence_and_Execution_Order This wiki has a link to the Cookbook and many other resources for self learning. https://wiki.universal-devices.com/index.php?title=Main_Page 1 Link to comment
Recommended Posts