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

    • Neuer Blog: Fotos und Eindrücke aus Solingen

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    Test Adapter Growatt v3.3.1

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

      @plchome-0

      9216c85d-b1f9-4607-bd77-4929c30ac073-image.png

      im Wizard siehts so aus. Und meinst du die Zustände lassen sich mit umschalten bearbeiten ?

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

        @laforge112
        Also so hab ich das mit dem Blocky kann ich leider nicht. Ich habe leider Informatik und nicht Kunst studiert ...
        Um 7:00 setzt er die Einstellungen zum Laden zurück, falls ich das vergessen habe.
        Ansonsten prüfe ich alle 2min ob es Nacht oder Tag ist.
        Ist es Tag, wird das Ding eingeschaltet, wenn es aus ist.
        Bei Nacht wird geprüft, ob der SOC leer ist und auch keine Leistung mehr entnommen wird. Dann schaltet er ab.

        schedule('0 7 * * *', async ()=>{
            let [stat,stat2,stat3] = await Promise.all(
                  [ getStateAsync('growatt.0. -a- .devices. -b-.settings.batteryFirst.values.param8'/*Time slot 1 on*/),
                    getStateAsync('growatt.0. -a- .devices. -b-.settings.batteryFirst.values.param13'/*Time slot 2 on*/),
                    getStateAsync('growatt.0. -a- .devices. -b-.settings.batteryFirst.values.param18'/*Time Slot 3 on*/) ]);
            if (stat.val == true || stat2.val == true || stat3.val == true) {
                await setStateAsync('growatt.0. -a- .devices. -b-.settings.batteryFirst.values.param8'/*Time slot 1 on*/,false,false);
                await setStateAsync('growatt.0. -a- .devices. -b-.settings.batteryFirst.values.param13'/*Time slot 2 on*/,false,false);
                await setStateAsync('growatt.0. -a- .devices. -b-.settings.batteryFirst.values.param18'/*Time slot 3 on*/,false,false);
                await setStateAsync('growatt.0. -a- .devices. -b-.settings.batteryFirst.write',true,false);
                sendTo('telegram.0', {user: 'Nasenbär', text: `Growatt: Der Timeslot zum Laden wurde zurückgesetzt!`});
            }
        })
        
        schedule('*/2 * * * *', async ()=>{
            if (isAstroDay()) {
                let stat = await getStateAsync('growatt.0. -a- .devices. -b-.settings.pvOnOff.values.param1'/*Inverter On/Off*/)
                if (stat.val == 0) {
                    await setStateAsync('growatt.0. -a- .devices. -b-.settings.pvOnOff.values.param1'/*Inverter On/Off*/,1,false);
                    await setStateAsync('growatt.0. -a- .devices. -b-.settings.pvOnOff.write',true,false);
                    sendTo('telegram.0', {user: 'Nasenbär', text: `Growatt: Der Wechselrichter wurde eingeschaltet!`});
                }
            } else {
                let [connected, onoff, soc,stopsoc, pdischarge1] = await Promise.all(
                    [ getStateAsync('growatt.0.info.connection'/*If connected to Growatt Server*/),
                        getStateAsync('growatt.0. -a- .devices. -b-.settings.pvOnOff.values.param1'/*Inverter On/Off*/),
                        getStateAsync('growatt.0. -a- .devices. -b-.historyLast.soc'/*soc*/),
                        getStateAsync('growatt.0. -a- .devices. -b-.settings.loadFirst.values.param1'/*Discharge Stopped Soc*/),
                        getStateAsync('growatt.0. -a- .devices. -b-.historyLast.pdischarge1'/*pdischarge1*/)
                        ]);        
                if (connected.val && onoff.val == 1 && soc.val <= stopsoc.val && pdischarge1.val == 0) {
                    await setStateAsync('growatt.0. -a- .devices. -b-.settings.pvOnOff.values.param1'/*Inverter On/Off*/,0,false);
                    await setStateAsync('growatt.0. -a- .devices. -b-.settings.pvOnOff.write',true,false);
                    sendTo('telegram.0', {user: 'Nasenbär', text: `Growatt: Der Wechselrichter wurde abgeschaltet!`});
                }
            }
        })
        

        Script angepasst...

        Dann hab ich noch das hier gefunden:
        https://forum.iobroker.net/topic/4324/
        scheint aber älter zu sein. Villeicht geht das mitlerweile.

        1 Reply Last reply Reply Quote 0
        • LaForge112
          LaForge112 @LaForge112 last edited by

          @laforge112 said in Test Adapter Growatt v3.2.0:
          Und meinst du die Zustände lassen sich mit umschalten bearbeiten ?

          Also umschalten der Zustände geht schon mal.

          Ich teste weiter

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

            @laforge112
            Der Vergleich ist ähnlich. Ich vergleiche hard soc und stopp soc. Und dann frage ich noch ab, ob die Entladeleistung 0 ist.
            9044b817-31d8-4549-aad1-f4998fd39cc4-image.png
            Die solltest auch prüfen das Inverter ON/Off 0 ist. Da da alle 15min aufgerufen wird und er nur einmal schalten soll.

            Unstellen schreibt, glaube ich Boolean. Mach einfach aktualisiere mit 0 als Zahl auf Value1.

            442a5a72-8a58-49f5-a2d6-acc7492de67e-image.png

            Ich bin kein Blocky Experte aber:
            c33c3b6b-421c-47d4-992a-a74975f13c05-image.png
            Das funktioniert, glaube ich nicht, da dieser Teil nur bei Programmstart ausgeführt wird. Der benötigt auch einen Zeitplan, der bei Sonnenaufgang auslöst. Besser eine halbe Stunde vorher. Und dann einfach aktualisiere mit 1 als Zahl auf Value1.
            Du kannst vorher noch abfragen, ob eine 0 drinsteht, dann macht er das nur einmal.

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

              @plchome-0 said in Test Adapter Growatt v3.2.0:

              @laforge112

              Das funktioniert, glaube ich nicht, da dieser Teil nur bei Programmstart ausgeführt wird. Der benötigt auch einen Zeitplan, der bei Sonnenaufgang auslöst. Besser eine halbe Stunde vorher. Und dann einfach aktualisiere mit 1 als Zahl auf Value1.

              Ja das war mir auch schon aufgefallen und ist bereits geändert.

              Du kannst vorher noch abfragen, ob eine 0 drinsteht, dann macht er das nur einmal.

              Dieser Check ist drin, der checkt aber den Actual State (oben Wert von "status") und nicht den Programmierten und das sowohl beim ein und ausschalten.
              Ganz lieben Dank aber noch für deinen Input,

              Jetzt muss ich mal noch ne Tibber SOC Steuerung erfinden.
              Aber hier: https://www.tns-labs.org/multiplus-ii-tibber-dynamischer-stromtarif/
              hab ich schon mal nen Ansatz gefunden. Wenn auch für nen Multiplus2 mal sehen was ich abkupfern kann 🙂

              LG LaFo

              1 Reply Last reply Reply Quote 0
              • Sefina
                Sefina last edited by

                Hi zusammen,

                Adapter läuft schon nice.
                Ich habe hier ein Growatt MOD 10KTL3-X, bei Typ steht laut Adapter max.

                Gibt es eine Möglichkeit die Wirkleistung auch per Adapter bei diesen Wechselrichter einzustellen ?
                Stehe gern als Testobjekt zur verfügung

                MfG

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

                  @sefina

                  Hast du dir einmal weiter oben angeschaut, wie im Browser die Daten mitgeschnitten werden?

                  Wenn du mir die Mitschnitte zum Auslesen und Setzen lieferst, kann ich die eintragen.

                  https://forum.iobroker.net/topic/36474/test-adapter-growatt-v3-2-0/476

                  1 Reply Last reply Reply Quote 0
                  • Sefina
                    Sefina last edited by

                    Also bei Typ steht max

                    Gesendet wurde :


                    growatt.png

                    Als Antwort kamm :


                    function dialog_setMAX_init(did,dialog,max){
                    if(max==null){
                    max=JSON.parse('{"innerVersion":"DLAA07510019","afciThresholdH":"0","communicationVersion":"ZBAA-0019","afciSelfCheck":"0","afciThresholdL":"0","pflinep1_lp":"255","afciThresholdD":"0","lcdLanguage":"1","haveAfci":"false","lost":"false","model":"2377900603503345764","backflowDefaultPower":"-0.1","facHigh":"52.5","pvPfCmdMemoryState":"1","pflinep1_pf":"1.0","fftThresholdCount":"0","deviceType":"0","voltageLowLimit":"276.6","pflinep4_lp":"255","nominalPower":"10000","pflinep4_pf":"1.0","status":"1","lastUpdateTime":"2023-10-25 15:56:20","facLow":"47.5","pflinep3_lp":"255","timezone":"2","voltageHighLimit":"496.3","afciReset":"0","reactiveRate":"0","modelText":"S21B00D00T00P0FU01M0064","dtc":"5002","activeRate":"20","svgEnabled":"0","alias":"QXHJD4S08V","datalogSn":"XGD6D5518H","sysTime":"2017-01-10 23:14:22","fwVersion":"DL1.0","sn":"QXHJD4S08V","pflinep3_pf":"1.0","onOff":"1","vacHigh":"498.0","address":"1","pflinep2_lp":"255","plantId":"2289714","pfModel":"0","plantCountry":"Germany","exportLimitPowerRate":"0.0","afciEnabled":"0","exportLimit":"0","frequencyHighLimit":"50.5","pf":"0.0","frequencyLowLimit":"47.51","deviceModel":"MOD 10KTL3-X","location":"","vacLow":"274.9","pflinep2_pf":"1.0"}');
                    }
                    if(dialog==null){
                    dialog=$("#setDevice")
                    CURR_PLANTID=JSON.parse('{"innerVersion":"DLAA07510019","afciThresholdH":"0","communicationVersion":"ZBAA-0019","afciSelfCheck":"0","afciThresholdL":"0","pflinep1_lp":"255","afciThresholdD":"0","lcdLanguage":"1","haveAfci":"false","lost":"false","model":"2377900603503345764","backflowDefaultPower":"-0.1","facHigh":"52.5","pvPfCmdMemoryState":"1","pflinep1_pf":"1.0","fftThresholdCount":"0","deviceType":"0","voltageLowLimit":"276.6","pflinep4_lp":"255","nominalPower":"10000","pflinep4_pf":"1.0","status":"1","lastUpdateTime":"2023-10-25 15:56:20","facLow":"47.5","pflinep3_lp":"255","timezone":"2","voltageHighLimit":"496.3","afciReset":"0","reactiveRate":"0","modelText":"S21B00D00T00P0FU01M0064","dtc":"5002","activeRate":"20","svgEnabled":"0","alias":"QXHJD4S08V","datalogSn":"XGD6D5518H","sysTime":"2017-01-10 23:14:22","fwVersion":"DL1.0","sn":"QXHJD4S08V","pflinep3_pf":"1.0","onOff":"1","vacHigh":"498.0","address":"1","pflinep2_lp":"255","plantId":"2289714","pfModel":"0","plantCountry":"Germany","exportLimitPowerRate":"0.0","afciEnabled":"0","exportLimit":"0","frequencyHighLimit":"50.5","pf":"0.0","frequencyLowLimit":"47.51","deviceModel":"MOD 10KTL3-X","location":"","vacLow":"274.9","pflinep2_pf":"1.0"}').plantId
                    }

                    Ich hoffe das ist was du brauchst 😁

                    MfG

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

                      @sefina Super das die halbe Miete. Weiter unten in dem Dialog kannst du auch den Wert lesen mit Advanced Set. Davon brauche ich auch mal eine Hardcopy.

                      93cfa58a-d99b-4a8e-bcc9-3aac7dcae8aa-image.png

                      1 Reply Last reply Reply Quote 0
                      • Sefina
                        Sefina last edited by

                        Ich glaube es ist falsch,
                        ich finde nichts was nach deinem Bild ausschaut.
                        Was muss ich auslössen um diesen eintrag zu generieren ?


                        growatt-1.png

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

                          @sefina 0988fbad-7f4b-422d-982a-375248f7c91b-image.png

                          0da8f1ca-f61d-4981-8a46-bd8223122a80-image.png

                          1 Reply Last reply Reply Quote 0
                          • Sefina
                            Sefina last edited by

                            Ok auch das habe ich gefunden,
                            was brauchst du genau ?


                            growatt-2.png

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

                              @sefina nur den Payload (Nutzlast) vom MAX
                              aaac81b8-f860-4bbf-aa5a-38f0abfe4b6a-image.png

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

                                @sefina such mal in der iobroker Installation die Datei:

                                node_odules/iobroker.growatt/node_odules/growatt/lib/growatttype.js
                                oder
                                node_odules/growatt/lib/growatttype.js

                                am besten machst du eine Sicherungskopie der Datei.

                                dann ersetzt du:

                                [MAX]: {
                                    snParam: 'maxSn',
                                    getTotalData: '/panel/max/getMAXTotalData',
                                    getHistory: '/device/getMAXHistory',
                                  },
                                

                                gegen:

                                [MAX]: {
                                    snParam: 'maxSn',
                                    getTotalData: '/panel/max/getMAXTotalData',
                                    getHistory: '/device/getMAXHistory',
                                    readParam: 'readMinParam',
                                    writeParam: 'maxSet',
                                    comInverter: {
                                      time: {
                                        name: 'Time',
                                        type: 'pf_sys_year',
                                        paramId: 'pf_sys_time_mutli',
                                        parseRet: PARSERET.parseRetDate,
                                        param: { param1: { name: 'Time', type: 'DATETIME' } },
                                      },
                                      pvActivePRate: {
                                        name: 'PV active power rate',
                                        type: 'pv_active_p_rate',
                                        paramId: 'pv_active_p_rate',
                                        parseRet: PARSERET.parseRetNum,
                                        param: { param1: { name: 'Active power rate', type: 'INUM_0_100', unit: '%' }, param2: { name: 'Store', type: 'BOOL', def: false } },
                                      },
                                    },
                                  },
                                
                                

                                Ich gehe aber davon aus, das 'readMinParam' falsch ist.

                                1 Reply Last reply Reply Quote 0
                                • Sefina
                                  Sefina last edited by

                                  Achso, dass


                                  growatt-3.png

                                  Rest teste ich gleich

                                  Sefina 1 Reply Last reply Reply Quote 0
                                  • Sefina
                                    Sefina @Sefina last edited by

                                    Also ich habe es ausgetauscht und erhalte jetzt folgende objekte im IOBroker


                                    growatt-4.png

                                    über parm1 habe ich 50% eingetragen und kein ack bekommen (grüne schrift)
                                    seltsammer weiße kann ich über die cloud (auch bei abgeschalteten Adapter) keine Wirkleistung abrufen noch eintragen

                                    Es kann also sein (ich gehe davon aus) das zu wenig sonne scheint das ich Werte gerade ändern kann.

                                    1 Reply Last reply Reply Quote 0
                                    • Sefina
                                      Sefina last edited by

                                      @plchome-0 said in Test Adapter Growatt v3.2.0:

                                      'readMinParam'

                                      ich habe es jetzt bereits gegen "readMaxParm" geändert.

                                      Ja der Inverter ist aus und daher wohl auch keine Anpassung der Werte.

                                      MfG

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

                                        @sefina Ja, mach du morgen mal in ruhe. Bitte prüfe auch mal ob sich die Zeit auslesen und setzen lässt.

                                        1 Reply Last reply Reply Quote 0
                                        • Sefina
                                          Sefina last edited by

                                          Also alles geht so wie es soll.

                                          Ich kann die Werte setzen und abrufen und auch die Zeit kann ich abrufen.
                                          Beim setzen bin ich mir zwar nicht sicher was er macht, .... aber es gibt eine meldung : "inv_set_param_exist"

                                          Ich danke dir auf jedenfall, falls du interesse an emhr einstellungen hast, stehe ich gern zur verfügung.

                                          MfG

                                          1 Reply Last reply Reply Quote 0
                                          • J
                                            jerzimeik last edited by

                                            Hallo zusammen,

                                            die Installation hat geklappt und auch der Connect ist mit Benutzername und Passwort da.

                                            Leider kommt unter "Datenlogger verwalten" nichts, wenn ich den Aktualisieren-Button drücke. Entsprechend sind auch keine Objekte da.

                                            Was habe ich falsch gemacht?

                                            VG

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            825
                                            Online

                                            31.7k
                                            Users

                                            79.8k
                                            Topics

                                            1.3m
                                            Posts

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