What is Home Assistant? Smart Home App Overview
In this article:
- What is Home Assistant?
- How Home Assistant Works
- Home Assistant Integrations
- Home Assistant Interface
- Home Assistant Automation
- Home Assistant Scenes
- Home Assistant Notifications
What is Home Assistant?
Home Assistant is one of the most popular systems for organizing, automating and controlling smart home and IoT devices from a large number of different brands. The program is written in Python and is open source.
With Home Assistant, you can, for example, set an alarm for sunrise, set up automation for lighting / heating, turn an air conditioner on / off based on temperature and humidity, or something more complicated. You can find a list of other popular use cases in the Examples section on the application website.
One of the great benefits of the service is its availability. Installing Home Assistant on Windows, macOS, Linux, or even Raspberry Pi is easy. The system works on devices with most OS. And thanks to the mobile app, installation is possible not only on desktop computers and laptops but also on smartphones and tablets on Android and iOS.
How Home Assistant Works
Home Assistant Integrations
HA uses separate components and integrations to manage devices. The application allows combining IoT devices using 1800 ready-made integrations in 50+ categories - such as Alarm, Automation, Camera, Climate, Health, Hub, Light, and Sensor.
Systems and devices you can connect include Amazon Alexa, Google Nest and Google Assistant, Samsung SmartThings, ZHA (Zigbee Home Automation), Xiaomi, Dyson and so many more.
The number of out-of-the-box integrations is impressive. However, if among all this variety you do not find the system / device you need, you can easily implement third-party integration. Most likely, it won’t take much time - plugins for many devices have already been created and uploaded to the dedicated discussion thread in the community. If the device that you want to connect has been overlooked there too, having Python programming skills will help you solve the issue on your own.
Home Assistant Interface
The application interface is user-friendly and translated into many languages. Each user can customize and replace cards on the dashboard to their needs. Test this by running the demo mode.
Editing cards is possible both in the visual editor:
and in the code editor:
Each device connected to Home Assistant will perform its own action according to a predefined command set in the automations.
Home Assistant Automation
Automations in Home Assistant help you set the action to be applied when a specific event occurs. Thus, each automation consists of a trigger and an action. Sometimes a condition is added here as well.
In the automation above, “When Paulus arrives home” is a trigger, “and it is after sunset:” is an additional condition, and “Turn the lights on in the living room” is an action.
In the app, you can choose blueprint automations or create a Home Assistant automation yourself.
Home Assistant Scenes
Home Assisatnt scenes allow you to multiple automations into one bundle. This tool greatly simplifies the work with the application. For example, if you want that when Paulus arrives home, not only the light in the living room will automatically turn on, but the kettle will also start, you can simply create these actions and then call the ready script instead of 2 different automations.
Home Assistant Notifications
Sending messages to the smart home user about significant events and signals from devices is not only important, but also essential for a timely response. And here HA offers several possibilities:
- Persistent notifications - configure sending notifications directly to the Home Assistant interface.
- Built-in notify integration - send notifications to third-party platforms by installing additional integrations - e.g. Slack, Telegram, Facebook Messenger.
At first glance, sending notifications via notify seems a pretty attractive solution. It is indeed very convenient to receive instant notifications about events occurring in your home or office via push notifications or messages in popular chatting apps. But there is a snag. Most of these integrations require complex and time-consuming configuration - for example, creating a chatbot through the API and adding special code to the HA configuration file.
However, we have good news for you! There is a simple solution - Notify.Events. The service collects all notifications from Home Assistant in real time and sends them to a recipient convenient for you - choose any of 40+ instant messengers, push notifications, SMS, and even voice calls. For example, you can receive notifications from Home Assistant in Telegram, Viber, Slack, and Discord, as well as Home Assistant SMS notifications, etc.
In conjunction with Home Assistant, Notify.Events notifies you about the events in your home ASAP. A leak in the bathroom, excess CO level or suspicious movement near your door - you will be the first to know about it and can react quickly right from the chat.
Another advantage of the service is the ability not only to receive notifications yourself but also to set up sending to your family or team members. To do this, they do not even need to register in the system. By clicking on your special link, they will be able to independently choose the appropriate recipient in just a couple of clicks. What is more, you can configure the distribution of messages between recipients by priority, type of event and time.
In addition to Home Assistant, Notify.Events allows you to receive notifications from 20+ different services in several categories: Monitoring, IoT and Smart Homes, Website and eCommerce, CI / CD and Version Control, etc. So, for example, you can combine Home Assistant and Node-RED in the same channel and create a separate channel for work notifications from Zabbix, UptimeRobot, Jenkins, and other services that you use every day.
Setting up the service is very simple, fast and doesn’t require any programming skills. All you need to do is register in the Notify.Events system, create a channel (event feed), add Home Assistant there as a source of notifications and a suitable messenger(-s) as a recipient. Read more on how to get your first notification in this article. Find complete instructions on how to set up Home Assistant integration here.