A few weeks ago while browsing the Homeseer forums (which have been inundated with Insteon users lately, after the sudden shutdown of the service), I came across a thread about integrating Homeseer with Apple’s HomeKit using Homebridge. Everything in my home automation setup has been working fine, but I’m always looking for new ways to tinker and expand. I use HSBuddy on my iPhone to control my HS devices, but I thought it would be cool if I could use Apple’s Home app instead, which would also make it easier for my wife to use.
First, I needed to install Homebridge. It made sense to install it alongside Homeseer on the Raspberry Pi, so I followed the wiki instructions to install node.js and then Homebridge and the UI. Very easy and I had it up and running in a few minutes. Then I started adding plug-ins, specifically homebridge-homeseer4 (the whole reason for this experiment), along with homebridge-ring (for my Ring alarm system), and homebridge-nest-cam (for my Nest cameras which don’t integrate with Homeseer at all).
Homebridge’s config files are all JSON-based, but the UI plug-in (homebridge-config-ui-x) makes it easy to perform the configuration right from the browser. To connect to Homeseer, I had to fill in some basic info (IP address, username, password, etc.) for the plug-in and also enable ASCII control in my HS install. Then, in the plug-in, I had to manually add the device IDs from Homeseer that I wanted to expose to Homebridge: light switches, door locks, the garage door opener, and the thermostat (I didn’t bother with all of the “virtual” Ring devices since I had installed the Ring plug-in for Homebridge so it pulled everything from there natively). Next, using Homebridge’s QR codes, I added the Homebridge and Homeseer “hubs” to the Home app on my iPhone.
Just like that, I could see my Homeseer devices in the Home app on my iPhone, turn lights on and off, lock doors, set the temperature, etc. All in a much nicer, cleaner interface than HS Mobile or HSBuddy (and certainly an easier to use and configure app for non-techie folks in the family). In the app, I had to go through each device and clean it up, placing it in the proper room, updating the name, changing the icon, etc. until I had everything organized the way I wanted. I still need to do some tweaking and refining, but for the initial deployment it’s good.
Now, all of this works great while at home on the same WiFi network as Homeseer/Homebridge, but what if I wanted to control these devices while out of the house like I do with HSBuddy? For that, you need a HomeKit hub, a device on the local network that acts as a (yet another) bridge to your devices from the outside. This can be a spare iPad (everyone has those, right?), Apple’s HomePod Mini, or an Apple TV. Until now, all of my user-facing home automation/interaction hubs were from Amazon: Echos and Fire TV Sticks … we’re an Alexa household in that regard. I’m not quite ready to shift everything to Siri, but I decided to replace the Fire Stick on our primary family room TV with an Apple TV 4K (my review here) so I could test HomeKit outside of the house.
While setting up the Apple TV, it automatically registered itself as a HomeKit hub and that was all I needed to do. Now I could control all the devices in the Home app while outside the house (or from a different wireless network). With Siri suggestions, my garage door opener even appeared on my RAV4‘s CarPlay interface which lets me open the garage door from father away than the HomeLink mirror in the car allows (see the screenshots in the above gallery). Pretty cool.
I did have some issues while testing. At some point the Home icon disappeared from the Control Center on the Apple TV. I could still use the Siri remote to say “show me the driveway camera” and it would work, it just wasn’t a option on the menu anymore. After trying all sorts of stuff (logging out of iCloud, rebooting the Apple TV, etc.) it just came back but I still don’t know why it disappeared in the first place. Another issue is the Nest camera feeds work fine on the Apple TV (although they’re a little delayed due to the transcoding going on in Homebridge on the RasPi), but they don’t work in the Home app unless the device is on the same wireless network as Homebridge. I suspect this is something to do with my VLAN setup, but haven’t been able to figure it out yet. The Nest app still works, so this is less critical, but it would be nice to be able to consolidate everything into the Home app.
HomeSeer is still my main automation system, so I’m not setting up any automations or scenes in HomeKit just yet. I might experiment with some of the geofencing stuff (like when the last person leaves the house, arm the alarm system; or automatically open the garage door when approaching the house), but mostly I’ll stick with HS as the central controller.