Choosing a Hub - Revisited

Back in February, I wrote about why I’d picked Hubitat over HomeAssistant as my home automation hub. This is what I had to say about each of them at the time:

  • HomeAssistant came next - Open Source, Python-based so I could develop for it if I needed to, a huge ecosystem of supported devices, and able to run on Raspberry Pi’s without any issues at all, it looked like it would fulfil all of my dreams, and for a while it did. The biggest issue I had with HomeAssistant was having to keep track of all the configuration settings in YAML files. I work with code every day for a living, I’m happy working with YAML, but for my home automation setup I just want stuff to work, and I want it to be easy to configure. I’ve seen that in more recent versions of HomeAssistant the web interface lets you configure a lot more via “point and click”, so is a great deal more use friendly, and thousands of people use it every day so it’s definitely worth looking at.

  • Hubitat was something I found whilst looking for a new hub. Like OpenHAB and HomeAssistant it’s entirely local for the vast majority of device control, has a community who are actively developing drivers and apps for new devices, and can talk to a significant number of different brands and types of device from Hue bulbs to ZWave blind controllers. It also has the advantages that LightwaveRF had of being backed by a commercial company, and having a pleasant user interface, so it really did tick all the boxes for me. I’ve been using it a year now and it’s been excellent!

It’s just over 18 months since I adopted Hubitat and in the past few weeks I’ve switched wholesale back to using HomeAssistant running on a RaspberryPi, so why have I done this, and would I still recommend Hubitat?

What happened with Hubitat?

On the face of it, Hubitat is awesome - it supports a large number of devices, comes with Zigbee and ZWave radios built in, has a really friendly community and is backed by a company, so what’s not to like?

The crux of it is very simple - for a commercial product, I had to do too much myself.

The automation engine is powerful, but the interface is clunky and editing the rules often resulted in losing settings, so I ended up using a 3rd party solution called Webcore.

Hubitat is based in the US, so it’s little surprise that the majority of the devices they support are US-centric, however there is definitely a sense that whilst the developers will do their best to write “official drivers” for devices, most of the work to integrate with other platforms comes from the community - one of the reasons I switched away from HomeAssistant in the first place.

Setting up dashboards is another thing that takes up a lot of time. If you want a dashboard that shows you your items as a grid then it will work perfectly well. If you want to customise beyond that then you’ll need to look at other solutions or spend a lot of time writing CSS.

In short, although Hubitat was always meant to be a half-way house between the commercial offerings such as Control4 and “DIY” offerings like HomeAssistant, I found that it was more DIY than it was a “finished product”.

Now, I realise that Hubitat is a small team working on their product, and I don’t want to take anything away from what they’ve achieved so far, it just wasn’t working very well for me.

The final decision to migrate away was made when I decided to fit some Velux windows to my house. Velux is a global brand, they’ve been doing smart windows and blinds for years, they’ve even got a publicly documented API to integrate with other platforms, but Hubitat didn’t have support for it. HomeAssistant did.

So what’s happened with HomeAssistant?

The first thing that caught my eye about Home Assistant was the number of integrations that had been made “official” since I’d last looked at it. Alongside the aforementioned Velux control, there was a big increase in the number of energy monitoring integrations (something I want to start looking at in the near future) as well as some beautiful looking dashboards like the one in the header image for this post by Daniel Jarhult.

The second thing was that any plugins that needed to be written were in Python. As I’ve mentioned before, this is my preferred language to code in and my attempts to learn Groovy to extend Hubitat had been fruitless, so switching back to Python made sense.

The third realisation was that although creating advanced automations in Home Assistant was a bit more “clunky” than in Hubitat via the UI, I could easily switch to using YAML and get some quite decent results.

The final thing that tipped the scales for me was that a lot of the integration with third-party devices such as ones that were Zigbee-based could be easily farmed out to other devices on my network to improve speed, reliability, and ease of upgrade via platforms such as ZigBee2MQTT or ESPHome if I wanted to build my own sensors and actuators.

In short, for someone who has experience of software development, hardware development, building out infrastructure, and managing that infrastructure, Home Assistant gives me more power and flexibility than Hubitat and will run on pretty much any hardware I need it to.

Has it worked?


In the few short months since switching back to Home Assistant, I’ve rapidly achieved and then surpassed feature parity with my previous Hubitat setup. All the previous automations about controlling lights when walking into the room or similar are up and running, as are some new ones around detecting motion from my CCTV cameras and reacting appropriately.

I’ve been able to build out some new, good looking dashboards that have met with approval from the rest of the family, and the ability to scrape home assistant data into prometheus without having to use my intermediate application that I wrote for Hubitat is fantastic.

In short, I’m now looking to upgrade the hardware that Home Assistant runs on from the current Raspberry Pi to a dedicated 1U server or similar, and I’m constantly trawling through the hundreds of integrations looking for ideas on what to integrate next.

Hubitat is still a great place to start on your home automation journey, and I’d definitely recommend it over a closed ecosystem such as Google Nest or Phillips Hue, but if you’re serious about your home automation then Home Assistant is the place you want to be.

Share Comments
comments powered by Disqus