Graphic automation system interconnected items for planning an iot home automation system blog post

The purpose of this article is not to teach you how you can make your home do whatever you want it to do, but instead it will make you understand better the process of implementing a home automation solution. Or, as my experience would say, to turn madness into sanity and peace of mind. There are a lot of guidelines on the Internet to help you understand the technical aspects in detail, but we will focus more on the bigger picture, the mindset which you should apply when building your own Home Automation Solution.

You may be wondering already what things will be covered here, so let me give you a short summary first:

  • Where to start?
  • What can I do with it?
  • What and how many pieces does this puzzle have?
  • How do I put everything together?

Why?

Well, the answer is simple for this one. We are all lazy geeks and we like watching computers do things for us. We want our homes to be “aware” of themselves and to have the ability of doing things, hence leaving us with more time, to learn new things and improve ourselves. Also, because we want our life to become easier. Are you watching a movie and suddenly you feel cold or you realise you forgot to turn off the light or to close a door? You’ll have to pause your movie, get up from your comfy seat and go and solve the problem. What if you forgot more things? Yes, you are correct, the movie mood is starting to fade away, but a smart home could help you overcome these issues by doing those things for you. Automatically!

Another reason to implement home automation is security. And this does not cover only the doors and windows being closed, but also the protection against gas or water leaks, kids being in areas dangerous for them and so on. Your creativity is the limit!

Where to start?

At first, you will feel overwhelmed by the amount of things you could automate in your home, so I would recommend creating a checklist first. You can follow this thinking pattern to make it easier to understand your plan and how you will implement it:

  • Do you already have some ideas? List them on a piece of paper, and if you don’t have any, a good place to start is to take a look at Instructables.
  • List the rooms or other parts of the house which will host your IoT equipment. This will help you understand better the magnitude of your project. If you have 10 rooms, maybe you should focus on the most used ones first.
  • List all the things you don’t feel comfortable doing or touching (like security equipment or access control). This will decrease the amount of work involved, costs and overall easiness of your project.
  • Prioritise your ideas. You’ll do this alone most of the time so try to focus on achievements.
  • Evaluate your costs. Eliminate what you think is too expensive or not worth doing it (sometimes it’s cheaper to buy an existing product instead of building one from scratch).
  • Evaluate your skills. Some things appear to be simple to do, but reality is harsh. So if you are good with Python or JavaScript, go with a platform that supports that language and not one based on C or C++ as the learning curve will extend the time spent on your project and add a lot of frustration on top.
  • Last, but not least, if you are not alone in that home, get the so called “wife acceptance”. An idea might sound great to you, but end up as not being useful and usable to the other members of the family.

If you managed to get this far, you should now have a very good idea of what you want to achieve and how you will do it.

What can I do with it?

I mentioned Instructables earlier, a very good place to start, with lots of tutorials and ideas, but to summarise and maybe to already give you some ideas, I will try to list some of the things I already did in my home:

  • Automate lights turning ON or OFF based on the presence of people in the room and the time of the day. This will help you decrease your electricity bills, but can also add a layer of security by mimicking the presence of people in the house when you are on holiday.
  • Automate your heating and ventilation system based on temperature, humidity and motion sensors. Again, this will help you reduce the costs of your bills, but will also increase your comfort as you won’t have to worry about it anymore.
  • Monitor the quality of the air in your home and around it. This, in conjunction with the other ideas, will help you implement decisions in your system based on how your environment changes. As humans, we react to changes in our environment (you turn on the heat if it’s too cold or open a window if you’ve burnt your meal) so our home should do the same in order to be smart and helpful.
  • Make the music follow you throughout the house. Yes, we are dancing beings and we love music, but we don’t want to max out the volume just so we can hear it on the other side of the house. Your neighbours won’t like that either.

And these are just a few of my improvements for my home, but the list is long and keeps growing. In fact, let me give you another tip. Try having brainstorm sessions with the rest of the family and see what they would like to improve. Teamwork does wonders!

What and how many pieces does this puzzle have?

By now you should already have a couple of lists with things that you want to do and places where automation will make your life better, but how do they fit together? If you are like me, you would want to visualise everything in one image, like a map of cool things your house can do. For this we need some blueprints. Depending on your skills and available tools you can:

  • Draw your floor plans by hand on a big piece of paper and start adding IoT sensors where you would think it fits better for your purpose.
  • Use a 2D/3D tool to draw your plan. This option will offer you more exact measurements which can help in some cases. You can find plenty of free online tools so it’s up to you to choose one.

When adding the IoT part, start with simple things like lights, electrical plugs, heating, curtains, doors and so on. You can even add pumps for your aquarium, a Christmas tree or a smart home cinema. But remember, start small and try to grow little by little, while learning your habits and needs.

How do I put everything together?

OK, so now you have sensors and arduinos spread throughout the house (pro tip: try to hide them so you won’t stomp on them by mistake), but they don’t do anything yet. The “smart” is still missing from your home so lets add it. In order to make your house aware and be able to make decisions you will need a computer and some software to control all the IoT goodies. We call this a controller and its main capabilities should be:

  • Aggregate the data from the devices
  • Save that data in a timeline manner
  • Present the data to the user
  • Send orders to devices

To achieve this, you have countless options, paid and free, but lets focus on the free options as it fits better with the idea of you being in control and not a 3rd party vendor. The first option, if you have the skills and time, is to write your own home controller software which will send commands to your IoT equipment. Since software development is such a complex task, we will not cover it in this article, but if you choose to go this way there are plenty of online communities willing to help and advise.

The other free option is to use an open-source controller. This will reduce the time of having a solution up and running as it’s just a matter of installing and configuring. There are many great projects out there which offer similar capabilities, so feel free to try them all and choose the one that fits your needs and GUI taste the best. Personally, I worked with openHAB, Home Assistant, HomeBridge and PiDome and they’re all good, in the end, the choice being just about aesthetics (and wife acceptance).

Extra tips & tricks

For my final words, I have decided to give you some tips regarding some technical aspects of home automation, things which I didn’t think of from the beginning and that made me lose a lot of time and also money as I had to re-buy some of the sensors and Arduinos.

Device enclosures: you will deploy a lot of electronic devices around the house and they should be protected from humidity and heat. For this, you can use up-cycled boxes, enclosures from DIY stores or 3D printed boxes, but always plan well how the components will fit inside so that the heat can dissipate fast.

Position: do it wisely! If you monitor environmental items like temperature or light, make sure your sensors are not in plain sun or you will get the wrong values reported back to the controller and this could lead to unexpected situations or even dangerous!
Sensor quality and ranges: there are many vendors for the same type of sensor, but the quality can vary quite a lot, so read the reviews and technical specs carefully. You don’t want a faulty temperature sensor to decide when the heat should be turned on.
Pets and kids: it might not be obvious at the beginning, but do take them into account when placing motion sensors around the house, for example, as you might end up with your home looking like a rave club, lights going on and off like crazy.

I’m sure there are more things to take into consideration, but I’ll leave the fun of discovering them to you.

Have fun and happy hacking your home!

Greater BV

Boeingavenue 217 (4th floor)
1119 PD Schiphol-Rijk

hello@greater.nl
backoffice@greater.nl
sales@greater.nl

Backoffice: +31 (0)85 303 64 28
Sales: +31 (0)85 303 64 23