-
-
Notifications
You must be signed in to change notification settings - Fork 44
Map not working on newer bots (Deebot X1, T10, ...) #268
Comments
I have only the 950 and as student I cannot afford to buy me the new X1. Probably they have changed the command, how you can retrieve the map data. If you have the technical skills to intercept and analyse the traffic please feel free to do it. Each contribution is welcome :) |
Hmm okay, I wish I could help but I don't know how to do this.... I do not have skills for stuff like that haha |
yes, same on my X1..... don't think this is a HA issue as valetudo on my other vacuum is displaying well. if pointed in the right direction, I don't mind snifing the traffic... tia |
Same on my X1 OMNI. |
Capture the traffic between the robot and the app. |
I understand what you are saying, just not sure what tools to use to do so. Also, not sure if this is relevant at this point, but I believe there are currently issues with either the deebot app or robot itself when it comes to the map integrity. My self and other have been experiencing issues where the maps appear to have a mind of its own in the official app! In the last 2 weeks I had to re-do quick map several times. Rooms often merge together other time the actual rooms changes size. Don't even get me started on the 3D Maps lol. Again, I'm just speculating based on my experience and the comments of others in the official app in Google play. |
This comment was marked as off-topic.
This comment was marked as off-topic.
This comment was marked as off-topic.
This comment was marked as off-topic.
This comment was marked as off-topic.
This comment was marked as off-topic.
This comment was marked as off-topic.
This comment was marked as off-topic.
Thats what i mean in my issue long time ago. But i dont know what i can do to help to fix that. |
I recently analyzed the data of minor_map command on my X1 robot, the discovery is:
|
@TeCHiScy Please feel free to open a PR to make the map working on the X1 |
Yes, I'm willing to do that. Can u share a picture of the map that works fine on your robot? I'd like to do some comparasion, to verify the results. |
Maybe you need only to set the color for your new values here. My map look similar to https://deebot.readthedocs.io/assets/images/custom_vacuum_card.jpg (it's a old image but nothing really changed) |
I don't have a X1 and as I have nothing to do with ecovacs, I also don't get support from them. I cannot afford to buy each model. You can buy me always a coffee at https://www.buymeacoffee.com/edenhaus, so I can buy me new models. Otherwise someone with a X1 model needs to analyze the traffic :) Without a X1 it is hard to guess, which commands have changed and therefore currently I cannot fix this issue and need help for you guys, which have the X1. |
Okay well I will try to do this. But I need some help. It would be no problem to send you all details or the whole traffic which are needed if you tell me some more Information. |
You may need something like "packet capture" app or "wireshark" in a laptop. This is as far as I can help sorry! |
I'll try to find the time this weekend to analyze the traffic. |
Yes, of course. I already captured the traffic between the App and Ecovacs/Deebot Server. But I think its encrypted - not surprising …. So I have no idea how to get the Information which commands to check for the Map. And I dont have the time to read into the API of Ecovacs/Deebot |
If you for example use mitmproxy and setup it as proxy of the device you want to capture the traffic, you will see the traffic unencrypted. @MetroAffe I prefer to stay here and write in english so everyone can follow and understand it |
Okay did it. And its working. I‘ve made a screenshot - more as proof that its running. Unfortunately I had to black out a lot because I don't like to do it publicly. On which packets would you like to look closely at? If you would like to have the whole capture you know how to contact me. Its hard work to blure all private keys to share it in public environment….. |
Maybe I figured out some new commands and in my opinion this could be the Problem: These got triggered too: |
All currently implemented map commands can be found here. |
Response of getCachedMapInfo starting with index 3 even it is empty: |
Please give a look at the current implementation to understand how the commands interact in between. Explaining here each command and how they interact is to much. Some commands are also documented here but still work in progress... |
That’s impossible. I already took a look at both. It’s not enough to understand a few lines of the code. For troubleshooting its needed to overview the whole code. For now I’m done. |
Than please share information about the new In short the map works:
Please also note that analyzing the traffic is not a 5 minutes job. You need to the check some commands and verify what has changed. Maybe also some reverse engineering of the android app could be necessary to understand how the new data must be processed. And for all of this you need a lot of time |
getMapSet_V2 type ar: {
"ret": "ok",
"resp": {
"header": {
"pri": 1,
"tzm": 120,
"ts": "1681634062023",
"ver": "0.0.1",
"fwVer": "1.5.9",
"hwVer": "0.1.1",
"wkVer": "0.1.54"
},
"body": {
"code": 0,
"msg": "ok",
"data": {
"type": "ar",
"mid": "451359723",
"msid": "2012069423",
"batid": "dbjhli",
"serial": 1,
"index": 1,
"subsets": "XQAABACdAQAAAC2WwEHwYhHYQTGecueIxnXIJ1eT5msc+tUDcwyVN/qN4VpHCZICfcK0XSbLbHa2rDVyXa6W83QaBll7wDe0DbcHD7V0w73VqcenLcwRGTtLfhGyQAZckNp/W8R97OF03u2I1EVf3L/KtrKY+H8yXgcH9C7o2I4GrQaStxFptirT8uekcfwBeOTGNzwAe/TSzNO3H2IynQomiQgiADy+9AMs02A=",
"infoSize": 413
}
}
},
"id": "7fGU",
"payloadType": "j"
} getMapSet_V2 type vw: {
"ret": "ok",
"resp": {
"header": {
"pri": 1,
"tzm": 120,
"ts": "1681634069523",
"ver": "0.0.1",
"fwVer": "1.5.9",
"hwVer": "0.1.1",
"wkVer": "0.1.54"
},
"body": {
"code": 0,
"msg": "ok",
"data": {
"type": "vw",
"mid": "451359723",
"batid": "cpipli",
"serial": 1,
"index": 1,
"subsets": "XQAABAACAAAAAC2XPAAAAA==",
"infoSize": 2
}
}
},
"id": "HSoS",
"payloadType": "j"
} getMapSet_V2 type mw: {
"ret": "ok",
"resp": {
"header": {
"pri": 1,
"tzm": 120,
"ts": "1681634069523",
"ver": "0.0.1",
"fwVer": "1.5.9",
"hwVer": "0.1.1",
"wkVer": "0.1.54"
},
"body": {
"code": 0,
"msg": "ok",
"data": {
"type": "mw",
"mid": "451359723",
"batid": "cpipli",
"serial": 1,
"index": 1,
"subsets": "XQAABAACAAAAAC2XPAAAAA==",
"infoSize": 2
}
}
},
"id": "zR84",
"payloadType": "j"
} |
Well its much easier to get a solution. The guys from iobroker have had the same problem - and maybe already a solution! |
@MetroAffe the commits are over a year old! I'm afraid the last time Sascha stepped in recent conversations here, he confirmed it still a work in progress. |
Not really 😉
I already implemented some of the V2 commands, but I still have the same problem with the map generation. On Friday I already posted that I'll try to find the time this weekend to analyze the traffic: I'll let you know when I've found a solution. |
uh ok oops. I actually just overlooked the fact that it was from you and posted not the correct link. I read about it in this thread: If its not working yet ... How is it this possible: But I think in that case the problem is in the best hands! :D |
This is the image of the last cleaning from the cleaning log 😉 |
This comment was marked as off-topic.
This comment was marked as off-topic.
Hi everybody, any progress at all with fixing the map for X1? @mrbungle64 Did you ever find a solution? |
Yes and no. The solution is mostly only a theoretical one so far... I think the only thing missing from the map is the border lines (boundaries). Some of the results I've already got looked very similar to the map in the Ecovacs Home app. |
Here is a short update on my side. I will refactor the library to allow different commands for different models. Only with your help can I implement the required changes, as I don't have your model. |
I have a deebot X1 Omni, if you need help... |
Hi, I have a t10 plus and I am experiencing the same problem, so if you need information also from this model I can get it for you, if you point me to what. |
I can also support in case you need help, I've a Deebot X1 omni. |
The new ecovacs models are using different commands for the map, which are currently not implemented. |
Same as me, still wonder how to get the boundaries as shown in the Ecovacs app. |
DeebotUniverse/client.py#372 tires to fix the map issue but it still needs some work before it can be merged. Please be patient |
Checks
The problem
Map is not shown properly with Deebot X1 (last Model 950 worked without issues)
Diagnostics information
deebot-0fbf64dfdbed3ff9aedda7dc22e10a23-Sigbert-84ec494accf775ef946082380388d0e4.json.txt
Anything in the logs that might be useful for us?
No response
Additional information
No response
The text was updated successfully, but these errors were encountered: