Homebridge plugin for Xiaomi / Roborock Vacuum Cleaner's
This homebridge plugin allows you to control the Xiaomi vacuum robots in your Apple Home App (HomeKit).
It is currently presented in the Home App in the form of a Fan because Apple don't officially support Vacuums in Homekit (we can't wait for this moment to arrive)!
For the underlying communication layer, it uses a port of the no-longer maintained library miio. You'll find the code in the directory ./miio.
Features
Fan as On-/Off-Switch. When switching off, directly back to the charging station.
when set to true, it will log only warning and error messages (hiding info and debug messages even when running homebridge -D
pause
false
when set to true, HomeKit shows an additional switch for "pause" - switch is on, when pause is possible
pauseWord
pause
used for naming the Pause comment
findMe
false
when set to true, HomeKit shows an additional switch for "find me" - if switched on, the vacuum will say "Hi, I am over here"
findMeWord
where are you
used for autonaming the "find me" command. E.g: Hey Siri, NameOfYourVacuum where are you
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
dustCollection
false
when set to true, HomeKit shows an additional switch to control the dust collection with the auto-empty dock (only selected models like S7+ or S7 with additional dock). Currently in a beta state
cleanword
cleaning
used for autonaming the Roomselectors
rooms
false
Array of ID / Name for a single Room. If set you have another switch for cleaning only this room
zones
false
Array of name / zone coordinates for a single zone group. A zone group may contain multiple zone squares, each with its own value for number of cleanings. Coordinates are laid out as bottom-left-x, bottom-left-y, top-right-x, top-right-y, number-of-cleanings. A separate tile in Home will be created for each zone group. Figuring out coordinates will take some trial and error. Each zone should be surrounded by brackets: [], with the entire value also surrounded by brackets
autoroom
false
set to true to generate rooms from robot (only S6) or set to array of room name strings (see semi automatic below)
roomTimeout
0
when set to anything above "0" - will initiate room cleaning for multiple rooms automatically after the given time in seconds
Room cleaning
This plugin supports Room cleaning (only models that support room cleaning via the Xiaomi Mi Home app). Keep reading to understand how it works and how to set it up.
How it works
To start the Room Clean Mode, you can enable/disable the room switches in the
order that they need to be cleaned. Then turn on the main Fan switch to start
the actual cleaning.
If you want your robot to start cleaning after you enable/disable the room switches, use the config parameter roomTimeout to set the number of seconds the robot should wait before starting (this is to allow you to find the other rooms you want to set ON/OFF).
How can I set it up
Semi automatic
This feature seems to work with all models which offer room cleaning, but may not work on newer firmware versions (3.5.8_0358 or newer). To use it:
Set the autoroom property in the config to an array of room names (["my room 1", "my room 2", "my room 3"].
In the Xiaomi Mi app, setup a timer at midnight (00:00 or 12:00am).
Enable Select a room to divide.
On the map select the rooms in the order as they appear in the config set in step 1. The order is important as this is how the plugin maps the room names to IDs.
Submit the timer and make sure it's deactivated.
Restart homebridge.
Fully automatic
This feature seems to be working on models that support naming the rooms in the Xiaomi / Roborock App. This is known to include the Roborock S6 as well as the S4 with firmware version 3.5.8_0358 or newer.
Even if you have one of these models but you haven't named the Rooms in your App yet, 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:
请发表评论