Home Automation?… Why?

Make your home work for you!

Years ago, I had a little routine that I completed just before commuting to work… it included closing all windows, checking that all lights were off, setting door locks and some other things before leaving. While commuting by car or train, sometimes I looked at the sky and said: wow! It looks like we’re getting some nasty rain… did I really close all windows?  In some occasions I went back home to ensure everything was in order… in some others I didn’t, only to discover with horror that I had left that supersized window open… again! After a few painful times, I decided that it was enough, and started to find a way to be warned if there were any open windows or things that needed attention before leaving for work… then I thought that I should be able to remotely fix those things… Then I realized that it would be even better to have my home take care of those on its own…

The day I did not check for open windows

 

I’m sure there are other situations you’ve been in: Have you ever worried about the safety of your elder relative, and wondered if there is a way for this loved one to get help when you’re not around? And one of my favorites: moved work appointments to be at home for the contractor working on that renovation? The best part was when the contractor called at the last minute to reschedule..!

If any of the previous situations sounds familiar and you want to do something about it, you are in the right place. Let me help you make your home smarter, more comfortable, more secure and cheaper to live… maybe you can even get some minutes back for yourself. You’ve worked a lot for your home, now it is time for your home to work for you!

Whenever I speak with people not currently involved in home automation, I hear something related to “the home of the future”, and then invariably the conversation moves to how expensive and difficult this must be. I believe that most of what we needed is already there; it just needs the right kind of “glue” to happen. The average home these days already contains a number of automatic controls that work so well that we even forget that they are there. Just to name a few: Water heaters, heating and cooling, fridges, garden sprinklers, alarms… etc. I’m sure that you can expand this list with many others. Most of those systems are already “intelligent”; with some help we can make them work with the rest of the systems at home. In my opinion, we can make reasonably-priced home automation happen now as a result of three things:

  1. Early works on Computer Science, electronics, communications, control theory are now so well understood that they have been modularized; allowing to  quickly combine them into new products. You can expect a whole blog later on this.
  2. Manufacturing techniques have advanced enormously in terms of reliability, size and cost.
  3. The Internet. It’s difficult to imagine a truly smart home without it, as it allows access your home from everywhere, but also allows your home to access vast amounts of valuable data to make decisions.

These three factors allow embedding sophisticated rules and behaviors into almost any device you can think of, and allows those devices to share their data. We went from an Internet connecting human minds to the “The Internet of Things” (IOT). Many persons in this field tend to classify Home Automation as a particular type of IOT. The list of products that can directly participate in a home automation system is already long and keeps increasing, and for the most part, reasonably priced. Please note that I said “can participate”, because they do not necessarily do all the magic we need out of the box…

At this point, I think it would be very useful to discuss how an ideal Home Automation system works, as it will help you to see a clearer picture of the things that need to be polished. It’s common to talk about three main component types:

  1. A first component type that allows detecting changes in the environment, like a camera or motion detector or a thermometer. Let’s call these “sensors”.
  2. A second type that allows producing a change onto some physical object, for example a switch that controls a lamp. These are the “actuators”.
  3. Once we have our sensors and actuators, we need something in between to initiate actions based on rules that get triggered when a certain condition is met… these rules live within a device commonly called “controller” or “hub”, and you can think of them as the brains of the whole thing.

By combining sensors, controllers, rules and actuators we can establish an automatic response given a certain condition. For example, when a person passes in front of the sensor, a message is sent to the controller to inform about this event; if a rule exists to handle this particular change, the controller sends an action message to the appropriate actuator indicating it to turn the light on…

In a similar way, when no movement is detected, the sensor sends another message to report this change to the controller and another rule in the controller can kick in to send a message to the actuator to turn the lamp off… An optional, but very common part of the system is an app that talks to the controller. By using this app, you can manually command actuators or you can send new rules to the controller.

This whole thing is conceptually simple right? All we need to do is to enable all gizmos to be able to send messages to report when something happened, and to receive messages to trigger actions. It is simple… but the devil is in the details. The complexity comes from the fact that for the most part, the sensors and actuators in the market today are designed to send messages that have meaning only to their companion controllers, and unfortunately, nothing else. In turn, most controllers have rules that are only usable in a certain domain, for example, lighting or air conditioning. This could be similar to persons that speak only one language: They can only communicate with persons that speak the same language. Don’t get me wrong, this is OK, products made this way allow manufacturers to focus their effort to get their products to the market and make money, but does not allow easy use of sensors from one family with actuators of another brand or type.

As we said, the majority of Home Automation products have a specific app to interact with their controllers and through them with their sensors and actuators. So you have 20 different products? I can almost bet you that you also have 20 different apps on your phone or tablet to control them. Almost invariably, if want to start an action on an actuator of brand X based on the sensors from one product of brand Y, it will be the owner through their apps that will have to make it happen. This is OK, but it becomes quite boring after a while… For a time, developers focused on mobile apps whose main purpose was to coordinate these interactions..  they are not really good solutions, as they require the apps to allow this and the phone to be able to reach your home to make something happen. The smart phone became a fancy equivalent of a remote control, but that won’t take us to the next level, a good automation solution should not depend on our phones or our willingness to always make the decisions.

But can we make those cool products really work for us as a team?

Although there are consumer products that attempt to allow for wide interoperability, not many are truly effective… some are better than others. Some big names are trying to make Home Automation nirvana happen, but they have not been effective. Why? We could simply try to force every device and manufacturer to speak a common language, similar to the language Esperanto. How many Esperanto-speaking persons do you know? You can probably count them with one hand. Lots of people speak English, Spanish, French, and yet none of those languages are truly universal, although they have been around for many centuries. Why is this? well, it’s simple: almost no one wants to give up their roots, and many may argue that there are languages that excel at delivering emotions or concrete ideas. I’m almost certain that a universal IOT language is possible, but tremendous efforts would have to happen to truly make it happen. Anyway, in this IOT analogy, it is super hard to get everyone to speak the same language for IOT, but we can hire interpreters to translate our messages, right? I’m sure you’ll agree that the interpreter approach, while not perfect, gets the job done much quicker.

The majority of the home automation industry is using the interpreter approach. Separate work towards long terms solutions, like a universal protocol – the Esperanto of the Internet of Things – are underway as well. We’ll talk a bit more about this in the near future. Now, one very important thing is that nearly all controllers in the market today, act as a combination of interpreter and controller, and they can connect to a Local Area Network, which is one of those technologies I mentioned that have evolved quite a bit. With notable exceptions like ZWave or Zigbee, specific brands or types of sensors and actuators talk to controllers using a completely proprietary protocol. Controllers can connect to the home LAN to either access the Internet to collect information needed for making decisions (like weather data in the case of an irrigation controller) or to allow an App to send commands to the controller (maybe to manually start/stop the irrigation cycle). At this point you have probably realized that installing a successful Home Automation system, requires a clear understanding of how sensors, actuators and controllers work, as well as how to install a reliable home network, and maybe some other geeky secret sauce.

Through the upcoming posts, we’ll talk more in detail about the basic principles that a number of people in the industry –myself included- believe should guide us when designing, installing and programming Home Automation solutions. We’ll also explore how to build a Home Automation system from the ground up, and how to select the right professionals to do it for you, if you’re not into rolling your sleeves for this.

Thanks, and take care.

One Response

  1. Richie Valenz says:

    Interesting intro… would like to see more details on selecting a controller

Leave a Reply

Your email address will not be published. Required fields are marked *