homebridge-roborock-matter 3.9.4 → 3.10.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +14 -0
- package/README.md +38 -20
- package/config.schema.json +7 -3
- package/dist/matter_vacuum_accessory.js +56 -5
- package/dist/matter_vacuum_accessory.js.map +1 -1
- package/dist/state_sensor_accessory.js +15 -8
- package/dist/state_sensor_accessory.js.map +1 -1
- package/dist/types.js +5 -1
- package/dist/types.js.map +1 -1
- package/docs/matter-clean-mode-shrink-issue-draft.md +103 -0
- package/homebridge-ui/public/index.html +22 -1
- package/homebridge-ui/public/index.js +5 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,19 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 3.10.0
|
|
4
|
+
|
|
5
|
+
**An empty clean-water tank can now notify you, which Matter has never had a way to say.**
|
|
6
|
+
|
|
7
|
+
The robot vacuum device type has no water-tank attribute of any kind — not level, not presence, nothing. I have had to write that sentence to three people now: to Wazza151 in [#5](https://github.com/mathiashornbek/homebridge-roborock-matter/issues/5), who asked for the tank warning he used to get from another bridge, and twice in [#9](https://github.com/mathiashornbek/homebridge-roborock-matter/issues/9). Two releases tried to say it through the fault attribute instead and both came back out, and the plugin has been reading the condition accurately the whole time with nowhere to put it.
|
|
8
|
+
|
|
9
|
+
A HomeKit contact sensor has no such gap. Turn on **Water Tank Empty** under the Home app sensors and each robot gets a read-only sensor that reads Closed while it has no clean water. Point a Home notification at it and a mop run that would have been wasted becomes a message instead. Nothing about the tile changes, no re-pairing is needed, and it is off by default like the other two.
|
|
10
|
+
|
|
11
|
+
Robots do not agree on how they say it, which is the whole difficulty. Wazza151's S8 Pro Ultra reports `dock_error_status: 38` and leaves `water_shortage_status` at 0 — he emptied and refilled the tank and watched the first field track it exactly. vp-debug12's Q Revo sets both. A robot that carries its water onboard and has no dock tank is the mirror case and sets only the second. So both are read, and the a70 is the reason it is an OR rather than a preference order: consulting the shortage flag first and believing its 0 would report a full tank on the very robot the condition was measured on. Only 38 counts as empty — that field also carries a full waste-water tank, a missing dust bag and a blocked duct, and a sensor that sent you to fill an already-full tank would be worse than none.
|
|
12
|
+
|
|
13
|
+
It reports and nothing else. It will not refuse to start a mop run, and that is deliberate: this plugin has already shipped the bug where it declined to forward a command because its own cached snapshot said the command was unnecessary, and a robot that will not start because the plugin believes the tank is empty is that bug with a worse failure mode. The Roborock app owns the tank sensor and is the right place for a hard block.
|
|
14
|
+
|
|
15
|
+
**Also fixed, and it was live for both existing sensors.** With no reading yet — a fresh install, or a sensor just switched on — every sensor answered Closed, on the reasoning that Closed is the resting state of a robot on its dock. That is true for `Docked` and false for `Cleaning`, which therefore claimed a robot was cleaning until the robot first said otherwise, and then moved. Moving is exactly what an automation triggers on, so a new `Cleaning` sensor announced a finished cleaning on its first startup, from a robot that had done nothing. Each sensor now declares its own resting state, and a test pins the general rule: whatever a robot sitting idle in its dock reports, that is what every sensor must already be showing.
|
|
16
|
+
|
|
3
17
|
## 3.9.4
|
|
4
18
|
|
|
5
19
|
**A robot out cleaning your hallway was recorded as sitting in its dock, because of a charging flag it left behind there.**
|
package/README.md
CHANGED
|
@@ -37,23 +37,23 @@ This is the most feature-packed, most thoroughly engineered Roborock plugin for
|
|
|
37
37
|
- 📍 **See where it's cleaning — live.** Apple Home shows _"Cleaning — Kitchen"_ with the room the robot is actually inside, updating as it moves from room to room. Works even for cleans started from the robot's button or the Roborock app. No other Homebridge plugin does this.
|
|
38
38
|
- 🧭 **One robot, one tile — and as many robots as you own.** Sign in once and your whole fleet comes along: every vacuum on your account appears as its own clean, native accessory in Apple Home. No clutter of fake fans and helper switches, and rooms appear with the names you gave them in the Roborock app.
|
|
39
39
|
- ⚡ **Fast and reliable.** Commands go directly to the robot over your own network whenever possible, with the Roborock cloud as automatic backup — and built-in diagnostics in the settings if you ever want to look under the hood.
|
|
40
|
-
- 🛡️ **Verified by Homebridge.** Reviewed and endorsed by the Homebridge team.
|
|
40
|
+
- 🛡️ **Verified by Homebridge.** Reviewed and endorsed by the Homebridge team. 1089 automated tests, zero known vulnerabilities, no analytics, and a startup designed to never crash your Homebridge — even when your Wi-Fi or the Roborock cloud has a bad day.
|
|
41
41
|
|
|
42
42
|
## Features
|
|
43
43
|
|
|
44
|
-
| |
|
|
45
|
-
| ------------------------------------- |
|
|
46
|
-
| 🤖 **Full control from Apple Home** | Start, stop, pause and send the robot home to its dock — from the Home app or Siri
|
|
47
|
-
| 🕹️ **Switches for automations** | Optional per-robot Start Cleaning, Return to Dock, Pause and Find switches — Apple Home does not offer a dock action for a Matter vacuum ([details](#automations-in-apple-home))
|
|
48
|
-
| 🎯 **Sensors as automation triggers** | Optional per-robot Docked and
|
|
49
|
-
| 🚪 **Clean specific rooms** | Pick rooms right in Apple Home, with the names you gave them in the Roborock app — multi-floor homes included
|
|
50
|
-
| 📍 **Live room tracking** | See which room the robot is cleaning right now, updated as it moves ([details](#live-room-tracking))
|
|
51
|
-
| 📊 **Honest cleaning progress** | Each room goes pending → cleaning → done — and a room only counts as done when the robot was actually there
|
|
52
|
-
| 🌀 **Cleaning & suction modes** | Vacuum / Mop / Vacuum + Mop on models that support it — plus optional Quiet / Balanced / Turbo / Max suction levels (Max+ on Q7)
|
|
53
|
-
| 🔋 **Battery & charging** | Battery level and charging state on the accessory ([one Apple-side caveat](#battery-percentage-in-apple-home))
|
|
54
|
-
| 🧠 **New models just work** | Brand-new Roborock models get sensible defaults automatically, and the plugin adapts to what each robot actually supports
|
|
55
|
-
| 🩺 **Built-in diagnostics** | Connection status, a one-click connection test, and a ready-to-share report if you ever need help
|
|
56
|
-
| 🔐 **Easy, safe login** | Sign in with your Roborock account right in the settings — two-factor supported, session stored encrypted
|
|
44
|
+
| | |
|
|
45
|
+
| ------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
46
|
+
| 🤖 **Full control from Apple Home** | Start, stop, pause and send the robot home to its dock — from the Home app or Siri |
|
|
47
|
+
| 🕹️ **Switches for automations** | Optional per-robot Start Cleaning, Return to Dock, Pause and Find switches — Apple Home does not offer a dock action for a Matter vacuum ([details](#automations-in-apple-home)) |
|
|
48
|
+
| 🎯 **Sensors as automation triggers** | Optional per-robot Docked, Cleaning and Water Tank Empty contact sensors — a Matter vacuum is not offered as an automation trigger at all, and a contact sensor is ([details](#automations-in-apple-home)) |
|
|
49
|
+
| 🚪 **Clean specific rooms** | Pick rooms right in Apple Home, with the names you gave them in the Roborock app — multi-floor homes included |
|
|
50
|
+
| 📍 **Live room tracking** | See which room the robot is cleaning right now, updated as it moves ([details](#live-room-tracking)) |
|
|
51
|
+
| 📊 **Honest cleaning progress** | Each room goes pending → cleaning → done — and a room only counts as done when the robot was actually there |
|
|
52
|
+
| 🌀 **Cleaning & suction modes** | Vacuum / Mop / Vacuum + Mop on models that support it — plus optional Quiet / Balanced / Turbo / Max suction levels (Max+ on Q7) |
|
|
53
|
+
| 🔋 **Battery & charging** | Battery level and charging state on the accessory ([one Apple-side caveat](#battery-percentage-in-apple-home)) |
|
|
54
|
+
| 🧠 **New models just work** | Brand-new Roborock models get sensible defaults automatically, and the plugin adapts to what each robot actually supports |
|
|
55
|
+
| 🩺 **Built-in diagnostics** | Connection status, a one-click connection test, and a ready-to-share report if you ever need help |
|
|
56
|
+
| 🔐 **Easy, safe login** | Sign in with your Roborock account right in the settings — two-factor supported, session stored encrypted |
|
|
57
57
|
|
|
58
58
|
## Quick start
|
|
59
59
|
|
|
@@ -89,6 +89,15 @@ The clean mode follows the robot as well: start a vacuum+mop or mop-only clean f
|
|
|
89
89
|
|
|
90
90
|
> ⚠️ **Re-pairing required:** Matter locks an accessory's mode list at commissioning. After enabling (or disabling) this option, restart Homebridge, then **remove the robot from Apple Home and pair it again** — otherwise the new modes will not appear. The same applies to any option that changes announced capabilities.
|
|
91
91
|
|
|
92
|
+
> 🛑 **Turn a suction level off in Apple Home _before_ you disable this option.** Matter stores the selected clean mode on disk and restores it on every start, but it does not store the list of modes it is allowed to come from. So if a suction level (mode 3–7) is the one selected when you disable the option, the restored value is no longer in the announced list, and Matter refuses to bring the accessory up at all:
|
|
93
|
+
>
|
|
94
|
+
> ```
|
|
95
|
+
> Failed to register Matter accessory <name>: [endpoint-behaviors] Behaviors have errors
|
|
96
|
+
> Caused by: [unsupported-mode] Can not use unsupported mode: 6. Allowed modes are 0, 1, 2
|
|
97
|
+
> ```
|
|
98
|
+
>
|
|
99
|
+
> The robot then disappears from Apple Home, and it stays gone on every restart — the stored value never becomes valid again on its own. **Recovery:** re-enable the option, restart, pick **Vacuum**, **Mop** or **Vacuum + Mop** in Apple Home, then disable the option and restart again. This is an upstream limitation rather than a plugin setting gone wrong; the full evidence is written up in [`docs/matter-clean-mode-shrink-issue-draft.md`](./docs/matter-clean-mode-shrink-issue-draft.md).
|
|
100
|
+
|
|
92
101
|
## Supported robots
|
|
93
102
|
|
|
94
103
|
**The entire Roborock lineup.** If it runs in the Roborock app, this plugin can control it:
|
|
@@ -117,7 +126,7 @@ Everything is configurable from the Homebridge UI. The essentials:
|
|
|
117
126
|
| `enableHomeKitActionSwitches` | `false` | Adds a plain Home app switch per robot for Start Cleaning / Return to Dock / Pause / Find, so automations can reach commands Apple does not offer for a Matter vacuum ([details](#automations-in-apple-home)) |
|
|
118
127
|
| `homeKitActionSwitches` | `["dock"]` | Which of those switches to publish: `clean`, `dock`, `pause`, `locate` |
|
|
119
128
|
| `enableHomeKitStateSensors` | `false` | Adds a read-only Home app contact sensor per robot mirroring its state, so an automation can be _triggered_ by the robot — a Matter vacuum is not offered as a trigger, and a contact sensor is ([details](#automations-in-apple-home)) |
|
|
120
|
-
| `homeKitStateSensors` | `["docked"]` | Which of those sensors to publish: `docked`, `cleaning`
|
|
129
|
+
| `homeKitStateSensors` | `["docked"]` | Which of those sensors to publish: `docked`, `cleaning`, `waterTankEmpty` |
|
|
121
130
|
| `cloudOnlyMode` | `false` | Skip local TCP entirely and use the cloud for everything |
|
|
122
131
|
| `transientWarningThrottleHours` | `6` | How often recurring transient-timeout warnings may repeat (0 = only in debug) |
|
|
123
132
|
|
|
@@ -125,7 +134,11 @@ Everything is configurable from the Homebridge UI. The essentials:
|
|
|
125
134
|
|
|
126
135
|
By default a robot that has stopped for any reason shows as **Ready** in Apple Home — whether it finished the job or is wedged under the sofa. Turning on **Report faults in Apple Home** changes that: a robot that is stuck, has a blocked brush or wheel, a missing dust bin, a flat battery or a dock it cannot reach reports the Matter **Error** state instead of Ready. It is off by default because a robot in Error may be refused a Start command by Apple Home.
|
|
127
136
|
|
|
128
|
-
**Dock and tank conditions are
|
|
137
|
+
**Dock and tank conditions are not reported through Matter, and this is worth explaining.** The plugin can read them all accurately — empty clean-water tank, full waste-water tank, missing dust bag, blocked air duct — and two releases tried to surface them through Matter's fault attribute (`OperationalError`). Four controlled tests on an S8 Pro Ultra with a genuinely empty clean-water tank showed it does not work: Apple Home drew no warning when the fault was published beside a Charging state, and drew no warning in the final test either, where the robot was raised all the way to the Matter **Error** state carrying "Clean water tank empty" — the tile simply kept reading Ready. **Apple Home drew nothing in any of those tests** — which is also why an earlier version removed the same write back in 1.4.61. The condition under which it _does_ draw one is not known; it is not "bridged versus not", because this plugin gives every robot its own Matter node and never publishes a bridged accessory. Reporting them was therefore pure cost, and the attribute is no longer published in any configuration.
|
|
138
|
+
|
|
139
|
+
The one condition worth acting on has a way out that does not depend on any of that. **Turn on the `Water Tank Empty` sensor** under [Home app sensors](#automations-in-apple-home) and the robot can notify you, run an automation, or both, entirely outside Matter — a HomeKit contact sensor is rendered and triggerable everywhere, no fault attribute involved.
|
|
140
|
+
|
|
141
|
+
A counterexample arrived in [#9](https://github.com/mathiashornbek/homebridge-roborock-matter/issues/9) after the tests above: another bridge showing Apple Home a `WaterTankEmpty` fault, rendered properly, with a badge and a translated string. So "Apple never draws these" is too strong, and finding the condition it holds under is open work. It does not change the recommendation, because the sensor is not blocked either way: it needs no re-pairing and it does not depend on Apple rendering anything.
|
|
129
142
|
|
|
130
143
|
This section also used to blame the setting for a tile stuck on "Updating…", which was not caused by it: in the final test the same robot, with both switches on, stayed in Ready throughout. That wedge came from a stale pairing left behind by an earlier install — see [Troubleshooting](#troubleshooting). The correction is stated here rather than quietly deleted, because someone may have left the feature switched off on the strength of it.
|
|
131
144
|
|
|
@@ -148,15 +161,20 @@ What Apple offers _inside_ Home automations is a separate question, and it is Ap
|
|
|
148
161
|
|
|
149
162
|
A press takes exactly the same route as a press on the tile — the same acknowledgement wait, the same timing line in the log, the same retry if Roborock times out while the robot is still cleaning — and it moves the tile with it, so a robot sent home by a schedule does not sit there reading Ready. The log line names which surface asked, so `Sending Vicky back to dock from the Home switch.` and `Sending Vicky back to dock from Matter.` are told apart when a schedule misfires.
|
|
150
163
|
|
|
151
|
-
**Optional Home app sensors close the trigger gap.** A Matter vacuum is not offered as an automation trigger, but a HomeKit contact sensor is — so turn on **Add Home app sensors so automations can trigger on the robot** and each robot gets one read-only contact sensor per state you pick: `Vicky Docked` and `Vicky
|
|
164
|
+
**Optional Home app sensors close the trigger gap.** A Matter vacuum is not offered as an automation trigger, but a HomeKit contact sensor is — so turn on **Add Home app sensors so automations can trigger on the robot** and each robot gets one read-only contact sensor per state you pick: `Vicky Docked`, `Vicky Cleaning` and `Vicky Water Tank Empty`. That makes "when the robot leaves its dock, do X" expressible. Each one reads **Closed** while the state it is named after is true and **Open** when it is not: `Vicky Docked` is Closed in the dock and Open once the robot drives off. Nothing is ever sent to the robot — these only report.
|
|
165
|
+
|
|
166
|
+
Docked and Cleaning are more useful together than either alone, and that is the automation they were asked for in [#3](https://github.com/mathiashornbek/homebridge-roborock-matter/issues/3): **not docked and not cleaning means the robot is probably stuck somewhere.** A robot that has genuinely halted reads Open on both.
|
|
167
|
+
|
|
168
|
+
**`Water Tank Empty` is the one Apple Home has no other route to.** Matter's robot vacuum device type has no water-tank attribute of any kind, so no plugin can put the condition on the tile — this sensor is the whole of it. Point a Home notification at it and a mop run that would have been wasted becomes a message instead. It reports and nothing more: it never refuses to start a clean, because the plugin deciding your robot cannot mop on the strength of its own cached reading is a worse failure than a dry mop, and this project has shipped that bug before.
|
|
152
169
|
|
|
153
|
-
|
|
170
|
+
Robots do not agree on how they say it, so both signals are read. An S8 Pro Ultra with an empty tank reports `dock_error_status: 38` and leaves `water_shortage_status` at 0; a Q Revo in the same state sets both. Only 38 is treated as an empty clean-water tank — the same field carries a full waste-water tank and a missing dust bag, and those are not this. A robot that reports neither field leaves the sensor at Open rather than guessing.
|
|
154
171
|
|
|
155
|
-
|
|
172
|
+
Four details that are deliberate:
|
|
156
173
|
|
|
157
174
|
- **A dock chore is not a cleaning run.** Emptying the dust bin, washing the mop and updating maps leave `Cleaning` exactly where it was — Open if the robot was resting, Closed if it was interrupted mid-run. This is the same rule the Home tile follows since 3.6.2, and the sensor is checked against the tile rather than against a second opinion, so the two can never disagree.
|
|
158
175
|
- **`Docked` does not depend on any other setting.** It reads the robot's own charging state, not the state Apple Home was told, so it works the same whether or not **Dock & Returning status** and **Charging/Docked status** are switched on. `Cleaning` mirrors the tile, so with **Dock & Returning status** off it goes Open when the robot starts driving home rather than when it arrives — that is what the tile says too.
|
|
159
176
|
- **Nothing is claimed before the robot has reported in.** For the first seconds after a Homebridge restart some robots report no usable state at all, and a sensor that guessed would move once the real value arrived — firing every automation watching for it, on every restart. The sensors hold their last known reading instead and only move on real data.
|
|
177
|
+
- **A first-run sensor rests where it will not have to move from.** With no cached reading to hold — a fresh install, or a sensor just switched on — each one answers with its own resting state rather than a shared default: `Docked` closed, `Cleaning` and `Water Tank Empty` open. Until 3.10.0 all three would have answered Closed, so a fresh `Cleaning` sensor announced a finished cleaning the moment the robot first said it was idle.
|
|
160
178
|
|
|
161
179
|
They are off by default, because switching them on adds accessories to your Home app.
|
|
162
180
|
|
|
@@ -197,7 +215,7 @@ The complete path — robot → plugin → Homebridge → matter.js store — wa
|
|
|
197
215
|
|
|
198
216
|
## Contributing
|
|
199
217
|
|
|
200
|
-
Model reports, diagnostics exports, and pull requests are very welcome. The codebase ships with
|
|
218
|
+
Model reports, diagnostics exports, and pull requests are very welcome. The codebase ships with 1089 tests (protocol fixtures verified against the [python-roborock](https://github.com/Python-roborock/python-roborock) reference), strict TypeScript checking, and CI across Node 22/24 × Homebridge 1.11/2.x — `npm test` before you push and you're set.
|
|
201
219
|
|
|
202
220
|
## Support the project
|
|
203
221
|
|
package/config.schema.json
CHANGED
|
@@ -94,7 +94,7 @@
|
|
|
94
94
|
},
|
|
95
95
|
"enableFanPowerCleanModes": {
|
|
96
96
|
"title": "Enable Suction-Level Cleaning Modes",
|
|
97
|
-
"description": "Adds Quiet / Balanced / Turbo / Max vacuum modes to the Matter cleaning mode list, so suction can be chosen directly from Apple Home. IMPORTANT: Matter fixes the mode list when the robot is paired, so after enabling or disabling this you must remove the robot from Apple Home and re-pair it once. Requires Matter Cleaning Mode Selection.",
|
|
97
|
+
"description": "Adds Quiet / Balanced / Turbo / Max vacuum modes to the Matter cleaning mode list, so suction can be chosen directly from Apple Home. IMPORTANT: Matter fixes the mode list when the robot is paired, so after enabling or disabling this you must remove the robot from Apple Home and re-pair it once. BEFORE TURNING THIS OFF, select Vacuum, Mop or Vacuum + Mop in Apple Home: Matter restores the stored cleaning mode on every start, and a stored suction level that is no longer offered stops the robot from registering at all, so it disappears from Apple Home until this is switched back on. Requires Matter Cleaning Mode Selection.",
|
|
98
98
|
"type": "boolean",
|
|
99
99
|
"default": false
|
|
100
100
|
},
|
|
@@ -167,13 +167,13 @@
|
|
|
167
167
|
},
|
|
168
168
|
"homeKitStateSensors": {
|
|
169
169
|
"title": "Which Sensors to Add",
|
|
170
|
-
"description": "Which states get a sensor. Docked is the one to start with: it is the state most automations read, and \"not docked\" is its own answer. Cleaning is the pair for it — not docked AND not cleaning means the robot is probably stuck somewhere, which is the automation this was asked for. Only used when the setting above is on.",
|
|
170
|
+
"description": "Which states get a sensor. Docked is the one to start with: it is the state most automations read, and \"not docked\" is its own answer. Cleaning is the pair for it — not docked AND not cleaning means the robot is probably stuck somewhere, which is the automation this was asked for. Water Tank Empty is the one Apple Home cannot show any other way: Matter's vacuum device type has no water-tank attribute, so a sensor is the only route to a notification. Only used when the setting above is on.",
|
|
171
171
|
"type": "array",
|
|
172
172
|
"uniqueItems": true,
|
|
173
173
|
"default": ["docked"],
|
|
174
174
|
"items": {
|
|
175
175
|
"type": "string",
|
|
176
|
-
"enum": ["docked", "cleaning"],
|
|
176
|
+
"enum": ["docked", "cleaning", "waterTankEmpty"],
|
|
177
177
|
"oneOf": [
|
|
178
178
|
{
|
|
179
179
|
"title": "Docked (Closed while the robot is in its dock)",
|
|
@@ -182,6 +182,10 @@
|
|
|
182
182
|
{
|
|
183
183
|
"title": "Cleaning (Closed while the robot is on a cleaning run)",
|
|
184
184
|
"enum": ["cleaning"]
|
|
185
|
+
},
|
|
186
|
+
{
|
|
187
|
+
"title": "Water Tank Empty (Closed while the robot reports no clean water)",
|
|
188
|
+
"enum": ["waterTankEmpty"]
|
|
185
189
|
}
|
|
186
190
|
]
|
|
187
191
|
}
|
|
@@ -127,6 +127,20 @@ const RVC_OPERATIONAL_STATE = {
|
|
|
127
127
|
CLEANING_MOP: 68,
|
|
128
128
|
UPDATING_MAPS: 70,
|
|
129
129
|
};
|
|
130
|
+
/**
|
|
131
|
+
* The dock's own code for "the clean-water tank is empty".
|
|
132
|
+
*
|
|
133
|
+
* Field-measured rather than inferred. Wazza151 emptied and refilled the tank
|
|
134
|
+
* on an S8 Pro Ultra (issue #5) and `dock_error_status` tracked it exactly;
|
|
135
|
+
* vp-debug12's Q Revo carried the same 38 while confirming in issue #9 that
|
|
136
|
+
* the tank was empty. Both are named here because the two robots disagree on
|
|
137
|
+
* everything else about this condition — see isWaterTankEmpty().
|
|
138
|
+
*
|
|
139
|
+
* Only 38 is claimed. `dock_error_status` carries the dock's whole family of
|
|
140
|
+
* housekeeping faults (full waste-water tank, missing dust bag, blocked duct),
|
|
141
|
+
* and "non-zero" would report a full waste-water tank as an empty clean one.
|
|
142
|
+
*/
|
|
143
|
+
const DOCK_ERROR_CLEAN_WATER_TANK_EMPTY = 38;
|
|
130
144
|
const RVC_OPERATIONAL_STATE_LIST = [
|
|
131
145
|
RVC_OPERATIONAL_STATE.STOPPED,
|
|
132
146
|
RVC_OPERATIONAL_STATE.RUNNING,
|
|
@@ -432,10 +446,42 @@ class RoborockMatterVacuumAccessory {
|
|
|
432
446
|
return this.isDockedOrChargingNow();
|
|
433
447
|
case "cleaning":
|
|
434
448
|
return (((_a = this.lastPublishedRunMode) !== null && _a !== void 0 ? _a : this.lastRunMode) === RUN_MODE_CLEANING);
|
|
449
|
+
case "waterTankEmpty":
|
|
450
|
+
return this.isWaterTankEmpty();
|
|
435
451
|
default:
|
|
436
452
|
return null;
|
|
437
453
|
}
|
|
438
454
|
}
|
|
455
|
+
/**
|
|
456
|
+
* Whether the robot says it has no water, or null if it has not said.
|
|
457
|
+
*
|
|
458
|
+
* Two robots have now been measured with a physically empty clean-water tank
|
|
459
|
+
* and they do NOT agree on how they say so:
|
|
460
|
+
*
|
|
461
|
+
* a70 (S8 Pro Ultra, issue #5) dock_error_status 38, water_shortage_status 0
|
|
462
|
+
* a75 (Q Revo, issue #9) dock_error_status 38, water_shortage_status 1
|
|
463
|
+
*
|
|
464
|
+
* So neither field alone covers both, and the a70's zero is the reason this
|
|
465
|
+
* is an OR rather than a preference order: reading `water_shortage_status`
|
|
466
|
+
* first and trusting its 0 would report a full tank on the very robot the
|
|
467
|
+
* condition was field-measured on. Robots that carry their water onboard and
|
|
468
|
+
* have no dock tank at all are the mirror case — nothing sets
|
|
469
|
+
* `dock_error_status` for them, and the shortage flag is all there is.
|
|
470
|
+
*
|
|
471
|
+
* Null when neither field is present. That is not the same as "not empty":
|
|
472
|
+
* an absent field is the robot declining to answer, and a sensor that
|
|
473
|
+
* answered "full" on its behalf would be inventing the one reading a user
|
|
474
|
+
* would act on. Null leaves the sensor at rest instead, and rest is Open.
|
|
475
|
+
*/
|
|
476
|
+
isWaterTankEmpty() {
|
|
477
|
+
const dockError = this.getNumberStatus("dock_error_status");
|
|
478
|
+
const shortage = this.getNumberStatus("water_shortage_status");
|
|
479
|
+
if (dockError === null && shortage === null) {
|
|
480
|
+
return null;
|
|
481
|
+
}
|
|
482
|
+
return (dockError === DOCK_ERROR_CLEAN_WATER_TANK_EMPTY ||
|
|
483
|
+
(shortage !== null && shortage !== 0));
|
|
484
|
+
}
|
|
439
485
|
/**
|
|
440
486
|
* Whether the robot has reported enough for a sensor to claim anything.
|
|
441
487
|
*
|
|
@@ -600,7 +646,7 @@ class RoborockMatterVacuumAccessory {
|
|
|
600
646
|
const cleanMode = clusters.rvcCleanMode;
|
|
601
647
|
// No fault field here on purpose. 3.4.0 published RVC OperationalError and
|
|
602
648
|
// 3.4.1 withdrew it after three controlled field tests showed Apple Home
|
|
603
|
-
//
|
|
649
|
+
// drew no Matter vacuum fault at all. The line
|
|
604
650
|
// kept rendering `fault=…` from an attribute that is now never published,
|
|
605
651
|
// so the branch was permanently dead — and worse, it read as evidence that
|
|
606
652
|
// the feature still existed. If faults ever come back, this line gets the
|
|
@@ -1677,10 +1723,15 @@ class RoborockMatterVacuumAccessory {
|
|
|
1677
1723
|
// tank settled it. Apple Home drew no warning when the fault was sent
|
|
1678
1724
|
// beside a Charging state, and drew no warning when the fault was sent
|
|
1679
1725
|
// beside a forced Error state either — while the tile went to a stuck
|
|
1680
|
-
// "Updating…" that needed a manual poke. Apple
|
|
1681
|
-
//
|
|
1682
|
-
//
|
|
1683
|
-
//
|
|
1726
|
+
// "Updating…" that needed a manual poke. Apple rendered no RVC
|
|
1727
|
+
// OperationalError in any of those tests, so publishing it is pure risk
|
|
1728
|
+
// for a benefit that has never once materialised. That is also why
|
|
1729
|
+
// 1.4.61 removed the plugin's original write. Do NOT explain this by
|
|
1730
|
+
// "bridged accessory": every robot here gets its own Matter node, which
|
|
1731
|
+
// is why each is scanned separately, so a bridge is never involved. #9
|
|
1732
|
+
// has the same attribute rendering correctly elsewhere; the condition
|
|
1733
|
+
// that separates the two cases is still unknown, and guessing at it has
|
|
1734
|
+
// cost this plugin two round trips already.
|
|
1684
1735
|
//
|
|
1685
1736
|
// The Error operational STATE is a different matter and is still
|
|
1686
1737
|
// reported below: Apple renders operational states perfectly well (the
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"matter_vacuum_accessory.js","sourceRoot":"","sources":["../src/matter_vacuum_accessory.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"matter_vacuum_accessory.js","sourceRoot":"","sources":["../src/matter_vacuum_accessory.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,7 +7,7 @@ exports.stateSensorUuidSeed = stateSensorUuidSeed;
|
|
|
7
7
|
/**
|
|
8
8
|
* Every state a sensor can mirror.
|
|
9
9
|
*
|
|
10
|
-
* Same shape as ACTION_SWITCH_DEFINITIONS on purpose: a
|
|
10
|
+
* Same shape as ACTION_SWITCH_DEFINITIONS on purpose: a fourth state is a row
|
|
11
11
|
* here plus an arm in getHomeKitStateSensorValue, and nothing else.
|
|
12
12
|
*/
|
|
13
13
|
exports.STATE_SENSOR_DEFINITIONS = [
|
|
@@ -15,11 +15,19 @@ exports.STATE_SENSOR_DEFINITIONS = [
|
|
|
15
15
|
key: "docked",
|
|
16
16
|
nameSuffix: "Docked",
|
|
17
17
|
summary: "reads Closed while the robot is in its dock and Open once it leaves",
|
|
18
|
+
restingState: true,
|
|
18
19
|
},
|
|
19
20
|
{
|
|
20
21
|
key: "cleaning",
|
|
21
22
|
nameSuffix: "Cleaning",
|
|
22
23
|
summary: "reads Closed while the robot is on a cleaning run and Open when it is not",
|
|
24
|
+
restingState: false,
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
key: "waterTankEmpty",
|
|
28
|
+
nameSuffix: "Water Tank Empty",
|
|
29
|
+
summary: "reads Closed while the robot reports its clean-water tank empty and Open otherwise",
|
|
30
|
+
restingState: false,
|
|
23
31
|
},
|
|
24
32
|
];
|
|
25
33
|
function getStateSensorDefinition(key) {
|
|
@@ -156,13 +164,12 @@ class RoborockStateSensorAccessory {
|
|
|
156
164
|
// refresh(). Kept so both HAP accessory kinds are torn down the same way.
|
|
157
165
|
}
|
|
158
166
|
toCharacteristicValue(value) {
|
|
159
|
-
// No reading yet: answer with
|
|
160
|
-
//
|
|
161
|
-
//
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
return value ? CONTACT_DETECTED : CONTACT_NOT_DETECTED;
|
|
167
|
+
// No reading yet: answer with this sensor's own resting state, which is
|
|
168
|
+
// the one it will not have to move away from when the robot reports in.
|
|
169
|
+
// See the comment on restingState — a single shared default was wrong for
|
|
170
|
+
// every sensor except "docked".
|
|
171
|
+
const resolved = value === null ? this.definition.restingState : value;
|
|
172
|
+
return resolved ? CONTACT_DETECTED : CONTACT_NOT_DETECTED;
|
|
166
173
|
}
|
|
167
174
|
}
|
|
168
175
|
exports.default = RoborockStateSensorAccessory;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"state_sensor_accessory.js","sourceRoot":"","sources":["../src/state_sensor_accessory.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"state_sensor_accessory.js","sourceRoot":"","sources":["../src/state_sensor_accessory.ts"],"names":[],"mappings":"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"}
|
package/dist/types.js
CHANGED
|
@@ -41,7 +41,11 @@ function isHomeKitActionKey(value) {
|
|
|
41
41
|
* one is a timeout over these two, and it belongs in his automation where he
|
|
42
42
|
* can pick the timeout, not in a plugin that would pick it for him.
|
|
43
43
|
*/
|
|
44
|
-
exports.HOMEKIT_STATE_SENSOR_KEYS = [
|
|
44
|
+
exports.HOMEKIT_STATE_SENSOR_KEYS = [
|
|
45
|
+
"docked",
|
|
46
|
+
"cleaning",
|
|
47
|
+
"waterTankEmpty",
|
|
48
|
+
];
|
|
45
49
|
function isHomeKitStateSensorKey(value) {
|
|
46
50
|
return (typeof value === "string" &&
|
|
47
51
|
exports.HOMEKIT_STATE_SENSOR_KEYS.includes(value));
|
package/dist/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":";;;AAsBA,gDAKC;
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":";;;AAsBA,gDAKC;AA2BD,0DAOC;AA3DD;;;;;;;;;;GAUG;AACU,QAAA,mBAAmB,GAAG;IACjC,OAAO;IACP,MAAM;IACN,OAAO;IACP,QAAQ;CACA,CAAC;AAIX,SAAgB,kBAAkB,CAAC,KAAc;IAC/C,OAAO,CACL,OAAO,KAAK,KAAK,QAAQ;QACxB,2BAAyC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAC3D,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;;;;GAgBG;AACU,QAAA,yBAAyB,GAAG;IACvC,QAAQ;IACR,UAAU;IACV,gBAAgB;CACR,CAAC;AAIX,SAAgB,uBAAuB,CACrC,KAAc;IAEd,OAAO,CACL,OAAO,KAAK,KAAK,QAAQ;QACxB,iCAA+C,CAAC,QAAQ,CAAC,KAAK,CAAC,CACjE,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
# A shrinking mode list bricks an RVC accessory permanently
|
|
2
|
+
|
|
3
|
+
**Status:** ready to file upstream. Not filed yet.
|
|
4
|
+
**Where it belongs:** matter.js (`RvcCleanModeServer.initialize` / `ModeUtils.assertMode`), with a
|
|
5
|
+
secondary question for Homebridge about how plugin-supplied cluster state is applied.
|
|
6
|
+
|
|
7
|
+
## Summary
|
|
8
|
+
|
|
9
|
+
`CurrentMode` on a ModeBase-derived cluster is nonvolatile and is restored from storage on every
|
|
10
|
+
start. `SupportedModes` is **not** stored — it is whatever the device supplies at construction time.
|
|
11
|
+
When the supplied list no longer contains the restored `CurrentMode`, `initialize` throws instead of
|
|
12
|
+
falling back, the endpoint's construction is rolled back, and the whole accessory fails to register.
|
|
13
|
+
|
|
14
|
+
The failure is not transient. The stored value never becomes valid on its own, so the accessory
|
|
15
|
+
fails to register on every subsequent start too, and the device disappears from the controller for
|
|
16
|
+
good. Recovering requires the operator to re-widen the mode list, change the mode from the
|
|
17
|
+
controller, and only then narrow it again.
|
|
18
|
+
|
|
19
|
+
## Environment
|
|
20
|
+
|
|
21
|
+
- Homebridge 2.3.1 (Matter.js 0.17.9), Node v24.19.0, Debian x64
|
|
22
|
+
- `homebridge-roborock-matter` 3.10.0, publishing each robot as its **own** Matter node via
|
|
23
|
+
`publishExternalMatterAccessory` (not a bridged accessory)
|
|
24
|
+
- Three separate accessories, three separate Matter storage roots — all three failed identically
|
|
25
|
+
|
|
26
|
+
## Reproduction
|
|
27
|
+
|
|
28
|
+
The plugin announces RVC clean modes 0/1/2 (Vacuum, Mop, Vacuum + Mop) always, and additionally
|
|
29
|
+
modes 3–7 (suction levels) when an opt-in setting is on. The setting was on, and mode **6** was the
|
|
30
|
+
selected one.
|
|
31
|
+
|
|
32
|
+
1. With the setting on, select a suction level in Apple Home. Stored state becomes `currentMode: 6`.
|
|
33
|
+
2. Turn the setting off, so the device now supplies `supportedModes: [0, 1, 2]`.
|
|
34
|
+
3. Restart.
|
|
35
|
+
|
|
36
|
+
Every accessory fails to come up:
|
|
37
|
+
|
|
38
|
+
```
|
|
39
|
+
[Matter/Server] Adding custom RvcCleanMode behavior with handlers
|
|
40
|
+
[Matter/Server] Applied 6 custom behavior(s) to device type
|
|
41
|
+
[Matter/Transaction] Rolling back ◦initialize<<node-id>.<endpoint-id>>#25 due to error: Behaviors have errors
|
|
42
|
+
[Matter/Server] Failed to register Matter accessory Garage: [endpoint-behaviors] Behaviors have errors
|
|
43
|
+
at @matter/node/src/endpoint/properties/Behaviors.ts:253:27
|
|
44
|
+
Cause #0: [behavior-initialization] Error initializing <node-id>.<endpoint-id>.rvcCleanMode
|
|
45
|
+
Caused by: [unsupported-mode] Can not use unsupported mode: 6. Allowed modes are 0, 1, 2
|
|
46
|
+
at Object.assertMode (@matter/node/src/behaviors/mode-base/ModeUtils.ts:32:19)
|
|
47
|
+
at HomebridgeRvcCleanModeServer.initialize (@matter/node/src/behaviors/rvc-clean-mode/RvcCleanModeServer.ts:19:19)
|
|
48
|
+
at ServerBehaviorBacking.invokeInitializer (@matter/node/src/behavior/internal/BehaviorBacking.ts:163:25)
|
|
49
|
+
[Matter/Server] Matter server cleaned up (initialised but never ran)
|
|
50
|
+
[Matter/ChildManager] Failed to publish external Matter accessory Garage: MatterDeviceError:
|
|
51
|
+
Failed to register accessory: AggregateError: Behaviors have errors
|
|
52
|
+
{ code: 'DEVICE_ERROR', recoverable: true }
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
## The stored state, read straight off disk
|
|
56
|
+
|
|
57
|
+
Only `currentMode` is persisted for the cluster — there is no stored `supportedModes` to compare it
|
|
58
|
+
against:
|
|
59
|
+
|
|
60
|
+
```
|
|
61
|
+
$ ls /var/lib/homebridge/matter/<node-id>/<node-id>/ | grep rvcCleanMode
|
|
62
|
+
root.parts.<endpoint-id>.rvcCleanMode.__features__
|
|
63
|
+
root.parts.<endpoint-id>.rvcCleanMode.currentMode
|
|
64
|
+
|
|
65
|
+
$ cat root.parts.<endpoint-id>.rvcCleanMode.currentMode
|
|
66
|
+
6
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
## Why the device's own value does not save it
|
|
70
|
+
|
|
71
|
+
The plugin already clamps: it supplies `currentMode` from a helper that only ever returns a mode
|
|
72
|
+
present in the list it is supplying alongside it. In the failing run it supplied `currentMode: 0`
|
|
73
|
+
together with `supportedModes: [0, 1, 2]`, and the log line confirms it
|
|
74
|
+
(`Matter publish for Garage: … cleanMode=0`).
|
|
75
|
+
|
|
76
|
+
The restored value still won. So the value a device supplies at construction behaves as a default
|
|
77
|
+
that the persisted value overrides, and a device has no way to say "this is the mode now, discard
|
|
78
|
+
what you stored". That is the second half of the problem: even a device that knows its mode list
|
|
79
|
+
shrank cannot repair the state it is about to be judged on.
|
|
80
|
+
|
|
81
|
+
`recoverable: true` is set on the resulting error, but nothing retries, and a retry with the same
|
|
82
|
+
inputs would fail the same way.
|
|
83
|
+
|
|
84
|
+
## Suggested fix
|
|
85
|
+
|
|
86
|
+
`assertMode` is the right check for a `ChangeToMode` command coming from a controller — rejecting an
|
|
87
|
+
unsupported mode there is correct. It is the wrong behaviour during `initialize`, where the input is
|
|
88
|
+
the device's own restored state rather than a controller request.
|
|
89
|
+
|
|
90
|
+
Preferred: on initialize, if the restored `CurrentMode` is not in `SupportedModes`, fall back to a
|
|
91
|
+
supported mode (the supplied one, or the first entry) and log it, rather than throwing. The spec
|
|
92
|
+
requires `CurrentMode` to be one of `SupportedModes`; clamping satisfies that invariant, whereas
|
|
93
|
+
failing construction leaves the invariant unenforceable and the device unreachable.
|
|
94
|
+
|
|
95
|
+
Alternative, or in addition: let a device supply `CurrentMode` as an explicit override at
|
|
96
|
+
construction so it can reconcile its own persisted state.
|
|
97
|
+
|
|
98
|
+
## Impact beyond this plugin
|
|
99
|
+
|
|
100
|
+
Nothing here is specific to suction levels, or to this plugin. Any ModeBase-derived cluster whose
|
|
101
|
+
mode list can legitimately differ between two starts hits it — a setting toggled off, a capability
|
|
102
|
+
that is detected on one boot and not the next, a device whose firmware drops a mode. The list
|
|
103
|
+
shrinking is a normal event; losing the accessory permanently should not be the consequence.
|
|
@@ -219,7 +219,12 @@
|
|
|
219
219
|
<small
|
|
220
220
|
>Adds Quiet / Balanced / Turbo / Max (and Max+ on Q7) to the mode
|
|
221
221
|
picker — Apple renders them as Quiet / Automatic / Quick / Max / Deep
|
|
222
|
-
Clean. Requires cleaning mode selection above
|
|
222
|
+
Clean. Requires cleaning mode selection above.
|
|
223
|
+
<strong>Before you turn this off,</strong> select Vacuum, Mop or
|
|
224
|
+
Vacuum + Mop in Apple Home first: Matter restores the stored mode on
|
|
225
|
+
every start, and a stored suction level that is no longer offered
|
|
226
|
+
stops the robot from registering at all — it disappears from Apple
|
|
227
|
+
Home until this is turned back on.</small
|
|
223
228
|
>
|
|
224
229
|
</span>
|
|
225
230
|
</label>
|
|
@@ -384,6 +389,22 @@
|
|
|
384
389
|
></span
|
|
385
390
|
>
|
|
386
391
|
</label>
|
|
392
|
+
<label class="checkbox">
|
|
393
|
+
<input id="homekit-state-water-tank-empty" type="checkbox" disabled />
|
|
394
|
+
<span
|
|
395
|
+
>Water Tank Empty
|
|
396
|
+
<small
|
|
397
|
+
>Closed while the robot reports its clean-water tank empty, Open
|
|
398
|
+
otherwise. Matter’s robot vacuum device type has no water-tank
|
|
399
|
+
attribute at all, so this sensor is the only way the condition can
|
|
400
|
+
reach the Home app — and it is the one that is actually worth
|
|
401
|
+
a notification, because a mop run with no water is a wasted run. It
|
|
402
|
+
only reports; it never stops a clean. Robots differ in how they say
|
|
403
|
+
it, so both signals are read; a robot that reports neither leaves
|
|
404
|
+
the sensor at Open.</small
|
|
405
|
+
></span
|
|
406
|
+
>
|
|
407
|
+
</label>
|
|
387
408
|
</div>
|
|
388
409
|
|
|
389
410
|
<div id="homekit-switch-pairing" class="pairing-callout hidden">
|
|
@@ -45,6 +45,9 @@ const elements = {
|
|
|
45
45
|
),
|
|
46
46
|
homeKitStateDocked: document.getElementById("homekit-state-docked"),
|
|
47
47
|
homeKitStateCleaning: document.getElementById("homekit-state-cleaning"),
|
|
48
|
+
homeKitStateWaterTankEmpty: document.getElementById(
|
|
49
|
+
"homekit-state-water-tank-empty"
|
|
50
|
+
),
|
|
48
51
|
enableMatterFaultReporting: document.getElementById(
|
|
49
52
|
"enable-matter-fault-reporting"
|
|
50
53
|
),
|
|
@@ -106,10 +109,11 @@ const ACTION_SWITCH_ELEMENTS = {
|
|
|
106
109
|
|
|
107
110
|
// Kept in the same order as HOMEKIT_STATE_SENSOR_KEYS in src/types.ts, for the
|
|
108
111
|
// same reason as above.
|
|
109
|
-
const STATE_SENSOR_KEYS = ["docked", "cleaning"];
|
|
112
|
+
const STATE_SENSOR_KEYS = ["docked", "cleaning", "waterTankEmpty"];
|
|
110
113
|
const STATE_SENSOR_ELEMENTS = {
|
|
111
114
|
docked: () => elements.homeKitStateDocked,
|
|
112
115
|
cleaning: () => elements.homeKitStateCleaning,
|
|
116
|
+
waterTankEmpty: () => elements.homeKitStateWaterTankEmpty,
|
|
113
117
|
};
|
|
114
118
|
|
|
115
119
|
function showToast(type, message) {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "homebridge-roborock-matter",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.10.1",
|
|
4
4
|
"description": "The most complete Roborock plugin for Apple Home. Supports the entire Roborock lineup — from the classic S-series to the new 2025 Q7 series that no other plugin can control. Sign in with your Roborock account and get native start/stop, room cleaning, suction levels, battery, and live 'cleaning in the kitchen' room tracking. Verified by Homebridge.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"author": {
|