Skip to content
  • Home
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. Node-Red
  5. [HowTo] Huawei SUN2000 WR Modbus mit node-red (read + write)

NEWS

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    10
    1
    118

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    24
    1
    1.4k

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    9.3k

[HowTo] Huawei SUN2000 WR Modbus mit node-red (read + write)

Scheduled Pinned Locked Moved Node-Red
574 Posts 110 Posters 230.4k Views 108 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • B badsnoopy667

    @christof-lewandowski
    Das würde mich auch immer noch brennend interessieren.
    Ich bin mir gar nicht sicher, ob man wirklich Register 47255 schreiben muss. Das scheint das Register zu sein um dem Speicher konkrete Lade- und Entladezeiträume zu übertragen. Deshalb ist es auch 43 Zeichen lang.
    Es gibt noch mehrere andere Register die sich alle mit Forced Charge / Discharge beschäftigen. Diese sind teilweise deutlich kürzer und damit (vermutlich) einfacher zu schreiben. Aber bisher habe ich es noch nicht hinbekommen.

    Es gibt eine Home Assistant Integration für den Huawei Wechselrichter. Diese scheint von den Screenshots bei GitHub her auch das Forced Charging zu unterstützen.
    HA Integration

    Ich habe schon bei GitHub einen Adapter-Request für iobroker gestellt. Ich hätte die Hoffnung, dass sich Teile der HA Integration nutzen lassen dafür?

    D Offline
    D Offline
    Doom.86
    wrote on last edited by Doom.86
    #424

    @badsnoopy667 an forced Charge bin ich gerade dran. Ich hab es über das Tour Register geschafft, die Werte alle einzeln für die Perioden auszulesen, aber leider nicht geschafft zu schreiben. Seit heute habe ich ein Skript im Versuch laufen, ob das laden theoretisch funktionieren würde. Gibt es hier im forum: https://forum.iobroker.net/topic/69604/hausspeicher-laden-dynamisch-tibberlink-scripte

    Wenn das funktioniert, mache ich mich weiter an das laden. Somit habe ich dann schon mal einen datenpunkt.

    Mit dem force charging muss man so wie ich es gesehen habe, mindestens 3 Register schreiben. Das erste zum laden, das zweite der gewünschte SoC und als dritter, die ladeleistung.

    Christof LewandowskiC 1 Reply Last reply
    0
    • B Bolli

      Ist es möglich mit node-red , 3huawei wechselrichter in Kaskade mit 3 unterschiedlichen Modbus ID auszulesen ? Verstehe ich es so , dass die Unit ID die Modbus ID ist ?
      Ich möchte von allen drei die aktuelle leistung abfragen, ist das möglich ?

      D Offline
      D Offline
      Doom.86
      wrote on last edited by Doom.86
      #425

      @bolli ich habe bei mir zwei Wechselrichter in Kaskade. Der erste ist meine ich unit 0 und der zweite unit 1. Oder es ist unit 1 und unit 2. Auf jedenfall ist der zweite eine unit id höher als der erste. Sollte so dann auch mit 3 Wechselrichter funktionieren.

      1 Reply Last reply
      0
      • ChristianSrC ChristianSr

        @alexander85 danke. das wars.

        B Offline
        B Offline
        Bolli
        wrote on last edited by
        #426

        @christiansr ich habe auch drei Wechselrichter in Kaskade. Muss ich bei Unit-ID bei allen drei die 16 eintragen ? image.jpg

        D 1 Reply Last reply
        0
        • B Bolli

          @christiansr ich habe auch drei Wechselrichter in Kaskade. Muss ich bei Unit-ID bei allen drei die 16 eintragen ? image.jpg

          D Offline
          D Offline
          Doom.86
          wrote on last edited by
          #427

          @bolli ich nutze diesesn Flow: @spexx said in [HowTo] Huawei SUN2000 WR Modbus mit node-red (read + write):

          @Christof-Lewandowski
          Ich frage drei größere Adressbereiche ab, das wird dann über einen Buffer-Parser ausgewertet und alle Werte in einzelne Datenpunkte geschrieben. Ich denke im Prinzip das was du suchst, anbei der Flow.
          Zwischen den Abfragen habe ich aktuell eine Minute Verzögerung, das Abfrageintervall kann man sicher auch noch runtersetzen, läuft so aber bereits seit Wochen problemlos.

          2023-06-23_20h10_28.png
          2023-06-23_20h20_26.png
          flows.json

          Vorteil, dort werden alle Register auf einmal abgefragt und nicht jedes Nacheinander.

          Zu deiner Frage, bei mir ist bei dem 1. Wechselrichter die Unit-ID: 1 und bei dem 2. Wechselrichter die Unit-ID: 2 bei Batterie und Powersensor auch die Unit-ID: 1, da diese über den 1. Wechselrichter verwaltet werden und mein Speicher an dem 1. Wechselrichter angeschlossen ist.

          262d9f09-2621-4f0c-b7a6-0d58c5ffa0ee-image.png

          B 1 Reply Last reply
          0
          • D Doom.86

            @bolli ich nutze diesesn Flow: @spexx said in [HowTo] Huawei SUN2000 WR Modbus mit node-red (read + write):

            @Christof-Lewandowski
            Ich frage drei größere Adressbereiche ab, das wird dann über einen Buffer-Parser ausgewertet und alle Werte in einzelne Datenpunkte geschrieben. Ich denke im Prinzip das was du suchst, anbei der Flow.
            Zwischen den Abfragen habe ich aktuell eine Minute Verzögerung, das Abfrageintervall kann man sicher auch noch runtersetzen, läuft so aber bereits seit Wochen problemlos.

            2023-06-23_20h10_28.png
            2023-06-23_20h20_26.png
            flows.json

            Vorteil, dort werden alle Register auf einmal abgefragt und nicht jedes Nacheinander.

            Zu deiner Frage, bei mir ist bei dem 1. Wechselrichter die Unit-ID: 1 und bei dem 2. Wechselrichter die Unit-ID: 2 bei Batterie und Powersensor auch die Unit-ID: 1, da diese über den 1. Wechselrichter verwaltet werden und mein Speicher an dem 1. Wechselrichter angeschlossen ist.

            262d9f09-2621-4f0c-b7a6-0d58c5ffa0ee-image.png

            B Offline
            B Offline
            Bolli
            wrote on last edited by Bolli
            #428

            @doom-86
            ich komm irgendwie nicht weiter:
            WR1 - hat Batterie - ID2
            WR2 - hat Smarmeter und Dongle - ID1
            WR3 - nur in Kaskade - ID3

            wenn ich den WR1 abfragen will muss überall die iD2 stehen? richtig ? Port 502. Da kommen aber leider bei allen drei ID die selben Werte. Ich versuche mal meine Daten anzuhängen, vielleicht sieht jemand einen Fehler ?
            flows.json

            B 1 Reply Last reply
            0
            • B Bolli

              @doom-86
              ich komm irgendwie nicht weiter:
              WR1 - hat Batterie - ID2
              WR2 - hat Smarmeter und Dongle - ID1
              WR3 - nur in Kaskade - ID3

              wenn ich den WR1 abfragen will muss überall die iD2 stehen? richtig ? Port 502. Da kommen aber leider bei allen drei ID die selben Werte. Ich versuche mal meine Daten anzuhängen, vielleicht sieht jemand einen Fehler ?
              flows.json

              B Offline
              B Offline
              Bolli
              wrote on last edited by
              #429

              @bolli sagte in [HowTo] Huawei SUN2000 WR Modbus mit node-red (read + write):

              @doom-86
              ich komm irgendwie nicht weiter:
              WR1 - hat Batterie - ID2
              WR2 - hat Smarmeter und Dongle - ID1
              WR3 - nur in Kaskade - ID3

              wenn ich den WR1 abfragen will muss überall die iD2 stehen? richtig ? Port 502. Da kommen aber leider bei allen drei ID die selben Werte. Ich versuche mal meine Daten anzuhängen, vielleicht sieht jemand einen Fehler ?
              flows.json

              Mir ist folgendes Aufgefallen: die ID´s kann ich einzeln abrufen das klappt, wenn ich aber alle drei nach einander abrufen möchte , ändert sich der "modbus Client" selbstständig und alle 3 WR abfragen sind wieder gleich. Kann man das irgendwie unterbinden oder verhindern ?

              1 Reply Last reply
              0
              • D Doom.86

                @badsnoopy667 an forced Charge bin ich gerade dran. Ich hab es über das Tour Register geschafft, die Werte alle einzeln für die Perioden auszulesen, aber leider nicht geschafft zu schreiben. Seit heute habe ich ein Skript im Versuch laufen, ob das laden theoretisch funktionieren würde. Gibt es hier im forum: https://forum.iobroker.net/topic/69604/hausspeicher-laden-dynamisch-tibberlink-scripte

                Wenn das funktioniert, mache ich mich weiter an das laden. Somit habe ich dann schon mal einen datenpunkt.

                Mit dem force charging muss man so wie ich es gesehen habe, mindestens 3 Register schreiben. Das erste zum laden, das zweite der gewünschte SoC und als dritter, die ladeleistung.

                Christof LewandowskiC Offline
                Christof LewandowskiC Offline
                Christof Lewandowski
                wrote on last edited by
                #430

                @doom-86 ich scheiterte schon daran überhaupt was zu schreiben :)
                Selbst das kleine Script um die Entladeleistung zu setzen funktioniert nicht, es wird einfach kein Wert gesetzt, obwohl ich es mehrfach versucht habe.
                Ich hoffe trotzdem, dass wir hier Fortschritte machen können, wäre irgendwie schon spannend.

                D 2 Replies Last reply
                0
                • E Offline
                  E Offline
                  elsmarto
                  wrote on last edited by
                  #431

                  Hi zusammen,

                  ich nutze den Flow von @Spexx und es funktioniert einwandfrei - vielen Dank dafür.

                  Gerne würde ich jedoch auch noch die Wirkleistung der einzelnen Phasen auslesen bzw. berechnen. Kann mir jemand kurz sagen, wie ich es berechnen muss? Normal ist ja die Formel: P = U * I * cos(phi). Phi ist nicht vorhanden, jedoch die Blind- und Wirkleistung. cos(phi) = Wirkleistung / Blindleistung. Muss ich über diesen Umweg gehen oder gibt es einen einfacheren Weg zum Ziel zu kommen?

                  Danke euch

                  1 Reply Last reply
                  0
                  • A Offline
                    A Offline
                    andreas.lattmann
                    wrote on last edited by andreas.lattmann
                    #432

                    Hallo zusammen
                    Ich habe die Integration wie hier beschrieben geschafft und es läuft. Was mich irritiert. Der Master WR liefert seine Daten alle ca. 15Sekunden. Der Slave WR 2 (ID 2) aber nur ca. alle 25 Minuten. Kennt jemand dieses Problem und hat eine Lösung? Ich spreche von der Adresse 32080.
                    Vielen Dank für Eure Rückmeldung

                    B 1 Reply Last reply
                    0
                    • A andreas.lattmann

                      Hallo zusammen
                      Ich habe die Integration wie hier beschrieben geschafft und es läuft. Was mich irritiert. Der Master WR liefert seine Daten alle ca. 15Sekunden. Der Slave WR 2 (ID 2) aber nur ca. alle 25 Minuten. Kennt jemand dieses Problem und hat eine Lösung? Ich spreche von der Adresse 32080.
                      Vielen Dank für Eure Rückmeldung

                      B Online
                      B Online
                      badsnoopy667
                      wrote on last edited by
                      #433

                      @andreas-lattmann
                      Hast Du mal versucht das Abfrageintervall auf >20 Sekunden zu stellen? Hatte gerade in einem anderen Forum gelesen, dass der Dongle bei mehreren WR sonst nicht hinterher kommt.

                      A 1 Reply Last reply
                      0
                      • B badsnoopy667

                        @andreas-lattmann
                        Hast Du mal versucht das Abfrageintervall auf >20 Sekunden zu stellen? Hatte gerade in einem anderen Forum gelesen, dass der Dongle bei mehreren WR sonst nicht hinterher kommt.

                        A Offline
                        A Offline
                        andreas.lattmann
                        wrote on last edited by
                        #434

                        @badsnoopy667 Danke, hilft leider nicht. Auch bei Intervall 1' kommen die Daten vom 2. WR sehr selten undd ie vom WR 1 häufig

                        B 1 Reply Last reply
                        0
                        • A andreas.lattmann

                          @badsnoopy667 Danke, hilft leider nicht. Auch bei Intervall 1' kommen die Daten vom 2. WR sehr selten undd ie vom WR 1 häufig

                          B Online
                          B Online
                          badsnoopy667
                          wrote on last edited by
                          #435

                          @andreas-lattmann
                          Interessant. Andere Idee: Frag mal nur 1-2 Register pro WR ab und nicht Alles. Also z.B. nur "Input Power" und den Rest gar nicht. Kommen die Werte dann vielleicht schneller?

                          A 1 Reply Last reply
                          0
                          • B badsnoopy667

                            @andreas-lattmann
                            Interessant. Andere Idee: Frag mal nur 1-2 Register pro WR ab und nicht Alles. Also z.B. nur "Input Power" und den Rest gar nicht. Kommen die Werte dann vielleicht schneller?

                            A Offline
                            A Offline
                            andreas.lattmann
                            wrote on last edited by
                            #436

                            @badsnoopy667 Super Tipp, dann kommen die Werte häufiger. Muss mich da wohl sehr beschränken bei den Abfragen

                            B 2 Replies Last reply
                            0
                            • A andreas.lattmann

                              @badsnoopy667 Super Tipp, dann kommen die Werte häufiger. Muss mich da wohl sehr beschränken bei den Abfragen

                              B Online
                              B Online
                              badsnoopy667
                              wrote on last edited by
                              #437

                              @andreas-lattmann
                              Naja, ich glaube 90% der Werte sind doch eigentlich nur Datenmüll. Was interessiert mich das WR Model z.b. Das weiß ich auch ohne es abzufragen. Und irgendwelche PV String Spannungen sind zwar nett für Spielereien, aber auch nicht wirklich nötig.
                              Ich frage bei mir die wichtigsten Werte, also Input Power, Battery Power, Meter Power etc. alle 5 Sekunden ab und den ganzen andern "Quatsch" nur 1x pro Minute.

                              1 Reply Last reply
                              0
                              • A andreas.lattmann

                                @badsnoopy667 Super Tipp, dann kommen die Werte häufiger. Muss mich da wohl sehr beschränken bei den Abfragen

                                B Online
                                B Online
                                badsnoopy667
                                wrote on last edited by
                                #438

                                @andreas-lattmann
                                Aber mal was ganz anderes, da der Kollege @Bolli hier das Problem hat:
                                Wie fragt man denn überhaupt mehr als einen WR korrekt ab?
                                Was hast Du an ID eingestellt und welche IP Adresse hast du genommen? Gibts sonst noch was zu beachten?

                                A 1 Reply Last reply
                                0
                                • B badsnoopy667

                                  @andreas-lattmann
                                  Aber mal was ganz anderes, da der Kollege @Bolli hier das Problem hat:
                                  Wie fragt man denn überhaupt mehr als einen WR korrekt ab?
                                  Was hast Du an ID eingestellt und welche IP Adresse hast du genommen? Gibts sonst noch was zu beachten?

                                  A Offline
                                  A Offline
                                  andreas.lattmann
                                  wrote on last edited by
                                  #439

                                  @badsnoopy667 Ich habe die IP Adresse des Dongles genommen und dann nist bei mir ID 1 der erste Wechselrichter und ID 2 der Slave

                                  B B 2 Replies Last reply
                                  0
                                  • A andreas.lattmann

                                    @badsnoopy667 Ich habe die IP Adresse des Dongles genommen und dann nist bei mir ID 1 der erste Wechselrichter und ID 2 der Slave

                                    B Online
                                    B Online
                                    badsnoopy667
                                    wrote on last edited by
                                    #440

                                    @andreas-lattmann
                                    Das heißt, man muss im Flow alle Register 2x abfragen? Einmal mit ID1 und einmal mit ID2? Oder muss man zwei separate Flows machen?

                                    1 Reply Last reply
                                    0
                                    • A andreas.lattmann

                                      @badsnoopy667 Ich habe die IP Adresse des Dongles genommen und dann nist bei mir ID 1 der erste Wechselrichter und ID 2 der Slave

                                      B Offline
                                      B Offline
                                      Bolli
                                      wrote on last edited by Bolli
                                      #441

                                      @andreas-lattmann
                                      Das heisst man müsste für ID1 ; ID2 und ID3 einen eigenen Modbus Getter anlegen ?

                                      Soweit so gut, nur wie komme ich zusätzlich noch an Akkuwerte ?IMG_1484.jpeg IMG_1482.jpeg

                                      D 1 Reply Last reply
                                      0
                                      • Christof LewandowskiC Christof Lewandowski

                                        @doom-86 ich scheiterte schon daran überhaupt was zu schreiben :)
                                        Selbst das kleine Script um die Entladeleistung zu setzen funktioniert nicht, es wird einfach kein Wert gesetzt, obwohl ich es mehrfach versucht habe.
                                        Ich hoffe trotzdem, dass wir hier Fortschritte machen können, wäre irgendwie schon spannend.

                                        D Offline
                                        D Offline
                                        Doom.86
                                        wrote on last edited by
                                        #442

                                        @christof-lewandowski schreib mich bitte mal per pn an.

                                        1 Reply Last reply
                                        0
                                        • B Bolli

                                          @andreas-lattmann
                                          Das heisst man müsste für ID1 ; ID2 und ID3 einen eigenen Modbus Getter anlegen ?

                                          Soweit so gut, nur wie komme ich zusätzlich noch an Akkuwerte ?IMG_1484.jpeg IMG_1482.jpeg

                                          D Offline
                                          D Offline
                                          Doom.86
                                          wrote on last edited by
                                          #443

                                          @bolli genau. Für jeden ein eigenes.

                                          Für die Batterie, die id von dem Wechselrichter, wo sie angeschlossen ist. Zum Beispiel id 2 wenn sie am 2. Wechselrichter angeschlossen ist

                                          1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          615

                                          Online

                                          32.5k

                                          Users

                                          81.7k

                                          Topics

                                          1.3m

                                          Posts
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Home
                                          • Recent
                                          • Tags
                                          • Unread 0
                                          • Categories
                                          • Unreplied
                                          • Popular
                                          • GitHub
                                          • Docu
                                          • Hilfe