hardware:channels:solar_inverters:deye
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
| Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung | ||
| hardware:channels:solar_inverters:deye [2023/05/17 21:55] – Git alternative hinzugefügt raptorsds | hardware:channels:solar_inverters:deye [2023/07/30 11:35] (aktuell) – duplicates erhöht raptorsds | ||
|---|---|---|---|
| Zeile 9: | Zeile 9: | ||
| Wer das WLAN nutzt sollte dringend die Firmware auf eine sicheren Stand updaten!\\ | Wer das WLAN nutzt sollte dringend die Firmware auf eine sicheren Stand updaten!\\ | ||
| [[https:// | [[https:// | ||
| - | [[https://zinnzgreen.de/service/deye-mikrowechselrichter-systemupdate/ | + | [[https://asarah.de/blogs/news/ |
| + | |||
| + | <note tip>Die Sicherheitslücke sind ab der version 1.53 geschlossen diese wird auch automatisch Verteilt\\ | ||
| + | Die Neuste Version ist 1.57 in dieser soll der "no Web-Interface" | ||
| Vielen Dank an [[https:// | Vielen Dank an [[https:// | ||
| Zeile 21: | Zeile 25: | ||
| Die zweite Lösung wird im Folgenden beschrieben. | Die zweite Lösung wird im Folgenden beschrieben. | ||
| + | |||
| + | |||
| ==== Schritt für Schritt ==== | ==== Schritt für Schritt ==== | ||
| + | |||
| + | ==== Vorbereitung ==== | ||
| * Wechselrichter über die Weboberfläche ins Netzwerk einbinden | * Wechselrichter über die Weboberfläche ins Netzwerk einbinden | ||
| Zeile 47: | Zeile 55: | ||
| * Test einer Abfrage (IP-Adresse und Zugangsdaten admin/admin an seinen Wechselrichter anpassen) | * Test einer Abfrage (IP-Adresse und Zugangsdaten admin/admin an seinen Wechselrichter anpassen) | ||
| - | | + | mi600 IP-Wechselrichter |
| + | |||
| + | |||
| + | |||
| + | ==== Möglichkeit 1 CRON ==== | ||
| * Sendescript Datei erstellen | * Sendescript Datei erstellen | ||
| Zeile 59: | Zeile 71: | ||
| #!/bin/bash | #!/bin/bash | ||
| PATH=/ | PATH=/ | ||
| - | # set -e beendet das Script wenn WR nicht erreichbar ist | + | |
| set -e | set -e | ||
| - | #Dieser Bereich zeigt die Logindaten | + | |
| - | host_pv=" | + | |
| + | host_pv=" | ||
| user=" | user=" | ||
| password=" | password=" | ||
| - | UUID1=" | + | UUID1=" |
| - | #UUID2="" | + | UUID2=" |
| - | host_db=" | + | UUID3="" |
| + | host_db=" | ||
| + | TOTAL="" | ||
| + | TOTAL_NUM="" | ||
| + | DAY="" | ||
| + | DAY_NUM=" | ||
| ACTUAL="" | ACTUAL="" | ||
| ACTUAL_NUM="" | ACTUAL_NUM="" | ||
| - | #Dieser Bereich startet die Abfrage | ||
| - | # | ||
| - | # | ||
| - | ACTUAL=$(/ | ||
| - | #Entfernung von Leerzeichen | + | #request value |
| + | ACTUAL=$(/ | ||
| + | #remove Zero in Front | ||
| ACTUAL_NUM=$(($ACTUAL)) | ACTUAL_NUM=$(($ACTUAL)) | ||
| - | #Senden der Daten An Datenbank | + | |
| + | #send database | ||
| wget -O - -q " | wget -O - -q " | ||
| - | #wget -O - -q " | ||
| - | #Anzeige der Werte in Konsole für Debug | + | |
| - | #echo 'Today:'$DAY | + | |
| + | #request value TOTAL | ||
| + | TOTAL=$(/ | ||
| + | |||
| + | #Remove end SPACE-Char | ||
| + | TOTAL_NUM=$(echo $TOTAL | sed 's/[[:space: | ||
| + | |||
| + | #check if non ZERO | ||
| + | if [ $TOTAL_NUM != " | ||
| + | #Send to DB | ||
| + | wget -O - -q " | ||
| + | fi | ||
| + | |||
| + | |||
| + | #DAY ENERGY | ||
| + | # | ||
| + | # | ||
| + | #wget -O - -q " | ||
| + | |||
| + | #debug for console | ||
| + | #echo ' | ||
| #echo ' | #echo ' | ||
| + | #echo ' | ||
| </ | </ | ||
| | | ||
| - | < | + | < |
| + | Für den Kanal Leistung kann Auflösung " | ||
| - | Dieses Script sendet nur die aktuelle Leistung an die Middleware, bereits vorbereitet ist alternativ/ | + | Dieses Script sendet nur die aktuelle Leistung an die Middleware, bereits vorbereitet ist alternativ/ |
| Zeilen mit "#" | Zeilen mit "#" | ||
| Zeile 105: | Zeile 143: | ||
| Die Weboberfläche hat eine sehr langsame Aktualisierungsrate daher sollte der Cronjob nur alle 3 oder 5 Minuten laufen. | Die Weboberfläche hat eine sehr langsame Aktualisierungsrate daher sollte der Cronjob nur alle 3 oder 5 Minuten laufen. | ||
| + | |||
| + | ==== Möglichkeit 2 VZlogger mit Exec ==== | ||
| + | |||
| + | Nachteile Vzlogger darf nicht als root laufen --> umstellung vzlogger siehe [[software: | ||
| + | |||
| + | |||
| + | * Sendescript Datei erstellen | ||
| + | - Manuelle erstellen < | ||
| + | - alternativ git clone < | ||
| + | |||
| + | |||
| + | |||
| + | * darin folgenden Inhalt hinzufügen/ | ||
| + | |||
| + | <code base bash | deye_read_exec.sh.sh> | ||
| + | |||
| + | #!/bin/bash | ||
| + | PATH=/ | ||
| + | |||
| + | #set -e / set -u stop scripts if something is wrong | ||
| + | set -e | ||
| + | set -u | ||
| + | |||
| + | # Script: deye_read_exec.sh | ||
| + | # Author: Tobias Baumann aka RaptorSDS | ||
| + | # License: MIT | ||
| + | # with help of OpenAI GPT-3.5 and VZlogger Group | ||
| + | # idee by script for KOSTAL_Pico JSON VZlogger exec | ||
| + | |||
| + | # Function to display script usage | ||
| + | usage() { | ||
| + | echo " | ||
| + | exit 1 | ||
| + | } | ||
| + | |||
| + | # Validate required arguments | ||
| + | if [ " | ||
| + | usage | ||
| + | fi | ||
| + | |||
| + | # Extract hostname | ||
| + | HOSTNAME=" | ||
| + | shift | ||
| + | |||
| + | # Extract readings | ||
| + | READINGS=" | ||
| + | |||
| + | user=" | ||
| + | password=" | ||
| + | |||
| + | # Request values based on input readings | ||
| + | for READING in $READINGS; do | ||
| + | if [ " | ||
| + | ACTUAL=$(/ | ||
| + | #Remove end SPACE-Char | ||
| + | ACTUAL_NUM=$(($ACTUAL)) | ||
| + | OUTPUT=" | ||
| + | printf "%s = %s\n" " | ||
| + | elif [ " | ||
| + | TOTAL=$(/ | ||
| + | ##Remove end SPACE-Char | ||
| + | TOTAL_NUM=$(echo " | ||
| + | OUTPUT=" | ||
| + | if [ $TOTAL_NUM == " | ||
| + | printf "%s = %s\n" " | ||
| + | else | ||
| + | printf "%s = %s\n" " | ||
| + | fi | ||
| + | elif [ " | ||
| + | DAY=$(/ | ||
| + | ##Remove end SPACE-Char | ||
| + | DAY_NUM=$(echo " | ||
| + | OUTPUT=" | ||
| + | printf "%s = %s\n" " | ||
| + | else | ||
| + | echo " | ||
| + | fi | ||
| + | done | ||
| + | </ | ||
| + | |||
| + | < | ||
| + | Bitte Zugangsdaten, | ||
| + | </ | ||
| + | < | ||
| + | Der Script hat folgende Config | ||
| + | </ | ||
| + | |||
| + | |||
| + | * speichern und ausführbar machen | ||
| + | < | ||
| + | |||
| + | |||
| + | * man kann nun zb nach /etc/deye/ kopiernen oder ander gut erkennbare Orte | ||
| + | |||
| + | |||
| + | * Kanal Erstellen im Fronend | ||
| + | |||
| + | |||
| + | * vzlogger.conf editieren oder erstellen mit folgendem Inhalt | ||
| + | |||
| + | |||
| + | < | ||
| + | { | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | { | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | }, | ||
| + | { | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | } | ||
| + | ], | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | } | ||
| + | </ | ||
| + | <note important> | ||
| + | |||
| + | |||
| + | * vzlogger neu starten | ||
hardware/channels/solar_inverters/deye.1684353321.txt.gz · Zuletzt geändert: von raptorsds