Design Monday #1 – Central Heating
At the start of this week we kicked off something that’ll be a regular feature on this blog. We’re calling it ‘Design Monday’. Every fortnight, on a Monday, we’re going to invest some time in a design challenge that’s outside of our usual area of expertise. Then we’ll share our thoughts in the hope that it’s interesting to you too.
For challenge #1, we decided to take a look at central heating systems. Heating systems are something we all interact with, especially in the depths of winter where we depend on them, and yet there seems to have been very little evolution in the design of their interfaces. What’s more, with an ever increasing focus on energy efficiency, both from an environmental and economic standpoint, there’s a need for heating systems and their interfaces to be smarter, more efficient and transparent.
We’ve presented our work as a blog post, and also in video, where you can watch the long version (presented by James), or the short version below (presented by me)…
Design Monday #1 – Central Heating (Frankie explains) from frankieroberto on Vimeo.
Review
We started by reviewing the way that heating systems are usually set up at the moment. Amongst the team, our experiences of central heating interfaces were remarkably similar. There are 3 different places where you usually control heating from: the boiler, the thermostat, and the radiators.
Whilst I’ve lived in a student flat where the boiler only had an on/off switch, usually you get a timer setting option too, in the form of a dial labelled with a 24 hour clock, with little notches around the outside representing 15 minute segments that can flicked in or out. It’s a pretty unique interface, and works remarkably well, though isn’t without its flaws. For a start, it takes a while to get your head around the 24 hours, as we’re used to radial clocks being in 12 hours, with only digital displays using the 24 hour clock (and even then it still takes me a while to do the mental arithmetic of subtracting 12). Secondly, unlike most clocks, on the boiler timer it’s the outside that rotates, rather than the inside. Thirdly, it’s never that clear which way round the notches work – whether the inside setting represents ‘on’ or ‘off’…
Onto interface number 2, the thermostat. For most people, this is the thing they fiddle with the most. The standard thermostat is mounted on the wall, with a simple dial labelled in increments of degrees Celsius. You might think there’s not much to be improved here, but actually it’s a fairly problematic interface. We had plenty of personal experience of people misusing thermostats, but for a more evidence we can turn to Don Norman, who writes about the ‘folk understanding’ of thermostats in his brilliant book ‘The Design of Everyday Things‘ (page 38-39):
There are two commonly held folk theories about thermostats: the timer theory and the valve theory. The timer theory proposes that the thermostat simply controls the relative proportion of time that the device stays on. Set the thermostat midway, and the device is on about half the time; set it all the way up and the device is on all the time. Hence, to heat or cool something most quickly, set the thermostat so that the device is on all the time. The valve theory proposes that the thermostat controls how much heat (or cold) comes out of the device. Turn the thermostat all the way up, and you get the maximum heating or cooling. The correct story is that the thermostat is just an on-off switch. Setting the thermostat at one extreme cannot affect how long it takes to reach the desired temperature.
Even if you do understand how thermostats work, there’s still an ambiguity. Consider the situation where you’re cold, but the central heating has only been on a little while. You could turn the thermostat up, assuming that the temperature has settled, but at too low a setting. Or you might assume that the thermostat is already set at a comfortable level, but that the heating is just taking a while to warm your home up to this level. In this latter situation, turning the thermostat up would just mean that you’d end up too hot when the heating eventually catches up. Most thermostats give you very little indication as to which assessment is correct.
Finally, there are usually valves controlling flow on each individual radiator, numbered arbitrarily from 0 to about 5. These give you an additional layer of control, useful if you don’t want to heat an unused room, or if some rooms naturally heat up faster than others. They also add complexity though. If a room is too hot or cold, should you adjust the radiator valve, or the thermostat? Getting the right settings can involve a lot of guesswork, made harder by very slow feedback loop (adjust, wait half an hour to see if it’s okay, repeat).
Integrating the controls
In designing a better system, our first thought was to combine the thermostat and timer controls onto one panel, as it seems that their current geographically dispersed locations has been driven by what’s functionally easiest, rather than user needs. The next step was to improve the thermostat interface. Here we realised that the most important bit of information is missing: the current indoor temperature. Without this, it’s difficult to know whether it really is colder or warmer than usual, or whether you’re a bit ill, or sitting in a draughty spot, or just not wearing a warm enough jumper. Adding a digital read out of the current actual temperature surfaces this information, and also allows you to compare it to the set thermostat temperature. If there’s a difference, then you should know that your boiler is already trying to heat up your home, and that there’s no need to adjust the thermostat. To make this even more obvious, we thought of adding a pulsing indicator light above the temperature read-out, as a kind of real life equivalent of the spinning beachball cursor (or whatever the Windows equivalent is now), that says simply ‘I’m working’. Finally, we replaced the circular thermostat dial with two buttons for ‘hotter’ and ‘colder’. Dials work best where you get instant feedback, like a volume knob. Instead, the buttons represent actions, which more closely match what people are wanting to achieve (‘make it warmer’) based upon how they’re feeling (‘I’m a bit cold’). Without further ado, here’s the sketch we drew:
A small diversionary discussion here. We weren’t sure, given this interface, whether you even still needed the ‘desired temperature’ setting. You could do away with this, and then have the hotter/colder buttons pre set to increase or decrease the current temperature by a set increment (say 2 degrees). Then, if the system was already ‘working’ to increase the temperature, hitting the button wouldn’t do anything. You’d have to wait until the temperature settled at the new, higher temperature, and then hit it again if you wanted it warmer again. This might be a bit annoying, as you’d have to keep returning to the interface to make adjustments of more than 2 degrees, but on the other hand it forces people to always make decisions based upon how they’re feeling right now, and avoids the issue of people assuming that setting a higher temperature will make it warm up faster.
Back to the main story. We had sketched out a new, combined control panel, but had the feeling that something was still not right. We had created a ‘dashboard’ style interface for your home heating system, but unlike a car dashboard, it wasn’t right at your fingertips, where and when you need it. Then we remembered the radiator valves, and the need to be able to manage the temperature of individual spaces (bedrooms, living rooms, the kitchen). We had put the timer next to the thermostat, but the thermostat is about changing the temperature now, and the timer is about planning for the future.
System design
So our next move was to place a smaller panel in each room, with a temperature reading for that space and the same hotter/colder action buttons. These should talk to each other, and the boiler, and intelligently work out what to do. If someone wants it a bit warmer in their lounge, they should be able to hit the button, and have the system work out whether it’s best to open the radiator valve a bit, or to have the boiler kick in and push some more hot water around the pipes.
This just left the timer. The radial clock timer is okay, and could just sit on a central panel somewhere, but maybe we could improve this too. It’d be really useful if you could have different settings for weekends and week days, for instance. And for bank holidays. But what about people who work on Saturdays and have a day-off midweek? Maybe we need a setting for each day of the week.
As you can see, this quickly got complicated, and designing an interface to cope with all these different possibilities is hard. You end up having to use digital displays, which are complex, and don’t have that ability to be read at a glance that the radial clock dial does. We don’t want our central heating systems to be as hard to program as the apocryphal VCR machine! So we came to the conclusion that, for these more complex timer settings, a web based interface might be the best bet. It should be as easy to set up timings as it is to add events to a Google Calendar. In fact, you could even sync the two, so that your central heating system knows your daily schedule.
The last piece of the puzzle might be a mobile interface. There are plenty of times when you don’t actually stick to your planned schedule, and mobile phones can act as a useful just-in-time organisation mechanism, allowing you to phone or text ahead when you’re running late or early. The same could apply to your home heating system. If you know you’re going to be home earlier than you set the timer for, you should be able to text ‘ON’ to your home to override the timer and have it nice and warm for the moment you arrive.
Future possibilities
Finally, there should of course be an API to this system, so that the system is extensible, and so that us geeks can draw pretty graphs. Another option we considered was to integrate usage data from your gas meter and pricing data from your supply company and add a display showing you a rolling summary of how much energy you’ve spent, in currency terms, over the last 30 days. There are probably many more possibilities too – perhaps weather forecasting data would be useful?
These are our ideas, and the process we went through this Monday. Let us know what you think (and if you’ve got, or have seen, an interesting heating system). We’ll be back in a fortnight with a whole new design challenge…


