romedtino / simple-wyze-vac

Home Assistant Custom Component for Wyze Vacuum
48 stars 8 forks source link

Multi-Map Firmware progress? #27

Closed Jeppedy closed 1 year ago

Jeppedy commented 2 years ago

I have the multi-floor map firmware. Any progress on getting it to work so I can invoke a cleaning from HA?

romedtino commented 2 years ago

That would need to be a change implemented in https://github.com/shauntarves/wyze-sdk since that's the backbone for this custom component. Unfortunately, I think the author has abandoned the project. Wyze has changed the payload structure for the multi-floor firmware so that would require reversing the contents of the payload. The issue for it on wyze-sdk can be found here - https://github.com/shauntarves/wyze-sdk/issues/63

I do have a fork of wyze-sdk that allows simple-wyze-vac to work on vacuums running the multi-floor firmware but it essentially removes any feature that deals with rooms (https://github.com/romedtino/wyze-sdk).

I currently don't have plans to look into that right now since 1.6.113 is still the current default firmware so if anyone is up for the challenge 😅

Jeppedy commented 2 years ago

Thanks for the info! I'm a developer, with interest and desire. What I usually lack is time, but I'll see if I can at least take a look. I'm brand new at HA, but if I can decode the new payload being used, perhaps we can team up to get this working.

I'm a beta tester for Wyze, so I'm not all that in-touch with what's part of their GA release... I'm surprised they haven't rolled the multi-map to mainstream yet.

On Tue, Apr 26, 2022 at 11:00 PM Jerome Tolentino @.***> wrote:

That would need to be a change implemented in https://github.com/shauntarves/wyze-sdk since that's the backbone for this custom component. Unfortunately, I think the author has abandoned the project. Wyze has changed the payload structure for the multi-floor firmware so that would require reversing the contents of the payload. The issue for it on wyze-sdk can be found here - shauntarves/wyze-sdk#63 https://github.com/shauntarves/wyze-sdk/issues/63

I do have a fork of wyze-sdk that allows simple-wyze-vac to work on vacuums running the multi-floor firmware but it essentially removes any feature that deals with rooms (https://github.com/romedtino/wyze-sdk).

I currently don't have plans to look into that right now since 1.6.113 is still the current default firmware so if anyone is up for the challenge 😅

— Reply to this email directly, view it on GitHub https://github.com/romedtino/simple-wyze-vac/issues/27#issuecomment-1110510788, or unsubscribe https://github.com/notifications/unsubscribe-auth/AB32XYYSN5OIJQX6ZTF2KXDVHC3VPANCNFSM5UNXZJVQ . You are receiving this because you authored the thread.Message ID: @.***>

-- "What good is it for a man to gain the whole world, yet forfeit his soul?"

shauntarves commented 2 years ago

Hey @Jeppedy and @romedtino,

Even though it seems like I abandoned the project, I've just been avoiding it for some time 👍

I responded to the issues in my own repo, and I will certainly take a look into this. Fair warning, unraveling the protobuf format that the vacuum stores data is really a game of guess and check, so it might take me a bit of time.

@Jeppedy interesting that this is still in beta after all this time. Have you tried rolling back to the non-beta firmware? That is, if I try this out on my own devices, is there a simple path to get back to the stable firmware?

sergeknystautas commented 2 years ago

I'm also up to try to decode/guess the protobuf format. If anyone gets to it first, that's great, but I have it on my to do list for weekend hobby fun.

If someone makes progress but doesn't finish, maybe we can find a shared place to put our notes/scraps of code.

shauntarves commented 2 years ago

@sergeknystautas @Jeppedy I have some new code ready if any of you are willing to try it out. I don't have the beta firmware and have little to no confidence that I should put it on my own devices 🤣

Hit me up at shaun tarves net if you want to try it out.

sergeknystautas commented 2 years ago

Much belated update... it's working for me on the beta firmware 1.6.173. Thanks for all your work!

dmkjr commented 2 years ago

1.6.202 appears to be the latest stable firmware (*thinks)

kennethpangky commented 1 year ago

1.6.202 appears to be the latest stable firmware (*thinks)

For the 2015 release version yes. So now it has multi-map/spot cleaning. Rooms direct cleaning entities is lost after the firmware update.

romedtino commented 1 year ago

This is partially supported now. The map shown through the camera entity is based on the last sweep record or the current active floor. To switch between floors you can do a send custom command with set_current_map as the data. See this commit for more information - https://github.com/romedtino/simple-wyze-vac/commit/2dd6c6849a66876285822da0b1b248c407bfaa73