Home Automation - My Nest Thermostat
I have loved the idea of the Nest thermostat for some time but living in a rented home means I can't make use of a product like this, not having central heating also presents a problem!
A couple of weeks ago I was looking at the Nest products when I spotted their API, this seems to be about integrating other products with their network but it did seem to expose endpoints for the thermostat. After playing with this for a while I quickly realised how limited it was and of no use to me not having any of their products, but it did get me thinking about something else I had set up about a year ago.
I spend some time last year building a mesh sensor network, this consisted of a hub with an internet connection and sensor nodes which collected data such as temperature, humidity and movement readings. This data was then fed back to a data collections service I had built. With this system running I had all the data I needed to start building my home climate control system.
I ended up constructing a basic dashboard designed to be viewed on a mobile, this presented the weather outside along with the conditions of each room for which sensor data was available. This worked really well and allowed me to start using some interesting technologies, as the only user I didn't have to cater for older browsers.
Collecting Data
At the same time as building the dashboard I have been looking at the sensor nodes, this system had worked really well but for some reason it's started to fail and become very intermittent. I suspect there may be interference affecting the data transmission. After getting a Particle based sensor node up and running in less than half an hour I decided to rebuild the system without the mesh network bit, everything would talk directly to the internet and the data store.
Deployed my second @particle at @buildbrighton last night, this time collecting environmental data. http://t.co/vKbQBIeLyV
— Arthur Guy (@ArthurGuy) June 18, 2015
I was going to use a couple of particle devices again but after taking a look at what I had to hand I went for the Electric Imp. This is a platform I was using quite a lot in the past but had moved away because of no good route to market, that certainly wasn't an issue for this and I had a few spare devices so I decided to upgrade everything to be based around an Electric Imp. Thankfully they have some great example code so this took no time at all to setup.
Controlling Devices
As I mentioned at the start I don't have a central heating system to tie into just some electric radiators but in a stroke of luck IFTTT recently announced a maker channel, this means I can control mains devices connected to Belkin WeMo devices from a simple POST request.
This proved incredibly easy to setup and I was quickly able to setup an automated temperature control system which turned a heater on and off depending on the current temperature and the target temperature. This also worked well for cooling via something as simple as an electric fan by a window.
There a number of interesting bits to this setup so I will probably write some more details posts as a followup but for now my system is developing very nicely.