Noob - zigbee ZHA vs zigbee2mqtt

Hi all

I’m a complete noob, in fact I’ve not even started anything yet. I’m looking at buying a refurb dell mini pc 16g ram and 250gb ssd to start and want to start with zigbee but I’m not sure if it’s zigbee or zigbee2mqtt I’m best using. I’m looking to go for something I don’t have to replace for a some time. So which am I best going with zigbee ZHA vs zigbee2mqtt.

Any help would be great, any sorry if it’s not tech terms but I’m a complete noob

Start with ZHA, you can always add another zigbee2mqtt dedicated bridge later if you have devices that are better used with the latter instead of the former.


You could also consider using a Raspberry Pi or a 2nd hand Intel NUC
Home Assistant will happily run on any Pi from a Pi 3 upto a 5
Intel NUC’s are readily available used on ebay

If I had any advice for a Noob, it would be this: Keep it simple!

Home automation in general is a very dynamic field. HA is incredibly flexible and supports just about anything. It is being very actively developed and there are lots and lots of moving parts. Every month there is a new version, followed by several “point” updates.

This is what makes HA so fantastic. But it also means a huge commitment of time for anyone trying to maintain it. Every new integration, every new add-on you use means monitoring change notices and dealing with changes and bugs forever.

That said, ZHA comes built-in. If there’s any way you can use it, I’d recommend that before installing MQTT and Zigbee2MQTT. Those would be just two more things to learn, install, maintain and watch for bugs. I’ve heard some say that they find Z2M more functional. Great, if that’s what you need. I never have. ZHA has been doing everything I need it to for years.


To add to this, one of the best ways I do this is to take advantage of the trigger id name list when you set an id for them then use the choose layer of the actions with a nested triggered by for the conditions with an and/or condition to confirm if say my phone is home or a helper toggle is active before having that automation run.

Actions then run in either sequential order by the placement in the list or I use the parallel list to run them all at the same time.

By setting things up this way automation’s are more consistent and adaptable for what is needed and I don’t need to dive in things like node-red for over the top automations.

I still watch videos and what not from others to see what things are automated and how as it helped to figure this method out heh.

for example:


This has gone straight over my head at the minute as i’ve not started anything yet haha, just doing the research so i buy the right the right stuff for a good stable system. But thanks I’m sure i will come back to read this when i’ve started to build

A good starting point goes a long way to making things easier to understand once you have your hardware heh.

Make sure to also keep regular backups of your stable setup when you make changes to your automations that you want to keep so should you need to restore you spend less time recreating them from scratch. (I keep rotating my virtual machine snapshot out then recopying the files from the nuc to a backup folder on my nas when I am making my changes at the moment since rebuilding my automations from scratch to clean things up lol)

there’s a community guide on the forum with some very valuable information, definitely worth a read.

1 Like

It’s quite a learning curve, but I think you’re starting in the right place. If you’ve decided to focus on Zigbee (a good choice, IMHO) then you can start with hardware which supports that protocol. This will limit the number of integrations (HA jargon for the interface between HA and whatever end device types you have.) It’s tempting to see all the different things HA can support, and want to try them all. That just locks you in to a lot of maintenance overhead.

Pick your HA hardware (as noted above, you don’t need a lot of horsepower), pick a Zigbee coordinator and some Zigbee edge devices, and start pairing them to ZHA. As you learn more, you may decide there are other protocols which are worth investing your time in. ESPHome would be a good next step.

1 Like

+1 …though as Zigbee can still be considered the wild-west compared to Z-Wave I highly recommend doing more research and suggest reading these community guides before buying too much hardware:


+1 in regards to starting with the built-in native ZHA integration for Home Assistant, but if you want to keep options open to allow moving to Zigbee2MQTT as an option later then you should preferably buy a Texas Instruments CC2652P based Zigbee Coordinator instead of others as they are currently not recommended or only experimental, see:

Though can otherwise always buy a new Zigbee Coordinator and convert your old into a Zigbee Router:

1 Like

The coordinator im thinking of getting is the SLZB-06 so i can have this more central in the house for better coverage and hopefully less interference, and if i want to move to 2MQTT i can use the same coordinator. With Routers in all rooms so i should hopefully get a good Mesh across the house.

I have several SLZB-06s currently in my mesh. I have been pleasantly surprised with their performance. My previous coordinators were the Sonoff Dongle P and E and I don’t regret moving on.


Those have been pretty popular especially for setups where you have the hardware in say a basement or location where the signal is normally weak due to the concrete and rebar acting like a faraday since it will let you use POE to place it where you need it.

1 Like

While a remote network-attached Zigbee Coordinator adapter may work you should be aware that they introduce additional complexity with Serial-over-IP proxy tunneling and add your LAN as another SPOF (Single-Point-Of-Failure) for your Zigbee network setup.

I therefore personally believe that in most use bases it will be easier to just use a very long shielded USB extension cable and a tips there is that you can easily achieve up to around 30 meters by using inexpensive “USB Ethernet RJ45 Extender Adapter” converters which easily and practically convert any single CAT5e/CAT6 shielded Ethernet cable with RJ-45 connectors into a very long passive USB extension cable (as it does not use LAN or IP but only converts an RJ45 Ethernet cable to a dumb USB extension cable).

With that solution you can use any Zigbee Coordinator USB dongle and easily replace the USB dongle later too (which should make for a less expensive solution in the long run).

See example →

Note! 30-meter/100-feet is recommended maximum length for USB 2.0 data traffic over a passive cable.

PS: If you however still device to use a network-attached Zigbee Coordinator adapter then always make sure to not use it over Wi-Fi and instead only use it over wired Ethernet, the reason for this is that the serial protocol interface Zigbee Coordinator use are designed for a direct connection and therefore have not been made to handle packet loss or delays (which occur more often over WiFi but can also occur over LAN if power-cycle a network-switch or router depending on setup), see warnings:


I’m with @Hedda on this. It’s just one more stack to maintain. If you’re gong to use Ethernet, buy Ethernet devices. My single USB Zigbee coordinator, near the middle of my house, works great. I’ve sprinkled some mains-powered devices around so Zigbee can build a solid mesh. The edge devices all work well. I have some in the basement and others at the far end of an outbuilding, probably 100’ (30 meters) away from the coordinator.