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
    486

  • 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.
  • 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
                    • ? Ein ehemaliger Benutzer

                      @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 Offline
                      AsgothianA Offline
                      Asgothian
                      Developer
                      schrieb am zuletzt editiert von
                      #30

                      @pete0815 sagte in Tuya Thermostat (_TZE200_hue3yfsn):

                      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.

                      Lies mal hier: https://github.com/ioBroker/ioBroker.zigbee/issues/1244

                      Die genaue Syntax der Daten die du hin schickst must Du dir bei zigbee2mqtt.io anschauen.

                      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
                      • AsgothianA Asgothian

                        @pete0815 sagte in Tuya Thermostat (_TZE200_hue3yfsn):

                        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.

                        Lies mal hier: https://github.com/ioBroker/ioBroker.zigbee/issues/1244

                        Die genaue Syntax der Daten die du hin schickst must Du dir bei zigbee2mqtt.io anschauen.

                        A,

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

                        @asgothian

                        Vielen Dank! Da kann ich mir viel abgucken. Da ich mir nichts "zerschießen" möchte und ich es noch nicht gemacht habe, wie schicke ich die Daten zum Gerät?
                        Über das Developer Menü im Adapter und z.B. diese Daten dann im Experten-Modus bei JSON versenden?

                        sendTo('zigbee.0', 'SendToDevice', {'device':'5c0272fffedc3017', 'payload':{
                        "schedule": {
                        "workdays": [
                        {
                        "hour": 6,
                        "minute": 0,
                        "temperature": 19
                        },
                        {
                        "hour": 8,
                        "minute": 0,
                        "temperature": 21
                        },
                        {
                        "hour": 18,
                        "minute": 0,
                        "temperature": 21
                        },
                        {
                        "hour": 20,
                        "minute": 30,
                        "temperature": 20
                        },
                        {
                        "hour": 22,
                        "minute": 0,
                        "temperature": 19
                        },
                        {
                        "hour": 23,
                        "minute": 0,
                        "temperature": 17
                        }
                        ]
                        }
                        }}, function(res) {
                        if (res.success)
                        console.log("success")
                        else
                        console.log(res.error);
                        });
                        
                        AsgothianA 1 Antwort Letzte Antwort
                        0
                        • ? Ein ehemaliger Benutzer

                          @asgothian

                          Vielen Dank! Da kann ich mir viel abgucken. Da ich mir nichts "zerschießen" möchte und ich es noch nicht gemacht habe, wie schicke ich die Daten zum Gerät?
                          Über das Developer Menü im Adapter und z.B. diese Daten dann im Experten-Modus bei JSON versenden?

                          sendTo('zigbee.0', 'SendToDevice', {'device':'5c0272fffedc3017', 'payload':{
                          "schedule": {
                          "workdays": [
                          {
                          "hour": 6,
                          "minute": 0,
                          "temperature": 19
                          },
                          {
                          "hour": 8,
                          "minute": 0,
                          "temperature": 21
                          },
                          {
                          "hour": 18,
                          "minute": 0,
                          "temperature": 21
                          },
                          {
                          "hour": 20,
                          "minute": 30,
                          "temperature": 20
                          },
                          {
                          "hour": 22,
                          "minute": 0,
                          "temperature": 19
                          },
                          {
                          "hour": 23,
                          "minute": 0,
                          "temperature": 17
                          }
                          ]
                          }
                          }}, function(res) {
                          if (res.success)
                          console.log("success")
                          else
                          console.log(res.error);
                          });
                          
                          AsgothianA Offline
                          AsgothianA Offline
                          Asgothian
                          Developer
                          schrieb am zuletzt editiert von
                          #32

                          @pete0815 sagte in Tuya Thermostat (_TZE200_hue3yfsn):

                          @asgothian

                          Vielen Dank! Da kann ich mir viel abgucken. Da ich mir nichts "zerschießen" möchte und ich es noch nicht gemacht habe, wie schicke ich die Daten zum Gerät?
                          Über das Developer Menü im Adapter und z.B. diese Daten dann im Experten-Modus bei JSON versenden?

                          Zerschiessen kannst du da nichts.
                          Du musst den Code in ein JS Skript (oder dir ein entsprechendes Blockly Skript bauen) einbauen und das Skript einmal laufen lassen.

                          Über den Entwickler Modus geht bei den TuYa wenig.

                          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
                          • AsgothianA Asgothian

                            @pete0815 sagte in Tuya Thermostat (_TZE200_hue3yfsn):

                            @asgothian

                            Vielen Dank! Da kann ich mir viel abgucken. Da ich mir nichts "zerschießen" möchte und ich es noch nicht gemacht habe, wie schicke ich die Daten zum Gerät?
                            Über das Developer Menü im Adapter und z.B. diese Daten dann im Experten-Modus bei JSON versenden?

                            Zerschiessen kannst du da nichts.
                            Du musst den Code in ein JS Skript (oder dir ein entsprechendes Blockly Skript bauen) einbauen und das Skript einmal laufen lassen.

                            Über den Entwickler Modus geht bei den TuYa wenig.

                            A.

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

                            @asgothian
                            Danke, da hätte ich noch lange an falscher Stelle gesucht :joy:

                            1 Antwort Letzte Antwort
                            0
                            • ? Ein ehemaliger Benutzer

                              @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.
                              D Offline
                              D Offline
                              diti
                              schrieb am zuletzt editiert von
                              #34

                              @pete0815 sagte in Tuya Thermostat (_TZE200_hue3yfsn):

                              nur die Target Temperature setzen und nicht die Ventilstellung

                              bei mir geht die Ventilstellung-Steuerung auch nicht laut der Liste
                              DPs.PNG
                              diese Thermostate haben kein Data Point ID um das zu steuern.
                              Die Preset Mode ( 'manual', 'boost', 'complex', 'comfort', 'eco') benutze ich nicht, ich hab noch Werkeinstellungen. Ich hab bei mir einige Blockly Skripte laufen: ein Skript zum Beispiel in Interval 20 min. überprüft ob die Fenster geöffnet oder geschlossen sind, Uhrzeit und steuert entsprechend target_temperatur.

                              Im Bild mit Device Information was du gepostet hast steht manufacturerName: '_TZE200_cwnjrr72 warum?
                              Ich hab bei mir solche:5555.PNG

                              Was hast du geändert oder ist das der originale Name von Thermostat?

                              ? 1 Antwort Letzte Antwort
                              0
                              • D diti

                                @pete0815 sagte in Tuya Thermostat (_TZE200_hue3yfsn):

                                nur die Target Temperature setzen und nicht die Ventilstellung

                                bei mir geht die Ventilstellung-Steuerung auch nicht laut der Liste
                                DPs.PNG
                                diese Thermostate haben kein Data Point ID um das zu steuern.
                                Die Preset Mode ( 'manual', 'boost', 'complex', 'comfort', 'eco') benutze ich nicht, ich hab noch Werkeinstellungen. Ich hab bei mir einige Blockly Skripte laufen: ein Skript zum Beispiel in Interval 20 min. überprüft ob die Fenster geöffnet oder geschlossen sind, Uhrzeit und steuert entsprechend target_temperatur.

                                Im Bild mit Device Information was du gepostet hast steht manufacturerName: '_TZE200_cwnjrr72 warum?
                                Ich hab bei mir solche:5555.PNG

                                Was hast du geändert oder ist das der originale Name von Thermostat?

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

                                @diti said in Tuya Thermostat (_TZE200_hue3yfsn):

                                @pete0815 sagte in Tuya Thermostat (_TZE200_hue3yfsn):

                                nur die Target Temperature setzen und nicht die Ventilstellung

                                ok

                                Die Preset Mode ( 'manual', 'boost', 'complex', 'comfort', 'eco') benutze ich nicht, ich hab noch Werkeinstellungen.

                                Nutzen möchte ich das auch im Moment nicht. Da ich den Sinn noch nicht ganz verstehe dieser Presets, möchte ich wenigstens vermeiden, dass ich mit Blocklys gegen die interne Regelung des Ventils "ankämpfe".

                                Im Bild mit Device Information was du gepostet hast steht manufacturerName: '_TZE200_cwnjrr72 warum?
                                Ich hab bei mir solche:5555.PNG

                                Was hast du geändert oder ist das der originale Name von Thermostat?

                                Das wurde orginal nach dem Pairing so gesetzt. Habe nichts verändert.

                                D 1 Antwort Letzte Antwort
                                0
                                • ? Ein ehemaliger Benutzer

                                  @diti said in Tuya Thermostat (_TZE200_hue3yfsn):

                                  @pete0815 sagte in Tuya Thermostat (_TZE200_hue3yfsn):

                                  nur die Target Temperature setzen und nicht die Ventilstellung

                                  ok

                                  Die Preset Mode ( 'manual', 'boost', 'complex', 'comfort', 'eco') benutze ich nicht, ich hab noch Werkeinstellungen.

                                  Nutzen möchte ich das auch im Moment nicht. Da ich den Sinn noch nicht ganz verstehe dieser Presets, möchte ich wenigstens vermeiden, dass ich mit Blocklys gegen die interne Regelung des Ventils "ankämpfe".

                                  Im Bild mit Device Information was du gepostet hast steht manufacturerName: '_TZE200_cwnjrr72 warum?
                                  Ich hab bei mir solche:5555.PNG

                                  Was hast du geändert oder ist das der originale Name von Thermostat?

                                  Das wurde orginal nach dem Pairing so gesetzt. Habe nichts verändert.

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

                                  @pete0815
                                  dann sind deine Thermostate in zigbee2mqtt eingepflegt, du musst gar nicht verändern, probier Mal die in Home Assistant da kannst du eventuell mehr Funktionen herausholen.

                                  ? arteckA 2 Antworten Letzte Antwort
                                  0
                                  • D diti

                                    @pete0815
                                    dann sind deine Thermostate in zigbee2mqtt eingepflegt, du musst gar nicht verändern, probier Mal die in Home Assistant da kannst du eventuell mehr Funktionen herausholen.

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

                                    @diti
                                    bin aufm Sprung in den Urlaub und schaue ich danach mal.

                                    Im Moment funktioniert aber eigentlich alles und eine Erklärung um die Programme per Zigbee zu setzen gab es nettwerweise auch. Im Prinzip fehlt mir nix :)

                                    1 Antwort Letzte Antwort
                                    0
                                    • D diti

                                      @pete0815
                                      dann sind deine Thermostate in zigbee2mqtt eingepflegt, du musst gar nicht verändern, probier Mal die in Home Assistant da kannst du eventuell mehr Funktionen herausholen.

                                      arteckA Offline
                                      arteckA Offline
                                      arteck
                                      Developer Most Active
                                      schrieb am zuletzt editiert von
                                      #38

                                      @diti sagte in Tuya Thermostat (_TZE200_hue3yfsn):

                                      probier Mal die in Home Assistant da kannst du eventuell mehr Funktionen herausholen

                                      was willst du da mehr rausholen.. die greifen auch auf die gleiche Basis drauf.. z2m projekt

                                      zigbee hab ich, zwave auch, nuc's genauso und HA auch

                                      1 Antwort Letzte Antwort
                                      0
                                      • B bluefish

                                        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 Offline
                                        B Offline
                                        bluefish
                                        schrieb am zuletzt editiert von bluefish
                                        #39

                                        Hier die Beantwortung meiner eigenen Frage, vielleicht hat ja noch jemand die Frage zur Einbindung von converter files im iobroker...

                                        1. Man besorgt sich ein converter file für das nicht unterstützte Gerät. Ich habe dieses gefunden: https://github.com/PeWu/tuya-valve-z2m/blob/main/tuya_radiator_valve.js
                                          Funktioniert zwar nicht alles, aber setpoint, mode und child lock funktionieren, mehr hoffentlich bald

                                        2. Man legt das converter file (tuya_radiator_valve.js) zum Beispiel mit ftp irgendwo auf dem Pi ab. Ich habe dies einfach mal ins Verzeichnis /opt/iobroker/iobroker-data/ gelegt.

                                        3. Im iobroker Adapter gibt es unter dem Punkt Einstellungen eine Rubrik "External converters", ganz am Ende der Seite. Dort gibt man den Pfad zur .js Datei an.
                                          Bildschirmfoto 2021-11-02 um 12.03.10.png

                                        4. Adapter neu starten und _TZE200_hue3yfsn neu pairen. Anschließend wird das Gerät gefunden und hinzugefügt:
                                          Bildschirmfoto 2021-11-02 um 12.07.53.png

                                        M.M.n. die bessere Lösung gegenüber der Lösung von @diti mit der Modifikation von /opt/iobroker/node_modules/zigbee-herdsman-converters/devices/tuya.js und /opt/iobroker/node_modules/zigbee-herdsman-converters/lib/tuya.js

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

                                          @bluefish danke für deine Anleitung, leider wenn ich externen Converter benutze, bekomme ich von den Thermostaten keine Rückmeldung also keine locale Temperatur, ich hab verschiedene ausprobiert und mit immer gleichem Ergebnis. Auf Bildern von dir current Temperatur auch unbekannt, geht das?

                                          Mittlerweile habe ich andere "Mitfahrgelegenheit" für Thermostat (_TZE200_hue3yfsn) gefunden, und zwar bei TV01-ZB von Moes. Alle Data Point ID sind mit unserem identisch und alle steuerbar, Rückmeldung von TRV ist auch vorhanden, das heißt man muss nicht in /opt/iobroker/node_modules/zigbee-herdsman-converters/lib/tuya.js Anpassungen machen sondern in /opt/iobroker/node_modules/zigbee-herdsman-converters/devices/moes.js Thermostat-Name {modelID: 'TS0601', manufacturerName: '_TZE200_hue3yfsn'} einfügen.

                                          fingerprint: [{modelID: 'TS0601', manufacturerName: '_TZE200_e9ba97vf'}, {modelID: 'TS0601', manufacturerName: '_TZE200_hue3yfsn'}],
                                                  model: 'TV01-ZB',
                                                  vendor: 'Moes',
                                                  description: 'Thermostat radiator valve',
                                                  fromZigbee: [fz.moes_thermostat_tv, fz.ignore_tuya_set_time],
                                                  toZigbee: [tz.moes_thermostat_tv],
                                          

                                          1111.PNG
                                          11111.PNG
                                          TV01-ZB ist frisch in zigbee4mqtt integriert, deswegen musst ihr Zigbee-Adapter oder zigbee-herdsmann-converters aktualisieren, bei mir steht nämlich v1.6.4.
                                          Nicht vergessen alle gemachte Änderungen und Anpassungen in
                                          /opt/iobroker/node_modules/zigbee-herdsman-converters/devices/tuya.js und in /opt/iobroker/node_modules/zigbee-herdsman-converters/lib/tuya.js wieder rückgängig machen, oder die werden mit Aktualisierung überschrieben.

                                          B 1 Antwort 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

                                          812

                                          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