Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • 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

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
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

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

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    2.0k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    16
    1
    2.7k

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

Geplant Angeheftet Gesperrt Verschoben Node-Red
574 Beiträge 110 Kommentatoren 224.1k Aufrufe 108 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • D Doom.86

    Hat es eigentlich schon jemand geschafft die start und Ende uhrzeit im time of use betriebsmodus über modbus einzustellen? Laut Dokumentation ist es das register 47255 mit type bytes und quantity 43.
    Ich beiße mir daran die Zähne aus und komme einfach nicht voran. Ich würde das gerne mit einem nodered flow machen.
    Hintergrund ist, durch den stromanbieter tibber möchte ich in den Wintermonaten gezielt den Speicher zu den günstigen Zeiten laden. Die günstigsten Zeiten habe ich schon in iobroker als datenpunkte und werden täglich berechnet. Auch schon umgerechnet in Minuten.

    Bei mir hackt es wirklich nur noch daran, wie ich diese mit über modbus schreiben kann.

    Christof LewandowskiC Offline
    Christof LewandowskiC Offline
    Christof Lewandowski
    schrieb am zuletzt editiert von
    #417

    @doom-86 said in [HowTo] Huawei SUN2000 WR Modbus mit node-red (read + write):

    Hat es eigentlich schon jemand geschafft die start und Ende uhrzeit im time of use betriebsmodus über modbus einzustellen? Laut Dokumentation ist es das register 47255 mit type bytes und quantity 43.
    Ich beiße mir daran die Zähne aus und komme einfach nicht voran. Ich würde das gerne mit einem nodered flow machen.
    Hintergrund ist, durch den stromanbieter tibber möchte ich in den Wintermonaten gezielt den Speicher zu den günstigen Zeiten laden. Die günstigsten Zeiten habe ich schon in iobroker als datenpunkte und werden täglich berechnet. Auch schon umgerechnet in Minuten.

    Bei mir hackt es wirklich nur noch daran, wie ich diese mit über modbus schreiben kann.

    Hast du es mittlerweile geschafft? Wäre auch daran interessiert den Speicher zu günstigen Zeiten zu laden.

    F B 2 Antworten Letzte Antwort
    0
    • Christof LewandowskiC Christof Lewandowski

      @doom-86 said in [HowTo] Huawei SUN2000 WR Modbus mit node-red (read + write):

      Hat es eigentlich schon jemand geschafft die start und Ende uhrzeit im time of use betriebsmodus über modbus einzustellen? Laut Dokumentation ist es das register 47255 mit type bytes und quantity 43.
      Ich beiße mir daran die Zähne aus und komme einfach nicht voran. Ich würde das gerne mit einem nodered flow machen.
      Hintergrund ist, durch den stromanbieter tibber möchte ich in den Wintermonaten gezielt den Speicher zu den günstigen Zeiten laden. Die günstigsten Zeiten habe ich schon in iobroker als datenpunkte und werden täglich berechnet. Auch schon umgerechnet in Minuten.

      Bei mir hackt es wirklich nur noch daran, wie ich diese mit über modbus schreiben kann.

      Hast du es mittlerweile geschafft? Wäre auch daran interessiert den Speicher zu günstigen Zeiten zu laden.

      F Offline
      F Offline
      firebowl
      schrieb am zuletzt editiert von
      #418

      @christof-lewandowski hab das auch geplant und wär interessiert an einer Lösung.

      1 Antwort Letzte Antwort
      0
      • Christof LewandowskiC Christof Lewandowski

        @doom-86 said in [HowTo] Huawei SUN2000 WR Modbus mit node-red (read + write):

        Hat es eigentlich schon jemand geschafft die start und Ende uhrzeit im time of use betriebsmodus über modbus einzustellen? Laut Dokumentation ist es das register 47255 mit type bytes und quantity 43.
        Ich beiße mir daran die Zähne aus und komme einfach nicht voran. Ich würde das gerne mit einem nodered flow machen.
        Hintergrund ist, durch den stromanbieter tibber möchte ich in den Wintermonaten gezielt den Speicher zu den günstigen Zeiten laden. Die günstigsten Zeiten habe ich schon in iobroker als datenpunkte und werden täglich berechnet. Auch schon umgerechnet in Minuten.

        Bei mir hackt es wirklich nur noch daran, wie ich diese mit über modbus schreiben kann.

        Hast du es mittlerweile geschafft? Wäre auch daran interessiert den Speicher zu günstigen Zeiten zu laden.

        B Offline
        B Offline
        badsnoopy667
        schrieb am zuletzt editiert von
        #419

        @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?

        F D 2 Antworten Letzte Antwort
        0
        • 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?

          F Offline
          F Offline
          firebowl
          schrieb am zuletzt editiert von
          #420

          @badsnoopy667 das im HA sieht gut aus. Mal schauen ob ich zum Test mal im ioBroker den Modbus Zugriff deaktiviere und über HA Teste.

          B 1 Antwort Letzte Antwort
          0
          • F firebowl

            @badsnoopy667 das im HA sieht gut aus. Mal schauen ob ich zum Test mal im ioBroker den Modbus Zugriff deaktiviere und über HA Teste.

            B Offline
            B Offline
            badsnoopy667
            schrieb am zuletzt editiert von
            #421

            @firebowl
            Falls Du das tust, bitte gibt hier mal Rückmeldung! Dann muss ich das nicht auch noch tun. Habe nämlich kein HA und müsste zum testen erst alles neu aufsetzen und mich reinarbeiten.

            F 2 Antworten Letzte Antwort
            0
            • B badsnoopy667

              @firebowl
              Falls Du das tust, bitte gibt hier mal Rückmeldung! Dann muss ich das nicht auch noch tun. Habe nämlich kein HA und müsste zum testen erst alles neu aufsetzen und mich reinarbeiten.

              F Offline
              F Offline
              firebowl
              schrieb am zuletzt editiert von
              #422

              @badsnoopy667 ich bin gerade am reinarbeiten. ;)
              Blöd das ich nicht gleichzeitig anfragen kann weil sonst zu viele Anfragen am Dongle ankommen.
              Wenn ich es erfolgreich getestet habe werde ich natürlich berichten aber weiß nicht ob das noch diese Woche was wird.

              1 Antwort Letzte Antwort
              1
              • B Offline
                B Offline
                Bolli
                schrieb am zuletzt editiert von
                #423

                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 1 Antwort Letzte Antwort
                0
                • 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
                  schrieb am zuletzt editiert von 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 Antwort Letzte Antwort
                  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
                    schrieb am zuletzt editiert von 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 Antwort Letzte Antwort
                    0
                    • ChristianSrC ChristianSr

                      @alexander85 danke. das wars.

                      B Offline
                      B Offline
                      Bolli
                      schrieb am zuletzt editiert von
                      #426

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

                      D 1 Antwort Letzte Antwort
                      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
                        schrieb am zuletzt editiert von
                        #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 Antwort Letzte Antwort
                        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
                          schrieb am zuletzt editiert von 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 Antwort Letzte Antwort
                          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
                            schrieb am zuletzt editiert von
                            #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 Antwort Letzte Antwort
                            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
                              schrieb am zuletzt editiert von
                              #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 Antworten Letzte Antwort
                              0
                              • E Offline
                                E Offline
                                elsmarto
                                schrieb am zuletzt editiert von
                                #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 Antwort Letzte Antwort
                                0
                                • A Offline
                                  A Offline
                                  andreas.lattmann
                                  schrieb am zuletzt editiert von 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 Antwort Letzte Antwort
                                  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 Offline
                                    B Offline
                                    badsnoopy667
                                    schrieb am zuletzt editiert von
                                    #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 Antwort Letzte Antwort
                                    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
                                      schrieb am zuletzt editiert von
                                      #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 Antwort Letzte Antwort
                                      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 Offline
                                        B Offline
                                        badsnoopy667
                                        schrieb am zuletzt editiert von
                                        #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 Antwort Letzte Antwort
                                        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
                                          schrieb am zuletzt editiert von
                                          #436

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

                                          B 2 Antworten Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          804

                                          Online

                                          32.4k

                                          Benutzer

                                          81.5k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Home
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe