Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Tester
    4. Test Adapter Growatt v3.3.1

    NEWS

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    • Minor js-controller 7.0.7 Update in latest repo

    Test Adapter Growatt v3.3.1

    This topic has been deleted. Only users with topic management privileges can see it.
    • chucky666
      chucky666 @PLCHome 0 last edited by

      @plchome-0 danke für das Update , du bist der beste

      1 Reply Last reply Reply Quote 0
      • W
        warp735 last edited by

        @plchome-0

        Vielen Dank, bei mir auch wieder grün 👍

        1 Reply Last reply Reply Quote 0
        • W
          Wildbill last edited by

          @PLCHome-0 Der Adapter scheint nun stabiler zu laufen. Bis auf den obligatorischen Fehler pünktlich um 03:57 Uhr gab es keine Logeinträge:

          	2022-09-01 03:57:15.166	error	Growatt exception: AxiosError: Request failed with status code 500
          

          Dafür hat mich die Growatt-Site eben beim testweisen Besuch mal wieder mit einer Fehlermeldung begrüßt, dieses Mal Code 500:

          945474f3-1c4e-4a3d-b99f-013bd74479a3-image.png

          Da die lokale Variante via grott so schön problemlos läuft und ich doppeltes Gemoppel eigentlich nicht brauche und auch die Web-Site bzw. App außer zu Testzwecken nie öffne (wobei Grott die Dten ja dennoch dahin spiegelt), werde ich den Versuch mit dem Adapter dennoch erst einmal wieder beenden. Ich bleibe aber dennoch hier mit am Ball und bin gespannt, was noch kommt. Wenn Du mal einen gezielten Test oder so benötigst, dann kann ich da auch gerne mitmachen, der Adapter bleibt erst einmal installiert und nur beendet.

          Gruss, Jürgen

          W 1 Reply Last reply Reply Quote 0
          • W
            warp735 @Wildbill last edited by warp735

            @wildbill
            Hab mir den Docker auch mal installiert. Vielen Dank für die Info. Ist eigentlich super, dass man so lokal und gleichzeitig die Cloud noch hat.

            41fc7541-ce5b-432e-9495-d820fea6dbfe-grafik.png

            1 Reply Last reply Reply Quote 0
            • W
              warp735 @Wildbill last edited by

              @wildbill sagte in Test Adapter Growatt v1.0.0:

              Anscheinend sendet der Stick auch nur, wenn er Kontakt zum Server aufbauen kann

              Das würde ja bedeuten, wenn der Growatt Server down ist, steht man wieder ohne Daten da?

              W 1 Reply Last reply Reply Quote 0
              • W
                Wildbill @warp735 last edited by

                @warp735 Ja, deshalb gibt es (momentan nur beim Docker) ja auch die Variante grottserver.py. Damit "simuliert" grott wohl den Growatt-Server und der Stick sendet klaglos lokal seine Daten obwohl man ihm sogar das Internet abdrehen kann.
                Wobei ich aber sagen muss, dass es seit April 2021, seit mein Growatt läuft, das Problem noch nie hatte, dass der Stick seine Daten nicht los wurde. Wenn, gab es immer nur Probleme mit der Website oder eben dem Adapter beim Zugriff auf den Server.
                Der Stick soll wohl auch die Daten von bis zu 30 Tagen intern speichern können und dann eben später mit passenden Timestamps abliefern, wenn er zwischendurch mal den Server nicht erreicht. OK, bringt lokal nicht viel, da ja dann erst wieder ein MQTT-Paket kommt, wenn der Server wieder da wäre und die Daten dazwischen lokal nicht verwurstet werden.
                Aber wie gesagt, grottserver.py soll das umgehen, oben hatte ich es ja bereits mal verlinkt.

                Gruss, Jürgen

                W 1 Reply Last reply Reply Quote 0
                • H
                  heinzie last edited by

                  Hallo,

                  bin auf der Suche nach dem Parameter für den Wirkungsgrad.
                  Gibt es den im dem Adapter nicht oder übersehe ich den?

                  1 Reply Last reply Reply Quote 0
                  • W
                    warp735 @Wildbill last edited by

                    @wildbill
                    Geht bei dir der Datenpunkt Powerout mal auf Null? Bei mir bleibt der die ganze Nacht mit dem zuletzt gemessenen Wert stehen 😞
                    Beim Growatt Adapter ging der Punkt pac abends auf Null.
                    Jetzt hat man im Chart die ganze Nacht eine Erzeugung von ~5W Irgendwie nicht so schön.

                    W 1 Reply Last reply Reply Quote 0
                    • W
                      Wildbill @warp735 last edited by Wildbill

                      @warp735 Nein, die Werte können sich aber logischerweise auch nicht mehr ändern: Der Shinestick sendet (bei mir minütlich) seine Daten, solange er Strom bekommt. Wenn der Wechselrichter abends irgendwann abschaltet, dann ist der Shinestick ohne Strom und sendet nichts mehr. Folglich steht im iobroker so lange der letze empfangene Wert bis ein neues MQTT-Paket kommt, was dann morgens passiert. Woher sollte iobroker oder der MQTT-Adapter wissen, dass nun nichts mehr kommt und die Werte auf 0 gesetzt werden müssen? Der Shinestick würde gerne noch senden, dass nun alles 0 ist, kann aber nicht, weil er just in dem Moment bereits stromlos war.
                      Wenn Dich das stört, dann könntest Du da eventuell mit Alias-Datenpunkten arbeiten und diese tracken und die eben per Script manuell auf 0 setzen, wenn vom Stick so und so lange (zum Bsp. 5 min) kein Paket mehr empfangen wurde. Der Growatt-Server macht im Hintergrund wohl genau so etwas Ähnliches.

                      Gruss, Jürgen

                      1 Reply Last reply Reply Quote 0
                      • W
                        warp735 last edited by

                        @wildbill
                        Ich ging bisher schon davon aus, dass es sich abends um ein "kontrolliertes runterfahren" handelt und nicht stumpf "Strom weg"
                        Ok, dann muss ich mir die Variable manuell auf Null setzen.

                        W 1 Reply Last reply Reply Quote 0
                        • W
                          Wildbill @warp735 last edited by

                          @warp735 Nein, der Shinestick wird vom Wechselrichter mit Strom versorgt, solange dieser noch irgendwie Strom aus den Solarmodulen pressen kann. Irgendwann kommt da halt nichts mehr und er schaltet einfach ab. Hört man auch, wenn man in der Nähe ist, so ähnlich wie ein Relais oder Schütz. Ab da ist der Stick dann aus und sendet nix mehr.

                          Gruss, Jürgen

                          1 Reply Last reply Reply Quote 0
                          • W
                            warp735 last edited by

                            @wildbill Ich schau mit m Unifi Adapter ob der Shinestick noch online ist, wenn nicht hau ich die Variable auf 0. Sieht ganz gut aus.

                            1 Reply Last reply Reply Quote 1
                            • M
                              moonsorrox last edited by moonsorrox

                              Hallo wer hat denn Grott auf einem LXC und Proxmox installiert.
                              Welche Befehle werden dafür gebraucht und wo landet der Grott dann in welchem Verzeichnis.
                              Ich hatte einen Versuch bin aber nirgend an die Grott.ini rangekommen die war immer leer.
                              Habt ihr das mit wget installiert. Bitte mir einmal den Installationsbefehl senden.
                              Vielen Dank

                              PLCHome 0 W 2 Replies Last reply Reply Quote 0
                              • PLCHome 0
                                PLCHome 0 Developer @moonsorrox last edited by

                                @moonsorrox said in Test Adapter Growatt v1.0.0:

                                Habt ihr das mit wget installiert.

                                nö: docker pull

                                PLCHome 0 M 2 Replies Last reply Reply Quote 0
                                • PLCHome 0
                                  PLCHome 0 Developer @PLCHome 0 last edited by PLCHome 0

                                  Also bei dem Grott hatte ich gestern auch Aussetzer, fast zeitgleich zur Cloud. Er hatt dann die Daten mit "bufferd=yes" nachgesendet.

                                  Ich suche nich nach ein paar Bezeichnungen:

                                  'ipf? (#)'
                                  'realoppercent? (#)'
                                  'opfullwatt? (#)'
                                  'deratingmode? (#)'
                                  'ipm? (#)'
                                  'temperature batterie? (#)'
                                  'spdsp status?'
                                  
                                  createSt('0_userdata.0.grott.device','device','','string')           
                                  createSt('0_userdata.0.grott.time','time','','string')           
                                  createSt('0_userdata.0.grott.buffered','buffered','','string')
                                  createSt('0_userdata.0.grott.values.recortype','recortype','','number') //neu 2022.09.08
                                  createSt('0_userdata.0.grott.values.pvstatus','pvstatus','','number')           
                                  createSt('0_userdata.0.grott.values.pvpowerin','power strings','W','number')
                                  createSt('0_userdata.0.grott.values.pv1voltage','voltage string 1','V','number')
                                  createSt('0_userdata.0.grott.values.pv1current','current string 1','A','number')
                                  createSt('0_userdata.0.grott.values.pv1watt','power string 1','W','number')
                                  createSt('0_userdata.0.grott.values.pv2voltage','voltage string 1','V','number')
                                  createSt('0_userdata.0.grott.values.pv2current','current string 1','A','number')
                                  createSt('0_userdata.0.grott.values.pv2watt','power string 1','W','number')
                                  createSt('0_userdata.0.grott.values.pvpowerout','pv power out','W','number')
                                  createSt('0_userdata.0.grott.values.pvfrequentie','grid frequency','Hz','number')
                                  createSt('0_userdata.0.grott.values.pvgridvoltage','grid voltage','V','number')
                                  createSt('0_userdata.0.grott.values.pvgridcurrent','grid current','A','number')
                                  createSt('0_userdata.0.grott.values.pvgridpower','grid power','W','number')
                                  createSt('0_userdata.0.grott.values.pvgridvoltage2','grid voltage L2','V','number')
                                  createSt('0_userdata.0.grott.values.pvgridcurrent2','grid current L2','A','number')
                                  createSt('0_userdata.0.grott.values.pvgridpower2','grid power L2','W','number')
                                  createSt('0_userdata.0.grott.values.pvgridvoltage3','grid voltage L3','V','number')
                                  createSt('0_userdata.0.grott.values.pvgridcurrent3','grid current L3','A','number')
                                  createSt('0_userdata.0.grott.values.pvgridpower3','grid power L3','W','number')
                                  createSt('0_userdata.0.grott.values.totworktime','totworktime inverter','sec','number')
                                  //deleteSt('0_userdata.0.grott.values.pvenergytoday','pvenergytoday','kWh','number')//alt 2022.09.08
                                  //deleteSt('0_userdata.0.grott.values.pvenergytotal','pvenergytotal','kWh','number')//alt 2022.09.08
                                  createSt('0_userdata.0.grott.values.eactoday','generated grid energy today','kWh','number')//neu 2022.09.08
                                  createSt('0_userdata.0.grott.values.eactotal','generated grid energy total','kWh','number')//neu 2022.09.08
                                  createSt('0_userdata.0.grott.values.epvtotal','generated solar energy total','kWh','number')
                                  createSt('0_userdata.0.grott.values.epv1today','generated solar energy string 1 today','kWh','number')
                                  createSt('0_userdata.0.grott.values.epv1total','generated solar energy string 1 total','kWh','number')
                                  createSt('0_userdata.0.grott.values.epv2today','generated solar energy string 2 today','kWh','number')
                                  createSt('0_userdata.0.grott.values.epv2total','generated solar energy string 2 total','kWh','number')
                                  createSt('0_userdata.0.grott.values.pvtemperature','temperature inverter','°C','number')
                                  createSt('0_userdata.0.grott.values.pvipmtemperature','temperature IPM','°C','number')
                                  createSt('0_userdata.0.grott.values.pvboosttemp','temperature boost','°C','number')//neu 2022.09.08
                                  createSt('0_userdata.0.grott.values.bat_dsp','bat DSP','V','number')//neu 2022.09.08
                                  createSt('0_userdata.0.grott.values.pbusvolt','p-bus voltage','V','number')//neu 2022.09.08
                                  createSt('0_userdata.0.grott.values.nbusvolt','n-bus voltage (#)','V','number') //neu 2022.09.08
                                  createSt('0_userdata.0.grott.values.ipf','ipf? (#)','','number')//neu 2022.09.08
                                  createSt('0_userdata.0.grott.values.realoppercent','realoppercent? (#)','','number') //neu 2022.09.08
                                  createSt('0_userdata.0.grott.values.opfullwatt','opfullwatt? (#)','W','number') //neu 2022.09.08
                                  createSt('0_userdata.0.grott.values.deratingmode','deratingmode? (#)','','number') //neu 2022.09.08
                                  createSt('0_userdata.0.grott.values.eacharge_today','battery charged energy today','kWh','number')//neu 2022.09.08
                                  createSt('0_userdata.0.grott.values.eacharge_total','battery charged energy total','kWh','number')//neu 2022.09.08
                                  createSt('0_userdata.0.grott.values.batterytype','type of battery','','number') //neu 2022.09.08
                                  createSt('0_userdata.0.grott.values.uwsysworkmode','uw sys work mode','','number') //neu 2022.09.08
                                  createSt('0_userdata.0.grott.values.systemfaultword1','systemfault word 1','','number') //neu 2022.09.08
                                  createSt('0_userdata.0.grott.values.systemfaultword2','systemfault word 2','','number') //neu 2022.09.08
                                  createSt('0_userdata.0.grott.values.systemfaultword3','systemfault word 3','','number') //neu 2022.09.08
                                  createSt('0_userdata.0.grott.values.systemfaultword4','systemfault word 4','','number') //neu 2022.09.08
                                  createSt('0_userdata.0.grott.values.systemfaultword5','systemfault word 5','','number') //neu 2022.09.08
                                  createSt('0_userdata.0.grott.values.systemfaultword6','systemfault word 6','','number') //neu 2022.09.08
                                  createSt('0_userdata.0.grott.values.systemfaultword7','systemfault word 7','','number') //neu 2022.09.08
                                  createSt('0_userdata.0.grott.values.pdischarge1','battery power discharge','W','number') //neu 2022.09.08
                                  createSt('0_userdata.0.grott.values.p1charge1','battery power charge','W','number') //neu 2022.09.08
                                  createSt('0_userdata.0.grott.values.vbat','battery voltage','V','number') //neu 2022.09.08
                                  createSt('0_userdata.0.grott.values.SOC','battery level','%','number') //neu 2022.09.08
                                  createSt('0_userdata.0.grott.values.pactouserr','import from grid L1','W','number') //neu 2022.09.08
                                  createSt('0_userdata.0.grott.values.pactousers','import from grid L2(#)','W','number') //neu 2022.09.08
                                  createSt('0_userdata.0.grott.values.pactousert','import from grid L3(#)','W','number') //neu 2022.09.08
                                  createSt('0_userdata.0.grott.values.pactousertot','import from grid total','W','number') //neu 2022.09.08
                                  createSt('0_userdata.0.grott.values.pactogridr','export to grid L1','W','number') //neu 2022.09.08
                                  createSt('0_userdata.0.grott.values.pactogrids','export to grid L2 (#)','W','number') //neu 2022.09.08
                                  createSt('0_userdata.0.grott.values.pactogridt','export to grid L3 (#)','W','number') //neu 2022.09.08
                                  createSt('0_userdata.0.grott.values.pactogridtot','export to grid total','W','number') //neu 2022.09.08
                                  createSt('0_userdata.0.grott.values.plocaloadr','local load consumption L1','W','number') //neu 2022.09.08
                                  createSt('0_userdata.0.grott.values.plocaloads','local load consumption L2 (#)','W','number') //neu 2022.09.08
                                  createSt('0_userdata.0.grott.values.plocaloadt','local load consumption L3 (#)','W','number') //neu 2022.09.08
                                  createSt('0_userdata.0.grott.values.plocaloadtot','local load consumption total','W','number') //neu 2022.09.08
                                  createSt('0_userdata.0.grott.values.ipm','ipm? (#)','','number')//neu 2022.09.08
                                  createSt('0_userdata.0.grott.values.battemp','temperature batterie? (#)','°C','number')
                                  createSt('0_userdata.0.grott.values.spdspstatus','spdsp status?','','number')//neu 2022.09.08
                                  createSt('0_userdata.0.grott.values.etouser_tod','to user today','kWh','number')//neu 2022.09.08
                                  createSt('0_userdata.0.grott.values.etouser_tot','to user total','kWh','number')//neu 2022.09.08
                                  createSt('0_userdata.0.grott.values.etogrid_tod','grid energy today','kWh','number')//neu 2022.09.08
                                  createSt('0_userdata.0.grott.values.etogrid_tot','grid energy total','kWh','number')//neu 2022.09.08
                                  createSt('0_userdata.0.grott.values.edischarge1_tod','battery discharge energy today','kWh','number')//neu 2022.09.08
                                  createSt('0_userdata.0.grott.values.edischarge1_tot','battery discharge energy total','kWh','number')//neu 2022.09.08
                                  createSt('0_userdata.0.grott.values.eharge1_tod','battery charge energy today','kWh','number')//neu 2022.09.08
                                  createSt('0_userdata.0.grott.values.eharge1_tot','battery charge energy total','kWh','number')//neu 2022.09.08
                                  createSt('0_userdata.0.grott.values.elocalload_tod','loacl load energy today','kWh','number')//neu 2022.09.08
                                  createSt('0_userdata.0.grott.values.elocalload_tot','loacl load energy total','kWh','number')//neu 2022.09.08
                                  
                                  
                                  async function createSt(state,name,unit,t) {
                                      if(! (await existsObjectAsync(state))) {
                                          await createStateAsync(state, {
                                                          type: t, 
                                                          role: 'value', 
                                                          "name": name,
                                                          read: true,
                                                          write: false,
                                                          "unit": unit
                                                      });
                                      } else {
                                          let objG = await getObjectAsync(state)
                                          if ( objG.common.type != t ||
                                               objG.common.name != name ||
                                               objG.common.unit != unit) {
                                              objG.common.type = t
                                              objG.common.name = name
                                              objG.common.unit = unit
                                              setObjectAsync(state,objG);
                                          }
                                      }
                                  }
                                  
                                  async function deleteSt(state) {
                                      if((await existsObjectAsync(state))) {
                                          await deleteStateAsync(state)
                                      }
                                  }
                                  
                                  
                                  on({id: 'mqtt.1.energy.growatt'/*energy/growatt*/, change: "any"},(obj)=>{
                                      let values=JSON.parse( obj.state.val )
                                      
                                      setState('0_userdata.0.grott.device',values.device,true)
                                      setState('0_userdata.0.grott.time',values.time,true)
                                      setState('0_userdata.0.grott.buffered',values.buffered,true)
                                      if (values.buffered == "no") {
                                          setState('0_userdata.0.grott.values.recortype',values.values['#recortype'],true) //neu 2022.09.08
                                          setState('0_userdata.0.grott.values.pvstatus',values.values.pvstatus,true)
                                          setState('0_userdata.0.grott.values.pvpowerin',values.values.pvpowerin/10,true)
                                          setState('0_userdata.0.grott.values.pv1voltage',values.values.pv1voltage/10,true)
                                          setState('0_userdata.0.grott.values.pv1current',values.values.pv1current/10,true)
                                          setState('0_userdata.0.grott.values.pv1watt',values.values.pv1watt/10,true)
                                          setState('0_userdata.0.grott.values.pv2voltage',values.values.pv2voltage/10,true)
                                          setState('0_userdata.0.grott.values.pv2current',values.values.pv2current/10,true)
                                          setState('0_userdata.0.grott.values.pv2watt',values.values.pv2watt/10,true)
                                          setState('0_userdata.0.grott.values.pvpowerout',values.values.pvpowerout/10,true)
                                          setState('0_userdata.0.grott.values.pvfrequentie',values.values.pvfrequentie/100,true)
                                          setState('0_userdata.0.grott.values.pvgridvoltage',values.values.pvgridvoltage/10,true)
                                          setState('0_userdata.0.grott.values.pvgridcurrent',values.values.pvgridcurrent/10,true)
                                          setState('0_userdata.0.grott.values.pvgridpower',values.values.pvgridpower/10,true)
                                          setState('0_userdata.0.grott.values.pvgridvoltage2',values.values.pvgridvoltage2/10,true)
                                          setState('0_userdata.0.grott.values.pvgridcurrent2',values.values.pvgridcurrent2/10,true)
                                          setState('0_userdata.0.grott.values.pvgridpower2',values.values.pvgridpower2/10,true)
                                          setState('0_userdata.0.grott.values.pvgridvoltage3',values.values.pvgridvoltage3/10,true)
                                          setState('0_userdata.0.grott.values.pvgridcurrent3',values.values.pvgridcurrent3/10,true)
                                          setState('0_userdata.0.grott.values.pvgridpower3',values.values.pvgridpower3/10,true)
                                          setState('0_userdata.0.grott.values.totworktime',values.values.totworktime/2,true)
                                          //setState('0_userdata.0.grott.values.pvenergytoday',values.values.pvenergytoday/10,true)//alt 2022.09.08
                                          //setState('0_userdata.0.grott.values.pvenergytotal',values.values.pvenergytotal/10,true)//alt 2022.09.08
                                          setState('0_userdata.0.grott.values.eactoday',values.values.eactoday/10,true)//neu 2022.09.08
                                          setState('0_userdata.0.grott.values.eactotal',values.values.eactotal/10,true)//neu 2022.09.08
                                          setState('0_userdata.0.grott.values.epvtotal',values.values.epvtotal/10,true)
                                          setState('0_userdata.0.grott.values.epv1today',values.values.epv1today/10,true)
                                          setState('0_userdata.0.grott.values.epv1total',values.values.epv1total/10,true)
                                          setState('0_userdata.0.grott.values.epv2today',values.values.epv2today/10,true)
                                          setState('0_userdata.0.grott.values.epv2total',values.values.epv2total/10,true)
                                          setState('0_userdata.0.grott.values.pvtemperature',values.values.pvtemperature/10,true)
                                          setState('0_userdata.0.grott.values.pvipmtemperature',values.values.pvipmtemperature/10,true)
                                          setState('0_userdata.0.grott.values.pvboosttemp',values.values.pvboosttemp/10,true)//neu 2022.09.08
                                          setState('0_userdata.0.grott.values.bat_dsp',values.values.bat_dsp/10,true)//neu 2022.09.08
                                          setState('0_userdata.0.grott.values.pbusvolt',values.values.pbusvolt/10,true)//neu 2022.09.08
                                          setState('0_userdata.0.grott.values.nbusvolt',values.values['#nbusvolt']/10,true) //neu 2022.09.08
                                          setState('0_userdata.0.grott.values.ipf',values.values['#ipf'],true) //neu 2022.09.08
                                          setState('0_userdata.0.grott.values.realoppercent',values.values['#realoppercent'],true) //neu 2022.09.08
                                          setState('0_userdata.0.grott.values.opfullwatt',values.values['#opfullwatt']/10,true) //neu 2022.09.08
                                          setState('0_userdata.0.grott.values.deratingmode',values.values['#deratingmode'],true) //neu 2022.09.08
                                          setState('0_userdata.0.grott.values.eacharge_today',values.values.eacharge_today/10,true)//neu 2022.09.08
                                          setState('0_userdata.0.grott.values.eacharge_total',values.values.eacharge_total/10,true)//neu 2022.09.08
                                          setState('0_userdata.0.grott.values.batterytype',values.values.batterytype,true)//neu 2022.09.08
                                          setState('0_userdata.0.grott.values.uwsysworkmode',values.values.uwsysworkmode,true)//neu 2022.09.08
                                          setState('0_userdata.0.grott.values.systemfaultword1',values.values.systemfaultword1/10,true)//neu 2022.09.08
                                          setState('0_userdata.0.grott.values.systemfaultword2',values.values.systemfaultword2/10,true)//neu 2022.09.08
                                          setState('0_userdata.0.grott.values.systemfaultword3',values.values.systemfaultword3/10,true)//neu 2022.09.08
                                          setState('0_userdata.0.grott.values.systemfaultword4',values.values.systemfaultword4/10,true)//neu 2022.09.08
                                          setState('0_userdata.0.grott.values.systemfaultword5',values.values.systemfaultword5/10,true)//neu 2022.09.08
                                          setState('0_userdata.0.grott.values.systemfaultword6',values.values.systemfaultword6/10,true)//neu 2022.09.08
                                          setState('0_userdata.0.grott.values.systemfaultword7',values.values.systemfaultword7/10,true)//neu 2022.09.08
                                          setState('0_userdata.0.grott.values.pdischarge1',values.values.pdischarge1/10,true)//neu 2022.09.08
                                          setState('0_userdata.0.grott.values.p1charge1',values.values.p1charge1/10,true)//neu 2022.09.08
                                          setState('0_userdata.0.grott.values.vbat',values.values.vbat/10,true)//neu 2022.09.08
                                          setState('0_userdata.0.grott.values.SOC',values.values.SOC,true)//neu 2022.09.08
                                          setState('0_userdata.0.grott.values.pactouserr',values.values.pactouserr/10,true)//neu 2022.09.08
                                          setState('0_userdata.0.grott.values.pactousers',values.values['#pactousers']/10,true) //neu 2022.09.08
                                          setState('0_userdata.0.grott.values.pactousert',values.values['#pactousert']/10,true) //neu 2022.09.08
                                          setState('0_userdata.0.grott.values.pactousertot',values.values.pactousertot/10,true)//neu 2022.09.08
                                          setState('0_userdata.0.grott.values.pactogridr',values.values.pactogridr/10,true)//neu 2022.09.08
                                          setState('0_userdata.0.grott.values.pactogrids',values.values['#pactogrids']/10,true) //neu 2022.09.08
                                          setState('0_userdata.0.grott.values.pactogridt',values.values['#pactogridt']/10,true) //neu 2022.09.08
                                          setState('0_userdata.0.grott.values.pactogridtot',values.values.pactogridtot/10,true)//neu 2022.09.08
                                          setState('0_userdata.0.grott.values.plocaloadr',values.values.plocaloadr/10,true)//neu 2022.09.08
                                          setState('0_userdata.0.grott.values.plocaloads',values.values['#plocaloads']/10,true) //neu 2022.09.08
                                          setState('0_userdata.0.grott.values.plocaloadt',values.values['#plocaloadt']/10,true) //neu 2022.09.08
                                          setState('0_userdata.0.grott.values.plocaloadtot',values.values.plocaloadtot/10,true)//neu 2022.09.08
                                          setState('0_userdata.0.grott.values.ipm',values.values['#ipm'],true) //neu 2022.09.08
                                          setState('0_userdata.0.grott.values.battemp',values.values['#battemp']/10,true) //neu 2022.09.08
                                          setState('0_userdata.0.grott.values.spdspstatus',values.values.spdspstatus,true)//neu 2022.09.08
                                          setState('0_userdata.0.grott.values.etouser_tod',values.values.etouser_tod/10,true)//neu 2022.09.08
                                          setState('0_userdata.0.grott.values.etouser_tot',values.values.etouser_tot/10,true)//neu 2022.09.08
                                          setState('0_userdata.0.grott.values.etogrid_tod',values.values.etogrid_tod/10,true)//neu 2022.09.08
                                          setState('0_userdata.0.grott.values.etogrid_tot',values.values.etogrid_tot/10,true)//neu 2022.09.08
                                          setState('0_userdata.0.grott.values.edischarge1_tod',values.values.edischarge1_tod/10,true)//neu 2022.09.08
                                          setState('0_userdata.0.grott.values.edischarge1_tot',values.values.edischarge1_tot/10,true)//neu 2022.09.08
                                          setState('0_userdata.0.grott.values.eharge1_tod',values.values.eharge1_tod/10,true)//neu 2022.09.08
                                          setState('0_userdata.0.grott.values.eharge1_tot',values.values.eharge1_tot/10,true)//neu 2022.09.08
                                          setState('0_userdata.0.grott.values.elocalload_tod',values.values.elocalload_tod/10,true)//neu 2022.09.08
                                          setState('0_userdata.0.grott.values.elocalload_tot',values.values.elocalload_tot/10,true)//neu 2022.09.08
                                      }
                                  });
                                  
                                  1 Reply Last reply Reply Quote 0
                                  • W
                                    warp735 last edited by

                                    @plchome-0

                                    @wildbill sagte in Test Adapter Growatt v1.0.0:

                                    Anscheinend sendet der Stick auch nur, wenn er Kontakt zum Server aufbauen kann

                                    Also Server down, dann funktioniert auch grott nicht.

                                    1 Reply Last reply Reply Quote 0
                                    • W
                                      Wildbill @moonsorrox last edited by

                                      @moonsorrox HIER steht eigentlich alles bezüglich Docker. Da ist auch direkt in den Docker-Hub verlinkt und da steht der Befehl zum Installieren.

                                      @warp735 So ist es. Der Stick sendet nur (auch per MQTT) wenn er Verbindung zum Growatt-Server hat. Fehlt das, wird im Stick gepuffert und bei Verbindung dann alles nachgesendet. Siehe Beitrag von @PLCHome-0 . Deshalb gibt es ja bei grott auch den grottserver.py (siehe oben). Der simuliert den Growatt-Server, so dass der Stick denkt, er ist damit verbunden und brav seine Daten per MQTT los wird. Allerdings landen dann keine Daten mehr direkt auf dem Growatt-Server. Soweit ich mich erinnere könnte das aber in einer zukünftigen Version kommen.

                                      Gruss, Jürgen

                                      PLCHome 0 1 Reply Last reply Reply Quote 0
                                      • PLCHome 0
                                        PLCHome 0 Developer @Wildbill last edited by

                                        @wildbill Der Stick sendet per Modbus, Grott mach daraus MQTT

                                        W W 2 Replies Last reply Reply Quote 0
                                        • W
                                          warp735 @PLCHome 0 last edited by

                                          @plchome-0
                                          Also könnte man direkt per Modbus abgreifen? Aber der Stick macht nichts, wenn kein Server "erreichbar"?

                                          PLCHome 0 1 Reply Last reply Reply Quote 0
                                          • W
                                            Wildbill @PLCHome 0 last edited by

                                            @plchome-0 Danke, wusste ich nicht.

                                            Gruss, Jürgen

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            319
                                            Online

                                            31.6k
                                            Users

                                            79.5k
                                            Topics

                                            1.3m
                                            Posts

                                            adapter growatt pv-anlage shine solar test tester
                                            71
                                            799
                                            282888
                                            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