NEWS
Test Adapter luxtronik2 v0.4.x
-
@unclesam said in Test Adapter luxtronik2 v0.1.x:
@snowboarder2611 sagte in Test Adapter luxtronik2 v0.1.x:
wie geht es eigentlich mit den sehr vielen Meldungen im Log weiter?
Ich habe vor, in zwei bis drei Wochen einen neuen Release zu machen - im Moment komme ich urlaubsbedingt (Familie) kaum zum programmieren und habe gerade noch ein anderes grosses Projekt, das nächste Woche raus muss.
Hoffentlich kannst du dann das Problem mit den Hängern lösen. Heute war es bei mir mal wieder soweit.
-
Heute habe ich Version 0.2.0 freigegeben. Sie sollte alle aktuell bekannten Probleme lösen und hoffentlich nicht allzu viele neue hinzufügen .
Hier das Changelog der aktuellen Version:
- Breaking Change: Fehlerspeicher and Abschaltungen are now each a single state with a JSON object as a value.
- Fixed SelectHandler to create an object of type number.
- Added all missing states that are now available from the latest luxtronik2 module.
- Added watchdog for for both ports. It will restart the adapter if not receiving data after 3 retries.
- No longer deleting state values but setting them to null if the value is unknown.
- Fixed heating_operation_mode showing the wrong options.
-
@unclesam said in Test Adapter luxtronik2 v0.2.x:
@snowboarder2611
Das mit demthresholdHeatingLimit
muss ich schauen, eventuell ist diesbezüglich in der neuen Library Version etwas gemacht worden.Ich habe heute auch die neue Version geladen. So weit läuft alles stabil. Den
thresholdHeatingLimit
lässt sich noch nicht über den Broker ändern.Aber im Log ist jetzt keine weitere Meldung mer vorhanden.
Super Adapter, vielen lieben Dank dafür.
-
@unclesam
Hi,
erst einmal vielen Dank für den Adapter. Ich bekomme die Leistung meiner Novelan nun über den Adapter + SAE in meinem SMA Sunny Home Manager 2.0 angezeigt.Allerdings häufen sich bei mir die Fehler im Log zum Adapter.
luxtronik2.0 2021-05-19 15:26:08.388 info (15703) Connecting to xxxx:8889 luxtronik2.0 2021-05-19 15:26:07.148 info (15703) Connected to ws://xxxx:8214 luxtronik2.0 2021-05-19 15:26:07.137 info (15703) Connecting to ws://xxxx:8214 luxtronik2.0 2021-05-19 15:26:07.033 info (15703) starting. Version 0.2.0 in /opt/iobroker/node_modules/iobroker.luxtronik2, node: v12.22.1, js-controller: 3.2.16 host.raspberrypi 2021-05-19 15:26:05.744 info instance system.adapter.luxtronik2.0 started with pid 15703 host.raspberrypi 2021-05-19 15:25:35.712 info Restart adapter system.adapter.luxtronik2.0 because enabled host.raspberrypi 2021-05-19 15:25:35.711 info instance system.adapter.luxtronik2.0 terminated with code 0 (NO_ERROR) luxtronik2.0 2021-05-19 15:25:35.148 info (15672) Terminated (NO_ERROR): Without reason luxtronik2.0 2021-05-19 15:25:35.147 info (15672) terminating luxtronik2.0 2021-05-19 15:25:35.137 warn (15672) Restart initiated luxtronik2.0 2021-05-19 15:25:35.137 error (15672) Didn't receive data from Lux port after 3 retries, restarting adapter
Dieser Fehler wiederholt sich genau drei Mal und dann kommt der folgende:
luxtronik2.0 2021-05-19 14:23:02.604 error (15624) Exception-Code: ERR_OUT_OF_RANGE: The value of "offset" is out of range. It must be >= 0 and <= 4. Received 8 luxtronik2.0 2021-05-19 14:23:02.603 error at TCP.onStreamRead (internal/stream_base_commons.js:188:23) luxtronik2.0 2021-05-19 14:23:02.603 error at Socket.Readable.push (_stream_readable.js:213:10) luxtronik2.0 2021-05-19 14:23:02.603 error at readableAddChunk (_stream_readable.js:272:9) luxtronik2.0 2021-05-19 14:23:02.603 error at addChunk (_stream_readable.js:297:12) luxtronik2.0 2021-05-19 14:23:02.603 error at Socket.emit (events.js:314:20) luxtronik2.0 2021-05-19 14:23:02.603 error at Luxtronik.<anonymous> (/opt/iobroker/node_modules/luxtronik2/luxtronik.js:480:41) luxtronik2.0 2021-05-19 14:23:02.603 error at Buffer.readInt32BE (internal/buffer.js:478:5) luxtronik2.0 2021-05-19 14:23:02.603 error at boundsError (internal/buffer.js:82:9) luxtronik2.0 2021-05-19 14:23:02.603 error (15624) RangeError [ERR_OUT_OF_RANGE]: The value of "offset" is out of range. It must be >= 0 and <= 4. Received 8 luxtronik2.0 2021-05-19 14:23:02.603 error (15624) uncaught exception: The value of "offset" is out of range. It must be >= 0 and <= 4. Received 8
Mache ich etwas falsch? Leider bin ich technisch nicht so versiert, dass ich die Fehler bei github melden kann.
Der Status des Adapters springt auch immer von grün, kurz auf rot und wieder zurück auf grün.So sieht meine Konfig aus:
Kann es auch am Intervall liegen?Lieben Dank vorab und viele Grüße
Michael//edit: Hab jetzt mal den Lux-Port entfernt und bislang sieht es sauber aus. Keine neuen Logs und die Leistung ist weiterhin da.
-
@lessthanmore sagte in Test Adapter luxtronik2 v0.2.x:
Hab jetzt mal den Lux-Port entfernt und bislang sieht es sauber aus. Keine neuen Logs und die Leistung ist weiterhin da.
Ja, das hätte ich dir jetzt auch vorgeschlagen. Wenn du den Port entfernst, wird er diese Daten nicht mehr abfragen. Es kann sein, dass bei dir der Luxtronik Port anders ist als hier eingestellt (z.B. 8888). Dummerweise fällt mir gerade keine einfache Art ein, das rauszufinden.
-
@unclesam said in Test Adapter luxtronik2 v0.2.x:
@lessthanmore sagte in Test Adapter luxtronik2 v0.2.x:
Hab jetzt mal den Lux-Port entfernt und bislang sieht es sauber aus. Keine neuen Logs und die Leistung ist weiterhin da.
Ja, das hätte ich dir jetzt auch vorgeschlagen. Wenn du den Port entfernst, wird er diese Daten nicht mehr abfragen. Es kann sein, dass bei dir der Luxtronik Port anders ist als hier eingestellt (z.B. 8888). Dummerweise fällt mir gerade keine einfache Art ein, das rauszufinden.
Beim Port 8888 geht er direkt auf die Bretter:
(23206) Luxtronik read error, will retry later: Error: connect ECONNREFUSED xxxx:8888
-
@lessthanmore Dumme Frage (und auch etwas eine gefährliche): hast du mal die WP neu gestartet? Eventuell hängt bei dir die Applikation, die Port 8889 bedienen sollte. Und wenn das auch nicht hilft: dann halt wirklich den Port ausschalten. Sollte ja dann zumindest der WebSocket Teil einwandfrei gehen. Einige Einstellungen wirst du halt nicht machen können.
-
@unclesam said in Test Adapter luxtronik2 v0.2.x:
@lessthanmore Dumme Frage (und auch etwas eine gefährliche): hast du mal die WP neu gestartet? Eventuell hängt bei dir die Applikation, die Port 8889 bedienen sollte. Und wenn das auch nicht hilft: dann halt wirklich den Port ausschalten. Sollte ja dann zumindest der WebSocket Teil einwandfrei gehen. Einige Einstellungen wirst du halt nicht machen können.
Hab sie gerade neugestartet, gleiches Ergebnis:
host.raspberrypi 2021-05-20 18:46:43.619 error instance system.adapter.luxtronik2.0 terminated with code 6 (UNCAUGHT_EXCEPTION) luxtronik2.0 2021-05-20 18:46:43.077 warn (4467) Terminated (UNCAUGHT_EXCEPTION): Without reason luxtronik2.0 2021-05-20 18:46:43.076 info (4467) terminating luxtronik2.0 2021-05-20 18:46:43.057 error (4467) Exception-Code: ERR_OUT_OF_RANGE: The value of "offset" is out of range. It must be >= 0 and <= 4. Received 8 luxtronik2.0 2021-05-20 18:46:43.057 error at TCP.onStreamRead (internal/stream_base_commons.js:188:23) luxtronik2.0 2021-05-20 18:46:43.057 error at Socket.Readable.push (_stream_readable.js:213:10) luxtronik2.0 2021-05-20 18:46:43.057 error at readableAddChunk (_stream_readable.js:272:9) luxtronik2.0 2021-05-20 18:46:43.057 error at addChunk (_stream_readable.js:297:12) luxtronik2.0 2021-05-20 18:46:43.057 error at Socket.emit (events.js:314:20) luxtronik2.0 2021-05-20 18:46:43.057 error at Luxtronik.<anonymous> (/opt/iobroker/node_modules/luxtronik2/luxtronik.js:480:41) luxtronik2.0 2021-05-20 18:46:43.057 error at Buffer.readInt32BE (internal/buffer.js:478:5) luxtronik2.0 2021-05-20 18:46:43.057 error at boundsError (internal/buffer.js:82:9) luxtronik2.0 2021-05-20 18:46:43.057 error (4467) RangeError [ERR_OUT_OF_RANGE]: The value of "offset" is out of range. It must be >= 0 and <= 4. Received 8 luxtronik2.0 2021-05-20 18:46:43.056 error (4467) uncaught exception: The value of "offset" is out of range. It must be >= 0 and <= 4. Received 8
Passt aber bei mir soweit. Da die WP eh nur bei Anforderung läuft, macht es bei mir keinen Sinn die Werte zu schreiben oder zu setzen. Will nur den Verbrauch im SHM 2.0 von SMA sehen und das funktioniert einwandfrei. Danke nochmal.
-
@unclesam Mal noch ein kleines Update.
Habe gerade rausgefunden, dass ich die Parameter lediglich über den luktronik Port schreiben kann. Das funktioniert auch ohne Probleme. Obwohl mein Log nun überläuft.
Alles sehr merkwürdig.
Evtl. ist die FW noch relevant: V3.82.5 (r3553). -
@lessthanmore da ich nicht weiß wie/ob man hier private Nachrichten schreiben kann:
ich habe das gleiche Setup: WP mit Luxtronik und eine PV mit SMA SHM 2.0 und nen SAE.
Ich war bisher immer der Meinung, dass ich die WP nur einbinden kann, wenn ich denn Zähler an die WP angebunden habe (also entweder über S0, Modbus oder wie auch immer). Ich verstehe daher nicht ganz wie du das mit diesem Adapter löst?
Ihren eigenen Stromverbrauch kennt die WP doch nicht und hat diesen daher auch nicht als Wert abgelegt? -
@unclesam kann ich die neue Version irgendwie drüber installieren? Oder geht nur alten Adapter löschen und dann neu installieren?
-
@chrid88 said in Test Adapter luxtronik2 v0.2.x:
@lessthanmore da ich nicht weiß wie/ob man hier private Nachrichten schreiben kann:
ich habe das gleiche Setup: WP mit Luxtronik und eine PV mit SMA SHM 2.0 und nen SAE.
Ich war bisher immer der Meinung, dass ich die WP nur einbinden kann, wenn ich denn Zähler an die WP angebunden habe (also entweder über S0, Modbus oder wie auch immer). Ich verstehe daher nicht ganz wie du das mit diesem Adapter löst?
Ihren eigenen Stromverbrauch kennt die WP doch nicht und hat diesen daher auch nicht als Wert abgelegt?So sieht es momentan bei mir aus:
Ich habe den Luxtronik Adapter mit zwei Instanzen laufen, einmal über den websocket und einmal über den luxtronik Port. Vom ersten lese ich und auf den zweiten schreibe, auch wenn der ständig neugestartet wird wegen Fehlern.
Die WP gibt mir die aktuelle Leistung (also Verbrauch) über den Parameter luxtronik2.0.Informationen.Anlagenstatus.Leistung-Ist aus.Zusätzlich habe ich den Adapter Smart Appliance Enabler laufen und bekomme somit die WP als Verbraucher im Sunny Home Manager 2.0 angezeigt.
Über SMA-EM bekomme ich die Werte vom SHM 2.0 in den ioBroker.Mit Blocky habe ich mir die drei folgenden Skripte erstellt:
Soll-Temp der WP rauf:
Sobald also WW angefordert wird (Soll-Wert - Hysterese; bei mir im Standard 48° - 6.0 K) und dementsprechend der Betriebszustand sich ändert (1. Instanz vom luxtronik Adapter), prüfe ich, ob die PV Einspeisung größer 2000 ist. Ich versuche dann den Wert der WP auf 62 zu schreiben. 12 Mal mit einer Verzögerung, da es teilweise so lange dauert, bis die Instanz am luxtronik Port neugestartet ist. 62, weil mein Ziel 60 sind. Über den Parameter luxtronik2.1.parameters.warmwater_temperature kann man ja eigentlich nur die Deckung einstellen.Soll-Temp wieder runter:
Ändert sich erneut der Betriebszustand (z. B. wenn die WP fertig mit WW ist), so prüfe ich, ob das WW über 54° liegt und wenn ja, setze ich die neue Soll-Temp auf 48°, also zurück auf meinen Standard.Prüfung:
Da natürlich die Sonne weiterscheinen kann, prüfe ich nochmal, sobald die Temp unter 55 fällt, sich also 60 - 6.0 K nähert - denn bei 54 würde die Pumpe ja erneut WW anfordern wenn nicht auf 48 gestellt - ob weiterhin genug Energie erzeugt wird. Wenn ja, setze ich den Wert erneut auf 62 (-2.0 K, wegen Deckung; zumindest glaube ich das irgendwie aus der Anleitung verstanden zu haben), so dass die Pumpe ab 54° wieder auf 62 bzw. 60 hochheizt.ABER, ich hab das vorgestern bzw. gestern erst alles eingerichtet und es sollte noch ausgiebig getestet werden.
Ich schaue mal, ob oder wie man private Nachricht schreib und schreibe dich an.
-
@unclesam Ist es eigentlich möglich den watchdog für den Luxtronik Port zu deaktivieren?
-
@lessthanmore danke für die ausführliche Rückmeldung. Die Regelung habe ich etwas simpler gelöst.
Das Leistung-ist Feld gibts leider bei meiner wp nicht.
Daher muss ich wohl dann doch über s0 gehen. -
@lessthanmore welche Version des Adapters hast du? Der Fehler sollte behoben sein.
-
@chrid88 Sollte wie bei jedem anderen Adapter auch gehen mit drüber installieren.
-
@unclesam Mal wieder ein kleines Update. Hatte den watchdog für den LuxPort deaktiviert, aber gesehen, dass der config.luxPort gar nicht gesetzt wird und es auch kein "Connected to" - Statement gibt.
Hab es nun wie folgt geändert:... createLuxtronikConnection(host, port) { if (!this.config.luxPort) } <-- Geändert return; } this.log.info(`Connecting to ${host}:${port}`); this.log.info(`Connected to ${host}:${port}`); <-- Hinzugefügt; sieht besser aus wenn auch nur als Info. Für alles andere reicht mein "Wissen" nicht -.- ...
Etwas weiter später ist mir aufgefallen, warum der Adapter ständig neustartet für den LuxPort.
Der Failcounter wird nicht zurückgesetzt.
Habe es wie folgt geändert:... requestAllContect() { this.wsFailCounter = 0; this.luxFailCounter = 0; <-- Hinzugefügt ...
Watchdog läuft nun für beide Ports, ich kann direkt auf den luxport schreiben bzw. auf dessen Parameter, da die Instanz nicht ständig neustartet. Läuft prima.
So sieht mein Log aus nach guten fünf Minuten:
luxtronik2.0 2021-05-23 20:54:30.653 info (14926) Connected to 10.0.1.23:8889 luxtronik2.0 2021-05-23 20:54:30.653 info (14926) Connecting to 10.0.1.23:8889 luxtronik2.0 2021-05-23 20:54:29.451 info (14926) Connected to ws://10.0.1.23:8214 luxtronik2.0 2021-05-23 20:54:29.440 info (14926) Connecting to ws://10.0.1.23:8214
Jetzt kann ich die Wiederholungen in Blocky endlich entfernen
Und nur noch eine Instanz aktiv.Wundert mich aber, warum ich der einzige bin, der die restarts hatte und Meldungen bekommen hat.
/edit: Gerade deine Frage gesehen. Adapterversion 0.2.0.
-
@chrid88 Darf ich fragen wie du die Regelung bei dir hast?
Habe eben nochmal getestet und gesehen, dass ich mit dem Warmwasser nicht höher als 59° komme, da vorher die max. Vorlauftemperatur von 66° erreicht wird.
Habe die WW-Temperatur jetzt bei 55° wenn die Sonne scheint. Sollte auch passen.
Welche Firmware hast du auf der WP (habe meine gerade eben auf den neusten Stand gebracht)?
Ich sehe bei mir die Leistung auch im Webinterface. -
@lessthanmore sagte in Test Adapter luxtronik2 v0.2.x:
@unclesam Mal wieder ein kleines Update. Hatte den watchdog für den LuxPort deaktiviert, aber gesehen, dass der config.luxPort gar nicht gesetzt wird
Was meinst du mit "gar nicht gesetzt wird"? Das ist die Konfigurationsvariable, die aus dem Admin-GUI kommt.
und es auch kein "Connected to" - Statement gibt.
Hab es nun wie folgt geändert:... createLuxtronikConnection(host, port) { if (!this.config.luxPort) } <-- Geändert return; } this.log.info(`Connecting to ${host}:${port}`); this.log.info(`Connected to ${host}:${port}`); <-- Hinzugefügt; sieht besser aus wenn auch nur als Info. Für alles andere reicht mein "Wissen" nicht -.- ...
Lustige Lösung: wenn die Verbindung nicht klappt, dann schreibe ich einfach mal ein Log, dann sieht es so aus, als würde die Verbindung klappen...
Etwas weiter später ist mir aufgefallen, warum der Adapter ständig neustartet für den LuxPort.
Der Failcounter wird nicht zurückgesetzt.
Habe es wie folgt geändert:... requestAllContect() { this.wsFailCounter = 0; this.luxFailCounter = 0; <-- Hinzugefügt ...
requestAllContent()
fragt nur die Daten über den WS-Port ab. Wenn ich da den Watchdog für den Luxtronik-Port zurücksetze, dann wird der natürlich nie zuschlagen. Aber dann müsste ich gar keinen Watchdog haben!Der
luxFailCounter
wird sehr wohl zurückgesetzt:
https://github.com/UncleSamSwiss/ioBroker.luxtronik2/blob/e4048aeec8e024ee47cb5b1a130ece3de2a9acd6/src/main.ts#L183Watchdog läuft nun für beide Ports, ich kann direkt auf den luxport schreiben bzw. auf dessen Parameter, da die Instanz nicht ständig neustartet. Läuft prima.
Nein, der Watchdog für den Luxtronik Port ist nun nicht mehr aktiv. Mag prima laufen, ist aber leider überhaupt nicht die Lösung.
So sieht mein Log aus nach guten fünf Minuten:
luxtronik2.0 2021-05-23 20:54:30.653 info (14926) Connected to 10.0.1.23:8889 luxtronik2.0 2021-05-23 20:54:30.653 info (14926) Connecting to 10.0.1.23:8889 luxtronik2.0 2021-05-23 20:54:29.451 info (14926) Connected to ws://10.0.1.23:8214 luxtronik2.0 2021-05-23 20:54:29.440 info (14926) Connecting to ws://10.0.1.23:8214
Jetzt kann ich die Wiederholungen in Blocky endlich entfernen
Und nur noch eine Instanz aktiv.Wundert mich aber, warum ich der einzige bin, der die restarts hatte und Meldungen bekommen hat.
Weil bei dir etwas nicht richtig funktioniert und du nun einfach den Watchdog unterdrückst. Bei dir gibt es ein Problem mit dem Luxtronik-Port und das muss gefixt werden, nicht einfach den Watchdog unterdrücken.
/edit: Gerade deine Frage gesehen. Adapterversion 0.2.0.
OK, danke.
-
@unclesam
Ich habe ja geschrieben, dass es nicht korrekt ist, aber für mich besser aussieht. Ich hatte kein Statement gefunden "connected to" falls die Verbindung zum luxPort steht. Habe ich die übersehen?
Beim Websocket kommt ja die Meldung nach der erfolgreichen Prüfung.
https://github.com/UncleSamSwiss/ioBroker.luxtronik2/blob/e4048aeec8e024ee47cb5b1a130ece3de2a9acd6/src/main.ts#L98Das mit dem Zurücksetzen des Failcounter hatte ich übersehen, sorry.
So ganz verstehe ich es nicht, da es jetzt bei mir einwandfrei läuft. Die Verbindung zum luxPort steht ja und ich kann problemlos darauf zugreifen.
Die Frage ist nur, warum die Instanz alle paar Sekunden neustartet weil der watchdog sagt, dass die Verbindung nach drei Versuchen nicht hergestellt werden konnte (obwohl sie aktiv ist).Hatte jetzt bei requestAllContent() den luxFailCounter wieder auskommentiert und direkt geht die Instanz wieder in den Fehler und startet alle paar Sekunden neu.
Eine Idee, wie ich rausfinden kann warum?
/edit: Softwarestand meiner WP V3.85.7 (r6978)