I've been using Home Assistant for several years as the heart of my smart home. The software is so powerful thanks to an enormous collection of integrations and add-ons that allow you to connect almost any smart home device or service that you could think of. I use multiple add-ons and integrations in Home Assistant, but there are some I simply couldn't live without.
Zigbee2MQTT
All of my earliest smart home devices communicated over Wi-Fi. I soon realized thatWi-Fi wasn't necessarily the best option for smart home devices, however. I was limited by how far away from my router I could place devices without them dropping off the network, and when my internet went down, so did most of my smart home. I started to try using some Zigbee devices instead.

Zigbee hasa number of benefits over Wi-Fi. It's a mesh network, so some Zigbee devices, such as my smart bulbs, can act as repeaters, passing information back and forth to other devices in the network. Zigbee devices are also more power-efficient, so many of them can run on batteries, meaning you have more options for where to place them. You can also run your Zigbee network completely locally, so that everything will still work even if you don't have internet. Home Assistant has recently launched anew Zigbee and Thread adapter to connect to your Zigbee devices.
You still need a way for Home Assistant to communicate with those Zigbee devices, however, and that's where Zigbee2MQTT comes in. This add-on runs alongside Home Assistant and acts as a bridge between your Home Assistant server and all your Zigbee devices, removing the need for proprietary Zigbee hubs such as the Philips Hue Bridge. It works with an incredible number of devices and is mostly very solid.
There's also a native Home Assistant Zigbee integration called ZHA, which does a similar thing, but Zigbee2MQTT is more powerful and supports more devices. Without Zigbee2MQTT, most of my smart home devices would be rendered useless.
Node Red
Writing automations in Home Assistant has always been a challenge. There have beenconsistent improvements to the native Automation Editor, which make it easy to create simple automations. If you want to create more complex automations, however, it can be far more challenging.
Node Red is a visual, flow-based interface that lets you create automations by stringing together building blocks called nodes rather than writing code. You join the nodes together with wires that can trigger the next node or pass information to it. It's a much more visual way to create automations.

Some of my automations in Node Red are incredibly complicated, even with the simple flow-based system, and I have nightmares thinking about trying to recreate them in the Automation Editor or in code. My most complex is the automation for mycustom remote control, which maps every button on the remote to a set of possible actions depending on whether I'm watching via my set-top box, my smart TV, myRoku device, or some other source. It includes a huge number of nodes, and I don't think I could have pulled it off without Node Red.
Home Assistant Community Store
While there are plenty of native integrations included in Home Assistant, there are times when the device or service you want to integrate doesn't have official support. That's where the Home Assistant Community Store, or HACS for short, comes in. This is repository of custom tools developed by Home Assistant users.

You can find custom integrations, dashboard components such as custom cards, and even entire dashboards. These aren't officially supported by Home Assistant, so you use them at your own risk, but most of them are solid enough to use. If you're not using this integration, you really should be—install HACS today!
Spook
One of the integrations that you can install via HACS is Spook. This is a custom integration that adds additional functionality to Home Assistant. It's effectively a toolbox of useful tools that can add more features to the default set, and help you keep Home Assistant running smoothly.
One of the most useful features is that Spook will look out for problems in your Home Assistant setup. For example, if you haveHome Assistant automations that reference entities that no longer exist, this won't get flagged up natively in Home Assistant. Spook, however, will spot these rogue entities and list them all in the "Repairs" dashboard alongside Home Assistant's own repair suggestions.

Spook can also do things such as disabling integrations when they're not in use, which can help if you're having issues with integrations keeping your devices awake unnecessarily. It can also add new entities and devices to Home Assistant that make it easier to create automations. It's definitely worth playing around with.
Waze Travel Time
This is a simple but effective integration that I use on an almost daily basis. Its core feature is incredibly simple. It uses the API of Waze, thepopular navigation app, to calculate the travel time between two locations, based on the current traffic conditions.

You can use it to track how long it will take you to drive to work, for example, and create an automation that will alert you when it's time to leave to get there for a specific time. You can also create automations to alert you if the travel time is significantly higher than usual, so that you're fully prepared to head off early and sit in traffic. I have travel times set up for all the places that I visit frequently, and it's saved me from missing appointments on more than one occasion.
Integrations and add-ons are what make Home Assistant so powerful, allowing you to connect all your smart home devices and services to a single unified system without having to worry aboutsupported ecosystems or proprietary apps. The number of integrations and add-ons is huge, but if the worst happened and I had to build my smart home again from scratch, these are the ones that I would install first.









