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. ioBroker Allgemein
  4. Huawei Sun2000 & ioBroker via JS script funktioniert

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

Huawei Sun2000 & ioBroker via JS script funktioniert

Geplant Angeheftet Gesperrt Verschoben ioBroker Allgemein
481 Beiträge 62 Kommentatoren 122.3k Aufrufe 63 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.
  • B Offline
    B Offline
    bolliy
    Developer
    schrieb am zuletzt editiert von bolliy
    #445

    Ich möchte noch auf die Möglichkeit aufmerksam machen Werte über modbus-tcp zu schreiben. Eine entsprechende funktion mit einem Beispiel werde ich aufzeigen. Also zuerst die async-Funktion, die ohne Callback auskommt und über await wartet bis der Wert vorliegt.

    //asynchrones Schreiben 
    async function writeRegistersAsync(id,address,buffer) {
        try {
          await client.setID(ModBusIDs[id-1]);
          await client.writeRegisters(address,buffer);
        }  catch (err) {
            console.error("Error received writing adress "+ address + " from id: " +  ModBusIDs[id-1] + " with error: " + modbusErrorMessages[err.modbusCode], err);
            throw err; //Fehler weiterreichen
        }  
    }
    

    Als Beispiel habe ich meine CheckAndPrepare Funktion herangezogen. Die Funktion soll den Wechselrichter bzw. Speicher so vorbereiten, dass dieser über einen einfachen Registerbefehl zum Aufladen des Speichers aus dem öffentlichen Stromnetz gebracht werden kann. Dieses ist bei der Nutzung dynamicher Strompreise (z.B. Tibber) ganz hilfreich. Idee: Wenn Strompreis kleiner als der mittelere Strompreis - 20% ist, soll der Hausspeicher mit günstigem Netzstrom aufgeladen werden. In dem Array wird die "Time of Using charging and discharging periodes (siehe Table 5-6) " gehalten. Diese Beispiel soll nur die Nutzungsmöglich der Funktion "writeRegistersAsync" verdeutlichen.

    async function checkAndPrepare() {
         // Time of Using charging and discharging periodes (siehe Table 5-6) 
         // tCDP[3]= 127  => Speicheraufladung aus dem öffentlichen Netz
         var tCDP = [1,0,1440,383,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]; //nicht aus dem Netz laden
         let data = await readRegisterSpaceAsync(1,47086,4);
         /* 
          127 - Working mode settings  
           2 : Maximise self consumptions (default)
           5 : Time Of Use(Luna) - hilfreich bei dynamischem Stromtarif (z.B Tibber)
         */  
         let workingMode = data[0];         // Working mode settings  2:Maximise self consumptio5=)
         let chargeFromGrid = data[1];      // Voraussetzung für Netzbezug in den Speicher (Luna)  
         let gridChargeCutOff = data[2]/10; // Ab welcher Schwelle wird der Netzbezug beendet (default 50 %)
         let storageModel = data[3];        // Modell/Hersteller des Speichers, 2 : HUAWEI-LUNA2000
         try {
            if (storageModel == 2) { //wurde nur mit Luna getestet!
              if (workingMode != 5 || chargeFromGrid != 1 ) {
                console.debug('Row '+data+'  Workingmode '+workingMode+ ' Charge from Grid '+chargeFromGrid+ ' Grid Cut Off '+gridChargeCutOff+'%'); 
                await writeRegistersAsync(1,47086,[5,1,500]); //[TOU,chargeFromGrid,50%]
                await writeRegistersAsync(1,47255,tCDP);      //Plan:1,StartZeit:00:00,EndZeit: 24:00,Endladen/täglich
                /* ggf. sinnvoll 
                await writeRegistersAsync(1,47075,[0,5000]); //max. charging power 
                await writeRegistersAsync(1,47077,[0,5000]); //max. discharging power 
                */
              }
            }
         } catch(err) {
           throw err; 
         }
    }
    

    Die "checkAndPrepare wird einfach in den "InitProcess" eingehängt.

    async function InitProcess() {
        try {        
            await modbusConnect();
            await checkAndPrepare();
            intervalId = setInterval(ReadInderval,30000);
        } catch (err) {
            throw err;
        } 
    }
    

    Und so würde die Speicheraufladung aus dem Netz gestartet werden. Bei 50% Speicherfüllgrad unterbricht die Speicheraufladung aus dem Netz.

    var tCDP = [1,0,1440,383,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]; 
    tCDP[3] = 127; // Laden
    await writeRegistersAsync(1,47255,tCDP);
      
    

    LG Stephan

    1 Antwort Letzte Antwort
    1
    • P Offline
      P Offline
      PsYkoKeV
      schrieb am zuletzt editiert von
      #446

      Hallo und danke an alle, die hier bisher mitgewirkt haben. :blush:

      Ich habe mit dem Adapter von daolis (ioBroker.sun2000-modbus) angefangen Daten von meinem Wechselrichter zu sammeln und sinnvoll zu verarbeiten.
      Bin jetzt über das Script hier gestolpert und habe es direkt mals ausprobiert.

      Vielleicht für alle, die auch mal stolpern, hier meine bisherigen Unterschiede:

      • Script hat von Haus auch mehr Infos, es werden mehr Daten abgerufen und gleich umgewandelt -> z.B. Tagesverbräuche
      • Der Adapter ist etwas fixer was das aktualisieren von Daten angeht. Dort wird (bei mir) alle ca 7Sek z.b. der aktuelle Verbrauch aktualisiert, das passiert bei Script ca alle 25 Sek.
        -> Das ändert sich vielleicht mit der Idee von bolliy?

      @Chris_B Kleinen "Schönheitsfehler" den ich gefunden habe: PanelPower ist als W definiert, wird in der berechnung auf kW umgerechnet.

      createState(JavaInst + "Solarpower.Derived.PanelPower",         0,  {read: true, write: true, name: "Panel Power (UxI)", unit: "W"});
      
          // determine raw panel power (multiplying current times voltage)
          {
              var power = (getState(JavaInst + "Solarpower.Huawei.Inverter.1.String.1_Voltage").val *
                           getState(JavaInst + "Solarpower.Huawei.Inverter.1.String.1_Current").val) / 1000;
              setState(JavaInst + "Solarpower.Derived.PanelPower", power);
      

      Und ich denke mal gewollt, dass String 2 deaktiviert ist und nicht in der Berechnung der PanelPower einfließt?!
      Ist ja kein Drama das zu aktivieren. Und zur Info habe bei mir String 2 dann natürlich auch zur Berechnung hinzugefügt:

          // determine raw panel power (multiplying current times voltage)
          {
              var power = (getState(JavaInst + "Solarpower.Huawei.Inverter.1.String.1_Voltage").val *
                           getState(JavaInst + "Solarpower.Huawei.Inverter.1.String.1_Current").val) +
                           (getState(JavaInst + "Solarpower.Huawei.Inverter.1.String.2_Voltage").val *
                           getState(JavaInst + "Solarpower.Huawei.Inverter.1.String.2_Current").val);
              setState(JavaInst + "Solarpower.Derived.PanelPower", power);
      
              // determine peak panel power
              var PanelMax = getState(JavaInst + "Solarpower.Derived.PeakPanelPower").val;
              if (power > PanelMax) setState(JavaInst + "Solarpower.Derived.PeakPanelPower", power);
          }
      

      Bin jetzt noch kein Profi, kann man diese Berechnung dynamisch gestalten? Wenn das Sinn macht natürlich nur...

      Grüße
      Kevin

      M C 2 Antworten Letzte Antwort
      0
      • P PsYkoKeV

        Hallo und danke an alle, die hier bisher mitgewirkt haben. :blush:

        Ich habe mit dem Adapter von daolis (ioBroker.sun2000-modbus) angefangen Daten von meinem Wechselrichter zu sammeln und sinnvoll zu verarbeiten.
        Bin jetzt über das Script hier gestolpert und habe es direkt mals ausprobiert.

        Vielleicht für alle, die auch mal stolpern, hier meine bisherigen Unterschiede:

        • Script hat von Haus auch mehr Infos, es werden mehr Daten abgerufen und gleich umgewandelt -> z.B. Tagesverbräuche
        • Der Adapter ist etwas fixer was das aktualisieren von Daten angeht. Dort wird (bei mir) alle ca 7Sek z.b. der aktuelle Verbrauch aktualisiert, das passiert bei Script ca alle 25 Sek.
          -> Das ändert sich vielleicht mit der Idee von bolliy?

        @Chris_B Kleinen "Schönheitsfehler" den ich gefunden habe: PanelPower ist als W definiert, wird in der berechnung auf kW umgerechnet.

        createState(JavaInst + "Solarpower.Derived.PanelPower",         0,  {read: true, write: true, name: "Panel Power (UxI)", unit: "W"});
        
            // determine raw panel power (multiplying current times voltage)
            {
                var power = (getState(JavaInst + "Solarpower.Huawei.Inverter.1.String.1_Voltage").val *
                             getState(JavaInst + "Solarpower.Huawei.Inverter.1.String.1_Current").val) / 1000;
                setState(JavaInst + "Solarpower.Derived.PanelPower", power);
        

        Und ich denke mal gewollt, dass String 2 deaktiviert ist und nicht in der Berechnung der PanelPower einfließt?!
        Ist ja kein Drama das zu aktivieren. Und zur Info habe bei mir String 2 dann natürlich auch zur Berechnung hinzugefügt:

            // determine raw panel power (multiplying current times voltage)
            {
                var power = (getState(JavaInst + "Solarpower.Huawei.Inverter.1.String.1_Voltage").val *
                             getState(JavaInst + "Solarpower.Huawei.Inverter.1.String.1_Current").val) +
                             (getState(JavaInst + "Solarpower.Huawei.Inverter.1.String.2_Voltage").val *
                             getState(JavaInst + "Solarpower.Huawei.Inverter.1.String.2_Current").val);
                setState(JavaInst + "Solarpower.Derived.PanelPower", power);
        
                // determine peak panel power
                var PanelMax = getState(JavaInst + "Solarpower.Derived.PeakPanelPower").val;
                if (power > PanelMax) setState(JavaInst + "Solarpower.Derived.PeakPanelPower", power);
            }
        

        Bin jetzt noch kein Profi, kann man diese Berechnung dynamisch gestalten? Wenn das Sinn macht natürlich nur...

        Grüße
        Kevin

        M Offline
        M Offline
        meloneA
        schrieb am zuletzt editiert von
        #447

        @psykokev ich vermute mal Chris hat nur einen String :)

        ich hoffe das der Adapter nach und nach diverse Infos noch mit einbaut und ggf noch weitere Berechnungen mitbringt (z.B. Autarkie) und langfristig auch andere Bestandteile wie Optimierer einbindet.

        1 Antwort Letzte Antwort
        0
        • P PsYkoKeV

          Hallo und danke an alle, die hier bisher mitgewirkt haben. :blush:

          Ich habe mit dem Adapter von daolis (ioBroker.sun2000-modbus) angefangen Daten von meinem Wechselrichter zu sammeln und sinnvoll zu verarbeiten.
          Bin jetzt über das Script hier gestolpert und habe es direkt mals ausprobiert.

          Vielleicht für alle, die auch mal stolpern, hier meine bisherigen Unterschiede:

          • Script hat von Haus auch mehr Infos, es werden mehr Daten abgerufen und gleich umgewandelt -> z.B. Tagesverbräuche
          • Der Adapter ist etwas fixer was das aktualisieren von Daten angeht. Dort wird (bei mir) alle ca 7Sek z.b. der aktuelle Verbrauch aktualisiert, das passiert bei Script ca alle 25 Sek.
            -> Das ändert sich vielleicht mit der Idee von bolliy?

          @Chris_B Kleinen "Schönheitsfehler" den ich gefunden habe: PanelPower ist als W definiert, wird in der berechnung auf kW umgerechnet.

          createState(JavaInst + "Solarpower.Derived.PanelPower",         0,  {read: true, write: true, name: "Panel Power (UxI)", unit: "W"});
          
              // determine raw panel power (multiplying current times voltage)
              {
                  var power = (getState(JavaInst + "Solarpower.Huawei.Inverter.1.String.1_Voltage").val *
                               getState(JavaInst + "Solarpower.Huawei.Inverter.1.String.1_Current").val) / 1000;
                  setState(JavaInst + "Solarpower.Derived.PanelPower", power);
          

          Und ich denke mal gewollt, dass String 2 deaktiviert ist und nicht in der Berechnung der PanelPower einfließt?!
          Ist ja kein Drama das zu aktivieren. Und zur Info habe bei mir String 2 dann natürlich auch zur Berechnung hinzugefügt:

              // determine raw panel power (multiplying current times voltage)
              {
                  var power = (getState(JavaInst + "Solarpower.Huawei.Inverter.1.String.1_Voltage").val *
                               getState(JavaInst + "Solarpower.Huawei.Inverter.1.String.1_Current").val) +
                               (getState(JavaInst + "Solarpower.Huawei.Inverter.1.String.2_Voltage").val *
                               getState(JavaInst + "Solarpower.Huawei.Inverter.1.String.2_Current").val);
                  setState(JavaInst + "Solarpower.Derived.PanelPower", power);
          
                  // determine peak panel power
                  var PanelMax = getState(JavaInst + "Solarpower.Derived.PeakPanelPower").val;
                  if (power > PanelMax) setState(JavaInst + "Solarpower.Derived.PeakPanelPower", power);
              }
          

          Bin jetzt noch kein Profi, kann man diese Berechnung dynamisch gestalten? Wenn das Sinn macht natürlich nur...

          Grüße
          Kevin

          C Offline
          C Offline
          Chris_B
          schrieb am zuletzt editiert von
          #448

          @psykokev Danke für den Hinweis, und ja, meine Anlage hat nur einen String. Die Berechnung kann man natürlich auch, wie Du es nennst 'dynamisch', so machen, dass ein oder zwei Strings für die Berechnung verwendet werden. Die Frage ist dann aber: Will ich diese separat oder zusammen ausgeben? Beides kann sinnvoll sein.
          Mir ist bewusst, dass das Skript auf meine Verhältnisse zugeschnitten ist. Ich mache in diesem Skript auch mehrheitlich nur das, was für mich sinnvoll ist. Sorry, das ist vielleicht egoistisch, ich habe habe (leider?) genug Anderes zu tun.
          @bolliy Aus genau dem Grund implementiere ich momentan das 'Schreiben' von Werten nicht. Ich brauche und möchte das momentan (noch?) nicht. Sorry. Die Async Methode interessiert mich allerdings...
          Ihr könnt gerne von Github einen Fork auf das Projekt machen und diese Dinge realisieren, oder das Skript für Euch selbst abändern...
          Gruss

          P 1 Antwort Letzte Antwort
          0
          • B Offline
            B Offline
            backons
            schrieb am zuletzt editiert von backons
            #449

            Hallo Zusammen,

            habe seit knapp einer Woche auch ein Huawei System. Hab mir vor ein paar Tagen das Script geholt und angepasst an meine Konstellation.
            2x WR in Kaskade und eine 10KW Luna am WR1.
            Soweit funktioniert alles ohne Fehlermeldungen bis auf den Ordner Derived.
            Dort wurden die Einträge zwar angelegt aber dort ist überall nur eine 0 zu sehen. Diese Werte werden auch nicht über Nacht aktualisiert. Wo könnte hier der Fehler bei mir sein ?
            P.S. Die Werte der WR werden brav aktualisiert und sind auch vorhanden. Habe die neuste Version des Script aus Github in Verwendung

            1 Antwort Letzte Antwort
            0
            • J Offline
              J Offline
              Julez318
              schrieb am zuletzt editiert von
              #450

              Hallo Zusammen,

              ich habe 2 WR (SUN2000-10KTL-M1 als Master ID=16 & SUN2000-8KTL-M1 als slave ID=1) an einem Dongle.
              Leider bekomme ich nur die Daten des Master WR.
              Kann hier bitte jemand helfen?

              B 1 Antwort Letzte Antwort
              0
              • J Julez318

                Hallo Zusammen,

                ich habe 2 WR (SUN2000-10KTL-M1 als Master ID=16 & SUN2000-8KTL-M1 als slave ID=1) an einem Dongle.
                Leider bekomme ich nur die Daten des Master WR.
                Kann hier bitte jemand helfen?

                B Offline
                B Offline
                bolliy
                Developer
                schrieb am zuletzt editiert von
                #451

                @julez318 Entweder ID 0 Oder ID16(Master) ID1 (Slave) usw bei meheren WR. Im Debug Fenster siehst du ob was zurück kommt. Ist auf beiden WR modbus tcp aktiviert?

                J 1 Antwort Letzte Antwort
                0
                • B bolliy

                  @julez318 Entweder ID 0 Oder ID16(Master) ID1 (Slave) usw bei meheren WR. Im Debug Fenster siehst du ob was zurück kommt. Ist auf beiden WR modbus tcp aktiviert?

                  J Offline
                  J Offline
                  Julez318
                  schrieb am zuletzt editiert von
                  #452

                  @bolliy danke! Modbus tcp war/ist auf beiden WR aktiviert und der Master hat die ID16 und Slave die ID1.
                  Hab dann noch etwas rumprobiert und auf einmal ging es dann mit den ursprünglichen Einstellungen.
                  Die Werte beider WR werden nun angezeigt :)

                  B 1 Antwort Letzte Antwort
                  0
                  • J Julez318

                    @bolliy danke! Modbus tcp war/ist auf beiden WR aktiviert und der Master hat die ID16 und Slave die ID1.
                    Hab dann noch etwas rumprobiert und auf einmal ging es dann mit den ursprünglichen Einstellungen.
                    Die Werte beider WR werden nun angezeigt :)

                    B Offline
                    B Offline
                    bolliy
                    Developer
                    schrieb am zuletzt editiert von
                    #453

                    @julez318 Das freut mich :)

                    1 Antwort Letzte Antwort
                    0
                    • C Chris_B

                      @psykokev Danke für den Hinweis, und ja, meine Anlage hat nur einen String. Die Berechnung kann man natürlich auch, wie Du es nennst 'dynamisch', so machen, dass ein oder zwei Strings für die Berechnung verwendet werden. Die Frage ist dann aber: Will ich diese separat oder zusammen ausgeben? Beides kann sinnvoll sein.
                      Mir ist bewusst, dass das Skript auf meine Verhältnisse zugeschnitten ist. Ich mache in diesem Skript auch mehrheitlich nur das, was für mich sinnvoll ist. Sorry, das ist vielleicht egoistisch, ich habe habe (leider?) genug Anderes zu tun.
                      @bolliy Aus genau dem Grund implementiere ich momentan das 'Schreiben' von Werten nicht. Ich brauche und möchte das momentan (noch?) nicht. Sorry. Die Async Methode interessiert mich allerdings...
                      Ihr könnt gerne von Github einen Fork auf das Projekt machen und diese Dinge realisieren, oder das Skript für Euch selbst abändern...
                      Gruss

                      P Offline
                      P Offline
                      PsYkoKeV
                      schrieb am zuletzt editiert von
                      #454

                      @chris_b Kein Problem :blush: , verstehe ich voll und ganz. Bin ja froh das es das Script gibt. Hat bei mir Zeit gespart :wink:

                      1 Antwort Letzte Antwort
                      0
                      • B Offline
                        B Offline
                        backons
                        schrieb am zuletzt editiert von backons
                        #455

                        @backons said in Huawei Sun2000 & ioBroker via JS script funktioniert:

                        Hallo Zusammen,

                        habe seit knapp einer Woche auch ein Huawei System. Hab mir vor ein paar Tagen das Script geholt und angepasst an meine Konstellation.
                        2x WR in Kaskade und eine 10KW Luna am WR1.
                        Soweit funktioniert alles ohne Fehlermeldungen bis auf den Ordner Derived.
                        Dort wurden die Einträge zwar angelegt aber dort ist überall nur eine 0 zu sehen. Diese Werte werden auch nicht über Nacht aktualisiert. Wo könnte hier der Fehler bei mir sein ?
                        P.S. Die Werte der WR werden brav aktualisiert und sind auch vorhanden. Habe die neuste Version des Script aus Github in Verwendung

                        Ich hatte jetztmal mehr Zeit das zu prüfen.
                        Problem warum die Werte in Derived nicht erzeugt wurde war der nicht vorhandene Ordner des Smart-Meter. Dort hatte ich ursprünglich die ID 11 eingetragen weil das die Kommunikationsadresse meines Smart-Meters ist.

                        Nach langem lesen habe ich kapiert das ja dort die Modbus-ID des WR rein muss indem der Samrat-Meter angeschlossen ist oder ?
                        Kann bitte mal jemand auf meine Konfiguration schauen ob das so alles Richtig ist ? Gerade beim Eintrag der Batterie ?
                        Ich habe zwei Wechselrichter in Kaskade mit den ID´s 16 und 1. Am WR mit der 16 ist der Dongle+Smartmeter+eine Luna Batterie angeschlossen.
                        Es ist also an WR1 eine Luna mit zwei Batteriepacks also 10KW dran.
                        Laut Anleitung im Script wäre meine eigentlich Lösung dafür const BatteryUnits = [[2, 0], [0, 0] ] ;
                        Damit kommt aber ein Compile-Fehler. Mit meine aktuellen Einstellung kommt er nicht mehr aber ist das so richtig alles ??
                        Es werden leider trotzdem nicht alle Werte geholt bzw. es kommt zu Fehlern im Log.

                        // Enter the Modbus-IDs of your Sun2000 inverters here (example for two inverters): const ModBusIDs = [16, 1];
                        const ModBusIDs = [16, 1];
                        // On which Modbus-ID can we reach the power meter? (via Sun2000!)
                        const PowerMeterID = 16;
                        // Enter your battery stack setup. 2 dimensional array, e.g. [[3, 2], [3, 0]] means:
                        // First inverter has two battery stacks with 3 + 2 battery modules
                        // while second inverter has only one battery stack with 3 battery modules
                        const BatteryUnits = [[2, 0]];
                        
                        1 Antwort Letzte Antwort
                        0
                        • M Offline
                          M Offline
                          MaGe
                          schrieb am zuletzt editiert von MaGe
                          #456

                          @bolliy, könntest du bitte dein Script mit der readRegisters Funktion zur Verfügung stellen? Ich würde den Ansatz gerne ausprobieren. Nur fehlt es mir leider am JS Know-how.

                          B 1 Antwort Letzte Antwort
                          0
                          • M MaGe

                            @bolliy, könntest du bitte dein Script mit der readRegisters Funktion zur Verfügung stellen? Ich würde den Ansatz gerne ausprobieren. Nur fehlt es mir leider am JS Know-how.

                            B Offline
                            B Offline
                            bolliy
                            Developer
                            schrieb am zuletzt editiert von
                            #457

                            @mage, mein script jabe ich gerade auf github (https://github.com/bolliy/sun2000-script-iobroker) gepusht. Es handelt sich nur um ein "proof of concept" für einen iobroker Adapter, den ich erstellen will. Ich werde also keine weiteren Änderungen am script vornehmen, da ich mich auf meine Adapter Entwicklung (https://github.com/bolliy/ioBroker.sun2000) konzentrieren möchte.

                            AtzeAckermannA 1 Antwort Letzte Antwort
                            0
                            • M Offline
                              M Offline
                              MaGe
                              schrieb am zuletzt editiert von
                              #458

                              @bolliy, vielen lieben fürs puschen auf github. :-)
                              Gutes gelingen beim Entwickeln des Adapters. :+1:

                              1 Antwort Letzte Antwort
                              0
                              • B bolliy

                                @mage, mein script jabe ich gerade auf github (https://github.com/bolliy/sun2000-script-iobroker) gepusht. Es handelt sich nur um ein "proof of concept" für einen iobroker Adapter, den ich erstellen will. Ich werde also keine weiteren Änderungen am script vornehmen, da ich mich auf meine Adapter Entwicklung (https://github.com/bolliy/ioBroker.sun2000) konzentrieren möchte.

                                AtzeAckermannA Offline
                                AtzeAckermannA Offline
                                AtzeAckermann
                                schrieb am zuletzt editiert von
                                #459

                                @bolliy hab den Adpater installiert. Auf ersten Blick tut alles 😀

                                B 1 Antwort Letzte Antwort
                                0
                                • AtzeAckermannA AtzeAckermann

                                  @bolliy hab den Adpater installiert. Auf ersten Blick tut alles 😀

                                  B Offline
                                  B Offline
                                  bolliy
                                  Developer
                                  schrieb am zuletzt editiert von
                                  #460

                                  @atzeackermann das freut mich :blush: . Grundsätzlich funktioniert der ioBroker.sun2000 Adapter schon. Ich habe allerdings noch etliche Issues, die ich behandeln möchte.

                                  • mehr Register Daten darstellen
                                  • Abgeleitete Werte wie Hausverbrauch (consumptions), Erträge (yields) berechnen
                                  • Kumulierte Werte bei der Nutzung von mehren Wechselrichtern ermitteln
                                    usw…

                                  Vielleicht hat der eine oder andere Lust mich dabei zu unterstützen. Darüber hinaus suche ich jemanden der 2 Wechselrichter mit mehr als einer LUNA2000 Batterie. Diese Konstellation ist eher selten – sollte aber dennoch korrekt dargestellt werden.

                                  AtzeAckermannA 1 Antwort Letzte Antwort
                                  1
                                  • B bolliy

                                    @atzeackermann das freut mich :blush: . Grundsätzlich funktioniert der ioBroker.sun2000 Adapter schon. Ich habe allerdings noch etliche Issues, die ich behandeln möchte.

                                    • mehr Register Daten darstellen
                                    • Abgeleitete Werte wie Hausverbrauch (consumptions), Erträge (yields) berechnen
                                    • Kumulierte Werte bei der Nutzung von mehren Wechselrichtern ermitteln
                                      usw…

                                    Vielleicht hat der eine oder andere Lust mich dabei zu unterstützen. Darüber hinaus suche ich jemanden der 2 Wechselrichter mit mehr als einer LUNA2000 Batterie. Diese Konstellation ist eher selten – sollte aber dennoch korrekt dargestellt werden.

                                    AtzeAckermannA Offline
                                    AtzeAckermannA Offline
                                    AtzeAckermann
                                    schrieb am zuletzt editiert von
                                    #461

                                    @bolliy Ich bin noch über diesen Adapter gestolpert....
                                    https://github.com/daolis/ioBroker.sun2000-modbus
                                    Ich denke ihr solltet euch zusammen schließen 😉

                                    B 1 Antwort Letzte Antwort
                                    0
                                    • AtzeAckermannA AtzeAckermann

                                      @bolliy Ich bin noch über diesen Adapter gestolpert....
                                      https://github.com/daolis/ioBroker.sun2000-modbus
                                      Ich denke ihr solltet euch zusammen schließen 😉

                                      B Offline
                                      B Offline
                                      bolliy
                                      Developer
                                      schrieb am zuletzt editiert von
                                      #462

                                      @atzeackermann danke für deinen Hinweis. Ich habe den Entwickler bereits angesprochen. Mal sehen was daraus wird...

                                      1 Antwort Letzte Antwort
                                      0
                                      • B Offline
                                        B Offline
                                        bolliy
                                        Developer
                                        schrieb am zuletzt editiert von bolliy
                                        #463

                                        Ich habe eine neue Version 0.1.1 von dem ioBroker.sun2000 Test-Adapter veröffentlicht.
                                        https://github.com/bolliy/ioBroker.sun2000

                                        Würde mich über Tests und Feedback freuen. Eure Anmerkungen könnt ihr auch gerne hier https://forum.iobroker.net/topic/71768/test-adapter-sun2000-huawei-wechselrichter-per-modbus oder https://github.com/bolliy/ioBroker.sun2000/issues posten.

                                        LG Stephan

                                        B 1 Antwort Letzte Antwort
                                        1
                                        • B bolliy

                                          Ich habe eine neue Version 0.1.1 von dem ioBroker.sun2000 Test-Adapter veröffentlicht.
                                          https://github.com/bolliy/ioBroker.sun2000

                                          Würde mich über Tests und Feedback freuen. Eure Anmerkungen könnt ihr auch gerne hier https://forum.iobroker.net/topic/71768/test-adapter-sun2000-huawei-wechselrichter-per-modbus oder https://github.com/bolliy/ioBroker.sun2000/issues posten.

                                          LG Stephan

                                          B Offline
                                          B Offline
                                          bolliy
                                          Developer
                                          schrieb am zuletzt editiert von
                                          #464

                                          @bolliy Ich habe gerade den Adapter 0.1.2-alpha.1 hier https://github.com/bolliy/ioBroker.sun2000 veröffentlicht. Ich hoffe, dass dieser nun auch bei mehreren WR funktioniert. Der Adapter ist ebenfalls auch auf https://www.npmjs.com/package/iobroker.sun2000 deployed.

                                          Achtung: Die Konfiguration der "modbus IDs" hat sich geändert. (siehe readme)

                                          • modbusIds: inverter IDs, separated with "," (default: 1, max. 5 inverters)

                                          Über ein Feedback würde ich mich freuen ;)
                                          Wenn möglich bitte auf https://forum.iobroker.net/top…1-x-huawei-wechselrichter posten.

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


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate
                                          FAQ Cloud / IOT
                                          HowTo: Node.js-Update
                                          HowTo: Backup/Restore
                                          Downloads
                                          BLOG

                                          578

                                          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