Apollon77 / ioBroker.tuya

ioBroker adapter to connect to several small and cheap Wifi devices that care connected to the Tuya Cloud and mostly use the Smartlife App/Alexa-Skill
MIT License
89 stars 23 forks source link

Tuya Thermostate falsche Wertebereiche #595

Open matze5000 opened 1 month ago

matze5000 commented 1 month ago

Bei der Verwendung der Tuya Thermostate werden plötzlich falsche Wertebereiche für die Set-Temperatur vorgegeben.

State value to set for "tuya.0.42310052e8db84c95b5d.2" has value "42" less than min "50"

In der Konfiguration steht plötzlich:

{ "type": "state", "common": { "type": "number", "unit": "℃", "min": 50, "max": 350, "scale": 1, "read": true, "write": true, "name": "TempSet", "role": "level" },

Ein manuelles Anpassen der Konfiguration ist zwar möglich aber leider nicht von Dauer.

Versions:

Apollon77 commented 1 month ago

"plötzlich" bedeutet? Update von welche auf welche Version oder was genau ist gemeint? Bitte das Device objekt also JSON posten - dann kommen die Werte wohl so von Tuya aus dem Schema.

matze5000 commented 1 month ago

Da das Update des tuya-Adapters schon länger her ist, muss es eine Änderung seitens Tuya gegeben haben. Über Jahre hatte ich keine Probleme.

Das ist das JSON des Devices. Das JSON des Werts habe ich in der Meldung gepostet.

{ "type": "device", "common": { "name": "Thermostat Ein", "read": true, "role": "thermostat" }, "native": { "virtual": false, "dpName": {}, "lon": "8.8022", "uuid": "1070736424a160383dae", "mac": "24a160383dae", "iconUrl": "https://images.tuyaeu.com/smart/icon/15264583415nnlzwfs1qd2wqz6i937op3nmi_0.png", "runtimeEnv": "prod", "lat": "50.5193", "devId": "1070736424a160383dae", "devKey": "", "dpMaxTime": 1668346753323, "productId": "IAYz2WK1th0cMLmL", "activeTime": 1639225003, "categoryCode": "wf_wk", "moduleMap": { "wifi": { "upgradeStatus": 0, "cdv": "1.0.0", "bv": "5.57", "pv": "2.2", "verSw": "3.1.4", "isOnline": true, "id": 49204639, "cadv": "" }, "mcu": { "upgradeStatus": 0, "cdv": "", "verSw": "1.0.0", "isOnline": true, "id": 49204640, "cadv": "" } }, "devAttribute": 3, "name": "Thermostat Ein", "timezoneId": "Europe/Berlin", "category": "wk", "localKey": "2d5e91d9fa0471c8", "schema": [ { "mode": "rw", "code": "Power", "name": "开关", "property": { "type": "bool" }, "iconname": "icon-dp_power", "id": 1, "type": "obj", "desc": "", "defaultValue": "", "canTrigger": true, "executable": true, "defaultRecommend": false, "editPermission": false, "subType": "bool" }, { "mode": "rw", "code": "TempSet", "name": "目标温度", "property": { "unit": "℃", "min": 10, "max": 80, "scale": 0, "step": 5, "type": "value" }, "iconname": "icon-dp_temp", "id": 2, "type": "obj", "desc": "", "defaultValue": "10", "canTrigger": true, "executable": true, "defaultRecommend": false, "editPermission": false, "subType": "value" }, { "mode": "ro", "code": "TempCurrent", "name": "当前温度", "property": { "unit": "℃", "min": 0, "max": 100, "scale": 0, "step": 5, "type": "value" }, "iconname": "icon-dp_sun", "id": 3, "type": "obj", "desc": "", "defaultValue": "0", "canTrigger": true, "executable": true, "defaultRecommend": false, "editPermission": false, "subType": "value" }, { "mode": "rw", "code": "Mode", "name": "模式", "property": { "range": [ "0", "1" ], "type": "enum" }, "iconname": "icon-dp_mode", "id": 4, "type": "obj", "desc": "", "defaultValue": "", "canTrigger": true, "executable": true, "defaultRecommend": false, "editPermission": false, "subType": "enum" }, { "mode": "rw", "code": "ECO", "name": "ECO模式", "property": { "type": "bool" }, "iconname": "icon-eco", "id": 5, "type": "obj", "desc": "", "defaultValue": "", "canTrigger": true, "executable": true, "defaultRecommend": false, "editPermission": false, "subType": "bool" }, { "mode": "rw", "code": "ChildLock", "name": "童锁", "property": { "type": "bool" }, "iconname": "icon-dp_lock", "id": 6, "type": "obj", "desc": "", "defaultValue": "", "canTrigger": true, "executable": true, "defaultRecommend": false, "editPermission": false, "subType": "bool" }, { "mode": "rw", "code": "program", "name": "周程序", "id": 101, "type": "raw", "desc": "对应星期一~星期五、星期六、星期日,每天六段,可设置每小时的温度范围。温度范围为5-35摄氏度。", "defaultValue": "", "canTrigger": true, "executable": true, "defaultRecommend": false, "editPermission": false, "subType": "raw", "property": { "type": "raw", "maxlen": 128 } }, { "mode": "ro", "code": "floorTemp", "name": "地板温度", "property": { "unit": "℃", "min": 0, "max": 198, "scale": 0, "step": 5, "type": "value" }, "id": 102, "type": "obj", "desc": "", "defaultValue": "0", "canTrigger": true, "executable": true, "defaultRecommend": false, "editPermission": false, "subType": "value" }, { "mode": "rw", "code": "tempSwitch", "name": "温度切换", "property": { "range": [ "0", "1" ], "type": "enum" }, "id": 103, "type": "obj", "desc": "", "defaultValue": "", "canTrigger": true, "executable": true, "defaultRecommend": false, "editPermission": false, "subType": "enum" }, { "mode": "ro", "code": "floortempFunction", "name": "地暖温度功能", "property": { "type": "bool" }, "id": 104, "type": "obj", "desc": "", "defaultValue": "", "canTrigger": true, "executable": true, "defaultRecommend": false, "editPermission": false, "subType": "bool" } ], "productKey": "IAYz2WK1th0cMLmL", "schemaExt": [ { "complexType": "", "id": 3, "inputStyle": "plain", "inputType": "plain" } ], "version": "3.3", "ip": "192.168.5.63", "gwId": "1070736424a160383dae", "active": 2, "ability": 0, "mode": 0, "encrypt": true, "ownerId": "5850934", "accessType": 0, "otaInfo": { "supportAuto": true, "otaUpgradeModes": [ 0 ], "otaModuleMap": { "wifi": { "upgradeStatus": 0, "cdv": "1.0.0", "bv": "5.57", "verSw": "3.1.4" }, "mcu": { "upgradeStatus": 0, "cdv": "", "verSw": "1.0.0" } } }, "communication": { "communicationNode": "1070736424a160383dae", "communicationModes": [ { "pv": "", "type": 0 }, { "pv": "2.2", "type": 1 } ], "connectionStatus": 1, "mqttTopicAttr": 1, "dataModel": 1 }, "gatewayVerCAD": "", "cloudOnline": true, "baseAttribute": 1024, "dataPointInfo": { "dpMaxTime": 1727039427757, "dpName": {}, "dps": { "1": true, "2": 43, "3": 46, "4": 1, "5": false, "6": false, "101": "AAYoAAgeHgseHg0eABEsABYeAAYoAAgoHgsoHg0oABEoABYeAAYoAAgoHgsoHg0oABEoABYe", "102": 0, "103": 0, "104": true }, "dpsTime": { "1": 1726425721284, "2": 1724956085302, "3": 1727039427757, "4": 1724956085302, "5": 1724956085302, "6": 1724956085302, "101": 1703859168935, "102": 1724956085302, "103": 1639225003890, "104": 1724956085302 } }, "deviceTopo": {}, "groudId": 5850934, "dpCodes": { "Power": { "mode": "rw", "code": "Power", "name": "开关", "property": { "type": "bool" }, "iconname": "icon-dp_power", "id": 1, "type": "obj", "desc": "", "defaultValue": "", "canTrigger": true, "executable": true, "defaultRecommend": false, "editPermission": false, "subType": "bool" }, "TempSet": { "mode": "rw", "code": "TempSet", "name": "目标温度", "property": { "unit": "℃", "min": 10, "max": 70, "scale": 0, "step": 5, "type": "value" }, "iconname": "icon-dp_temp", "id": 2, "type": "obj", "desc": "", "defaultValue": "10", "canTrigger": true, "executable": true, "defaultRecommend": false, "editPermission": false, "subType": "value" }, "TempCurrent": { "mode": "ro", "code": "TempCurrent", "name": "当前温度", "property": { "unit": "℃", "min": 0, "max": 100, "scale": 0, "step": 5, "type": "value" }, "iconname": "icon-dp_sun", "id": 3, "type": "obj", "desc": "", "defaultValue": "0", "canTrigger": true, "executable": true, "defaultRecommend": false, "editPermission": false, "subType": "value" }, "Mode": { "mode": "rw", "code": "Mode", "name": "模式", "property": { "range": [ "0", "1" ], "type": "enum" }, "iconname": "icon-dp_mode", "id": 4, "type": "obj", "desc": "", "defaultValue": "", "canTrigger": true, "executable": true, "defaultRecommend": false, "editPermission": false, "subType": "enum" }, "ECO": { "mode": "rw", "code": "ECO", "name": "ECO模式", "property": { "type": "bool" }, "iconname": "icon-eco", "id": 5, "type": "obj", "desc": "", "defaultValue": "", "canTrigger": true, "executable": true, "defaultRecommend": false, "editPermission": false, "subType": "bool" }, "ChildLock": { "mode": "rw", "code": "ChildLock", "name": "童锁", "property": { "type": "bool" }, "iconname": "icon-dp_lock", "id": 6, "type": "obj", "desc": "", "defaultValue": "", "canTrigger": true, "executable": true, "defaultRecommend": false, "editPermission": false, "subType": "bool" }, "program": { "mode": "rw", "code": "program", "name": "周程序", "id": 101, "type": "raw", "desc": "对应星期一~星期五、星期六、星期日,每天六段,可设置每小时的温度范围。温度范围为5-35摄氏度。", "defaultValue": "", "canTrigger": true, "executable": true, "defaultRecommend": false, "editPermission": false, "subType": "raw", "property": { "type": "raw", "maxlen": 128 } }, "floorTemp": { "mode": "ro", "code": "floorTemp", "name": "地板温度", "property": { "unit": "℃", "min": 0, "max": 198, "scale": 0, "step": 5, "type": "value" }, "id": 102, "type": "obj", "desc": "", "defaultValue": "0", "canTrigger": true, "executable": true, "defaultRecommend": false, "editPermission": false, "subType": "value" }, "tempSwitch": { "mode": "rw", "code": "tempSwitch", "name": "温度切换", "property": { "range": [ "0", "1" ], "type": "enum" }, "id": 103, "type": "obj", "desc": "", "defaultValue": "", "canTrigger": true, "executable": true, "defaultRecommend": false, "editPermission": false, "subType": "enum" }, "floortempFunction": { "mode": "ro", "code": "floortempFunction", "name": "地暖温度功能", "property": { "type": "bool" }, "id": 104, "type": "obj", "desc": "", "defaultValue": "", "canTrigger": true, "executable": true, "defaultRecommend": false, "editPermission": false, "subType": "bool" } }, "virtualExperience": false, "meta": {} }, "_id": "tuya.0.1070736424a160383dae", "acl": { "object": 1636, "owner": "system.user.admin", "ownerGroup": "system.group.administrator" }, "from": "system.adapter.admin.0", "user": "system.user.admin", "ts": 1727183363349 }

Ich hatte auch "auf einmal" das Problem aus dem Issue #596. Ich habe aber meine Werte über eine Formel im Alias-Objekt angepasst.

morskipas commented 1 month ago

Ich habe das selbe Problem, bei mir ist es aufgetreten, nachdem ich den Adapter "Admin" auf die Version 7 oder 7.1 aktualisiert habe.

DieterB61 commented 1 month ago

Auch bei mir das gleiche Problem mit der falschen "min": 50, Definition bei Tuya Thermostaten.

Die Daten der JSON Definition werden wohl vom Thermostat ausgelesen. Ich bekomme derzeit von 5 Thermostaten jede Minute eine Fehlermeldung. tuya.0 | 2024-10-03 09:10:28.756 | warn | State value to set for "tuya.0.365442358cce4ecbe157.2" has value "36" less than min "50" Es stört das System wohl nicht, ist aber sehr unschön.

DieterB61 commented 1 week ago

Ich will das noch einmal hochholen. Ich habe nach wie vor alle Minuten von all meinen Tuya Thermostaten folgende Warnung tuya.0 | 2024-10-03 09:10:28.756 | warn | State value to set for "tuya.0.365442358cce4ecbe157.2" has value "36" less than min "50" Es geht hier nicht um die falsche Temperaturanzeige, die ja leicht zu beheben ist, sondern dass der min Wert in der Definition von *.2 falsch ist: { "type": "state", "common": { "type": "number", "unit": "℃", "min": 50, "max": 350, "read": true, "write": true, "name": "TempSet", "role": "level" }, ... Leider weiß ich nicht ob und wie ich diese JSON Dateien dauerhaft ändern kann (falls das überhaupt möglich ist? tuya

matze5000 commented 1 week ago

Ich vermute, dass der Adapter die falschen Werte nicht korrigieren kann, weil sie vom Gerät selbst kommen. Es wäre aber gut, wenn das der Autor mal bestätigen könnte. Es bleibt nur eine Möglichkeit zu finden das JSON des Geräts möglichst dauerhaft zu korrigieren. Kann jemand sagen, ob und wie dies möglich ist?

Vielen Dank im Voraus!