Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Hardware
    4. TS0601 Zigbee

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    TS0601 Zigbee

    This topic has been deleted. Only users with topic management privileges can see it.
    • Asgothian
      Asgothian Developer @peterfido last edited by

      @peterfido Du wirst probieren müssen. Weiter Zeilen rauswerfen in der Hoffnung das sie nicht benötigt werden. Wenn das nicht klappt dann liegt es daran das das Gerät den neuen Herdsman braucht - wie schon auf GitHub geschrieben.

      A.

      1 Reply Last reply Reply Quote 0
      • P
        peterfido last edited by peterfido

        @asgothian ok, danke. Ich hatte die relativen Pfade vermutet. Zumindest von dort, wo die Datei sizt, laufen die ins Leere. Den neuen Herdsmann gibt es noch nicht? Oder müsste ich da z.B. auf zigbee2mqtt gehen?

        Das wäre dann wohl auch ein umfangreicher Aufwand, alle Geräte umzuziehen und die Skripte anpassen. Ich probiere noch bis zum Wochenende und, wenn es nicht will, schicke ich die Teile zurück.

        Optisch passt dieser hier genau.

        Asgothian JLeg 2 Replies Last reply Reply Quote 0
        • Asgothian
          Asgothian Developer @peterfido last edited by

          @peterfido den neuen Herdsman gibt es schon. Du kannst auch probieren was der für Dich bedeutet. Allerdings werden dann viele Datenpuntke insbesondere bei Tastern und Schaltern umbenannt - da gibt es also extra Arbeit wenn du den nutzen willst.

          Solltest du das probieren wollen, dann kann ich Dir diesen Thread empfehlen:
          https://forum.iobroker.net/topic/78969/iobroker-zigbee-1-11-x-tester-gesucht/11

          P 1 Reply Last reply Reply Quote 0
          • JLeg
            JLeg @peterfido last edited by

            @peterfido …ich hab von nodejs wenig Ahnung, bin aber fast sicher, dass relative Pfade in require() immer vom aktuellen Pfad der aufrufenden Datei ausgehen. D.h. „../lib…“ dürfte dann in zigbee.0 nicht funktionieren.
            Bei mir liegen diese Module in node_modules - ich würde einfach mal absolute Pfade ausprobieren, kost‘ ja nix 😉
            Also z.B.
            require(“/opt/iobroker/node_modules/zigbee-herdsman-converters/lib/exposes“)

            P 1 Reply Last reply Reply Quote 0
            • P
              peterfido @JLeg last edited by

              @jleg Danke für den Tipp. Das hatte ich bereits probiert.

              Ich habe einen lxc Container auf dem Proxmox Server installiert, wo zigbee2mqtt drauf ist. Scheint allerdings nicht die Version 2 zu sein. Da muss ich am Wochenende mal schauen. Im Log tauchte einmal eine Meldung mit Version 21 und 23 auf. Allerdings war das Log nach dem Neustart leer und die Meldung taucht nicht mehr auf.

              Das Gerät wird aktuell nicht unterstützt. Ich mache mich wohl am Wochenende auf die Suche nach der Datei, wo der tuya zth08-e drin ist, und ergänze mal die Kennung von dem Thermometer. Mal schauen, was passiert.

              1 Reply Last reply Reply Quote 0
              • P
                peterfido @Asgothian last edited by

                @asgothian von zigbee2mqtt wird das Teil nicht unterstützt. Allerdings bin ich mir nicht sicher, ob ich für zigbee2mqtt 2.x eine andere Installation durchführen muss.

                Ich teste jetzt, wie Du oben vorgeschlagen hast, mit dem neuen herdsman. Allerdings lief die Installation nicht sauber durch Bei drei ioBroker Testsystemen gab es die Fehlermeldung, dass der port nicht gelockt werden konnte. (zwei mal lxc und einmal VM unter Proxmox) Auf dem vierten (VM) habe ich dann erst den "normalen" Zigbee-Adapter installiert, da war dann das Fenster vom Admin leer. Dann die Testversion mit der Katze installiert, daraufhin war der Admin wie gewohnt und auch der USB-Stick wurde einwandfrei erkannt.

                Also mache ich dann in dem Test-Thread weiter.

                arteck 1 Reply Last reply Reply Quote 0
                • arteck
                  arteck Developer Most Active @peterfido last edited by

                  @peterfido sagte in TS0601 Zigbee:

                  von zigbee2mqtt wird das Teil nicht unterstützt. Allerdings bin ich mir nicht sicher, ob ich für zigbee2mqtt 2.x eine andere Installation durchführen muss.

                  wenns da nicht unterstützt wird dann wird es auch bei zigbee NICHT GEHEN

                  und nien für z2m 2.0 brauchst keine neue installation..

                  P 1 Reply Last reply Reply Quote 0
                  • P
                    peterfido @arteck last edited by peterfido

                    @arteck @Asgothian :

                    Ich habe das Teil zum Laufen bekommen. In der Datei tuya.js habe ich zwei Zeilen ergänzt. (Zeilen 13 und 41)

                       {
                            fingerprint: tuya.fingerprint('TS0601', [
                                '_TZE200_yjjdcqsq',
                                '_TZE200_9yapgbuv',
                                '_TZE200_utkemkbs',
                                '_TZE204_utkemkbs',
                                '_TZE204_9yapgbuv',
                                '_TZE204_upagmta9',
                                '_TZE200_cirvgep4',
                                '_TZE200_upagmta9',
                                '_TZE204_yjjdcqsq',
                                '_TZE204_cirvgep4',
                    			'_TZE204_jygvp6fk',
                            ]),
                            model: 'TS0601_temperature_humidity_sensor_2',
                            vendor: 'Tuya',
                            description: 'Temperature and humidity sensor',
                            fromZigbee: [tuya.fz.datapoints],
                            toZigbee: [tuya.tz.datapoints],
                            onEvent: tuya.onEvent({ queryOnDeviceAnnounce: true }),
                            configure: async (device, coordinatorEndpoint) => {
                                await tuya.configureMagicPacket(device, coordinatorEndpoint);
                                // Required to get the device to start reporting
                                await device.getEndpoint(1).command('manuSpecificTuya', 'dataQuery', {});
                            },
                            exposes: [e.temperature(), e.humidity(), tuya.exposes.batteryState(), tuya.exposes.temperatureUnit()],
                            meta: {
                                tuyaDatapoints: [
                                    [1, 'temperature', tuya.valueConverter.divideBy10],
                                    [2, 'humidity', tuya.valueConverter.raw],
                                    [3, 'battery_state', tuya.valueConverter.batteryState],
                                    [9, 'temperature_unit', tuya.valueConverter.temperatureUnitEnum],
                                ],
                            },
                            whiteLabel: [
                                tuya.whitelabel('Tuya', 'ZTH01', 'Temperature and humidity sensor', ['_TZE200_yjjdcqsq', '_TZE204_yjjdcqsq']),
                                tuya.whitelabel('Tuya', 'SZTH02', 'Temperature and humidity sensor', ['_TZE200_utkemkbs', '_TZE204_utkemkbs']),
                                tuya.whitelabel('Tuya', 'ZTH02', 'Temperature and humidity sensor', ['_TZE200_9yapgbuv', '_TZE204_9yapgbuv']),
                                tuya.whitelabel('Tuya', 'ZTH05', 'Temperature and humidity sensor', ['_TZE204_upagmta9', '_TZE200_upagmta9']),
                                tuya.whitelabel('Tuya', 'ZTH08-E', 'Temperature and humidity sensor', ['_TZE200_cirvgep4', '_TZE204_cirvgep4']),
                    			tuya.whitelabel('Tuya', 'ZTH07-E', 'Temperature and humidity sensor', ['_TZE201_jygvp6fk', '_TZE204_jygvp6fk']),
                            ],
                    

                    Die Uhrzeit stimmt und die Werte trudeln ein:

                    40345e70-696e-449a-a738-7c3ee8a3b7f9-image.png

                    Jetzt probiere ich es auf meinem Produktivsystem.

                    Asgothian 1 Reply Last reply Reply Quote 0
                    • Asgothian
                      Asgothian Developer @peterfido last edited by

                      @peterfido sagte in TS0601 Zigbee:

                      Jetzt probiere ich es auf meinem Produktivsystem.

                      Wichtiger Hinweis: diese Anpassung wird verloren gehen sobald du den Zigbee-Adapter aktualisierst / neu installierst. Darüber musst du dir im klaren sein. ggf. musst du diese Anpassung wiederholen.

                      Ein Einspielen bei den zigbee-herdsman-converters ist ausgeschlossen, da diese Änderung da bereits vorhanden ist, aber erst in einer 21.x Version, die nicht mit dem Zigbee-Adapter 1.10 funktioniert.

                      A

                      P 2 Replies Last reply Reply Quote 0
                      • P
                        peterfido @Asgothian last edited by peterfido

                        @asgothian Ist mir bewusst. Wie müsste denn in diesem Fall eine eigene Converter-Datei aussehen?

                        Edit: Bei der 1.11.x ist das Gerät noch unbekannt. Da hatte ich die Änderung zuerst auf meinem Testsystem durchgeführt.

                        1 Reply Last reply Reply Quote 0
                        • P
                          peterfido @Asgothian last edited by

                          @asgothian im Github unter zigbee-herdsman-converters/.../tuya.ts

                          wird das Gerät noch nicht aufgeführt. Müsste dort ab Zeile 1100 stehen. Gibt es für die 21.x Version eine andere Quelle?

                          P 1 Reply Last reply Reply Quote 0
                          • P
                            peterfido @peterfido last edited by peterfido

                            Ich habe jetzt eine wohl gute Lösung gefunden.

                            In Proxmox habe ich eine VM erstellt, auf welcher ich zusätzlich curl, mosquitto, zigbee2mqtt und vsftpd installiert habe.

                            Geht man nach der Anleitung von zigbee2mqtt vor, dann verschwinden bei jedem Neustart die Rechte, den USB-Stick zu nutzen. Ist mir jetzt allerdings egal, da ich heute Morgen mein LAN-Gateway vom Zigbee-Adapter auf zigbee2mqtt umgezogen habe.

                            Der Umzug war etwas trickreich, da die Konfiguration bei z2m die ext. Pan ID und den Transport-Key in einzelnen dezimalen Zahlen haben möchte. Obendrein ist die ext. Pan ID rückwärts einzutragen. Also die letzte Zahl zuerst und zuletzt die erste Zahl.

                            Dann noch die Konfigurations-Dateien nach /opt/zigbee2mqtt/data kopieren und umbenennen. Das habe ich dann mit FileZilla über ftp gemacht. Die shepherd.db muss in database.db umbenannt werden.

                            Dann noch im data Ordner einen Unterordner external_converters erstellen und da die selbst erstellte (ok - zusammenkopierte) Datei reinkopieren.

                            var __importStar = (this && this.__importStar) || (function () {
                                var ownKeys = function(o) {
                                    ownKeys = Object.getOwnPropertyNames || function (o) {
                                        var ar = [];
                                        for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
                                        return ar;
                                    };
                                    return ownKeys(o);
                                };
                                return function (mod) {
                                    if (mod && mod.__esModule) return mod;
                                    var result = {};
                                    if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
                                    __setModuleDefault(result, mod);
                                    return result;
                                };
                            })();
                            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 ota = require('zigbee-herdsman-converters/lib/ota');
                            const utils = require('zigbee-herdsman-converters/lib/utils');
                            const globalStore = require('zigbee-herdsman-converters/lib/store');
                            const e = exposes.presets;
                            const ea = exposes.access;
                            const tuya = __importStar(require("zigbee-herdsman-converters/lib/tuya"));
                            
                            const definition = {
                            	fingerprint: tuya.fingerprint('TS0601', [
                            		'_TZE204_jygvp6fk',
                            	]),	
                                zigbeeModel: ['lumi.sens'],
                                model: 'TS0601_temperature_humidity_sensor_2',
                                vendor: 'EMOS',
                                description: 'Temperature and humidity sensor',
                                extend: [],
                                /**
                                 * Clusters reporting "from zigbee"
                                 */
                                fromZigbee: [tuya.fz.datapoints],
                                /**
                                 * Clusters to send commands "to zigbee"
                                 */
                                toZigbee: [tuya.tz.datapoints],
                                /**
                                 * Defines which fields are exposed in the definition message to configure a frontend
                                 * (e.g. Z2M frontend, Home Assistant, Domoticz)
                                 */
                            	onEvent: tuya.onEvent({ queryOnDeviceAnnounce: true }),
                            	configure: async (device, coordinatorEndpoint) => {
                            		await tuya.configureMagicPacket(device, coordinatorEndpoint);
                            		// Required to get the device to start reporting
                            		await device.getEndpoint(1).command('manuSpecificTuya', 'dataQuery', {});
                            	},
                            	exposes: [e.temperature(), e.humidity(), tuya.exposes.batteryState(), tuya.exposes.temperatureUnit()],
                                    meta: {
                                        tuyaDatapoints: [
                                            [1, 'temperature', tuya.valueConverter.divideBy10],
                                            [2, 'humidity', tuya.valueConverter.raw],
                                            [3, 'battery_state', tuya.valueConverter.batteryState],
                                            [9, 'temperature_unit', tuya.valueConverter.temperatureUnitEnum],
                                        ],
                                    },
                            	whiteLabel: [
                            		tuya.whitelabel('Tuya', 'EGS0101', 'Temperature and humidity sensor', ['_TZE200_jygvp6fk', '_TZE204_jygvp6fk']),
                            	],
                            };
                            
                            module.exports = definition;
                            

                            Danach können die Thermometer mit Uhr genutzt werden. Es gibt zwar beim Anlernen eine Meldung, dass diese nur von einer älteren Zigbee-Revision unterstützt werden, läuft aber trotzdem.

                            info 2025-01-12 09:23:39zh:controller:device: Device '0xa4c1385f24e9365e' is only compliant to revision '21' of the ZigBee specification (current revision: 23).
                            info 2025-01-12 09:23:43zh:controller: Succesfully interviewed '0xa4c1385f24e9365e'
                            info 2025-01-12 09:23:43z2m: Successfully interviewed '0xa4c1385f24e9365e', device has successfully been paired
                            info 2025-01-12 09:23:43z2m: Device '0xa4c1385f24e9365e' is supported, identified as: Tuya Temperature and humidity sensor (EGS0101)
                            

                            4d3f10d0-2cf9-48c5-aa17-6a1ad956c0c9-image.png

                            und taucht im ioBroker mit Werten auf.
                            78935a03-ac98-4d3e-b607-d1fbf60b4658-image.png

                            P 1 Reply Last reply Reply Quote 0
                            • P
                              peterfido @peterfido last edited by

                              Ich hatte ein Issue auf Github eröffnet, und Koenkk hat das Gerät im dev branch hinzugefügt.

                              Das ging echt flott.

                              1 Reply Last reply Reply Quote 0
                              • First post
                                Last post

                              Support us

                              ioBroker
                              Community Adapters
                              Donate

                              489
                              Online

                              31.7k
                              Users

                              79.6k
                              Topics

                              1.3m
                              Posts

                              12
                              60
                              8188
                              Loading More Posts
                              • Oldest to Newest
                              • Newest to Oldest
                              • Most Votes
                              Reply
                              • Reply as topic
                              Log in to reply
                              Community
                              Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                              The ioBroker Community 2014-2023
                              logo