From 14358add5397c539ec2fa276123d99922c079ecf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=B6ren=20Beye?= Date: Tue, 7 Nov 2023 21:23:31 +0100 Subject: [PATCH] docs: FAQ update --- docs/_pages/faq.md | 109 ++++++++++++++++++++++++++++++++++----------- 1 file changed, 83 insertions(+), 26 deletions(-) diff --git a/docs/_pages/faq.md b/docs/_pages/faq.md index 97b41aeaf25..a084b4f1ad2 100644 --- a/docs/_pages/faq.md +++ b/docs/_pages/faq.md @@ -8,45 +8,102 @@ order: 30 ## Why the name? Valetudo is the roman name for the greek goddess Hygieia, which is the goddess of health, cleanliness and hygiene. -Also, I'm bad at naming things. -## Why Javascript? +## Can you support Robot Model XY? -Because it has become a nice programming language that runs everywhere and can do almost anything. -It is also pretty hard to do something so wrong with JS that you get a Segfault and/or an RCE vulnerability. +Sure! We'd be glad to look into your case. To help us help you, we only require you to buy and permanently +donate 3 units of the robot in question to us. (2 for HW Hacking, 1 for SW Hacking) -I strongly encourage you to drop that stale "haha js dumb please like me fellow IT peoples" meme and check out the -most recent iteration of the language for yourself. You will be pleasantly surprised if you give it a chance. +Though we can't promise to be successful, we strive to achieve a success rate of at least 3%. +As with any R&D project though, we unfortunately can't offer any refunds if we fail to get the robot support. -## Are there still random factory resets? +We thank you for your understanding and are looking forward to doing business with you! -No. We know what caused them, and it's not happening anymore. +## Why is there no iOS companion app? -To add some context:
-Roborock V1 and Roborock S5 up to firmware version 1898 hat an issue with random factory resets. -This only applies to these two models of vacuum robot. Nothing else. +Because I don't want the app to be a paid yearly subscription supporting only some small garage startups in Cupertino +and not the actual project. -Those resets were caused by the watchdog of the firmware sometimes noticing that there was less free ram than expected, due to -Valetudo running on the vacuum. This set a "broken" flag for the partition and if on the daily reboot both system A and B were flagged, -the robot would reset itself to factory defaults. +You might not be aware of this, but since there's no sideloading and no alternative stores on iDevices, the only way +to get your software on there is through the official distribution channel of the vendor which comes with a yearly 80€ fee. -This isn't happening anymore on the S5 FW 2008+ due to roborock having optimized their software quite significantly -so that they could manufacture the S5 Max with only 256MB RAM as opposed to the 512MB on the S5. +Furthermore, development for iApps can only be done on a Mac which needs to be bought and also won't last forever. +Assuming a reasonable 5 years of lifetime for the hardware, picking the cheapest Mac mini and a 2-gen-behind base-spec +iPhone, at the time of writing, I end up with this calculation for 5 years: -However, we've also found a mitigation, which prevents this issue from appearing on the V1, which hasn't yet received the -new and memory-optimized roborock firmware code. +- Store Fee: 5 * 80€ = 400€ +- Mac Mini: 699€ +- iPhone 13: 729€ -If you build your firmware with the fix reset option (on by default), it will contain a script that on each reboot checks -both System A and System B for the "broken" flag and unsets that. +Sum: 1828€ -Therefore, it will never have two "broken" flags, unless stuff is _actually_ broken. +This money needs to be earned somehow, and it needs to be earned yearly, which forces you to find some way of generating +recurring revenue - something I do not want to do with this project. -## Where do I configure the Timezone? +### But what if you did it anyway? -The timezone on the device **cannot** be changed. It is always UTC. +Fine. If you insist, we can go along with that: -Every feature in Valetudo that uses time will automatically use the local time reported by your browser. This means you do not have to worry about it. It is handled by the application itself. +Excluding any compensation for my time spent on actually building and supporting that app, by dividing that number by 5, +you end up with 365.50€. 365.50€ that would need to be donated or paid by users every year just so that I don't lose money +out of my own pocket on paying the cloud landlord for wanting to exist. -The only instance where the time is relevant, is when looking at the Valetudo logs, which are in UTC (as mentioned above). +But it gets worse, because the platform also takes a 15% (previously 30%) fee on everything sold there, meaning that people +would actually have to buy apps/subscriptions for 420.44€ every year; all of it ending up at the platform and nothing +benefiting the actual project people would've wanted to support. -On the other hand, when travelling abroad, please be aware that the local time will be different than where the robot is hosted. Keep this in mind. +
+ +Imagine donating 10€ to a FOSS project you really liked and wanted to support only to then a little while later discover +that you've actually been donating to billion-dollar big tech destroyers of worlds all along. + +Now imagine 40+ people living through that every year for 5 years.
+And after those 5 years, the App just vanishes from the storefront with no way of installing it anymore. + +Sounds quite crushing, doesn't it? + +### But don't I need an app? + +No! You don't. + +The app is just being used for robot discovery on your network and can be completely replaced by +- looking at your routers webinterface and creating a bookmark with the IP + +OR +- not looking at the routers interface and just creating a bookmark for the mDNS hostname, + +All the android one does is discover Valetudo instances and then open a browser.
+You already have a browser on your iDevice. + +...though, one that is frequently broken with no way for you to switch to a different browser, because on iDevices, +every browser is Safari as required by the ToS of their digital storefront. + +There is no Blink or Gecko. There's only apples special blend of WebKit including all its bugs and quirks.
+But this is a different rant. + +### Why is there an Android app then? + +On Android, it's different: +- You can use any computer running Windows/Linux/Mac to develop an app for it +- You don't have to use a store; you can just distribute the APK for side-loading +- You don't have to use the vendor store; you can just use F-Droid which is free +- If you want to use the vendor store, you need to pay a one-time $25 and that's it + +With effectively no barrier of entry, you can just start hacking something together +without first having to worry about some kind of business plan ensuring recurring revenue. +This allows for creation of tools that on other platforms would never exist because you +just can't (or don't want to) monetize them. + +While Google - as all big tech - is of course following the exact same playbook, slowly chipping away at all that, +for now at least, it's way less bad and thus the best and _only_ thing we have. :( + +### Final remarks + +Just for reference, I'm not interested in any special Apple sponsorships or donations of iHardware.
+If you even think about doing that, you've completely missed the point of the previous wall of text. + +It's not about money. It's about not enabling these business practices. + +Further reading: +- [2011, 28c3: The coming war on general computation, Talk by Cory Doctorow](https://archive.org/details/GeneralComputation) +- [2023, Technofeudalism, Book by Yanis Varoufakis](https://www.penguin.co.uk/books/451795/technofeudalism-by-varoufakis-yanis/9781847927279)