[APP][Pro] < Ecovacs Deebot > (removed from app store)

Hello Olivier,

I encountered the same login error @ Home Assistant.

Turns out the login procedure has changed:
Ecovacs servers now expects you to just enter your email address, and after that Ecovacs sends a login verification code per email > you should enter this code to complete the login.

Hopefully the Ecovacs Homey app can get patched with this information in order for users to be able to login again

Ecovacs now returns error 1013 for client device IDs that have not completed device verification. Updating only the reported app version does not resolve the error; the client ID must complete the email verification flow and then remain stable across future logins.
.
Source:
fix(auth): support Ecovacs device verification by bentbrain · Pull Request #1706 · DeebotUniverse/client.py · GitHub

Hello Peter,

Many thanks for your feedback and help.

The extra verification code was noticed by me as well. I do not know how long this (new) login procedure is already active, so I suppose I’m not the only one with this login problem?. I’m new with the Ecovacs app, not with Homey.

Who can/will adapt the Ecovacs Deebot app for Homey, or is there already an working update available? Can you advice me?

Kindest regards,

Olivier

Something’s wrong with the api..

24 16:40:19 [log] Deebot ApiVersion : 0.9.6-alpha.3
24 16:40:19 [log] Vacuum has been added
24 16:40:19 [err] Failure in connecting!: Error: Failure code 1013: Please update to the latest version to continue. at EcovacsAPI.callUserAuthApi (/app/node_modules/ecovacs-deebot/index.js:227:19) at process.processTicksAndRejections (node:internal/process/task_queues:103:5) at async EcovacsAPI.connect (/app/node_modules/ecovacs-deebot/index.js:64:18) at async /app/drivers/Deebot/driver.js:84:4 at async VacuumDriver.onRepair (/app/drivers/Deebot/driver.js:77:3)
24 16:40:18 [log] Repairing
24 16:40:18 [log] System reboot, reconnecting
24 16:40:18 [log] Device Robo John has been initialized
24 16:40:18 [log] appdebug: false
24 16:40:18 [log] Driver Vacuum has been initialized
24 16:40:18 [log] [App] Ecovacs Deebot is started
24 16:40:18 [log] [App] nl.onzewifi.deebott9 V1.5.1 is running…

No problem, Olivier.

I noticed only yesterday, it seems to be a fairly recently change by Ecovacs (the reported Github issue I found is 10d old).

Indeed

In this case we depend on the willingness, kindness and time of the community app owner, not sure if it’s Le_Cactus or Menno

Le_Cactus gets notified on our posts automatically.

In case the app is abandoned, maybe some devs are willing to step in, but the link source code isn’t public anylonger as it seems:
https://github.com/cactusss/nl.onzewifi.DeebotT9
However, I found a fork:

Hi Peter,

You are great! Thanks for your continuous support & help.

I’ve opened the Github page. I’m wondering what I should do? Download the code as a ZIP-file and then? How can I add the code/app in Homey pro? Or could you tell me (in steps) how I can create a workaround with the available Github code? I’m not a programmer and I do not know anything about the code in Github. Thx again.

Olivier

Thanks!

Unfortunately I can’t help programming.

Some manage to adjust apps with help of AI. As I’m not into that, I can’t help you on this one.

Then it’s probably not possible to build it yourself, since it requires reverse engineering the new login flow (f.e. from the Android app on a rooted device or emulator, and intercepting network traffic with HTTP Toolkit) and then modifying the code, for which you obviously need to understand the code first.

Well, I tried to take over app development. But it doesn’t work with Ecovacs.

The app uses a npm module for API access. So far so good. But Ecovacs is using Mqtt in backgraound and every Ecovacs device has other Mqtt topics. That makes it nearly impossible to provide a working app. Without a really good official documentation there os no chance.

Only way is using Matter for matter enabled Ecovacs devices with Homeys built in Matter driver.

Can we ask Ecovacs to return back to normal login (e-mail + pasword)? Or can we ask Le Cactus to update the Ecovacs deebot app maybe? Hopefully we find a solution for lots of Ecovacs & Homey users. :folded_hands:

Without a public API documentation … I don’t think so.

You can use jadx-gui in some cases to extract the data models for each device if the Android app uses regular Kotlin.

I build most of my Homey apps without any public implementation or API. Instead, I reverse engineer the Android apps. While it doesn’t work for all apps, sometimes it’s still possible by either decompiling the app and intercepting network traffic.

If the app uses Flutter, then it’s almost impossible to reverse engineer the app since Frida hooks often don’t work with these apps.

I don’t know how the Ecovacs Android app works though or which framework it uses.

You need to know all Mqtt topics for every device, and perhaps also some value mappings. I tried to add my Ecovacs and couldn’t find all needed Mqtt messages in the whole traffic.

At the end you can get your device to work with a some time, but not all.

The app developer needs to implement a system so that the device ID is permanently registered in the Ecovacs cloud; this is a one-time process per device.

The email verification code must be entered alongside the username and password in the app-level settings.

I managed to resolve this with my Ecovacs Goat app, and it now works normally with the Ecovacs account.

Hi Le Cactus,

Would you please try to update the Ecovacs deebot app with the new login procedure/needs?

You would help me together with lots of Ecovacs users. Thank you in advance.

Olivier

Hi,

Sorry, but I’m not maintaining the app anymore, @Menno_van_Hout took over after I abandonned the app. You may want to discuss this with him.

Regards,

Le Cactus

Thanks for the heads up, @Le_Cactus. However, the forum link on the app store page still points to this topic (and which is opened by you).

Perhaps it’s possible for @Menno_van_Hout to create a new app topic, and have the forum link on the app store page point to that new one.

I don’t think Menno will maintain the app…

I have a fork and I can check what I can do.

@sverrelp could you give me a link to the pair logic?

@Olivier The app is not in the app store, so you have to install it from CLI.

Thank you in advance RonnyW. You would be a great help if you could update the app.

What do you mean by installing the app from “CLI”? So I could prepare myself and look into the specific needs if there are any. Thank you for your advice.

Hi RonnyW, after some (re)search on the internet, I’ve found what CLI means. Command Line Interface. I also found a video how to install an app in Homey from the CLI. So I will have a further look into it, and probably I will be able to install the updated app later by using CLI. Sorry for this question, because I was not known with CLI.

You would be a great help for me and many other Ecovacs users if you could upgrade the Ecovacs Deebot app with the new login procedure with the help/link of Sverrelp. Thank you.

Sorry for the short answer.

Yes, it’s the command line tool.

You need NodsJS and npm installed on your PC.

NodeJS should be enough. No beed for the Docker option.

Then you are able to install apps from a local directory.