DEV Community

Cover image for Home automation, smart home and ... more
Rudolf Jurišić for Bornfight

Posted on

Home automation, smart home and ... more

Being a developer, you probably have an urge to automate things. And if you do, you probably want to do it outside of work as well. Especially at home.

Here is an abstract definition of the word automation: "The technique of making an apparatus, a process, or a system operate automatically." So, making yourself operate automatically is an automation as well :)

Good ol' human automation

When folding towels, I have specific rules for specific types of towels and after doing it many times, it's an autopilot now. For me this is a satisfying work, but if there was a machine for doing it, I’d definitely be interested.

In general, we want to not only automate but also delegate repetitive work and give our attention to something more meaningful. Delegating it to our partner doesn't always work, so it’s a good idea to use machines, our future lords. 🤖

Motivation

Home automation can save time and money, make our life easier and more convenient or just bring coolness to our home so we can make that slick brag-demos to our friends and family.

So we can make an automation to turn off your devices when nobody is home, or set the right room lighting once you turn your TV on, or brag about your toilet occupancy door light.

Home Assistant

Home Assistant is a very powerful tool because it gives you out of box connection, visualisation and automation with your standard sensors, but even more powerful when it comes to customisation.

It’s open source and has a really great community.

Here are some steps to get you started:

  • Choose your machine (I have RPi 4)
  • Choose your implementation (OS or App)
  • Research about the protocols (wifi, zigbee, bluetooth, etc.)
  • Research about sensors and gateways (T&H, door sensor, PIR, etc.)
  • Try not to lose too much time on perfecting your UI

Since you are a developer, I am sure you will do your own research from here.
https://www.home-assistant.io/
https://www.awesome-ha.com/

My Experience

I can’t say I did something very special, but there are few things I am satisfied with. Let me share it with you.

Learning colours

I have a 20-month-old girl and we are learning colours. So, I connected a physical Wifi button to change the lamp color on click so she can practice when she wants to.
Alt Text

Is my fridge dying? Please let me know

My refrigerator sounds kind of funny at moments and I was not sure if this is normal or not. So I put a temperature and humidity sensor in it and saw how it really works. Also, If it stops functioning properly, once it reaches a temperature threshold, I will be notified.
Alt Text

Ping service

This one is not really about home automation, but it demonstrates the power of Home Assistant. With the node-red add-on, you can visually program the automations that can also include sensor data or just play with APIs and stored data.
Alt Text

Scrape service

This is another example of node-red flow. It notifies me if there are changes in number of listings on a webpage for apartments in the local area.

Being a developer, I am sure you'll be interested in these kinds of automation.

Alt Text

It's a trap

Once you get started with smart home and home automation you start wanting to automate stuff that doesn't need to be automated.

I suggest reading the HA founders note here:
https://www.home-assistant.io/blog/2016/01/19/perfect-home-automation/

Happy smart-home/home-automation/much-more exploration!

Discussion (0)