I have been buying and fiddling with smart home devices for many years. As a result, my home network resembles a kind of Model UN of devices, bridges, protocols, assistants and applications. I try to make alliances, resolve disputes, and reassure everyone, including myself, that this whole complicated thing is still worth it.
My lifesaver was Home Assistant, a small server that gives you local control and great automation options. Every device in my house is connected to Home Assistant, which runs on a tiny Raspberry Pi 3B+ underneath my printer. I have a special dashboard with all my switches, gauges, speakers and indicators. I have full control, a customizable toolbar, and endless automation.
But sometimes I just want to change the thermostat from the lock screen on my iPhone, or tell Siri on my phone or watch to turn on the lamp. Yes, Home Assistant has its own app and mobile-friendly website. But I also want to spare my partner the trouble of learning how a completely different, somewhat fiddly application for accessing lights and switches works.
Conveniently, Home Assistant isn’t an all-or-nothing proposition. Of course, you can use it to exclude big tech companies from your smart home and create your own control panel. But you can also use it as a gateway between a motley collection of non-HomeKit gadgets and an Apple home system. Or you can switch between them for more control or easier access.
Let’s see how Home Assistant can help HomeKit find all the devices in your home for free, even those that aren’t officially supported. It can also connect Google and Amazon apps and assistants to the rare devices they don’t support, although it costs $5/month (but also supports Home Assistant development).
One more note before diving in: If you’re only using Apple devices to control smart home devices, you’re only interested in HomeKit compatibility, and you have a spare Raspberry Pi, HomeBridge is another solution. It’s more limited in scope than Home Assistant, but that might be a plus for some.
Tidying up your home
First, you need to set up Home Assistant and connect it to your devices. We do not cover this process here, but there are many resources that you can check out. Get started with the official Home Assistant guide to run your system on a Pi, NUC, NAS, always-on system, Docker container, or virtual machine. Basically, Home Assistant can live on any small computer that can always be on.
Once Home Assistant is launched, add as many devices and services in your home (called “Integrations”in Home Assistant) to it as you want them to be accessible from your phones or speakers. If you hit a wall, the Home Assistant subreddit, forum, and Discord are good places to look for troubleshooting tips. I also found some tips on Cyril Peyansky’s blog.
If you’ve looked into Home Assistant and can’t find an integration for one of your devices, consider installing the Home Assistant Community Store (HACS), an unofficial community-maintained collection of integrations and other add-ons. Search (at the top right of the HACS page) to see if your device or brand is offered.
Some HACS integrations may require additional work to set up. I had to set up the Mosquitto messaging broker on a friend’s home helper in order to access his Ring path indicators. For some devices (usually cheaper, non-branded ones), you can sign up for an API key from a little-known company’s developer portal. You can decide if the extra steps to instantly access these gadgets on your phone are worth it.
If you already have Home Assistant running and connected to everything and want to add a HomeKit bridge, you have a special challenge: get rid of as many old, redundant or unresponsive devices as possible. Go to Settings, Devices and Services and then the Entities tab and sort by status to see what is no longer connected or responding. When you connect Home Assistant to HomeKit, Google, or Alexa, the server sends entire categories of devices, whether they are duplicates or not responding. In particular, HomeKit is annoying to get rid of dead or duplicate entries, and the Home app will keep you from setting up devices until you do so.