photogeek54 Posted March 26, 2022 Posted March 26, 2022 I edited a program and created an infinite loop. How can I get control of my ISY back? I can load the admin console but can't change variables. The console won't show the programs so I can edit them. I tried restoring from a backup but get a socket open error. rebooting the ISY does not help. Help
DennisC Posted March 26, 2022 Posted March 26, 2022 5 hours ago, photogeek54 said: I edited a program and created an infinite loop. How can I get control of my ISY back? I can load the admin console but can't change variables. The console won't show the programs so I can edit them. I tried restoring from a backup but get a socket open error. rebooting the ISY does not help. Help If all else fails and you feel you have a good backup from before the change, you can do a factory reset as a last option. https://wiki.universal-devices.com/index.php?title=Resetting_Your_ISY
Goose66 Posted March 26, 2022 Posted March 26, 2022 Several years ago I installed my first PG1 Node server that loaded a malformed nodesdef.xml that prevented the ISY from starting. Since I didn’t have a recent backup, I pulled the SD card and mounted it Windows. I was able to decipher the file system enough to find the errant profile XML file and remove it, allowing the ISY to start. I think I recall that each program is similarly stored in an XML file in various folders. proceed at own risk — possibly warranty voiding — and all that jazz. BTW, UD quickly fixed the profile load bug in a firmware update. It’s also very possible that subsequent firmware changes have made the underlying file system unreadable/indecipherable. 1
MrBill Posted March 26, 2022 Posted March 26, 2022 I've gotten out of the infinite loop issue before using a folder condition on "My Programs". Create a condition that will never be true..... I use $cTrue = $cFalse but if you don't already have those variables pick any variable that you do have and do something like $iVariable = -99999999... or pick a switch that won't be used and compare it to any condition. Then Save Programs. As I recall the first time the folder condition just disappeared during the save, but I tried again and that time it worked.
photogeek54 Posted March 26, 2022 Author Posted March 26, 2022 Got my ISY back again, thanks for the tips! I opened my SD card under windows and found the offending program under conf\d2d\000F.PGM. Opening the file in notepad it was pretty easy to find the variable I had set to the wrong value and change it. The ISY booted without the infinite loop and I added a new condition to "My Programs" of a debug variable initially set to 1 and doesn't allow programs to run until I set it to 0. Yes this means the programs wont run after a reboot until I change the variable but I'm OK with that. We haven't had a power failure here in over 10 years. Thanks Goose66 and MrBill! 1
MrBill Posted March 26, 2022 Posted March 26, 2022 2 hours ago, photogeek54 said: I added a new condition to "My Programs" of a debug variable initially set to 1 and doesn't allow programs to run until I set it to 0. Yes this means the programs wont run after a reboot until I change the variable but I'm OK with that. You could also create a new folder under "my programs" and move everything currently under My Programs to the new folder. Put the folder condition on that folder instead. Then you could add a single program Run at startup, No If, and a then that waits 10 minutes, then sets the debug variable to 0. That would give a 10 minute delay then start programs in case of unattended startup.
Recommended Posts