Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Praktische Anwendungen (Showcase)
    4. [HowTo][Anleitung] Integration und Visualisierung des S10 Hauskraftwerks von E3DC in ioBroker

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    [HowTo][Anleitung] Integration und Visualisierung des S10 Hauskraftwerks von E3DC in ioBroker

    This topic has been deleted. Only users with topic management privileges can see it.
    • C
      Christian Hornhues last edited by

      Habe heute ein Rückmeldung von E3DC zum negativen Wert bekommen:

      vielen Dank für Ihre Anfrage.

      ja eine Quelle wird immer negativ angezeigt.
      Wir messen bei den Leistungsmesser auch immer die Flussrichtung.
      Als Bezugspunkt dient hier der Netzpunkt des Hauses.
      Ins Netz negatives Vorzeichen, aus dem Netz positives Vorzeichen.
      Und da eine Quelle auch immer ins Netz speisen könnte sehen wir hier das
      negative Vorzeichen.

      Ihr E3/DC Support Team

      1 Reply Last reply Reply Quote 1
      • S
        stevie77 last edited by

        E3DC hat ja mit dem 2020-Update kürzlich die Modbus-Spec fürs Hauskraftwerk etwas erweitert, inzwischen kann man auch alle Leistungsmesser mit einzelnen Phasenwerten abrufen. Ich hab hier mal die Datei erweitert, die ich vor einiger Zeit auch schon mal hier gepostet hatte (weil bei mir der Import mit den Werten aus der Anleitung hier nicht funktioniert hat). In dieser CSV-Form mit Trennzeichen lässt es sich im Modbus-Adapter einfach importieren...

        address;name;description;unit;type;len;factor;offset;role;room;poll;wp;cw
        40001;Magic_Byte; ModBus ID;;uint16be;1;1;0;value;;true;false;false
        40002;Modbus_Firmware;Modbus-Firmware-Version;;uint16be;1;1;0;value;;true;false;false
        40003;Anzahl_Register;Anzahl unterstützter Register;;uint16be;1;1;0;value;;true;false;false
        40004;Hersteller;Hersteller;;string;16;1;0;value;;true;false;false
        40020;Modell;Modell;;string;16;1;0;value;;true;false;false
        40036;Seriennummer;Seriennummer;;string;16;1;0;value;;true;false;false
        40052;Firmware;Firmware-Release;;string;16;1;0;value;;true;false;false
        40068;PV_Leistung;Photovoltaik-Leistung in Watt;W;int32sw;2;1;0;value;;true;false;false
        40070;Batterie_Leistung;Batterie-Leistung in Watt;W;int32sw;2;1;0;value;;true;false;false
        40072;Hausverbrauch_Leistung;Hausverbrauchs-Leistung in Watt;W;int32sw;2;1;0;value;;true;false;false
        40074;Netz_Leistung;Leistung am Netzübergabepunkt;W;int32sw;2;1;0;value;;true;false;false
        40076;Zusaetzliche_Einspeiser_Leistung;Leistung aller zusätzlichen Einspeiser in Watt;W;int32sw;2;1;0;value;;true;false;false
        40078;Wallbox_Leistung;Leistung der Wallbox in Watt;W;int32sw;2;1;0;value;;true;false;false
        40080;Wallbox_genutzte_Solarleistung;Solarleistung, die von der Wallbox genutzt wird in Watt;W;int32sw;2;1;0;value;;true;false;false
        40082;Autarkie_Eigenverbrauch;Autarkie und Eigenverbrauch;;uint16be;1;1;0;value;;true;false;false
        40083;Batterie_SOC;Batterie-SOC in Prozent;%;uint16be;1;1;0;value;;true;false;false
        40084;Emergency_Power_Status;Emergency-Power Status;;uint16be;1;1;0;value;;true;false;false
        40085;EMS_Status;EMS-Status;;uint16be;1;1;0;value;;true;false;false
        40086;EMS Remote Control;EMS Remote Control;;int16be;1;1;0;value;;true;false;false
        40087;EMS CTRL;EMS CTRL;;uint16be;1;1;0;value;;true;false;false
        40088;WallBox_0_CTRL;WallBox_0_CTRL;;uint16be;1;1;0;value;;true;false;false
        40089;WallBox_1_CTRL;WallBox_1_CTRL;;uint16be;1;1;0;value;;true;false;false
        40090;WallBox_2_CTRL;WallBox_2_CTRL;;uint16be;1;1;0;value;;true;false;false
        40091;WallBox_3_CTRL;WallBox_3_CTRL;;uint16be;1;1;0;value;;true;false;false
        40092;WallBox_4_CTRL;WallBox_4_CTRL;;uint16be;1;1;0;value;;true;false;false
        40093;WallBox_5_CTRL;WallBox_5_CTRL;;uint16be;1;1;0;value;;true;false;false
        40094;WallBox_6_CTRL;WallBox_6_CTRL;;uint16be;1;1;0;value;;true;false;false
        40095;WallBox_7_CTRL;WallBox_7_CTRL;;uint16be;1;1;0;value;;true;false;false
        40096;DC_String_1_Voltage;Spannung in Volt (String 1);V;uint16be;1;1;0;value;;true;false;false
        40097;DC_String_2_Voltage;Spannung in Volt (String 2);V;uint16be;1;1;0;value;;true;false;false
        40098;DC_String_3_Voltage;Spannung in Volt (String 3);V;uint16be;1;1;0;value;;true;false;false
        40099;DC_String_1_Current;Strom in Ampere (String 1);A;uint16be;1;1;0;value;;true;false;false
        40100;DC_String_2_Current;Strom in Ampere (String 2);A;uint16be;1;1;0;value;;true;false;false
        40101;DC_String_3_Current;Strom in Ampere (String 3);A;uint16be;1;1;0;value;;true;false;false
        40102;DC_String_1_Power;Leistung in Watt (String 1);W;uint16be;1;1;0;value;;true;false;false
        40103;DC_String_2_Power;Leistung in Watt (String 2);W;uint16be;1;1;0;value;;true;false;false
        40104;DC_String_3_Power;Leistung in Watt (String 3);W;uint16be;1;1;0;value;;true;false;false
        40105;Leistungsmesser_0;Leistungsmesser 0;;uint16be;1;1;0;value;;true;false;false
        40106;Leistungsmesser_0_L1;Leistungsmesser 0 - Phase 1;W;int16be;1;1;0;value;;true;false;false
        40107;Leistungsmesser_0_L2;Leistungsmesser 0 - Phase 2;W;int16be;1;1;0;value;;true;false;false
        40108;Leistungsmesser_0_L3;Leistungsmesser 0 - Phase 3;W;int16be;1;1;0;value;;true;false;false
        40109;Leistungsmesser_1;Leistungsmesser 1;;uint16be;1;1;0;value;;true;false;false
        40110;Leistungsmesser_1_L1;Leistungsmesser 1 - Phase 1;W;int16be;1;1;0;value;;true;false;false
        40111;Leistungsmesser_1_L2;Leistungsmesser 1 - Phase 2;W;int16be;1;1;0;value;;true;false;false
        40112;Leistungsmesser_1_L3;Leistungsmesser 1 - Phase 3;W;int16be;1;1;0;value;;true;false;false
        40113;Leistungsmesser_2;Leistungsmesser 2;;uint16be;1;1;0;value;;true;false;false
        40114;Leistungsmesser_2_L1;Leistungsmesser 2 - Phase 1;W;int16be;1;1;0;value;;true;false;false
        40115;Leistungsmesser_2_L2;Leistungsmesser 2 - Phase 2;W;int16be;1;1;0;value;;true;false;false
        40116;Leistungsmesser_2_L3;Leistungsmesser 2 - Phase 3;W;int16be;1;1;0;value;;true;false;false
        40117;Leistungsmesser_3;Leistungsmesser 3;;uint16be;1;1;0;value;;true;false;false
        40118;Leistungsmesser_3_L1;Leistungsmesser 3 - Phase 1;W;int16be;1;1;0;value;;true;false;false
        40119;Leistungsmesser_3_L2;Leistungsmesser 3 - Phase 2;W;int16be;1;1;0;value;;true;false;false
        40120;Leistungsmesser_3_L3;Leistungsmesser 3 - Phase 3;W;int16be;1;1;0;value;;true;false;false
        40121;Leistungsmesser_4;Leistungsmesser 4;;uint16be;1;1;0;value;;true;false;false
        40122;Leistungsmesser_4_L1;Leistungsmesser 4 - Phase 1;W;int16be;1;1;0;value;;true;false;false
        40123;Leistungsmesser_4_L2;Leistungsmesser 4 - Phase 2;W;int16be;1;1;0;value;;true;false;false
        40124;Leistungsmesser_4_L3;Leistungsmesser 4 - Phase 3;W;int16be;1;1;0;value;;true;false;false
        40125;Leistungsmesser_5;Leistungsmesser 5;;uint16be;1;1;0;value;;true;false;false
        40126;Leistungsmesser_5_L1;Leistungsmesser 5 - Phase 1;W;int16be;1;1;0;value;;true;false;false
        40127;Leistungsmesser_5_L2;Leistungsmesser 5 - Phase 2;W;int16be;1;1;0;value;;true;false;false
        40128;Leistungsmesser_5_L3;Leistungsmesser 5 - Phase 3;W;int16be;1;1;0;value;;true;false;false
        40129;Leistungsmesser_6;Leistungsmesser 6;;uint16be;1;1;0;value;;true;false;false
        40130;Leistungsmesser_6_L1;Leistungsmesser 6 - Phase 1;W;int16be;1;1;0;value;;true;false;false
        40131;Leistungsmesser_6_L2;Leistungsmesser 6 - Phase 2;W;int16be;1;1;0;value;;true;false;false
        40132;Leistungsmesser_6_L3;Leistungsmesser 6 - Phase 3;W;int16be;1;1;0;value;;true;false;false
        
        1 Reply Last reply Reply Quote 0
        • M
          michael74 last edited by

          Mit dem Register 40078 und 80 kann man die Leistung aller Wallboxen abfragen (Summe). Kennt jemand eine Möglichkeit die Leistungswerte von jeder Wallbox (0-7) abzufragen.
          Wallbox_Leistung_0
          Wallbox_Sonnen_Leistung_0
          Wallbox_Leistung_1
          Wallbox_Sonnen_Leistung_1
          usw.

          1 Reply Last reply Reply Quote 0
          • B
            Buia2002 last edited by

            Hallo André, vielen Dank für deine Bemühungen. Seit heute Vormittag ist deine Anleitung down. In der Früh glaub ich funktionierte sie noch, hatte alles hergerichtet und dann war sie down. Weißt du den Grund? War das Absicht? Komme ich Koch irgendwie anders an deine Anleitung? Liebe Grüße Christoph

            andre 1 Reply Last reply Reply Quote 0
            • andre
              andre Developer @Buia2002 last edited by

              @Buia2002 sagte in [HowTo][Anleitung] Integration und Visualisierung des S10 Hauskraftwerks von E3DC in ioBroker:

              Weißt du den Grund? War das Absicht? Komme ich Koch irgendwie anders an deine Anleitung?

              Ja. Ja. Nein.

              Sorry, das könnte ein paar Tage dauern. Ich baue aktuell die Website um.

              MfG,
              André

              B 1 Reply Last reply Reply Quote 0
              • B
                Buia2002 @andre last edited by

                @andre

                Hi André,

                das ist kein Problem. Ich befürchtete schon sie kommt gar nicht mehr. Mein Kumpel und ich sind eh noch ein paar Tage mit Jarolift beschäftigt. Das ist mehr verkabeln und Löten als vermutet.

                Trotzdem vielen Dank.

                LG Christoph

                1 Reply Last reply Reply Quote 0
                • D
                  D-HIJU last edited by

                  an dieser Anleitung hätte ich auch großes Interesse

                  1 Reply Last reply Reply Quote 0
                  • J
                    JensNRW @andre last edited by JensNRW

                    Edit: Ich ziehe meine Frage zurück... Ich habe eben die Einträge neu erstelt und es handelte sich wohl um ein Relikt eines vorherigen Test...

                    Sorry, kann den Post leider nicht löschen. LG


                    Hallo zusammen,

                    ich habe mich, wie ich meine, peinlich genau an die Anleitung gehalten, scheitere aber an der Teilung der Adapterdatenpunkte in Form des js Script. Bei mir werden die Objekte angelegt, zeigen jedoch alle den Wert  

                    Man verzeihe mir bitte meine Unkenntnis, aber ich komme an der Stelle einfach nicht weiter...?

                    iobroker_e3dc.png

                    1 Reply Last reply Reply Quote 0
                    • Alex6879
                      Alex6879 @stevie77 last edited by

                      @stevie77 Hast Du das Problem lösen können? Bei mir ist es genauso und ich komme nicht weiter 😧

                      S 1 Reply Last reply Reply Quote 0
                      • S
                        stevie77 @Alex6879 last edited by

                        @Alex6879 Welches Problem? Bei mir läuft alles, siehe Importdaten, die ich etwas früher gepostet hatte.

                        1 Reply Last reply Reply Quote 0
                        • O
                          Olaf42 @loni78 last edited by

                          @loni78
                          Hallo. Ist das Problem "kurz grün, dann gelb" gelöst? Ich habe das auch mit einem S10Pro.
                          VG

                          E 1 Reply Last reply Reply Quote 0
                          • E
                            ecki945 @Olaf42 last edited by ecki945

                            Eigentlich sollte es ja nicht so schwer sein, aber es funktioniert bei mir nicht. 😕

                            Der Modbus Adapter ist richtig eingerichtet und grün; bringt auch alle 2 Sekunden neue Werte:

                            4d9570b3-6817-4762-a896-f1b243d7271e-grafik.png

                            Das Script habe ich eingebunden:

                            // Aufteilung der Datenpunkte mit doppelten Informationen
                            
                            // Aufteilung "Autarkie und Eigenverbrauch in Prozent"
                            var id = 'modbus.0.holdingRegisters.40082_Autarkie_Eigenverbrauch';
                            createState('e3dc.modbus.Autarkie');
                            createState('e3dc.modbus.Eigenverbrauch');
                            on(id, function (obj) {
                                 setState('e3dc.modbus.Autarkie', (obj.state.val >> 8) & 0xFF, true);
                                 setState('e3dc.modbus.Eigenverbrauch', obj.state.val & 0xFF, true);
                                 console.log(obj.state.val);
                            });
                            
                            // Aufteilung "Modbus Firmware Version"
                            var id1 = 'modbus.0.holdingRegisters.40002_Modbus_Firmware';
                            createState('e3dc.modbus.MajorVersion');
                            createState('e3dc.modbus.MinorVersion');
                            on(id1, function (obj1) {
                                 setState('e3dc.modbus.MajorVersion', (obj1.state.val >> 8) & 0xFF, true);
                                 setState('e3dc.modbus.MinorVersion', obj1.state.val & 0xFF, true);
                            });
                            
                            // EMS
                            var id2 = 'modbus.0.holdingRegisters.40085_EMS_Status';
                            createState('e3dc.modbus.Ladesperre');
                            createState('e3dc.modbus.Entladesperre');
                            createState('e3dc.modbus.NotstrommodusMoeglich');
                            createState('e3dc.modbus.WetterbasiertesLaden');
                            createState('e3dc.modbus.Abregelstatus');
                            on(id2, function (obj2) {
                                 setState('e3dc.modbus.Ladesperre', (obj2.state.val >> 1) & 0xFF, true);
                                 setState('e3dc.modbus.Entladesperre', (obj2.state.val >> 2) & 0xFF, true);/*
                                 setState('e3dc.modbus.NotstrommodusMoeglich', (obj2.state.val >> 3) & 0xFF, true);
                                 setState('e3dc.modbus.WetterbasiertesLaden', (obj2.state.val >> 4) & 0xFF, true);
                                 setState('e3dc.modbus.Abregelstatus', (obj2.state.val >> 5) & 0xFF, true);  */
                            });
                            
                            

                            Doch es werden "nur" Werte vom Skipt für Autarkie und Eigenverbrauch aktualisiert.

                            683b2a04-97cc-4263-8ebd-6c6c2f3ec3ed-grafik.png
                            Hat wer eine Idee?

                            E A 2 Replies Last reply Reply Quote 0
                            • E
                              ecki945 @ecki945 last edited by ecki945

                              ..............

                              1 Reply Last reply Reply Quote 0
                              • A
                                ArnoD @ecki945 last edited by

                                @ecki945 sagte in [HowTo][Anleitung] Integration und Visualisierung des S10 Hauskraftwerks von E3DC in ioBroker:

                                Doch es werden "nur" Werte vom Skipt für Autarkie und Eigenverbrauch aktualisiert.

                                Wenn sich am Wert vom Register 40002 nichts ändert, wird auch nichts aktualisiert. Einfach einmal manuell überschreiben.

                                1 Reply Last reply Reply Quote 0
                                • E
                                  ecki945 last edited by

                                  Danke @ArnoD hat geklappt. Zu dem von @andre geposteten Script auf github habe ich noch ne Frage:

                                  Laut der E3DC Modbus Doku ist die Codierung im Wert EMS-Status wie folgt aufgebaut:

                                  16463c10-6726-4fa2-8da1-1d4b5c38e7bc-grafik.png

                                  Bit 0 = Ladesperre
                                  Bit 1 = Entladesperre, ....

                                  Wenn nun wie im Script von @andre

                                      setState('adapterdatenpunkte.modbus.Ladesperre', (obj.state.val >> 1) & 0xFF, true);
                                      setState('adapterdatenpunkte.modbus.Entladesperre', (obj.state.val >> 2) & 0xFF, true);
                                  

                                  Der Wert vom Modbus übertragene Wert des EMS-Status 1 Bit nach Rechts geschoben wird, ist doch die Information über die Ladesperre und Entladesperre nicht mehr vorhanden bzw es wird das falsche Bit ausgewertet.

                                  Müsste es nicht so implementiert sein:

                                       setState('e3dc.modbus.Ladesperre', (obj.state.val) & 0x01, true);
                                       setState('e3dc.modbus.Entladesperre', (obj.state.val>> 1) & 0x01, true);
                                  

                                  Oder hab ich wieder nen Denkfehler?

                                  1 Reply Last reply Reply Quote 0
                                  • G
                                    gebbi last edited by

                                    @olaf42
                                    Stehen Speicher und IoBroker im gleichen Subnetz? E3DC erlaubt als "Feature" keine Kommunikation von Modbus über Subnetze, hatte das gleiche Problem und ich habe mein IoBroker VM eine VLAN im IOT Netz gegeben wo der Speicher steht, dann klappt es.

                                    M 1 Reply Last reply Reply Quote 0
                                    • M
                                      Musik231 @gebbi last edited by

                                      Hi,

                                      ich würde mir gern einen Datenpunkt erstellen (PVGesamt) welcher die Summe aus dem Positiven Wert des Zusatzwechselrichters (wird wie weiter vorn per Script *-1 genommen) und der PV-Leistung bildet, Quasi die Gesamte PV-Leistung der Anlage.
                                      Kann da jemand helfen?

                                      Gruß

                                      A 2 Replies Last reply Reply Quote 0
                                      • A
                                        ArnoD @Musik231 last edited by ArnoD

                                        @musik231
                                        Da musst du nur den Wert "modbus.0.holdingRegisters.40068_PV_Leistung" mit dem Wert "modbus.0.holdingRegisters.40076_Zusaetzliche_Einspeiser_Leistung" zusammenzählen.
                                        Naturlich musst du dabei beachten das beim Regiester 40076 immer negative Werte angezeigt werden, also diesen Wert in eine positive Zahl vorher mit Math.abs() umwandeln.

                                        1 Reply Last reply Reply Quote 1
                                        • A
                                          ArnoD @Musik231 last edited by

                                          @musik231
                                          Wenn du ein Beispiel benötigst wie man das Programmieren kann, dann sieh dir mal mein Script hier an:
                                          https://forum.iobroker.net/topic/32976/e3dc-hauskraftwerk-steuern

                                          In dem Script mache ich genau das was du suchst.

                                          M 1 Reply Last reply Reply Quote 1
                                          • M
                                            Musik231 @ArnoD last edited by

                                            @arnod
                                            Vielen lieben Dank

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            856
                                            Online

                                            31.7k
                                            Users

                                            79.7k
                                            Topics

                                            1.3m
                                            Posts

                                            34
                                            136
                                            30601
                                            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