NEWS
[Adapter] cloudfreie Auslesung von Deye-Invertern
-
@fichte Wenn du das gestern bzw. heute vor 17:30 neu gemacht hast, hat das für die LoggerSN (die du mir eben gezeigt hast) keine Auswirkung. Try it again, please.
Hatte nur noch einen Fehler
Und welcher Fehler war das?
-
@rene55 Den hier, aber alles gut, AAdapter ist grün und hat schon leistung vom Logger geholt...

-
@fichte Ja super. Dass heißt, auch Logger mit Seriennummer < 400xxx können hiermit arbeiten .?!
-
-
@rene55 Ach mist Sorry ich meine die 391493xxx habe ich genommen... :man-facepalming: nicht die 2xxxxx
-
Aktuelle Version 0.1.0. Veröffentlichungsdatum 14.03.2023 Github Link https://github.com/raschy/ioBroker.deyeidc Neuer Adapter für cloudfreie Auslesung von Mikro-Wechselrichtern aus dem Hause Deye
Dieser Adapter ermöglicht es, Daten aus einem Wechselrichter im lokalen Netzwerk auszulesen. Diese Daten werden über die bekannten Modbus-Ports abgerufen und in den Datenpunkten gespeichert. Dies wurde an einem "Deye-kompatiblen" Mikro-Wechselrichter entwickelt und getestet. Die abzufragenden Register können daher bei anderen Modellen abweichen. Hierfür muss lediglich die IP des Wechselrichters und die Seriennummer des Loggers eingegeben werden. Falls der Port vom Standardwert abweicht, kann dieser ebenfalls angepasst werden. Als praktikabler Wert für die Abtastrate sind 60 Sekunden voreingestellt. Dieser Adapter soll all den jenigen entgegen kommen, die mit der SolarmanPV App nicht oder nur ungerne (China-Cloud) arbeiten wollen.
Was muss gemacht werden: unter Einstellungen mindestens die lokale IP des Inverters und die Seriennummer des Loggers (fängt meistens mit 4xxxx an) eintragen.
Im nachfolgenden Tab Register das erste und letzte Register eintragen, welches abgefragt werden soll. Hier sind mehrere Zeilen möglich, um die nicht benötigten oder unsinnigen Register zu überspringen. Voreingestellt sind hier die Register 59 - 90.
In einem weiteren Tab Spulen werden die tatsächlichen Register eingestellt. Hier ist beispielhaft das Register 86 voreingestellt. In diesem Register befindet sich der 'Total AC Output Power (Active)' der im Datenpunkt 'Apo_t1' abgelegt wird. Um diesen richtig auszulesen wird die Regel 3 angewandt, die Einheit soll 'W' sein und der Faktor ist 1. Weitere Register zähle ich später noch auf (für Einsteiger, die die Register nicht kennen, gibt es auf github https://github.com/raschy/ioBroker.deyeidc/blob/main/deyeidc.MI600.json ein Beispiel) .
Im letzten Tab Berechnen können die Werte berechnet werden, die der Wechselrichter selbst nicht liefert.
Beispielsweise ist hier ein Muster vorgegeben, welches die Modulleistung eines Inverter-MPPTs berechnet.
Hierzu wird das Produkt aus der Spannung und dem Strom berechnet, und dann im entsprechenden Datenpunkt abgelegt. (Funktioniert natürlich nur, wenn man zuvor die Daten für DV1 und DC1 abgeholt hat).
Seit Version 0.0.5 müssen die Compute-Vorgaben überarbeitet werden. Waren hier in den älteren Versionen zwei Felder für eine Multiplikation vorgesehen, müssen jetzt die beiden Werte, aus denen etwas errechnet werden soll in einem Feld stehen mit der passenden Berechnungsvorschrift. Das heißt, wenn man wie bisher die Leistung eines Moduls aus Spannung und Strom berechnen möchte, schreibt man in das Feld Value "DV1*DC1" rein. Alles andere ist unverändert. Als Feature kann man jetzt den Spannungsunterschied zwischen den zwei Modulen berechnen "DV1-DV2" (Nur für den, den es interessiert).Seit dem 25.08.2023 ist der Adapter nun in der Version 0.0.9 in das ioBroker-Repository aufgenommen worden. Anschließend wurde noch etwas bereinigt und für die Aufnahme ins stable vorbereitet. In diesem Stadium bekam ich den Hinweis, dass wohl die 32-bit-Werte falsch berechnet würden. Das hab ich dann (leider ohne viel zu prüfen) in die Version 0.0.10 übernommen. Schnell musste ich feststellen, dass alle damit berechneten 32-bit-Werte falsch waren. Also, zur 'Schadensminimierung', die aktuelle Version 0.0.11 hinterhergeschoben.
Zwischenzeitlich wurde ja auch das Relais von Deye ausgeliefert und bei einigen schon integriert. Danach gab es einige Telegramme mehr, die hier ausgetauscht wurden. Das wurde dann in den Versionen 0.0.12 bis 0.0.14 angepasst.Ab der Version 0.0.15, wurde das Rechenmodul etwas überarbeitet. Es prüft jetzt die Eingaben ab, ob der in der Berechnung verwendete Datenpunkt überhaupt existiert. Wenn nicht gibt es eine Warnung. Gelegentlich Verbindungsprobelme sollten in der jetzt aktuellen Version 0.1.0 auch gefixt sein.
Der Adapter ist jetzt in einer Phase, die gerne von Euch weiter getestet und kommentiert werden darf/soll. Auch soll es wohl möglich sein, große und Hybridwechselrichter über diesen Adapter auszulesen. Hier müssen halt nur die richtigen Register ausgewählt werden. Daher wäre es schön, wenn Rückmeldungen auch hierzu kämen.
Viel Spaß.
@rene55
Frage: Ist geplant, den Adapter in den "normalen" Updateprozess zu überführen? Ich meine, dass er unter ADAPTER dann als verfügbares Update erscheint.Ich nutze noch die 0.0.1, die - zumindest für meine Anforderungen - stabil läuft. Vermutlich müsste ich derzeit via github aktualisieren, sehe dazu aber im Moment keine Notwendigkleit.
Danke und einen schönen Sonntag
VG Peter -
@rene55
Frage: Ist geplant, den Adapter in den "normalen" Updateprozess zu überführen? Ich meine, dass er unter ADAPTER dann als verfügbares Update erscheint.Ich nutze noch die 0.0.1, die - zumindest für meine Anforderungen - stabil läuft. Vermutlich müsste ich derzeit via github aktualisieren, sehe dazu aber im Moment keine Notwendigkleit.
Danke und einen schönen Sonntag
VG Peter -
Der Adapter funktioniert super bei mir, vielen Dank für die Umsetzung!
Ein kleines Problem hab ich aber noch. Wenn sich der WR abschaltet (=Keine Sonne mehr da), dann bleiben die letzten Werte einfach bestehen.
Sprich eigentlich liefert die PV-Anlage aktuell nichts mehr, bei Total AC Output Power (Active) stehen aber noch z.B. 10W drin. Das führt in der Visualisierung zu Verwirrung. Könnte das vom Adapter geregelt werden (evtl. mit konfigurierbarem Timeout in der Config?) Oder bin ich der Einzige mit dieser Problematik? -
Der Adapter funktioniert super bei mir, vielen Dank für die Umsetzung!
Ein kleines Problem hab ich aber noch. Wenn sich der WR abschaltet (=Keine Sonne mehr da), dann bleiben die letzten Werte einfach bestehen.
Sprich eigentlich liefert die PV-Anlage aktuell nichts mehr, bei Total AC Output Power (Active) stehen aber noch z.B. 10W drin. Das führt in der Visualisierung zu Verwirrung. Könnte das vom Adapter geregelt werden (evtl. mit konfigurierbarem Timeout in der Config?) Oder bin ich der Einzige mit dieser Problematik? -
Der Adapter funktioniert super bei mir, vielen Dank für die Umsetzung!
Ein kleines Problem hab ich aber noch. Wenn sich der WR abschaltet (=Keine Sonne mehr da), dann bleiben die letzten Werte einfach bestehen.
Sprich eigentlich liefert die PV-Anlage aktuell nichts mehr, bei Total AC Output Power (Active) stehen aber noch z.B. 10W drin. Das führt in der Visualisierung zu Verwirrung. Könnte das vom Adapter geregelt werden (evtl. mit konfigurierbarem Timeout in der Config?) Oder bin ich der Einzige mit dieser Problematik? -
Habe heute vom Händler ein neues Gerät bekommen und auch gleich eingebunden. Scheint soweit zu funktionieren. Als ich fertig war die Sonne aber schon um die Ecke und die beiden Module haben nur 21,xV geliefert.
Ich habe dann die neue IP Adresse in den Adapter eingetragen. Leider wird dieser nicht grün. Wenn ich die IP:8899 nehme, sagt auch die Browser Webseite "nicht erreichbar".
Wenn ich nur die IP verwende, kommt das hier und wenn ich die URL von Achim Bäcker seinem Skript nehme ( http://admin:admin@IP/status.html ), kommen nur Striche. Kann jetzt leider keinen Screenshot mehr machen, weil der WR schon in den Schlaf Modus gegangen ist.
Was hat es denn mit dem Port 8899 auf sich? Woher stammt die Info. Habe ich noch nirgends gelesen.
Im Grund so:
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
-
Habe heute vom Händler ein neues Gerät bekommen und auch gleich eingebunden. Scheint soweit zu funktionieren. Als ich fertig war die Sonne aber schon um die Ecke und die beiden Module haben nur 21,xV geliefert.
Ich habe dann die neue IP Adresse in den Adapter eingetragen. Leider wird dieser nicht grün. Wenn ich die IP:8899 nehme, sagt auch die Browser Webseite "nicht erreichbar".
Wenn ich nur die IP verwende, kommt das hier und wenn ich die URL von Achim Bäcker seinem Skript nehme ( http://admin:admin@IP/status.html ), kommen nur Striche. Kann jetzt leider keinen Screenshot mehr machen, weil der WR schon in den Schlaf Modus gegangen ist.
Was hat es denn mit dem Port 8899 auf sich? Woher stammt die Info. Habe ich noch nirgends gelesen.
Im Grund so:
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
@jb_sullivan Die Port-Nummer 8899 ist der Standardwert, der nach meinem Wissen bei allen Invertern so vorgegeben ist. Die meisten Mitentwickler (sei es für Standalone-Python-Scripte oder auch für Homeassistant) benutzen den auch. Ich denke (ungetestet) dass der Port über 'Internal server parameters setting' auf der Unterseite <IP>/config_hide.html eingestellt werden kann.
Wenn du die Seite 'http://admin:admin@IP/status.html' aufrufst siehst du nur Striche, diese Seite wird von Achim Baecker bzw. seinem Script ausgewertet.
Prüfe morgen nochmal die IP-Adresse.Was hat denn der Händler gesagt? Montagsproduktion?
-
@jb_sullivan Die Port-Nummer 8899 ist der Standardwert, der nach meinem Wissen bei allen Invertern so vorgegeben ist. Die meisten Mitentwickler (sei es für Standalone-Python-Scripte oder auch für Homeassistant) benutzen den auch. Ich denke (ungetestet) dass der Port über 'Internal server parameters setting' auf der Unterseite <IP>/config_hide.html eingestellt werden kann.
Wenn du die Seite 'http://admin:admin@IP/status.html' aufrufst siehst du nur Striche, diese Seite wird von Achim Baecker bzw. seinem Script ausgewertet.
Prüfe morgen nochmal die IP-Adresse.Was hat denn der Händler gesagt? Montagsproduktion?
@rene55 sagte in [neuer Adapter] cloudfreie Auslesung von Deye-Invertern:
Was hat denn der Händler gesagt? Montagsproduktion?
Angeblich ein Einzelfall. Er hat nach seiner Aussage schon 500 DEYE 600 verkauft und ich wäre der erste wo sowas passiert ist. Im PV Forum hingegen, wird das gleiche oder ähnliche Fehlerbild in ~ 600 Beiträge beschrieben.
-
@rene55 sagte in [neuer Adapter] cloudfreie Auslesung von Deye-Invertern:
Was hat denn der Händler gesagt? Montagsproduktion?
Angeblich ein Einzelfall. Er hat nach seiner Aussage schon 500 DEYE 600 verkauft und ich wäre der erste wo sowas passiert ist. Im PV Forum hingegen, wird das gleiche oder ähnliche Fehlerbild in ~ 600 Beiträge beschrieben.
@jb_sullivan man darf halt nicht vergessen wie viele tausend Wechselrichter davon verkauft werden. Ich denke es ist wirklich ein Einzelfall der zwar bei einigen auftritt aber in Summe halt doch nur bei wenigen. Einfach Pech
@Rene55 Bei dem anderen Adapter gibt es noch ein Feld Signal Strength. Kann ich das hierrüber auch abfragen? Ich habe nun ein Modul (dort wo auch der Wechselrichter) dran geschraubt ist an den endgültigen Platz gebracht). Stand bisher erstmal nur auf der Terrasse.
-
@jb_sullivan man darf halt nicht vergessen wie viele tausend Wechselrichter davon verkauft werden. Ich denke es ist wirklich ein Einzelfall der zwar bei einigen auftritt aber in Summe halt doch nur bei wenigen. Einfach Pech
@Rene55 Bei dem anderen Adapter gibt es noch ein Feld Signal Strength. Kann ich das hierrüber auch abfragen? Ich habe nun ein Modul (dort wo auch der Wechselrichter) dran geschraubt ist an den endgültigen Platz gebracht). Stand bisher erstmal nur auf der Terrasse.
-
@medea Ich denk mal drüber nach. Woran sollte ich das festmachen? An der Uhrzeit? Am Sonnenuntergang? Nach 17 mal "connection false"?
@Pi-ter Keine Frage, das funktioniert. Hab ich aktuell tatsächlich auch so, allerdings nur zum abgleichen mit den Daten vom Wechselrichter. Der WR liefert ja alle relevanten Daten, daher würde ich das nicht noch mit Hardware erschlagen wollen.
@rene55
Ja, sowas in der Richtung, ich habe bei mir aktuell einen Workaround per Skript geschaffen, der die Werte nach 5min ohne Connection nullt. -
@Pi-ter Keine Frage, das funktioniert. Hab ich aktuell tatsächlich auch so, allerdings nur zum abgleichen mit den Daten vom Wechselrichter. Der WR liefert ja alle relevanten Daten, daher würde ich das nicht noch mit Hardware erschlagen wollen.
@rene55
Ja, sowas in der Richtung, ich habe bei mir aktuell einen Workaround per Skript geschaffen, der die Werte nach 5min ohne Connection nullt.@medea sagte in [neuer Adapter] cloudfreie Auslesung von Deye-Invertern:
@Pi-ter Keine Frage, das funktioniert. Hab ich aktuell tatsächlich auch so, allerdings nur zum abgleichen mit den Daten vom Wechselrichter. Der WR liefert ja alle relevanten Daten, daher würde ich das nicht noch mit Hardware erschlagen wollen.
Nach meiner Erfahrung, und nach dem, was ich auch hier im Forum gelesen habe, erscheinen mir die Werte des WR im Vergleich zur DECT200 zu ungenau und auch zeitlich versetzt. Ob man das dann mit Hardware erschlagen möchte, ist sicher eine Glaubensfrage. Genau wie die nach der Genauigkeit der Werte.
Die Frage, die ich mir gestellt habe bei dem Problem:
Geht denn die (bei Dir 10W) angezeigte Leistung in den täglichen Betrag mit ein und verfälscht diesen? Oder ist es vielleicht so, dass dies der letzte Werte der aktuellen Solarleistung ist kurz bevor der WR schlafen geht und somit den Datenpunkt nicht mehr aktualisieren kann? Dann wäre es ja tatsächlich nur ein Problem mit dem Diagramm, welches eben halt nicht auf Null geht.VG Peter
-
Ist es richtig, das der Cloud Free Adapter derzeit nur einen Datenpunkt ( deyeidc.0.SN.Apo_t1 ) liefert? Die angezeigte Leistung stimmt zwar mit der des Web Interface überein, aber mehr DP`s gibt es (bei mir) derzeit nicht.