Package Exports
- homebridge-xiaomi-roborock-vacuum
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (homebridge-xiaomi-roborock-vacuum) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
homebridge-xiaomi-roborock-vacuum
Homebridge plugin for Xiaomi Roborock's
With this homebridge plugin can you control the xiaomi vacuum robots as fan in your Apple Home App (HomeKit).
Thus plugin use the new miio version 0.15.6 or newer, not like the old ones 0.14.1. Timeouts and API errors are a thing of the past!

Features
- Fan as On-/Off-Switch. When switching off, directly back to the charging station.
- Fanspeed levels adjustable via 3D Touch / Force Touch.
- Xiaomi Mi Robot 1st Generation (Roborock Vacuum V1)
- Off (0%)
- Quiet (1-38%)
- Balanced (39-60%)
- Turbo (61-77%)
- Max Speed (78-100%)
- Xiaomi Roborock S50 2nd Generation (Roborock Vacuum S5)
- Off (0%)
- Mopping (1-15%)
- Quiet (16-38%)
- Balanced (39-60%)
- Turbo (61-75%)
- Max Speed (76-100%)
- Xiaomi Mi Robot 1st Generation (Roborock Vacuum V1)
- Battery status and condition in the device details. Low battery alert.
- Pause switch (optional).
- Occupancy sensor (similar to motion sensor) for dock status (optional).
Anleitung
- Install the plugin as
root(sudo su -) withnpm install -g homebridge-xiaomi-roborock-vacuum@latest --unsafe-perm. - Customize you homebridge configuration
config.json. - Restart homebridge, ggf.
service homebridge restart.
- Example
config.jsonwith one vacuum:
"accessories": [
{
"accessory": "XiaomiRoborockVacuum",
"name": "Xiaomi Mi Robot Vaccum 1st Generation",
"ip": "192.168.1.150",
"token": "abcdef1234567890abcdef1234567890",
"pause": false,
"dock": true
}
],- Example
config.jsonwith two vacuums:
"accessories": [
{
"accessory": "XiaomiRoborockVacuum",
"name": "Xiaomi Mi Robot Vaccum 1st Generation",
"ip": "192.168.1.150",
"token": "abcdef1234567890abcdef1234567890",
"pause": false,
"dock": true
},
{
"accessory": "XiaomiRoborockVacuum",
"name": "Xiaomi Roborock S50 Vaccum 2nd Generation",
"ip": "192.168.1.151",
"token": "1234567890abcdef1234567890abcdef",
"pause": false,
"dock": true
}
],Optional parameters
| Name of parameter | Default value | Notes |
|---|---|---|
pause |
false | when set to true, HomeKit shows an additional switch for "pause" - switch is on, when pause is possible |
dock |
false | when set to true, HomeKit shows an occupancy sensor, if robot is in the charging dock |
Xiaomi Token
To use this plugin, you have to read the "token" of the xiaomi vacuum robots. Here are some detailed instructions:
- πΊπΈπ¬π§ - python-miio - Getting started
- π©πͺ - Apple HomeKit Forum - HomeKit.Community
- π©πͺ - Homematic-Guru.de
Changes
0.4.0
- Feature: Mopping is now supported. #31
- Feature: Slightly different Speedmodes between Gen1 and Gen2 considered.
- Bugfix: Initializing status values to variables at startup, there were problems when the robot was not docked when starting homebridge. #15 & #30
- Bugfix:
pausefunctionality improved. #15 & #30 - Bugfix: Logging improved.
0.3.2
- Bugfix: "Unknown error" with meaningful error message.
0.3.1
- README customized (
rootwithsudo su -).
0.3.0
- Feature: Additional characteristics (4) for care indicator of sensors, side brush, main brush and filter added (Eve App).
0.2.2
- Bugfix: Own Fork from "miio" with fixed for #5, #6 and #7.
0.2.1
- Bugfix: Fanspeed levels over HomeKit improved.
0.2.0
- Rewrite plugin, changed logic.
- Bugfix: Connection establishment improved.
- Bugfix:
UnhandledPromiseRejectionWarning
0.1.5
- Feature: ERRORs from miio-API added.
0.1.4
- Bugfix: If
pause/dockinconfig.jsonenabled. - Bugfix:
cannot read property getCharacteristic of undefined.
0.1.3
- Feature: Logging added.
- Bugfix:
UnhandledPromiseRejectionWarning. - README customized.
0.1.2
- Feature: Deviceinfos (model, serial and firmware version) shows at startup.
- Bugfix:
UnhandledPromiseRejectionWarning. - README customized.
0.1.1
- README typo.
0.1.0
- First version.