Reputation: 678
I would like to connect (and subsequently control) the NEST thermostat directly as opposed to having go through the NEST servers. In other words, I have a NEST thermostat connected to my wifi, I have my linux machine at home also connected to the same router, and I want the linux box to talk to the NEST. Possible?
I used to have a Radio Thermostat 3M-50. They provided a JSON based API. I could do something like this -
$ curl http://thermostat1/tstat
{"temp":67.50,"tmode":1,"fmode":0,"override":0,"hold":0,
"t_heat":62.00,"time""{"day":1,"hour":9,"minute":47},
"t_type_post":0}
I have a Belkin WeMo switch. I use Python's requests module to post to
http://IP_address_wireless_switch:49153/upnp/control/basicevent1
And I can control by setting the binary state as a part of the headers via SOAP.
I want to be able to do something similar with the NEST. Is that doable? Do I have to use only their servers, and rely on their servers being up and rely on my home having a working internet connection? (If there's an outage for instance, do I lose the ability to control my thermostat remotely?)
Upvotes: 1
Views: 1799
Reputation: 2254
The Nest API is only available as a cloud API. They have rate-limiting that protects the batteries on the thermostat. (even with a c-wire you can drain the battery pretty quickly and cause the unit to heat up, throwing off sensors, if you call it too often)
You might want to checkout the Thread Group which Nest co-founded to solve local device communication.
Upvotes: 2