Skip to content

Commit

Permalink
chore(release): 2023.04.0
Browse files Browse the repository at this point in the history
  • Loading branch information
Hypfer committed Apr 23, 2023
1 parent eadff02 commit 9b0668c
Show file tree
Hide file tree
Showing 8 changed files with 142 additions and 86 deletions.
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
2 changes: 1 addition & 1 deletion docs/_pages/general/newcomer-guide.md
Expand Up @@ -10,7 +10,7 @@ Hi and welcome to the Valetudo Newcomer Guide.

This should hopefully answer all the questions you might have and also be interesting to read for people that haven't been following the recent development.

_Last update: 2023-03-04_
_Last update: 2023-04-23_


## What is Valetudo?
Expand Down
14 changes: 14 additions & 0 deletions docs/_pages/general/supported-robots.md
Expand Up @@ -44,6 +44,7 @@ You can use Ctrl + F to look for your model of robot.<br/>
5. [S4 Max](#roborock_s4max)
6. [S5 Max](#roborock_s5max)
7. [S7](#roborock_s7)
7. [S7 Pro Ultra](#roborock_s7proultra)
8. [Q7 Max](#roborock_q7max)
4. [MOVA](#mova)
1. [Z500](#mova_z500)
Expand Down Expand Up @@ -389,6 +390,19 @@ The VibraRise mop module makes disassembly of this robot difficult and easy to m
Rooting instructions:
- [FEL](https://valetudo.cloud/pages/installation/roborock.html#fel)

### Roborock S7 Pro Ultra<a id="roborock_s7proultra"></a>

<img src="./img/robots/roborock/roborock_s7proultra.jpg"/>

The Roborock S7 Pro Ultra is sold as:
- Roborock S7 Pro Ultra


Rooting requires full disassembly.<br/>

Rooting instructions:
- [FEL](https://valetudo.cloud/pages/installation/roborock.html#fel)

### Roborock Q7 Max<a id="roborock_q7max"></a>

<img src="./img/robots/roborock/roborock_q7max.jpg"/>
Expand Down
65 changes: 36 additions & 29 deletions docs/_pages/general/why-not-valetudo.md
Expand Up @@ -32,12 +32,42 @@ and installing Valetudo is a pretty much permanent change.
If you're looking for an experience similar to trying out a Linux Live CD, this is not it.<br/>
If you're unsure whether or not you should install Valetudo, the answer is no, you should not install Valetudo.

## Valetudo is Valetudo

Valetudo is a solution for wanting _a_ vacuum robot that works local only. It is not "$VENDOR but without the cloud".

Here's how that works:

✔ "I want to use Valetudo. This robot looks supported so I will use that."<br/>
❌ "I want to use this robot but I don't like the cloud dependency of it. Guess I'll use Valetudo."


This is _very important_ to understand as it means that **feature parity** with the vendor apps is a **non-goal** for the project.
Instead, **feature completeness** for the Valetudo project is defined as "it does what it set out to do", which in this case means "a vacuum robot that works local only".
That _can_ include new and fancy features, yes, but it doesn't _have_ to do that.

"Why is this so important?", you may ask. Good question!<br/>

In commercial products, there are forces at play that constantly push towards adding more and more features.
It doesn't matter if they bring something valuable to the table or even make sense at all.
What matters is that the number of features of product A is higher than the number of features of product B, as customers use that number to make their buying decisions.

The issue with that however is that that's simply not a useful metric to judge the value of a product.
In fact, a lot of products will eventually reach a point, where every additional feature makes them worse due to complexity of use, instability,
severe security vulnerabilities and other undesirable stuff that I'm sure you've already seen and felt many times.
Usually, soon after, the product collapses under its own weight and something new comes along, repeating the same cycle again.

However, as Valetudo is **not a commercial product** it **doesn't have to follow the same playbook**.
Again, it _could_ do that, yes, but that would be bad because that cycle is quite frankly just utterly insane.

So while it's certainly understandable that one would want all the features of Vendor Model XYZ but without the cloud, **this is simply not the right project for that**.

## No multi-floor/multi-map support

Due to technical limitations, Valetudo does not support and will not support multiple maps.
If you need multiple maps, Valetudo likely won't be an option for you.

The topic has been evaluated many times already, with the result always being that it's not technically feasible to properly,
The topic has been evaluated many times already, with the result always being that it's **not technically feasible** to properly,
fully and reliably support multiple floors with the currently supported robot models and firmwares. (2022-12-28)

This isn't something all too terrible though, as investing in a second robot greatly improves the usefulness of the unit.
Expand All @@ -47,44 +77,21 @@ This "fire and forget" mode of operation was why you've considered to buy a vacu
As far as financial reasons are concerned, 200€ should be more than enough to buy a factory new supported one even featuring LIDAR.
If you're happy with buying a used unit, at least here in germany, supported ones usually cost around 75-125€ (2022-12-28)

It is highly unlikely that you won't be able to afford that, given that you **can** afford to live somewhere that features multiple floors.

### Rant-ish section

However, most of the time, this is **not** a financial issue. Instead, usually this topic ends up being a rather fact-free
emotional discussion as the aversion against multiple robots often stems from irrational dogmatism such as "Having more than one vacuum robot is insane!!111 I mean... Two robots! Who does that?!?!".

Acting that way best-case is a learned behavior that helps people incapable of making proper decisions burn their money on nonsense.
Worst-case it's a learned behavior that was never questioned because things just were that way. Maybe even for generations?

At one point, the reason why it exists in the first place did vanish but the learned behavior just stayed the same.
If you want to learn more about this pattern, googling _"Grandma’s Ham"_ should give you some useful pointers.

Anyway, this is something that you **can** and **should** work on to grow as a person.
If you just accept acting irrationally as being how you are, you're making others carry the load that you yourself are responsible to carry.

### Back to topic

Rationally, there's a need (automated cloud-free cleaning on every floor) and there's also a budget for that.
Make your buying decisions based on that and that alone instead of some arbitrary made-up additional constraint.
Make your buying decisions based on that and that alone instead of some arbitrary made-up additional constraint such as
"Having more than one vacuum robot is insane!!111 I mean... Two robots! Who does that?!?!".

We've been working a lot on making that buying decision easier for you by supporting more robots and enhancing the support
for existing ones so that it should be possible for everyone to afford 1-n supported robots.

## You may not be the target audience

While Valetudo may be used by anyone, five years of user interactions have shown that it works better for some demographics than others.

One such demographic that seems to struggle hard with usage of Valetudo are people suffering from an exceptionally short
attention span. As rooting a vacuum robot is an advanced topic, it will always require careful and mindful reading of
information available to get an understanding of how things work and need to be done.

If you're a person that prefers jump-cutted videotutorials featuring little understanding and lots of no-thinking-required
copy-paste commands, you'll likely be very unhappy with Valetudo.

As rooting a vacuum robot is an advanced topic, it will always require careful and mindful reading of information available to
get an understanding of how things work and need to be done.

It should be noted that, being a passion project, there is no incentive for Valetudo to cater to
the needs of demographics that are usually only catered to to make money. If Valetudo was aimed at those demographics,
the needs of demographics that are usually only catered to, to make money. If Valetudo was aimed at those demographics,
there would be ads, data collection, licensing fees and many more undesirable things built in.


Expand Down
32 changes: 16 additions & 16 deletions docs/_pages/integrations/mqtt.md
Expand Up @@ -7,7 +7,7 @@ order: 20
# MQTT integration

To make your robot talk to your MQTT broker and integrate with home automation software, such as but not limited to
Home Assistant, openHAB and Node-RED, configure MQTT via Valetudo's web interface (Hamburger Menu → Connectivity → MQTT Connectivity).
Home Assistant, openHAB and Node-RED, configure MQTT via Valetudo's web interface (Settings → MQTT).

## Autodiscovery

Expand Down Expand Up @@ -67,8 +67,8 @@ Homie autodiscovery info is best viewed with something like [MQTT Explorer](http
- [Current Statistics Area (`area`)](#currentstatisticsareaarea)
- [Current Statistics Time (`time`)](#currentstatisticstimetime)
- [Refresh current statistics (`refresh`)](#refreshcurrentstatisticsrefresh)
- [Fan speed control (`FanSpeedControlCapability`)](#fanspeedcontrolfanspeedcontrolcapability)
- [Fan speed (`preset`)](#fanspeedpreset)
- [Fan control (`FanSpeedControlCapability`)](#fancontrolfanspeedcontrolcapability)
- [Fan (`preset`)](#fanpreset)
- [Go to location (`GoToLocationCapability`)](#gotolocationgotolocationcapability)
- [Go to location (`go`)](#gotolocationgo)
- [Locate (`LocateCapability`)](#locatelocatecapability)
Expand All @@ -77,8 +77,8 @@ Homie autodiscovery info is best viewed with something like [MQTT Explorer](http
- [Clean segments (`clean`)](#cleansegmentsclean)
- [Speaker volume control (`SpeakerVolumeControlCapability`)](#speakervolumecontrolspeakervolumecontrolcapability)
- [Speaker volume (`value`)](#speakervolumevalue)
- [Water grade control (`WaterUsageControlCapability`)](#watergradecontrolwaterusagecontrolcapability)
- [Water grade (`preset`)](#watergradepreset)
- [Water control (`WaterUsageControlCapability`)](#watercontrolwaterusagecontrolcapability)
- [Water (`preset`)](#waterpreset)
- [Wi-Fi configuration (`WifiConfigurationCapability`)](#wi-ficonfigurationwificonfigurationcapability)
- [Frequency (`frequency`)](#frequencyfrequency)
- [IP addresses (`ips`)](#ipaddressesips)
Expand Down Expand Up @@ -112,7 +112,7 @@ Homie autodiscovery info is best viewed with something like [MQTT Explorer](http
- [AttachmentStateAttribute](#attachmentstateattachmentstateattribute)
- [BatteryStateAttribute](#batterystatebatterystateattribute)
- [ConsumableStateAttribute](#consumablesmonitoringconsumablemonitoringcapability)
- [PresetSelectionStateAttribute](#watergradecontrolwaterusagecontrolcapability)
- [PresetSelectionStateAttribute](#watercontrolwaterusagecontrolcapability)
- [StatusStateAttribute](#vacuumstatusstatusstateattribute)


Expand All @@ -129,7 +129,7 @@ Homie autodiscovery info is best viewed with something like [MQTT Explorer](http
- [Mop attachment (`binary_sensor.mqtt`)](#mopmop)
- [Speaker volume (`number.mqtt`)](#speakervolumevalue)
- [Vacuum (`vacuum.mqtt`)](#robot)
- [Water grade (`select.mqtt`)](#watergradepreset)
- [Water (`select.mqtt`)](#waterpreset)
- [Water tank attachment (`binary_sensor.mqtt`)](#watertankwatertank)
- [Wi-Fi configuration (`sensor.mqtt`)](#wi-ficonfigurationwificonfigurationcapability)

Expand Down Expand Up @@ -299,19 +299,19 @@ Home Assistant components controlled by this property:



#### Fan speed control (`FanSpeedControlCapability`) <a id="fanspeedcontrolfanspeedcontrolcapability" />
#### Fan control (`FanSpeedControlCapability`) <a id="fancontrolfanspeedcontrolcapability" />

*Node, capability: [FanSpeedControlCapability](/pages/usage/capabilities-overview.html#fanspeedcontrolcapability)*

Status attributes managed by this node:

- PresetSelectionStateAttribute

##### Fan speed (`preset`) <a id="fanspeedpreset" />
##### Fan (`preset`) <a id="fanpreset" />

*Property, readable, settable, retained*

This handle allows setting the fan speed. It accepts the preset payloads specified in `$format` or in the HAss json attributes.
This handle allows setting the fan. It accepts the preset payloads specified in `$format` or in the HAss json attributes.

- Read topic: `<TOPIC PREFIX>/<IDENTIFIER>/FanSpeedControlCapability/preset`
- Set topic: `<TOPIC PREFIX>/<IDENTIFIER>/FanSpeedControlCapability/preset/set`
Expand All @@ -322,7 +322,7 @@ This handle allows setting the fan speed. It accepts the preset payloads specifi
|------+--------|
| What | Reason |
|------|--------|
| Enum payloads | Different robot models have different fan speed presets. Always check `$format`/`json_attributes` during startup. |
| Enum payloads | Different robot models have different fan presets. Always check `$format`/`json_attributes` during startup. |
|------+--------|

" %}
Expand Down Expand Up @@ -448,19 +448,19 @@ Home Assistant components controlled by this property:



#### Water grade control (`WaterUsageControlCapability`) <a id="watergradecontrolwaterusagecontrolcapability" />
#### Water control (`WaterUsageControlCapability`) <a id="watercontrolwaterusagecontrolcapability" />

*Node, capability: [WaterUsageControlCapability](/pages/usage/capabilities-overview.html#waterusagecontrolcapability)*

Status attributes managed by this node:

- PresetSelectionStateAttribute

##### Water grade (`preset`) <a id="watergradepreset" />
##### Water (`preset`) <a id="waterpreset" />

*Property, readable, settable, retained*

This handle allows setting the water grade. It accepts the preset payloads specified in `$format` or in the HAss json attributes.
This handle allows setting the water. It accepts the preset payloads specified in `$format` or in the HAss json attributes.

- Read topic: `<TOPIC PREFIX>/<IDENTIFIER>/WaterUsageControlCapability/preset`
- Set topic: `<TOPIC PREFIX>/<IDENTIFIER>/WaterUsageControlCapability/preset/set`
Expand All @@ -471,7 +471,7 @@ This handle allows setting the water grade. It accepts the preset payloads speci
|------+--------|
| What | Reason |
|------|--------|
| Enum payloads | Different robot models have different water grade presets. Always check `$format`/`json_attributes` during startup. |
| Enum payloads | Different robot models have different water presets. Always check `$format`/`json_attributes` during startup. |
|------+--------|

" %}
Expand All @@ -484,7 +484,7 @@ min

Home Assistant components controlled by this property:

- Water grade ([`select.mqtt`](https://www.home-assistant.io/integrations/select.mqtt/))
- Water ([`select.mqtt`](https://www.home-assistant.io/integrations/select.mqtt/))



Expand Down

0 comments on commit 9b0668c

Please sign in to comment.