Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. ioBroker Allgemein
  4. Tuya Thermostat (_TZE200_hue3yfsn)

NEWS

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    11
    1
    481

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    24
    1
    1.6k

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    9.6k

Tuya Thermostat (_TZE200_hue3yfsn)

Geplant Angeheftet Gesperrt Verschoben ioBroker Allgemein
62 Beiträge 8 Kommentatoren 15.8k Aufrufe 11 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • AsgothianA Asgothian

    @diti sagte in Neue Tuya Thermostat Zigbee 3.0:

    @asgothian
    Wie kann ich Mqtt-Explorer mit Zigbee-Adapter verbinden, um genau zu wissen was da abläuft?

    garnicht - der zigbee Adapter nutzt kein MQTT.

    Du kannst die IEEE des Gerätes in "zigbee.0.info.debugmessages" eintragen um zu sehen ob der zigbee-herdsman eine Nachricht vom Gerät an den ioBroker weiter leitet.

    A.

    Nachtrag: Du schreibst "nur beim ioBroker". Ist die verwendete Hardware (zigbee Stick, Rechner) sowie deren Positionierung und Anschluss bei den anderen Systemen identisch ?

    D Offline
    D Offline
    diti
    schrieb am zuletzt editiert von diti
    #10

    @asgothian sagte in Neue Tuya Thermostat Zigbee 3.0:

    die IEEE des Gerätes in "zigbee.0.info.debugmessages" eintragen

    Wo kann ich das eintragen, in Einstellungen von Adapter und in Protokoll. Wenn ich in Protokoll in Spalte Quelle zigbee. 0 auswähle und in Nachricht nach IEEE filtre, da kommt nur Info über Paring aber nicht über Kommunikation
    Unbenannt.PNG3.PNG
    Unbenannt.PNG4.PNG

    AsgothianA 1 Antwort Letzte Antwort
    0
    • D diti

      @asgothian sagte in Neue Tuya Thermostat Zigbee 3.0:

      die IEEE des Gerätes in "zigbee.0.info.debugmessages" eintragen

      Wo kann ich das eintragen, in Einstellungen von Adapter und in Protokoll. Wenn ich in Protokoll in Spalte Quelle zigbee. 0 auswähle und in Nachricht nach IEEE filtre, da kommt nur Info über Paring aber nicht über Kommunikation
      Unbenannt.PNG3.PNG
      Unbenannt.PNG4.PNG

      AsgothianA Offline
      AsgothianA Offline
      Asgothian
      Developer
      schrieb am zuletzt editiert von
      #11

      @diti Es gibt in den Objekten einen State zigbee.0.info.debugmessages
      Screen Shot 2021-09-30 at 23.35.30 .png

      Da gehört die ieee addresse (ohne führendes 0x) hinein um die Meldungen zu erzeugen

      Du kannst auch mehrere eintragen, dann aber mit ; getrennt, also z.Bsp.

      00158de00076a57e8;000b3cfffef7ad5f

      A.

      ioBroker auf RPi4 - Hardware soweit wie möglich via Zigbee.
      "Shit don't work" ist keine Fehlermeldung, sondern ein Fluch.

      1 Antwort Letzte Antwort
      0
      • D Offline
        D Offline
        diti
        schrieb am zuletzt editiert von diti
        #12

        @asgothian . Da sind die Meldungen, es passiert einfach nichts wenn ich die Sensoren zusammen und auseinander tue oder System bekommt keinen Wert. Es ist so als ob der zigbee-herdsman-converter nicht richtig mit Sensor arbeitet.
        Unbenannt.PNG11.PNG
        Beim Reset-Drücken passiert folgendes:
        Unbenannt.PNG12.PNG
        Ich muss wohl mit anderen Sensoren probieren von anderen Hersteller, oder Stick noch mal flashen, ich habe aktuell letzte zStack3x0 ,womit kann man noch flashen?

        D 1 Antwort Letzte Antwort
        0
        • D diti

          @asgothian . Da sind die Meldungen, es passiert einfach nichts wenn ich die Sensoren zusammen und auseinander tue oder System bekommt keinen Wert. Es ist so als ob der zigbee-herdsman-converter nicht richtig mit Sensor arbeitet.
          Unbenannt.PNG11.PNG
          Beim Reset-Drücken passiert folgendes:
          Unbenannt.PNG12.PNG
          Ich muss wohl mit anderen Sensoren probieren von anderen Hersteller, oder Stick noch mal flashen, ich habe aktuell letzte zStack3x0 ,womit kann man noch flashen?

          D Offline
          D Offline
          diti
          schrieb am zuletzt editiert von
          #13

          Ich habe es hinbekommen, SD-Karte mit langsamer Geschwindigkeit formatiert, ioBroker noch mal installiert, Browser-cookies gelöscht und eingestellt dass die nicht für diese Adresse nicht gespeichert werden. Alles läuft die Thermostate sind erkannt und steuerbar, Reedschalter senden Status ohne Verzögerung und werden von System schnell verarbeitet.
          12t.PNG

          @asgothian großen Dank für Unterstützung

          ? 2 Antworten Letzte Antwort
          0
          • D diti

            Ich habe es hinbekommen, SD-Karte mit langsamer Geschwindigkeit formatiert, ioBroker noch mal installiert, Browser-cookies gelöscht und eingestellt dass die nicht für diese Adresse nicht gespeichert werden. Alles läuft die Thermostate sind erkannt und steuerbar, Reedschalter senden Status ohne Verzögerung und werden von System schnell verarbeitet.
            12t.PNG

            @asgothian großen Dank für Unterstützung

            ? Offline
            ? Offline
            Ein ehemaliger Benutzer
            schrieb am zuletzt editiert von
            #14

            @diti
            Hi, die Thermostate finde ich nicht uninteressant. Kannst Du nochmal kurz sagen, ob die jetzt doch "out of the box" laufen in der neusten Adapterversion oder hast Du hier manuell noch eingegriffen? Thx.

            D 1 Antwort Letzte Antwort
            0
            • ? Ein ehemaliger Benutzer

              @diti
              Hi, die Thermostate finde ich nicht uninteressant. Kannst Du nochmal kurz sagen, ob die jetzt doch "out of the box" laufen in der neusten Adapterversion oder hast Du hier manuell noch eingegriffen? Thx.

              D Offline
              D Offline
              diti
              schrieb am zuletzt editiert von
              #15

              @pete0815
              die laufen lokal bei mir, die sind noch nicht in zigbee2mqtt-Liste der unterstützten Geräte eingetragen.

              ? AsgothianA 2 Antworten Letzte Antwort
              0
              • D diti

                @pete0815
                die laufen lokal bei mir, die sind noch nicht in zigbee2mqtt-Liste der unterstützten Geräte eingetragen.

                ? Offline
                ? Offline
                Ein ehemaliger Benutzer
                schrieb am zuletzt editiert von Ein ehemaliger Benutzer
                #16

                @diti said in Neue Tuya Thermostat Zigbee 3.0:

                @pete0815
                die laufen lokal bei mir, die sind noch nicht in zigbee2mqtt-Liste der unterstützten Geräte eingetragen.

                verstehe ich nicht wirklich mit Deinen gezeigten Bildern. Diese zeigen doch Bilder des Zigbee-Adapters unter IOBroker wo die angelernten Devices gelistet sind, oder habe ich etwas falsch verstanden?
                Bei mir läuft auch ein CC2652P mit dem Zigbee Adapter von IObroker. Beim "einfachen" Pairing werden die Thermostate also derzeit nicht gefunden bzw. sind noch nicht hinterlegt?

                D 1 Antwort Letzte Antwort
                0
                • ? Ein ehemaliger Benutzer

                  @diti said in Neue Tuya Thermostat Zigbee 3.0:

                  @pete0815
                  die laufen lokal bei mir, die sind noch nicht in zigbee2mqtt-Liste der unterstützten Geräte eingetragen.

                  verstehe ich nicht wirklich mit Deinen gezeigten Bildern. Diese zeigen doch Bilder des Zigbee-Adapters unter IOBroker wo die angelernten Devices gelistet sind, oder habe ich etwas falsch verstanden?
                  Bei mir läuft auch ein CC2652P mit dem Zigbee Adapter von IObroker. Beim "einfachen" Pairing werden die Thermostate also derzeit nicht gefunden bzw. sind noch nicht hinterlegt?

                  D Offline
                  D Offline
                  diti
                  schrieb am zuletzt editiert von
                  #17

                  @pete0815
                  Das war Anfang der Geschichte, als ich noch 0 Ahnung gehabt welche Unterschied gibt zwischen unterstützen und nicht unterstützen Geräten, für mich war so das alle Tuya-Geräten laufen mit USB-Stick

                  D 1 Antwort Letzte Antwort
                  0
                  • D diti

                    Ich habe es hinbekommen, SD-Karte mit langsamer Geschwindigkeit formatiert, ioBroker noch mal installiert, Browser-cookies gelöscht und eingestellt dass die nicht für diese Adresse nicht gespeichert werden. Alles läuft die Thermostate sind erkannt und steuerbar, Reedschalter senden Status ohne Verzögerung und werden von System schnell verarbeitet.
                    12t.PNG

                    @asgothian großen Dank für Unterstützung

                    ? Offline
                    ? Offline
                    Ein ehemaliger Benutzer
                    schrieb am zuletzt editiert von
                    #18

                    @diti said in Neue Tuya Thermostat Zigbee 3.0:

                    12t.PNG

                    Also dies ist (leider) nicht ein Zustand wie er über das "normale" Pairing erreichbar ist?

                    1 Antwort Letzte Antwort
                    0
                    • D diti

                      @pete0815
                      Das war Anfang der Geschichte, als ich noch 0 Ahnung gehabt welche Unterschied gibt zwischen unterstützen und nicht unterstützen Geräten, für mich war so das alle Tuya-Geräten laufen mit USB-Stick

                      D Offline
                      D Offline
                      diti
                      schrieb am zuletzt editiert von
                      #19

                      @diti
                      Ich schreibe dir eine Anleitung wie du die zum laufen bringst, aber morgen, jetzt muss ich leider zur Arbeit.

                      ? T B 3 Antworten Letzte Antwort
                      0
                      • D diti

                        @diti
                        Ich schreibe dir eine Anleitung wie du die zum laufen bringst, aber morgen, jetzt muss ich leider zur Arbeit.

                        ? Offline
                        ? Offline
                        Ein ehemaliger Benutzer
                        schrieb am zuletzt editiert von Ein ehemaliger Benutzer
                        #20

                        @diti kein Stress, Danke. Ich muß erstmal welche kaufen/bestellen bzw. lasse ich das wenn es nicht sinnvoll ist. Deswegen frage ich :)
                        Möchte mir ja auch keinen "Einzelfall" basteln den ich nacher nur als Problem mitschleppe und nicht handeln kann.

                        1 Antwort Letzte Antwort
                        0
                        • D diti

                          @pete0815
                          die laufen lokal bei mir, die sind noch nicht in zigbee2mqtt-Liste der unterstützten Geräte eingetragen.

                          AsgothianA Offline
                          AsgothianA Offline
                          Asgothian
                          Developer
                          schrieb am zuletzt editiert von
                          #21

                          @diti sagte in Neue Tuya Thermostat Zigbee 3.0:

                          @pete0815
                          die laufen lokal bei mir, die sind noch nicht in zigbee2mqtt-Liste der unterstützten Geräte eingetragen.

                          Wenn du die durch Modifikationen zum laufen bekommen hast wäre es nett diese auch hier bzw. besser noch am zigbee-herdsman-converters projekt auf GitHub zu posten, dann können die offiziell unterstützt werden.

                          A.

                          ioBroker auf RPi4 - Hardware soweit wie möglich via Zigbee.
                          "Shit don't work" ist keine Fehlermeldung, sondern ein Fluch.

                          1 Antwort Letzte Antwort
                          1
                          • D diti

                            @diti
                            Ich schreibe dir eine Anleitung wie du die zum laufen bringst, aber morgen, jetzt muss ich leider zur Arbeit.

                            T Offline
                            T Offline
                            tyros5
                            schrieb am zuletzt editiert von
                            #22

                            @diti Hi Diti, ich würde mich auch interessieren, da es kälter wird und drei Thermostaten dieser Art aktuell nutzlos liegen... Wird Deine Anleitung hier gepostet, bzw. könntest Du bitte den Link auf andere Seite hier posten (googlen hat mir bisher nicht geholfen). Dankeschön im Voraus!

                            1 Antwort Letzte Antwort
                            0
                            • D diti

                              @diti
                              Ich schreibe dir eine Anleitung wie du die zum laufen bringst, aber morgen, jetzt muss ich leider zur Arbeit.

                              B Offline
                              B Offline
                              bluefish
                              schrieb am zuletzt editiert von
                              #23

                              @diti würde mich auch über eine Anleitung freuen. Bekomme das Thermostat aktuell auch nicht zum Laufen :(
                              Danke im Voraus!

                              D 1 Antwort Letzte Antwort
                              0
                              • B bluefish

                                @diti würde mich auch über eine Anleitung freuen. Bekomme das Thermostat aktuell auch nicht zum Laufen :(
                                Danke im Voraus!

                                D Offline
                                D Offline
                                diti
                                schrieb am zuletzt editiert von
                                #24

                                @bluefish
                                Idealerweise um volle Funktionalität von diesen Thermostaten zu haben, man muss einen "externen Converter" für die Dinge schreiben, leider bin ich nicht so weit in Programmierung oder ehrlich zu sagen gar nicht so weit. Das einzige was mir eingefallen ist, die Namen von Thermostaten zu bestehenden beizumischen und Datenpunkten anzupassen. Dadurch es ist möglich geworden: gewünschte Temperatur zusetzen, lokale Temp. auszulesen, mehr brauche ich nicht.
                                Also zu Sache.
                                Eine Datei tuya.js finden.
                                /opt/iobroker/node_modules/zigbee-herdsman-converters/devices/tuya.js
                                Thermostat-Name {modelID: 'TS0601', manufacturerName: '_TZE200_hue3yfsn'}
                                Zu den anderen einfügen ungefähr Zeile 650 und speichern.

                                zigbeeModel: ['kud7u2l'],
                                        fingerprint: [{modelID: 'TS0601', manufacturerName: '_TZE200_ckud7u2l'}, {modelID: 'TS0601', manufacturerName: '_TZE200_ywdxldoj'},
                                            {modelID: 'TS0601', manufacturerName: '_TZE200_cwnjrr72'}, {modelID: 'TS0601', manufacturerName: '_TZE200_hue3yfsn'}],
                                        model: 'TS0601_thermostat',
                                        vendor: 'TuYa',
                                

                                Nächste Datei finden unter:
                                /opt/iobroker/node_modules/zigbee-herdsman-converters/lib/tuya.js
                                Und Data Point ID anzupassen.

                                const dataPoints = {
                                    // Common data points
                                    // Below data points are usually shared between devices
                                    state: 1,
                                    heatingSetpoint: 16,
                                    coverPosition: 2,
                                    dimmerLevel: 3,
                                    localTemp: 24,
                                    coverArrived: 3,
                                    occupancy: 3,
                                    mode: 4,
                                    fanMode: 5,
                                    motorDirection: 5,
                                    config: 5,
                                    childLock: 40,
                                    coverChange: 7,
                                    runningState: 14,
                                    valveDetection: 20,
                                    battery: 35,
                                    tempCalibration: 27,
                                    // Data points above 100 are usually custom function data points
                                    waterLeak: 101,
                                    minTemp: 118,
                                    maxTemp: 119,
                                    windowDetection: 8,
                                    boostTime: 105,
                                    coverSpeed: 105,
                                    forceMode: 106,
                                    comfortTemp: 104,
                                    ecoTemp: 105,
                                    valvePos: 109,
                                    batteryLow: 35,
                                    weekFormat: 111,
                                    scheduleWorkday: 112,
                                    scheduleHoliday: 113,
                                    awayTemp: 32,
                                    autoLock: 116,
                                    awayDays: 31,
                                

                                Ich habe nicht alle Data Points geändert nur die, die ich brauche, ihr könnt mit den anderen ausprobieren vielleicht bekommt noch mehr Funktionen.
                                Datei speichern, Ziegbee-Adapter neu starten und mit Kopplung anfangen.
                                Viel Erfolg!

                                AsgothianA B 2 Antworten Letzte Antwort
                                1
                                • D diti

                                  @bluefish
                                  Idealerweise um volle Funktionalität von diesen Thermostaten zu haben, man muss einen "externen Converter" für die Dinge schreiben, leider bin ich nicht so weit in Programmierung oder ehrlich zu sagen gar nicht so weit. Das einzige was mir eingefallen ist, die Namen von Thermostaten zu bestehenden beizumischen und Datenpunkten anzupassen. Dadurch es ist möglich geworden: gewünschte Temperatur zusetzen, lokale Temp. auszulesen, mehr brauche ich nicht.
                                  Also zu Sache.
                                  Eine Datei tuya.js finden.
                                  /opt/iobroker/node_modules/zigbee-herdsman-converters/devices/tuya.js
                                  Thermostat-Name {modelID: 'TS0601', manufacturerName: '_TZE200_hue3yfsn'}
                                  Zu den anderen einfügen ungefähr Zeile 650 und speichern.

                                  zigbeeModel: ['kud7u2l'],
                                          fingerprint: [{modelID: 'TS0601', manufacturerName: '_TZE200_ckud7u2l'}, {modelID: 'TS0601', manufacturerName: '_TZE200_ywdxldoj'},
                                              {modelID: 'TS0601', manufacturerName: '_TZE200_cwnjrr72'}, {modelID: 'TS0601', manufacturerName: '_TZE200_hue3yfsn'}],
                                          model: 'TS0601_thermostat',
                                          vendor: 'TuYa',
                                  

                                  Nächste Datei finden unter:
                                  /opt/iobroker/node_modules/zigbee-herdsman-converters/lib/tuya.js
                                  Und Data Point ID anzupassen.

                                  const dataPoints = {
                                      // Common data points
                                      // Below data points are usually shared between devices
                                      state: 1,
                                      heatingSetpoint: 16,
                                      coverPosition: 2,
                                      dimmerLevel: 3,
                                      localTemp: 24,
                                      coverArrived: 3,
                                      occupancy: 3,
                                      mode: 4,
                                      fanMode: 5,
                                      motorDirection: 5,
                                      config: 5,
                                      childLock: 40,
                                      coverChange: 7,
                                      runningState: 14,
                                      valveDetection: 20,
                                      battery: 35,
                                      tempCalibration: 27,
                                      // Data points above 100 are usually custom function data points
                                      waterLeak: 101,
                                      minTemp: 118,
                                      maxTemp: 119,
                                      windowDetection: 8,
                                      boostTime: 105,
                                      coverSpeed: 105,
                                      forceMode: 106,
                                      comfortTemp: 104,
                                      ecoTemp: 105,
                                      valvePos: 109,
                                      batteryLow: 35,
                                      weekFormat: 111,
                                      scheduleWorkday: 112,
                                      scheduleHoliday: 113,
                                      awayTemp: 32,
                                      autoLock: 116,
                                      awayDays: 31,
                                  

                                  Ich habe nicht alle Data Points geändert nur die, die ich brauche, ihr könnt mit den anderen ausprobieren vielleicht bekommt noch mehr Funktionen.
                                  Datei speichern, Ziegbee-Adapter neu starten und mit Kopplung anfangen.
                                  Viel Erfolg!

                                  AsgothianA Offline
                                  AsgothianA Offline
                                  Asgothian
                                  Developer
                                  schrieb am zuletzt editiert von
                                  #25

                                  @diti sagte in Neue Tuya Thermostat Zigbee 3.0:

                                  @bluefish
                                  Idealerweise um volle Funktionalität von diesen Thermostaten zu haben, man muss einen "externen Converter" für die Dinge schreiben, leider bin ich nicht so weit in Programmierung oder ehrlich zu sagen gar nicht so weit. Das einzige was mir eingefallen ist, die Namen von Thermostaten zu bestehenden beizumischen und Datenpunkten anzupassen. Dadurch es ist möglich geworden: gewünschte Temperatur zusetzen, lokale Temp. auszulesen, mehr brauche ich nicht.
                                  Also zu Sache.
                                  Eine Datei tuya.js finden.
                                  /opt/iobroker/node_modules/zigbee-herdsman-converters/devices/tuya.js
                                  Thermostat-Name {modelID: 'TS0601', manufacturerName: '_TZE200_hue3yfsn'}
                                  Zu den anderen einfügen ungefähr Zeile 650 und speichern.

                                  zigbeeModel: ['kud7u2l'],
                                          fingerprint: [{modelID: 'TS0601', manufacturerName: '_TZE200_ckud7u2l'}, {modelID: 'TS0601', manufacturerName: '_TZE200_ywdxldoj'},
                                              {modelID: 'TS0601', manufacturerName: '_TZE200_cwnjrr72'}, {modelID: 'TS0601', manufacturerName: '_TZE200_hue3yfsn'}],
                                          model: 'TS0601_thermostat',
                                          vendor: 'TuYa',
                                  

                                  Nächste Datei finden unter:
                                  /opt/iobroker/node_modules/zigbee-herdsman-converters/lib/tuya.js
                                  Und Data Point ID anzupassen.

                                  const dataPoints = {
                                      // Common data points
                                      // Below data points are usually shared between devices
                                      state: 1,
                                      heatingSetpoint: 16,
                                      coverPosition: 2,
                                      dimmerLevel: 3,
                                      localTemp: 24,
                                      coverArrived: 3,
                                      occupancy: 3,
                                      mode: 4,
                                      fanMode: 5,
                                      motorDirection: 5,
                                      config: 5,
                                      childLock: 40,
                                      coverChange: 7,
                                      runningState: 14,
                                      valveDetection: 20,
                                      battery: 35,
                                      tempCalibration: 27,
                                      // Data points above 100 are usually custom function data points
                                      waterLeak: 101,
                                      minTemp: 118,
                                      maxTemp: 119,
                                      windowDetection: 8,
                                      boostTime: 105,
                                      coverSpeed: 105,
                                      forceMode: 106,
                                      comfortTemp: 104,
                                      ecoTemp: 105,
                                      valvePos: 109,
                                      batteryLow: 35,
                                      weekFormat: 111,
                                      scheduleWorkday: 112,
                                      scheduleHoliday: 113,
                                      awayTemp: 32,
                                      autoLock: 116,
                                      awayDays: 31,
                                  

                                  Ich habe nicht alle Data Points geändert nur die, die ich brauche, ihr könnt mit den anderen ausprobieren vielleicht bekommt noch mehr Funktionen.
                                  Datei speichern, Ziegbee-Adapter neu starten und mit Kopplung anfangen.
                                  Viel Erfolg!

                                  Dieses Vorgehen ist gefährlich - es kann dazu führen das andere Thermostate nicht mehr funktionieren wenn data-point id’s umgeschrieben werden.

                                  In diesem Fall sind weitere Anpassungen notwendig um neue data-point id’s hinzufügen.

                                  A.

                                  ioBroker auf RPi4 - Hardware soweit wie möglich via Zigbee.
                                  "Shit don't work" ist keine Fehlermeldung, sondern ein Fluch.

                                  D 1 Antwort Letzte Antwort
                                  0
                                  • AsgothianA Asgothian

                                    @diti sagte in Neue Tuya Thermostat Zigbee 3.0:

                                    @bluefish
                                    Idealerweise um volle Funktionalität von diesen Thermostaten zu haben, man muss einen "externen Converter" für die Dinge schreiben, leider bin ich nicht so weit in Programmierung oder ehrlich zu sagen gar nicht so weit. Das einzige was mir eingefallen ist, die Namen von Thermostaten zu bestehenden beizumischen und Datenpunkten anzupassen. Dadurch es ist möglich geworden: gewünschte Temperatur zusetzen, lokale Temp. auszulesen, mehr brauche ich nicht.
                                    Also zu Sache.
                                    Eine Datei tuya.js finden.
                                    /opt/iobroker/node_modules/zigbee-herdsman-converters/devices/tuya.js
                                    Thermostat-Name {modelID: 'TS0601', manufacturerName: '_TZE200_hue3yfsn'}
                                    Zu den anderen einfügen ungefähr Zeile 650 und speichern.

                                    zigbeeModel: ['kud7u2l'],
                                            fingerprint: [{modelID: 'TS0601', manufacturerName: '_TZE200_ckud7u2l'}, {modelID: 'TS0601', manufacturerName: '_TZE200_ywdxldoj'},
                                                {modelID: 'TS0601', manufacturerName: '_TZE200_cwnjrr72'}, {modelID: 'TS0601', manufacturerName: '_TZE200_hue3yfsn'}],
                                            model: 'TS0601_thermostat',
                                            vendor: 'TuYa',
                                    

                                    Nächste Datei finden unter:
                                    /opt/iobroker/node_modules/zigbee-herdsman-converters/lib/tuya.js
                                    Und Data Point ID anzupassen.

                                    const dataPoints = {
                                        // Common data points
                                        // Below data points are usually shared between devices
                                        state: 1,
                                        heatingSetpoint: 16,
                                        coverPosition: 2,
                                        dimmerLevel: 3,
                                        localTemp: 24,
                                        coverArrived: 3,
                                        occupancy: 3,
                                        mode: 4,
                                        fanMode: 5,
                                        motorDirection: 5,
                                        config: 5,
                                        childLock: 40,
                                        coverChange: 7,
                                        runningState: 14,
                                        valveDetection: 20,
                                        battery: 35,
                                        tempCalibration: 27,
                                        // Data points above 100 are usually custom function data points
                                        waterLeak: 101,
                                        minTemp: 118,
                                        maxTemp: 119,
                                        windowDetection: 8,
                                        boostTime: 105,
                                        coverSpeed: 105,
                                        forceMode: 106,
                                        comfortTemp: 104,
                                        ecoTemp: 105,
                                        valvePos: 109,
                                        batteryLow: 35,
                                        weekFormat: 111,
                                        scheduleWorkday: 112,
                                        scheduleHoliday: 113,
                                        awayTemp: 32,
                                        autoLock: 116,
                                        awayDays: 31,
                                    

                                    Ich habe nicht alle Data Points geändert nur die, die ich brauche, ihr könnt mit den anderen ausprobieren vielleicht bekommt noch mehr Funktionen.
                                    Datei speichern, Ziegbee-Adapter neu starten und mit Kopplung anfangen.
                                    Viel Erfolg!

                                    Dieses Vorgehen ist gefährlich - es kann dazu führen das andere Thermostate nicht mehr funktionieren wenn data-point id’s umgeschrieben werden.

                                    In diesem Fall sind weitere Anpassungen notwendig um neue data-point id’s hinzufügen.

                                    A.

                                    D Offline
                                    D Offline
                                    diti
                                    schrieb am zuletzt editiert von diti
                                    #26

                                    @asgothian
                                    Ich weiß, habe nur diese, rückgängig kann man auch machen habe ich schon probiert.
                                    ich habe im Github Forum externen Converter von kvazis gefunden die Data Points sind identisch, der Converter aber für HA gemacht. Ich habe da kleine Anpassungen gemacht , Temperatur einstellen funktioniert zwar aber Rückmeldung von TRV kommt nicht, was ist falsch ?

                                    /// Based on:
                                    // https://gist.github.com/basveeling/96ff0f16cd7185b0277a26c8d9305633
                                    // https://github.com/Koenkk/zigbee-herdsman-converters/issues/1803
                                    // https://github.com/Koenkk/zigbee-herdsman-converters/pull/2209
                                    //https://gist.github.com/serrj-sv/af142b25de2d7ac54c3a2eb2623d9a6d#file-moes_radiator_alt-js-L328
                                    //// Credits:
                                    // @serrj-sv, @wollo, @basveeling
                                    //// Usage: 
                                    // zzonesmart_tvg01zg.js in the root of your zigbee2mqtt data folder (as stated in data_path, e.g. /config/zigbee2mqtt_data)
                                    // In your zigbee2mqtt hassio addon configuration, add the following two lines:
                                    // ...
                                    // external_converters:
                                    //   - zzonesmart_tvg01zg.js
                                    // ...
                                    const fz = require('zigbee-herdsman-converters/converters/fromZigbee');
                                    const tz = require('zigbee-herdsman-converters/converters/toZigbee');
                                    const tuya = require('zigbee-herdsman-converters/lib/tuya');
                                    const exposes = require('zigbee-herdsman-converters/lib/exposes');
                                    const reporting = require('zigbee-herdsman-converters/lib/reporting');
                                    const e = exposes.presets;
                                    const ea = exposes.access;
                                    
                                    const tuyaLocal = {
                                    	dataPoints: {
                                        // ZONNSMART
                                        zsHeatingSetpoint: 16,
                                        zsFrostDetection: 10,
                                        zsWindowDetection: 8,
                                        zsChildLock: 40,
                                        zsTempCalibration: 27,
                                        zsLocalTemp: 24,
                                        zsBattery: 35,
                                        zsHeatingBoostCountdown: 101,
                                        zsComfortTemp: 104,
                                        zsEcoTemp: 105,
                                        zsAwayTemp: 32,
                                        zsErrorStatus: 45,
                                        zsMode: 2,
                                        zsHeatingStop: 107,
                                    	},
                                    };
                                    const fzLocal = {
                                        zs_thermostat: {
                                            cluster: 'manuSpecificTuya',
                                            type: ['commandGetData', 'commandSetDataResponse'],
                                            convert: (model, msg, publish, options, meta) => {
                                                const dp = msg.data.dp;
                                                const value = tuya.getDataValue(msg.data.datatype, msg.data.data);
                                    
                                                // if (dp >= 101 && dp <=107) return; // handled by tuya_thermostat_weekly_schedule
                                    
                                                switch (dp) {
                                                case tuya.dataPoints.state: // on/off
                                                    return !value ? {system_mode: 'off'} : {};
                                    
                                                case tuyaLocal.dataPoints.zsChildLock:
                                                    return {child_lock: value ? 'LOCK' : 'UNLOCK'};
                                    
                                                case tuyaLocal.dataPoints.zsHeatingSetpoint:
                                                    return {current_heating_setpoint: (value / 10).toFixed(1)};
                                    
                                                case tuyaLocal.dataPoints.zsLocalTemp:
                                                    return {local_temperature: (value / 10).toFixed(1)};
                                    
                                                case tuyaLocal.dataPoints.zsBattery:
                                                     return {battery: value};
                                    
                                                case tuyaLocal.dataPoints.zsTempCalibration:
                                                    return {local_temperature_calibration: value > 55 ?
                                                        ((value - 0x100000000)/10).toFixed(1): (value/ 10).toFixed(1)};
                                    
                                                case tuyaLocal.dataPoints.zsHeatingBoostCountdown:
                                                    return {heating_boost_countdown: value};
                                    
                                                case tuyaLocal.dataPoints.zsWindowDetection:
                                                    return {window_detection: value ? 'ON' : 'OFF'};
                                    
                                                case tuyaLocal.dataPoints.zsComfortTemp:
                                                    return {comfort_temperature: (value / 10).toFixed(1)};
                                    
                                                case tuyaLocal.dataPoints.zsEcoTemp:
                                                    return {eco_temperature: (value / 10).toFixed(1)};
                                    
                                                case tuyaLocal.dataPoints.zsAwayTemp:
                                                    return {away_preset_temperature: (value / 10).toFixed(1)};
                                    
                                                case tuyaLocal.dataPoints.zsMode:
                                                    switch (value) {
                                                    case 1: // manual
                                                        return {system_mode: 'heat', away_mode: 'OFF', preset: 'manual'};
                                                    case 3: // away
                                                        return {system_mode: 'heat', away_mode: 'ON', preset: 'vacation'};
                                                    case 0: // auto
                                                        return {system_mode: 'auto', away_mode: 'OFF', preset: 'schedule'};
                                                    default:
                                                        meta.logger.warn('zigbee-herdsman-converters:zsThermostat: ' +
                                                            `preset ${value} is not recognized.`);
                                                        break;
                                                    }
                                                    break;
                                    
                                                case tuya.dataPoints.runningState:
                                                    return {running_state: value ? 'heat' : 'idle'};
                                    
                                                default:
                                                    meta.logger.warn(`zigbee-herdsman-converters:zsThermostat: Unrecognized DP #${
                                                        dp} with data ${JSON.stringify(msg.data)}`);
                                                }
                                            },
                                        },
                                    };
                                    const tzLocal = {
                                        zs_thermostat_child_lock: {
                                            key: ['child_lock'],
                                            convertSet: async (entity, key, value, meta) => {
                                                await tuya.sendDataPointBool(entity, tuyaLocal.dataPoints.zsChildLock, value === 'LOCK');
                                            },
                                        },
                                        zs_thermostat_window_detection: {
                                            key: ['window_detection'],
                                            convertSet: async (entity, key, value, meta) => {
                                                await tuya.sendDataPointBool(entity, tuyaLocal.dataPoints.zsWindowDetection, value === 'ON');
                                            },
                                        },
                                        zs_thermostat_current_heating_setpoint: {
                                            key: ['current_heating_setpoint'],
                                            convertSet: async (entity, key, value, meta) => {
                                                const temp = Math.round(value * 10);
                                                await tuya.sendDataPointValue(entity, tuyaLocal.dataPoints.zsHeatingSetpoint, temp);
                                            },
                                        },
                                        zs_thermostat_comfort_temp: {
                                            key: ['comfort_temp_preset'],
                                            convertSet: async (entity, key, value, meta) => {
                                                const temp = Math.round(value * 10);
                                                await tuya.sendDataPointValue(entity, tuyaLocal.dataPoints.zsComfortTemp, temp);
                                            },
                                        },
                                        zs_thermostat_away_temp: {
                                            key: ['away_preset_temperature'],
                                            convertSet: async (entity, key, value, meta) => {
                                                const temp = Math.round(value * 10);
                                                await tuya.sendDataPointValue(entity, tuyaLocal.dataPoints.zsAwayTemp, temp);
                                            },
                                        },
                                        zs_thermostat_eco_temp: {
                                            key: ['eco_temp_preset'],
                                            convertSet: async (entity, key, value, meta) => {
                                                const temp = Math.round(value * 10);
                                                await tuya.sendDataPointValue(entity, tuyaLocal.dataPoints.zsEcoTemp, temp);
                                            },
                                        },
                                        zs_thermostat_system_mode_preset: {
                                            key: ['preset'],
                                            convertSet: async (entity, key, value, meta) => {
                                                const lookup = {'schedule': 0, 'manual': 1, 'holiday': 3};
                                                await tuya.sendDataPointEnum(entity, tuyaLocal.dataPoints.zsMode, lookup[value]);
                                            },
                                        },
                                        zs_thermostat_local_temperature_calibration: {
                                            key: ['local_temperature_calibration'],
                                            convertSet: async (entity, key, value, meta) => {
                                                if (value > 0) value = value*10;
                                                if (value < 0) value = value*10 + 0x100000000;
                                                await tuya.sendDataPointValue(entity, tuyaLocal.dataPoints.zsTempCalibration, value);
                                            },
                                        },
                                    };       
                                    const device = {
                                        // Moes Tuya Alt Thermostat
                                        zigbeeModel: ['TS601'],
                                        fingerprint: [{modelID: 'TS0601', manufacturerName: '_TZE200_e9ba97vf'}],
                                        model: 'TV01-ZG',
                                        vendor: 'ZONNSMART',
                                        description: 'Radiator valve with thermostat',
                                        fromZigbee: [
                                            fz.ignore_basic_report,
                                            fz.ignore_tuya_set_time,  // handled in onEvent
                                            fzLocal.zs_thermostat,
                                            // fz.tuya_data_point_dump,
                                        ],
                                        toZigbee: [
                                            tzLocal.zs_thermostat_current_heating_setpoint,
                                            tzLocal.zs_thermostat_child_lock,
                                            tzLocal.zs_thermostat_comfort_temp,
                                            tzLocal.zs_thermostat_eco_temp,
                                            tzLocal.zs_thermostat_system_mode_preset,
                                            tzLocal.zs_thermostat_local_temperature_calibration,
                                            tzLocal.zs_thermostat_away_temp,
                                            tzLocal.zs_thermostat_window_detection,
                                            tzLocal.zs_thermostat_heatingBoostCountdown,
                                            tz.tuya_data_point_test
                                        ],
                                        onEvent: tuya.onEventSetLocalTime,
                                        meta: {
                                            configureKey: 1,
                                        },
                                        configure: async (device, coordinatorEndpoint, logger) => {
                                            const endpoint = device.getEndpoint(1);
                                            await reporting.bind(endpoint, coordinatorEndpoint, ['genBasic']);
                                        },
                                        exposes: [
                                            e.battery(), e.window_detection(), e.child_lock(), e.comfort_temperature(), e.eco_temperature(), e.away_preset_temperature(),
                                            exposes.climate().withSetpoint('current_heating_setpoint', 0.5, 29.5, 0.5)
                                                             .withLocalTemperature()
                                                             .withLocalTemperatureCalibration()
                                                             .withSystemMode(['off', 'heat', 'auto'], ea.STATE_SET) //system mode only: off, heat, auto
                                                             .withPreset(['schedule', 'manual', 'holiday']),
                                            exposes.numeric('heating_boost_countdown', ea.STATE)
                                                ],
                                    };
                                    
                                    module.exports = device;
                                    
                                    ? 1 Antwort Letzte Antwort
                                    1
                                    • D diti

                                      @bluefish
                                      Idealerweise um volle Funktionalität von diesen Thermostaten zu haben, man muss einen "externen Converter" für die Dinge schreiben, leider bin ich nicht so weit in Programmierung oder ehrlich zu sagen gar nicht so weit. Das einzige was mir eingefallen ist, die Namen von Thermostaten zu bestehenden beizumischen und Datenpunkten anzupassen. Dadurch es ist möglich geworden: gewünschte Temperatur zusetzen, lokale Temp. auszulesen, mehr brauche ich nicht.
                                      Also zu Sache.
                                      Eine Datei tuya.js finden.
                                      /opt/iobroker/node_modules/zigbee-herdsman-converters/devices/tuya.js
                                      Thermostat-Name {modelID: 'TS0601', manufacturerName: '_TZE200_hue3yfsn'}
                                      Zu den anderen einfügen ungefähr Zeile 650 und speichern.

                                      zigbeeModel: ['kud7u2l'],
                                              fingerprint: [{modelID: 'TS0601', manufacturerName: '_TZE200_ckud7u2l'}, {modelID: 'TS0601', manufacturerName: '_TZE200_ywdxldoj'},
                                                  {modelID: 'TS0601', manufacturerName: '_TZE200_cwnjrr72'}, {modelID: 'TS0601', manufacturerName: '_TZE200_hue3yfsn'}],
                                              model: 'TS0601_thermostat',
                                              vendor: 'TuYa',
                                      

                                      Nächste Datei finden unter:
                                      /opt/iobroker/node_modules/zigbee-herdsman-converters/lib/tuya.js
                                      Und Data Point ID anzupassen.

                                      const dataPoints = {
                                          // Common data points
                                          // Below data points are usually shared between devices
                                          state: 1,
                                          heatingSetpoint: 16,
                                          coverPosition: 2,
                                          dimmerLevel: 3,
                                          localTemp: 24,
                                          coverArrived: 3,
                                          occupancy: 3,
                                          mode: 4,
                                          fanMode: 5,
                                          motorDirection: 5,
                                          config: 5,
                                          childLock: 40,
                                          coverChange: 7,
                                          runningState: 14,
                                          valveDetection: 20,
                                          battery: 35,
                                          tempCalibration: 27,
                                          // Data points above 100 are usually custom function data points
                                          waterLeak: 101,
                                          minTemp: 118,
                                          maxTemp: 119,
                                          windowDetection: 8,
                                          boostTime: 105,
                                          coverSpeed: 105,
                                          forceMode: 106,
                                          comfortTemp: 104,
                                          ecoTemp: 105,
                                          valvePos: 109,
                                          batteryLow: 35,
                                          weekFormat: 111,
                                          scheduleWorkday: 112,
                                          scheduleHoliday: 113,
                                          awayTemp: 32,
                                          autoLock: 116,
                                          awayDays: 31,
                                      

                                      Ich habe nicht alle Data Points geändert nur die, die ich brauche, ihr könnt mit den anderen ausprobieren vielleicht bekommt noch mehr Funktionen.
                                      Datei speichern, Ziegbee-Adapter neu starten und mit Kopplung anfangen.
                                      Viel Erfolg!

                                      B Offline
                                      B Offline
                                      bluefish
                                      schrieb am zuletzt editiert von
                                      #27

                                      @diti sagte in Neue Tuya Thermostat Zigbee 3.0:

                                      atei speichern, Ziegbee-Adapter neu starten und mit Kopplung anfangen.

                                      Danke, auch wenn es vielleicht nicht die beste Lösung ist, aber es funktioniert bei mir auch. Habe sonst auch keine Tuya Thermostate, daher kein Problem mit den data-point id's :)

                                      Danke für deine Anleitung :+1:

                                      B 1 Antwort Letzte Antwort
                                      1
                                      • B bluefish

                                        @diti sagte in Neue Tuya Thermostat Zigbee 3.0:

                                        atei speichern, Ziegbee-Adapter neu starten und mit Kopplung anfangen.

                                        Danke, auch wenn es vielleicht nicht die beste Lösung ist, aber es funktioniert bei mir auch. Habe sonst auch keine Tuya Thermostate, daher kein Problem mit den data-point id's :)

                                        Danke für deine Anleitung :+1:

                                        B Offline
                                        B Offline
                                        bluefish
                                        schrieb am zuletzt editiert von
                                        #28

                                        Weiß jemand, wie man ein converter file (z.B. https://github.com/PeWu/tuya-valve-z2m/blob/main/tuya_radiator_valve.js) im iobroker hinzufügt?

                                        B 1 Antwort Letzte Antwort
                                        0
                                        • D diti

                                          @asgothian
                                          Ich weiß, habe nur diese, rückgängig kann man auch machen habe ich schon probiert.
                                          ich habe im Github Forum externen Converter von kvazis gefunden die Data Points sind identisch, der Converter aber für HA gemacht. Ich habe da kleine Anpassungen gemacht , Temperatur einstellen funktioniert zwar aber Rückmeldung von TRV kommt nicht, was ist falsch ?

                                          /// Based on:
                                          // https://gist.github.com/basveeling/96ff0f16cd7185b0277a26c8d9305633
                                          // https://github.com/Koenkk/zigbee-herdsman-converters/issues/1803
                                          // https://github.com/Koenkk/zigbee-herdsman-converters/pull/2209
                                          //https://gist.github.com/serrj-sv/af142b25de2d7ac54c3a2eb2623d9a6d#file-moes_radiator_alt-js-L328
                                          //// Credits:
                                          // @serrj-sv, @wollo, @basveeling
                                          //// Usage: 
                                          // zzonesmart_tvg01zg.js in the root of your zigbee2mqtt data folder (as stated in data_path, e.g. /config/zigbee2mqtt_data)
                                          // In your zigbee2mqtt hassio addon configuration, add the following two lines:
                                          // ...
                                          // external_converters:
                                          //   - zzonesmart_tvg01zg.js
                                          // ...
                                          const fz = require('zigbee-herdsman-converters/converters/fromZigbee');
                                          const tz = require('zigbee-herdsman-converters/converters/toZigbee');
                                          const tuya = require('zigbee-herdsman-converters/lib/tuya');
                                          const exposes = require('zigbee-herdsman-converters/lib/exposes');
                                          const reporting = require('zigbee-herdsman-converters/lib/reporting');
                                          const e = exposes.presets;
                                          const ea = exposes.access;
                                          
                                          const tuyaLocal = {
                                          	dataPoints: {
                                              // ZONNSMART
                                              zsHeatingSetpoint: 16,
                                              zsFrostDetection: 10,
                                              zsWindowDetection: 8,
                                              zsChildLock: 40,
                                              zsTempCalibration: 27,
                                              zsLocalTemp: 24,
                                              zsBattery: 35,
                                              zsHeatingBoostCountdown: 101,
                                              zsComfortTemp: 104,
                                              zsEcoTemp: 105,
                                              zsAwayTemp: 32,
                                              zsErrorStatus: 45,
                                              zsMode: 2,
                                              zsHeatingStop: 107,
                                          	},
                                          };
                                          const fzLocal = {
                                              zs_thermostat: {
                                                  cluster: 'manuSpecificTuya',
                                                  type: ['commandGetData', 'commandSetDataResponse'],
                                                  convert: (model, msg, publish, options, meta) => {
                                                      const dp = msg.data.dp;
                                                      const value = tuya.getDataValue(msg.data.datatype, msg.data.data);
                                          
                                                      // if (dp >= 101 && dp <=107) return; // handled by tuya_thermostat_weekly_schedule
                                          
                                                      switch (dp) {
                                                      case tuya.dataPoints.state: // on/off
                                                          return !value ? {system_mode: 'off'} : {};
                                          
                                                      case tuyaLocal.dataPoints.zsChildLock:
                                                          return {child_lock: value ? 'LOCK' : 'UNLOCK'};
                                          
                                                      case tuyaLocal.dataPoints.zsHeatingSetpoint:
                                                          return {current_heating_setpoint: (value / 10).toFixed(1)};
                                          
                                                      case tuyaLocal.dataPoints.zsLocalTemp:
                                                          return {local_temperature: (value / 10).toFixed(1)};
                                          
                                                      case tuyaLocal.dataPoints.zsBattery:
                                                           return {battery: value};
                                          
                                                      case tuyaLocal.dataPoints.zsTempCalibration:
                                                          return {local_temperature_calibration: value > 55 ?
                                                              ((value - 0x100000000)/10).toFixed(1): (value/ 10).toFixed(1)};
                                          
                                                      case tuyaLocal.dataPoints.zsHeatingBoostCountdown:
                                                          return {heating_boost_countdown: value};
                                          
                                                      case tuyaLocal.dataPoints.zsWindowDetection:
                                                          return {window_detection: value ? 'ON' : 'OFF'};
                                          
                                                      case tuyaLocal.dataPoints.zsComfortTemp:
                                                          return {comfort_temperature: (value / 10).toFixed(1)};
                                          
                                                      case tuyaLocal.dataPoints.zsEcoTemp:
                                                          return {eco_temperature: (value / 10).toFixed(1)};
                                          
                                                      case tuyaLocal.dataPoints.zsAwayTemp:
                                                          return {away_preset_temperature: (value / 10).toFixed(1)};
                                          
                                                      case tuyaLocal.dataPoints.zsMode:
                                                          switch (value) {
                                                          case 1: // manual
                                                              return {system_mode: 'heat', away_mode: 'OFF', preset: 'manual'};
                                                          case 3: // away
                                                              return {system_mode: 'heat', away_mode: 'ON', preset: 'vacation'};
                                                          case 0: // auto
                                                              return {system_mode: 'auto', away_mode: 'OFF', preset: 'schedule'};
                                                          default:
                                                              meta.logger.warn('zigbee-herdsman-converters:zsThermostat: ' +
                                                                  `preset ${value} is not recognized.`);
                                                              break;
                                                          }
                                                          break;
                                          
                                                      case tuya.dataPoints.runningState:
                                                          return {running_state: value ? 'heat' : 'idle'};
                                          
                                                      default:
                                                          meta.logger.warn(`zigbee-herdsman-converters:zsThermostat: Unrecognized DP #${
                                                              dp} with data ${JSON.stringify(msg.data)}`);
                                                      }
                                                  },
                                              },
                                          };
                                          const tzLocal = {
                                              zs_thermostat_child_lock: {
                                                  key: ['child_lock'],
                                                  convertSet: async (entity, key, value, meta) => {
                                                      await tuya.sendDataPointBool(entity, tuyaLocal.dataPoints.zsChildLock, value === 'LOCK');
                                                  },
                                              },
                                              zs_thermostat_window_detection: {
                                                  key: ['window_detection'],
                                                  convertSet: async (entity, key, value, meta) => {
                                                      await tuya.sendDataPointBool(entity, tuyaLocal.dataPoints.zsWindowDetection, value === 'ON');
                                                  },
                                              },
                                              zs_thermostat_current_heating_setpoint: {
                                                  key: ['current_heating_setpoint'],
                                                  convertSet: async (entity, key, value, meta) => {
                                                      const temp = Math.round(value * 10);
                                                      await tuya.sendDataPointValue(entity, tuyaLocal.dataPoints.zsHeatingSetpoint, temp);
                                                  },
                                              },
                                              zs_thermostat_comfort_temp: {
                                                  key: ['comfort_temp_preset'],
                                                  convertSet: async (entity, key, value, meta) => {
                                                      const temp = Math.round(value * 10);
                                                      await tuya.sendDataPointValue(entity, tuyaLocal.dataPoints.zsComfortTemp, temp);
                                                  },
                                              },
                                              zs_thermostat_away_temp: {
                                                  key: ['away_preset_temperature'],
                                                  convertSet: async (entity, key, value, meta) => {
                                                      const temp = Math.round(value * 10);
                                                      await tuya.sendDataPointValue(entity, tuyaLocal.dataPoints.zsAwayTemp, temp);
                                                  },
                                              },
                                              zs_thermostat_eco_temp: {
                                                  key: ['eco_temp_preset'],
                                                  convertSet: async (entity, key, value, meta) => {
                                                      const temp = Math.round(value * 10);
                                                      await tuya.sendDataPointValue(entity, tuyaLocal.dataPoints.zsEcoTemp, temp);
                                                  },
                                              },
                                              zs_thermostat_system_mode_preset: {
                                                  key: ['preset'],
                                                  convertSet: async (entity, key, value, meta) => {
                                                      const lookup = {'schedule': 0, 'manual': 1, 'holiday': 3};
                                                      await tuya.sendDataPointEnum(entity, tuyaLocal.dataPoints.zsMode, lookup[value]);
                                                  },
                                              },
                                              zs_thermostat_local_temperature_calibration: {
                                                  key: ['local_temperature_calibration'],
                                                  convertSet: async (entity, key, value, meta) => {
                                                      if (value > 0) value = value*10;
                                                      if (value < 0) value = value*10 + 0x100000000;
                                                      await tuya.sendDataPointValue(entity, tuyaLocal.dataPoints.zsTempCalibration, value);
                                                  },
                                              },
                                          };       
                                          const device = {
                                              // Moes Tuya Alt Thermostat
                                              zigbeeModel: ['TS601'],
                                              fingerprint: [{modelID: 'TS0601', manufacturerName: '_TZE200_e9ba97vf'}],
                                              model: 'TV01-ZG',
                                              vendor: 'ZONNSMART',
                                              description: 'Radiator valve with thermostat',
                                              fromZigbee: [
                                                  fz.ignore_basic_report,
                                                  fz.ignore_tuya_set_time,  // handled in onEvent
                                                  fzLocal.zs_thermostat,
                                                  // fz.tuya_data_point_dump,
                                              ],
                                              toZigbee: [
                                                  tzLocal.zs_thermostat_current_heating_setpoint,
                                                  tzLocal.zs_thermostat_child_lock,
                                                  tzLocal.zs_thermostat_comfort_temp,
                                                  tzLocal.zs_thermostat_eco_temp,
                                                  tzLocal.zs_thermostat_system_mode_preset,
                                                  tzLocal.zs_thermostat_local_temperature_calibration,
                                                  tzLocal.zs_thermostat_away_temp,
                                                  tzLocal.zs_thermostat_window_detection,
                                                  tzLocal.zs_thermostat_heatingBoostCountdown,
                                                  tz.tuya_data_point_test
                                              ],
                                              onEvent: tuya.onEventSetLocalTime,
                                              meta: {
                                                  configureKey: 1,
                                              },
                                              configure: async (device, coordinatorEndpoint, logger) => {
                                                  const endpoint = device.getEndpoint(1);
                                                  await reporting.bind(endpoint, coordinatorEndpoint, ['genBasic']);
                                              },
                                              exposes: [
                                                  e.battery(), e.window_detection(), e.child_lock(), e.comfort_temperature(), e.eco_temperature(), e.away_preset_temperature(),
                                                  exposes.climate().withSetpoint('current_heating_setpoint', 0.5, 29.5, 0.5)
                                                                   .withLocalTemperature()
                                                                   .withLocalTemperatureCalibration()
                                                                   .withSystemMode(['off', 'heat', 'auto'], ea.STATE_SET) //system mode only: off, heat, auto
                                                                   .withPreset(['schedule', 'manual', 'holiday']),
                                                  exposes.numeric('heating_boost_countdown', ea.STATE)
                                                      ],
                                          };
                                          
                                          module.exports = device;
                                          
                                          ? Offline
                                          ? Offline
                                          Ein ehemaliger Benutzer
                                          schrieb am zuletzt editiert von
                                          #29

                                          @diti

                                          Thx. Konnte nun endlich mein Thermostat in Betrieb nehmen und bisher bin ich voll zufrieden und kann eigentlich nicht finden was nicht funktioniert. Nach dem Pairing ging alles "Out of the Box" mit Adapter 1.6.3.:
                                          20cb0993-5d5b-4af6-b5cc-f867c1859c48-grafik.png

                                          An 2 Punkten habe ich noch Fragezeichen:

                                          • Wo liegt der Unterschied im Preset Mode "Manual" oder z.B. "Comfort"?
                                            In Beiden kann ich nur die Target Temperature setzen und nicht die Ventilstellung.
                                          • Wenn ich über den Preset Punkt "schedule" nachdenke ihn zu nutzen, gibt es die Möglichkeit die Programme/Einstellungen per Zigbee zu programmieren und auszulesen? Am Ventil dies einzustellen ist ja richtig fummelig.
                                          AsgothianA D 2 Antworten Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate
                                          FAQ Cloud / IOT
                                          HowTo: Node.js-Update
                                          HowTo: Backup/Restore
                                          Downloads
                                          BLOG

                                          331

                                          Online

                                          32.5k

                                          Benutzer

                                          81.8k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Home
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe