Eufy Robovac 35c Working with Home_Assistant - Updated 11/2020 - How To Guide - Now with Edge Cleaning!

This fixed my integration issue, thank you!

This sounded great but I can’t get it to work using python3.9 on MacOS :disappointed_relieved:
Which is a shame since the author said he used python 3.9 too

I submitted a fix for the error happening on Mac Fix padding when encoding uid (!2) · Merge requests · Andre Borie / Eufy device ID and local key grabber · GitLab. With that I was able to get the keys for my Eufy 30C without any emulators. I then used https://github.com/pbulteel/eufy_vacuum for the integration and everything is working like a charm.

I can concur, this Key Grabber is awesome! (Thank you @jeroen94704 for the tip)

Worked perfectly on MacOS after Martin Villagra’s patch. (Thank you @vmartinv)

My system details, MacOS Monterey 12.3 with Python 3.9 and a Eufy RoboVac X8 Hybrid.

Hi,
Any idea which file set would be best to use with a Eufy RoboVac X8 Hybrid ?

TIA

Hi Guys,

I am having the same issue as a poster above.

I have a brand new 30c that I can do the initial connect and setup on the Eufy Home App (latest) and the vacuum shows online and is useable.

Upon installing any earlier version of the Eufy app to get to get the device ID and keys the vacuum shows offline. I have tried the Vevs.apk and also version 2.3.2 with the ADB solution.

The Vevs APK shows the vacuum as offline. In the settings it shows device ID but no key.

The ADB solution I have run the logcat and get no response.

I have tried both ways on my Pixel, an Amazon Fire tab and Xiaomi Android device.

Installing the latest Eufy Home APK on all of these devices shows the vacuum as online it just seems to be older versions that refuse to acknowledge the vacuum as online.

The vacuum is on WiFi version 1.1.5 and MCU version 1.6.0

I wonder if there is something in the newer firmware blocking access to the older Eufy Home app versions?

can anyone provide an idiots guide on how to use the python method to determine the device id and local key please? The adb method will not work with the newer robovac’s and i’m clueless when it comes to python.

much appreciated

I was struggling with a weird error using the Python method but found a helpful workaround here to get the device id and local key for my new G30. Creating a new account in the 2.4.0 app was the solution (at least for me).

I was struggling too with zero knowledge of Python but eventually got there.

Have a look at this and follow it for your OS

Installing packages using pip and virtual environments — Python Packaging User Guide

Once you’ve got that installed you will need to download the script off of the Git.

https://gitlab.com/Rjevski/eufy-device-id-and-local-key-grabber/-/archive/master/eufy-device-id-and-local-key-grabber-master.zip

Unzip it to a folder.

Follow the below to navigate to the folder, start the virtual environment and run the requirements.txt

https://mothergeo-py.readthedocs.io/en/latest/development/how-to/venv-win.html

Once the requirements.txt has been run then you run the second line of code with your username and password for Eufy Home.

I was on a Mac so had to do some further steps that are outlined on the Git.

Hope this helps. Sorry it’s not idiot proof as I say I don’t have any Python experience myself.

1 Like

app version 2.4.0 doesnt work with the X8 :pensive:

ok, i think i have done this right. i used PyCharm which automates some of the tricky stuff but when i try the second line of code i get


has anyone had any luck grabbing the details for an X8?

This is the error that is patched on the Git. It took me a while to figure out.

You have to click on the changes tab there and update the eufy_local_id_grabber/clients.py with the additional lines. I just copied and pasted it over the original file.

Once you’ve done that I had to restart the Python Virtual Environment and rerun the requirements.txt and run the code again.

I also found that I had to make sure my Eufy account was validated on their side. Try log in to the Eufy website and do any validation of email that it asks for.

1 Like

thanks, i made those changes but i still get the same error. mine does seem slightly different than the one you linked though, my error seems to be ‘access_token’.

perhaps your comment regarding the validation of the email address is correct? on which site are you validating this? the only two i can find are https://uk.eufylife.com which just seems to be the site for ordering new products and https://mysecurity.eufylife.com which i use for my doorbell but doesnt seem to have anything to do with the robovac

Have you tried to also apply the other merge request:

I managed to extract the key with both changes made.

1 Like

i think i’m getting closer.

another issue (i think) was that the python app doesnt seem to like it if you have some special characters such as $ in the password. i made the changes from both change requests and i now get:

actually seems to be the same error as KeyError: 'result' when running script (#2) · Issues · Andre Borie / Eufy device ID and local key grabber · GitLab

1 Like

That’s very weird, I managed to get it working on my side after the changes.
If you want to change your password and send it to me, I can retrieve the keys to you and send it over then you can change your password again. I’m just saying this because it looks like you’ve been trying this for some time without any luck.

1 Like

sure! willing to try anything at this point :slight_smile:

i’ll pm you

with the assistance of @emontes i would like to confirm that the python method only works with one vacuum attached to your eufy home account :smiley:

1 Like

@emontes - i don’t suppose you could do me a huge favour and do this for me as well could you please?

@bennyboi Sure can, send me a PM!

1 Like