rand256/valetudo

Using RE v. 0.9.6 on Roborock S50, but lost SSH password. Can I upgrade to latest version without factory resetting?

Doa132 opened this issue · 4 comments

I have a Roborock S50(2nd gen) with Valetudo RE v.0.96 installed. I installed it ages ago and the SSH password I saved in my password manager isn't working. Tried the original "cleaner" password too and it doesn't work either. Can't remember if I changed it or something, but can't access SSH.
I saw that the latest release says:

If you already have a previous release installed, you can install only RE update using a deb file (for gen1) or via this guide (for gen2 and 3).

I still have the token and can access the vacuum using RRCC. Am I able to install an updated Valetudo RE version using that, or am I going to need to factory reset the vacuum and get a new token before installing the latest RE version?

Screen Shot 2021-11-08 at 03 05 31

There are several ways for you
a) using the already known token and flash a new image with mirobo tools
b) using the build-in updater in the valetudo re web interface to flash a new image (see the "firmware update" section in your screenshot)
c) using the valetudo re web interface to upload the ssh public key (settings - access control) of an newly generated ssh-keypair to gain ssh access again (because you were asking for ssh access) to replace just the binary.

Thank you for your help, pidator.
I've never heard of mirobo tools, I'll have a look for it.
I don't know enough about ssh keys and didn't realise I could just change it in the web interface and use that to access ssh. I am very much a learner when it comes to doing things and mostly manage by looking up guides online and following them, while trying to understand what I'm doing and why in the hopes of learning it permanently. I've now managed to log in using a new ssh key so that's great.
Not sure how to use build-in updater. There's no button that actually says update. Pressing Check just shows the link to latest version. Following that link and the link to the guide for gen 2 and 3 and it says

This note applies for those who has already installed any 2008+ firmware image, which was created with vacuumz image builder by zvldz.

I think I used dust builder to get the firmware the first time and then used an Roborock Control Center (rrcc) to upload it to the vacuum. But it's been ages, and I also may have had issues at some point and had to reset to factory and installed another way the second time. I have a pretty bad memory.
I wasn't sure if that would create a difference that means I following the instructions on this link would brick my vacuum.
But, if flashing a new version is just completely overriding the current version, does that mean that I can just download the latest version and upload it to the vacuum using rrcc again?
Again, thank you for taking the time to help me.

Not sure how to use build-in updater. There's no button that actually says update.

Third line in your provided screenshot: it's called "send request" and will ask you for a link to an image and the hash of the md5 checksum. that's all.

I wasn't sure if that would create a difference that means I following the instructions on this link would brick my vacuum.

Worst case is to "brick" your valetudo installation, not your robot with these instructions ;) give it a try, following the guide is pretty straightforward.

But, if flashing a new version is just completely overriding the current version, does that mean that I can just download the latest version and upload it to the vacuum using rrcc again?

iirc rrcc is using the mirobo tools in the background too. Don't know exactly, haven't used rrcc ever. But yes, should be possible too.

Send request didn't work (said failed after a while, and I realise now that I hadn't yet given the vacuum back it's internet access, so that is why it would have failed the update via the web ui). But I managed to update using the ssh instructions, after remembering to let it connect to the internet..
Thank you so much for explaining all that. I really appreciate your patience.