Xiaomi Roborock Vacuum Cleaner software
We got Mqtt control software for these models ready. Its based on the rytilahti.
Supports all Roborock models from V1 to S7.
Check metod to implementand install nessesary software on Github: https://github.com/rytilahti/python-miio
Compatible with HomeSeer, Home Assistant, Homey, Fibaro HC3, Node Red, Iobroker, OpenHAB and others.
Make your Vaccum great again! Requirements: Python 3.6+, Windows,MacOs or Linux. A public or private MQTT broker like Mosquitto. We now have a ready-made control program for this via mqtt. The program has the following features:
1. zone based cleaning – eg clean kitchen.
2. Multi zone based eg clean living room and kitchen.
3. Waypoints eg goto livingroom(can be used for inspecting your house with a camera mounted or to bring/fetch things)
It is possible to define up to 10 zones and 10 waypoints in the cfg file. Otherwise, the software has most of the commands that are also in the app (see below). And best of all, the program allows Roborock to be controlled from whichever automation system via the MQTT protocol. To obtain the code (the token) for this we had to follow this recipe. And when we got connected we received the status from it. 🙂 We also have another method to get the token, and this is described in the doc file including with the installation file. Commands via mqtt. examples:
miio/set/vaccum/192.168.100.145/start = 1 – start cleaning of whole house
miio/set/vaccum/192.168.100.145/home = 1 –go to docking station miio/set/vaccum/192.168.100.145/multi = kitchen, livingroom, hall – clean these zones miio/set/vaccum/192.168.100.145/waypoint = hallway – goto hallway .
The following commands are available: home = 1 – go to docking station
pause = 1
start = 1
clean = 1 (clean house-all zones)
speed = 1 -100 (%)
setvol = 1-100 (%)
stop = 1
spot = 1 – spot cleaning
soundtest = 1 – it says ‘Starting the cleanup!’
Resume_zoned_clean = 1
resume_or_start = 1
goto = x, y-coordinate
multi = section1, section3, section5 (defined in cfg file) – clean -clean multiple zones i n one command
waypoint =xxx like ‘kitchen’ (x, y defined in cfg file) – goto waypoint find = 1 (say “Hi, I’m over here”)
Waypoint the command is based on the setup in the cfg file where you can define up to 10 waypoints. It provides an opportunity to connect to a voice-controlled system such as Google Home or Alexa. one say e.g. ‘Hey Google, waypoint kitchen (or’ go to kitchen ‘if you want) and the robot goes to the point on the map you have predefined as kitchen in the cfg file. The same applies to zone-based cleaning. All zones must be defined in the cfg file in advance . After this is done, the voice command ‘Hey Google, clean the living room!’ cause the robot to do just that. 🙂 The zones defined are also used in Multisone cleaning where you can ask the robot to clean several zones in the order you choose. Then the command ‘Hey Google, clean the living room and kitchen!’ cause it to be spotlessly clean there. The Find command can be used either if one wants company or if one wants to drive away any unauthorized person with a female voice calling “Hey, I am over here!” You need unit id and token also to get to communicate.This can be done by installing a command line tool called miio with following command: npm install -g mii Then run the Miio discover command from a command window. All your Miio devices will then print in this format on the screen as they are found on your network: Device ID: 48765421 Model info: zhimi.airpurifier.m1 Address: 192.168.100.9 Token: token-as-hex-here via auto-token Support: At least basic More info about this tool here.. Take care of this data, you will need it the later … The system has the ability to support multiple devices, then an additional license must be purchased for each device one wishes. With the Mqtt protocol, one can e.g. Get all the devices to start cleaning at the same time.
Homey, HomeSeer, Home Assistant, Iobroker and many more automation systems supports Mqtt.