Comment redémarrer Z2M de façon automatique?

Bonjour,

Après un plantage de mes appareils en Zigbee, j’ai trouvé le coupable. Z2mqtt était arrêté. Un simple redémarrage de Z2mqtt via l’interface a suffi pour relancer l’application.
Je ne vois pas de cause connue pour le moment. Peut-être un reboot de la box, je ne sais pas). En tous cas, ce problème est très gênant, un groupe froid ne s’est pas arrêté. Heureusement que je m’en suis aperçu à temps. Mais la prochaine fois….
Alors autant trouver un remède au plus tôt.

Mon coordinateur est une Simlight SLZB-06MU raccordée en Ethernet avec IP fixe (192.168.1.25)
Le chien de garde est activé.
Voici les erreurs relevées dans le journal de Z2M


[2026-06-24 05:30:37] error: 	zh:ember:uart:ash: Port Error: read ETIMEDOUT
[2026-06-24 05:30:37] info: 	zh:ember:uart:ash: Port closed, error=true
[2026-06-24 05:30:37] error: 	zh:ember:ezsp: Fatal error, status=ERROR_SERIAL_INIT. Last Frame: [FRAME: ID=52:"SEND_UNICAST" Seq=3 Len=10]
[2026-06-24 05:30:37] info: 	zh:ember:uart:ash: ASH COUNTERS since last clear:
[2026-06-24 05:30:37] info: 	zh:ember:uart:ash:   Total frames: RX=475, TX=600
[2026-06-24 05:30:37] info: 	zh:ember:uart:ash:   Cancelled   : RX=0, TX=0
[2026-06-24 05:30:37] info: 	zh:ember:uart:ash:   DATA frames : RX=475, TX=125
[2026-06-24 05:30:37] info: 	zh:ember:uart:ash:   DATA bytes  : RX=13118, TX=3394
[2026-06-24 05:30:37] info: 	zh:ember:uart:ash:   Retry frames: RX=0, TX=0
[2026-06-24 05:30:37] info: 	zh:ember:uart:ash:   ACK frames  : RX=0, TX=475
[2026-06-24 05:30:37] info: 	zh:ember:uart:ash:   NAK frames  : RX=0, TX=0
[2026-06-24 05:30:37] info: 	zh:ember:uart:ash:   nRdy frames : RX=0, TX=0
[2026-06-24 05:30:37] info: 	zh:ember:uart:ash:   CRC errors      : RX=0
[2026-06-24 05:30:37] info: 	zh:ember:uart:ash:   Comm errors     : RX=0
[2026-06-24 05:30:37] info: 	zh:ember:uart:ash:   Length < minimum: RX=0
[2026-06-24 05:30:37] info: 	zh:ember:uart:ash:   Length > maximum: RX=0
[2026-06-24 05:30:37] info: 	zh:ember:uart:ash:   Bad controls    : RX=0
[2026-06-24 05:30:37] info: 	zh:ember:uart:ash:   Bad lengths     : RX=0
[2026-06-24 05:30:37] info: 	zh:ember:uart:ash:   Bad ACK numbers : RX=0
[2026-06-24 05:30:37] info: 	zh:ember:uart:ash:   Out of buffers  : RX=0
[2026-06-24 05:30:37] info: 	zh:ember:uart:ash:   Retry dupes     : RX=0
[2026-06-24 05:30:37] info: 	zh:ember:uart:ash:   Out of sequence : RX=0
[2026-06-24 05:30:37] info: 	zh:ember:uart:ash:   ACK timeouts    : RX=0
[2026-06-24 05:30:37] info: 	zh:ember:uart:ash: ======== ASH stopped ========
[2026-06-24 05:30:37] info: 	zh:ember:ezsp: ======== EZSP stopped ========
[2026-06-24 05:30:37] info: 	zh:ember: ======== Ember Adapter Stopped ========
[2026-06-24 05:30:37] error: 	z2m: Adapter disconnected, stopping
[2026-06-24 05:30:37] info: 	z2m: Stopping Zigbee2MQTT (restart=false, code=2, signal=undefined)
[2026-06-24 05:30:37] info: 	z2m:mqtt: MQTT publish: topic 'zigbee2mqtt/bridge/state', payload '{"state":"offline"}'
[2026-06-24 05:30:37] info: 	z2m: Disconnecting from MQTT server
[2026-06-24 05:30:37] info: 	z2m: Stopping zigbee-herdsman...
[2026-06-24 05:30:37] info: 	z2m: Stopped zigbee-herdsman
[2026-06-24 05:30:37] info: 	z2m: Stopped Zigbee2MQTT
[05:30:39] INFO: Preparing to start...
[05:30:39] INFO: Socat not enabled
[05:30:40] INFO: Starting Zigbee2MQTT...
Starting Zigbee2MQTT without watchdog.
[2026-06-24 05:30:44] info: 	z2m: Logging to console, file (filename: log.log)
[2026-06-24 05:30:44] info: 	z2m: Starting Zigbee2MQTT version 2.12.0 (commit #unknown)
[2026-06-24 05:30:44] info: 	z2m: Starting zigbee-herdsman (10.4.0)
[2026-06-24 05:30:44] info: 	zh:ember: Using default stack config.
[2026-06-24 05:30:44] info: 	zh:ember: ======== Ember Adapter Starting ========
[2026-06-24 05:30:44] info: 	zh:ember:ezsp: ======== EZSP starting ========
[2026-06-24 05:30:44] info: 	zh:ember:uart:ash: ======== ASH Adapter reset ========
[2026-06-24 05:30:44] info: 	zh:ember:uart:ash: ASH COUNTERS since last clear:
[2026-06-24 05:30:44] info: 	zh:ember:uart:ash:   Total frames: RX=0, TX=0
[2026-06-24 05:30:44] info: 	zh:ember:uart:ash:   Cancelled   : RX=0, TX=0
[2026-06-24 05:30:44] info: 	zh:ember:uart:ash:   DATA frames : RX=0, TX=0
[2026-06-24 05:30:44] info: 	zh:ember:uart:ash:   DATA bytes  : RX=0, TX=0
[2026-06-24 05:30:44] info: 	zh:ember:uart:ash:   Retry frames: RX=0, TX=0
[2026-06-24 05:30:44] info: 	zh:ember:uart:ash:   ACK frames  : RX=0, TX=0
[2026-06-24 05:30:44] info: 	zh:ember:uart:ash:   NAK frames  : RX=0, TX=0
[2026-06-24 05:30:44] info: 	zh:ember:uart:ash:   nRdy frames : RX=0, TX=0
[2026-06-24 05:30:44] info: 	zh:ember:uart:ash:   CRC errors      : RX=0
[2026-06-24 05:30:44] info: 	zh:ember:uart:ash:   Comm errors     : RX=0
[2026-06-24 05:30:44] info: 	zh:ember:uart:ash:   Length < minimum: RX=0
[2026-06-24 05:30:44] info: 	zh:ember:uart:ash:   Length > maximum: RX=0
[2026-06-24 05:30:44] info: 	zh:ember:uart:ash:   Bad controls    : RX=0
[2026-06-24 05:30:44] info: 	zh:ember:uart:ash:   Bad lengths     : RX=0
[2026-06-24 05:30:44] info: 	zh:ember:uart:ash:   Bad ACK numbers : RX=0
[2026-06-24 05:30:44] info: 	zh:ember:uart:ash:   Out of buffers  : RX=0
[2026-06-24 05:30:44] info: 	zh:ember:uart:ash:   Retry dupes     : RX=0
[2026-06-24 05:30:44] info: 	zh:ember:uart:ash:   Out of sequence : RX=0
[2026-06-24 05:30:44] info: 	zh:ember:uart:ash:   ACK timeouts    : RX=0
[2026-06-24 05:30:44] info: 	zh:ember:uart:ash: ======== ASH stopped ========
[2026-06-24 05:30:44] error: 	zh:ember:uart:ash: Failed to init port with error Error: connect ENETUNREACH 192.168.1.25:6638
[2026-06-24 05:30:44] error: 	z2m: Error while starting zigbee-herdsman
[2026-06-24 05:30:44] error: 	z2m: Failed to start zigbee-herdsman
[2026-06-24 05:30:44] error: 	z2m: Check https://www.zigbee2mqtt.io/guide/installation/20_zigbee2mqtt-fails-to-start_crashes-runtime.html for possible solutions
[2026-06-24 05:30:44] error: 	z2m: Exiting...
[2026-06-24 05:30:44] error: 	z2m: Error: Failed to start EZSP layer with status=HOST_FATAL_ERROR.
    at EmberAdapter.initEzsp (/app/node_modules/.pnpm/zigbee-herdsman@10.4.0/node_modules/zigbee-herdsman/src/adapter/ember/adapter/emberAdapter.ts:666:19)
    at processTicksAndRejections (node:internal/process/task_queues:103:5)
    at EmberAdapter.start (/app/node_modules/.pnpm/zigbee-herdsman@10.4.0/node_modules/zigbee-herdsman/src/adapter/ember/adapter/emberAdapter.ts:1544:24)
    at Controller.start (/app/node_modules/.pnpm/zigbee-herdsman@10.4.0/node_modules/zigbee-herdsman/src/controller/controller.ts:146:29)
    at Zigbee.start (/app/lib/zigbee.ts:70:27)
    at Controller.start (/app/lib/controller.ts:117:29)
    at start (/app/index.js:156:5)

La déconnection est intervenue à 5h30. J’ai pu relancer manuellement quelques heures plus tard sans problème, mais je me demande comment relancer le truc de façon automatique en cas de prochains arrêts.
Il me semblait avoir vu passer un post à ce sujet ici, mais je n’arrive pas à le retrouver.

Des idées ?

Ma configuration


System Information

version core-2026.6.4
installation_type Home Assistant OS
dev false
hassio true
docker true
container_arch aarch64
user root
virtualenv false
python_version 3.14.5
os_name Linux
os_version 6.18.33-haos-raspi
arch aarch64
timezone Europe/Paris
config_dir /config
Home Assistant Community Store
GitHub API ok
GitHub Content ok
GitHub Web ok
HACS Data ok
GitHub API Calls Remaining 5000
Installed Version 2.0.5
Stage running
Available Repositories 3389
Downloaded Repositories 2
Home Assistant Cloud
logged_in false
can_reach_cert_server ok
can_reach_cloud_auth ok
can_reach_cloud ok
Home Assistant Supervisor
host_os Home Assistant OS 18.0
update_channel stable
supervisor_version supervisor-2026.06.2
agent_version 1.9.0
docker_version 29.5.3
disk_total 109.3 GB
disk_used 21.9 GB
nameservers 2a01:cb0c:8d84:e100:3649:5bff:fe3b:9150, 192.168.1.1, fe80::3649:5bff:fe3b:9150
healthy true
supported true
host_connectivity true
supervisor_connectivity true
ntp_synchronized true
virtualization
board rpi4-64
supervisor_api ok
version_api ok
installed_addons Samba share (12.7.0), File editor (6.0.0), Terminal & SSH (10.3.0), Network UPS Tools (0.18.0), MariaDB (3.0.1), Nginx Proxy Manager (2.1.0), Home Assistant Google Drive Backup (0.112.1), Studio Code Server (6.0.1), Mosquitto broker (7.1.0), Zigbee2MQTT (2.12.0-1), ESPHome Device Builder (2026.6.2)
Dashboards
dashboards 4
resources 4
views 25
mode storage
Network Configuration
adapters lo (disabled), wlan0 (enabled, default, auto), hassio (disabled), docker0 (disabled), veth3d9795d (disabled), vethe6e7808 (disabled), vethf86d1d7 (disabled), veth9aedd3d (disabled), vethe50a5d0 (disabled), veth593bea1 (disabled), veth4a12e7c (disabled), veth06bc2aa (disabled), veth697e7c9 (disabled), veth6c17727 (disabled), veth87f691e (disabled), veth3b494e5 (disabled)
ipv4_addresses lo (127.0.0.1/8), wlan0 (192.168.1.20/24), hassio (172.30.32.1/23), docker0 (172.30.232.1/23), veth3d9795d (), vethe6e7808 (), vethf86d1d7 (), veth9aedd3d (), vethe50a5d0 (), veth593bea1 (), veth4a12e7c (), veth06bc2aa (), veth697e7c9 (), veth6c17727 (), veth87f691e (), veth3b494e5 ()
ipv6_addresses lo (::1/128), wlan0 (2a01:cb0c:8d84:e100:23ac:e85f:4f10:a9a1/64, fe80::fc02:4d3a:c6fe:2489/64), hassio (fd0c:ac1e:2100::1/48, fe80::2897:b5ff:feb0:f52f/64), docker0 (fd61:b408:467d::1/64, fe80::a847:cbff:fe3a:8315/64), veth3d9795d (fe80::f43c:e9ff:fea7:b2e9/64), vethe6e7808 (fe80::e09f:62ff:fef1:7e09/64), vethf86d1d7 (fe80::40a7:43ff:fe30:7f6a/64), veth9aedd3d (fe80::b463:14ff:fe41:5297/64), vethe50a5d0 (fe80::38b6:cdff:fe0f:5ba2/64), veth593bea1 (fe80::78f2:35ff:fe75:790e/64), veth4a12e7c (fe80::8012:d5ff:fe61:2094/64), veth06bc2aa (fe80::9822:6aff:fe8f:fe3b/64), veth697e7c9 (fe80::8fc:24ff:fe85:efba/64), veth6c17727 (fe80::8cb6:ecff:fe4b:d3b7/64), veth87f691e (fe80::30:5bff:fef9:28a0/64), veth3b494e5 (fe80::dc09:5dff:fe36:a52e/64)
announce_addresses 192.168.1.20, 2a01:cb0c:8d84:e100:23ac:e85f:4f10:a9a1, fe80::fc02:4d3a:c6fe:2489
Recorder
oldest_recorder_run 28 mai 2026 à 07:15
current_recorder_run 23 juin 2026 à 09:35
estimated_db_size 2915.96 MiB
database_engine sqlite
database_version 3.49.2
___

Est-ce que tu as activé le watchdog de l'application ?

Tu peux aussi faire une automatisation qui surveille l'entité "en cours d'éxécution dans l'intergration "superviseur" :

Et qui relance l'app si son état n'est pas "En cours".

Ton instance s'est arrêté car elle ne semble pas trouver la connexion avec ta clef.

Avant de tout redémarrer tu ferais mieux de te focaliser sur le pourquoi ton dongle n'est pas joignable car c'est ce qui est remonté par les logs de z2m

Tu peux créer une automatisation qui lorsque zigbee2mqtt ''tombe'' de pinger ton dongle et d'envoyer un rapport pour te prévenir

Puis lorsque ton dongle revient a la vie de le relancer z2m

Bonjour,
Ok, il est activé dans l'apps sur la page principale avec l'onglet. Mais as-tu paramétré l'option dans la configuration ?
image

Il faut activer l'onglet Afficher les options de configuration facultatives inutilisées, puis régler le délai du watchdog :

la doc, pour les paramètres :

Dans l'urgence, j'ai plutôt tenté de redémarrer. Surtout que c'était la première fois.

Merci Dom, Mais là çà dépasse mes compétences :face_with_peeking_eye:

Faut que je prenne un peu de temps pour analyser çà.

ta juste a ajouter en mode yaml dans la configuration :

pour relancer au bout d'1 minute:

watchdog: "1"

ou qui relance au bout de 5 min et retente au bout de 10 et 30 min :

watchdog: "5,10,30"

ou en mode UI
image

Hello,

Du coup, plusieurs idées mises en œuvre.

  • Le chien de garde configuré correctement dans le fichier de configuration de Z2m :
    Configuration sur 'défaut'. Ce qui permet de base de relancer Z2m 5 fois. 1, 5, 15, 30 et 60 minutes. C'est déjà pas mal.
  • Mise en place d'une automation (ça me fait drôle de ne pas dire automatisation) qui relance Z2m si Z2m est arrêté ou inconnu pendant 1h30.

Merci pour votre aide. :flexed_biceps::flexed_biceps:
Plus qu'à :crossed_fingers:qu'il n'y ait plus de souci.

Franck