Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Hardware
    4. IOBroker Anbindung an einen Kostal Plenticore

    NEWS

    • 15. 05. Wartungsarbeiten am ioBroker Forum

    • Monatsrückblick - April 2025

    • Minor js-controller 7.0.7 Update in latest repo

    IOBroker Anbindung an einen Kostal Plenticore

    This topic has been deleted. Only users with topic management privileges can see it.
    • Diginix
      Diginix @StrathCole last edited by

      @StrathCole Ja. Damit erhalte ich 1084227584 als MinSOC. Wollte eigentlich mal "1078 Maximum discharge power limit", was auch R32 ist, auslesen. Aber da kommen auch utopische Werte.

      StrathCole 2 Replies Last reply Reply Quote 0
      • StrathCole
        StrathCole @Diginix last edited by StrathCole

        @Diginix Na toll. Müsste man also bei Kostal nachfragen und wir wissen ja, wie schwierig das ist 🙂 Ich versuch es mal.

        1 Reply Last reply Reply Quote 0
        • StrathCole
          StrathCole @Diginix last edited by

          @Diginix Hast du Double 32 bit auch ausprobiert? "Double" nennt man manchmal auch "Real", würde zu R passen.

          Diginix 1 Reply Last reply Reply Quote 0
          • Diginix
            Diginix @StrathCole last edited by

            @StrathCole Ja, aber gerade noch mal wobei es nur Double Little und Big Endian gibt, kein Double 32.
            Bei big kommt 0 % MinSoc und bei little -1.2250171709666063e+40. 😕

            StrathCole 1 Reply Last reply Reply Quote 0
            • StrathCole
              StrathCole @Diginix last edited by

              @Diginix Also laut Doku nutzt Kostal nur Big Endian. Ich muss wohl mal anfragen.

              Diginix 1 Reply Last reply Reply Quote 0
              • Diginix
                Diginix @StrathCole last edited by

                @StrathCole Bei Double Big springt die Länge zwingend auf 4, lt. Spec ist es aber 2.
                Beim MaxSOC kommt dann auch nur 0.
                Und bei "1078 Maximum discharge power limit" auch nur 0. Das sind alles R32 Werte, bei denen ich mit keinem Format im Modbus Adapter plausible Werte erhalte.
                Gehören die evtl. nicht in die Holding Register? Gibt ja noch Ein- und Ausgangsregister im Adapter.

                StrathCole 2 Replies Last reply Reply Quote 0
                • StrathCole
                  StrathCole @Diginix last edited by StrathCole

                  @Diginix Ich muss auf Rückruf warten. Bisher leider noch nicht erfolgt.

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

                    Immer noch kein Rückruf erfolgt …

                    1 Reply Last reply Reply Quote 0
                    • StrathCole
                      StrathCole @Diginix last edited by

                      @Diginix Hab es rausgefunden. Es ist Float Big Endian Word Swap.

                      Außerdem kann man die externe Steuerung auch als Endnutzer aktivieren mit einem "Trick" 🙂

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

                        Also, zum Aktivieren der externen Steuerung:

                        • Login via Browser (z. B. Firefox)
                        • Navigation zu Servicemenü -> Batterieeinstellungen
                        • Rechtsklick auf die inaktive Auswahlbox, in der "Intern" steht
                        • Developer Konsole öffnen durch Klick auf "Element untersuchen" (oder vergleichbar in anderem Browser)
                        • Attribut "Disabled" bei der Selectbox entfernen (Doppelklick auf "Disabled" und löschen, dann Enter)
                        • Das Auswahlfeld ist nun benutzbar und man kann die Einstellung auch effektiv speichern
                        • Anschließend sind die Felder wie MinSoC, max. Ladestrom usw. im ModBus auch beschreibbar
                        A Diginix T S 4 Replies Last reply Reply Quote 3
                        • A
                          ak1 @StrathCole last edited by

                          @StrathCole Ich dachte, Du wolltest erstmal 1-2 Wochen mit der Installation der neuen Firmware warten? War die Neugier dann doch zu groß 😉
                          Spaß beiseite. Besten Dank für die Informationen!

                          StrathCole 1 Reply Last reply Reply Quote 0
                          • StrathCole
                            StrathCole @ak1 last edited by

                            @ak1 So ist es. Neugier war zu groß, welcher Datentyp das nun sein soll – und da Kostal mir nicht geantwortet hat, musste ich es selbst rausfinden.

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

                              Ich habe die Steuerung auch einmal testweise aktiviert. Es funktioniert tatsächlich. Ich hatte noch 40% Ladung in der Batterie und eine Entladung von 700W. Habe dann die externe Steuerung aktiviert und via Modbus das Register 1040 auf 50W gesetzt. Wenige Sekunden später sank die Batterieentladung auf 48W und der Rest wurde aus dem Netz bezogen.

                              Ich habe dann mit dem o.g. Trick wieder auf interne Steuerung gestellt und schon hat der Kostal den Registerwert wieder auf ~4750W gesetzt.

                              Wichtig ist wohl: Auch wenn man die Steuerung aktiviert und den Wert setzt, schwankt dieser etwas. Habe im Test auf 100W gesetzt und der ModBus Wert schwankte anschließend um ein paar W nach oben und unten.

                              StrathCole M B 3 Replies Last reply Reply Quote 1
                              • StrathCole
                                StrathCole @StrathCole last edited by

                                Was ich noch nicht rausgefunden habe ist, was der Timeout-Wert bedeutet und bewirkt. Ich vermute einfach mal, dass er automatisch die interne Steuerung nutzt, wenn nicht via ModBus etwas ausgelesen oder geschrieben wird (vielleicht sogar nur geschrieben):

                                Bildschirmfoto von 2020-11-06 20-56-53.png

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

                                  Interessant ist auch Register 1064. Das enthält nämlich jetzt die insgesamt bisher ins Netz eingespeiste Strommenge in Wh (bei mir etwa 6000000.0).

                                  1 Reply Last reply Reply Quote 0
                                  • Diginix
                                    Diginix @StrathCole last edited by

                                    @StrathCole sagte in IOBroker Anbindung an einen Kostal Plenticore:

                                    • Attribut "Disabled" bei der Selectbox entfernen (Doppelklick auf "Disabled" und löschen, dann Enter)

                                    Boar wie billig umgesetzt. An so eine einfache Umgehung hab ich nicht mal gedacht, obwohl ich beruflich genau mit sowas zu tun hab. 😉
                                    Aber gut für uns.
                                    Hab nun auch mal paar 1000er Register mit plausiblen Werten im Modbus Adapter mit Float.
                                    Komisch, dass andere WR Werte schon immer Float sind, dann aber auch in der Spec als "Float". Also entw ist R32 das selbe oder die haben ihre Spec falsch.
                                    Würdest du es denn schaffen über deinen Adapter die Umschaltung zw "interner Steuerung" (quasi automatisch) und temp. Steuerung mittels Modbus per http request umzusetzen?
                                    Dann könnte man in einem Skript mit deinem Adapter umstellen und den Rest über den Modbus Adapter setzen.
                                    Und später einfach wieder auf "intern" stellen und alle Werte werden ja demnach auf Standard resettet.

                                    StrathCole 1 Reply Last reply Reply Quote 0
                                    • StrathCole
                                      StrathCole @Diginix last edited by

                                      @Diginix sagte in IOBroker Anbindung an einen Kostal Plenticore:

                                      Boar wie billig umgesetzt. An so eine einfache Umgehung hab ich nicht mal gedacht, obwohl ich beruflich genau mit sowas zu tun hab. 😉

                                      Hätte ich auch nicht erwartet. Aber ich wollte es ausprobieren, da es ja nur ein "disabled" Feld war in einem Bereich, den man sonst als Enduser normal nutzen kann.

                                      @Diginix sagte in IOBroker Anbindung an einen Kostal Plenticore:

                                      Aber gut für uns.
                                      Hab nun auch mal paar 1000er Register mit plausiblen Werten im Modbus Adapter mit Float.
                                      Komisch, dass andere WR Werte schon immer Float sind, dann aber auch in der Spec als "Float". Also entw ist R32 das selbe oder die haben ihre Spec falsch.

                                      Ich vermute mal, dass sie "Float" nicht mehr nutzen wollen, sondern die Bezeichnungen vereinheitlichen, was dann bei Float "Real 32 Bit" (R32) sein müsste. Sie haben aber die alten Spec nicht bearbeitet und auch die "Legende" am Anfang nicht.

                                      @Diginix sagte in IOBroker Anbindung an einen Kostal Plenticore:

                                      Würdest du es denn schaffen über deinen Adapter die Umschaltung zw "interner Steuerung" (quasi automatisch) und temp. Steuerung mittels Modbus per http request umzusetzen?
                                      Dann könnte man in einem Skript mit deinem Adapter umstellen und den Rest über den Modbus Adapter setzen.
                                      Und später einfach wieder auf "intern" stellen und alle Werte werden ja demnach auf Standard resettet.

                                      Das sollte "problemlos" gehen, weil ich ja nicht das Formular absende, sondern die Werte direkt an die interne Api. Muss nur schauen, wie der Wert heißt, dann müsste das möglich sein.

                                      Diginix 1 Reply Last reply Reply Quote 1
                                      • Diginix
                                        Diginix @StrathCole last edited by

                                        @StrathCole sagte in IOBroker Anbindung an einen Kostal Plenticore:

                                        Das sollte "problemlos" gehen, weil ich ja nicht das Formular absende, sondern die Werte direkt an die interne Api. Muss nur schauen, wie der Wert heißt, dann müsste das möglich sein.

                                        Dann hätte sich das Firmware Update ja tatsächlich gelohnt, weil wir nahezu vollen Einfluss auf Ladung/Entladung nehmen können. Wenn man den max SOC auf den aktuellen SOC setz, dürfte er ja auch nicht mehr weiter laden oder?

                                        StrathCole 1 Reply Last reply Reply Quote 0
                                        • StrathCole
                                          StrathCole @Diginix last edited by StrathCole

                                          @Diginix sagte in IOBroker Anbindung an einen Kostal Plenticore:

                                          @StrathCole sagte in IOBroker Anbindung an einen Kostal Plenticore:

                                          Das sollte "problemlos" gehen, weil ich ja nicht das Formular absende, sondern die Werte direkt an die interne Api. Muss nur schauen, wie der Wert heißt, dann müsste das möglich sein.

                                          Dann hätte sich das Firmware Update ja tatsächlich gelohnt, weil wir nahezu vollen Einfluss auf Ladung/Entladung nehmen können. Wenn man den max SOC auf den aktuellen SOC setz, dürfte er ja auch nicht mehr weiter laden oder?

                                          Davon gehe ich aus.

                                          Bezüglich der Steuerung (soeben hinzugefügt in git Version r226):

                                          Bildschirmfoto von 2020-11-06 21-16-55.png

                                          StrathCole 1 Reply Last reply Reply Quote 1
                                          • StrathCole
                                            StrathCole @StrathCole last edited by

                                            Da ich keine Zeit hätte, jetzt im Adapter noch Modbus einzubauen, wäre meine Idee, dass ich neue Datenpunkte einfüge wie devices.local.battery.suggested_charge_max oder so, in den ich dann anhand der Prognosedaten Werte schreibe (z. B. 1000W oder 0W). Dann kann man auf den Datenpunkt mit einem Skript lauschen und ggf. Modbus über den anderen Adapter ansteuern. Entweder via MaxSoC oder eben mit dem max(dis)charge.

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            862
                                            Online

                                            31.6k
                                            Users

                                            79.4k
                                            Topics

                                            1.3m
                                            Posts

                                            83
                                            1298
                                            316598
                                            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