Nest working for everyone?

My Nest thermostat stopped responding to ST commands today. I can still poll for state, but am unable to make changes to it. I checked the device type and it appears to have unexpired auth token, but still not working. Anyone else experiencing this?

Will try uninstalling apps, removing device and putting it all back together to get a new auth token.

Update: Yup, that solved it. Thought the device controller would aut-renew the cert, but I don’t think it does.

I just resolved this issue in my own environment. What appeared to happen in my case is Nest’s API responds with an auth expiration duration of 1 month, so my ST happily cached it and was using that as the basis for determining if you are logged in or not. The real expiration appears to be much shorter (and make more sense) - around 1 hour in my experience. When your auth token expires on Nest’s side, but not on your side, your requests to the Nest API just fail silently. I added a check in the code to determine if there has been a failed request to Nest’s API, and if so to trigger the login process again. Here is the code snippet, add it to your isLoggedIn() method:

if (!data.device)
{
log.debug "No data.device"
return false
}

This has made mine run rock-solid. There is a similar issue with the Nest Protects, as they are based on the same code. It is resolved the same way:

if (!data.topaz)
{
log.debug "no data.topaz"
return false
}

Adam

1 Like