Surcharge Core - excès communication prises Zigbee

Bonjour le forum,

Je reviens sur une anomalie qui paralyse mon système domotique. J’ai beaucoup de mal à cerner la cause mais j’avance avec les indices suivants.
Les défauts :

  • certains scénarios deviennent très lents ou "sautent " des étapes, de façon aléatoire.
  • certains devices sous zigbee ne réagissent plus même à une commande manuelle via jeedom alors qu’ils restent joignables d’après l’info « dernière communication ».
    Pour que les "choses rentrent dans l’ordre, soit je reboote le Pi , soit je relance les dépences du plugin zigbee Z2M et la domotique refonctionne normalement, pendant quelques heures.
    J’ai constaté que la charge du CPU peut monter entre 2.5 et 3.2 sans que je ne sollicite la domotique, puis redescend à moins de 1.0 Avec un PI4 cela me semble très (trop)élevé.
    En suivant les log en temps réels , je m’aperçois que mes prises NOOS sous zigbee semblent surcommuniquer.
    prise nous
    J’en déduis que cela peut saturer le PI.
    VOici les logs :

Je joins la santé et la liste des plugins utilisés.
D’après vous que puis-je faire pour résoudre ce problème ?


Bonjour,

Pour rendre la prise NOUS moins bavarde, tu peux jouer sur les paramètres de rapport.

  • soit directement dans jeedom : dans ton équipement, tu choisis ‹ configuration du module ›, puis onglet ‹ Reporting ›
  • soit depuis l’interface Zigbee2MQTT, onglet ‹ Rapport ›

Pour les paramètres currentSummDelivered, rmsVoltage, activePower, rmsCurrent, tu peux régler :
. Min report time : le temps minimum en secondes pour avoir une info de ce paramètre. Si 60, tu n’auras pas de remontée d’info plus fréquentes que 60s.
. Max report time : idem, dans l’autre sens. Si 900, tu auras au moins une info toutes les 15mn, même si le paramètre n’a pas changé de valeur.
. Report change : le delta de valeur du paramètre pour déclencher une remontée d’info ; en tenant compte des réglages précédents.

Tu as la même chose pour les autres équipements zigbee gérés par z2m

Tu peux en plus aussi jouer, depuis l’interface Zigbee2MQTT onglet ‹ Paramètres ›, sur l’option ‹ debounce ›
doc dans Devices and Groups | Zigbee2MQTT

Je n’ai jamais utilisé ; à utiliser avec prudence : voir la doc précédente.

Je crois que la première option (Reporting) demande à l’équipement de n’être pas trop bavard, en zigbee. Ca réduit le trafic de manière globale.
L’option ‹ debounce › ne réduit pas le trafic zigbee ; il réduit le nombre de messages mqtt.

Bonjour,

Apparemment les changements ne tiennent pas si j’augmente les valeurs alors que je valide chaque ligne séparée avec OK.

Ici j’ai passé les valeurs à 60 sec, mais si je quitte le module les valeurs reviennent à 5sec.

N’arrivant pas à réduire la communication de la prise NOOS (située dans la véranda) je l’ai débranchée physiquement.
La communication de ce fait a disparu, mais c’est une autre prise qui prend le relai maintenant :

Je ne comprends vraiment pas ce qui peut bien se passer

En effet, si j’essaie de changer une valeur depuis jeedom, ca génère l’erreur suivante :
Z2M à renvoyé une erreur : z2m: Request 'zigbee2mqtt/bridge/request/device/configure_reporting' failed with error: 'Invalid payload'
Je pense que c’est un bug coté plugin jeezigbee ; ca fonctionnait … avant (il y a longtemps que je n’ai pas fait).

Tu peux aussi le faire depuis l’interface web de Zigbee2MQTT (z2m)

Pour y aller :
menu configurations du plugin. Copier la valeur de l’identifiant, puis, en face de ‹ Accès à la page web z2m ›, cliquer sur le bouton ICI ; ca ouvre l’interface web de z2m.
S’il y a une demande d’authentification, il faut coller la valeur de l’identifiant qu’on a copié auparavant.
La page d’accueil liste les périphériques zigbee gérés ; choisir celui à modifier, et cliquer.
Ca ouvre une page dédiée à ce périphérique. Il faut cliquer sur l’onglet ‹ Rapports ›.
Depuis cette page, tu peux changer les valeurs paramètre par paramètre, et cliquer sur l’action ‹ Appliquer ›

Tu peux ensuite vérifier dans jeedom que le paramètre a bien été modifié.

Merci pour le détail précis que tu indiques à chaque fois.

Dans l’onglet rapport j’ai X fois le même Device est-ce normal ?

Onglet RAPPORT :

je modifie (par exemple) la valeur 5 dans la colonne 1 puis valide pour chaque ligne avec la coche colonne 2. Malgré cela, la valeur retourne à 5 .

Ai-je mal compris ?

Tu as cliqué sur le menu ‹ Rapports › de l’écran d’accueil ; tu vois le rapport de tous tes devices.
Dans la copie d’écran que tu envoies, on voit bien des devices différents …

Je t’avais proposé :

  • depuis le menu d’accueil, tu cliques sur le device désiré ; ou alors, tu choisis le menu ‹ Appareils ›, puis tu choisis ton device.
  • tu arrive maintenant sur la page principale de ton device. Dons les onglets du haut, tu cliques sur l’onglet ‹ Rapports › ; à ce moment, tu ne vois que les paramètres modifiables du device choisi.

Tu es certain ?
quand le le fais, par exemple sur la première ligne (chez toi, rmsVoltage) :
Je change la valeur (chez toi, 5) en 60, par exemple ; puis je clique que la coche action que tu as entourée, correspondant à la même ligne.

Alors, cette ligne semble disparaitre ; en fait, elle passe en dernière ligne ; et chez moi, à la bonne valeur.
C’est un peu déroutant. On peut croire qu’on n’a pas modifié la valeur, car le paramètre affiché à la place n’est plus le même.
Ensuite, si je vérifie dans jeedom, je vois que la valeur a bien changée.

Ca ne fonctionne pas comme cela chez toi ?

1 - Ok pour ta première partie de la réponse.

2 - J’ai refait la procédure de changement de valeur pour voltage : la ligne de disparait pas , la valeur n’est pas prise en compte une fois que j’ai validé. En mettant à) jour, la valeur revient sur 5 , et sous jeedom j’ai toujours 5 .
Par contre si je modifie le nom d’un device en passant par Z2m, le nom est bien mémorisé. Donc mon interface est active.
Si je n’arrive à rien, j’envisage de transférer toute ma domotique sous Pi5 debian 12 car actuellement, alors que tout allait bien il y a quelques temps, je ne peux plus compter sur la fiabilité du système avec le protocle Zigbee. Autant mes devices Zwave restent opérationnels, autant ceux sous Zigbee, disparaissent, se bloquent, un vrai bonheur :wink:

Ca dépasse mes compétences. C’est z2m qui ne prend pas en compte tes modifs …

Voici ce que j’arrive à tracer chez moi lorsque je passe le paramètre rmsVoltage à 60 :
Je travaille depuis l’interface web z2m :

  • menu Journaux, je passe la partie « configuration du niveau de journal » de error à info
    Ca va loguer toutes les logs de niveau info et supérieur
  • menu Appareils, je choisis la prise NOUS. Dans l’onglet Rapports, je passe l’intervalle min de rmsVoltage à 60
  • je reviens au menu Journaux. Je pose ce filtre par texte : transaction

Ca donne ceci chez moi :

[02/05/2026 17:46:32] frontend:api:bridge: Sending {"topic":"bridge/request/options","payload":{"options":{"advanced":{"log_level":"info"}},"transaction":"50ffn-7"}}

[02/05/2026 17:46:32] z2m:mqtt: MQTT publish: topic 'zigbee2mqtt/bridge/response/options', payload '{"data":{"restart_required":false},"status":"ok","transaction":"50ffn-7"}'

[02/05/2026 17:46:53] frontend:api:bridge: Sending {"topic":"bridge/request/device/reporting/configure","payload":{"id":"0xa4c138f687bc8e5c","endpoint":"1","cluster":"haElectricalMeasurement","attribute":"rmsVoltage","minimum_report_interval":60,"maximum_report_interval":900,"option":{},"reportable_change":2,"transaction":"50ffn-8"}}

[02/05/2026 17:46:53] z2m:mqtt: MQTT publish: topic 'zigbee2mqtt/bridge/response/device/reporting/configure', payload '{"data":{"attribute":"rmsVoltage","cluster":"haElectricalMeasurement","endpoint":"1","id":"0xa4c138f687bc8e5c","maximum_report_interval":900,"minimum_report_interval":60,"reportable_change":2},"status":"ok","transaction":"50ffn-8"}'

interprétation :

  • la ligne 3 : frontend:api:bridge: Sending . c’est l’envoi à la prise NOUS de modifier le reporting de rmsVoltage ; avec un id de transaction
  • la ligne 4 : topic 'zigbee2mqtt/bridge/response/device/reporting/configure' . c’est la réponse de la prise NOUS, avec un status « ok »

N’oublie pas, après cela, de remettre le niveau de log à error

J’essaie cela un peu plus tard et te dirai,(j’ai des invités ce soir) :wink:

Bonsoir

Il me semble que j’avais resolu cet exces de surcommunication en mettant à jour le firmware des prises.

Actullement j’ai celui ci

App: 0.0 build 0
Stack: 0.0 build 192

et au cas où voici le parametrage de mes rapports

Re bonjour,

Voici le log info de la prise concernée :

[03/05/2026 09:26:41] frontend:api:bridge: Sending {"topic":"bridge/request/touchlink/scan","payload":{"transaction":"s4ega-1"}}

[03/05/2026 09:28:29] frontend:api:bridge: Sending {"topic":"bridge/request/device/reporting/configure","payload":{"id":"0xa4c1387a67a1473b","endpoint":"1","cluster":"haElectricalMeasurement","attribute":"rmsVoltage","minimum_report_interval":60,"maximum_report_interval":3600,"option":{},"reportable_change":5,"transaction":"s4ega-2"}}

[03/05/2026 09:29:22] frontend:api:bridge: Sending {"topic":"bridge/request/device/reporting/configure","payload":{"id":"0xa4c1387a67a1473b","endpoint":"1","cluster":"seMetering","attribute":"currentSummDelivered","minimum_report_interval":60,"maximum_report_interval":3600,"option":{},"reportable_change":257,"transaction":"s4ega-3"}}

[03/05/2026 09:29:27] frontend:api:bridge: Sending {"topic":"bridge/request/device/reporting/configure","payload":{"id":"0xa4c1387a67a1473b","endpoint":"1","cluster":"haElectricalMeasurement","attribute":"activePower","minimum_report_interval":60,"maximum_report_interval":3600,"option":{},"reportable_change":10,"transaction":"s4ega-4"}}

[03/05/2026 09:29:32] frontend:api:bridge: Sending {"topic":"bridge/request/device/reporting/configure","payload":{"id":"0xa4c1387a67a1473b","endpoint":"1","cluster":"haElectricalMeasurement","attribute":"rmsCurrent","minimum_report_interval":60,"maximum_report_interval":3600,"option":{},"reportable_change":50,"transaction":"s4ega-5"}}

Pour une raison que je connais pas , les 4 valeurs ont bien été mémorisées alors j’ai fait exactement la même procédure qu’hier.

Re bonjour,

J’avais exactement les mêmes paramètres que toi. Maintenant j’ai réussi à rallonger le délai de 5 à 60 sec.
Je n’ai pas su lire la version du firmware de ces prises. Pas trouvé l’endroit !

Même si j’ai réussi à réduire la communication, je ne comprends pas pourquoi mon PI4 se mets en surcharge à certains moments. Je pense que le retard de réponse est en rapport, voire le fait que certaines opérations sont « sautées », mais à cet instant je n’ai ni trouvè la cause , en encore moins le remède.
Dans le cas où je tente d’installer ma sauvegarde Jeedom sur un PI5 sous debian 12 (que j’ai de disponible), en plus de la sauvegarde Jeedom, que dois-je sauvegarder ? Z2M ? SI oui, je n’ai pas trouvé d’onglet suavegarde.

Je suppose que tu va utiliser la même clé zigbee.
Je pense que la sauvegarde jeedom suffit ; il faudra relancer les dépendances après restauration.
Il faudra vérifier que le port du controleur a toujours le même nom, sinon il faudra ajuster.

1 « J'aime »

Au fait, la base de données de jeedom, elle se trouve sur carte SD ?
Si oui, ca pourrait être une cause du ralentissement que tu constates.

Non, j’utilise un disque Msata depuis le début. La carte SD c’est trop risqué.

si tu vas dans le frontend de zigbee2ùmqtt tu le veras

pour y accéder si tu es sur le même réseau que ta box clic sur « ICI » - l’identifiant est celui qui est juste en dessous de « ICI »:

et dans zigbee2mqtt vas dasn « OTA » et clic sur le nuage pour chacune de tes prises

Salut,
J’ai aussi des Nous A1Z, de deux générations différentes avec des firmwares différents.

Les vielles viennent d’Amazon car Domadoo était en rupture pour 1 ou 2 mois.
Ces vielles versions m’ont fait le gag de beaucoup communiquer lors de leur inclusions : A se demander pourquoi une bonne partie de mon réseau voulait passer par elles.
Et puis cela s’est calmé, sans que je ne fasse rien.

Je vérifie ce soir après le boulot