Valetudo – Free your vacuum cleaner from the cloud
github.com
github.com
Probably closer to a self driving car than a manual vacuum.
Valetudo: Open-source cloud replacement for vacuum robots - https://news.ycombinator.com/item?id=31665872 - June 2022 (89 comments)
Valetudo is a cloud-free web interface for robot vacuum cleaners - https://news.ycombinator.com/item?id=25856788 - Jan 2021 (20 comments)
"Rooting is pretty easy, only requiring a 3.3v USB UART Adapter and almost no disassembly. All warranty seals stay intact."
This makes it unusable for normal users. Which is a pity and a solution should be legal, not technical. Xiaomi sells their hardware at very attractive prices and people discover too late it's useless unless connected to servers in China.
It's even worse than that. Privacy-conscious people might try to buy from German brands like a Miele Scout SX3 or a MEDION MD19500. But both of them are just white-labeled Chinese products and use the 114.114.114.114 DNS resolver in Beijing.
- Users will get tired of having their expensive gadgets being bricked because the cloud part was decommissioned.
- Right to repair laws and environmental regulations will require appliances to have longer lives.
- National security.
Once upon a time have flashed OpenWrt as normal user, nothing extraordinary.
That said, the dustcloud OS that Valetudo is built upon is pretty amazing and for a Dreame W10 - the robot that I have - you only need a 3.3V USB to UART adapter to gain root, install dustcloud OS and thereby get an ssh server running on the robot.
The necessary pins were accessible without any disassembly at all.
Once you have dustcloud OS, it'll redirect any China cloud DNS to localhost. You can then ssh into the robot to install Valetudo or an alternative.
Here's my log of the rooting experience: https://news.ycombinator.com/item?id=34137078
Not to start another discussion here though, but I won't allow you to continue this abuse by attempting to control the narrative.
I take the opportunity to thank both of you for your work as I plan to use it as soon as I find some free time to root my device.
All I've seen so far is people greatly reducing the scope by focusing on their single robot with their specific subset of use-case and then saying "hey look it's so easy". Yes, it is indeed easy if you drop most of the requirements. Who would've thought.
That said, yes, that's exactly what open source is for. Someone can take the code and add modifications that cater to their specific need. Isn't it great.
Anyway, the main issue here is not technical but human: You don't solve trust issues with your proposals by just adding more pressure to whoever it is that you're trying to get to do something for you.
Don't let perfect be the enemy of good. BDFL starts with the letter B.
Pretty much each robot vacuum is different and Valetudo does a great job of abstracting away the differences. Even on a 2nd robot of the exact same model, my fork would just break. Using those miio commands with pre-known map_ids really is a super fragile hack.
Also, adding multi-floor support surely took way more working time than the financial equivalent of buying a 2nd robot. It also doesn't make sense financially. I mostly just added it because my kid likes carrying the robot around ^^ Plus with LEGO all over the floor in pretty much every room, we can't automate any cleaning anyway.
Also, the project is in a great state with lots of options in regards to robots. If you have multiple floors, just buy a second robot used for 60€
Why add any risk whatsoever just to save 60€? It makes no sense. It's a downright terrible idea to do that.
I must add a sidenote because I didn't anticipate it reading as such a scathing rebuke as when it was conceived but, your behavior might be earned, you might be the Linus of motor-bins, but like the way you're acting here in front of your target audience is pretty much like every other BDFL who turned on their community.
You are blessed that anybody shows any interest in submitting any code to your project, and I'm not saying that means you have to go merging every CoC that lands in your PR's, but I am saying that even though someone may be misguided, or may not share your vision, it doesn't mean they lack the potential to be swayed.
obviously you know your stuff on motor-bins, and obviously you're passionate about that. Rather than ignoring and then shunning those who are incongruent in their vision, perhaps you could mentor them on the things you've learned over this time about what makes their idea suck.
last but not least, when someone's giving you unsolicited advice that sounds like complete and utter shite, you respond with "thanks, I'll take that into consideration and keep it in mind". The dev equivalent of that is merge it to a branch, let them polish that turd until they succeed or fail, and then you can be validated in both cases and you've not alienated anybody.
The way you act today, since I've been here about ohhh 2006ish maybe, is in line with every other BDFL who watched their project flourish as a fork instead. You might be cool with that, idk, we only just met, but if that is something you're cool with, you should be up front about that.
Surely in that fork, people will contribute more than just the bare minimum to scratch their itch. Hell, most users will likely be super motivated highly skilled developers that really want to move the world forward with their selfless contributions. No shitcode. No hidden agenda. No corporate takeover. Just higher ideals. Most definitely it will be the land of milk and honey. The only thing denying users this bliss is the evil maintainer.
Jesus man. I encourage you to run a FOSS project for a while. Especially one in the consumer electronics space. I'm sure it will change your perspective on this.
Meanwhile, PolyMC still chugs along with updates and features.
aliqot is clearly too optimistic, but your argument here might be a bit too pessimistic.
That said, my own experience with offering open source projects was also pretty miserable, due to hidden agendas and corporate takeover.
What traits have led you to believe I don't?
All of which make me think you haven't run a FOSS project. And if you did, I bet it went swimmingly.
People don't have unlimited time and can't react to every PR. Most projects that take too many PRs devolve into a buggy mess that is only propped up by the "community".
Why would I expose my vaccuum cleaner to such software?
The presumed "abuse" was posting these 2 screenshots https://github.com/DeutscheKI/dreame-w10-valetudo-fork/blob/... https://github.com/DeutscheKI/dreame-w10-valetudo-fork/blob/... into this https://t.me/+uGuDHt0dNCVmODli telegram group with a polite but lengthy text about which UI changes were made between this fork https://github.com/DeutscheKI/dreame-w10-valetudo-fork and this master branch https://github.com/Hypfer/Valetudo/ and what the motivations for each UI decision were.
That Telegram group has 1000+ users. But Hyper found it annoying that I @ tagged him in that message. That's it - no need for pitchforks :)
Everyone, please calm down, our disagreement was merely about communication style !!!!!one1111oneone!1!!11!one1!
I posted the screenshots to the Telegram group because you had written before that you are only interested in seeing forks that bring new ideas. And I thought the fact that I redesigned the map and settings screens to make them more user-friendly would make for an interesting perspective.
Do you mind sharing your multi-map fork?
Obviously this context isn't common internet knowledge ;-)