Homebridge and Hoobs
February 28, 2021
What is HomeBridge? 🤔
A cikk magyar változatáért kattints ide.
Since we decided to use Apple’s ecosystem for our smart home project, it made sense to purchase as many HomeKit-compatible accessories as possible.
However, certain devices (like robot vacuums or air conditioners) either don’t come with a factory HomeKit-ready version or, if they do, they don’t meet our specific needs or the unique characteristics of our homes (such as having a shared boiler system in an apartment building with zone-controlled underfloor heating).
HomeBridge is an open-source project that started in 2016. It allows you to create your own HomeKit hubs. Using custom or community-developed plugins, you can integrate devices into your HomeKit system that don’t officially have such integration.
HomeBridge vs. Hoobs 🆚
The free software can be run in various environments—there are versions for Windows, Linux, macOS, and more—but the most straightforward and common way to use it is to run the HomeBridge server on a Raspberry Pi mini-computer.
There’s also a more user-friendly version called Hoobs (HomeBridge out-of-the-box system). While it’s still a HomeBridge server at its core, the interface, installation, and package management are more straightforward for less experienced smart home users. I opted for Hoobs because it also makes installing and maintaining plugins easier for me.
How does it work? ❔
After installing the software on my Raspberry Pi 4B, I gathered the necessary accessory modules (plugins). Before purchasing any device, I checked if a working HomeBridge plugin existed for everything I needed. Once I downloaded and installed the relevant plugins, I could begin configuring the officially non-HomeKit-certified devices.
What works with Hoobs in my setup? 🔍
As I mentioned, no factory HomeKit-compatible air conditioners are available, so Hoobs was the only solution for me. Some infrared-proxy devices can control air conditioners and are HomeKit-capable right out of the box, but with these, you have to compromise because the status feedback won’t always be accurate due to the infrared control.
I chose Gree for my AC unit because it has a well-functioning plugin (reverse-engineered by Hungarian developers, by the way).
Besides the air conditioner, I’ve integrated the control of motorized blinds and our Philips air purifier into the system using HomeBridge plugins.
Additionally, I’ve connected our Ring video doorbell and outdoor camera via Hoobs, and even our Roomba robot vacuum can now be controlled through HomeKit.
In the future, I’d also like to integrate our zone-controlled underfloor heating into HomeKit.
The challenges 😑
It’s only fair to discuss the difficulties as well. Since this is an open-source, free project that relies on community-developed plugins, there’s always a chance that a plugin might not work or work precisely as you’d hoped.
It’s also possible that a plugin is not fully compatible with the hardware version you purchased. I’ve encountered such surprises and will detail those experiences in future articles.
Suppose you plan to use HomeBridge plugins for any “live” service. In that case, you should be aware that updates to the service could break your custom HomeBridge configurations. For instance, with Ring, there were several occasions when Amazon made server-side changes that prevented the Hoobs plugin from accessing the cameras. Fortunately, fixes are usually released quickly for larger, more popular projects (like Ring). After a quick update, everything works again.
Who should use this solution? 🤓
Since there’s quite a bit of tinkering involved with HomeBridge, I would only recommend it to those who are adventurous and willing to experiment. You may spend hours troubleshooting errors, and it’s possible that you won’t be able to solve them right away. I often say that HomeBridge is an excellent solution for most cases. Still, you also need to be prepared to maintain it:
A single update or change can easily break the whole system, the hub itself might crash, or you might encounter software issues. Suppose you don’t want to deal with this. Other solutions exist, like using other smart home hubs (e.g., Homey) or sticking to official HomeKit-certified devices.
Since this is also a hobby, I’m happy to spend time troubleshooting if necessary, but if you don’t want to mess around with SSH and write node.js code, HomeBridge might not be the best path for you.
I’ll share my experiences with the Philips Hue smart lighting system in the following article.