NEWS
[Adapter] cloudfreie Auslesung von Deye-Invertern
-
@rene55 Ok, dann muss ich das morgen nochmal testen. Hier sind es nur noch wenige Minuten bis der Inverter abschaltet. Wo sehe ich die Uhrzeit, die der Inverter hat? Ich kann sie weder in der normalen html, noch in der config_hide.html finden.
-
@oromis Das ist das Schicksal der "Sonnenabhängigen". Im Adapter kannst du dir die Uhrzeit anzeigen lassen. Dazu musst du die Register abfragen:
Wenn er denn morgen läuft.
-
@rene55 Mit Kleinkind und Renovierung schaffe ich es irgendwie nur abends mich um ioBroker zu kümmern Schlecht für solche PV-Geschichten. Ich melde mich sobald ich es schaffe!
-
@oromis Kein Ding. Schau wie du Zeit hast. Wie erwähnt - die 0.0.7 sollte laufen. Sonst hätte ich bestimmt schon mehrere Anfragen bekommen.
-
Tante Edit:
hab jetzt mal 100 Beiträge zurück geschaut .. Thema ist ja nicht neuGuten Morgen
ich hab 3 Deye in Betrieb (2x MicroInv und ein sun5k)
Dank deines Adapters konnte ich die Microinverter sehr einfach einbinden, super Arbeitist es geplant, oder überhaupt möglich
auch die grösseren Geräte über den Weg anzubinden? Hätte noch einen sun5k-sg03-lp1 hier in Betrieb?verbunden ist er, zeigt aber irgendwelche Phantasiewerte an
allerdings zeigt die Webseite des 5k auch nach Anmeldung keine wirklichen Daten an
mfg
Stefan -
@euro Hallo Stefan, grundsätzlich wird das möglich sein. Es werden wohl andere Register bei den großen Wechselrichtern verwendet. Und hier ist das Problem - ich weiß nicht welche? Und testen kann ich es auch nicht.
Sollte jemand eine Registerbelegung für die großen und hybriden Wechselrichter haben, immer her damit.
-
@rene55 Hallo Rene, also ich habe jetzt das Ganze noch einmal ausprobiert: Wenn ich in der Fritzbox den Internetzugang für den Wechselrichter sperre, kommt definitiv der oben von mir kopierte Fehler mit "Offset Time is invalid".
Sobald ich entsperre, funktioniert es wieder.
Es ist definitiv auch die 0.0.7 installiert (zeigt es in der Instanz bei der Info an).
Die Uhrzeit des WR scheint nicht ganz zu stimmen. Sie ist rund 1:30 Min hinter der Uhrzeit in iobroker. Also um 14:04:38 hat es 14:02:58 abgerufen beim Wechselrichter bzw. als Werte in die Objekte in iobroker eingetragen.Kann ich noch genauere Logs z.B. per Kommandozeile auf meinem Rpi zum Verhalten des Adapters abrufen?
-
@oromis Das ist aber nicht so, wie gewollt! Du hast ja schon die debug-Meldungen vom Adapter aktiviert - mehr kommt da nicht.
Dass die Uhrzeit nicht exakt der Uhrzeit im Rechner entspricht liegt nach meinen Erkenntnissen daran, dass er die Uhrzeit auch nur updatet, wenn er neue Daten bereit stellt.
Ich muss mal sehen, wie ich meinem Inverter auch das Internet entziehen kann - hab hier ein unifi-Netzwerk, keine Fritzbox. -
@oromis Genau dieses Setup (SUN600G3, Internet in der Fritzbox geblockt, Adapter v0.0.7) läuft bei mir problemlos (bis auf den oben erwähnten Timeout beim Adapterstart).
Die Register für Stunde, Minute, Sekunde ließt er bei mir immer mit 0 aus. Der Wechselrichter scheint also intern die Uhrzeit gar nicht zu "zählen", sondern diese nur regelmäßig übers Internet zu beziehen. -
Ganz herzlichen Dank für eure Antworten. @crycode wie genau hast du in der Fritzbox den Internetzugang deaktiviert? Ich bin auf "Heimnetz" -> "Netzwerk" -> Dann habe ich den Wechselrichter ausgewählt und auf das Stift-Icon zum Editieren der Einstellungen geklickt und unter "Kindersicherung" habe ich dann "Internetzugang sperren" gewählt.
Die Debug-Meldungen vom Adapter hatte ich tatsächlich noch nicht aktiviert. Die Meldungen kamen lediglich im Log, weil es Fehler waren. Habe sie jetzt aktiviert und werde das Ganze demnächst nochmal beobachten.
Ich könnte auch mal versuchen die Remote-Server-Daten im WR rauszulöschen. Ich schätze mal, dass über diese Verbindung der Hersteller in China Zugriff auf den WR hat.
-
@oromis Hier die debug-Meldung, nachdem ich das Internet im Router für den WR gesperrt habe:
Ganz kurz danach (wenige Sekunden nachdem die Sperre aktiv war), hat es noch funktioniert und im WR stand bei der Remote Server Information auch noch connected.
Dann kam diese Meldung: Was ist Econnreset? Interessanterweise steht da trotzdem connected. Die Objekte in iobroker wurden allerdings um 7:41 das letzte mal aktualisiert.
deyeidc.0 2023-06-06 07:52:17.948 error Error: Offset Time is invalid deyeidc.0 2023-06-06 07:52:17.683 error Error: Offset Time is invalid deyeidc.0 2023-06-06 07:52:17.409 error Error: Offset Time is invalid deyeidc.0 2023-06-06 07:52:17.337 error Error: Offset Time is invalid deyeidc.0 2023-06-06 07:52:17.227 error Error: Offset Time is invalid deyeidc.0 2023-06-06 07:52:06.982 debug connected deyeidc.0 2023-06-06 07:52:06.971 debug try to connect . . . deyeidc.0 2023-06-06 07:46:36.985 debug Error during connection read ECONNRESET deyeidc.0 2023-06-06 07:41:06.982 debug connected deyeidc.0 2023-06-06 07:41:06.971 debug try to connect . . . deyeidc.0 2023-06-06 07:40:38.384 debug Connection to server terminated
Hier ein Screenshot, bei dem man sieht, dass ich 0.0.7 installirt habe:
-
@oromis Ich kann mir das alles auch nicht komplett erklären. Du kannst aber schon - trotz aller Sperren - den Inverter erreichen (Webinterface)?
@oromis sagte in [neuer Adapter] cloudfreie Auslesung von Deye-Invertern:
Was ist Econnreset?
Das bedeutet, dass die Verbindung zum Inverer resettet (geschlossen) wurde.
@oromis sagte in [neuer Adapter] cloudfreie Auslesung von Deye-Invertern:
Remote Server Information
Das ist die Verbindung zur China-Cloud. Hat mit dem Adapter nichts zu tun.
@crycode sagte in [neuer Adapter] cloudfreie Auslesung von Deye-Invertern:
Timeout beim Adapterstart
Das ist eigentlich auch kein Fehler, sondern nur eine falsche Bezeichnung. Ich schließe die Verbindung zum Inverter nach dem Abrufen der Daten, weil es unüblich ist, eine Verbindung zu einem Gerät länger als nötig offen zu halten,
@crycode sagte in [neuer Adapter] cloudfreie Auslesung von Deye-Invertern:
Die Register für Stunde, Minute, Sekunde ließt er bei mir immer mit 0
Das scheint auch nicht richtig zu sein. Bei mir sieht das so aus: MINUTEN
-
@oromis sagte in [neuer Adapter] cloudfreie Auslesung von Deye-Invertern:
wie genau hast du in der Fritzbox den Internetzugang deaktiviert? Ich bin auf "Heimnetz" -> "Netzwerk" -> Dann habe ich den Wechselrichter ausgewählt und auf das Stift-Icon zum Editieren der Einstellungen geklickt und unter "Kindersicherung" habe ich dann "Internetzugang sperren" gewählt.
Genau so.
Zusätzlich habe ich noch bei meinem DHCP-Server (nicht Fritzbox) eine feste IP für den Wechselrichter eingetragen. Bin mir jetzt nicht sicher, ob die Fritzbox auf die IP oder MAC filtert.@rene55 sagte in [neuer Adapter] cloudfreie Auslesung von Deye-Invertern:
Das ist eigentlich auch kein Fehler, sondern nur eine falsche Bezeichnung. Ich schließe die Verbindung zum Inverter nach dem Abrufen der Daten, weil es unüblich ist, eine Verbindung zu einem Gerät länger als nötig offen zu halten
Macht auch Sinn. Nur durch den Timeout werden direkt nach Adapterstart keine Werte bei mir ausgelesen, sondern erst beim nächsten Intervall. Stört aber auch nicht großartig, da der Adapter ja im Normalfall permanent durchläuft.
-
@rene55 Ok also jetzt scheint es bei mir auch zu tun. Absolut skurril: Ich habe noch einmal per Terminal im Rpi
iob url https://github.com/raschy/ioBroker.deyeidc
laufen lassen und dann zum Test eine 2. Instanz angelegt. Die hat dann mit abgeschaltetem Internet funktioniert. Dann habe ich noch einmal die Instanz .0 aktiviert und auf einmal funktioniert diese jetzt auch. D.h. irgendwas war an der Installation von 0.0.7 faul, obwohl es die Version als installierte Version angezeigt hat. Seltsam.
-
@oromis Super. Ich hätte auch keinen weiteren Vorschlag zur Fehlerlösung präsentieren können.
-
ok irgendwie bin ich zu doof für den Adapter....er verbindet sich mit meinem Deye Sun 12K... wird auch irgendwann von alleine Grün (vorher ist ein gelbers Dreieck).
Aber ich verstehe das mit den Modbusregister nicht... ich habe eine Tabelle vor mir mit den Modbusregistern: https://docs.google.com/document/d/16ueZEg0hcXgPp_ZPw5fu6FO1BmCn0gfq/edit
(ich hoffe der link ist ok)was muss ich da jetzt bei Regel und Key eingeben? Name ist ja Freitext, Einheit ist auch klar. Faktor ebenso.
Kann mir da vielleicht jemand helfen?
-
@brandorian
es geht mit den Hybriden nicht
die können kein modbus TCP, nur RTU
d.h. du musst per Hardware Modbus an den Deye ranhatte es ja auch vor, scheint aber definitiv nicht zu gehen
siehe z.B. hier -
@brandorian Ich habe wenig Erfahrung mit den "großen" Invertern. Wie hast du denn die Verbindung zum Inverter hergestellt. Du sagtes, der Adapter wäre ja grün.
-
-
@brandorian Dann versuchen wir es doch mal:
In den Registern sollte als Start z.B. 40, beim Ende eine 90 drin stehen.
Bei den "Spulen" sollte { "register": 86,"rules": 3,"key": "Apo_t1","name": "Total AC Output Power (Active)","unit": "W","factor": 1 } eingetragen sein.
Hier sollte dann (nach dem nächsten Interval) die aktuell erzeugte Leistung in den Objekten angezeigt werden. Wenn das nicht das richtige Ergebnis bringt müssen wir @euro folgen, und einen anderen Weg suchen.