mrbungle64 / ioBroker.ecovacs-deebot

Control your Ecovacs Deebot and yeedi vacuum cleaner with ioBroker
MIT License
59 stars 11 forks source link

Adapter Error undefined is not a valid state value #629

Closed jay-jey closed 5 months ago

jay-jey commented 5 months ago

Is there an existing issue for this?

The problem

Hello,

since last week I noticed that the adapter is not working anymore. I have this error:

ecovacs-deebot.0 | 2024-01-30 07:48:31.970 | warn | Terminated (UNCAUGHT_EXCEPTION): Without reason
-- | -- | -- | --
ecovacs-deebot.0 | 2024-01-30 07:48:31.969 | info | terminating
ecovacs-deebot.0 | 2024-01-30 07:48:31.967 | info | cleaned everything up...
ecovacs-deebot.0 | 2024-01-30 07:48:31.964 | error | undefined is not a valid state value
ecovacs-deebot.0 | 2024-01-30 07:48:31.964 | error | Error:  undefined is not a valid state value     at Object.maybeCallbackWithError  (/opt/iobroker/node_modules/@iobroker/js-controller-common/build/lib/common/maybeCallback.js:35:17)     at EcovacsDeebot._setState  (/opt/iobroker/node_modules/@iobroker/js-controller-adapter/build/lib/adapter/adapter.js:5448:49)     at EcovacsDeebot.setState  (/opt/iobroker/node_modules/@iobroker/js-controller-adapter/build/lib/adapter/adapter.js:5409:21)     at Immediate.<anonymous>  (/opt/iobroker/node_modules/iobroker.ecovacs-deebot/main.js:1113:30)     at process.processImmediate (node:internal/timers:478:21)
ecovacs-deebot.0 | 2024-01-30 07:48:31.963 | error | unhandled promise rejection: undefined is not a valid state value
ecovacs-deebot.0 | 2024-01-30 07:48:31.963 | 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().
ecovacs-deebot.0 | 2024-01-30 07:48:31.962 | error | undefined is not a valid state value
ecovacs-deebot.0 | 2024-01-30 07:48:31.962 | error | Error:  undefined is not a valid state value     at Object.maybeCallbackWithError  (/opt/iobroker/node_modules/@iobroker/js-controller-common/build/lib/common/maybeCallback.js:35:17)     at EcovacsDeebot._setState  (/opt/iobroker/node_modules/@iobroker/js-controller-adapter/build/lib/adapter/adapter.js:5448:49)     at EcovacsDeebot.setState  (/opt/iobroker/node_modules/@iobroker/js-controller-adapter/build/lib/adapter/adapter.js:5409:21)     at Immediate.<anonymous>  (/opt/iobroker/node_modules/iobroker.ecovacs-deebot/main.js:1113:30)     at process.processImmediate (node:internal/timers:478:21)
ecovacs-deebot.0 | 2024-01-30 07:48:31.960 | error | unhandled promise rejection: undefined is not a valid state value
ecovacs-deebot.0 | 2024-01-30 07:48:31.960 | 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().
ecovacs-deebot.0 | 2024-01-30 07:48:31.953 | info | Reset current cleaninglog stats
ecovacs-deebot.0 | 2024-01-30 07:48:31.952 | info | [vacbot] product name: undefined
ecovacs-deebot.0 | 2024-01-30 07:48:31.950 | info | P instance successfully connected
ecovacs-deebot.0 | 2024-01-30 07:48:31.736 | info | Using device Device[0]
ecovacs-deebot.0 | 2024-01-30 07:48:31.736 | info | Device[0]:   {"did":"ffaaadb9e-ebae-4b1d-b5d6-0100786e6bc3","name":"K29C40548C00YJZX0314","class":"vthpeg","resource":"I27h","nick":"P,"company":"eco-ng","bindTs":1698049740485,"service":{"jmq":"jmq-ngiot-eu.dc.ww.ecouser.net","mqs":"api-ngiot.dc-as.ww.ecouser.net"}}
ecovacs-deebot.0 | 2024-01-30 07:48:31.736 | debug | Devices:[{"did":"ffaaadb9e-ebae-4b1d-b5d6-0100786e6bc3","name":"K29C40548C00YJZX0314","class":"vthpeg","resource":"I27h","nick":"P","company":"eco-ng","bindTs":1698049740485,"service":{"jmq":"jmq-ngiot-eu.dc.ww.ecouser.net","mqs":"api-ngiot.dc-as.ww.ecouser.net"}}]
ecovacs-deebot.0 | 2024-01-30 07:48:31.736 | info | Number of devices: 1
ecovacs-deebot.0 | 2024-01-30 07:48:31.735 | info | Successfully connected to Ecovacs server
ecovacs-deebot.0 | 2024-01-30 07:48:30.803 | debug | state change info.connection => false
ecovacs-deebot.0 | 2024-01-30 07:48:30.689 | info | Using login: yeedi.com
ecovacs-deebot.0 | 2024-01-30 07:48:30.615 | info | starting. Version 1.4.13 in /opt/iobroker/node_modules/iobroker.ecovacs-deebot, node: v18.19.0, js-controller: 5.0.17
ecovacs-deebot.0 | 2024-01-30 07:47:58.841 | info | terminating

Is this a known Issue? I have js 5.0.17 Plattform: linux Betriebssystem: linux Architektur: x64 CPUs: 2 Geschwindigkeit: 2995 MHz Node.js: v18.19.0 NPM: 10.2.3

With which model does the problem occur?

Other model (Please fill out the fields at the bottom of the form)

From which source you have installed the adapter?

Stable (default)

Version of the ioBroker adapter ("info.version")

v1.4.13

Version of the ecovacs-deebot.js library ("info.library.version")

don't know where to find

Version of the JS controller

js 5.0.17

Version of Node.js

v18.19.0

Operating system

Linux

Anything in the logs that might be useful?

No response

Additional information

No response

Which "other" models are you using?

Yeedi mop station

Ecovacs device class ("info.deviceClass")

No response

Communication protocol ("info.library.communicationProtocol")

None

Is the canvas module installed? ("info.library.canvasModuleIsInstalled")

None

mrbungle64 commented 5 months ago

@jay-jey

Did this adapter instance work properly before this point in time? Did anything change in your environment before the problem occurred (e.g. Node.js upgrade)?

jay-jey commented 5 months ago

Yes it was working. Until this weekend. No updates of the System or nodejs. Only some other adapters have been updated.

mrbungle64 commented 5 months ago

@jay-jey

It seems that they have changed something in the API for the Yeedi models https://forum.iobroker.net/post/1122051

mrbungle64 commented 5 months ago

@jay-jey

Please set log level to "debug", (re)start the adapter instance and post the log output.

jay-jey commented 5 months ago

Seems to not have changed.

ecovacs-deebot.0 2024-01-31 19:14:27.385 warn Terminated (UNCAUGHT_EXCEPTION): Without reason
ecovacs-deebot.0 2024-01-31 19:14:27.385 info terminating
ecovacs-deebot.0 2024-01-31 19:14:27.384 info cleaned everything up...
ecovacs-deebot.0 2024-01-31 19:14:27.381 error undefined is not a valid state value
ecovacs-deebot.0 2024-01-31 19:14:27.381 error Error: undefined is not a valid state value at Object.maybeCallbackWithError (/opt/iobroker/node_modules/@iobroker/js-controller-common/build/lib/common/maybeCallback.js:35:17) at EcovacsDeebot._setState (/opt/iobroker/node_modules/@iobroker/js-controller-adapter/build/lib/adapter/adapter.js:5448:49) at EcovacsDeebot.setState (/opt/iobroker/node_modules/@iobroker/js-controller-adapter/build/lib/adapter/adapter.js:5409:21) at Immediate. (/opt/iobroker/node_modules/iobroker.ecovacs-deebot/main.js:1113:30) at process.processImmediate (node:internal/timers:478:21)
ecovacs-deebot.0 2024-01-31 19:14:27.381 error unhandled promise rejection: undefined is not a valid state value
ecovacs-deebot.0 2024-01-31 19:14:27.381 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().
ecovacs-deebot.0 2024-01-31 19:14:27.380 error undefined is not a valid state value
ecovacs-deebot.0 2024-01-31 19:14:27.379 error Error: undefined is not a valid state value at Object.maybeCallbackWithError (/opt/iobroker/node_modules/@iobroker/js-controller-common/build/lib/common/maybeCallback.js:35:17) at EcovacsDeebot._setState (/opt/iobroker/node_modules/@iobroker/js-controller-adapter/build/lib/adapter/adapter.js:5448:49) at EcovacsDeebot.setState (/opt/iobroker/node_modules/@iobroker/js-controller-adapter/build/lib/adapter/adapter.js:5409:21) at Immediate. (/opt/iobroker/node_modules/iobroker.ecovacs-deebot/main.js:1113:30) at process.processImmediate (node:internal/timers:478:21)
ecovacs-deebot.0 2024-01-31 19:14:27.377 error unhandled promise rejection: undefined is not a valid state value
ecovacs-deebot.0 2024-01-31 19:14:27.377 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().
ecovacs-deebot.0 2024-01-31 19:14:27.371 info Reset current cleaninglog stats
ecovacs-deebot.0 2024-01-31 19:14:27.370 info [vacbot] product name: undefined
ecovacs-deebot.0 2024-01-31 19:14:27.368 info Putze pro instance successfully connected
ecovacs-deebot.0 2024-01-31 19:14:26.854 info Using device Device[0]
ecovacs-deebot.0 2024-01-31 19:14:26.854 info Device[0]: {"did":"ffa4db9e-ebae-4b1d-b5d6-0100786e6bc3","name":"K29C40548C00YJZX0314","class":"vthpeg","resource":"I27h","nick":"Putze pro","company":"eco-ng","bindTs":1698049740485,"service":{"jmq":"jmq-ngiot-eu.dc.ww.ecouser.net","mqs":"api-ngiot.dc-as.ww.ecouser.net"}}
ecovacs-deebot.0 2024-01-31 19:14:26.853 debug Devices:[{"did":"ffa4db9e-ebae-4b1d-b5d6-0100786e6bc3","name":"K29C40548C00YJZX0314","class":"vthpeg","resource":"I27h","nick":"Putze pro","company":"eco-ng","bindTs":1698049740485,"service":{"jmq":"jmq-ngiot-eu.dc.ww.ecouser.net","mqs":"api-ngiot.dc-as.ww.ecouser.net"}}]
ecovacs-deebot.0 2024-01-31 19:14:26.853 info Number of devices: 1
ecovacs-deebot.0 2024-01-31 19:14:26.852 info Successfully connected to Ecovacs server
ecovacs-deebot.0 2024-01-31 19:14:25.755 debug state change info.connection => false
ecovacs-deebot.0 2024-01-31 19:14:25.642 info Using login: yeedi.com
mrbungle64 commented 5 months ago

@jay-jey

Can we close this issue? https://forum.iobroker.net/post/1122327

jay-jey commented 5 months ago

Yes of course.