zigbee2mqtt doesn't validate the config file very well
I've been meaning to switch to zigbee2mqtt for ages, but just did it on a whim. It was pretty straight forward, aside from a weird error:
"MQTT error: Connection refused: Not authorized"
in the zigbee2mqtt logs. Which was weird, since I'd copy and pasted the username and password from the mqtt broker configuration to the zigbee2mqtt one. After a bunch of looking at similar questions online, I realised that I had copied the username and password, but had hand-typed the config field names - I'd used username in the zigbee2mqtt config not user, and apparently that's not an error.