Important: This documentation covers Yarn 1 (Classic).
For Yarn 2+ docs and migration guide, see yarnpkg.com.

Package detail

homebridge-roborock

maisun483MIT0.5.5

Xiaomi Vacuum Cleaner - 1st (Mi Robot), 2nd (Roborock S50 + S55), 3rd Generation (Roborock S6) and S5 Max - plugin for Homebridge.

homebridge-plugin, xiaomi, mi robot, vacuum cleaner, roborock s50, roborock s55, roborock s5, roborock s5 max, xiaomi vacuum gen1, xiaomi vacuum gen2, xiaomi vacuum gen3, roborock s6, roborock t6, roborock t4, xiaowa lite c10, xiaowa c10, mi robot 1s

readme

homebridge-roborock

This plugin is a fork of homebridge-xiaomi-roborock-vacuum (thanks to Nico Hartung) with the following changes: 1) Changed the logic to periodically pull status from the device, make the accessories more responsive 2) Added support for go to target function 3) The room switches can be used to select multiple rooms before start cleaning. When cleaning fan is powered on, it automatically detects if the device should do a full house clean or room clean based on if any room is enabled for cleaning 4) Fixed the resume function so now it's possible to resume from room cleaning mode 5) More validation logic added together with some other small improvements 6) Fixed no gentle mode for Roborock S5 7) Auto configure the minimal step for fan service so for models with 4 speeds it will be 25% each level and for models with 5 speeds it will be 20% each level. It is no longer possible to choose other percentages.

Features

  • Fan as On-/Off-Switch. When switching off, directly back to the charging station.
  • Battery status and condition in the device details. Low battery alert.
  • Pause switch (optional).
  • Occupancy sensor (similar to motion sensor) for dock status (optional).
  • Seconds Fan for water box modes (optional).
Screenshot Apple HomeKit with homebridge-xiaomi-roborock-vacuum Screenshot Elgato Eve App with homebridge-xiaomi-roborock-vacuum

Instructions

  1. Install git packages first with sudo apt install git.
  2. Install the plugin as root (sudo su -) with npm install -g homebridge-xiaomi-roborock-vacuum@latest --unsafe-perm.
  3. Customize you homebridge configuration config.json.
  4. Restart homebridge, ggf. service homebridge restart.

  5. Example config.json with one vacuum and room cleaning:

"accessories": [
 {
  "accessory": "RoborockVacuum",
  "name": "My Roborock Cleaner",
  "ip": "192.168.1.150",
  "token": "abcdef1234567890abcdef1234567890",
  "pause": true,
  "dock": true,
  "waterBox": false,
  "cleanword": "cleaning",
  "rooms": [
    {
      "id": 16,
      "name": "Livingroom"
    },
    {
      "id": 17,
      "name": "Kitchen"
    }
  ]
 },
 "gotoTarget": {
    "name": "Go to Bin",
    "target": [
          21659,
          33063
    ]
  }
],

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
waterBox false when set to true, HomeKit shows an additional slider to control the amount of water released by the robot (only selected models like S5-Max). Currently in a beta state.
cleanword cleaning used for autonaming the Roomselectors
rooms null Array of ID / Name for a single Room. If set you have another switch for cleaning only this room
autoroom false when set to true, Rooms will be generated from Robot. (only S6)
gotoTarget null Configure a switch to allow the device to go to target specified by the coordinates

AutoRoom Generation

This feature seems to be working only on the S6 Model. We figured out this is why the Api call only delivers the mapping when the Rooms are named in the Xioami / Roborock App.

So when you have an S6 but not named the Rooms in your App this function will not work! Thanks @domeOo

Xiaomi Token

To use this plugin, you have to read the "token" of the xiaomi vacuum robots. Here are some detailed instructions: