Installing a Nest Thermostat V3 using a Salus TC100 Wiring Centre

I recently decided to upgrade our existing central heating programmer for a Nest Thermostat – even though I remember once saying I’d never get one ūüėź

The most recent edition (V3 at time of writing) is capable of supporting both Central Heating and Hot Water and was an ideal replacement for our ageing manual control.

nest-stock-image-1When I bought the new thermostat I was flooded by warnings that this product should only be installed by a qualified Nest Engineer and/or a Central Heating specialist Рand for good reason!  Our original installation had four junction boxes cobbled together with wires coming from valves, pumps, thermostats, a programmer and the boiler Рit was a complete mess and fiddling with the existing wiring was plagued with risk.

I decided that the best thing to do would be to rip out all of the existing connections, go back to the drawing board and update the installation to modern standards.

I quickly realised that whilst there were lots of different schematics detailing how to wire a Nest thermostat in to an existing system, there were no guides to help understand how this could be accomplished using a modern wiring centre.  It took me three hours (I’m not an electrical engineer!) to map the published diagrams to something that would work for me.

Let me state that this is very specific to the components used in my own personal installation.  The diagrams provided below are for information purposes and may only be used as a reference when planning your own installation.  Your own components may have different wiring requirements, colour notations or supply needs and all manufacturer instructions should be consulted in advance.  If you have any doubts or concerns regarding your own abilities to install this equipment you should seek professional guidance and support.  Any planning or work undertaken based on these materials is done so entirely at your own risk.

And with that out of the way,¬†let’s get on with the good stuff.

Core Components

First off, I established each individual component that I was going to use and how best to wire them together.  Whilst the system comprises of a variety of parts Рpump, boiler, etc; there are only a few I needed to focus on for the electrical side of things.  The core components are:

Motorised Valve

Wiring Centre

Thermostat

Motorised Valve

The Drayton Mid-Position Motorised Valve (MA1) controls the outbound flow of heated water from the boiler to either the hot water cylinder or the radiators, switching between CH, HW or both.  The wiring diagram supplied by Drayton provided a very good overview of the required connections between the traditional components found in a Central Heating system.

Pasted Graphic 1

Wiring Centre

Pasted GraphicThe Salus TC100 wiring centre is the heart of the wiring operation and simplifies matters considerably.  It reduces the need for the old-style junction boxes that clogged up many a storage cupboard and enables replacement of individual components much more easily than in the past.

tc100

Thermostat

Nest Thermostat V3 ships with very limited documentation supplied, but some reference diagrams help with the schematics.  Considering that the standard recommendation is to have a professional install the thermostat, this stands to reason.

nest-thermostat-eu-gen3-cables.jpg

Creating the Schematic

It took me a good couple of hours to work through the wiring schedule for the new installation.  I decided to draw it up twice and make sure that both diagrams matched to reduce any risk of incorrect wiring in the final installation and minimise my chances of blowing any circuits.  The schematic below shows the finished article.

Pasted Graphic.tiff 2

The reality of course is never as neat as this diagram would suggest.  As can be seen in the final photograph below.  Note that this shows a couple of additional wires as I am also powering a shower pump from the same switched live feed.

IMG_0768

http://www.gardensculpture.co.uk

Installing MQTT Server on Mac OS

Central to a good home automation system is a common method for communicating between devices.  A well used and proven technology for the home enthusiast is the Mosquitto MQTT Broker/Client.  This article covers the basics for installing and running a basic MQTT server on Mac OS.

Installing Brew

The Mosquitto MQTT Server can be easily installed using Homebrew.¬† If it’s not installed on your system already, then a quick visit to the homepage¬†will give you all you need to get going.¬† Homebrew is an OS X Package Manager for installing and updating non-Mac OS X utilities that are more commonly found in other variants of Linux.¬† To install the basic package manager run the following command.

ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

Installing Mosquitto MQTT

Let’s use our new Homebrew installation to download and install the necessary Mosquitto binaries. ¬†This will also download additional libraries required to support secure access via OpenSSL.

brew install mosquitto

The install script finishes by providing the instructions to start the MQTT server on startup.

ln -sfv /usr/local/opt/mosquitto/*.plist ~/Library/LaunchAgents

Finally, to save a restart, the server can be started now by running

launchctl load ~/Library/LaunchAgents/homebrew.mxcl.mosquitto.plist

Now you can test the installation and ensure the server is running successfully.  Open a new command window and start a listener.

mosquitto_sub -t topic/state

In another window, send a message to the listener.

mosquitto_pub -t topic/state -m "Hello World"

Nicely done.

Installing the Python Libraries

To create the link between Python and MQTT we need to install the Python Eclipse MQTT library.  Visit here for the latest downloads and follow the link to download the required version.  Specifically, I downloaded these Python Libraries.

Once downloaded, unpack the tar file and install the library

tar xvf org.eclipse.pho.mqtt.python-1.1.tar
cd org.eclipse.pho.mqtt.python-1.1
sudo python setup.py install

And that’s it. ¬†We’re ready to start sending and receiving MQTT messages around the home. ¬†There are a vast number of additional options that can be set up around the MQTT server – security is an obvious choice, Quality of Service, users, etc. ¬†I’m keeping it simple for now.

Seven Levels of Automation

Home Automation is all¬†about establishing¬†a level of ‘control’ in the home for¬†the benefit of the people who live there. ¬†The level your home is at right now depends on two factors –

  1. your perception of needing to control, and
  2. the amount of automation in operation.

Through experience, research and in consideration of these two factors I’ve defined¬†a¬†seven level model.

Level Perception Automation
1 Unaware None
2 Aware Manual
3 Aware Remote
4 Aware Programmed
5 Aware Triggered
6 Aware Learning
7 Unaware Intelligent

Here in St Albans, our house is¬†working towards¬†level 5. ¬†What does that really mean? Let’s take a look at each of these levels in more detail.

Level 1 – Unaware, None

TentIt’s important to include this definition in the model for completeness – we have to start somewhere!

I would imagine that very few, if any, homes in the UK are at Level 1.  There is no perceived need to control any function of the dwelling Рmanually or otherwise.  If you consider this further, perhaps a very basic tent may be a candidate Рno running water, no electricity, no windows or doors Рliterally nothing that would need controlling.

Level 2 – Aware, Manual

Cast your mind back to your Nan’s house in the late 1970’s! ¬†This is a classic Level 2 dwelling. ¬†We’ve got all the mod-cons of the era – TV, Radio, Washing Machine, Oven, Hi-Fi (with stupidly huge speakers ’cause your Grandad loved the great sound quality) – and all the usual items that make up the property itself – doors, windows, lighting, locks, etc, etc.

You’re Nan was aware that everything needed to be turned on or off as and when the need arose. ¬†The reason their generation was so thin and fit was because whenever they wanted to change the channel on the TV or open a window they had to stand up and do it themselves.

Level 3 – Aware, Remote

TV RemoteAs the 1970’s rolled in to the 1980’s the ‘TV Clicker’ or ‘TV Remote Control’ first entered the UK mainstream. ¬† The most common form of automation that exists in almost every home in the UK today is your ‘TV Remote’. ¬†It’s a simple way to change the volume, channel or play your favourite recording without having to get up from the chair. ¬†It’s perhaps an over simplified example – but you get the idea.

The level to which one chooses to introduce remote control to¬†the home is a very personal decision. ¬†Moving on from the TV example, simply adding a remote control to turn on the lights in your front room is the next step. ¬†And so it accelerates – turning on lights, opening garage doors, adjusting window blinds, closing curtains, turning on heating, watering gardens, etc, etc. ¬†In fact, wherever there is a button in the home that acts as an on/off or dimmer switch, you can add a ‘remote control’ function to it.

But that’s not really automation – it’s just putting in a remote¬†switch. ¬†There is no intelligence or pre-programmed schedule as to when to do something.

Level 4 – Aware, Programmed

Consider a scenario that requires our¬†Kitchen lights to turn on just before Dark every night.¬† This is an easy task for someone in the home – but it’s surprising how much more information is needed to ‘automate’ this simple task.

A basic understanding of¬†Home Automation¬†is required from this point on. ¬†If you’re unsure, click on the link to discover more before reading any further!

CalendarLevel 4¬†takes the basic Home Automation Hub¬†and builds upon it by allowing the user to program a series of tasks to turn things on or off on a simple schedule.¬† As each Level builds upon the capability of the previous one, it’s important to highlight that Level 4 also has the capability to support ‘Remote Control’.¬† Rather than the ‘remote’ directly talking to the Appliance as in Level 3, the remote now communicates directly with the ‘Hub’ to send basic commands.

Remember our Kitchen lights?¬† Now, using the model we’ve created through a basic understanding of Level 4, we can program the Hub to turn the lights on every day at 5pm and turn them off again at 11pm after we’ve typically gone to bed.

This a great step forward, but in reality, not a very useful one.¬† There are too many ‘gotchas’ that will jump out to spoil the schedule – ever changing times of dusk through the year; dark and cloudy weather¬†may require the lights to come on earlier; what if someone is in the room at 11pm when the lights turn off?¬† You get the idea.¬† And so on to Level 5.

Level 5 – Aware, Triggered

Let’s continue with the Kitchen light example. ¬†We’ve already configured our light to turn on at a specific time of the day, but as the time of dusk changes constantly through the year, we need to sharp tune this to be more accurate.

We now need to take a close look at what sort of sensors might help us determine the most appropriate time to turn on the light.

shutterstock_186320450Weather – we can poll a personal or local Weather Station or a National Service to determine the current conditions outside. ¬†We’re really interested to know if it’s cloudy.

Light Рa typical motion sensor should come with multiple capabilities built in Рmotion (obviously), force, luminance and temperature are common.  Instead of using the Weather sensor, we could read the true amount of light to better understand how dark it is in the Kitchen.

Location – knowing where we are on the planet will help us determine the time of ‘dusk’. ¬†Some Hubs will have this time value already calculated by default.

Bringing these three sensors together, we can create a trigger¬†that can turn the light on when the light level in the room drops too far or when we ‘know’ it’s dusk outside. ¬†This is, of course, a very simple example.

Using the combination of sensors and appliances, coupled with events and triggers, we can quickly build a wide array of actions that really bring the house to life.

  • If it’s not rained for two days and it’s summer, water the garden
  • If you’re getting closer to home and it’s a bit cold, turn on the heating
  • If you receive an e-mail, play a sound around the house
  • If you’re away from home for more than 24 hours, set the alarm
  • If there is motion detected on an outside camera, send a text to my phone
  • If this, then that … a great resource for more ideas

Our house is now starting to really come alive. ¬†It can operate a programmed schedule of activities and can respond to events outside and around the house to give a far greater sense of automation. ¬†However, everything that the house is doing has been previously ‘configured’ (at best) or ‘coded’ (at worst) and has likely taken a long time to really bring to life.

Level 6 – Aware, Learning

This is the current ‘cliff face’ of Home Automation. ¬†Our previous example of the Kitchen Light has to be left behind as we venture ahead to Level 6. ¬†Instead, I’m going to take a real life example of the Nest Thermostat – a modular heating control¬†that has been developed to connect your home’s boiler¬†to the world of automation.

Nest is a small company with big ideas. ¬†Big enough that Google bought the company a couple of years ago. ¬†They have three products in their range – Thermostat, Smoke Alarm and Camera. ¬†They are capable of communicating with one another via a ‘mesh’ network called ‘Nest Weave‘. ¬†Similar to Apple’s HomeKit, the Weave network is being rolled¬†out to other third party companies who are eager for their devices to be included. ¬†This is a great step forward for the Internet of Things although I’m left wondering if we’re looking at another VHS vs BetaMax – only time will tell.

nest-stock-image-1At Level 5, the Nest Thermostat was capable of sensing how warm your house was, knowing how far away from home you were, and starting a heating cycle at the right time so your home was just the right temperature when you arrived home. ¬†It lights up when you walk past it. ¬†If coupled with the Nest Smoke Alarm, should smoke or CO2 be detected, the Thermostat could turn off your boiler. ¬†It’s even got a mobile App!

With Level 6, we start to see additional features of the Thermostat come to life. ¬†It ‘learns’ how long it takes to warm your house from a particular starting temperature and the difference between a sunny and cloudy day. ¬†It starts to remember¬†what time you usually come home and can understand when you are away for a prolonged period. ¬†It builds a schedule based on when you turn down the heat before bed and starts to automatically adjust the temperature based on this schedule.

It’s a great device. ¬†But I don’t own one – and neither will I. ¬†Not because I don’t love it – I do – but simply because it doesn’t go far enough in terms of it’s reach. ¬†It controls the heating centrally, where as, at least in our house, we control the heating room by room using Radiator Thermostats. ¬†It turns off the boiler in an emergency, but doesn’t stop the flow of gas. ¬†With the release and adoption of Weave, these may just be gaps that are soon to be filled … only time will tell.

Reflecting on the concept, the idea of a ‘learning’ device is really one that records state changes from multiple sensors and has a set of pre-programmed actions that are activated upon certain conditions being met. ¬†It’s not really learning in the true sense, but from the outside looking in, it certainly appears that way.

As we move forward I believe we will see significant growth in the way in which our devices and appliances learn more about how we like to use them. ¬†It opens up another level of opportunities for the automated home and for the manufacturers to learn more about how we use their products. ¬†It’s also key if we are to ever reach the pinnacle of our ascent.

Level 7 – Unaware, Intelligent

In a nutshell, we’re not here yet! ¬†In truth, we’re a long way off. ¬†So far off, it’s difficult for us to predict exactly what this would look like.

Intelligence is more than knowledge – it’s a huge leap from the ‘Learning’ capabilities we discussed in Level 6. ¬†It’s about taking the built-up knowledge, applying common sense and reasoning to any decision and monitoring the reaction of those with whom it’s engaged.

shutterstock_221369392My sense is that the fully automated home of the future will be¬†so connected to everything,¬†so aware of it’s environment,¬†so understanding of it’s occupant’s needs – that it will be akin to a living, breathing organism. ¬†In this state, I doubt we would be aware of the need to control anything – it would all be predicted and managed for us without concern or consideration.

Too far?  Perhaps.

As a home automation enthusiast, I can’t imagine anything worse. ¬†As I consider my own personal walk – taking our own home from Level 3 to Level 5 – I’ve come to understand that it’s been the journey itself, rather than the destination, that has fanned those automation flames and brought me so much enjoyment over recent years.

How boring it would be to have the home do¬†all the hard work; for it to¬†never go wrong. ¬†Come to think of it, I’d probably move out!