bwp91 / homebridge-deebot

Homebridge plugin to integrate ECOVACS Deebot devices into HomeKit.
MIT License
64 stars 4 forks source link

getAirDring Error #135

Open surfahboy21 opened 1 year ago

surfahboy21 commented 1 year ago

What issue do you have? Please be as thorough and explicit as possible.

Noticed the following error in my Homebridge log: "[4/30/2023, 2:02:07 PM] [Deebot] [Robot] sent error [Request Timeout (command 'getAirDring')].

Details of your setup.

Using (1) Homebridge UI-X

Homebridge v1.6.1

Homebridge is running on a Synology DS920+ NAS (DSM 7.1.1-42962 Update 5) using Node.js v16.16.0

Using plugin v6.0.5. Just installed it for the first time a few days ago and issue has existed since initial install.

DEEBOT X1 OMNI, which I understand is not listed as a supported device. So if that's why the error happens, then no problem / worries. I should also note that the error hasn't seemed to impact functionality within the iOS Home app. But I thought I'd raise it anyway in case its a straightforward fix and / or helpful to be aware of when planning out future updates and bug fixes.

Please paste any relevant logs below.

mrbungle64 commented 1 year ago

@surfahboy21 This command (GetAirDrying which calls getAirDring) was implemented for yeedi devices.

@bwp91 For Deebot devices like the X1 series I implemented the GetStationState shortcut command (which calls getStationState). It returns more detailed data, but the library also emits AirDryingState.

Btw.: The typo in "getAirDring" is intended 😉

mrbungle64 commented 1 year ago

@bwp91

I'll implement a switch for the GetAirDrying command, so that it'll handle the API commands automatically. If you want to fully support the X1 series you have to implement the GetStationState command.

Here's an example of an "StationState" object. In this case air drying is active.

{
    "type": 2,
    "state": 1,
    "isAirDrying": false,
    "isSelfCleaning": true,
    "isActive": true
}

You don't need to handle type and state. The status results from the combination of the two values, which is described via isAirDrying, isSelfCleaning and isActive.

surfahboy21 commented 1 year ago

That’s awesome. Thanks for the quick reply and for the instructions on how to adjust my settings.

xyz667 commented 1 year ago

That’s awesome. Thanks for the quick reply and for the instructions on how to adjust my settings.

Errr. I also have the X1 OMNI and there is the same error message in my logs. What exactly would I have to do?

Additionally I have this error for the ‘getMapSubSet‘ command, don‘t know why, as I do have different rooms defined in the ECOVACS app.

EDIT: Never mind, after fiddling around in the ECOVACS app and also installing the beta version of this plugin I don't seem to get any more such errors.