-
Notifications
You must be signed in to change notification settings - Fork 258
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
Experience with STYTJ02YM robots #337
Comments
I'm definitely interested in more info. I've started a "V7,V8 conversion to V6 (V6 ver 0041, 11/2020)" livesuit build - but I don't know how to use when it's done. Is there a UART connection guide for the V8 anywhere? Sorry about all the questions - but fluff is starting to build under bed ;) |
Got a bit further. Cracked open the vacuum, soldered a few pins to the MB (remembered seeing a photo somewhere showing GND as the middle pin, and RX/TX on either side). Connected a USB/UART board to the pins and a micro-usb cable to the connector, and look and behold - output on TeraTerm:
How do I get a serial login from here? Or can I somehow flash the livesuit img? |
Found a few hints on getting a shell via serial, but no luck so far.
and
but both just ended in the same "Starting kernel ..." line and nothing further. Now I just noticed the comment in the first post about holding
On host:
No devices :( Output from dmesg and lsusb:
|
Hi @ksga, sorry for the late reply. First, get a livesuit image from https://builder.dontvacuum.me/ (v6 conversion) Flashing it was super painful for me on my Fedora 38, but also other modern Linux distros (as well as windows), because of the tooling. Make your life easier and use older OS. I used ubuntu 18.04 Build the usb driver and install sunxi tool - https://linux-sunxi.org/LiveSuit (the guide is not comprehensive, you will need to install additional dependencies) Boot to FES by presing |
Thank you for getting back to me. Can you also share the wlan driver and script? |
It's in |
Thank you for investigating it. We are completely clueless on what is going on with the V8, as neither Sören nor me have one of them. The only Viomi I own is the v6. No clue why they have so many different wifi modules. Any recommendations on how we can fix it for everyone? This is what the builder currently does: https://github.com/dgiese/dustbuilder-script-public/blob/master/modifyviomi.sh |
I don't have time for a full response atm but at a quick glance, that module zip you attached is just taken straight from the firmware with no modifications? |
I guess the same as the vacuums with RTL8821CS - https://github.com/Hypfer/valetudo-crl200s-root?tab=readme-ov-file#6-additional-model-specific-steps The real win would be to figure out how to get to adb reliably.
Correct. I assumed as much from the 8821cs_patched file name. So far it works fine though. @ksga BTW, check if wlan works before doing anything with network drivers. Maybe you have the revision that uses 8189es. |
FWIW There is another batch of auctions with Xiaomi Mop Pro Vacuums. They've been used in some company and are being auctioned in batch, so should be well below 100EUR. Should I try to get some for "development purposes"? (I'm in EU) Fun fact: I've found the company's laser-scanned floor plans, wi-fi network credentials and list of devices on the network along with vacuuming logs... info-sec fail :) |
Got the USB driver compiled (@Hypfer has already fixed everything here: https://github.com/Hypfer/valetudo-sunxi-livesuit ). The device rebooted, enabled a shell via UART. I'm still not able to connect over SSH (key seems to fail even though I'm specifying the file received from dustcloud as identity).
The unit connected to WLAN, dmesg showing:
I expected it would not because of the factory reset flag, but apparantly not. |
I played a bit more with the unit - and everything is now solved... The vacuum has been up for a couple of days without issue, and cleaning zones or segments works a expected... @martinhoyer - did you flash the V6 0046 firmware, or just stay on the conversion 0041 firmware? |
Glad it worked out for you.
I stayed on the 0041. |
@martinhoyer Thank you so much for your work. Wifi is working now for me too, using the 8189fs.ko. |
Hi guys, so i can try to install dustcloud on this device? I've already build at dustbuilder firmware for manual installation (via ssh) for 'V7,V8 conversion to V6 (V6 ver 0041, 11/2020) ' version - is it correct for this device(STYTJ02YM - viomi.vacuum.v8)? The firmware file has name: viomi.vacuum.v7_fw.tar.gz (i'm bit confused because of v7 in it) |
Yes, I am successfully running a v8 with said version. Remember that you need to manuallly install the |
So i need to take this driver from my vaccum and then push this it via adb? Does adb works after flashing out of the box? |
Yes, or take the driver from above. |
Did it! :D My wifi driver was 8189es so i don't need to do a thing. Thx you all for this incredible work! |
Found another issue: i have no map in valetudo :/. Robot works as expected, so space mapping is working - but map doesn't shows up. Did you experience such issue? |
The mapping feature of the viomi is somewhat buggy. In my case, the map would sometimes be rotated when the robot was vacuuming. This lead to all kinds of weird behaviour including th robot not being able to return to the dock. In my case what works best was to disable "Persistent maps" in Valetudo and perform a "Map Reset" once. |
Did it - still no map. I don't even know where to start investigating :/ ... on my previous vacuums everything worked fine. |
In /mnt/UDISK/log i found map of my home... but not in GUI. |
Got it - factory reset helped. Thx! I should try it at first ;) |
Hi @dgiese @Hypfer,
I got three Xiaomi Mop P STYTJ02YM in an auction and want to share some things I've learned during the process of rooting them and and installing viomi v6 conversion fw w/ Valetudo.
While all three look identical, one was clearly a different revision then the other two. One was working straight away with v6 fw, the other two needed a different wlan driver.
The clear indicator of which is which is the color of LED - when holding home, the two robots with different wlan driver turns purple when holding home button during power-on, while the one which was safe to flash to v6 was white/blue-ish. (both go orange when left bumper is pressed).
Also I guess you can identify it by having a different partition table?
The driver needed is 8189fs.ko, which I got from the original fw.
I used the
enable_8821cs.sh
script as a reference to make sure it's loaded after reboot.So far I haven't encountered any issues.
The third one I soft-bricked and so had to flash livesuit image through FEL, i.e. I disassemble it. Interestingly I can see R16, while the fw reports A33. Super confused.
To get it to FEL via serial, it wants
2
character to be pressed on power-on."Disassembly" to get to UART is very easy, just one screwdriver and some plastic tool to "un-click/pry-free" four plastic clips.
Let me know if I can provide any more info, thought they are all now running v6. I've dumped the nands fwiw.
(I'm not on telegram)
As for rooting, honestly the biggest pain is to establish the ADB connection. I spent so much time on it, pressing all kinds of button combos, etc. I even suspect the bumper buttons have role, because every time I got adb working I did press/hold them, though it does not seem plausible.
To make it easier for other people, it would be really nice to find a reproducible way to get it working.
Currently, I'd say it's easier/faster to use serial connection, if the robot doesn't provide adb straight away.
btw, I watched your (this year's) Defcon talk. Very nice!
The text was updated successfully, but these errors were encountered: