heyfrank Posted December 11, 2018 Posted December 11, 2018 Hello, hoping someone here might be able to help me with this; we have someone in the house who cannot keep their hands off the thermostat making it extra hot in the middle of the night. I want to create a program that when the thermostat's temp changes, goes back to our desired temperature. I have the one below, but noticed it only "runs" when I open my Mobilinc app or login to the ISY itself. Any ideas how to make it run without question?
mwester Posted December 11, 2018 Posted December 11, 2018 Given all the troubles folks seem to have with thermostats and Insteon/Z-Wave, I have to suggest that the following may be a more reliable way to resolve your problem! https://www.homedepot.com/p/Honeywell-Thermostat-Guard-CG511A/202024249 Originally, I thought I wanted an HA-enabled thermostat as well -- based on the unending litany of troubles folks keep reporting, I am so, so very glad I never did that. I know that may not be what you wanted to hear, though. 1
heyfrank Posted December 11, 2018 Author Posted December 11, 2018 5 minutes ago, mwester said: Given all the troubles folks seem to have with thermostats and Insteon/Z-Wave, I have to suggest that the following may be a more reliable way to resolve your problem! https://www.homedepot.com/p/Honeywell-Thermostat-Guard-CG511A/202024249 Originally, I thought I wanted an HA-enabled thermostat as well -- based on the unending litany of troubles folks keep reporting, I am so, so very glad I never did that. I know that may not be what you wanted to hear, though. Haha, no way I'd ever put that on my thermostat in my dining room. lol
kclenden Posted December 11, 2018 Posted December 11, 2018 I don't have a thermostat so can't really provide any ideas based on experience, but wonder if maybe the thermostat doesn't push data to the ISY but instead needs to be queried. Perhaps querying the thermostat on a regular basis (e.g. every 30 minutes) would resolve the need to login to the ISY or use Mobilinc.
TrojanHorse Posted December 12, 2018 Posted December 12, 2018 Hello, hoping someone here might be able to help me with this; we have someone in the house who cannot keep their hands off the thermostat making it extra hot in the middle of the night. I want to create a program that when the thermostat's temp changes, goes back to our desired temperature. I have the one below, but noticed it only "runs" when I open my Mobilinc app or login to the ISY itself. Any ideas how to make it run without question? I’m not at my PC, but In your first IF clause I believe there is a different option you want in 4.x that says “main mode” is heat, not just “mode”. There are two “nodes” / drop down boxes and I believe you are using the wrong one there. Also, you may want to consider in your second IF handling a situation where the set point is lower than 72. Can probably use “is not” here or add another clause if necessary. Sent from my iPhone using Tapatalk 1
Bumbershoot Posted December 13, 2018 Posted December 13, 2018 On 12/11/2018 at 2:21 PM, mwester said: Originally, I thought I wanted an HA-enabled thermostat as well -- based on the unending litany of troubles folks keep reporting, I am so, so very glad I never did that. I know that may not be what you wanted to hear, though. In reading the comments on this forum, I'd be in agreement with you on this if it wasn't for the very good luck I've had with my Nest thermostat and the Nest2 Polyglot nodeserver. This combo has been rock solid for me for quite a while now. I'm sure there are many faults people can find with this setup (the cloud based API for one), but I haven't otherwise had any issues with the functionality. Due to the cloud based API, I only have my ISY manipulate the Nest for exceptions to normal HVAC activities (such as stopping the cooling when doors/windows are left open, that sort of thing). Normal operations are handled by the Nest, not the ISY, and it's working very reliably. BTW, thanks to @xKing for the nodeserver! I'm curious about the UDI portal based Nest nodeserver that's currently in development, as it'll remove one mode of failure (RPi) from the equation. 1
heyfrank Posted December 16, 2018 Author Posted December 16, 2018 On 12/11/2018 at 8:15 PM, TrojanHorse said: I’m not at my PC, but In your first IF clause I believe there is a different option you want in 4.x that says “main mode” is heat, not just “mode”. There are two “nodes” / drop down boxes and I believe you are using the wrong one there. Also, you may want to consider in your second IF handling a situation where the set point is lower than 72. Can probably use “is not” here or add another clause if necessary. Sent from my iPhone using Tapatalk Hi any chance you can let me know which setting it should be? I do not see an option that says "Main Mode is Heat"? I have the first dropbox set to "Status", the second set to the "Thermostat Main", the third dropbox set to "Is"and the fourth dropbox set to "Mode Heat". I have 4.7.3 firmware/ui installed. Thanks! Frank
TrojanHorse Posted December 19, 2018 Posted December 19, 2018 On 12/16/2018 at 5:29 PM, heyfrank said: Hi any chance you can let me know which setting it should be? I do not see an option that says "Main Mode is Heat"? I have the first dropbox set to "Status", the second set to the "Thermostat Main", the third dropbox set to "Is"and the fourth dropbox set to "Mode Heat". I have 4.7.3 firmware/ui installed. Thanks! Frank Looking closer, I believe you have the right setting. Can you describe the problem a bit more? What is not running? I'm not sure why opening mobilinc or logging into the ISY would cause the program to run spontaneously. Perhaps that causes the thermostat to be queried? Is there a possible communication problem with the thermostat? The thermostat is RF communication only. How close is the nearest dual band device to the thermostat? A suggestion could be to have another "watchdog" / query program that runs IF on your posted program every x minutes or hours as needed. That way if the signal doesn't get through when the temp set point is changed you will hopefully get the right status the next time this other program forces the query of the thermostat. It also appears that your program will never get to the 4th line since the 3rd line will make the condition false.
heyfrank Posted December 19, 2018 Author Posted December 19, 2018 3 hours ago, TrojanHorse said: Looking closer, I believe you have the right setting. Can you describe the problem a bit more? What is not running? I'm not sure why opening mobilinc or logging into the ISY would cause the program to run spontaneously. Perhaps that causes the thermostat to be queried? Is there a possible communication problem with the thermostat? The thermostat is RF communication only. How close is the nearest dual band device to the thermostat? A suggestion could be to have another "watchdog" / query program that runs IF on your posted program every x minutes or hours as needed. That way if the signal doesn't get through when the temp set point is changed you will hopefully get the right status the next time this other program forces the query of the thermostat. It also appears that your program will never get to the 4th line since the 3rd line will make the condition false. How does it make it false? Just curious what you mean? And yes I believe it's not being queried. The Thermostat is near a lot of dual-band switches so communication should not be an issue.
kclenden Posted December 20, 2018 Posted December 20, 2018 4 hours ago, heyfrank said: How does it make it false? Just curious what you mean? And yes I believe it's not being queried. The Thermostat is near a lot of dual-band switches so communication should not be an issue. What TrojanHorse is referring to is that your IF statement checks the status of the thermostat, and your third line has the potential to change the status of the thermostat. However, I don't think it's correct that the fourth line won't ever be executed. My understanding is that the IF statement won't be reevaluated unless a WAIT statement is running (which happened earlier, but not after you change the set point) or a REPEAT is executed or the program concludes normally (i.e. runs out of line to execute).
heyfrank Posted December 20, 2018 Author Posted December 20, 2018 22 hours ago, kclenden said: What TrojanHorse is referring to is that your IF statement checks the status of the thermostat, and your third line has the potential to change the status of the thermostat. However, I don't think it's correct that the fourth line won't ever be executed. My understanding is that the IF statement won't be reevaluated unless a WAIT statement is running (which happened earlier, but not after you change the set point) or a REPEAT is executed or the program concludes normally (i.e. runs out of line to execute). I'm confused how the third line has the potential to change the status if its sitting in the IF statement saying, if the mode heat is on and the temperature is more or equal to 73 then.... Unless i'm missing something? What I don't think I conveyed is that it executes great, it works, I get both notifications each time and everything all the way through, BUT it's only when I go into Mobilinc and press the refresh button in the UI of Mobilinc that it gets executed if its above 72 degrees.... Should I have a query then in this program? is it safe to do that? and if so where should I put it as well as what should it exactly say? Thank you
Cormacs Posted December 22, 2018 Posted December 22, 2018 Your if argument is using the ambient temperature as a trigger. Using the setpoint as the trigger may work better. "Thermostat setpoint is not 72". That way you wont have to wait for the furnace to heat up the house before it gets triggered. Maybe the setpoint will be a more reliable trigger. 1
zerop Posted December 24, 2018 Posted December 24, 2018 (edited) How about using these two programs? New Program1 - [ID 006D][Parent 0001] If Status 'Thermostat' is Calling for Heat And Status 'Thermostat' >= 73° (Heat Setpoint) Then Run Program 'New Program2' (Then Path) Else - No Actions - (To add one, press 'Action') New Program2 - [ID 01B3][Parent 0001] If - No Conditions - (To add one, press 'Schedule' or 'Condition') Then Disable Program 'New Program1' Wait 17 minutes Set 'Thermostat' 72° (Heat Setpoint) Enable Program 'New Program1' Else - No Actions - (To add one, press 'Action') Why are you having it wait 17 minutes before adjusting the temperature back to what it should be? Edited December 24, 2018 by zerop
TrojanHorse Posted December 24, 2018 Posted December 24, 2018 Note, pages 23-24 of the manual describe a “button lock” feature that disables front button presses. Maybe that’s the simplest option. Sent from my iPhone using Tapatalk
Recommended Posts