Reader small image

You're reading from  Building Smart Home Automation Solutions with Home Assistant

Product typeBook
Published inSep 2023
PublisherPackt
ISBN-139781801815291
Edition1st Edition
Right arrow
Author (1)
Marco Carvalho
Marco Carvalho
author image
Marco Carvalho

Marco Carvalho is an experienced home automation hobbyist engineer, electrical engineer, and technician. Pursuing his passion for electronics and embedded systems, he created an embedded home automation task scheduler using X10 Home Automation devices in 2006. Nowadays, he uses wireless electronic devices and the Home Assistant software to build different smart home automation applications. As an MSc in Computer Science, Marco has worked with several well-known companies such as IBM, Jabil, Phillips, and Hexagon where he extended his support in development and manufacturing of electronic products. At the time of this publication, he is the Director of Engineering for Apex Microtechnology, where he is involved in the development of high power, high precision analog components.
Read more about Marco Carvalho

Right arrow

Extending Home Automation Capabilities Using Add-ons

This chapter will present the main add-ons that can be installed with Home Assistant and that I currently use in my home. These add-ons are software applications that will extend the capabilities of Home Assistant, allowing you to go beyond it with the ability to program, present, and store data generated by your home automation system.

The following main topics will be covered in this chapter:

  • What are add-ons in Home Assistant?
  • Performing automations without Home Assistant using Node-RED
  • Using database and chart tools to present data from your home
  • Managing your network of Tasmota devices using TasmoAdmin
  • Accessing Home Assistant remotely

By the end of this chapter, besides Home Assistant, you will know and be able to evaluate the applications for use in your next project for home automation.

Technical requirements

In this chapter, it is helpful if you know the concept of a visual programming logic sequence (Node-RED) and how to deal with database applications (InfluxDB). If you have the skills to handle charts and know how to configure them, you will be better prepared to handle the chart application (Grafana). In some sections, links to videos are provided to exemplify some steps to be followed. Information used in the chapter, including these videos, is available at https://github.com/PacktPublishing/Building-Smart-Home-Automation-Solutions-with-Home-Assistant/tree/main/Chapter%2007. Check out the following video to view the Code in Action: https://bit.ly/3OVMsFy

What are add-ons in Home Assistant?

The content learned so far has shown that Home Assistant can handle most of the resources required to automate your home. The concept of add-ons was introduced to include more features to Home Assistant besides its main purpose. Add-ons are software applications that extend Home Assistant’s usability. They can be used as part of Home Assistant's functionality or work totally independent to it. We already briefly covered the installation of some add-on software such as the Mosquitto MQTT broker in Chapter 1 and File editor in Chapter 5. All the add-on software provided by Home Assistant is free to use.

Add-ons can be installed in the same way by following the Settings | Add-ons path and then clicking on the ADD-ON Store button in the bottom-right corner of the screen. They are split into two categories – Official add-ons and Home Assistant Community Add-ons. The official add-ons are maintained by the Home Assistant team while...

Doing automations without Home Assistant using 
Node-RED

Node-RED is an open source, flow-based visual programming tool, based on nodes that are interconnected using wires to create execution flows. Flows can be created and edited using a web browser, and nodes can be plugged together through a flow editor. This programming environment in our current Home Automation system runs as separate software but does not need to be integrated into Home Assistant, meaning that any program developed in Node-RED can run independently of Home Assistant. Sensors and actuators can pull or push their data using MQTT topic messages. Using the nodes grouped by functionalities or features, the data from sensors or actuators can be manipulated by the nodes to create automations, based on the data status. These grouped nodes create a palette that can be expanded by installing new groups of nodes.

As part of a programming tool the, Node-RED development environment offers the capability of debugging...

Using database and chart tools to present data from 
your home

In this section, I will present two other add-ons that can be installed using Home Assistant. These two add-ons, despite being installed at the top of Home Assistant, run independently of it as a separated application. These two add-ons will be introduced, but no examples will be provided for now. I will provide an example using these two add-ons and also Node-RED in Chapter 10, when we create a five-zone temperature logger for use in your home.

The first add-on we will introduce is one that stores data from your home in a database format. The data can be stored and retrieved later. The database add-on is called InfluxDB. The other add-on introduced in this section is called Grafana. This is used to create charts from data series. In the next two subsections, I will detail how to install InfluxDB and Grafana from Home Assistant.

Installing and creating databases using InfluxDB

InfluxDB is an open source...

Managing your network of Tasmota devices using TasmoAdmin

If you plan to use Tasmota on many devices in your home as I do, the add-on that I will present in this section might be useful to you. It is called TasmoAdmin. This is used to manage devices such as sensors and actuators installed with Tamosta. It scans your network to find Tamosta devices, allowing you to see their status, configure them, and even send firmware updates over the air to one or more devices at once. TasmoAdmin is very handy for me when I need to configure something in particular on a Tamosta device and do not know the IP address it is configured for. It scans and finds the Tasmota device IP for me.

We will install TasmoAdmin with the same procedure used to install other add-ons. I will not repeat the installation procedure; instead, I invite you to try to follow the process presented in the previous sections to install the other add-ons. It starts the same way – looking for Settings | Add-ons.

After...

Accessing Home Assistant remotely

The add-on in this section will allow you to access Home Assistant remotely using an external domain. The add-on used to do so is Duck DNS. Duck DNS (which stands for Duck Domain Name System) is a free dynamic DNS service that allows users to assign a custom domain name to their home network or any device with a changing IP address. It provides a way to access devices and services on your home network, even if your internet service provider assigns you a dynamic IP address that changes periodically. In other words, Duck DNS will allow you to use Home Assistant even if you are away from your home.

The first step to use this add-on is to create a Duck DNS account. To do that, we will need to follow these steps:

  1. Go to https://www.duckdns.org/ and create an account using your preferred credential method. There are currently five credential methods available, including Google and GitHub. I will use my GitHub account.
  2. After authorizing Duck...

Summary

In this chapter, we learned what add-ons are and how they can be used to support the automation of your home. You know understand more about the installation and utilization of the main add-ons that I use in my home.

We learned about Node-RED, a new tool to create automations. InfluxDB and Grafana were discussed, and examples were given so that you could verify how data is stored and monitored using these two tools.

A very important tool to manage your Tasmota devices was introduced, TasmoAdmin, and you saw what it can do.

Finally, we enabled Home Assistant to be accessed remotely by using the Duck DNS add-on.

This chapter gave you an overview of the add-ons available and introduced you to new tools and software so that you can go beyond what Home Assistant offers.

In the next chapter, we will explore another type of Home Assistant installation, showing you additional ways to use more resources of your hardware and software besides using Home Assistant.

...
lock icon
The rest of the chapter is locked
You have been reading a chapter from
Building Smart Home Automation Solutions with Home Assistant
Published in: Sep 2023Publisher: PacktISBN-13: 9781801815291
Register for a free Packt account to unlock a world of extra content!
A free Packt account unlocks extra newsletters, articles, discounted offers, and much more. Start advancing your knowledge today.
undefined
Unlock this book and the full library FREE for 7 days
Get unlimited access to 7000+ expert-authored eBooks and videos courses covering every tech area you can think of
Renews at $15.99/month. Cancel anytime

Author (1)

author image
Marco Carvalho

Marco Carvalho is an experienced home automation hobbyist engineer, electrical engineer, and technician. Pursuing his passion for electronics and embedded systems, he created an embedded home automation task scheduler using X10 Home Automation devices in 2006. Nowadays, he uses wireless electronic devices and the Home Assistant software to build different smart home automation applications. As an MSc in Computer Science, Marco has worked with several well-known companies such as IBM, Jabil, Phillips, and Hexagon where he extended his support in development and manufacturing of electronic products. At the time of this publication, he is the Director of Engineering for Apex Microtechnology, where he is involved in the development of high power, high precision analog components.
Read more about Marco Carvalho