NEWS
TuyaMCU per Tasmota Daten Identifizieren?
-
-> die Summe der beiden Zählerrichtungen , also 2 Werte
wenn die App ja verrechnet braucht die ja Zählerwerte und die können ja nur von der MCU kommen.
Mal angenommen Teiler ist 100 oder 1000, gibt es ein Bezug zu 647,72 / 64,77 Kw/h oder
1,8 / 0.18 Kw/h ?
3 Stunden 60 Watt Test kommt das hin ?
Das riecht nach Energy Total und Today :-)Aus der OpenBK community war jemand so nett und hat mir die Infos aus dem alten Tuya Chip-Backup zerlegt und aufbereitet der vorher mit der MCU kommuniziert hat.
hiernach werden folgende dpIx mit der MCU ausgetauscht:
DP 2, VALUE(ro), cur_neutral DP 6, RAW(ro), phase_a DP 9, BITMAP(ro), fault DP 14, VALUE(rw), charge_energy DP 17, RAW(rw), alarm_set_1 DP 18, RAW(rw), alarm_set_2 DP 19, STRING(ro), breaker_idDesweiteren gibt er mir folgende Info worin ich Funktionen der App wieder finde und vermute daraus jetzt das Mapping zwischen dpIx und fnIx erzeugen zu müssen.
"properties": [ { "abilityId": 1, "accessMode": "ro", "code": "total_forward_energy", "description": "", "extensions": { "iconName": "icon-dp_lightning", "attribute": "1152" }, "name": "\u6b63\u5411\u603b\u6709\u529f\u7535\u91cf", "typeSpec": { "type": "value", "max": 99999999, "min": 0, "scale": 2, "step": 1, "unit": "kW\u00b7h" } }, { "abilityId": 2, "accessMode": "ro", "code": "cur_neutral", "description": "", "extensions": { "iconName": "icon-power1", "attribute": "1152" }, "name": "\u53cd\u5411\u603b\u6709\u529f\u7535\u80fd", "typeSpec": { "type": "value", "max": 99999999, "min": 0, "scale": 2, "step": 1, "unit": "kW.h" } }, { "abilityId": 6, "accessMode": "ro", "code": "phase_a", "description": "1\uff0c\u7535\u538b\uff0c\u7535\u6d41\u53ca\u529f\u7387\n2\uff0c\u5927\u7aef\u6a21\u5f0f\uff0cHEX\u683c\u5f0f\uff0c\u51718\u4e2a\u5b57\u8282\n3\uff0c\u5355\u4f4d\u7cbe\u5ea6\uff1a\u7535\u538b\uff0c2\u5b57\u8282\uff0c\u5355\u4f4d0.1V\u3002\u7535\u6d41\uff0c3\u5b57\u8282\uff0c\u5355\u4f4d 0.001A \u3002A\u76f8\u6709\u529f\u529f\u7387\uff0c3\u5b57\u8282\uff0c\u5355\u4f4d0.0001kW\n4\uff0c\u62a5\u6587\u683c\u5f0f\n\u4e3e\u4f8b\uff1a08 80 00 03 E8 00 27 10 \u8868\u793aA\u76f8217.6V\uff0cA\u76f8\u7535\u6d411.000A\uff0cA\u76f8\u529f\u738710.000KW\n5\uff0c\u901a\u4fe1\u903b\u8f91\uff1a\n1\uff09\u7528\u6237\u8fdb\u9762\u677f\uff0c\u4e3b\u52a8\u67e5\u8be2\u3002\u7528\u6237\u8fdb\u5165\u9762\u677f\uff0c\u9762\u677f\u9a6c\u4e0a\u4e0b\u53d10x08\u5230\u7535\u8868\uff0c\u7535\u8868\u4e0a\u62a5\u6570\u636e\u5230\u4e91\u5e73\u53f0\uff0c\u9762\u677f\u62ff\u5230\u6570\u636e\uff0c\u7136\u540e\u5c55\u793a\u3002 \u6ce8\uff1a\u6700\u65b0WIFI\u652f\u6301\u3002 \n2\uff09\u7535\u8868\u57fa\u4e8e\u4e00\u5b9a\u5468\u671f\u4e0a\u62a5\u6570\u636e\u3002\u5efa\u8bae\uff1a\u5728WIFI\u6a21\u5f0f\u65f6\uff0c15\u79d2\u4e0a\u62a5\u4e00\u6b21\u3002NB\u6a21\u5f0f\u65f6\uff0c1\u4e2a\u5c0f\u65f6\u4e0a\u62a5\u4e00\u6b21\u3002", "extensions": { "iconName": "icon-dp_lightning", "attribute": "1152" }, "name": "\u7535\u538b\uff0c\u7535\u6d41\u53ca\u529f\u7387", "typeSpec": { "type": "raw", "maxlen": 128 } }, { "abilityId": 9, "accessMode": "ro", "code": "fault", "description": "1\uff0c\u544a\u8b66\n2\uff0c\u5927\u7aef\u6a21\u5f0f\uff0cHEX,4\u5b57\u8282\n3\uff0c\u62a5\u6587\u683c\u5f0f\n\u6309\u7167\u5b8c\u65744\u4e2a\u5b57\u8282,\u5bf9\u5e94\u7684\u544a\u8b66\u4f4d\u4e0a\u62a5\u544a\u8b66\uff1bbit\u4f4d\uff0c1\u8868\u793a\u6709\u544a\u8b66\uff0c0\u8868\u793a\u65e0\u544a\u8b66\uff1b\u5982\u679c\u6ca1\u7528\u7684\u544a\u8b66\u4f4d\uff0c\u88650\u3002\u9ad8\u4f4d\u65e0\u5b9a\u4e49\uff0c\u4e5f\u88650\uff1b\n\u4e3e\u4f8b\uff1a0X00 00 00 09,\u8868\u793a\u5f53\u524d\u53d1\u751f\u4e86\u6f0f\u7535\u81ea\u68c0\u4e0d\u6b63\u5e38\u544a\u8b66\u548c\u77ed\u8def\u544a\u8b66,\u65e0\u5176\u5b83\u544a\u8b66\u3002\n4\uff0c\u901a\u4fe1\u903b\u8f91\n\u53ea\u8981\u67091\u4e2a\u544a\u8b66\u53d1\u751f\uff0c\u5c31\u5b8c\u65744\u4e2a\u5b57\u8282\u4e0a\u62a5\u7ed9\u9762\u677f\uff1b\u53ea\u8981\u67091\u4e2a\u544a\u8b66\u5173\u95ed\uff0c\u5c31\u5b8c\u65744\u4e2a\u5b57\u8282\u4e0a\u62a5\u7ed9\u9762\u677f\uff0c\u66f4\u65b0\u9762\u677f\u663e\u793a\u3002", "extensions": { "iconName": "icon-baojing", "attribute": "1152" }, "name": "\u6545\u969c\u4e0a\u62a5", "typeSpec": { "type": "bitmap", "label": [ "short_circuit_alarm", "surge_alarm", "overload_alarm", "leakagecurr_alarm", "temp_dif_fault", "fire_alarm", "high_power_alarm", "self_test_alarm", "ov_cr", "unbalance_alarm", "ov_vol", "undervoltage_alarm", "miss_phase_alarm", "outage_alarm", "magnetism_alarm", "credit_alarm", "no_balance_alarm" ], "maxlen": 17 } }, { "abilityId": 11, "accessMode": "rw", "code": "switch_prepayment", "description": "", "extensions": { "iconName": "icon-dp_money", "attribute": "1152" }, "name": "\u9884\u4ed8\u8d39\u529f\u80fd\u5f00\u5173", "typeSpec": { "type": "bool" } }, { "abilityId": 12, "accessMode": "rw", "code": "clear_energy", "description": "", "extensions": { "iconName": "icon-dp_lightning", "attribute": "1152" }, "name": "\u4f59\u989d\u6e05\u96f6", "typeSpec": { "type": "bool" } }, { "abilityId": 13, "accessMode": "ro", "code": "balance_energy", "description": "", "extensions": { "iconName": "icon-dp_lightning", "attribute": "1152" }, "name": "\u5269\u4f59\u53ef\u7528\u7535\u91cf", "typeSpec": { "type": "value", "max": 99999999, "min": 0, "scale": 2, "step": 1, "unit": "kW\u00b7h" } }, { "abilityId": 14, "accessMode": "rw", "code": "charge_energy", "description": "", "extensions": { "iconName": "icon-dp_money", "attribute": "1152" }, "name": "\u7535\u91cf\u5145\u503c", "typeSpec": { "type": "value", "max": 999999, "min": 0, "scale": 2, "step": 1, "unit": "kW\u00b7h" } }, { "abilityId": 17, "accessMode": "rw", "code": "alarm_set_1", "description": "1\uff0c\u544a\u8b66\u9608\u503c\u4f7f\u80fd\u63a7\u5236\u53ca\u8bbe\u7f6e2 \n2\uff0cHEX\u683c\u5f0f\uff0c\u5927\u7aef\u6a21\u5f0f, \u603b\u544a\u8b66\u7684\u6570\u91cf*4\u5b57\u8282= \u8bbe\u7f6e\u544a\u8b66\u603b\u957f\u5ea6\u3002\n3\uff0c\u62a5\u6587\u683c\u5f0f\n\u6bcf\u4e2a\u544a\u8b66\u75314\u4e2a\u5b57\u8282\u7ec4\u6210\uff0c\u7b2c1\u4e2a\u5b57\u8282\uff08\u8868\u793a\u8be5\u544a\u8b66\u5b58\u5728\uff09\uff1b\u7b2c2\u4e2a\u5b57\u8282\uff08\u53d1\u751f\u6b64\u544a\u8b66\u65f6\uff0c\u65ad\u8def\u5668\u63a7\u5236\u6a21\u5f0f\uff080X01\u62c9\u95f8\uff0c0X00\u4e0d\u52a8\u4f5c\u53ea\u544a\u8b66\uff09\uff1b\u7b2c3\u30014\u5b57\u8282\uff1a\u8bbe\u7f6e\u544a\u8b66\u9608\u503c\n\u4e3e\u4f8b\uff1a0X01 01 00 00 03 01 00 14,\u8868\u793a\u8be5\u65ad\u8def\u5668\u652f\u6301\u77ed\u8def\u544a\u8b66\uff0c\u53d1\u751f\u8be5\u544a\u8b66\u65f6\uff0c\u81ea\u52a8\u8df3\u95f8\uff0c\u9600\u503c\u88650\u3002\u652f\u6301\u8fc7\u8f7d\u544a\u8b66\uff0c\u53d1\u751f\u8be5\u544a\u8b66\u65f6\uff0c\u62c9\u95f8\u52a8\u4f5c\uff0c\u52a8\u4f5c\u9600\u503c20KW\u3002\u65e0\u5176\u5b83\u544a\u8b66\u3002\n4\uff0c\u901a\u4fe1\u903b\u8f91\nA\uff0c\u914d\u7f51\u6210\u529f\u540e\uff0c\u6309\u7167\u4e0a\u9762\u7684\u683c\u5f0f\uff0c\u4e3b\u52a8\u4e0a\u62a5\u7ed9\u4e91\u5e73\u53f0\uff0c\u9762\u677f\u77e5\u9053\u54ea\u4e9b\u544a\u8b66\u662f\u65ad\u8def\u5668\u5f53\u524d\u652f\u6301\u7684\u3002\u8bbe\u7f6e\u4e0d\u6210\u529f\uff0c\u91cd\u65b0\u914d\u7f51\u518d\u4e0a\u62a5\u3002\nB\uff0c\u65ad\u8def\u5668\u4e0a\u7535\u65f6\uff0c\u4e5f\u4e0a\u62a5\u4e00\u6b21\u3002\nC\uff0c\u9762\u677f\u6839\u636e\u534f\u8bae\u4e0b\u53d1\u544a\u8b66\u8bbe\u7f6e\u3002", "extensions": { "iconName": "icon-dp_warming", "attribute": "1152" }, "name": "\u544a\u8b66\u8bbe\u7f6e1", "typeSpec": { "type": "raw", "maxlen": 128 } }, { "abilityId": 18, "accessMode": "rw", "code": "alarm_set_2", "description": "1\uff0c\u544a\u8b66\u9608\u503c\u4f7f\u80fd\u63a7\u5236\u53ca\u8bbe\u7f6e2 \n2\uff0cHEX\u683c\u5f0f\uff0c\u5927\u7aef\u6a21\u5f0f\n3\uff0c\u62a5\u6587\u683c\u5f0f\n\u6bcf\u4e2a\u544a\u8b66\u75314\u4e2a\u5b57\u8282\u7ec4\u6210\uff0c\u7b2c1\u4e2a\u5b57\u8282\uff08\u8868\u793a\u8be5\u544a\u8b66\u5b58\u5728\uff09\uff1b\u7b2c2\u4e2a\u5b57\u8282\uff08\u53d1\u751f\u6b64\u544a\u8b66\u65f6\uff0c\u65ad\u8def\u5668\u63a7\u5236\u6a21\u5f0f\uff080X01\u62c9\u95f8\uff0c0X00\u4e0d\u52a8\u4f5c\u53ea\u544a\u8b66\uff09\uff1b\u7b2c3\u30014\u5b57\u8282\uff1a\u8bbe\u7f6e\u544a\u8b66\u9608\u503c\n\u4e3e\u4f8b\uff1a0X01 01 00 3C 03 01 00 F5,\u8868\u793a\u8be5\u65ad\u8def\u5668\u652f\u6301\u8fc7\u6d41\u544a\u8b66\uff0c\u53d1\u751f\u8be5\u544a\u8b66\u65f6\uff0c\u62c9\u95f8\u52a8\u4f5c\uff0c\u52a8\u4f5c\u9600\u503c60A\u3002\u652f\u6301\u8fc7\u538b\u544a\u8b66\uff0c\u53d1\u751f\u8be5\u544a\u8b66\u65f6\uff0c\u62c9\u95f8\u52a8\u4f5c\uff0c\u52a8\u4f5c\u9600\u503c245V\n4\uff0c\u901a\u4fe1\u903b\u8f91\nA\uff0c\u914d\u7f51\u6210\u529f\u540e\uff0c\u6309\u7167\u4e0a\u9762\u7684\u683c\u5f0f\uff0c\u4e3b\u52a8\u4e0a\u62a5\u7ed9\u4e91\u5e73\u53f0\uff0c\u9762\u677f\u77e5\u9053\u54ea\u4e9b\u544a\u8b66\u662f\u65ad\u8def\u5668\u5f53\u524d\u652f\u6301\u7684\u3002\u8bbe\u7f6e\u4e0d\u6210\u529f\uff0c\u91cd\u65b0\u914d\u7f51\u518d\u4e0a\u62a5\u3002\nB\uff0c\u65ad\u8def\u5668\u4e0a\u7535\u65f6\uff0c\u4e5f\u4e0a\u62a5\u4e00\u6b21\u3002\nC\uff0c\u9762\u677f\u6839\u636e\u534f\u8bae\u4e0b\u53d1\u544a\u8b66\u8bbe\u7f6e\u3002", "extensions": { "iconName": "icon-dp_warming", "attribute": "1152" }, "name": "\u544a\u8b66\u8bbe\u7f6e2", "typeSpec": { "type": "raw", "maxlen": 128 } }, { "abilityId": 19, "accessMode": "ro", "code": "breaker_id", "description": "1\uff0c\u8bbe\u5907\u53f7\n2\uff0c\u5927\u7aef\u6a21\u5f0f\uff0c\u5b57\u7b26\u4e32\u578b\n3\uff0c\u5355\u4f4d\u7cbe\u5ea6\n4\uff0c\u62a5\u6587\u683c\u5f0f\n5\uff0c\u901a\u4fe1\u903b\u8f91\nA\uff0c\u914d\u7f51\u65f6\u4e0a\u62a5\u4e09\u6b21\uff0c\u4ee5\u786e\u4fdd\u4e0a\u62a5\u6210\u529f\u3002\u5982\u679c\u914d\u5bf9\u6210\u529f\uff0c\u9762\u677f\u6709\u663e\u793a\u8bbe\u5907\u53f7\u3002\nB\uff0c\u5982\u679c\u914d\u5bf9\u6210\u529f\uff0c\u9762\u677f\u6ca1\u6709\u663e\u793a\u8bbe\u5907\u53f7\uff0c\u9700\u8981\u79fb\u9664\u8bbe\u5907\uff0c\u518d\u914d\u7f6e\u4e00\u904d\u3002\nC\uff0c\u6bcf\u6b21\u65ad\u8def\u5668\u4e0a\u7535\uff0c\u4e5f\u4e0a\u62a5\u4e00\u6b21\u3002", "extensions": { "iconName": "icon-dp_mode", "attribute": "1152" }, "name": "\u65ad\u8def\u5668\u8bbe\u5907\u53f7", "typeSpec": { "type": "string", "maxlen": 255Insbesondere bei den Daten im raw format und ergänzend warum aktuell manche dpIx gar nichts liefern, gibt es noch große ???
-
Aus der OpenBK community war jemand so nett und hat mir die Infos aus dem alten Tuya Chip-Backup zerlegt und aufbereitet der vorher mit der MCU kommuniziert hat.
hiernach werden folgende dpIx mit der MCU ausgetauscht:
DP 2, VALUE(ro), cur_neutral DP 6, RAW(ro), phase_a DP 9, BITMAP(ro), fault DP 14, VALUE(rw), charge_energy DP 17, RAW(rw), alarm_set_1 DP 18, RAW(rw), alarm_set_2 DP 19, STRING(ro), breaker_idDesweiteren gibt er mir folgende Info worin ich Funktionen der App wieder finde und vermute daraus jetzt das Mapping zwischen dpIx und fnIx erzeugen zu müssen.
"properties": [ { "abilityId": 1, "accessMode": "ro", "code": "total_forward_energy", "description": "", "extensions": { "iconName": "icon-dp_lightning", "attribute": "1152" }, "name": "\u6b63\u5411\u603b\u6709\u529f\u7535\u91cf", "typeSpec": { "type": "value", "max": 99999999, "min": 0, "scale": 2, "step": 1, "unit": "kW\u00b7h" } }, { "abilityId": 2, "accessMode": "ro", "code": "cur_neutral", "description": "", "extensions": { "iconName": "icon-power1", "attribute": "1152" }, "name": "\u53cd\u5411\u603b\u6709\u529f\u7535\u80fd", "typeSpec": { "type": "value", "max": 99999999, "min": 0, "scale": 2, "step": 1, "unit": "kW.h" } }, { "abilityId": 6, "accessMode": "ro", "code": "phase_a", "description": "1\uff0c\u7535\u538b\uff0c\u7535\u6d41\u53ca\u529f\u7387\n2\uff0c\u5927\u7aef\u6a21\u5f0f\uff0cHEX\u683c\u5f0f\uff0c\u51718\u4e2a\u5b57\u8282\n3\uff0c\u5355\u4f4d\u7cbe\u5ea6\uff1a\u7535\u538b\uff0c2\u5b57\u8282\uff0c\u5355\u4f4d0.1V\u3002\u7535\u6d41\uff0c3\u5b57\u8282\uff0c\u5355\u4f4d 0.001A \u3002A\u76f8\u6709\u529f\u529f\u7387\uff0c3\u5b57\u8282\uff0c\u5355\u4f4d0.0001kW\n4\uff0c\u62a5\u6587\u683c\u5f0f\n\u4e3e\u4f8b\uff1a08 80 00 03 E8 00 27 10 \u8868\u793aA\u76f8217.6V\uff0cA\u76f8\u7535\u6d411.000A\uff0cA\u76f8\u529f\u738710.000KW\n5\uff0c\u901a\u4fe1\u903b\u8f91\uff1a\n1\uff09\u7528\u6237\u8fdb\u9762\u677f\uff0c\u4e3b\u52a8\u67e5\u8be2\u3002\u7528\u6237\u8fdb\u5165\u9762\u677f\uff0c\u9762\u677f\u9a6c\u4e0a\u4e0b\u53d10x08\u5230\u7535\u8868\uff0c\u7535\u8868\u4e0a\u62a5\u6570\u636e\u5230\u4e91\u5e73\u53f0\uff0c\u9762\u677f\u62ff\u5230\u6570\u636e\uff0c\u7136\u540e\u5c55\u793a\u3002 \u6ce8\uff1a\u6700\u65b0WIFI\u652f\u6301\u3002 \n2\uff09\u7535\u8868\u57fa\u4e8e\u4e00\u5b9a\u5468\u671f\u4e0a\u62a5\u6570\u636e\u3002\u5efa\u8bae\uff1a\u5728WIFI\u6a21\u5f0f\u65f6\uff0c15\u79d2\u4e0a\u62a5\u4e00\u6b21\u3002NB\u6a21\u5f0f\u65f6\uff0c1\u4e2a\u5c0f\u65f6\u4e0a\u62a5\u4e00\u6b21\u3002", "extensions": { "iconName": "icon-dp_lightning", "attribute": "1152" }, "name": "\u7535\u538b\uff0c\u7535\u6d41\u53ca\u529f\u7387", "typeSpec": { "type": "raw", "maxlen": 128 } }, { "abilityId": 9, "accessMode": "ro", "code": "fault", "description": "1\uff0c\u544a\u8b66\n2\uff0c\u5927\u7aef\u6a21\u5f0f\uff0cHEX,4\u5b57\u8282\n3\uff0c\u62a5\u6587\u683c\u5f0f\n\u6309\u7167\u5b8c\u65744\u4e2a\u5b57\u8282,\u5bf9\u5e94\u7684\u544a\u8b66\u4f4d\u4e0a\u62a5\u544a\u8b66\uff1bbit\u4f4d\uff0c1\u8868\u793a\u6709\u544a\u8b66\uff0c0\u8868\u793a\u65e0\u544a\u8b66\uff1b\u5982\u679c\u6ca1\u7528\u7684\u544a\u8b66\u4f4d\uff0c\u88650\u3002\u9ad8\u4f4d\u65e0\u5b9a\u4e49\uff0c\u4e5f\u88650\uff1b\n\u4e3e\u4f8b\uff1a0X00 00 00 09,\u8868\u793a\u5f53\u524d\u53d1\u751f\u4e86\u6f0f\u7535\u81ea\u68c0\u4e0d\u6b63\u5e38\u544a\u8b66\u548c\u77ed\u8def\u544a\u8b66,\u65e0\u5176\u5b83\u544a\u8b66\u3002\n4\uff0c\u901a\u4fe1\u903b\u8f91\n\u53ea\u8981\u67091\u4e2a\u544a\u8b66\u53d1\u751f\uff0c\u5c31\u5b8c\u65744\u4e2a\u5b57\u8282\u4e0a\u62a5\u7ed9\u9762\u677f\uff1b\u53ea\u8981\u67091\u4e2a\u544a\u8b66\u5173\u95ed\uff0c\u5c31\u5b8c\u65744\u4e2a\u5b57\u8282\u4e0a\u62a5\u7ed9\u9762\u677f\uff0c\u66f4\u65b0\u9762\u677f\u663e\u793a\u3002", "extensions": { "iconName": "icon-baojing", "attribute": "1152" }, "name": "\u6545\u969c\u4e0a\u62a5", "typeSpec": { "type": "bitmap", "label": [ "short_circuit_alarm", "surge_alarm", "overload_alarm", "leakagecurr_alarm", "temp_dif_fault", "fire_alarm", "high_power_alarm", "self_test_alarm", "ov_cr", "unbalance_alarm", "ov_vol", "undervoltage_alarm", "miss_phase_alarm", "outage_alarm", "magnetism_alarm", "credit_alarm", "no_balance_alarm" ], "maxlen": 17 } }, { "abilityId": 11, "accessMode": "rw", "code": "switch_prepayment", "description": "", "extensions": { "iconName": "icon-dp_money", "attribute": "1152" }, "name": "\u9884\u4ed8\u8d39\u529f\u80fd\u5f00\u5173", "typeSpec": { "type": "bool" } }, { "abilityId": 12, "accessMode": "rw", "code": "clear_energy", "description": "", "extensions": { "iconName": "icon-dp_lightning", "attribute": "1152" }, "name": "\u4f59\u989d\u6e05\u96f6", "typeSpec": { "type": "bool" } }, { "abilityId": 13, "accessMode": "ro", "code": "balance_energy", "description": "", "extensions": { "iconName": "icon-dp_lightning", "attribute": "1152" }, "name": "\u5269\u4f59\u53ef\u7528\u7535\u91cf", "typeSpec": { "type": "value", "max": 99999999, "min": 0, "scale": 2, "step": 1, "unit": "kW\u00b7h" } }, { "abilityId": 14, "accessMode": "rw", "code": "charge_energy", "description": "", "extensions": { "iconName": "icon-dp_money", "attribute": "1152" }, "name": "\u7535\u91cf\u5145\u503c", "typeSpec": { "type": "value", "max": 999999, "min": 0, "scale": 2, "step": 1, "unit": "kW\u00b7h" } }, { "abilityId": 17, "accessMode": "rw", "code": "alarm_set_1", "description": "1\uff0c\u544a\u8b66\u9608\u503c\u4f7f\u80fd\u63a7\u5236\u53ca\u8bbe\u7f6e2 \n2\uff0cHEX\u683c\u5f0f\uff0c\u5927\u7aef\u6a21\u5f0f, \u603b\u544a\u8b66\u7684\u6570\u91cf*4\u5b57\u8282= \u8bbe\u7f6e\u544a\u8b66\u603b\u957f\u5ea6\u3002\n3\uff0c\u62a5\u6587\u683c\u5f0f\n\u6bcf\u4e2a\u544a\u8b66\u75314\u4e2a\u5b57\u8282\u7ec4\u6210\uff0c\u7b2c1\u4e2a\u5b57\u8282\uff08\u8868\u793a\u8be5\u544a\u8b66\u5b58\u5728\uff09\uff1b\u7b2c2\u4e2a\u5b57\u8282\uff08\u53d1\u751f\u6b64\u544a\u8b66\u65f6\uff0c\u65ad\u8def\u5668\u63a7\u5236\u6a21\u5f0f\uff080X01\u62c9\u95f8\uff0c0X00\u4e0d\u52a8\u4f5c\u53ea\u544a\u8b66\uff09\uff1b\u7b2c3\u30014\u5b57\u8282\uff1a\u8bbe\u7f6e\u544a\u8b66\u9608\u503c\n\u4e3e\u4f8b\uff1a0X01 01 00 00 03 01 00 14,\u8868\u793a\u8be5\u65ad\u8def\u5668\u652f\u6301\u77ed\u8def\u544a\u8b66\uff0c\u53d1\u751f\u8be5\u544a\u8b66\u65f6\uff0c\u81ea\u52a8\u8df3\u95f8\uff0c\u9600\u503c\u88650\u3002\u652f\u6301\u8fc7\u8f7d\u544a\u8b66\uff0c\u53d1\u751f\u8be5\u544a\u8b66\u65f6\uff0c\u62c9\u95f8\u52a8\u4f5c\uff0c\u52a8\u4f5c\u9600\u503c20KW\u3002\u65e0\u5176\u5b83\u544a\u8b66\u3002\n4\uff0c\u901a\u4fe1\u903b\u8f91\nA\uff0c\u914d\u7f51\u6210\u529f\u540e\uff0c\u6309\u7167\u4e0a\u9762\u7684\u683c\u5f0f\uff0c\u4e3b\u52a8\u4e0a\u62a5\u7ed9\u4e91\u5e73\u53f0\uff0c\u9762\u677f\u77e5\u9053\u54ea\u4e9b\u544a\u8b66\u662f\u65ad\u8def\u5668\u5f53\u524d\u652f\u6301\u7684\u3002\u8bbe\u7f6e\u4e0d\u6210\u529f\uff0c\u91cd\u65b0\u914d\u7f51\u518d\u4e0a\u62a5\u3002\nB\uff0c\u65ad\u8def\u5668\u4e0a\u7535\u65f6\uff0c\u4e5f\u4e0a\u62a5\u4e00\u6b21\u3002\nC\uff0c\u9762\u677f\u6839\u636e\u534f\u8bae\u4e0b\u53d1\u544a\u8b66\u8bbe\u7f6e\u3002", "extensions": { "iconName": "icon-dp_warming", "attribute": "1152" }, "name": "\u544a\u8b66\u8bbe\u7f6e1", "typeSpec": { "type": "raw", "maxlen": 128 } }, { "abilityId": 18, "accessMode": "rw", "code": "alarm_set_2", "description": "1\uff0c\u544a\u8b66\u9608\u503c\u4f7f\u80fd\u63a7\u5236\u53ca\u8bbe\u7f6e2 \n2\uff0cHEX\u683c\u5f0f\uff0c\u5927\u7aef\u6a21\u5f0f\n3\uff0c\u62a5\u6587\u683c\u5f0f\n\u6bcf\u4e2a\u544a\u8b66\u75314\u4e2a\u5b57\u8282\u7ec4\u6210\uff0c\u7b2c1\u4e2a\u5b57\u8282\uff08\u8868\u793a\u8be5\u544a\u8b66\u5b58\u5728\uff09\uff1b\u7b2c2\u4e2a\u5b57\u8282\uff08\u53d1\u751f\u6b64\u544a\u8b66\u65f6\uff0c\u65ad\u8def\u5668\u63a7\u5236\u6a21\u5f0f\uff080X01\u62c9\u95f8\uff0c0X00\u4e0d\u52a8\u4f5c\u53ea\u544a\u8b66\uff09\uff1b\u7b2c3\u30014\u5b57\u8282\uff1a\u8bbe\u7f6e\u544a\u8b66\u9608\u503c\n\u4e3e\u4f8b\uff1a0X01 01 00 3C 03 01 00 F5,\u8868\u793a\u8be5\u65ad\u8def\u5668\u652f\u6301\u8fc7\u6d41\u544a\u8b66\uff0c\u53d1\u751f\u8be5\u544a\u8b66\u65f6\uff0c\u62c9\u95f8\u52a8\u4f5c\uff0c\u52a8\u4f5c\u9600\u503c60A\u3002\u652f\u6301\u8fc7\u538b\u544a\u8b66\uff0c\u53d1\u751f\u8be5\u544a\u8b66\u65f6\uff0c\u62c9\u95f8\u52a8\u4f5c\uff0c\u52a8\u4f5c\u9600\u503c245V\n4\uff0c\u901a\u4fe1\u903b\u8f91\nA\uff0c\u914d\u7f51\u6210\u529f\u540e\uff0c\u6309\u7167\u4e0a\u9762\u7684\u683c\u5f0f\uff0c\u4e3b\u52a8\u4e0a\u62a5\u7ed9\u4e91\u5e73\u53f0\uff0c\u9762\u677f\u77e5\u9053\u54ea\u4e9b\u544a\u8b66\u662f\u65ad\u8def\u5668\u5f53\u524d\u652f\u6301\u7684\u3002\u8bbe\u7f6e\u4e0d\u6210\u529f\uff0c\u91cd\u65b0\u914d\u7f51\u518d\u4e0a\u62a5\u3002\nB\uff0c\u65ad\u8def\u5668\u4e0a\u7535\u65f6\uff0c\u4e5f\u4e0a\u62a5\u4e00\u6b21\u3002\nC\uff0c\u9762\u677f\u6839\u636e\u534f\u8bae\u4e0b\u53d1\u544a\u8b66\u8bbe\u7f6e\u3002", "extensions": { "iconName": "icon-dp_warming", "attribute": "1152" }, "name": "\u544a\u8b66\u8bbe\u7f6e2", "typeSpec": { "type": "raw", "maxlen": 128 } }, { "abilityId": 19, "accessMode": "ro", "code": "breaker_id", "description": "1\uff0c\u8bbe\u5907\u53f7\n2\uff0c\u5927\u7aef\u6a21\u5f0f\uff0c\u5b57\u7b26\u4e32\u578b\n3\uff0c\u5355\u4f4d\u7cbe\u5ea6\n4\uff0c\u62a5\u6587\u683c\u5f0f\n5\uff0c\u901a\u4fe1\u903b\u8f91\nA\uff0c\u914d\u7f51\u65f6\u4e0a\u62a5\u4e09\u6b21\uff0c\u4ee5\u786e\u4fdd\u4e0a\u62a5\u6210\u529f\u3002\u5982\u679c\u914d\u5bf9\u6210\u529f\uff0c\u9762\u677f\u6709\u663e\u793a\u8bbe\u5907\u53f7\u3002\nB\uff0c\u5982\u679c\u914d\u5bf9\u6210\u529f\uff0c\u9762\u677f\u6ca1\u6709\u663e\u793a\u8bbe\u5907\u53f7\uff0c\u9700\u8981\u79fb\u9664\u8bbe\u5907\uff0c\u518d\u914d\u7f6e\u4e00\u904d\u3002\nC\uff0c\u6bcf\u6b21\u65ad\u8def\u5668\u4e0a\u7535\uff0c\u4e5f\u4e0a\u62a5\u4e00\u6b21\u3002", "extensions": { "iconName": "icon-dp_mode", "attribute": "1152" }, "name": "\u65ad\u8def\u5668\u8bbe\u5907\u53f7", "typeSpec": { "type": "string", "maxlen": 255Insbesondere bei den Daten im raw format und ergänzend warum aktuell manche dpIx gar nichts liefern, gibt es noch große ???
Hi
hab nun vorwiegend unter OpenBeken getestet welche Daten wie von und zu der TuyaMCU gehen.
Für eine Minimalkonfiguration unter Tasmota würde ich nun gerne Folgendes hinterlegen:
tuyaMcu_defWiFiState 4muß nach dem Bootvorgang an die MCU geschickt werden um den Wifi Status als verbunden zu melden
addRepeatingEvent 5 -1 tuyaMcu_sendQueryStateMuss in Schleife zur MCU geschickt werden um Messerwerte zu erhalten.
Als Idee könnte ich per Regel tuyasend0 in Dauerschleife schicken.
Folgende minimal gewählten Datenpunkte gilt es zuzuordnen:
Größte Herausforderung der RaW Wert von dpId 6 wo 3 Werte (Power, Strom, Spannung) drin stehen
// Measurements - Dpid 6 "phase_a" - channel RAW_TAC2121C_VCP -> 5,6,7 // TAC2121C VoltageCurrentPower Packet // This will automatically set voltage, power and current linkTuyaMCUOutputToChannel 6 RAW_TAC2121C_VCP setChannelType 5 Voltage_div10 setChannelLabel 5 "Voltage" setChannelType 6 Power setChannelLabel 6 "Power" setChannelType 7 Current_div1000 setChannelLabel 7 "Current"Als Standardsfunktion werde folgende FnIds angeboten:

Lässt sich zB per Skripting der RaW Wert zerlegen und dann den FnIds zuweisen?
Wie setzt man sowas unter Tasmota um?
Desweiteren gilt es direkt zuzuweisen:
DpId1 (Energy Counter):
// Total energy - Dpid 1 "total_forward_energy" -> channel 4 linkTuyaMCUOutputToChannel 1 val 4 setChannelType 4 EnergyTotal_kWh_div100 setChannelLabel 4 "Total Energy"Hier scheint es keine FnId zu geben und Tasmota würde aus FnId 31 dies selbst berechnen? Über den Weg der Dauerschleife (Tuyasend0) würde das natürlich gemäß der Stützstellen eine Ungenauigkeit zusätzlich darein bringen.
DpId 12 (Reset Energy Counter):
// Clear Energy Counters - Dpid 12 "clear_energy" -> channel 3 linkTuyaMCUOutputToChannel 12 bool 3 setChannelType 3 toggle setChannelLabel 3 "Clear Energy Counters"Entsprechend der Stromzählerfunktion noch keine Idee wie das umzusetzen wäre.
Auf den Rest könnte ich erst einmal verzichten. Insbesondere wie ich unter Tasmota die Befehle automatisch schicke ist mir nicht klar. Gibt es dort eine autoexec oder sollte ich eine Regel verwenden? Ergänzen die Schwierigkeit mit DpId6. Kann man über das Skripting den DpId zerlegen und entsprechenden FnIds zuweisen?
@Ralla66 Hast Du dazu eine Idee? Hänge nun leider schon länger und sehe keinen Weg was machbar ist.
Habt ihr Tips/Erfahrungen? Thx