Probleme zigbee herdsman converter sur z2m , device non reconnu

Car mon capteur de mouvement est un « ZG-204Z », TS0601_TZE200_3towulqd.

Hors dans le « tuya.js », c’es le model ZG-204ZL qui est referencé.

{
        fingerprint: [{modelID: 'TS0601', manufacturerName: '_TZE200_3towulqd'}, {modelID: 'TS0601', manufacturerName: '_TZE200_1ibpyhdc'}],
        model: 'ZG-204ZL',
        vendor: 'TuYa',
        description: 'Luminance motion sensor',
        fromZigbee: [fz.ZG204ZL_lms],
        toZigbee: [tz.ZG204ZL_lms],
        exposes: [
            e.occupancy(), e.illuminance().withUnit('lx'), e.battery(),
            exposes.enum('sensitivity', ea.ALL, ['low', 'medium', 'high'])
                .withDescription('PIR sensor sensitivity (refresh and update only while active)'),
            exposes.enum('keep_time', ea.ALL, ['10', '30', '60', '120'])
                .withDescription('PIR keep time in seconds (refresh and update only while active)'),
        ],
    },

Se pourrait’il qu’il ne soit pas reconnu a cause de la difference du nom du model ?

Hello

Vois-tu ton device dans l’interface de z2m ?
Même s’il n’est pas supporté, tu devrais le voir dans l’interface.

As-tu eu un message d’erreur lorsque tu l’a appairé ?

Oui je le voit bien après l’appairage:

Non tout avais l’air correcte lors de l’appairage, j’ai essayer plusieurs fois, j’ai deux capteur de mouvement, j’ai la même chose pour les deux

Je suis entrain d’essayé de faire un .js, qui est placer dans la racine de Z2M (Avec : configuration.yaml)
J’ai aussi mis, dans « Configuration.yaml »

external_converters:
  - ZG204Z.js

Voici mon « ZG204Z.js »:

const fz = require('zigbee-herdsman-converters/converters/fromZigbee');
const tz = require('zigbee-herdsman-converters/converters/toZigbee');
const exposes = require('zigbee-herdsman-converters/lib/exposes');
const reporting = require('zigbee-herdsman-converters/lib/reporting');
const extend = require('zigbee-herdsman-converters/lib/extend');
const e = exposes.presets;
const ea = exposes.access;
const tuya = require("zigbee-herdsman-converters/lib/tuya");

const definition = 
    {
        fingerprint: [{ modelID: 'TS0601', manufacturerName: '_TZE200_3towulqd'},],
        model: 'ZG-204Z',
        vendor: 'TuYa',
        description: 'Luminance motion sensor',
        fromZigbee: [fz.ZG204ZL_lms],
        toZigbee: [tz.ZG204ZL_lms],
        exposes: [e.occupancy(), e.battery(),],
    };
    
module.exports = definition;

Comment ton device est-il repris dans ton fichier zigbee2mqtt/data/database.db ?

C’est normal que je n’ai pas le dossier /data dans Z2M ? Le fichier est zigbee2mqtt/database.db
Sinon voici ce qu’il y a dedans :

{"id":1,"type":"Coordinator","ieeeAddr":"0x00124b00257e1181","nwkAddr":0,"manufId":0,"epList":[1,2,3,4,5,6,8,10,11,12,13,47,110,242],"endpoints":{"1":{"profId":260,"epId":1,"devId":5,"inClusterList":[],"outClusterList":[],"clusters":{},"binds":[],"configuredReportings":[],"meta":{}},"2":{"profId":257,"epId":2,"devId":5,"inClusterList":[],"outClusterList":[],"clusters":{},"binds":[],"configuredReportings":[],"meta":{}},"3":{"profId":260,"epId":3,"devId":5,"inClusterList":[],"outClusterList":[],"clusters":{},"binds":[],"configuredReportings":[],"meta":{}},"4":{"profId":263,"epId":4,"devId":5,"inClusterList":[],"outClusterList":[],"clusters":{},"binds":[],"configuredReportings":[],"meta":{}},"5":{"profId":264,"epId":5,"devId":5,"inClusterList":[],"outClusterList":[],"clusters":{},"binds":[],"configuredReportings":[],"meta":{}},"6":{"profId":265,"epId":6,"devId":5,"inClusterList":[],"outClusterList":[],"clusters":{},"binds":[],"configuredReportings":[],"meta":{}},"8":{"profId":260,"epId":8,"devId":5,"inClusterList":[],"outClusterList":[],"clusters":{},"binds":[],"configuredReportings":[],"meta":{}},"10":{"profId":260,"epId":10,"devId":5,"inClusterList":[],"outClusterList":[],"clusters":{},"binds":[],"configuredReportings":[],"meta":{}},"11":{"profId":260,"epId":11,"devId":1024,"inClusterList":[1281,10],"outClusterList":[1280,1282],"clusters":{},"binds":[],"configuredReportings":[],"meta":{}},"12":{"profId":49246,"epId":12,"devId":5,"inClusterList":[],"outClusterList":[],"clusters":{},"binds":[],"configuredReportings":[],"meta":{}},"13":{"profId":260,"epId":13,"devId":5,"inClusterList":[25],"outClusterList":[],"clusters":{},"binds":[],"configuredReportings":[],"meta":{}},"47":{"profId":260,"epId":47,"devId":5,"inClusterList":[],"outClusterList":[],"clusters":{},"binds":[],"configuredReportings":[],"meta":{}},"110":{"profId":260,"epId":110,"devId":5,"inClusterList":[],"outClusterList":[],"clusters":{},"binds":[],"configuredReportings":[],"meta":{}},"242":{"profId":41440,"epId":242,"devId":5,"inClusterList":[],"outClusterList":[],"clusters":{},"binds":[],"configuredReportings":[],"meta":{}}},"interviewCompleted":true,"meta":{},"lastSeen":null,"defaultSendRequestWhen":"immediate"}
{"id":2,"type":"Unknown","ieeeAddr":"0xa4c13851a383da22","nwkAddr":14637,"epList":[],"endpoints":{},"interviewCompleted":false,"meta":{},"lastSeen":1668686556952,"defaultSendRequestWhen":"immediate"}
{"id":3,"type":"Unknown","ieeeAddr":"0xa4c13837a373794f","nwkAddr":3446,"epList":[],"endpoints":{},"interviewCompleted":false,"meta":{},"lastSeen":1668703931942,"defaultSendRequestWhen":"immediate"}
{"id":4,"type":"Unknown","ieeeAddr":"0xa4c1386ccd63e3dd","nwkAddr":48529,"epList":[],"endpoints":{},"interviewCompleted":false,"meta":{},"lastSeen":1668708996830,"defaultSendRequestWhen":"immediate"}

Vu ton fichier, c’est normal que ton device n’est pas connu car il n’a aucunes informations sur lesquelles s’appuyer :

{
   "id":2,
   "type":"Unknown",
   "ieeeAddr":"0xa4c13851a383da22",
   "nwkAddr":14637,
   "epList":[
      
   ],
   "endpoints":{
      
   },
   "interviewCompleted":false,
   "meta":{
      
   },
   "lastSeen":1668686556952,
   "defaultSendRequestWhen":"immediate"
}

Essaies de supprimer ton device et de le réappairer en attendant bien que l’interview de ton device soit terminé !

J’ai un problème avec l’appairage :-o

Je peu aller voir des log quelque part pour en savoir plus ?

Ou est ce qu’il n’est pas du tout appairable ? J’ai le problème sur trois appareil, un détecteur de température, un détecteur de fumé et le détecteur de mouvement. Capteur acheter sur Ali, pour Tuya de base

Pourtant le capteur de fumé devrait etre prit en charge ;

J’ai trouvé le problème d’appairrage… J’ai retiré la deuxième clés zigbee qui est utilisé pour ZHA et la plus de problème d’apparrraige.

Il doit y avoir des perturbation l’un avec l’autre, sachant qu’ils étaient proche. J’essayerais de les espacer le plus possible pour voir si sa fonctionne.

Oui, ça doit sûrement provenir de là. Mais pourquoi utiliser ZHA et Z2M en parallèle ? Sachant que tous les 2 utilise le même protocole.
Est-ce qu’il ne serai pas plus judicieux de partir sur un full ZHA ou full Z2M ?

Salut,

Attention 2 intégrations avec 1 clé, ça me marche pas. 1 intégration avec 2 clés non plus.
2 intégrations avec 2 clés en théorie, c’est bon mais à condition que les clés ne se mélangent jamais (ordre des ports usb par exemple).
Par ailleurs je ne vois pas vraiment l’intérêt d’avoir ces trucs en double

C’est parce que certain appareil ne sont pas prit en charge avec ZHA et le sont en Z2M. Les 3 appareil que j’essayais d’appairer sur Z2M ne fonctionnait pas sur ZHA

Pourquoi ne pas créer les converters adéquats à tes devices qui ne sont pas reconnus nativement par Z2M et par la suite, les soumettre sur le github du projet ?

Je suis d’accord, après je viens a peine de découvrir Z2M :grin:
Je vais essayer de bien comprendre comment la création d’une nouvelle intégration et a quoi correspond une peu tous ce code. Mais oui, je trouve sa plus puissant de pouvoir géré se intégration soit même

En soit, le code n’est pas bien compliqué à comprendre.
Si tu as besoin d’aide, n’hésite pas à me solliciter !

1 « J'aime »

Merci c’est bien sympa, j’ai justement un capteur d’humidité qui n’est pas prit en charge, ça va être une bon exercice pour commencer :grin:

Rien de bien compliqué alors.
Lis correctement la documentation de Z2M pour savoir comment créer la définition d’un nouveau device et ça devrait bien se passer :wink: