Roborock Matter
homebridge-roborock-matter · v3.39.0
Adds Roborock robot vacuums to Apple Home as native Matter vacuums with room cleaning and sensors.
What it says it supports
Brands
- Roborock
Devices it names
- Q7 / Q7 M5 (sc05)
- S4 to S8 Pro Ultra
- Q5/Q8/Q Revo
- Saros series
Shows up in Apple Home as from its README
Sensor readings in its code
What people report
Roborock vacuums exposed via Matter with extras like Empty Bin switch and live clean modes; S7 dock handling was fixed.
- Works2
- Requested1
| Device | Status | What they said | Source |
|---|---|---|---|
| Roborock auto-empty dock | Works | Optional Empty Bin action switch added for compatible docksSaved copySummary add an opt-in Empty Bin HomeKit action switch alongside the existing Matter vacuum expose it only after the robot reports a compatible auto-empty dock always send an explicit Empty Bin request to the robot, treating cached dock state as advisory route the action through the existing acknowledged Matter command path so the robot's own refusal uses the normal error handling detect classic S7 dock capability from live `get_status` when HomeData omits it keep runtime capability updates isolated per robot and reconcile the switch after discovery fix the inherited `dock_type` handler so it … Excerpt saved from GitHub on 2026-10-22. | PR #13 · 2026-08 |
| Roborock S7 with auto-empty dock | Works | Empty Bin switch identity preserved across restarts; fixed in 3.17.6Saved copyRedacted diagnostic report homebridge-roborock-matter diagnostic report generatedAt: 2026-08-25T23:18:35.897Z pluginVersion: 3.17.5 nodeVersion: v24.19.0 token: present homeData: present cloudOnlyMode: disabled matterFeatures: serviceArea, liveRoomTracking, cleanMode, powerSource, fanPowerCleanModes, extendedOperationalStates, chargingDockedStates, faultReporting, tankFaultReporting, homeKitActionSwitches(clean+dock+empty+pause+locate), homeKitStateSensors(docked+cleaning+waterTankEmpty) deviceCount: 2 device 1: Downtown Rock duid: 66xm...ni7Y serialNumber: R14N...1346 resolvedModel: … Excerpt saved from GitHub on 2026-10-22. | Issue #16 · 2026-08 |
| Roborock S7 MaxV via local_roborock_server | Requested | Request to support local server instead of Roborock cloudSaved copyWhat should the plugin do? Allow a custom server URL and local email/PIN login for local_roborock_server, so its vacuums can be exposed to Apple Home through Matter. Why is this useful? I run an S7 MaxV through this local server and would like to use it with this plugin without relying on the Roborock cloud. Additional context https://github.com/Python-roborock/local_roborock_server The server already works with Home Assistant using its Manual server option. Excerpt saved from GitHub on 2026-10-22. | Issue #43 · 2026-10 |
Gathered from the plugin’s GitHub issues, pull requests, discussions, wiki and docs, and from r/homebridge. These are individual reports, so check the linked thread and the date before you buy.
How it connects
Cloud
Roborock account cloud API, exposed over Matter
You’ll need
- Roborock account
Compatibility
| Verified by Homebridge | Yes |
|---|---|
| Homebridge versions | ^1.6.0 || ^2.0.0-beta.0 |
| Homebridge 2.0 | Yes |
| Node.js | ^18.20.4 || ^20.15.1 || ^22 || ^24 |
| Settings in Homebridge UI | Yes |
| Matter | Yes (uses the Homebridge 2 Matter API) |
| Platform name | RoborockVacuumPlatform |
| License | MIT |
Community signals
| Downloads a week | 171 |
|---|---|
| Downloads a month | 2,116 |
| GitHub stars | 8 |
| Open issues | 7 |
| Closed issues | 20 |
| Last code push | 2026-10-15 |
| Latest version | 3.39.0 (2026-10-15) |
| First published | 2026-07-13 |
| Releases | 144 |
In ReReHome
Whatever this plugin publishes reaches Apple Home as a normal HomeKit accessory behind your Homebridge bridge, so ReReHome shows and controls it like any other.
Bridges get their own settings page listing the accessories behind them.
Caveats from the README
- Original S5 needs Mi Home plugin instead
- Optional switches and contact sensors for automations
HomeKit services in its code
Found by scanning the published npm package. A plugin can register a service only for some devices.
- ContactSensor
- Switch
