Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Hardware
    4. DMP8624 -> iobroker

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    DMP8624 -> iobroker

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

      @wal

      habe ich so ähnlich, 2 Plyontech mit 2,4 KWh , abends per Nulleinspeisung raus.
      Hatte das erst per Hoymiles 600 mit ESP DTU geregelt. Riesiger Aufwand halt.
      Versicherungstechnisch auch fragwürdig. Hatte dann den DPM gekauft aber das
      Projekt wieder verworfen.
      Bin nun auf Lumentree WR umgestiegen. Die bieten per Wlan eine Nulleinspeisung an.
      Mqtt für IO ist auch an Board. Die Zählerwerte können per Json vom Tasmota ESP
      angefordert werden. Sehr cool geproggtes Projekt.
      Versicherungstechnisch halt sauber.
      Github Projekt
      Video von Christian der Kanal

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

        @wal

        Nur mal so als Idee.
        Im DPM Script könnte man ja das Json des Zähler ESP abholen und den Bezugswert Watt rausfiltern. Drauf hin dann V und A des DPM steuern.
        Möglichkeit 2 wäre eine Rule im Zähler ESP setzen die alle x sec einen http Wert zum DPM ESP sendet.

        Test Json im IO abholen

        Json neu 1.jpg

        Json mit ESP Lumentree Software

        ZEPC.jpg

        Json abholen.jpg

        Wal 1 Reply Last reply Reply Quote 0
        • Wal
          Wal Developer @Ralla66 last edited by

          @ralla66 ,
          was ich schon in Thermostaten mache ist aus dem Sonoff-Adapter Objekte abonnieren und im Skript weiter verarbeiten.
          Man legt ein Datenpunkt im Objektbaum vom DPM an und beschreibt ihn mit irgendetwas und hat den Wert dann im ESP.

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

            @Wal

            von Tasmota nach Tasmota cmd senden geht ja, wäre die Frage ob beim Scripting es möglich ist ein
            Request zu senden und die Antwort ( Json ) darauf hin zu empfangen.
            Das wäre für Hichi ESP Lesekopf Besitzer dann die Top Speicher Balkonkraftwerk Nulleinspeisung
            mit dem DPM.

            Wal 1 Reply Last reply Reply Quote 0
            • Wal
              Wal Developer @Ralla66 last edited by Wal

              @ralla66 ,
              mit einem Mosquitto Server kein Problem, könnte auch mit dem MQTT-Adapter als Server gehen.
              Es braucht da auch kein Json, man kann jeden Datenpunkt abonnieren den man möchte.

              >BS
              +>subscribe V, cmnd/%topic%/tvolt
              +>subscribe C, cmnd/%topic%/tampere
              +>subscribe SW, cmnd/%topic%/tpow
              +>subscribe L, stat/Haus.Stromzaehler/aktuelle_leistung
              +>subscribe G, stat/Haus.Wechselrichter/wasauchimmer
              

              Http request gibt es auch im Skript

              USE_WEBSEND_RESPONSE)
              http("url" "payload") = does a GET or POST request on a URL (http:// is internally added)
              

              edit: einen hichi und solarregler habe ich ja, brauche nur eine Batterie zum spielen.

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

                @wal

                Pylontech 🙂
                Alles was das Herz begehrt an Schnittstellen, auslesen per ESP Routine.
                BMS mit an Board.

                Eher Autark, ESP DPM mit ESP Zähler, IO und Mqtt Broker kann ja dabei sein, aber eben kein muss.

                Post klingt Interessant, damit kann ich den HM600 über NRF Antenne direkt steuern.

                Nachtrag

                http("url" "payload") = does a GET or POST request on a URL (http:// is internally added)
                
                

                Antwort kann wie per print ausgegeben werden ? Teste dann heute Abend

                1 Reply Last reply Reply Quote 0
                • Wal
                  Wal Developer last edited by

                  @ralla66 sagte in DMP8624 -> iobroker:

                  Pylontech

                  Pylontech US5000 1.235,25 € evtl. mit dem Weihnachtsgeld. 😉

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

                    @wal

                    Die kleine Pylontech Routine

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

                      @wal

                      Request Antwort Json print so ?

                      ; Read the status JSON payload

                      U
                      gw=StatusNET#Gateway
                      print %gw%

                      Wal 1 Reply Last reply Reply Quote 0
                      • Wal
                        Wal Developer @Ralla66 last edited by

                        @ralla66 ,
                        da musst du dich mal durcharbeiten, habe damit noch nichts gemacht. 😉

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

                          @wal

                          ok, dann mal ran an Lehrbrief 1 -> Übung 1 🙂

                          Button Websend einfügen, Websend ausführen, Antwort Request in Var schreiben.

                          1 und 2 sollte gehen, bei 3 haperts noch 😉

                          >D
                          ; Ralla
                          gw=""
                          
                          Vmax=60
                          Cmax=24
                          v=0
                          V=0
                          c=0
                          C=0
                          sw=0
                          SW=0
                          ; Ralla
                          WS=0
                          rV="01060000"
                          vV=""
                          rC="01060001"
                          vC=""
                          rSW="01060002000"
                          vSW=""
                          >BS
                          +>subscribe V, cmnd/%topic%/tvolt
                          +>subscribe C, cmnd/%topic%/tampere
                          +>subscribe SW, cmnd/%topic%/tpow
                          >B
                          smlj=0
                          ->sensor53 r
                          ; Ralla
                          ; Request Status information. The response will trigger the `U` section
                          +>status 5
                          
                          >R
                          smlj=0
                          >S
                          if upsecs>30
                          then
                          smlj=1
                          endif
                          >W
                          bu(SW "DPM Ein" "DPM Aus")
                          ; Ralla
                          bu(WS "WebSend" "Websend")
                          nm(0.0 60.0 0.01 V "DPM Ausgang (V)" 200 2)
                          nm(0.0 24.0 0.01 C "DPM Ausgang (A)" 200 2)
                          >T
                          sw=DC#sSwitch
                          v=DC#sVolt
                          c=DC#sCur
                          if ((chg[sw]>0) and (SW!=sw))
                          then
                            SW=sw
                            +>publish stat/%topic%/RESULT {"tpow":%0sw%}
                          endif
                          if ((chg[v]>0) and (V!=v))
                          then
                            V=v
                            +>publish stat/%topic%/RESULT {"tvolt":%2v%}
                          endif
                          if ((chg[c]>0) and (C!=c))
                          then
                            C=c
                            +>publish stat/%topic%/RESULT {"tampere":%2c%}
                          endif
                          if chg[V]>0
                          then
                            if V>Vmax
                            then
                              V=Vmax
                            endif
                            if V<0
                            then
                              V=0
                            endif
                            vV=rV+sb(hx((V*100)) 4 4)
                            +>publish stat/%topic%/RESULT {"tvolt":%2V%}
                            sml(1 3 vV)
                          endif
                          if chg[C]>0
                          then
                            if C>Cmax
                            then
                              C=Cmax
                            endif
                            if C<0
                            then
                              C=0
                            endif
                            vC=rC+sb(hx((C*1000)) 4 4)
                            +>publish stat/%topic%/RESULT {"tampere":%2C%}
                            sml(1 3 vC)
                          endif
                          if ((chg[SW]>0) 
                          then
                            vSW=rSW+s(SW)
                            +>publish stat/%topic%/RESULT {"tpow":%0SW%}
                            sml(1 3 vSW)
                          endif
                          
                          ; Ralla
                          if ((chg[WS]>0) 
                          then
                          
                          =>WebSend [192.168.2.28] /cm?cmnd=status&2010
                          ;Org Ralla IO http://192.168.2.28/cm?cmnd=status%2010
                          print Ralla websend
                          
                          endif
                          ; Ralla
                          ; Read the status JSON payload
                          >U
                          gw=StatusNET#Gateway
                          ;gw=StatusSNS,MT175,Bezug_aktuell
                          print %gw%
                          print Ralla gw
                          
                          >M 1
                          +1,3,m,16,9600,DC,1,2,010300000001,010300010001,010300020001,010310010001,010310020001
                          1,010302SSssxxxx@i0:100,Spannung (set),V,sVolt,2
                          1,010302SSssxxxx@i1:1000,Strom (set),A,sCur,2
                          1,010302SSssxxxx@i2:1,Ausgang (set),,sSwitch,0
                          1,010302SSssxxxx@i3:100,Spannung (disp),V,dVolt,2
                          1,010302SSssxxxx@i4:1000,Strom (disp),A,vCur,2
                          #
                          

                          DPM WebSend.jpg

                          DPM WebSend gui.jpg

                          ; Request Status information. The response will trigger the U section

                          B
                          +>status 5
                          Dann sollte ja U print ausgeführt sein, ist aber nicht, dann kann nur WebSend falsch sein

                          Wal 2 Replies Last reply Reply Quote 0
                          • Wal
                            Wal Developer @Ralla66 last edited by

                            @ralla66 ,
                            denk daran das man eine Firmware mit USE_WEBSEND_RESPONSE braucht.

                            1 Reply Last reply Reply Quote 0
                            • Wal
                              Wal Developer @Ralla66 last edited by Wal

                              @ralla66 ,
                              hier für dich falls du es noch nicht kennst.

                              edit: Werde ich heute testen ob ich den aktuellen Verbrauch vom hichi holen kann wenn du nicht dazu kommst.

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

                                @wal

                                heute morgen war um 0:30 Feierabend 🙂
                                den Link lese ich heute Abend,
                                habe boot error am ESP nach dem flashen / script einfügen, war eventuell schon übermüdet
                                meine .bin mit USE_WEBSEND_RESPONSE aktiviert lief nicht sauber.
                                kannst du mal bitte die .bin hochladen mit Zeile 471 USE_WEBSEND_RESPONSE aktiviert
                                Wäre cool wenn du mit testes, macht das debuggen einfacher.

                                Danke

                                Wal 1 Reply Last reply Reply Quote 0
                                • Wal
                                  Wal Developer @Ralla66 last edited by

                                  @ralla66 ,
                                  firmware_websend.bin.gz

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

                                    @wal

                                    Danke, jetzt weiter

                                    Wal 1.jpg

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

                                      @wal

                                      erste Antwort, bekomme ein WEbQuery zurück

                                      17:35:28.308 SCR: performs "WebSend [192.168.2.28] /cm?cmnd=status&2010"
                                      17:35:29.951 MQT: stat/tasmota_3CECBB/RESULT = {"WebQuery":{"Status":{"Module":18,"DeviceName":"SMA","FriendlyName":["SMA"],"Topic":"tasmota_D35C9C","ButtonTopic":"0","Power":0,"PowerOnState":3,"LedState":1,"LedMask":"FFFF","SaveData":1,"SaveState":1,"SwitchTopic":"0","SwitchMode":[0,0,0,0,0,0,0,0],"ButtonRetain":0,"SwitchRetain":0,"SensorRetain":0,"PowerRetain":0,"InfoRetain":0,"StateRetain":0}}}
                                      17:35:29.955 MQT: stat/tasmota_3CECBB/RESULT = {"WebSend":"Done"}
                                      17:35:29.957 Ralla websend
                                      
                                      >D
                                      
                                      ; Ralla
                                      
                                      gw=""
                                      
                                      
                                      Vmax=60
                                      
                                      Cmax=24
                                      
                                      v=0
                                      
                                      V=0
                                      
                                      c=0
                                      
                                      C=0
                                      
                                      sw=0
                                      
                                      SW=0
                                      
                                      ; Ralla
                                      
                                      WS=0
                                      
                                      rV="01060000"
                                      
                                      vV=""
                                      
                                      rC="01060001"
                                      
                                      vC=""
                                      
                                      rSW="01060002000"
                                      
                                      vSW=""
                                      
                                      >BS
                                      
                                      +>subscribe V, cmnd/%topic%/tvolt
                                      
                                      +>subscribe C, cmnd/%topic%/tampere
                                      
                                      +>subscribe SW, cmnd/%topic%/tpow
                                      
                                      >B
                                      
                                      smlj=0
                                      
                                      ->sensor53 r
                                      
                                      ; Ralla
                                      
                                      ; Request Status information. The response will trigger the `U` section
                                      
                                      +>status 5
                                      
                                       
                                      
                                      >R
                                      
                                      smlj=0
                                      
                                      >S
                                      
                                      if upsecs>30
                                      
                                      then
                                      
                                      smlj=1
                                      
                                      endif
                                      
                                      >W
                                      
                                      bu(SW "DPM Ein" "DPM Aus")
                                      
                                      ; Ralla
                                      
                                      bu(WS "WebSend" "Websend")
                                      
                                      nm(0.0 60.0 0.01 V "DPM Ausgang (V)" 200 2)
                                      
                                      nm(0.0 24.0 0.01 C "DPM Ausgang (A)" 200 2)
                                      
                                      >T
                                      
                                      sw=DC#sSwitch
                                      
                                      v=DC#sVolt
                                      
                                      c=DC#sCur
                                      
                                      if ((chg[sw]>0) and (SW!=sw))
                                      
                                      then
                                      
                                        SW=sw
                                      
                                        +>publish stat/%topic%/RESULT {"tpow":%0sw%}
                                      
                                      endif
                                      
                                      if ((chg[v]>0) and (V!=v))
                                      
                                      then
                                      
                                        V=v
                                      
                                        +>publish stat/%topic%/RESULT {"tvolt":%2v%}
                                      
                                      endif
                                      
                                      if ((chg[c]>0) and (C!=c))
                                      
                                      then
                                      
                                        C=c
                                      
                                        +>publish stat/%topic%/RESULT {"tampere":%2c%}
                                      
                                      endif
                                      
                                      if chg[V]>0
                                      
                                      then
                                      
                                        if V>Vmax
                                      
                                        then
                                      
                                          V=Vmax
                                      
                                        endif
                                      
                                        if V<0
                                      
                                        then
                                      
                                          V=0
                                      
                                        endif
                                      
                                        vV=rV+sb(hx((V*100)) 4 4)
                                      
                                        +>publish stat/%topic%/RESULT {"tvolt":%2V%}
                                      
                                        sml(1 3 vV)
                                      
                                      endif
                                      
                                      if chg[C]>0
                                      
                                      then
                                      
                                        if C>Cmax
                                      
                                        then
                                      
                                          C=Cmax
                                      
                                        endif
                                      
                                        if C<0
                                      
                                        then
                                      
                                          C=0
                                      
                                        endif
                                      
                                        vC=rC+sb(hx((C*1000)) 4 4)
                                      
                                        +>publish stat/%topic%/RESULT {"tampere":%2C%}
                                      
                                        sml(1 3 vC)
                                      
                                      endif
                                      
                                      if ((chg[SW]>0) 
                                      
                                      then
                                      
                                        vSW=rSW+s(SW)
                                      
                                        +>publish stat/%topic%/RESULT {"tpow":%0SW%}
                                      
                                        sml(1 3 vSW)
                                      
                                      endif
                                      
                                       
                                      
                                      ; Ralla
                                      
                                      if ((chg[WS]>0) 
                                      
                                      then
                                      
                                       
                                      
                                      =>WebSend [192.168.2.28] /cm?cmnd=status&2010
                                      
                                      res=WebSend [192.168.2.28] /cm?cmnd=status&2010
                                      
                                      ;Org Ralla IO http://192.168.2.28/cm?cmnd=status%2010
                                      
                                      print Ralla websend
                                      
                                      
                                      
                                      endif
                                      
                                      ; Ralla
                                      
                                      ; Read the status JSON payload
                                      
                                      >U
                                      
                                      gw=StatusNET#Gateway
                                      
                                      ;gw=StatusSNS,MT175,Bezug_aktuell
                                      
                                      print %gw%
                                      
                                      print Ralla gw
                                      
                                       
                                      
                                      >M 1
                                      
                                      +1,3,m,16,9600,DC,1,2,010300000001,010300010001,010300020001,010310010001,010310020001
                                      
                                      1,010302SSssxxxx@i0:100,Spannung (set),V,sVolt,2
                                      
                                      1,010302SSssxxxx@i1:1000,Strom (set),A,sCur,2
                                      
                                      1,010302SSssxxxx@i2:1,Ausgang (set),,sSwitch,0
                                      
                                      1,010302SSssxxxx@i3:100,Spannung (disp),V,dVolt,2
                                      
                                      1,010302SSssxxxx@i4:1000,Strom (disp),A,vCur,2
                                      
                                      #
                                      
                                      Wal 2 Replies Last reply Reply Quote 0
                                      • Wal
                                        Wal Developer @Ralla66 last edited by

                                        @ralla66 ,
                                        http.jpg

                                        1 Reply Last reply Reply Quote 0
                                        • Wal
                                          Wal Developer @Ralla66 last edited by

                                          @ralla66 ,

                                          Hichi:

                                          >D
                                          aktuell=0
                                          >B
                                          ->sensor53 r
                                          >T
                                          aktuell=MT175#P
                                          http("192.168.xxx.xxx" "/cm?cmnd=script>Aktuell="+s(aktuell))
                                          >M 1
                                          +1,3,s,16,9600,MT175
                                          1,77070100010800ff@1000,E_in,kWh,E_in,1
                                          1,77070100010801ff@1000,E_in_HT,kWh,E_in_HT,1
                                          1,77070100010802ff@1000,E_in_NT,kWh,E_in_NT,1
                                          1,77070100020800ff@1000,E_out,kWh,E_out,1
                                          1,77070100100700ff@1,P,W,P,18
                                          1,77070100000009ff@#,Server_ID,,Server_ID,0
                                          #
                                          

                                          DPM8624:

                                          >D
                                          Aktuell=0
                                          >W
                                          Aktuelle Leistung{m} %0Aktuell% W
                                          
                                          Ralla66 1 Reply Last reply Reply Quote 0
                                          • Ralla66
                                            Ralla66 Most Active @Wal last edited by

                                            @wal

                                            Habe die Data, %20 weglassen

                                            18:10:08.057 SCR: performs "WebSend [192.168.2.28] /cm?cmnd=status 10"
                                            18:10:08.622 MQT: stat/tasmota_3CECBB/RESULT = {"WebQuery":{"StatusSNS":{"Time":"2023-09-20T18:10:08","MT175":{"Geräte_ID":"","Verbrauch_Gesamt":37714,"Bezug_Tarif_1":37714.412,"Bezug_Tarif_2":0,"Netzeinspeisung":0,"Lieferung_Tarif_1":0,"Lieferung_Tarif_2":0,"Bezug_aktuell":9,"Phase_L1":17,"Phase_L2":-71,"Phase_L3":62}}}}
                                            18:10:08.626 MQT: stat/tasmota_3CECBB/RESULT = {"WebSend":"Done"}
                                            18:10:08.628 Ralla websend
                                            
                                            ; Ralla
                                            if ((chg[WS]>0) 
                                            then
                                            ;10 = show connected sensor information (replaces 'Status 8')
                                            =>WebSend [192.168.2.28] /cm?cmnd=status 10
                                            print Ralla websend
                                            endif
                                            

                                            Yeep 🙂
                                            jetzt noch zerlegen, Ideen ? mit U ?

                                            Teste mal mit Hichi ob Daten kommen

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            413
                                            Online

                                            31.7k
                                            Users

                                            79.8k
                                            Topics

                                            1.3m
                                            Posts

                                            7
                                            235
                                            20810
                                            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