So I spent most of yesterday staring at a computer screen which is definitely not how I prefer to spend my weekends.
When you work in technology there’s an understanding that some portion of your nights and weekends you’ll spend ‘practicing’ for your day job. If you’re in a startup there’s the added fun that often your job SPANS nights and weekends. For once though neither of those were a factor, instead I was doing projects for uh.. fun? At least that was the intent. I’ve been playing around with various IoT techs over the past year and decided I’d take the plunge and look closer at homeassistant.io.
As a little background here’s what I’m running in the house:
- A Wink hub. Attached to it I have:
- An Amazon Echo
- Two Harmony hubs for media centers (LR, bedroom)
- 1 Sonos Play 1
- About 5 different Belkin Wemo outlets.
So the Wink hub app controls everything but the Wemo outlets. Alexa controls the Wemo outlets but not anything else really. The Harmony hub can’t do much besides device on/off or input switching. I’d tried using Yonomi which is supposed to support all of it, but found it sort of clunky and hit or miss a few months ago.
On the surface, Home Assistant seems to be able to do a lot. Not only does it control all these various things but it can pull in data from the internet AND create events based off of data from the devices. A good example you ask?
“If the Sonos speaker in the Living Room plays a song by Rhianna, make all the lights in the house flash 3 times.”
The promise is there, the potential is there, but frankly the reality is … not quite there.
I first ran into problems loading it up on a Centos vm; you need Python 3.5 or greater to install Home Assistant. Great, no problem, except RHEL distributions don’t have that except for Fedora. Ok, build from source here we go… and I had to make sure to leave Python 2.6 in place because system tools like Yum in Centos won’t work with 3.5. Hurrah. Once I got it finally installed and started looking at it though the reality is that this is still a very, very alpha product.
- Alexa connectivity required signing for an Echo developer account and running scripts in AWS Lamda.
- My Plex media server, while recognized, would never show what was playing. As it turns out their integration only works if the media is playing locally on the media server- so my Amazon FireTV playing media wouldn’t trigger it.
- I couldn’t install the Amazon FireTV plugin through Python’s pip system because…*drumroll*… it required Python 2.6.
- The UI page would get “confused” and not update on/off states if something other than Home Assistant triggered it.
- I could control my Sonos; but only basic on/off/pause/skip functionality. WTF.
Summary: It’s not an home automation control panel. It’s more of a back-end Smart Home programming type infrastructure that needs a good bit more work. Picture a localized IFTTT for your house and you’re probably closer to the reality of what it’s best at. I can see a future when we start playing anything from the “movie” library on Plex or from Netflix/Hulu on my FireTV, the living room lights wood dim and any music playing gets turned off.
On a whim I reinstalled Yonomi and played with it for 10 minutes and found it to be much, much more stable and responsive. I’ll probably be using that for faster home automation instead.