Home Assistant MacOSX MQTT Zigbee

Hi there!

So I decided to move my Home Assistant from my Pi to a spare laptop. This happens to be a MacBook Pro. I ran through installing VirtualBox and Home Assistant instructions easily. I restored a snapshot and even that works flawlessly. Ofcourse I changed the laptop IP to what the Pi was before to make sure the setup is the same.

Now I’m running into the following problem:
I have this Zigbee dongle. I also have the MQTT broker add-on and integration running and this seems to run fine. An excerpt from its log:

[s6-init] making user provided files available at /var/run/s6/etc...exited 0.
[s6-init] ensuring user provided files have correct perms...exited 0.
[fix-attrs.d] applying ownership & permissions fixes...
[fix-attrs.d] done.
[cont-init.d] executing container initialization scripts...
[cont-init.d] mosquitto.sh: executing... 
[15:59:02] INFO: Setting up user mqtt
[15:59:02] INFO: SSL is not enabled
[cont-init.d] mosquitto.sh: exited 0.
[cont-init.d] nginx.sh: executing... 
[cont-init.d] nginx.sh: exited 0.
[cont-init.d] done.
[services.d] starting services
[15:59:02] INFO: Starting NGINX for authentication handling...
[services.d] done.
[15:59:02] INFO: Starting mosquitto MQTT broker...
1623765542: mosquitto version 1.6.12 starting
1623765542: |-- *** auth-plug: startup
[15:59:03] INFO: Successfully send discovery information to Home Assistant.
[15:59:03] INFO: Successfully send service information to the Supervisor.
1623765542: Config loaded from /etc/mosquitto/mosquitto.conf.
1623765542: Loading plugin: /usr/share/mosquitto/auth-plug.so
1623765542:  ├── Username/password checking enabled.
1623765542:  ├── TLS-PSK checking enabled.
1623765542:  └── Extended authentication not enabled.
1623765542: Opening ipv4 listen socket on port 1883.
1623765542: Opening ipv6 listen socket on port 1883.
1623765542: Opening websockets listen socket on port 1884.
1623765542: Warning: Mosquitto should not be run as root/administrator.
1623765542: mosquitto version 1.6.12 running
1623765542: New connection from 127.0.0.1 on port 1883.
1623765542: Socket error on client <unknown>, disconnecting.
1623765831: New connection from 172.30.32.1 on port 1883.
1623765831: New client connected from 172.30.32.1 as 21sVfseSIVNaLwMLkJsdlZ (p1, c1, k60).
1623765831: Client 21sVfseSIVNaLwMLkJsdlZ disconnected.
1623765831: New connection from 172.30.32.1 on port 1883.

Besides that I have the Zigbee2MQTT add-on installed as well with the following configuration:

data_path: /config/zigbee2mqtt
external_converters: []
devices: devices.yaml
groups: groups.yaml
homeassistant: true
permit_join: false
mqtt:
  base_topic: zigbee2mqtt
  user: XXXXX
  password: XXXXX
  server: mqtt://192.168.1.51:1883
serial:
  port: /dev/ttyACM0
advanced:
  log_level: warn
  pan_id: 6754
  channel: 11
  network_key:
    - 1
    - 3
    - 5
    - 7
    - 9
    - 11
    - 13
    - 15
    - 0
    - 2
    - 4
    - 6
    - 8
    - 10
    - 12
    - 13
  availability_blocklist: []
  availability_passlist: []
device_options: {}
blocklist: []
passlist: []
queue: {}
frontend:
  port: 8099
experimental: {}
socat:
  enabled: false
  master: pty,raw,echo=0,link=/tmp/ttyZ2M,mode=777
  slave: tcp-listen:8485,keepalive,nodelay,reuseaddr,keepidle=1,keepintvl=1,keepcnt=5
  options: '-d -d'
  log: false

I checked the IP address and this is the IP of the Macbook so that should all be fine. I also created a user that is configuration on the XXXXXXX marks. All should be fine I guess, but in the logs of the Zigbee2MQTT I keep getting the following message(s):

[s6-init] making user provided files available at /var/run/s6/etc...exited 0.
[s6-init] ensuring user provided files have correct perms...exited 0.
[fix-attrs.d] applying ownership & permissions fixes...
[fix-attrs.d] done.
[cont-init.d] executing container initialization scripts...
[cont-init.d] socat.sh: executing... 
[17:09:24] INFO: Socat not enabled, marking service as down
[cont-init.d] socat.sh: exited 0.
[cont-init.d] zigbee2mqtt.sh: executing... 
[17:09:24] INFO: MQTT available, fetching server detail ...
[17:09:24] INFO: Previous config file found, checking backup
[17:09:24] INFO: Creating backup config in '/config/zigbee2mqtt/.configuration.yaml.bk'
[17:09:24] INFO: Adjusting Zigbee2mqtt core yaml config with add-on quirks ...
[cont-init.d] zigbee2mqtt.sh: exited 0.
[cont-init.d] done.
[services.d] starting services
[services.d] done.
[17:09:25] INFO: Handing over control to Zigbee2mqtt Core ...
> [email protected] start /app
> node index.js
Zigbee2MQTT:error 2021-06-15 17:09:39: Not connected to MQTT server!

And it repeats the last line over and over since its polling obviously…

I’ve tried to scroll, read, reinstall through countless of articles about issues with zigbee, but like Bonny Tyler would say ‘I need a hero…’ who can help me figure this one out.

Please help! Argh!!

Ok, so what worked for me was:

  • disable and remove the MQTT integration
  • disable and uninstall the MQTT Broker add-on
  • disable and uninstall the Zigbee2MQTT add-on
  • restart HA (or when requested)
  • now reinstall the MQTT Broker add-on
  • add the login credentials for the MQTT Broker in its configuration
  • start the MQTT Broker add-on
  • install and activate the MQTT integration
  • install Zigbee2MQTT add-on
  • dont add any credentials in its config (auto discovery mode)

I gues due to my migration to another system and having a snapshotted start the MQTT didn’t work well…