Skip to content
  • Home
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. JavaScript
  5. E3DC Hauskraftwerk steuern

NEWS

  • Monatsrückblick Januar/Februar 2026 ist online!
    BluefoxB
    Bluefox
    18
    1
    774

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    18
    1
    6.2k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    1.5k

E3DC Hauskraftwerk steuern

Scheduled Pinned Locked Moved JavaScript
3.6k Posts 72 Posters 1.7m Views 64 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • S stevie77

    @arnod sagte in E3DC Hauskraftwerk steuern:

    Wenn alles nicht funktioniert bleibt nur require('fs').promises gegen require('fs'); zu tauschen oder einfach const fsw verwenden. Dann kann aber await nicht verwendet werden und muss in Zeile 880 gelöscht werden.
    Die Zeile 880 sieht dann so aus:
    fsw.writeFile(sPfadE3DC , string)
    Das gleiche in Zeile 896:
    let data = fsw.readFile(sPfadE3DC, 'utf8')

    Jetzt habe ich eine Variante gefunden, die durchläuft:

    //***************************************************************************************************
    //************************************ Deklaration Variablen ****************************************
    //***************************************************************************************************
    const fsw = require('fs');
    
    	// String in Datei e3dc.config.txt schreiben
        try{
            fsw.writeFileSync(sPfadE3DC, string)
            console.log('-==== E3DC Config Datei gespeichert! ====-');
    
        try{
            let data = fsw.readFileSync(sPfadE3DC, 'utf8')
            data = data.replace(/\n/g, " ");
    

    Das hatte ich jetzt eher zufällig bei der Funktion writelog() abgeguckt, dort wird auch die synchronisierte Variante aufgerufen: fsw.writeFileSync(sLogPath, string );
    Laufe ich damit in irgendwelche Probleme? Werde gleich mal testen, ob auch die richtigen Werte geschrieben und gelesen werden...

    S Offline
    S Offline
    stevie77
    wrote on last edited by
    #1072

    @stevie77 sagte in E3DC Hauskraftwerk steuern:

    Laufe ich damit in irgendwelche Probleme? Werde gleich mal testen, ob auch die richtigen Werte geschrieben und gelesen werden...

    Werte schreiben und lesen klappt so. Yippiehh, endlich läuft das wieder. :-) Bei zukünftigen Updates muss ich dann halt diese drei Code-Stellen immer mergen, aber das geht ja...

    A 1 Reply Last reply
    0
    • S stevie77

      @stevie77 sagte in E3DC Hauskraftwerk steuern:

      Laufe ich damit in irgendwelche Probleme? Werde gleich mal testen, ob auch die richtigen Werte geschrieben und gelesen werden...

      Werte schreiben und lesen klappt so. Yippiehh, endlich läuft das wieder. :-) Bei zukünftigen Updates muss ich dann halt diese drei Code-Stellen immer mergen, aber das geht ja...

      A Offline
      A Offline
      ArnoD
      wrote on last edited by
      #1073

      @stevie77

      Mich würde nur interessieren, warum es bei dir nicht funktioniert.
      Was mir noch eingefallen ist, hast du nach dem Update von Node.js einmal den Befehl "npm rebuild" ausgeführt?

      Probleme wirst du ohne fs promises nicht haben.

      S 1 Reply Last reply
      0
      • GlasfaserG Glasfaser

        @arnod

        liegt es eventuell an dem

        const fs = require('fs').promises;

        hier war so ein ähliches Problem :

        https://forum.iobroker.net/topic/42638/überführung-funktionierendes-node-js-script/

        A Offline
        A Offline
        ArnoD
        wrote on last edited by
        #1074

        @glasfaser
        Wenn es nicht bei allen anderen funktionieren würde, hätte ich das auch vermutet.
        Es funktioniert bei mir einwandfrei, kann es aber natürlich auch ohne Promises programmieren.
        Werde mir das ganze für die nächste Version mal ansehen, da gibt es ja verschiedene Möglichkeiten dasselbe Ergebnis zu erreichen. fs promises war halt nur die einfachste. :-)

        1 Reply Last reply
        0
        • A ArnoD

          @stevie77

          Mich würde nur interessieren, warum es bei dir nicht funktioniert.
          Was mir noch eingefallen ist, hast du nach dem Update von Node.js einmal den Befehl "npm rebuild" ausgeführt?

          Probleme wirst du ohne fs promises nicht haben.

          S Offline
          S Offline
          stevie77
          wrote on last edited by
          #1075

          @arnod sagte in E3DC Hauskraftwerk steuern:

          npm rebuild

          Habe ich jetzt mal ausgeführt (hat einiges kompiliert), den originalen Skriptstand eingeführt: Hilft leider nichts.

          1 Reply Last reply
          0
          • TbsJahT Offline
            TbsJahT Offline
            TbsJah
            wrote on last edited by TbsJah
            #1076

            Hallo zusammen,
            eventuell hat jemand Interesse daran.

            RSCPGui bietet die Möglichkeit die Daten per MQTT per Gui und per Console zu liefern
            Mit der nachstehenden Möglichkeit werden die Daten per MQTT per Service vom E3DC an den MQTT Adapter von iobroker geliefert.
            Letztendlich ähnlich zu dem Autostart von dem Prog von Eba

            @smartboart hatte (sehr) viel weiter oben schon erklärt wie der Autostart mit Screen von der Gui Version möglich ist
            Hier die Consolen Variante

            RSCPGui von hier laden github
            Wichtig ist das Ihr den Branch testin3 verwendet. Der Master Branch scheint einen Bug zu haben.

            Entpacken und auf /home/pi ablegen
            Ich nutze hierfür Filezilla -kann aber natürlich auch mit der git clone - make Variante erfolgen

            per Console in das erstellte RSCPGui Verzeichnis navigieren und die requirements installieren

            cd RSCPGui
            pip3 install -r requirements.txt
            

            Danach die rscpe3dc.conf.ini anpassen . Was so aussehen könnte

            [Login]
            username = email@gmail.com
            password = @245245245234524352345234524352345
            address = 192.xxx.xxx.xxx
            rscppassword = @KJHSKFBÖKJBEF
            seriennummer = S10-123456789
            websocketaddr = wss://s10.e3dc.com/ws
            connectiontype = direkt
            autoupdate = 30
            
            [Export]
            csv = False
            csvfile = 
            json = False
            jsonfile = 
            mqtt = True
            mqttbroker = 192.xxx.xxx.xxx
            mqttport = 1883
            mqttqos = 0
            mqttretain = False
            mqttsub = False
            mqttusername = 
            mqttpassword = @
            mqttzertifikat = 
            mqttinsecure = False
            influx = False
            influxhost = localhost
            influxport = 8086
            influxdatenbank = 
            influxtimeout = 1
            influxname = rscpgui
            http = False
            httpurl = https://pv.pincrushers.de/rscpgui
            intervall = 30
            paths = E3DC/INFO_DATA/INFO_SERIAL_NUMBER
            pathnames = E3DC/INFO_DATA/INFO_SERIAL_NUMBER|E3DC/INFO_DATA/INFO_SERIAL_NUMBER
            

            Natürlich könnte ihr auch die Ini von der Exe verwenden. Dann ist es aber wichtig das die Segmente nach [Export] gelöscht werden.

            Somit wäre das Programm bereits manuell per console startbar.

            python3 main.py -c -e -v INFO
            

            Um das Prog automatisch im Hintergrund laufen zu lassen müsst ihr noch folgendes einstellen
            Config Datei für systemd erstellen

            sudo nano /lib/systemd/system/myscript.service
            

            Nachstehenden Text eingeben

            [Unit]
            Description=My Script Service
            After=multi-user.target
            
            [Service]
            Type=idle
            ExecStart=/usr/bin/python3 /home/pi/RSCP/main.py -c -e
            WorkingDirectory=/home/pi/RSCP
            
            User=pi
            
            [Install]
            WantedBy=multi-user.target
            

            Berechtigung setzen

            sudo chmod 644 /lib/systemd/system/myscript.service
            

            systemd aktualisieren

            sudo systemctl daemon-reload
            sudo systemctl enable myscript.service
            

            Neustarten

            sudo reboot
            

            Ergebnis sollte dann, wenn alle Adapter gestartet sind, so aussehen

            ad5b7940-2954-4224-b1cb-f078c4a0e214-image.png

            1 Reply Last reply
            1
            • TbsJahT Offline
              TbsJahT Offline
              TbsJah
              wrote on last edited by TbsJah
              #1077

              Anstelle des services ist es einfacher es analog zu dem Aufruf von Eba zu machen

              Console öffnen
              In das RSCP Verzeichnis navigieren und eine RSCP.sh erstellen

              pi@raspberrypi:~ $ cd RSCP
              pi@raspberrypi:~/RSCP $ sudo nano RSCP.sh
              

              Aufruf eingeben

              
              #!/bin/bash
              cd /home/pi/RSCP
              echo "RSCP wird gestartet"
              while true;
              do
              python3 main.py -c -e -v INFO
              sleep 30
              done
              

              Ausführbar machen

              chmod +x RSCP.sh
              

              Autostarteintrag

              sudo nano /etc/rc.local
              
              

              Text ergänzen

              su pi -c "screen -dmS E3DC /home/pi/E3DC-Control/E3DC.sh" &
              su pi /home/pi/RSCP/RSCP.sh &
              

              Neustart und freuen

              A 1 Reply Last reply
              0
              • TbsJahT TbsJah

                Anstelle des services ist es einfacher es analog zu dem Aufruf von Eba zu machen

                Console öffnen
                In das RSCP Verzeichnis navigieren und eine RSCP.sh erstellen

                pi@raspberrypi:~ $ cd RSCP
                pi@raspberrypi:~/RSCP $ sudo nano RSCP.sh
                

                Aufruf eingeben

                
                #!/bin/bash
                cd /home/pi/RSCP
                echo "RSCP wird gestartet"
                while true;
                do
                python3 main.py -c -e -v INFO
                sleep 30
                done
                

                Ausführbar machen

                chmod +x RSCP.sh
                

                Autostarteintrag

                sudo nano /etc/rc.local
                
                

                Text ergänzen

                su pi -c "screen -dmS E3DC /home/pi/E3DC-Control/E3DC.sh" &
                su pi /home/pi/RSCP/RSCP.sh &
                

                Neustart und freuen

                A Offline
                A Offline
                ArnoD
                wrote on last edited by
                #1078

                @tbsjah
                Super Anleitung, Danke.
                Wenn das auch mit einer iobroker Installation auf der Synology im Docker Container funktioniert, wäre das super :-)

                Werde das am Wochenende mal testen.
                Hatte es bereits einmal versucht, jedoch ohne Erfolg.

                M 1 Reply Last reply
                0
                • TbsJahT Offline
                  TbsJahT Offline
                  TbsJah
                  wrote on last edited by TbsJah
                  #1079

                  Kleine Aktualisierung
                  Aufruf per rc.local oder service war recht instabil über längere Laufzeit.

                  crontab hat sich für mich als am stabilsten erwiesen.

                  die RSCP.sh sieht dadurch etwas anders aus

                  #!/bin/bash
                  cd /home/pi/RSCP/
                  echo "RSCP wird gestartet" 
                  #while true;
                  #do
                  python3 /home/pi/RSCP/main.py -c -e &
                  sleep 15
                  PID=$!
                  kill $PID
                  exit 0
                  

                  Einrichten cron

                  sudo crontab -e
                  

                  Aufruf RSCP.sh jede Minute

                  */1 * * * * cd /home/pi/RSCP/ && /home/pi/RSCP/RSCP.sh &
                  
                  C 1 Reply Last reply
                  0
                  • TbsJahT TbsJah

                    Kleine Aktualisierung
                    Aufruf per rc.local oder service war recht instabil über längere Laufzeit.

                    crontab hat sich für mich als am stabilsten erwiesen.

                    die RSCP.sh sieht dadurch etwas anders aus

                    #!/bin/bash
                    cd /home/pi/RSCP/
                    echo "RSCP wird gestartet" 
                    #while true;
                    #do
                    python3 /home/pi/RSCP/main.py -c -e &
                    sleep 15
                    PID=$!
                    kill $PID
                    exit 0
                    

                    Einrichten cron

                    sudo crontab -e
                    

                    Aufruf RSCP.sh jede Minute

                    */1 * * * * cd /home/pi/RSCP/ && /home/pi/RSCP/RSCP.sh &
                    
                    C Offline
                    C Offline
                    ChrisChros
                    wrote on last edited by
                    #1080

                    @tbsjah Welcher Mehrwert ergibt sich denn daraus wenn man RSCPGui nutzt?

                    TbsJahT 1 Reply Last reply
                    0
                    • A ArnoD

                      @tbsjah
                      Super Anleitung, Danke.
                      Wenn das auch mit einer iobroker Installation auf der Synology im Docker Container funktioniert, wäre das super :-)

                      Werde das am Wochenende mal testen.
                      Hatte es bereits einmal versucht, jedoch ohne Erfolg.

                      M Offline
                      M Offline
                      Matis
                      wrote on last edited by
                      #1081

                      @arnod Hallo! Wenn du das auf der Synology hinbekommst wäre ich dir sehr dankbar für eine DAU-sichere Doku. Ich hab mir schon den Wolf probiert. Console brachte nur errors und GUI nur ein DisplayX Problem.
                      Die RSCP Daten in iobroker zu bekommen auf der gleichen Syno wäre absolut Spitze!

                      A 1 Reply Last reply
                      0
                      • M Matis

                        @arnod Hallo! Wenn du das auf der Synology hinbekommst wäre ich dir sehr dankbar für eine DAU-sichere Doku. Ich hab mir schon den Wolf probiert. Console brachte nur errors und GUI nur ein DisplayX Problem.
                        Die RSCP Daten in iobroker zu bekommen auf der gleichen Syno wäre absolut Spitze!

                        A Offline
                        A Offline
                        ArnoD
                        wrote on last edited by
                        #1082

                        @matis
                        hört sich ja nicht gut an 🤔
                        Hoffe das ich es dann hinbekomme :-)

                        1 Reply Last reply
                        0
                        • A Offline
                          A Offline
                          ArnoD
                          wrote on last edited by
                          #1083

                          @tbsjah
                          Was hast du eigentlich in der mqtt Instanz eingestellt?
                          Kannst du da zwei Bilder von den Einstellungen hier einstellen.

                          TbsJahT 1 Reply Last reply
                          0
                          • C ChrisChros

                            @tbsjah Welcher Mehrwert ergibt sich denn daraus wenn man RSCPGui nutzt?

                            TbsJahT Offline
                            TbsJahT Offline
                            TbsJah
                            wrote on last edited by
                            #1084

                            @chrischros Wesentlich mehr Informationen.
                            Zum Beispiel den Solar Wert oder die Informationen zu den Batterien

                            1 Reply Last reply
                            0
                            • A ArnoD

                              @tbsjah
                              Was hast du eigentlich in der mqtt Instanz eingestellt?
                              Kannst du da zwei Bilder von den Einstellungen hier einstellen.

                              TbsJahT Offline
                              TbsJahT Offline
                              TbsJah
                              wrote on last edited by
                              #1085

                              @arnod 3e5e2945-539a-47d0-9726-0bcdda47956a-image.png

                              e945d3f1-82ba-48b9-ae7a-78fd9b37a000-image.png

                              A 1 Reply Last reply
                              0
                              • C Offline
                                C Offline
                                Chilihead
                                wrote on last edited by
                                #1086

                                schaut ja interessant aus; heißt das dann wir würden rscpgui nutzen anstatt Eba?

                                Gibts über rspgui/mqtt auch die Möglichkeit entladen zu sperren?
                                Hab ne Openwb mit mehreren Wallboxen laufen und würde gern vermeiden das die Wallbox(en) abends für das min. laden die Batterie leerziehen.

                                A 1 Reply Last reply
                                0
                                • C Chilihead

                                  schaut ja interessant aus; heißt das dann wir würden rscpgui nutzen anstatt Eba?

                                  Gibts über rspgui/mqtt auch die Möglichkeit entladen zu sperren?
                                  Hab ne Openwb mit mehreren Wallboxen laufen und würde gern vermeiden das die Wallbox(en) abends für das min. laden die Batterie leerziehen.

                                  A Offline
                                  A Offline
                                  ArnoD
                                  wrote on last edited by
                                  #1087

                                  @chilihead sagte in E3DC Hauskraftwerk steuern:

                                  heißt das dann wir würden rscpgui nutzen anstatt Eba?

                                  Das sind zwei unterschiedliche Tools.
                                  rscpgui liest nur Werte vom E3DC aus, dafür aber sehr detailliert.

                                  TbsJahT C 2 Replies Last reply
                                  0
                                  • TbsJahT TbsJah

                                    @arnod 3e5e2945-539a-47d0-9726-0bcdda47956a-image.png

                                    e945d3f1-82ba-48b9-ae7a-78fd9b37a000-image.png

                                    A Offline
                                    A Offline
                                    ArnoD
                                    wrote on last edited by ArnoD
                                    #1088

                                    @tbsjah
                                    Danke.

                                    Habe allerdings schon Problem mir das testin3 Branch mit git clone zu holen.
                                    Werde mich heute mal damit beschäftigen.

                                    Komme irgendwie nicht weiter.
                                    git clone https://github.com/rxhan/RSCPGui.git funktioniert.
                                    git clone -branch testin3 https://github.com/rxhan/RSCPGui.git bringt mir immer die Fehlermeldung
                                    fatal: Repository 'testin3' existiert nicht.

                                    TbsJahT 1 Reply Last reply
                                    0
                                    • A ArnoD

                                      @chilihead sagte in E3DC Hauskraftwerk steuern:

                                      heißt das dann wir würden rscpgui nutzen anstatt Eba?

                                      Das sind zwei unterschiedliche Tools.
                                      rscpgui liest nur Werte vom E3DC aus, dafür aber sehr detailliert.

                                      TbsJahT Offline
                                      TbsJahT Offline
                                      TbsJah
                                      wrote on last edited by
                                      #1089

                                      @arnod said in E3DC Hauskraftwerk steuern:

                                      @chilihead sagte in E3DC Hauskraftwerk steuern:

                                      heißt das dann wir würden rscpgui nutzen anstatt Eba?

                                      Das sind zwei unterschiedliche Tools.
                                      rscpgui liest nur Werte vom E3DC aus, dafür aber sehr detailliert.

                                      Nicht ganz richtig :)
                                      Tool kann auch werte zurückschreiben

                                      A 1 Reply Last reply
                                      0
                                      • A ArnoD

                                        @tbsjah
                                        Danke.

                                        Habe allerdings schon Problem mir das testin3 Branch mit git clone zu holen.
                                        Werde mich heute mal damit beschäftigen.

                                        Komme irgendwie nicht weiter.
                                        git clone https://github.com/rxhan/RSCPGui.git funktioniert.
                                        git clone -branch testin3 https://github.com/rxhan/RSCPGui.git bringt mir immer die Fehlermeldung
                                        fatal: Repository 'testin3' existiert nicht.

                                        TbsJahT Offline
                                        TbsJahT Offline
                                        TbsJah
                                        wrote on last edited by
                                        #1090

                                        @arnod said in E3DC Hauskraftwerk steuern:

                                        @tbsjah
                                        Danke.

                                        Habe allerdings schon Problem mir das testin3 Branch mit git clone zu holen.
                                        Werde mich heute mal damit beschäftigen.

                                        Komme irgendwie nicht weiter.
                                        git clone https://github.com/rxhan/RSCPGui.git funktioniert.
                                        git clone -branch testin3 https://github.com/rxhan/RSCPGui.git bringt mir immer die Fehlermeldung
                                        fatal: Repository 'testin3' existiert nicht.

                                        Hatte ich auch
                                        Deswegen mit Filezilla kopiert

                                        A 1 Reply Last reply
                                        0
                                        • A ArnoD

                                          @chilihead sagte in E3DC Hauskraftwerk steuern:

                                          heißt das dann wir würden rscpgui nutzen anstatt Eba?

                                          Das sind zwei unterschiedliche Tools.
                                          rscpgui liest nur Werte vom E3DC aus, dafür aber sehr detailliert.

                                          C Offline
                                          C Offline
                                          ChrisChros
                                          wrote on last edited by
                                          #1091

                                          @arnod said in E3DC Hauskraftwerk steuern:

                                          Das sind zwei unterschiedliche Tools.
                                          rscpgui liest nur Werte vom E3DC aus, dafür aber sehr detailliert."

                                          Ergeben sich dadurch Möglichkeiten dein Skript weiter zu verbessern oder siehst du es eher als "nice to have" an?

                                          A 1 Reply Last reply
                                          0

                                          Hello! It looks like you're interested in this conversation, but you don't have an account yet.

                                          Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

                                          With your input, this post could be even better 💗

                                          Register Login
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          626

                                          Online

                                          32.8k

                                          Users

                                          82.7k

                                          Topics

                                          1.3m

                                          Posts
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Home
                                          • Recent
                                          • Tags
                                          • Unread 0
                                          • Categories
                                          • Unreplied
                                          • Popular
                                          • GitHub
                                          • Docu
                                          • Hilfe