NEWS
E3DC Hauskraftwerk steuern
-
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 VarianteRSCPGui 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 erfolgenper 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 erstellensudo 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
-
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 erstellenpi@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
-
@tbsjah
Super Anleitung, Danke.
Wenn das auch mit einer iobroker Installation auf der Synology im Docker Container funktioniert, wäre das superWerde das am Wochenende mal testen.
Hatte es bereits einmal versucht, jedoch ohne Erfolg. -
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 &
-
@tbsjah Welcher Mehrwert ergibt sich denn daraus wenn man RSCPGui nutzt?
-
@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! -
@matis
hört sich ja nicht gut an
Hoffe das ich es dann hinbekomme -
@tbsjah
Was hast du eigentlich in der mqtt Instanz eingestellt?
Kannst du da zwei Bilder von den Einstellungen hier einstellen. -
@chrischros Wesentlich mehr Informationen.
Zum Beispiel den Solar Wert oder die Informationen zu den Batterien -
-
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. -
@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. -
@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. -
@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 -
@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 -
@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?
-
Erstmal nice to have da ich es nicht wirklich benötige. Jedenfalls jetzt noch nicht.
-
@tbsjah sagte in E3DC Hauskraftwerk steuern:
Tool kann auch werte zurückschreiben
Ja stimmt, die Einstellungen die im E3DC Menü möglich sind können auch über rscpgui geändert werden.
Es ist aber keine Steuerung möglich wie mit Eba seinem Programm.
Einige Werte haben wir bereits über Modbus und einige wären interessant zum Anzeigen im iobroker, z.B die der Batterien. -
@tbsjah
Kannst du mal bitte bei dir nachsehen welche Python und Pip3 Versionen bei dir installiert sind.
pip3 --version
zeigt bei mir folgende Ausgabe an:
pip 18.1 from /usr/lib/python3/dist-packages/pip (python 3.7)
und
python --version
Python 2.7.16
und
python3 -V
Python 3.7.3Wenn ich den Paketmanager starte, wird er mit einigen Fehler beendet.
Vermute das ich alte Versionen habe, die nicht kompatibel sind. -
@arnod aber ich könnte mit rscpgui die Entladesperren schreiben, richtig? Mit Eba hab ich mich dahingehend noch nicht beschäftigt. rscpgui also Windows Programm kann es ja.
Wäre für mich aktuell die einzige nützliche Funktion.