Grosses lenteurs pour ouvrir le plugin et démon capricieux

Bonjour,

J’ai depuis ce weekend des soucis avec le plugin.

Jusqu’ici, il fonctionnait sans soucis depuis des mois sur une conf virtualisée PC via Proxmox et une clé Conbee 2.

Ce weekend, j’ai validé la mise à jour à la dernière version de Jeedom et du plugin;

Là, le démon du plugin a refusé de démarrer (KO au bout de quelques secondes).

La mise à jour (très lente) des dépendances n’a rien changé

J’ai tenté une restauration de la sauvegarde pré mise à jour mais ça n’a rien changé.

J’ai du récupérer une sauvegarde de ma machine virtuelle pour que tout refonctionne.

Mais depuis ce moment, le démon a du mal à démarrer (je dois le lancer manuellement parfois)

J’ai également un gros délai 2 ou 3 minutes pour que la page de conf du plugin s’affiche.

Ce soir, j’ai rajouté un module de type TS0001_power et là, quand j’ouvre la liste de mes modules dans le plugin, ça met bien 5 minutes à s’afficher et quand la page s’affiche enfin, le plugin semble ne pas avoir récupéré l’image correspondant à ce module précis (icone fichier « cassé »)

L’image apparaît bien sous z2m

Je ne sais pas si tout ça vient de mon installation, du plugin ou de z2m, mais il semble au moins y avoir un bug dans le plugin sur la récupération de cette image qui met le bazar si ça marche pas ou mal…

Je ferais bien une MàJ des dépendances, mais jusqu’ici, ça me plante le plugin…

(entre temps, jai passé la mise à jour Jeedom puis celle du plugin sans soucis et sans changement de comportement)


Informations Jeedom

Core : 4.4.9 (V4-stable)
DNS Jeedom : non

Plugin : JeeZigbee
Version : 2024-07-17 01:01:52 (stable)
Statut Démon : Démarré - (2024-07-29 00:05:11)

Bonjour

C’est bizarre, je ne vois pas la page santé et sur Proxmox (charge CPU et mémoire).

A vu d’œil mémoire saturée ou problème de SSD.

Cordialement

Bonjour
Non l’image n’explique pas les lenteurs c’est juste de l’affichage.

Pour le reste il n’y a pas la page santé de jeedom pas les logs du démons donc impossible de t’aider c’est dommage.

Bonjour,

Voilà la page santé :


J’avais pas posté car je ne voyais rien de problématique.

Pour la question du SSD, ça n’est effectivement pas ça car j’ai un deuxième serveur Proxmox et j’ai mis l’image dessus avec les mêmes soucis.

Pour les logs, je n’arrive même pas à afficher le log z2md, j’ai 700Mo de log depuis hier soir où j’ai tout vidé.
J’ai mis un extrait en PJ pendant l’accès au plugin ainsi qu’à sa page de conf (plus de 3Mo en quelques minutes pour z2md)

z2m.log (1,1 Mo)
z2md.log (3,6 Mo)

Déjà repassé les logs en mode erreur et pas débug ça se remplira moins vite et consommera moins de ressources

Je vois de soucis sur tes logs là donc ça vient d’ailleurs. As tu des erreurs dans http.error ?

Pour la taille des log, le souci pour z2md, c’était qu’avant de capturer le log, j’étais en log par défaut juste avant et le z2md gonflait malgré tour.

En erreur, ça semble ne plus être le cas.

Pour http.error, il est vide même suite à longue ouverture de la page du plugin

Ça te la fait aussi sur d’autre page d’équipement ?

Bonjour

Dans le fichier Z2md.log, il ya 7 erreurs:

zh:controller: Failed to parse frame: Error: Cluster 'genBasic' has no command response '10'

Je ne sais pas l’interpréter.

Cordialement

Non, seulement celui-ci…

Et ça le fait uniquement depuis que le démon a des soucis de démarrage.

Faudrait la log au moment du soucis de démarrage mais si c’est ça le soucis alors ça vient de z2m et je pourrais rien y faire.

J’y ai pensé après avoir écrit mon message précédent, j’ai redémaré Jedom et voilà le log z2md :

247864|> zigbee2mqtt@1.37.1 start
247865|> node index.js
247866|[2024-07-30 10:25:08] e[31merrore[39m: 	z2m: Failed to load external converter file '/var/www/html/plugins/z2m/core/class/../config/converters/Danfoss/icon.js' (Cannot find module 'zigbee-herdsman-converters/lib/extend'
247867|Require stack:
247868|- /var/www/html/plugins/z2m/resources/zigbee2mqtt/dist/util/utils.js
247869|- /var/www/html/plugins/z2m/resources/zigbee2mqtt/dist/util/settings.js
247870|- /var/www/html/plugins/z2m/resources/zigbee2mqtt/index.js)
247871|[2024-07-30 10:25:08] e[31merrore[39m: 	z2m: Probably there is a syntax error in the file or the external converter is not compatible with the current Zigbee2MQTT version
247872|[2024-07-30 10:25:08] e[31merrore[39m: 	z2m: Note that external converters are not meant for long term usage, it's meant for local testing after which a pull request should be created to add out-of-the-box support for the device
247873|[2024-07-30 10:25:13] e[31merrore[39m: 	z2m: Error while starting zigbee-herdsman
247874|[2024-07-30 10:25:13] e[31merrore[39m: 	z2m: Failed to start zigbee
247875|[2024-07-30 10:25:13] e[31merrore[39m: 	z2m: Check https://www.zigbee2mqtt.io/guide/installation/20_zigbee2mqtt-fails-to-start.html for possible solutions
247876|[2024-07-30 10:25:13] e[31merrore[39m: 	z2m: Exiting...
247877|[2024-07-30 10:25:13] e[31merrore[39m: 	z2m: Error: Error while opening serialport 'Error: Error: Input/output error setting custom baud rate of 38400'
247878|at SerialPort.<anonymous> (/var/www/html/plugins/z2m/resources/zigbee2mqtt/node_modules/zigbee-herdsman/src/adapter/deconz/driver/driver.ts:202:28)
247879|at SerialPort._error (/var/www/html/plugins/z2m/resources/zigbee2mqtt/node_modules/@serialport/stream/dist/index.js:82:22)
247880|at /var/www/html/plugins/z2m/resources/zigbee2mqtt/node_modules/@serialport/stream/dist/index.js:118:18
247881|> zigbee2mqtt@1.37.1 start
247882|> node index.js
247883|[2024-07-30 10:30:05] e[31merrore[39m: 	z2m: Failed to load external converter file '/var/www/html/plugins/z2m/core/class/../config/converters/Danfoss/icon.js' (Cannot find module 'zigbee-herdsman-converters/lib/extend'
247884|Require stack:
247885|- /var/www/html/plugins/z2m/resources/zigbee2mqtt/dist/util/utils.js
247886|- /var/www/html/plugins/z2m/resources/zigbee2mqtt/dist/util/settings.js
247887|- /var/www/html/plugins/z2m/resources/zigbee2mqtt/index.js)
247888|[2024-07-30 10:30:05] e[31merrore[39m: 	z2m: Probably there is a syntax error in the file or the external converter is not compatible with the current Zigbee2MQTT version
247889|[2024-07-30 10:30:05] e[31merrore[39m: 	z2m: Note that external converters are not meant for long term usage, it's meant for local testing after which a pull request should be created to add out-of-the-box support for the device
247890|[2024-07-30 11:00:12] e[31merrore[39m: 	z2m: Publish 'set' 'state' to 'Switch_ZB_Piscine' failed: 'Error: ZCL command 0xa4c1389bae38d898/1 genOnOff.on({}, {"timeout":10000,"disableResponse":false,"disableRecovery":false,"disableDefaultResponse":false,"direction":0,"srcEndpoint":null,"reservedBits":0,"manufacturerCode":null,"transactionSequenceNumber":null,"writeUndiv":false}) failed (no response received (27))'
247891|[2024-07-30 11:00:24] e[31merrore[39m: 	z2m: Publish 'set' 'state' to 'Lumière garage I' failed: 'Error: ZCL command 0xa4c138f167efe9af/1 genOnOff.on({}, {"timeout":10000,"disableResponse":false,"disableRecovery":false,"disableDefaultResponse":false,"direction":0,"srcEndpoint":null,"reservedBits":0,"manufacturerCode":null,"transactionSequenceNumber":null,"writeUndiv":false}) failed (no response received (33))'

Je sais pas ce que tu as comme clef mais là le log est clair y’a un soucis de communication avec celle ci

Une Conbee 2

Les soucis semblent être apparus depuis qu’il y a le champ baudrate dans le plugin …

Pas forcément la faute du plugin lui même mais peut-être lié…

Oui y’a un soucis avec le baudrate chez toi mais tu l’as touché ?

Édit : regarde si tu respect bien tout ça deCONZ (Dresden Elektronik) | Zigbee2MQTT

En particulier vide le champs baudrate qui sert a rien pour une conbee2 et vérifie que tu as le bon firmware

Justement, j’ai laissé ce champ vide puisqu’avant il n’existait pas.

Il faut que je renseigne une valeur ? → OK, je comprends que non

Je vais regarder pour le FW.

Effectivement le baudrate Jeedom le force car c’était recommandé avant c’est plus le cas, la beta de demain du plugin corrigera le soucis.

Pour le soucis d’image ca devrait être mieux mais il me faudrait le json brute de l’équipement pour faire une vrai correction.

Pour le temps de chargement j’ai mis un timeout pour avoir l’image je suis sur que le soucis ne vient pas de la mais on sait jamais.

Tout ca sera dans la beta de demain du plugin.

Bonjour,

Je suggère de mettre à jour NodeJS.

akenad :slight_smile:

Merci.

En attendant que le lien que tu m’as transmis se charge (il rame, je ne sais pas pourquoi), j’ai flashé ma conbee.

Je pensais avoir le dernier FW mais manifestement non quand je regarde ce que j’avais gardé sur le PC.

Il semble que le souci de baudrate ait disparu :

247894|[2024-07-30 11:45:08] e[31merrore[39m: 	z2m: Failed to load external converter file '/var/www/html/plugins/z2m/core/class/../config/converters/Danfoss/icon.js' (Cannot find module 'zigbee-herdsman-converters/lib/extend'
247895|Require stack:
247896|- /var/www/html/plugins/z2m/resources/zigbee2mqtt/dist/util/utils.js
247897|- /var/www/html/plugins/z2m/resources/zigbee2mqtt/dist/util/settings.js
247898|- /var/www/html/plugins/z2m/resources/zigbee2mqtt/index.js)
247899|[2024-07-30 11:45:08] e[31merrore[39m: 	z2m: Probably there is a syntax error in the file or the external converter is not compatible with the current Zigbee2MQTT version
247900|[2024-07-30 11:45:08] e[31merrore[39m: 	z2m: Note that external converters are not meant for long term usage, it's meant for local testing after which a pull request should be created to add out-of-the-box support for the device

Il ne semble rester que le souci d’image, j’imagine que c’est lié à « Cannot find module ‹ zigbee-herdsman-converters/lib/extend › »

Pour le JSON, c’est de ça que tu as besoin ?

{
    "date_code": "",
    "definition": {
        "description": "Switch with power monitoring",
        "exposes": [
            {
                "features": [
                    {
                        "access": 7,
                        "description": "On\/off state of the switch",
                        "label": "State",
                        "name": "state",
                        "property": "state",
                        "type": "binary",
                        "value_off": "OFF",
                        "value_on": "ON",
                        "value_toggle": "TOGGLE"
                    }
                ],
                "type": "switch"
            },
            {
                "access": 1,
                "category": "diagnostic",
                "description": "Instantaneous measured power",
                "label": "Power",
                "name": "power",
                "property": "power",
                "type": "numeric",
                "unit": "W"
            },
            {
                "access": 1,
                "category": "diagnostic",
                "description": "Instantaneous measured electrical current",
                "label": "Current",
                "name": "current",
                "property": "current",
                "type": "numeric",
                "unit": "A"
            },
            {
                "access": 1,
                "category": "diagnostic",
                "description": "Measured electrical potential value",
                "label": "Voltage",
                "name": "voltage",
                "property": "voltage",
                "type": "numeric",
                "unit": "V"
            },
            {
                "access": 1,
                "description": "Sum of consumed energy",
                "label": "Energy",
                "name": "energy",
                "property": "energy",
                "type": "numeric",
                "unit": "kWh"
            },
            {
                "access": 7,
                "description": "Type of the switch",
                "label": "Switch type",
                "name": "switch_type",
                "property": "switch_type",
                "type": "enum",
                "values": [
                    "toggle",
                    "state",
                    "momentary"
                ]
            },
            {
                "access": 7,
                "description": "Recover state after power outage",
                "label": "Power outage memory",
                "name": "power_outage_memory",
                "property": "power_outage_memory",
                "type": "enum",
                "values": [
                    "on",
                    "off",
                    "restore"
                ]
            },
            {
                "access": 1,
                "category": "diagnostic",
                "description": "Link quality (signal strength)",
                "label": "Linkquality",
                "name": "linkquality",
                "property": "linkquality",
                "type": "numeric",
                "unit": "lqi",
                "value_max": 255,
                "value_min": 0
            }
        ],
        "model": "TS0001_power",
        "options": [
            {
                "access": 2,
                "description": "Calibrates the power value (percentual offset), takes into effect on next report of device.",
                "label": "Power calibration",
                "name": "power_calibration",
                "property": "power_calibration",
                "type": "numeric"
            },
            {
                "access": 2,
                "description": "Number of digits after decimal point for power, takes into effect on next report of device. This option can only decrease the precision, not increase it.",
                "label": "Power precision",
                "name": "power_precision",
                "property": "power_precision",
                "type": "numeric",
                "value_max": 3,
                "value_min": 0
            },
            {
                "access": 2,
                "description": "Calibrates the current value (percentual offset), takes into effect on next report of device.",
                "label": "Current calibration",
                "name": "current_calibration",
                "property": "current_calibration",
                "type": "numeric"
            },
            {
                "access": 2,
                "description": "Number of digits after decimal point for current, takes into effect on next report of device. This option can only decrease the precision, not increase it.",
                "label": "Current precision",
                "name": "current_precision",
                "property": "current_precision",
                "type": "numeric",
                "value_max": 3,
                "value_min": 0
            },
            {
                "access": 2,
                "description": "Calibrates the voltage value (percentual offset), takes into effect on next report of device.",
                "label": "Voltage calibration",
                "name": "voltage_calibration",
                "property": "voltage_calibration",
                "type": "numeric"
            },
            {
                "access": 2,
                "description": "Number of digits after decimal point for voltage, takes into effect on next report of device. This option can only decrease the precision, not increase it.",
                "label": "Voltage precision",
                "name": "voltage_precision",
                "property": "voltage_precision",
                "type": "numeric",
                "value_max": 3,
                "value_min": 0
            },
            {
                "access": 2,
                "description": "Calibrates the energy value (percentual offset), takes into effect on next report of device.",
                "label": "Energy calibration",
                "name": "energy_calibration",
                "property": "energy_calibration",
                "type": "numeric"
            },
            {
                "access": 2,
                "description": "Number of digits after decimal point for energy, takes into effect on next report of device. This option can only decrease the precision, not increase it.",
                "label": "Energy precision",
                "name": "energy_precision",
                "property": "energy_precision",
                "type": "numeric",
                "value_max": 3,
                "value_min": 0
            },
            {
                "access": 2,
                "description": "State actions will also be published as 'action' when true (default false).",
                "label": "State action",
                "name": "state_action",
                "property": "state_action",
                "type": "binary",
                "value_off": false,
                "value_on": true
            }
        ],
        "supports_ota": false,
        "vendor": "TuYa"
    },
    "disabled": false,
    "endpoints": {
        "1": {
            "bindings": [
                {
                    "cluster": "genOnOff",
                    "target": {
                        "endpoint": 1,
                        "ieee_address": "0x00212effff051a94",
                        "type": "endpoint"
                    }
                },
                {
                    "cluster": "haElectricalMeasurement",
                    "target": {
                        "endpoint": 1,
                        "ieee_address": "0x00212effff051a94",
                        "type": "endpoint"
                    }
                },
                {
                    "cluster": "seMetering",
                    "target": {
                        "endpoint": 1,
                        "ieee_address": "0x00212effff051a94",
                        "type": "endpoint"
                    }
                }
            ],
            "clusters": {
                "input": [
                    "genIdentify",
                    "genGroups",
                    "genScenes",
                    "genOnOff",
                    "seMetering",
                    "haElectricalMeasurement",
                    "manuSpecificBosch",
                    "manuSpecificTuya_3",
                    "genBasic"
                ],
                "output": [
                    "genOta",
                    "genTime"
                ]
            },
            "configured_reportings": [
                {
                    "attribute": "rmsVoltage",
                    "cluster": "haElectricalMeasurement",
                    "maximum_report_interval": 3600,
                    "minimum_report_interval": 5,
                    "reportable_change": 5
                },
                {
                    "attribute": "rmsCurrent",
                    "cluster": "haElectricalMeasurement",
                    "maximum_report_interval": 3600,
                    "minimum_report_interval": 5,
                    "reportable_change": 50
                },
                {
                    "attribute": "activePower",
                    "cluster": "haElectricalMeasurement",
                    "maximum_report_interval": 3600,
                    "minimum_report_interval": 5,
                    "reportable_change": 10
                },
                {
                    "attribute": "currentSummDelivered",
                    "cluster": "seMetering",
                    "maximum_report_interval": 3600,
                    "minimum_report_interval": 5,
                    "reportable_change": [
                        1,
                        1
                    ]
                }
            ],
            "scenes": []
        },
        "242": {
            "bindings": [],
            "clusters": {
                "input": [],
                "output": [
                    "greenPower"
                ]
            },
            "configured_reportings": [],
            "scenes": []
        }
    },
    "friendly_name": "PAC Piscine",
    "ieee_address": "0xa4c1382cd998cde2",
    "interview_completed": true,
    "interviewing": false,
    "manufacturer": "_TZ3000_kqvb5akv",
    "model_id": "TS0001",
    "network_address": 23415,
    "power_source": "Mains (single phase)",
    "supported": true,
    "type": "Router"
}

Attention regarde le lien c’est pas forcement le dernier firmware qu’il faut d’après le lien le dernier marche mal.

Pour le json oui c’est ca je regarde immédiatement

Edit : pour l’image faudra tester avec la beta de demain si nok faudra ouvrir un ticket au support pour que je regarde directement sur ton Jeedom.

Ok, merci.

Question subsidiaire : Concernant les images, sur le plugin Zigbee historique, on pouvait les remplacer par des images perso. C’était pratique quand l’image de base n’était pas la bonne;

Ca ne serait pas possible à terme de faire ça sous JeeZigbee ? (ce qui permettrait au pasage de contourner les soucis comme le mien)