Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[ecovacs] Add Deebot T30 (PRO) OMNI #17162

Draft
wants to merge 1 commit into
base: main
Choose a base branch
from
Draft

Conversation

jimtng
Copy link
Contributor

@jimtng jimtng commented Jul 27, 2024

Just adding it here so it doesn't cause the binding to constantly go offline because it doesn't recognise sceneClean mode.

sceneClean seems to be the same as spot clean, i.e. it lets me pick which room(s) to clean, so I've just added it as an alias.

I haven't looked deeply as to whether this model has any extra features that isn't currently supported.

Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
@maniac103
Copy link
Contributor

I assume the device also wants sceneClean instead of spotArea for selective room cleaning as well? If so, this needs adaption similar to the freeClean handling as well.

@jimtng
Copy link
Contributor Author

jimtng commented Jul 27, 2024

I'm not sure if it's the same as "spotClean" though.

In the UI, it has auto, rooms (which I assume is spotClean, because I can select multiple rooms here), zone, and Scenarios. It is under scenarios that the mode in json says sceneClean. I can select the cleaning mode for each room under the Scenarios mode. Also a "scenario" is basically a saved pre-set. I can create multiple scenarios / presets and simply "run" the scenario without having to reselect the rooms / options.

How do you figure all this out?

This is the JSON that the binding was complaining about, because it didn't know about sceneClean.

Do we need to add / support a new clean mode?

{
  "header": {
    "pri": 1,
    "tzm": 480,
    "ts": "1722090069962",
    "ver": "0.0.1",
    "fwVer": "1.80.0",
    "hwVer": "0.1.1",
    "wkVer": "0.1.54"
  },
  "body": {
    "data": {
      "trigger": "none",
      "state": "clean",
      "cleanState": {
        "id": "122",
        "router": "plan",
        "motionState": "working",
        "content": {
          "type": "sceneClean",
          "value": "5638",
          "subContent": {
            "type": "sceneClean",
            "value": "5638"
          }
        },
        "cmode": 2
      }
    },
    "code": 0,
    "msg": "ok"
  }
}

@maniac103
Copy link
Contributor

How do you figure all this out?

I usually get inspiration from here, but it seems they didn't add T30 support yet either.
Besides that, looking at events emitted when doing changes in the app also is a good source of insight.

I can select the cleaning mode for each room under the Scenarios mode. Also a "scenario" is basically a saved pre-set. I can create multiple scenarios / presets and simply "run" the scenario without having to reselect the rooms / options.

So kind of a macro? That indeed sounds like a new type of clean mode, because older models don't have anything similar.

The interesting part will be supporting a command to start such a scene, because I'm not sure what 'value' represents ... A bit mask? Is it an ID?

@jimtng
Copy link
Contributor Author

jimtng commented Jul 27, 2024

I usually get inspiration from here, but it seems they didn't add T30 support yet either.

mrbungle64/ecovacs-deebot.js@08a917a

So kind of a macro?

yes

The interesting part will be supporting a command to start such a scene, because I'm not sure what 'value' represents ... A bit mask? Is it an ID?

My guess is the id of the scenario to run.

@maniac103
Copy link
Contributor

mrbungle64/ecovacs-deebot.js@08a917a

That one adds the devices to the list (what you've done here as well), but doesn't deal with the scene stuff.

@lsiepel lsiepel added the enhancement An enhancement or new feature for an existing add-on label Aug 1, 2024
@lsiepel lsiepel linked an issue Oct 8, 2024 that may be closed by this pull request
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement An enhancement or new feature for an existing add-on
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[Ecovacs] Unsupported Model DEEBOT T30 PRO OMNI
3 participants