I've seen a lot of references to Zigbee2MQTT. If I'm going to be using it through Home Assistant anyway, why should one choose Zigbee2MQTT over say ZHA?
I used to run ZHA on my Home Assistant setup, and switched to Z2M a couple years ago.
At the time it had a longer list of supported devices, and the UI for configuring them was better. It felt kind of “dirty” to layer in yet another protocol (MQTT) between the Zigbee side and the HA side, but it’s worked great.
It could very well be that ZHA today is the same or even better than Z2M, but at the time I made the switchover, there was some device that I couldn’t use with ZHA that Z2M supported.
I haven't really run across any devices that haven't worked in ZHA.
I did recently buy the latest generation of Philips Hue Festavia string lights and Home Assistant (via ZHA) had no clue how to set any of the scenes on it. I was able to use the official app to set scenes via Bluetooth though, while still being able to use ZHA to control power and brightness.
I believe the product was released very near the Christmas period though, so I'm sure it'll have full support in ZHA by next year, might just bring em out early and do it myself if nobody else has done it by then.
And how do they work in HA? Is there lots of setup with each entity because I have to talk to it over MQTT?
I noticed that Z2M seems to say it supports effects on my string lights, do you know if that also means it'll automatically show UI for setting effects in HA?
It's sounding like I made a mistake choosing ZHA thinking it was the "HA native" solution...
Everything just shows up, I don't know about string lights but everything else shows the proper UI, and some of my bulbs show RGB controls, so I assume string lights will too.
Ah, talking about effects (scenes, blinking lights, etc.) that run on the string lights processor, custom Zigbee commands, RGB controls is fairly standardised.
But from all the praise Z2M is getting here I guess I'll have to try it!
One last question if you end up seeing this, can you still group things when using Z2M?
I like home assistant. There's tons of reasons to use it. You get a lot of good enough moving parts out of the box.
MQTT is something you should set up ASAP. There are plenty of reasons to set it up: ESPresnse is a big one (can't say enough about this offering) AWTRIX is another, even if you aren't going to integrate zigbee.
MQTT becomes a cheap and easy way to add data to, and interact with home assistant. And, any device that communicates over MQTT can be controlled by you (custom code, dead easy) outside HA.
Another minor reason is that AFAIK ZHA has to run on the same machine as Home Assistant, while Z2M can run on a different machine, and is less resource intensive than all of HA. So you can plug the zigbee coordinator usb dongle into a centrally located OpenWRT router and run Z2M on it, while your Home Assistant machine can be located anywhere that is convenient.
I can second the sibling comment. I naively started out with ZHA for less moving parts in December. Switched to mosquitto and z2m a week ago because of one completely and one partially unsupported device. It's more involved and if something doesn't work you have to check two (three) different places now, but it seems worth it.
I prefer DeCONZ instead. It's got a really nice UI both the web interface for the pairing and a great live network view over VNC.
ZHA is much more bare bones. I didn't try the mqtt one but I'm not so interested in something that uses mqtt in the middle. Another thing that can break..
I was on deconz, but eventually migrated to Z2M due to compatibility issues with some devices. It’s a far better experience to be honest. Haven’t looked back!
At the time it had a longer list of supported devices, and the UI for configuring them was better. It felt kind of “dirty” to layer in yet another protocol (MQTT) between the Zigbee side and the HA side, but it’s worked great.
It could very well be that ZHA today is the same or even better than Z2M, but at the time I made the switchover, there was some device that I couldn’t use with ZHA that Z2M supported.