I am creating a script to set the setpoints by stepping them one degree at a time. I found that using the immediate set of the setpoints will cause the AC to turn on even if it shouldn't. For example, If it's 73 in the house, and the setpoint is currently 85 and I want to set it down to 76, the immediate set available in the RCS plugin will cause the AC to cycle on for the minimum time. It gets cold in the house this way!
So I found that a script that uses the SPC- and SPC+ commands and adjusts the temperature won't cause the AC to cycle.
What I would like to do is set the setpoint down by 1 and then get it so I can check it and make sure I don't set it past the requested setpoint. However, it doesn't seem to get the new setpoint value properly. I have HS waited for 45 seconds but that doesn't seem to wait long enough and it may be causing other issues by making HS wait that long. So is there a better way to set setpoint and then get it to make sure it was set propery?
My code so far;
For i= 1 To TempDifference
'If i=5 Then Exit For
hs.writelog "debugThermostat", "Adjusting Thermostat by:" & ThermostatAdjust
call RCS.cmdsendcustom(1," " & ThermostatAdjust)
hs.WaitEvents()
hs.WaitSecs 45
hs.WaitEvents()
hs.writelog "debugThermostat", "After SetPoint Adjustment"
ThermostatHeatSetPoint = RCS.GetHeatSet(1,1)
hs.writelog "debugThermostat", "GetHeatSet:" & ThermostatHeatSetPoint
ThermostatCoolSetPoint = RCS.GetCoolSet(1,1)
hs.writelog "debugThermostat", "GetCoolSet:" & ThermostatCoolSetPoint
msgbox("Thermostat Cool Setpoint: " & ThermostatCoolSetPoint & vbCrLf & _
"Thermostat Heat Setpoint: " & ThermostatHeatSetPoint )
hs.WaitSecs 45
hs.WaitEvents()
Next
Thanks,
Steve
So I found that a script that uses the SPC- and SPC+ commands and adjusts the temperature won't cause the AC to cycle.
What I would like to do is set the setpoint down by 1 and then get it so I can check it and make sure I don't set it past the requested setpoint. However, it doesn't seem to get the new setpoint value properly. I have HS waited for 45 seconds but that doesn't seem to wait long enough and it may be causing other issues by making HS wait that long. So is there a better way to set setpoint and then get it to make sure it was set propery?
My code so far;
For i= 1 To TempDifference
'If i=5 Then Exit For
hs.writelog "debugThermostat", "Adjusting Thermostat by:" & ThermostatAdjust
call RCS.cmdsendcustom(1," " & ThermostatAdjust)
hs.WaitEvents()
hs.WaitSecs 45
hs.WaitEvents()
hs.writelog "debugThermostat", "After SetPoint Adjustment"
ThermostatHeatSetPoint = RCS.GetHeatSet(1,1)
hs.writelog "debugThermostat", "GetHeatSet:" & ThermostatHeatSetPoint
ThermostatCoolSetPoint = RCS.GetCoolSet(1,1)
hs.writelog "debugThermostat", "GetCoolSet:" & ThermostatCoolSetPoint
msgbox("Thermostat Cool Setpoint: " & ThermostatCoolSetPoint & vbCrLf & _
"Thermostat Heat Setpoint: " & ThermostatHeatSetPoint )
hs.WaitSecs 45
hs.WaitEvents()
Next
Thanks,
Steve
Comment