fungus75 / ioBroker.zoe2

Renault ZOE ioBroker adapter using the same API as myRenault APP
MIT License
14 stars 6 forks source link

No valid response1 from xyz service #46

Closed teichi1234 closed 2 years ago

teichi1234 commented 2 years ago

Hallo,

seit einiger Zeit crashed der Adapter bei mir immer mal wieder bei der Ausführung. In einigen Fällen läuft er sauber durch, aber in vielen Fällen kommt es zum Abbruch.

Als ich im Mai mit dem Adapter anfing, lief es sauber. Dann kamen immer mal wieder die Fehler. Habe es erst auf die zickige Renault-Api geschoben, aber da dieser Zustand nun seit weit über einem Monat bei mir so ist - (Adapter ist so für mich unbenutzbar) - wollte ich mal nachfragen, wo es harken könnte.

Hier beispielhaft ein Auszug aus dem Log wo es mal geklappt hat und mal fehlgeschlagen ist. Zu Stolpern scheint er häufig bei getBatteryStatus service, allerdings auch bei getCockpit:

2022-07-19 09:10:00.159 - info: host.ioBroker-Pi instance system.adapter.zoe2.0 started with pid 18291 2022-07-19 09:10:15.847 - error: zoe2.0 (18291) No valid response1 from getBatteryStatus service 2022-07-19 09:10:15.857 - error: zoe2.0 (18291) Error: timeout of 3000ms exceeded 2022-07-19 09:10:15.892 - error: zoe2.0 (18291) 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(). 2022-07-19 09:10:15.895 - error: zoe2.0 (18291) unhandled promise rejection: Cannot read property 'status' of undefined 2022-07-19 09:10:15.899 - error: zoe2.0 (18291) TypeError: Cannot read property 'status' of undefined at /opt/iobroker/node_modules/iobroker.zoe2/main.js:444:29 2022-07-19 09:10:15.902 - error: zoe2.0 (18291) Cannot read property 'status' of undefined 2022-07-19 09:10:16.529 - error: host.ioBroker-Pi instance system.adapter.zoe2.0 terminated with code 6 (UNCAUGHT_EXCEPTION) 2022-07-19 09:20:00.164 - info: host.ioBroker-Pi instance system.adapter.zoe2.0 started with pid 18349 2022-07-19 09:20:17.847 - info: host.ioBroker-Pi instance system.adapter.zoe2.0 terminated with code 11 (ADAPTER_REQUESTED_TERMINATION) 2022-07-19 09:30:00.317 - info: host.ioBroker-Pi instance system.adapter.zoe2.0 started with pid 18375 2022-07-19 09:30:13.365 - error: zoe2.0 (18375) No valid response1 from getBatteryStatus service 2022-07-19 09:30:13.393 - error: zoe2.0 (18375) Error: timeout of 3000ms exceeded 2022-07-19 09:30:13.428 - error: zoe2.0 (18375) 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(). 2022-07-19 09:30:13.431 - error: zoe2.0 (18375) unhandled promise rejection: Cannot read property 'status' of undefined 2022-07-19 09:30:13.438 - error: zoe2.0 (18375) TypeError: Cannot read property 'status' of undefined at /opt/iobroker/node_modules/iobroker.zoe2/main.js:444:29 2022-07-19 09:30:13.441 - error: zoe2.0 (18375) Cannot read property 'status' of undefined 2022-07-19 09:30:14.064 - error: host.ioBroker-Pi instance system.adapter.zoe2.0 terminated with code 6 (UNCAUGHT_EXCEPTION) 2022-07-19 09:40:00.145 - info: host.ioBroker-Pi instance system.adapter.zoe2.0 started with pid 18474 2022-07-19 09:40:21.176 - info: host.ioBroker-Pi instance system.adapter.zoe2.0 terminated with code 11 (ADAPTER_REQUESTED_TERMINATION) 2022-07-19 09:50:00.225 - info: host.ioBroker-Pi instance system.adapter.zoe2.0 started with pid 18518 2022-07-19 09:50:18.294 - info: host.ioBroker-Pi instance system.adapter.zoe2.0 terminated with code 11 (ADAPTER_REQUESTED_TERMINATION) 2022-07-19 10:00:00.244 - info: host.ioBroker-Pi instance system.adapter.zoe2.0 started with pid 18541 2022-07-19 10:00:19.844 - info: host.ioBroker-Pi instance system.adapter.zoe2.0 terminated with code 11 (ADAPTER_REQUESTED_TERMINATION) 2022-07-19 10:10:00.137 - info: host.ioBroker-Pi instance system.adapter.zoe2.0 started with pid 18641 2022-07-19 10:10:14.643 - error: zoe2.0 (18641) No valid response1 from getBatteryStatus service 2022-07-19 10:10:14.650 - error: zoe2.0 (18641) Error: timeout of 3000ms exceeded 2022-07-19 10:10:14.677 - error: zoe2.0 (18641) 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(). 2022-07-19 10:10:14.692 - error: zoe2.0 (18641) unhandled promise rejection: Cannot read property 'status' of undefined 2022-07-19 10:10:14.700 - error: zoe2.0 (18641) TypeError: Cannot read property 'status' of undefined at /opt/iobroker/node_modules/iobroker.zoe2/main.js:444:29 2022-07-19 10:10:14.703 - error: zoe2.0 (18641) Cannot read property 'status' of undefined 2022-07-19 10:10:15.336 - error: host.ioBroker-Pi instance system.adapter.zoe2.0 terminated with code 6 (UNCAUGHT_EXCEPTION)

fungus75 commented 2 years ago

Hi, bei mir läuft er soweit ohne Probleme.

Bitte auch über die original Renault Handy App prüfen, ob es bei dir noch geht. Ist mir mal passiert, dass der Vertrag mit Renault ausgelaufen ist und man dann "nachkaufen" musste. Leider verlangen die für die App-Nutzung was.

Wenn die App geht, bitte den Adapter einfach nochmals installieren (über Erweiterteter Modus => Github-Icon und dann die Url https://github.com/fungus75/ioBroker.zoe2.git eingeben

Nacher bitte in die Einstellungen reingehen und alle parameter neu eingeben (bitte irgendwo einen Parameter vorab löschen, damit der Save-Button erscheint) und dann nochmals auf Speichern drücken.

Hoffe es geht danach wieder.

teichi1234 commented 2 years ago

Danke für die schnelle Reaktion.

Handy App funktioniert einwandfrei.

Was mich eben wundert ist, dass es mal sauber durchläuft und mal nicht. Neu installiert hatte ich den Adapter schon und auch die Einstellungen neu gesetzt- mit gleichem Ergebnis. Ich hänge so ein bisschen an dem Timeout im Log. Kann man die 3000ms hochsetzen? Oder den Adapter bei diesem Fehler dazu veranlassen, es nochmal zu versuchen und nicht zu crashen?

Vielleicht liegt es dann auch einfach an meiner Hardware - der rpi2 ist möglicherweise mittlerweile einfach zu langsam dafür (wobei ich damit sonst keine Probleme hab)

fungus75 commented 2 years ago

Gute Idee, ich werde das zusätzliche Feld "Timeout" einbauen, dann kann man den Parameter über die Einststellungen anpassen. Denke Ende dieser Woche sollte die neue Version soweit sein.

Wiednitz commented 2 years ago

Das Problem hatte ich ja auch schon ab und zu. Der Adapter ließ sich nur durch Neuinstallation wieder zur Arbeit bewegen. Vielleicht ist der Renault Server ab und zu überlastet. Manchmal trifft der Batterie Status arg zeitverzögert ein....

teichi1234 commented 2 years ago

@fungus75 Super, Danke! Falls es einfach umsetzbar ist, eventuell auch den Fehler abfangen, damit der Adapter nicht crasht und es nochmal neu versuchen lassen o.Ä.?

@Wiednitz Neuinstallation brachte bei mir leider keine Änderung :( mal klappts - mal nicht

fungus75 commented 2 years ago

Es gibt jetzt eine neue Version auf Github, bei der man das Timeout einstellen kann. Bitte ausprobieren.

Wiednitz commented 2 years ago

Das war nicht so erfolgreich... Einstellungen wurden nochmal neu abgespeichert.

zoe2.0 2022-07-22 23:21:00.971 warn Terminated (UNCAUGHT_EXCEPTION): Without reason
zoe2.0 2022-07-22 23:21:00.971 info terminating
zoe2.0 2022-07-22 23:21:00.938 error defaultTimeout is not defined
zoe2.0 2022-07-22 23:21:00.937 error ReferenceError: defaultTimeout is not defined at globalInit (/opt/iobroker/node_modules/iobroker.zoe2/main.js:91:12) at processNextStep (/opt/iobroker/node_modules/iobroker.zoe2/main.js:179:25) at Object.main [as ready] (/opt/iobroker/node_modules/iobroker.zoe2/main.js:44:12) at /opt/iobroker/node_modules/@iobroker/js-controller-adapter/build/lib/adapter/adapter.js:8225:68
zoe2.0 2022-07-22 23:21:00.936 error unhandled promise rejection: defaultTimeout is not defined
zoe2.0 2022-07-22 23:21:00.935 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().
teichi1234 commented 2 years ago

Ich werde auch mal testen, gebe spätestens Anfang der Woche Rückmeldung

fungus75 commented 2 years ago

Sorry, zu schlecht getestet. Viel zu schlecht. Aber jetzt gehts. Bitte nochmals über den Erweiterten Modus => Github installieren. Sollte jetzt wirklich gehen.

Wiednitz commented 2 years ago

Funktioniert ! Danke für deine tolle Arbeit !!!! 👍👍👍

teichi1234 commented 2 years ago

Mpfffff mir ist die SD-Karte am Raspberry gestorben, ich warte auf Ersatz und gebe dann hoffentlich alsbald ebenfalls Rückmeldung. Aber schon mal vielen Dank!!

teichi1234 commented 2 years ago

Nun auch von mir positives Feedback! Müsste den Timeout zwar auf 20 Sekunden setzen (der Weg zum Renault Server scheint von hier aus sehr lang zu sein... Oder meine Hardware ist wirklich einfach veraltet) Aber so tut der Adapter, was er soll.

Danke für die schnelle Umsetzung!!