NEWS
[Adapter] cloudfreie Auslesung von Deye-Invertern
-
@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. -
@rene55
Das war bei meinem 5k Hybrid auch so Rainer
grün aber es kamen nur seltsame statische Werte an@brandorian
was hast du denn vor? das smartmeter wird ja benötigt zum Einspeisen, damit der Deye weiss was im Haus verbraucht wird und was er liefern muss
die verlinkte Anleitung dient dazu, die Daten wie hier in Rainers Adapter mit den Microinvertern, vom Hybrid abzugreifen (Leistung, Soc, etc) , dazu benötigt man einen modbus Hardware Adapter (waveshare, oder nen ESP mit RS485 Adapter und passender Software/firmware) zum physischen Anschluss an den Deye und daneben dann den mobus Adapter in ioB zum verarbeiten -
@euro Ja, ich erinnere mich. Ich hab aber doch ein bisschen die Hoffnung, dass es doch irgendwie gehen könnte. Daher ja auch nur der "Minimaltest".
Zumal ich ja hier nicht direkt weder Modbus TCP noch Modbus RTU mache, sondern über das umgebende SolarmanPV5-Protokoll an die Daten komme. -
@euro @Rene55 er er zeigt mir hier 429496729.5 als Wert an... ist denke ich ein bisschen "unreal"
dann muss ich mich mal schlau machen wie das funktioniert. Ich möchte eigentlich nur eine visuelle Darstellung von dem was ich Selbstverbrauche, was ich verkaufe, was ich bezieh etc. Der Deye selbst zieht seine Daten für die Einspeisung ja aus den CT Klemmen bei mir.
-
@brandorian Das scheint ja völlig daneben zu sein. Ich glaube @euro hatte sowas um 1.7 angezeigt bekommen. Beides ist sicher falsch - aber meilenweit von einander entfernt.
Leider habe ich keinen Hybrid zum testen in der Nähe. -
@brandorian
dann würde eigentlich ein Hichi LEsekopf am Hauptzähler reichen
der liefert dir Einspeisung und Bezug
Für den Eigenverbrauch bräuchtest du dann noch die Werte vom Deye, entweder via shelly 3em oder du musst per modbus ran
Dann schreibst du dir ein Blockly mit Wert Einspeisungszähler JETZT minus Zählerstand vom Vorabend
und du hast alle Grössen die du aufgeführt hastinteressant sind dennoch die Daten die du vom deye bekommen könntest, bezüglich Batterie und PV
mit dem Wavshare sieht das doch auch gut machbar aus
-
habe eine Alternativlösung gefunden, welcher ich jetzt erst mal nachgehen möchte. Ich weiß nicht ob ich den Link posten darf, daher lass ich es. Die "Lösung" kann mit meinem Inverter sowie dem Seplos BMS kommunizieren, dazu kann ich sie als Docker auf meinem Server laufen lassen.... sieht für mich grade nach einer der besten Lösungen aus, da ich "nur" einen RS485 to USB Adapter mit FTDI Chip brauche.
-