Honeywell Smart Wi-Fi Thermostat Compatibility

That’s what I figured about the sensors. I wonder if there’s a way to get the alert that the Delta T throws out if there’s a problem. I imagine it’s similar to the “Clean Filter” emails and pop-ups I get from Total Connect Comfort. Interestingly when I clear those alerts on the TStat itself they remain in Total Connect Comfort until I clear them from there as well, which tells me it’s probably some kind of simple trigger that generates the notification and email. I’ll look into this further.

anybody have the actual spec… I have been unable to get the humidity reading url working… the java script in the actual total connect web pages calls this

var ReloadHumData = function (force) {
if (force || !settings.HumChanged()) {
$.ajax({
url: humUrl,
type: ‘POST’,
cache: false,
dataType: “json”,
success: function(data) {
//save data about humidity (saves us calling device with thermostat data)
var indoorHumidity = settings.Hum().IndoorHumidity();
var indoorHumidityAvailable = settings.Hum().IndoorHumidityAvailable();

            settings.Hum(new HumModel(data));
            settings.HumChanged(false);

            $("#HumSlider").slider("value", settings.Hum().Setpoint());

            settings.Hum().IndoorHumidity(indoorHumidity);
            settings.Hum().IndoorHumidityAvailable(indoorHumidityAvailable);
        },
    });
}
if (!force) {
    window.clearTimeout(reloadHumTimeout);
    reloadHumTimeout = window.setTimeout("ReloadHumData();", 10000);
}

};

the humurl is defined as this

(my id has been changed)

var humUrl = '/portal/Device/Menu/GetHumData/xxxxx;

my smartthings code looks like this

def getHumidifierStatus()
{
/*
$.ajax({
url: humUrl,
type: ‘POST’,
cache: false,
dataType: “json”,
success: function(data) {
/portal/Device/Menu/GetHumData/454832’;
/
def params = [
uri: “https://www.mytotalconnectcomfort.com/portal/Device/Menu/GetHumData/${settings.honeywelldevice}”,
headers: [
‘Accept’: '
/*’,
‘DNT’: ‘1’,
‘dataType’: ‘json’,
‘cache’: ‘false’,
‘Accept-Encoding’: ‘plain’,
‘Cache-Control’: ‘max-age=0’,
‘Accept-Language’: ‘en-US,en,q=0.8’,
‘Connection’: ‘keep-alive’,
‘Host’: ‘rs.alarmnet.com’,
‘Referer’: ‘https://www.mytotalconnectcomfort.com/portal/Menu/${settings.honeywelldevice}’,
‘X-Requested-With’: ‘XMLHttpRequest’,
‘User-Agent’: ‘Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/28.0.1500.95 Safari/537.36’,
‘Cookie’: data.cookiess ],
]
httpGet(params) { response ->
log.debug "GetHumidity Request was successful, $response.status"
log.debug “response = $response.data”

    log.debug "ld = $response.data.latestData"
     log.debug "humdata = $response.data.latestData.humData"

    log.trace("lowerLimit: ${response.data.latestData.humData.lowerLimit}")        
    log.trace("upperLimit: ${response.data.humData.upperLimit}")        
    log.trace("SetPoint: ${response.data.humData.Setpoint}")        
    log.trace("DeviceId: ${response.data.humData.DeviceId}")        
    log.trace("IndoorHumidity: ${response.data.humData.IndoorHumidity}")        

}
}

I get an unauthorized ajax error:

ie
unauthorizedAjaxRedirectTo

when I try to execute it with a 200 return status…

thanks

Excellent Gentlemen, I have made the Device Type, then made the Device by selecting the appropriate Device Type. I logged into MyTotal Connect Comfot to determine the Device ID from the URL - everything seems to be running pretty well. However, sometimes the GUI in the SmartThings app double up in the Thermostat section - any suggestions as to why or how to correct this? I’m using Lgkahns code from http://mail.lgk.com/totalconnectapiv3.txt

Thanks for any assistance.

1 Like

I got my RTH6580WF thermostat working using @jody.albritton 's code (thanks btw). Is there anyway to allow this device type to be controlled via Echo?

1 Like

The doubling just seems to go away eventually. Happened to me while I was developing a device. I think it’s a current “feature” of the Android app which is horrible right now. Not sure if happening in iOS.

Is there a way to submit the temperature change if you are running a schedule?

Only by polling. See pollster app.

Or maybe someone has a refresh app that generically refreshes a device at a time.

I personally would use the ST schedule to set my thermostat, because I like to live dangerously, and lately the scheduler has been dangerous. But in all seriousness, I set my thermostat higher and lower and never turn it off. So it’s not dangerous for me to schedule changes. I also walk by my thermostats a bit, and can see when they have not been told to change. (Edit: That has only every happened once in the past six months (I think) and it was because Honeywell changed their site. It could happen again just FYI).

Thanks i will have to try using smart things to schedule my thermostat.

You can try this…

1 Like

I added your device type and when I went to mod my device type for the Honeywell Wifi thermostat, I got the following error:

try a different web browser, or clear out your temp files & cookies.

So much great info in this thread! However, being near 500 posts long, it can definitely be a chore to locate info. I have an RTH9580WF thermostat and have been using the code provided by Eric Thomas (thanks, Eric!). I recently got around to setting thermostat behavior based on my Hub’s status (Home, Away, Goodnight, Good Morning, etc).

Although it changes the heating / cooling set points correctly, it only seems to apply a temporary hold on the settings. Because of this, the t-stat would revert to scheduled mode at the next schedule time. I figured if I deleted all schedule information from the t-stat, the SmartThings initiated temp changes would not revert (essentially, acting like a permanent hold). For whatever reason, this was not the case - I woke up to my home at a warm 70F this morning when I expected it to maintain 62F.

Thanks to an observation I read by user “Grump”, I went in to the code provided by Eric Thomas and changed all lines mentioning “StatusHeat” or “StatusCool” and changed their values from “1” to “2”. I found these on lines 195, 196, 214, 215, 232, 233, 264 and 265 of Eric’s code. Essentially, with values of “1”, the SmartThings initiated temperature changes applied as a temporary hold. With the changed values of “2”, a permanent hold is set. My T-Stat is now functioning as I’d like it to. It doesn’t (so far) revert to any sort of schedule, and the T-Stat displays permanent hold after every temp change (which, again, is great as I don’t live like the rest of humanity - by a schedule).

As a disclaimier: I’m no expert at coding. I don’t understand much about API’s. I can write basic HTML and that’s about the extent of my coding abilities. That being said, the changes I made seem to be forcing a permanent hold for all ST initiated temperature changes. I just wanted to post my experience up in hopes that it may help someone else who may be frustrated by their T-Stat changing its set points on it’s own. Cheers!

3 Likes

Thanks for sharing. You can also go in the advanced thermostat settings and disable the local schedule.

Once inside advanced functions, you’ll want to press up unti you get to the Program schedule (0160). Click the up button to turn on scheduling. 4 means it’s on. 0 is off.

Once you’ve turned on/ off scheduling, press done. You can also switch between two and four programming periods in here under 0540. There, 2 sets 2 program periods (wake, sleep) and 4 sets four (wake, leave, return, sleep). It defaults to 4.

Once you press done, you’ll see a scheduling button on the home screen!

Thank you, SBDOBRESCU! That would have been much easier! I see it basically disables scheduling, thus making it more of a “dumb” thermostat. That’s definitely an easier solution to the problem (aside from having to navigate the somewhat clunky menu system on the T-Stat).

The Total Connect App makes scheduling easy compared to the T-Stat itself. Though that doesn’t hep with ST. I toyed with the integration in ST, but I determined that at least in my case, trying to set the temp based on presence always would keep the heat or AC trying to catch up- totally negating the automatic catch-up feature built into the thermostat. (for instance, when thermostat scheduled to go from 65 to 69 degrees heat at 5:30 PM, it starts heating before the scheduled time so that it reaches that temp at the desired time, rather than starting to heat when someone gets home from work at 5:30.

Okay, so is there a summary some where of how to connect this Honeywell Wifi to Smarthings? Because reading through 495 posts is daunting… A step by step would be ideal, I’m a rookie. Thanks!

Okay, I found the github code. Do I create a device and call it self-published?

I have my Device ID in the preferences, and login info. But I’m getting no info. All tiles are “–” instead of data. What am I doing wrong?

Thanks! Derek

Ping Ping Anyone around to chime in?

Screenshot your settings here. Maybe we see something quick. Usually the no data is just a time thing. Also hit refresh on the device while looking at your logs. Tell us what it says. That’s a start.

I am trying to add the option to use C or F for display of temp. How do I get the label to display/parse the setting for the label?

in preferences i have this
input ("tempUnit", "enum", title: "Show metric (°C) or imperial (°F)?", options: ["F","C"],required:true,defaultValue: "F")

then I did this
state("temperature", label: '${currentValue}°${settings.tempUnit}', unit:'${settings.tempUnit}', backgroundColors: [

but it shows that actual text instead of F or C.