larryllix Posted February 17, 2016 Posted February 17, 2016 I'll try this! Thanks Stu Ed Sent from my Android device Again, if ISY does not see a mode change the program will never run. There is no trigger, without a working thermostat, with a working comm channe to ISY,l and an ISY that knows the thermostat was in the Heat mode in the first place. Simply put with one scenario: If you reboot your ISY and the stat is not in Heat mode the program will never run to see/change it. You also need some other triggers to initiate status testing or the program may never run. You can query the Insteon thermostats 100 times and the program will not run.
EddieRock Posted February 18, 2016 Author Posted February 18, 2016 Back a few posts you stated "I reread your post... My ISY program isn't looking for a state change. It's looking for them to be specifically on heat mode and if not heat, then set heat." ...which contradicts the later statement you made "check for state changes". I just wanted make sure you understood how the triggers work, coming from a linear code life, and not familiar with event driven software, maybe? Drives some old programmers crazy at first. This only works if ISY sees a change in status, comms are good and working, and doesn't wake up with stat already in that mode. Something has to make your program run and depending on the trigger, you are monitoring for failure, to trigger the same signal you are monitoring may not be the best thing. For your purposes, right now, I understand this is only a watch and correct situation, software, and is working to identify some problem irritating you. Does your thermostats have an Idle mode or waiting mode, based on a short cycle elimination setting? My T7900 has a state called Lockout, a misnomer, but if the stat calls for heat and the cycle is too short it throws out a Lockout status instead of Heat until the timing allows a Heat call again. This can mess with Heat detection programs and I learned the hard way for a bit, Maybe I fully don't understand how the triggers work relating to an Insteon thermostat then. It sure seemed that what I had programmed worked and that's why I'm throwing this out for help. So, are you saying that the below statement DOES NOT ask the thermostat the mode it's in? Does it simply look at the ISY's last report received from the thermostat query. That's what the queries are for? I may be totally confused how this works...: If Status 'Bedroom Thermostat - Main' is not Mode Heat ELI5 then? Ed
stusviews Posted February 18, 2016 Posted February 18, 2016 The program will run if the thermostat changes mode. In this case, it will run if the thermostat changes mode from heat to any other mode (true-Then will run) or if it changes from any other mode to heat (false-Else will run). If the thermostat does not change mode, even if it's not in heat mode, then the program won't run.
larryllix Posted February 18, 2016 Posted February 18, 2016 See Stu's answer above. However, ISY must see this change via all the mechanisms to get there and... ISY must not think the stat is in Off mode when it powers up or the first time the program will be triggered is when the stat sends something other than Off. Querying the stat does not trigger a program unless it causes something to change that is being used as a trigger in that program. If querying the stat causes a status change then ISY is out of sync due to nothing changed since it powered up or signals have been missed due to comm failures. Of course once ISY is up to speed and in sync with your stat then the program works just fine, with good comms. Querying the stat after ISY power up is a good idea to get sync'ed.
EddieRock Posted February 23, 2016 Author Posted February 23, 2016 *** UPDATE *** I have done some testing (which I'm not done with yet) and simply disabled my query program to see how the tstats reported. They all stay on heat mode and they all report back to the ISY without issues (so far). My test for the tstats not being on heat mode still is running but... there isn't a "trigger" to set them off. If someone manually turns them off heat, I get a txt. I'm going to setup a program test on 1 tstat to set a low threshold and alert on it and then set the heat mode "setpoint" to be below that to ensure I get a text if it breaches the program test temperature. Suggestions and input are welcome Ed
Recommended Posts