Introduction
Home Assistant (HASS), is a open-source home automation software/project.
Node Red, is a drag-and drop tool used for easily configuring hardware devices to talk to each other.
Home assistant is a very powerful, event-driven tool. However- its weakness, in my opinion, is for a lot of more complex automations, you have to resort to manually editing configuration files. To rectify this issue, we are going to experiment with integrating node-red to ease this issue.
Prerequisities
- You need a working installation of home assistant.
- You need SSL Enabled. There are a few quick and easy methods to do this.
- Self-signed certificate (Don’t use if you are public exposing HASS to the internet.
- Let’s Encrypt. Free service which provides public SSL certificates.
Getting Started / Installing
Once you have all of the prerequisites completed, lets move on to installing the add-on…
Navigate to Supervisor -> Add-on Store.
Search for “Node-Red”
Click the install button to install the add-on.
After the add-on is installed, you will need to modify the Config section, to add in your certificates created in the prerequisite steps.
As well- put a secure value in the “credential_secret” field. This will be utilized to encrypt secured information.
Once you have filled out the required values, scroll up, and click the “Start” button.
If the add-on does not properly start, scroll down to the bottom, locate the log, identify the issue, and perform corrective actions. You should not see any “red” in the logs.
Usage
Now that node-red is properly installed, and running….. Lets automate something……
Ending Notes
Installing node-red was a very simple process.
After using node-red for a bit- I have moved all of my automations from being directly in HASS to instead, living inside of node-red.
The visual interface is pretty self-documenting for the most part, and it makes doing complex automations quite easy. As well- it has its own dashboarding tool built in, which can be quite powerful.
I did create a few more automations based on geo-tracking, to announce when I leave work, etc…. and it was pretty straightforward after I got the syntax down.
On a last note- debugging automation is much easier inside of node-red.