Plusieurs instances Zigbee2MQTT dans HA

Bonjour,

Je souhaite disposer d’une 2ème instance Zigbee2MQTT au sein même de Home Assistant.

Ce principe est décrit ici (https://www.reddit.com/r/homeassistant/comments/yrend5/multiple_zigbee2mqtt_instances_for_multiple/) ou encore ici (https://youtu.be/ZBbl0I-Zpuk?si=G8w_qZgW7dB7BW9P).

Je souhaite privilégier cette option plutôt que d’installer Zigbee2MQTT sur une 2ème instance dédiée/externe.

J’ai suivi la procédure permettant d’installer cette deuxième instance.

La deuxième instance s’installe, se lance et s’affiche dans la barre latérale en dessous de la 1ère.

Problème : Quand je clique sur la 2ème instance, je vois exactement les mêmes devices que la 1ère alors que la liste devrait être vide.

Il semble donc y avoir une collision des configurations des deux instances Zigbee2MQTT. Cette « double » installation n’a pas marché tout de suite et j’ai peut-être cassé quelque chose…

Plusieurs informations complémentaires :

  • Les 2 instances ont des « base topics » MQTT différents. Aussi bien dans les paramètres de Zigbee2MQTT que dans Zigbee2MQTT même.

  • quand j’utilise File Editor pour accéder depuis HA aux fichiers situés à /homeassistant/zigbee2mqtt/configuration.yaml, je vois

*serial:*
*port: tcp://192.168.x.x:6638*
*adapter: zstack*
*baudrate: 115200*

il s’agit de la configuration de ma 2ème instance et non de la 1ère. Je ne sais d’ailleurs pas comment sont stockées en parallèle les configurations. Normalement (avant installation de la 2ème instance) je vois ceci dans ce fichier :

*serial:*
*port: >-*
*/dev/serial/by-id/usb-ITEAD_SONOFF_Zigbee_3.0_USB_Dongle_Plus_V2_xxxxxxxx*
*adapter: ember*

Ça corroborerait le fait que la configuration de la 2ème instance Zigbee2MQTT écrase la configuration de la 1ère.

  • si je reboote HA, la 1ère instance de Zigbee2MQTT ne se lance plus. Les logs montrent qu’il y a un problème dans le fichier de configuration:
    "[2024-09-29 16:16:41] error: z2m: Error: [BACKUP] Current backup file is not for EmberZNet stack."
    Pas forcément étonnant vu le point précédent.

Ayant démarré sur HA il y a quelques semaines, je ne suis pas encore totalement au clair quant à la structure de fichiers/containers de HA. Je ne sais donc pas où chercher pour voir d’où pourrait venir le problème et/ou comment nettoyer ma configuration actuelle si elle a un problème.

Je n’ai rien trouvé sur le forum. La discussion qui s’approche le plus de mon problème est celle-ci : Multi passerelle zigbee - #14 par Mathis_Degreef … mais je n’ai pas le problème identifié dans le post.

Ma configuration est la suivante :

version | core-2024.10.1
os_version | 6.6.46-haos
arch | x86_64
timezone | Europe/Paris
config_dir | /config
host_os | Home Assistant OS 13.1
update_channel | stable
supervisor_version | supervisor-2024.09.1
installed_addons | Mosquitto broker (6.4.1), Zigbee2MQTT (1.40.2-1), File editor (5.8.0), Terminal & SSH (9.15.0)

Merci d’avance pour tout conseil qui m’aiderait à orienter mes recherches et à mieux comprendre ce qui se passe.

S.F

Hello

Pourquoi 2 instances de z2m ?

Sinon, tu as bien modifié le data path dans la configuration de ta deuxième instance, qui ne doit pas être identique à la première ?

@+

1 « J'aime »

Merci pour ta réponse.

> Pourquoi 2 instances de z2m ?
J’ai un site distant connecté en VPN permanent et sur lequel je souhaite installer 1 voire 2 capteurs max. Je dois donc installer sur ce site un nouveau coordinateur (j’ai un SLZB06). D’où la 2ème instance.

> Sinon, tu as bien modifié le data path dans la configuration de ta deuxième instance, qui ne doit pas être identique à la première ?
non. Ta remarque rejoint mes interrogations concernant la localisation des données. Si tu sais où se trouve le data path de chacune des instances, je suis preneur de l’info :slight_smile: Je vais regarder aussi de mon côté comment trouver le path lorsque c’est installé depuis le store.

encore merci.

j’allais te conseiller la modif du 2ème base topic mais tu l’as déjà fait, mon cas est différent mes deux z2m sont déportés

Regarde là apparemment il a réussi

Merci pour le partage du lien. Cela m’a aidé à trouver la solution.

Mon problème venait bien des fichiers configuration.yaml des deux instances de Zigbee2MQTT qui pointaient vers le même chemin. Je n’avais pas vu jusqu’à présent où le modifier… c’est en fait tout simple.

Dans l’onglet « Configuration » de Zigbee2MQTT, il faut donc :

  • avoir un datapath unique. on peut le préciser dans un champ tout en haut de l’onglet. (ce qui me posait problème).

« /config/zigbee2mqtt » pour la 1ère instance,
« /config/zigbee2mqtt2 » pour la 2ème par exemple, …

  • un numéro de port différent/unique pour chaque instance :

« slave: tcp-listen:8485 » pour la 1ère instance
« slave: tcp-listen:8486 » pour la 2ème par exemple.

  • Il faut aussi changer dans la partie Network de ce même onglet le numéro afin de le faire correspondre au numéro mentionné plus haut.

  • les mêmes paramètres MQTT à l’exception du base topic qui doit être différent

base_topic: zigbee2mqtt pour la 1ère instance
base_topic: zigbee2mqtt2 pour la 2ème par exemple.

Je ne comprends pourquoi les tuto que j’ai consultés ne mentionnent pas cette histoire de data path. Toud ces changements ont été faits une fois la 2ème instance de Zigbee2MQTT installée mais avant de la lancer pour la 1ère fois.

En espérant que cela aide d’autres personnes.

3 « J'aime »

Bonjour
J’essaie de créer une deuxième instance Z2M
J’ai installer un dexième module Z2M
pour ce module j’ai bien indiqué un data_path différent ( je ne vois pas de répertoire /config
j’ai donc avec fileeditor crée un répertoire /homeassistant/zigbee2mqtt2, mais dans ce répertoire le fichier ne configuration (yaml) n’apparait pas
je ne peux lancer cette instance
il y a certainement un oubli ou une erreur que vous allez m’aider a trouver
merci

EDIT : faut il un deuxième broker mosquitto pour cette instance ?
je ne comprends pas socat ? normalement inutile puisque la clé est distante ?

les logs :

:59] INFO: Socat not enabled
[13:40:59] INFO: Starting Zigbee2MQTT...
Starting Zigbee2MQTT without watchdog.
AssertionError [ERR_ASSERTION]: The expression evaluated to a falsy value:
  (0, node_assert_1.default)(result instanceof Object)
    at Object.read (/app/lib/util/yaml.ts:24:15)
    at read (/app/lib/util/settings.ts:322:20)
    at Object.getPersistedSettings (/app/lib/util/settings.ts:437:21)
    at migrateIfNecessary (/app/lib/util/settingsMigration.ts:494:38)
    at onboard (/app/lib/util/onboarding.ts:534:9)
    at start (/app/index.js:137:25)

J’ai mis la configuration dans le fichier yaml .
visiblement il est lu lors du lancement ,mais ne focntionne pas. les logs sont différents

[15:01:58] INFO: Preparing to start...
[15:01:58] INFO: Socat not enabled
[15:01:59] INFO: Starting Zigbee2MQTT...
Starting Zigbee2MQTT without watchdog.
[2025-06-16 15:02:02] info: 	z2m: Logging to console, file (filename: log.log)
[2025-06-16 15:02:03] info: 	z2m: Starting Zigbee2MQTT version 2.4.0 (commit #unknown)
[2025-06-16 15:02:03] info: 	z2m: Starting zigbee-herdsman (4.1.0)
[2025-06-16 15:02:03] info: 	zh:ember: Using default stack config.
[2025-06-16 15:02:03] info: 	zh:ember: ======== Ember Adapter Starting ========
[2025-06-16 15:02:03] info: 	zh:ember:ezsp: ======== EZSP starting ========
[2025-06-16 15:02:03] info: 	zh:ember:uart:ash: ======== ASH Adapter reset ========
[2025-06-16 15:02:03] info: 	zh:ember:uart:ash: Socket ready
[2025-06-16 15:02:03] info: 	zh:ember:uart:ash: ======== ASH starting ========
[2025-06-16 15:02:06] info: 	zh:ember:uart:ash: ======== ASH Adapter reset ========
[2025-06-16 15:02:06] info: 	zh:ember:uart:ash: ======== ASH starting ========
[2025-06-16 15:02:06] info: 	zh:ember:uart:ash: ======== ASH connected ========
[2025-06-16 15:02:06] info: 	zh:ember:uart:ash: ======== ASH started ========
[2025-06-16 15:02:06] info: 	zh:ember:ezsp: ======== EZSP started ========
[2025-06-16 15:02:07] warning: 	zh:ember:uart:ash: Frame(s) in progress cancelled in [1ac1020b0a527e]
[2025-06-16 15:02:07] error: 	zh:ember:uart:ash: Received unexpected reset from adapter, with reason=RESET_SOFTWARE.
[2025-06-16 15:02:07] error: 	zh:ember:uart:ash: ASH disconnected: ASH_ERROR_NCP_RESET | Adapter status: ASH_NCP_FATAL_ERROR
[2025-06-16 15:02:07] error: 	zh:ember:uart:ash: Error while parsing received frame, status=HOST_FATAL_ERROR.
[2025-06-16 15:02:07] error: 	zh:ember: Adapter fatal error: HOST_FATAL_ERROR
[2025-06-16 15:02:20] error: 	zh:ember:ezsp: ERROR Transaction failure; status=ASH_ERROR_TIMEOUTS. Last Frame: [FRAME: ID=0:"VERSION" Seq=0 Len=0].
[2025-06-16 15:02:20] error: 	z2m: Error while starting zigbee-herdsman
[2025-06-16 15:02:20] error: 	z2m: Failed to start zigbee-herdsman
[2025-06-16 15:02:20] error: 	z2m: Check https://www.zigbee2mqtt.io/guide/installation/20_zigbee2mqtt-fails-to-start_crashes-runtime.html for possible solutions
[2025-06-16 15:02:20] error: 	z2m: Exiting...
[2025-06-16 15:02:21] error: 	z2m: Error: ASH_ERROR_TIMEOUTS
    at Ezsp.ezspVersion (/app/node_modules/.pnpm/zigbee-herdsman@4.1.0/node_modules/zigbee-herdsman/src/adapter/ember/ezsp/ezsp.ts:1416:19)
    at EmberAdapter.emberVersion (/app/node_modules/.pnpm/zigbee-herdsman@4.1.0/node_modules/zigbee-herdsman/src/adapter/ember/adapter/emberAdapter.ts:1403:63)
    at EmberAdapter.initEzsp (/app/node_modules/.pnpm/zigbee-herdsman@4.1.0/node_modules/zigbee-herdsman/src/adapter/ember/adapter/emberAdapter.ts:670:9)
    at EmberAdapter.start (/app/node_modules/.pnpm/zigbee-herdsman@4.1.0/node_modules/zigbee-herdsman/src/adapter/ember/adapter/emberAdapter.ts:1548:24)
    at Controller.start (/app/node_modules/.pnpm/zigbee-herdsman@4.1.0/node_modules/zigbee-herdsman/src/controller/controller.ts:133:29)
    at Zigbee.start (/app/lib/zigbee.ts:71:27)
    at Controller.start (/app/lib/controller.ts:102:13)
    at start (/app/index.js:149:5)
    at start (/app/index.js:149:5)

Bonjour,

C’est quoi le dongle que tu utilises pour ta deuxième instance de Z2M ?

bonjour
un dongle SLZB-06M. connecté en wifi au lan

avec la configuration modifiée je peux lancer la deuxième instance, mais je ne peux appairer des terminaux. il y a encore qq chose de faux

 2025-06-16 15:39:52z2m: Network scan finished
info 2025-06-16 15:39:52z2m:mqtt: MQTT publish: topic 'zigbee2mqtt/bridge/response/networkmap', payload '{"data":{"routes":false,"type":"raw","value":{"links":[],"nodes":[{"failed":[],"friendlyName":"Coordinator","ieeeAddr":"0x84b4dbfffec9d466","networkAddress":0,"type":"Coordinator"}]}},"status":"ok","transaction":"o7rcw-1"}

Du coup, actuellement tu n’as plus d’erreur lors du démarrage de ta deuxième instance ?

@Cleya
oui
je peux voir la fenêtre avec les appareils la carte etc ; sauf que c’est vide à ce jour

Tu as tenté d’appairer un appareil sur ton dongle SMLIGHT ?

@Cleya
oui oui c’est pour cela que je dis qu’il y a encore qq chose qui cloche, cela ne se fait pas

Ton appareil est à proximité de ton dongle lors de ta tentative d’appairage ? Le décompte se fait et tu arrives au bout sans que l’appareil soit détecté ?

oui oui tout est à moins de 2 m !!

un partie du log si cela parle à QQ

[2025-06-16 15:50:00] info: 	z2m:mqtt: MQTT publish: topic 'homeassistant/binary_sensor/122105103981011015010911311611650_0x84b4dbfffec9d466/connection_state/config', payload '{"device":{"hw_version":"EmberZNet 8.0.2 [GA]","identifiers":["zigbee2mqtt_bridge_0x84b4dbfffec9d466"],"manufacturer":"Zigbee2MQTT","model":"Bridge","name":"Zigbee2MQTT Bridge","sw_version":"2.4.0"},"device_class":"connectivity","entity_category":"diagnostic","name":"Connection state","object_id":"zigbee2mqtt_bridge_connection_state","origin":{"name":"Zigbee2MQTT","sw":"2.4.0","url":"https://www.zigbee2mqtt.io"},"payload_off":"offline","payload_on":"online","state_topic":"zigbee2mqtt2/bridge/state","unique_id":"bridge_0x84b4dbfffec9d466_connection_state_zigbee2mqtt2","value_template":"{{ value_json.state }}"}'
[2025-06-16 15:50:00] info: 	z2m:mqtt: MQTT publish: topic 'homeassistant/binary_sensor/122105103981011015010911311611650_0x84b4dbfffec9d466/restart_required/config', payload '{"availability":[{"topic":"zigbee2mqtt2/bridge/state","value_template":"{{ value_json.state }}"}],"availability_mode":"all","device":{"hw_version":"EmberZNet 8.0.2 [GA]","identifiers":["zigbee2mqtt_bridge_0x84b4dbfffec9d466"],"manufacturer":"Zigbee2MQTT","model":"Bridge","name":"Zigbee2MQTT Bridge","sw_version":"2.4.0"},"device_class":"problem","enabled_by_default":false,"entity_category":"diagnostic","name":"Restart required","object_id":"zigbee2mqtt_bridge_restart_required","origin":{"name":"Zigbee2MQTT","sw":"2.4.0","url":"https://www.zigbee2mqtt.io"},"payload_off":false,"payload_on":true,"state_topic":"zigbee2mqtt2/bridge/info","unique_id":"bridge_0x84b4dbfffec9d466_restart_required_zigbee2mqtt2","value_template":"{{ value_json.restart_required }}"}'
[2025-06-16 15:50:00] info: 	z2m:mqtt: MQTT publish: topic 'homeassistant/button/122105103981011015010911311611650_0x84b4dbfffec9d466/restart/config', payload '{"availability":[{"topic":"zigbee2mqtt2/bridge/state","value_template":"{{ value_json.state }}"}],"availability_mode":"all","command_topic":"zigbee2mqtt2/bridge/request/restart","device":{"hw_version":"EmberZNet 8.0.2 [GA]","identifiers":["zigbee2mqtt_bridge_0x84b4dbfffec9d466"],"manufacturer":"Zigbee2MQTT","model":"Bridge","name":"Zigbee2MQTT Bridge","sw_version":"2.4.0"},"device_class":"restart","name":"Restart","object_id":"zigbee2mqtt_bridge_restart","origin":{"name":"Zigbee2MQTT","sw":"2.4.0","url":"https://www.zigbee2mqtt.io"},"payload_press":"","unique_id":"bridge_0x84b4dbfffec9d466_restart_zigbee2mqtt2"}'
[2025-06-16 15:50:00] info: 	z2m:mqtt: MQTT publish: topic 'homeassistant/select/122105103981011015010911311611650_0x84b4dbfffec9d466/log_level/config', payload '{"availability":[{"topic":"zigbee2mqtt2/bridge/state","value_template":"{{ value_json.state }}"}],"availability_mode":"all","command_template":"{\"options\": {\"advanced\": {\"log_level\": \"{{ value }}\" } } }","command_topic":"zigbee2mqtt2/bridge/request/options","device":{"hw_version":"EmberZNet 8.0.2 [GA]","identifiers":["zigbee2mqtt_bridge_0x84b4dbfffec9d466"],"manufacturer":"Zigbee2MQTT","model":"Bridge","name":"Zigbee2MQTT Bridge","sw_version":"2.4.0"},"entity_category":"config","name":"Log level","object_id":"zigbee2mqtt_bridge_log_level","options":["error","warning","info","debug"],"origin":{"name":"Zigbee2MQTT","sw":"2.4.0","url":

Du coup, je ne vois pas car si Z2M démarre, il n’y a pas trop de raison pour que le dongle ne fonctionnepas correctement. Tu as testé avec un autre appareil ?

Oui bien sur un repeteur et une prise intelligente

je peux toujours redémarrer et re tester ??

Oui, essaie de redémarrer complètement Home Assistant et regarde s’il n’y a rien dans les journaux une fois le redémarrage achevé

l’apparaige ne fonctione toujourd pas . bon je vais continuer à chercher de mon cote

est ce que le fichier d’état peut aider ?