Zigbee2mqtt et problème avec compteur Energie tuya zigbee

Bonsoir a tous,

J’ai fait acquisition d’un module compteur Energie tuya/Zigbee ce weekend.

Il devait être à la base compatible ZHA mais a son arriver de chine le model avait encore évolués et il n’était plus compatible.
Comme je n’avais pour l’instant que deux appareils en ZigBee et que Zigbee2mqtt semble pratique et me donne la possibilité de rendre mon module compatible j’ai fait le changement hier sans bien que mal.

Mais étant une quiche en anglais (merci google) je me perd dans la Manoeuvre pour la création du fichier Js à placer à côtés de la configuration de Zigbee2mqtt

Je retrouve bien dans la partie Dev et dans le fichier tuya.ts herdsman-converters
Mon modèle

TS0601
par _TZE204_81yrt3lo

    {
        fingerprint: tuya.fingerprint('TS0601', ['_TZE204_81yrt3lo', '_TZE200_rks0sgb7']),
        model: 'PJ-1203A',
        vendor: 'TuYa',
        description: 'Bidirectional energy meter with 80A current clamp',
        fromZigbee: [tuya.fz.datapoints],
        toZigbee: [tuya.tz.datapoints],
        onEvent: tuya.onEventSetTime,
        configure: tuya.configureMagicPacket,
        exposes: [
            e.ac_frequency(), e.voltage(),
            tuya.exposes.powerWithPhase('a'), tuya.exposes.powerWithPhase('b'), tuya.exposes.powerWithPhase('ab'),
            tuya.exposes.currentWithPhase('a'), tuya.exposes.currentWithPhase('b'),
            tuya.exposes.powerFactorWithPhase('a'), tuya.exposes.powerFactorWithPhase('b'),
            tuya.exposes.energyFlowWithPhase('a'), tuya.exposes.energyFlowWithPhase('b'),
            tuya.exposes.energyWithPhase('a'), tuya.exposes.energyWithPhase('b'),
            tuya.exposes.energyProducedWithPhase('a'), tuya.exposes.energyProducedWithPhase('b'),
            e.numeric('update_frequency', ea.STATE).withUnit('s').withDescription('Update frequency'),
        ],
        meta: {
            tuyaDatapoints: [
                [111, 'ac_frequency', tuya.valueConverter.divideBy100],
                [101, 'power_a', tuya.valueConverter.divideBy10],
                [105, 'power_b', tuya.valueConverter.divideBy10],
                [115, 'power_ab', tuya.valueConverter.divideBy10],
                [112, 'voltage', tuya.valueConverter.divideBy10],
                [113, 'current_a', tuya.valueConverter.divideBy1000],
                [114, 'current_b', tuya.valueConverter.divideBy1000],
                [110, 'power_factor_a', tuya.valueConverter.raw],
                [121, 'power_factor_b', tuya.valueConverter.raw],
                [102, 'energy_flow_a', tuya.valueConverterBasic.lookup({'consuming': 0, 'producing': 1})],
                [104, 'energy_flow_b', tuya.valueConverterBasic.lookup({'consuming': 0, 'producing': 1})],
                [106, 'energy_a', tuya.valueConverter.divideBy100],
                [108, 'energy_b', tuya.valueConverter.divideBy100],
                [107, 'energy_produced_a', tuya.valueConverter.divideBy100],
                [109, 'energy_produced_b', tuya.valueConverter.divideBy100],
                [129, 'update_frequency', tuya.valueConverter.raw],
            ],

Mais je ne comprends pas ce qu’il faut faire après malgré une traduction de cette page
nouveau device

Et surtout ce que je dois placer dans le fichier Js

Donc je fais appel aux cerveaux de la communauté pour m’aiguiller. Merci par avance

Bonjour,
l’appareil est pris en charge, pourquoi utiliser un convertiseur ?

1 « J'aime »

car il ne le reconnais pas de mon cotés et semble toujours en DEV ?

il y a deux ref, celle la _TZE204_81yrt3lo OK, l’autre a été ajouter le 16/09 a la branche DEV.

ohhhh j’ai trouvé la base de mon Zigbee2MQTT n’était pas à jour malgré une nouvelle installation
j’ai donc lancer une OTA et après avoir virer le module et lancer un nouvel appairage ça à fonctionner :slight_smile:

merci @WarC0zes :wink:

2 « J'aime »

J’ai aussi installé 7 de ces compteurs d’énergie, pour monitorer la conso sur mon tableau électrique.

Mais question bête, as-tu respecté le sens des pinces ampèremétriques sur les câbles de phase, étant donné qu’elles sont censées être bidirectionnelles ?

Dans la pince il est indiqué « K → L ». K étant la source d’énergie/le disjoncteur, L étant pour « Load » donc la charge/prise/appareil final.

En ayant respecté ce sens sur toutes les pinces, je me retrouve avec certains sensor « xxx_energy_flow » en « consuming » et d’autres en « producing » (la conso instantanée affichée est correcte, et toujours positive).

EDIT : appareils en fonctionnement, energy_flow passe de « producing » à « consuming » … ce qui parait logique du coup. Mais je ne comprend pas comment on peut « produire » de l’énergie … :thinking:

Salut
alors c’est la meme question que je me suis posée. Ça fait une semaine que ça tourne et il a fallu que je bouge les pinces plusieurs fois pour voir que malgré tout elle indiquait une production sur de la consommation a faible puissance (repos ou veille). Mais c’est aléatoire comme si les Tores était sensible au câble d’à cotés dans mon tableau ?

Ca me rassure … ou pas :face_with_raised_eyebrow:
Et au niveau intégration dans le dashboard Energy, tu as pu intégrer les sensor en natif ?
Ou tu as du passer par des modifs dans le configuration.yaml ?

en natif et ça fonctionne plutôt bien je trouve

Je suis reconnaissant car j’avais le même problème, j’ai effectué la mise à jour et oui, ça fonctionne! Un grand merci! :smiley: