NEWS
Test Adapter OpenDTU
-
Hallo
Seit dem ich einen 2. HM800 zusätzlich an die OpenDTU angeschlossen habe bekomme ich diese Meldung auf dem Raspberry4B mit IObroker im Log.opendtu.0 2024-03-13 19:42:43.270 error Parameter "id" needs to be of type "string" but type "object" has been passed opendtu.0 2024-03-13 19:42:43.268 error Error: Parameter "id" needs to be of type "string" but type "object" has been passed at Validator.assertString (/opt/iobroker/node_modules/@iobroker/js-controller-adapter/build/lib/adapter/validator.js:169:19) at Opendtu.extendObject (/opt/iobroker/node_modules/@iobroker/js-controller-adapter/build/lib/adapter/adapter.js:2053:31) at /opt/iobroker/node_modules/@iobroker/js-controller-common/build/lib/common/tools.js:2022:16 at new Promise (<anonymous>) at Opendtu.extendObjectAsync (/opt/iobroker/node_modules/@iobroker/js-controller-common/build/lib/common/tools.js:2021:16) at DataController.processInverterData (/opt/iobroker/node_modules/iobroker.opendtu/lib/dataController.js:26:36) at runNextTicks (node:internal/process/task_queues:60:5) at process.processImmediate (node:internal/timers:447:9) opendtu.0 2024-03-13 19:42:43.263 error unhandled promise rejection: Parameter "id" needs to be of type "string" but type "object" has been passed opendtu.0 2024-03-13 19:42:43.262 error Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). opendtu.0 2024-03-13 19:42:41.946 info Connect to OpenDTU over websocket connection. opendtu.0 2024-03-13 19:42:41.601 info starting. Version 1.0.1 in /opt/iobroker/node_modules/iobroker.opendtu, node: v18.19.1, js-controller: 5.0.19
Der Adapter wird rot und startet nicht mehr.
Bei Host wird " Probleme mit häufig abstürzenden Adapterinstanzen" angezeigt.Hat jemand eine Idee wie ich dieses Problem beheben kann?
Gruß G.Hawk
-
@g-hawk sagte in Test Adapter OpenDTU:
Hat jemand eine Idee wie ich dieses Problem beheben kann?
Keine zwei Wechselrichter an eine openDTU fummeln. Da wird schon seitens openDTU von abgeraten, weil das nämlich zu solch 'seltsamem' Verhalten führt.
-
@thomas-braun
Ach so, also bau ich mir den Kasten dann nochmal für dem 2. Wechselrichter?
Ich war irgendwie der Meinung dass manche Leute sogar vier Wechselrichtet an einer DTU betreiben. -
Was Leute tun und was das für Fehler bewirkt...
-
@g-hawk sagte in Test Adapter OpenDTU:
an die OpenDTU angeschlossen
@G-Hawk was heißt denn "angeschlossen"? das geht doch nur über Funk?
@Thomas-Braun sagte in Test Adapter OpenDTU
Keine zwei Wechselrichter an eine openDTU fummeln. Da wird schon seitens openDTU von abgeraten, weil das nämlich zu solch 'seltsamem' Verhalten führt.
@Thomas-Braun wo steht das denn? Ich betreibe eine OpenDTU mit zwei Wechselrichtern (HMS-400-1T und HMS-1600-4T) das funktioniert völlig reibungslos..... oder habe ich da was missverstanden?
Das Log sieht für mich eher nach Bug im OpenDTU-Adapter aus, der mit der 1.0.1 ein paar strukturelle Änderungen vornehmen musste da sich das API der OpenDTU kürzlich massiv verändert hat....
-
da kannst du ja recht haben! Ich betreibe an einer opendtu-Instanz das Projekt - "openDTUonBatterie",
Nach dem Firmwareupdate auf die letzte Release vom 07.03.2024, stürzte die Opendtu.1 Instanz ab. Seltsamerweise lief bis gestern noch eine alte Version vom November 2023 ohne Probleme.
2024-03-13 21:31:38.134 - info: sonoff.0 (19940) Client [Wetterstation] connected with secret 1710361898131_6093 2024-03-13 21:31:49.502 - info: javascript.0 (24695) script.js.common.GasrechnerNeu: update ausgefuehrt fuer nummer 2 ID hm-rega.0.10422 ---schedule 0 5 31 2 * 2024-03-13 21:32:25.441 - info: sonoff.0 (19940) Client [Wetterstation] connection closed: closed 2024-03-13 21:33:49.513 - info: javascript.0 (24695) script.js.common.GasrechnerNeu: update ausgefuehrt fuer nummer 2 ID hm-rega.0.10422 ---schedule 0 5 31 2 * 2024-03-13 21:34:54.770 - info: admin.0 (21819) ==> Connected system.user.admin from ::ffff:192.168.1.146 2024-03-13 21:34:57.439 - info: host.raspberrypi Updating repository "beta" under "http://download.iobroker.net/sources-dist-latest.json" 2024-03-13 21:35:49.505 - info: javascript.0 (24695) script.js.common.GasrechnerNeu: update ausgefuehrt fuer nummer 2 ID hm-rega.0.10422 ---schedule 0 5 31 2 * 2024-03-13 21:36:15.777 - info: admin.0 (21819) <== Disconnect system.user.admin from ::ffff:192.168.1.146 2024-03-13 21:36:18.315 - info: admin.0 (21819) ==> Connected system.user.admin from ::ffff:192.168.1.146 2024-03-13 21:36:20.850 - info: host.raspberrypi Updating repository "beta" under "http://download.iobroker.net/sources-dist-latest.json" 2024-03-13 21:37:41.464 - info: admin.0 (21819) <== Disconnect system.user.admin from ::ffff:192.168.1.146 2024-03-13 21:37:49.511 - info: javascript.0 (24695) script.js.common.GasrechnerNeu: update ausgefuehrt fuer nummer 2 ID hm-rega.0.10422 ---schedule 0 5 31 2 * 2024-03-13 21:39:49.552 - info: javascript.0 (24695) script.js.common.GasrechnerNeu: update ausgefuehrt fuer nummer 2 ID hm-rega.0.10422 ---schedule 0 5 31 2 * 2024-03-13 21:42:19.518 - info: javascript.0 (24695) script.js.common.GasrechnerNeu: update ausgefuehrt fuer nummer 2 ID hm-rega.0.10422 ---schedule 0 5 31 2 * 2024-03-13 21:44:19.516 - info: javascript.0 (24695) script.js.common.GasrechnerNeu: update ausgefuehrt fuer nummer 2 ID hm-rega.0.10422 ---schedule 0 5 31 2 * 2024-03-13 21:45:11.274 - info: rflink.0 (20083) disconnected 2024-03-13 21:45:13.280 - info: rflink.0 (20083) Serial port opened 2024-03-13 21:45:14.210 - info: rflink.0 (20083) Connected 2024-03-13 21:46:19.516 - info: javascript.0 (24695) script.js.common.GasrechnerNeu: update ausgefuehrt fuer nummer 2 ID hm-rega.0.10422 ---schedule 0 5 31 2 * 2024-03-13 21:47:24.292 - info: host.raspberrypi "system.adapter.opendtu.1" enabled 2024-03-13 21:47:24.598 - info: host.raspberrypi instance system.adapter.opendtu.1 started with pid 16597 2024-03-13 21:47:27.783 - info: opendtu.1 (16597) starting. Version 1.0.1 in /opt/iobroker/node_modules/iobroker.opendtu, node: v18.19.0, js-controller: 5.0.19 2024-03-13 21:47:28.070 - info: opendtu.1 (16597) Connect to OpenDTU over websocket connection. 2024-03-13 21:47:42.703 - info: opendtu.1 (16597) Connect to OpenDTU over websocket connection. 2024-03-13 21:47:47.577 - info: sourceanalytix.0 (20851) Updating SourceAnalytix configuration for : opendtu.1.total.yieldtotal 2024-03-13 21:48:19.510 - info: javascript.0 (24695) script.js.common.GasrechnerNeu: update ausgefuehrt fuer nummer 2 ID hm-rega.0.10422 ---schedule 0 5 31 2 * 2024-03-13 21:48:40.607 - error: opendtu.1 (16597) Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). 2024-03-13 21:48:40.609 - error: opendtu.1 (16597) unhandled promise rejection: Cannot read properties of null (reading 'inverters') 2024-03-13 21:48:40.611 - error: opendtu.1 (16597) TypeError: Cannot read properties of null (reading 'inverters') at Opendtu.processMessage (/opt/iobroker/node_modules/iobroker.opendtu/main.js:185:21) at WebSocket. (/opt/iobroker/node_modules/iobroker.opendtu/main.js:164:18) at WebSocket.emit (node:events:529:35) at Receiver.receiverOnMessage (/opt/iobroker/node_modules/iobroker.opendtu/node_modules/ws/lib/websocket.js:1192:20) at Receiver.emit (node:events:517:28) at Receiver.dataMessage (/opt/iobroker/node_modules/iobroker.opendtu/node_modules/ws/lib/receiver.js:560:14) at Receiver.getData (/opt/iobroker/node_modules/iobroker.opendtu/node_modules/ws/lib/receiver.js:478:17) at Receiver.startLoop (/opt/iobroker/node_modules/iobroker.opendtu/node_modules/ws/lib/receiver.js:167:22) at Receiver._write (/opt/iobroker/node_modules/iobroker.opendtu/node_modules/ws/lib/receiver.js:93:10) at writeOrBuffer (node:internal/streams/writable:392:12) 2024-03-13 21:48:40.611 - error: opendtu.1 (16597) Cannot read properties of null (reading 'inverters') 2024-03-13 21:48:40.621 - info: opendtu.1 (16597) terminating 2024-03-13 21:48:40.623 - warn: opendtu.1 (16597) Terminated (UNCAUGHT_EXCEPTION): Without reason 2024-03-13 21:48:41.120 - info: opendtu.1 (16597) terminating 2024-03-13 21:48:41.257 - error: host.raspberrypi instance system.adapter.opendtu.1 terminated with code 6 (UNCAUGHT_EXCEPTION) 2024-03-13 21:48:41.258 - info: host.raspberrypi Restart adapter system.adapter.opendtu.1 because enabled 2024-03-13 21:49:11.371 - info: host.raspberrypi instance system.adapter.opendtu.1 started with pid 18108 2024-03-13 21:49:14.397 - info: opendtu.1 (18108) starting. Version 1.0.1 in /opt/iobroker/node_modules/iobroker.opendtu, node: v18.19.0, js-controller: 5.0.19 2024-03-13 21:49:14.645 - info: opendtu.1 (18108) Connect to OpenDTU over websocket connection. 2024-03-13 21:49:15.478 - info: sourceanalytix.0 (20851) Updating SourceAnalytix configuration for : opendtu.1.total.yieldtotal 2024-03-13 21:49:20.649 - error: opendtu.1 (18108) Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). 2024-03-13 21:49:20.651 - error: opendtu.1 (18108) unhandled promise rejection: Cannot read properties of null (reading 'inverters') 2024-03-13 21:49:20.656 - error: opendtu.1 (18108) TypeError: Cannot read properties of null (reading 'inverters') at Opendtu.processMessage (/opt/iobroker/node_modules/iobroker.opendtu/main.js:185:21) at WebSocket. (/opt/iobroker/node_modules/iobroker.opendtu/main.js:164:18) at WebSocket.emit (node:events:529:35) at Receiver.receiverOnMessage (/opt/iobroker/node_modules/iobroker.opendtu/node_modules/ws/lib/websocket.js:1192:20) at Receiver.emit (node:events:517:28) at Receiver.dataMessage (/opt/iobroker/node_modules/iobroker.opendtu/node_modules/ws/lib/receiver.js:560:14) at Receiver.getData (/opt/iobroker/node_modules/iobroker.opendtu/node_modules/ws/lib/receiver.js:478:17) at Receiver.startLoop (/opt/iobroker/node_modules/iobroker.opendtu/node_modules/ws/lib/receiver.js:167:22) at Receiver._write (/opt/iobroker/node_modules/iobroker.opendtu/node_modules/ws/lib/receiver.js:93:10) at writeOrBuffer (node:internal/streams/writable:392:12) 2024-03-13 21:49:20.657 - error: opendtu.1 (18108) Cannot read properties of null (reading 'inverters') 2024-03-13 21:49:20.675 - info: opendtu.1 (18108) terminating 2024-03-13 21:49:20.677 - warn: opendtu.1 (18108) Terminated (UNCAUGHT_EXCEPTION): Without reason 2024-03-13 21:49:21.174 - info: opendtu.1 (18108) terminating 2024-03-13 21:49:21.328 - error: host.raspberrypi instance system.adapter.opendtu.1 terminated with code 6 (UNCAUGHT_EXCEPTION) 2024-03-13 21:49:21.329 - info: host.raspberrypi Restart adapter system.adapter.opendtu.1 because enabled 2024-03-13 21:49:51.504 - info: host.raspberrypi instance system.adapter.opendtu.1 started with pid 18665 2024-03-13 21:49:54.698 - info: opendtu.1 (18665) starting. Version 1.0.1 in /opt/iobroker/node_modules/iobroker.opendtu, node: v18.19.0, js-controller: 5.0.19 2024-03-13 21:49:55.018 - info: opendtu.1 (18665) Connect to OpenDTU over websocket connection. 2024-03-13 21:49:56.554 - info: sourceanalytix.0 (20851) Updating SourceAnalytix configuration for : opendtu.1.total.yieldtotal 2024-03-13 21:50:19.512 - info: javascript.0 (24695) script.js.common.GasrechnerNeu: update ausgefuehrt fuer nummer 2 ID hm-rega.0.10422 ---schedule 0 5 31 2 *
-
@chris299
Nenn es meinetwegen verbunden oder angelernt, aber ich könnte mir fast vorstellen, dass du trotzdem weißt was gemeint ist. -
@chris299 sagte in Test Adapter OpenDTU:
wo steht das denn? Ich betreibe eine OpenDTU mit zwei Wechselrichtern (HMS-400-1T und HMS-1600-4T) das funktioniert völlig reibungslos..... oder habe ich da was missverstanden?
Ich hab mich da glaube ich vertan. Ging wohl um zwei openDTUs parallel. Das sorgte für Trouble, wenn ich mich recht entsinne.
-
@thomas-braun
zwei Instanzen hatte ich schon immer und es lief super bis ich ein Firmwareupdate auf die letzte Version gemacht habe! -
@knopers1
Ich habe das Ganze unter einer Instanz laufen und er liegt die Datenpunkte auch korrekt an.
Macht man das besser in zwei Instanzen? -
@g-hawk
Ich habe aber zwei DTU´s hier vor Ort! Einer davon für das Projekt openDTUonBattery.
Dafür brauchst Du die zweite Instanz zwingend....Die Instanz schmiert sehr schnell ab!
Wie gesagt.... die openDTUonBattery in der Version aus dem November 2023 lief noch unauffällig. Nach dem Update auf die letzte Version 7.3.24, schmiert die Instanz schnell ab.
-
Zugriff der beiden Instanzen auf die gleichen Wechselrichter ?
OpenDtu Esp und OpenDtu on Battery Esp ist jeweils ein eigenständiges Projekt.
Der OpenDtu Adapter ist nicht für OpenDtu on Battery Esp geproggt worden. -
@thomas-braun sagte in Test Adapter OpenDTU:
Ich hab mich da glaube ich vertan. Ging wohl um zwei openDTUs parallel
Genau betrachtet laufen zwei OpenDtu Esp parallel, aber nicht mit den gleichen
Wechselrichtern, wenn sich die Übertragungen nicht überschneiden.
Zwei Instanzen sollten auch laufen, wenn andere WR im Einsatz sind. -
@ralla66 said in Test Adapter OpenDTU:
Zugriff der beiden Instanzen auf die gleichen Wechselrichter ?
OpenDtu Esp und OpenDtu on Battery Esp ist jeweils ein eigenständiges Projekt.
Der OpenDtu Adapter ist nicht für OpenDtu on Battery Esp geproggt worden.Nein!, OpenDTU.0 verwaltet einen Hoymiles HMS-500 und HM-800, OpenDTU.1 greift auf einen HM-600.
Es ist mir klar, dass es nicht für OpenDTUonBattery programiert ist, allerdings hat es ohne Probleme mit der älteren Version (Ende 2013) funktioniert.
-
@idlebit Könntest Du zu diesem Problem https://github.com/tbnobody/OpenDTU/issues/1603#issuecomment-2007941315 bestätigen, dass der OpenDTU Adapter nichts schreibt an die OpenDTU, insbesondere keine Limits, wenn man nicht aktiv in die DatenPunkte reinschreibt?
Vielen Dank vorab.
-
Ich habe zwei Instanzen für 2 Gruppen meiner Wechselrichter. Funktionierte tadellos, bis ich für eine OpenDTU ein Update gemacht habe. Die OpenDTU ist erreichbar (über IP-Adresse). Aber der Adapter schreibt keine Werte. In den Objekten steht bei "available" "false". Nach einem Adapter Restart funktioniert wieder Alles. Bis zum nächsten Tag. Dann wieder das Gleiche Drama. Wo kann ich den Fehler suchen/finden?
im Protokoll:
18 95 Log-Größe: 2.1 MB opendtu.0 Zeit debug Nachricht opendtu.0 2024-03-25 09:55:31.321 warn setInverterLimit axios error: Error: connect ETIMEDOUT 192.168.2.27:80 opendtu.0 2024-03-25 09:55:31.319 warn setInverterLimit axios error: Error: connect ETIMEDOUT 192.168.2.27:80 opendtu.0 2024-03-25 09:55:31.304 warn setInverterLimit axios error: Error: connect ETIMEDOUT 192.168.2.27:80
-
Habe jetzt eine OpenDTU neu aufgebaut (auch neue Hardware, identisch zur Alten).
SDK-Version v4.4.6-dirty
Konfigurationsversion 0.1.27
Set einigen Tage läuft das problemlos, Was da vorher los war?? -
Kann ich hier einen zweiten Wechselrichter eintragen, oder muss ich eine zweite Instanz erstellen?
Ist ein HM und ein HMS. Habe deswegen zwei verschiedene DTUs. -
@gonzokalle
Ich glaube das wird im Wechselrichter eingetragen.
Gruß -
Der zweite Wechselrichter wird in der DTU eingetragen.
Eine zweite Instanz ist nicht nötig.VG Duffy