Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Off Topic
    4. Microcontroller
    5. TuyaMCU per Tasmota Daten Identifizieren?

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    TuyaMCU per Tasmota Daten Identifizieren?

    This topic has been deleted. Only users with topic management privileges can see it.
    • D
      Dieter_P @Ralla66 last edited by

      @ralla66

      Danke. Mittels der Anleitung bin ich auf die Idee zur Spannung für den dpID:6 gekommen.

      Demnach liegt dpId 17 &18 im Raw Format vor und und es gilt zu finden was das ist:

      "DpIdData":"0701000D08000000"

      "DpIdData":"0101003C030100FD040000B4070100000800001E09000000"

      eine Zuweisung dieser Werte auf bereits bekannte FnIds zeigt bisher kein Ergebnis:
      d1d7e1a8-f08d-4858-b281-701dceeb22ed-grafik.png

      Ralla66 1 Reply Last reply Reply Quote 0
      • Ralla66
        Ralla66 Most Active @Dieter_P last edited by Ralla66

        @dieter_p

        die Anfrage der Werte ist ja wichtig, welche Commands / Werte werden angefordert.
        07 scheint ja das Command zu sein.

        19:32:48.453 DMP: 55 AA 03 07 00 05 0C 01 00 01 00 1C

        19:32:48.456

        {"TuyaReceived":
        {"Data":"55AA030700050C010001001C",
        "Cmnd":7,
        "CmndData":"0C01000100",
        "DpType1Id12":0,
        "12":{"DpId":12,"DpIdType":1,"DpIdData":"00"}}}

        {"TuyaReceived":

        gesendeter Befehl
        55AA ist Sync
        {"Data":"55AA030700050C010001001C",
        03 ??
        07 ist command
        "Cmnd":7,
        Command Data Register ?
        "CmndData":"0C01000100",
        Type 12 ( Integer usw)
        "DpType1Id12":0,
        "12":
        {
        "DpId":12,
        "DpIdType":1,
        "DpIdData":"00" ( Rohdata Wert)
        }}}


        "DpIdData":"0701000D08000000"

        hier mehrere Werte ?

        "DpIdData":"01010

        03C030100FD040000B4

        070100000800001

        E09000000"

        D 1 Reply Last reply Reply Quote 0
        • D
          Dieter_P @Ralla66 last edited by

          @ralla66 said in TuyaMCU per Tasmota Daten Identifizieren?:

          @dieter_p

          die Anfrage der Werte ist ja wichtig, welche Commands / Werte werden angefordert.

          Das ist ein Opfer meines "Ausschnitts". Ich fordere manuell mit tuyasend0 bei der MCU an alle Stati mitzuteilen.

          21:35:00.641 CMD: tuyasend0
          21:35:00.644 SRC: WebConsole from 192.168.0.2
          21:35:00.647 CMD: Grp 0, Cmd 'TUYASEND', Idx 0, Len 0, Pld -99, Data ''
          21:35:00.650 TYA: Read MCU state
          21:35:00.659 TYA: Send "55aa0008000007"
          21:35:00.663 RSL: RESULT = {"TuyaSend":"Done"}
          

          Was dann als Received folgt sind die 8 genannten dpIds. Von sich aus schickt die MCU bisher beobachtet nichts. Warum kann ich nicht sagen.

          Ralla66 1 Reply Last reply Reply Quote 0
          • Ralla66
            Ralla66 Most Active @Dieter_P last edited by Ralla66

            @dieter_p

            was ist denn oben DMP ? Dump Commands ?
            soweit fast klar
            TYA: Send "
            55aa sync
            0008 command
            0000 command
            07 ? CRC ?

            D 1 Reply Last reply Reply Quote 0
            • D
              Dieter_P @Ralla66 last edited by

              @ralla66 said in TuyaMCU per Tasmota Daten Identifizieren?:

              @dieter_p

              was ist denn oben DMP ? Dump Commands ?

              Ein automatischer Dump. (Meine Selbsterklärung) In der Doku dazu bisher nichts gefunden.

              Wie Du sagst:

              19:32:48.453 DMP: 55 AA 03 07 00 05 0C 01 00 01 00 1C

              55aa03 Frame Header Version Fixed value of 0x55aa

              07 Command Word 0x06 - send commands 0x07 - report status

              0005 data lenght

              0C DpId ->12

              01 data type boolean

              00 01 function lenght

              00 function command -> Off

              1C Verification CRC

              Hier also der Switch ID 12 ausgelesen mit dem Wert 0

              Für die allgemeine MCU Statiabfrage das command 08 ist ebnfalls nicht dokumentiert.

              Ralla66 1 Reply Last reply Reply Quote 0
              • Ralla66
                Ralla66 Most Active @Dieter_P last edited by Ralla66

                @dieter_p

                dpId 17 ist ja
                "DpIdData":"0701000D08000000"
                07 Command
                01 ? je nach Zählweise , 0 und 1 wären 2 Werte ( 07 00 und 07 01 )
                000D08 a 3 Byte
                000000 a 3 Byte

                Was ist denn 17 für ein Wert Volt, Watt ..........................
                Typisch in Register sind eigentlich Längen von 2 bis 3 Byte

                Nachtrag , 55aa03 , die 03 würde ich eher Read Register zuordnen.
                Sync ( 55aa ) ist meist ein simples High / Low

                0D08 == 3,336 A x 240 Volt == 800 Watt / 10 ungefähr 80 Watt

                D 1 Reply Last reply Reply Quote 0
                • D
                  Dieter_P @Ralla66 last edited by Dieter_P

                  0D08 == 3,336 A x 240 Volt == 800 Watt

                  Thx. Versuche es gerade plausibel zu bekommen. GGf. fehlt noch der übliche Faktor 10 also 0,3336 A x 232V = 78W mmmh

                  Das seltsame die Werte bekomme ich übermittelt wenn keine Last angeschlossen ist.

                  dpID 6, 17, 18 sind nahezu gleich, egal ob mit oder ohne Last.

                  Ich prüfe das nochmal flott.

                  Ohne Last:
                  dpId 18: "55AA0307001C120000180101003C030100FD040000B4070100000800001E090000007D"

                  dpId 17: "55AA0307000C110000080701000D080000004B"

                  dpId 6: "55AA0307000C06000008091A00000000000046"

                  Mit Last (6W):

                  dpId 6: "55AA0307000C06000008091D00002E0000047B"

                  dpId 17: "55AA0307000C110000080701000D080000004B"

                  dpId 18: "55AA0307001C120000180101003C030100FD040000B4070100000800001E090000007D"

                  Ralla66 1 Reply Last reply Reply Quote 0
                  • Ralla66
                    Ralla66 Most Active @Dieter_P last edited by Ralla66

                    @dieter_p sagte in TuyaMCU per Tasmota Daten Identifizieren?:

                    Das seltsame die Werte bekomme ich übermittelt wenn keine Last angeschlossen ist.

                    Zigbee halt, dauert und dauert .....................................................................

                    D 1 Reply Last reply Reply Quote 0
                    • D
                      Dieter_P @Ralla66 last edited by Dieter_P

                      @ralla66 said in TuyaMCU per Tasmota Daten Identifizieren?:

                      @dieter_p sagte in TuyaMCU per Tasmota Daten Identifizieren?:

                      Das seltsame die Werte bekomme ich übermittelt wenn keine Last angeschlossen ist.

                      Zigbee halt, dauert und dauert .....................................................................

                      Welches Zigbee?

                      Edit: Und gerade nochmal mit 60W Last probiert.

                      Hier auch nur der Unterschied bei dpIx 6 zu sehen (17&18 gleich): 55AA0307000C06000008091D00010500003C

                      000C data length 12

                      06 dpIx 6

                      00 data type raw

                      0008 function length

                      091D0001050000 function command (Länge passt nicht) ergibt aus Hex in Dezimal 2565160644706304 mit einem Divisor von 10 könnten das 0,256A sein was bei ~233V die 60W wären.

                      Ralla66 2 Replies Last reply Reply Quote 0
                      • Ralla66
                        Ralla66 Most Active @Dieter_P last edited by Ralla66

                        @dieter_p

                        habe mal die Ansicht anders gestaltet da sieht man mehr Auffälligkeiten und ist auch Übersichtlicher.
                        In Data können ja auch Wert und Text in Asci hex stehen, muß ja nicht nur Wert sein.
                        Bsp.: 60 W ist 60 als Wert, Leerzeichen und W als Ascii in Hex 0x57
                        Obwohl mit einer Ungenauigkeit von 20% würde ich bei 60 W rechnen ohne Abgleich.

                        55AA0307000C06000008091D00010500003C

                        55AA Sync
                        03 Command Read
                        07 00 Command x ( weitere 07 01 -> 07 cmnd 00 und 01 andere Data)
                        0C data length 12
                        06 dpIx 6
                        000000 data type raw ( ist was Integer / Ascii ? )

                        08 function length ( 08 )
                        09 1D Register Wert Volt dec 2.333 / 233 Volt ?
                        00 ?
                        01 function length ( 01 )
                        05 Register Watt Wert ?
                        00003C Raw Data ? hex 3C ist dec 60

                        oder

                        08 function length ( 08 )
                        09 1D Register Wert Volt dec 2.333 == 233 Volt ?
                        000105 dec 261 macht 2,61 A ( 2,61 A x 233 Volt == 608,13 == 60,81 Watt )
                        00003C Raw Data ? hex 3C ist dec 60 Watt

                        zerlege mal dpId 18 so dann sieht man mehr, scheinen ja nur mehr Werte zu sein mit 07 01.

                        1 Reply Last reply Reply Quote 0
                        • Ralla66
                          Ralla66 Most Active @Dieter_P last edited by Ralla66

                          @dieter_p

                          hast du 2 Zähler oder 3 Phasen wegen der 07 00 und 07 01.
                          Ab 03 01 eventuell Zählerstände ?

                          55AA Sync
                          03 Command Read

                          0700
                          1C // dec 28 data length dec 28 Gesamt ab hier
                          12 dpIx
                          00 function length ( 00 )
                          00

                          18 dec 24 ?

                          0101 2,57 Ampere Wert
                          003C 60 Watt Wert
                          0301
                          00FD04 // dec 64.772
                          0000B4 // dec 212

                          0701
                          00 data length
                          00 dpIx
                          08 function length ( 08 )
                          0000

                          1E dec 30 ? hälfte der 60 Watt
                          0900 230,4 Volt
                          00007D dec 125 ? hälfte der A 1,25
                          0101 2,57 Ampere Wert
                          003C 60 Watt Wert
                          03
                          0100 dec 256 Volt ?
                          00FD dec 253 Volt ?
                          04
                          0000 ?
                          00B4 dec 180 ?

                          D 2 Replies Last reply Reply Quote 0
                          • D
                            Dieter_P @Ralla66 last edited by Dieter_P

                            @ralla66 said in TuyaMCU per Tasmota Daten Identifizieren?:

                            @dieter_p

                            hast du 2 Zähler oder 3 Phasen wegen der 07 00 und 07 01.
                            Ab 03 01 eventuell Zählerstände ?

                            Danke! Versuche gerade Deine Analyse nachzuvollziehn und am WE leider nicht dazu gekommen.

                            Das Ding hat nur 1 Phase, schaue ich aber in den Zigbee2Mqtt-Code des ähnlichen Models finde ich dort 2 Zähler zusätzlich zu den 3 Measurements (Spannung, Strom, Leistung):

                            ""Zemismart Power Meter Attributes"""
                            ZEMISMART_TOTAL_ENERGY_ATTR = 0x0201
                            ZEMISMART_TOTAL_REVERSE_ENERGY_ATTR = 0x0202
                            ZEMISMART_VCP_ATTR = 0x0006
                            

                            VCP sagt mir noch nichts.

                            Edit: Einen neuen Benefit sehe ich aus dem Tool bisher nicht, aber möchte es hier nicht vorenthalten:
                            5e823834-9459-41de-8119-ca5803d2df71-grafik.png
                            und in der Anleitung wird eindeutig Dein Ansatz bestätigt:
                            "What does the program not help with?
                            Basically, there is one situation where this program cannot help. Some of the more advanced Tuya electricity meters (higher-end, already DIN rail, in the price range of PLN 100 or more) use TuyaMCU to report measurements, but often report a group of measurements in one dpID. Then such a dpID is of the Raw type (no longer Value) and contains several bytes in which (depending on the device) data such as the current value of voltage, current, power, sometimes frequency are stored. Such a raw package has a device-dependent format and it is difficult to decode it more universally.
                            Cheaper products with energy measurement, in turn, do not use TuyaMCU, rather BL0937 or BL0942 are directly connected to the WiFI module there."

                            1 Reply Last reply Reply Quote 0
                            • D
                              Dieter_P @Ralla66 last edited by

                              @ralla66

                              Hab mir mal ein Excel gebaut um zu vergleichen. Das jetzt mit 60W Glühlampe und 5,5W LED.

                              dpIx 6 macht durchaus Sinn:

                              7b94fba1-9848-4c67-97ce-8d74ed173bae-grafik.png

                              dpIx 18: auch wenn Ich Deinen gezeigten Ansatz nicht verstanden hab, hab ihn dennoch auch ins Excel überführt aber ein Vergleich 60W Last zu 5,5W macht kaum Sinn, da in beiden Fällen alles identisch bleibt:

                              e0e1a4f5-9828-4d13-a747-8a87161754e5-grafik.png

                              Ralla66 1 Reply Last reply Reply Quote 0
                              • Ralla66
                                Ralla66 Most Active @Dieter_P last edited by Ralla66

                                @dieter_p

                                Systeme sind ja alle ähnlich, dann würde ich Zählerstände suchen in dpIx 18 ab 03 01.
                                Mögliche Werte wären dann in etwa :

                                Tasmota Werte.jpg

                                Zum testen könnte man mal versuchen Werte zu nullen wenn es das Gerät hergibt.

                                D 1 Reply Last reply Reply Quote 0
                                • D
                                  Dieter_P @Ralla66 last edited by

                                  @ralla66

                                  Zum Nullen habe ich bisher in Anleitungen und App nichts finden können.

                                  In der App ist noch ein "Balance"-Zähler drin. Wenn ich es aber richtig verstehe ist das aber die Summe der beiden Zählerrichtungen mit einem Preis je kWh aus der App verrechnet. Denke das passiert in der App und kommt nicht von der MCU.

                                  Muß mir mal eine größere Last suchen. In der Auflösung kWh werde ich mit 60W nicht so schnell etwas sehen.

                                  Ralla66 1 Reply Last reply Reply Quote 0
                                  • Ralla66
                                    Ralla66 Most Active @Dieter_P last edited by Ralla66

                                    @dieter_p

                                    -> 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 🙂

                                    D 3 Replies Last reply Reply Quote 0
                                    • D
                                      Dieter_P @Ralla66 last edited by

                                      @ralla66

                                      Denke das ist gerade mein Hauptproblem. Ich habe den Zähler nie im Orginalzustand betrieben sondern direkt mit ESP umgebaut. Von daher weiß ich A) nicht wie der aktuelle Zählerstand ist und kann nur vermuten, dass er bei 0 gestartet ist.

                                      Mit 60W und 5,5W ist das Ding allerhöchstens 30 Minuten in Betrieb gewesen und davon bestimmt nur 5 Minuten mit der 60W Birne -> der Zähler kann sich nicht groß bewegt haben.

                                      Der Zähler in Speiserichtung kann noch weniger gezählt haben da ich ihn höchsten 2 Minuten am Anfang falschrum in Betrieb hatte mit 5,5W.

                                      Aber mein Problem B) habe im Moment keine sichere Referenz um mir ein Delta im Zählerstand ableiten zu können. Muß mir mal ein Kabel bauen und denke daran meinen Fön mit 1800W mal 10 Minuten laufen zu lassen was ja zu mindest 0,3kWh sichtbar machen sollte.

                                      1 Reply Last reply Reply Quote 0
                                      • D
                                        Dieter_P @Ralla66 last edited by Dieter_P

                                        @ralla66

                                        Sieht nicht gut aus und irgendwas erscheint mir inaktiv auch durch die blinkende LED des Geräts signalisiert.

                                        Hab jetzt einen Test gefahren mit dem Fön 2,2kW für 2 Min und dpIx 17 & 18 bleiben völlig unverändert. dpIx 6 macht Sinn:

                                        90a75f97-fde9-4100-a686-cbf9d4c9007d-grafik.png

                                        1 Reply Last reply Reply Quote 0
                                        • D
                                          Dieter_P @Ralla66 last edited by Dieter_P

                                          @ralla66

                                          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_id
                                          

                                          Desweiteren 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": 255
                                          

                                          Insbesondere bei den Daten im raw format und ergänzend warum aktuell manche dpIx gar nichts liefern, gibt es noch große ???

                                          D 1 Reply Last reply Reply Quote 0
                                          • D
                                            Dieter_P @Dieter_P last edited by Dieter_P

                                            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 4
                                            

                                            muß nach dem Bootvorgang an die MCU geschickt werden um den Wifi Status als verbunden zu melden

                                            addRepeatingEvent 5 -1 tuyaMcu_sendQueryState
                                            

                                            Muss 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:
                                            13fc62a4-0458-4c00-8b1f-6c5866ddb5a1-grafik.png

                                            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

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            1.1k
                                            Online

                                            31.7k
                                            Users

                                            79.7k
                                            Topics

                                            1.3m
                                            Posts

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