How to control a robot vacuum cleaner Xiaomi from a computer: all ways 2026

Xiaomi’s robot vacuum cleaners are no longer just household assistants, but are part of a smart home ecosystem that can be controlled from a smartphone as well as a computer. The ability to control through a PC opens up new horizons, from automating scheduled cleaning to integrating with systems like Home Assistant or Node-RED. However, many users face difficulties: the official Mi Home app does not have a desktop version, and alternative methods require technical knowledge.

In this article, we will analyze all the current ways to control Xiaomi robot vacuum cleaners (including Mi Robot Vacuum, Dreame, Viomi and others) from a computer under Windows, macOS or Linux. You will learn how to connect through Python scripts, web interfaces, third-party programs and even voice assistants. API, which are not dokumented in official sources, but allow flexible configuration of the device.

Whether you want to just run a remote cleaning operation or create a complex automation system with motion sensor triggers, here you will find step-by-step instructions based on the latest firmware updates from 2026. Let's start with the simplest one: managing through the web version of Mi Home, and then move on to advanced methods.

1. Manage via the web version of Mi Home (without installing software)

The fastest way to start operating a robot vacuum cleaner from a computer is to use the web version of the Mi Home app, which requires no additional software installation and is suitable for basic commands: start cleaning, return to base, check status. However, it has limitations: there is no access to advanced settings (for example, zoning or setting the suction power).

To use the web version:

  • 🌐 Go to home.mi.com and log in with the same account as you do on your mobile app.
  • πŸ” In the Devices section, find your robot vacuum cleaner (e.g. Mi Robot Vacuum-Mop 2 Pro).
  • πŸ–±οΈ Click on the device - the control panel will open with the buttons "Start", "Pause", "Return to base" and the charge indicator.
  • πŸ“Š To view the cleaning map, click on the card icon (not available for all models).

⚠️ Note: The web version of Mi Home may not support some models of robot vacuum cleaners released after 2023.If your device doesn't show up, try updating the firmware through the mobile app or use alternative methods from the following sections.

πŸ“Š What kind of robot vacuum cleaner Xiaomi you have?
Mi Robot Vacuum (series 1S/2/Pro)
Dreame (D9, D10, Bot Z10 Pro)
Viomi (V2, V3, SE)
Other brand (Roborock, Ecovacs)
I haven't bought it yet.

Remote management through Python: the miio library

For users who are ready to dive into technical details, the python-miio library gives full control of the robot vacuum cleaner.This method allows you to send any API commands, including those that are not available in a standard application. For example, you can adjust zoned cleaning by coordinates, change the suction rate or even flash alternative firmware (for power users).

To get started:

  1. Install Python 3.8 or later from the official python.org website.
  2. Install the miio library via the command: pip install python-miio
  3. Get the device token (instruction below) and IP-The address of the robot vacuum cleaner in your local network.

Example of code to start cleaning:

from miio import Vacuum


Connect to the robot (replace TOKEN and IP with your own)



vacuum = Vacuum(ip="192.168.1.100", token="YOUR_TOKEN_HERE")




Teams.



vacuum.start() Start cleaning




vacuum.pause() #Pass on pause




vacuum.home() # Return to base




vacuum.status() # Get status (charge, errors, etc.)

πŸ” How to get a device token?

Instructions for obtaining a token
1. Install the Mi Home app on Android. 2. Use this app to extract the token. 3. Alternatively: intercept the token through a traffic sniffer (e.g., intercept the token, HTTP Toolkit, but it requires networking skills. ⚠️ Do not share the token with strangers – this gives full access to your device!

⚠️ Note: Some models of robot vacuum cleaners (for example, Dreame Bot) Z10 Pros use an encrypted protocol, which requires an additional dreame-vacuum library or manual packet decryption.

β˜‘οΈ Preparation for work with python-miio

Done: 0 / 5

3. Integration with Home Assistant: Full Automation

If you use Home Assistant (HA), then the management of the Xiaomi robot vacuum cleaner can be taken to a new level. HA allows you to create automation on a schedule, triggers (for example, when you are not at home), or even data from other sensors (for example, start cleaning if the dust sensor shows high values).

To connect:

  1. Add Xiaomi Miio integration to Home Assistant via Settings menu β†’ Devices and Services β†’ Add integration.
  2. Enter. IP-address and token of your robot vacuum cleaner (see section above).
  3. After connecting, the device will appear in the list of entities with support for commands: 🏠 vacuum.start - the beginning of cleaning; πŸ›‘ vacuum.pause - pause; πŸ”„ vacuum.return_to_base β€” baseback; πŸ—ΊοΈ vacuum.clean_zone β€” Cleaning in a given area (requires coordinates).

Example of YAML automation to start cleaning every day at 10:00 am when no one is home:

automation:


- alias: "Schedule cleaning"




trigger:




platform: time




at: "10:00:00"




condition:




condition: state




entity_id: person.your_name




state: "not_home"




action:




service: vacuum.start




target:




entity_id: vacuum.xiaomi_vacuum

πŸ’‘ Useful tip: In Home Assistant, you can create a visual cleaning map showing the current position of the robot. HACS). The map is updated in real time and supports interaction – for example, you can manually specify the cleaning area directly on the map.

Model robot vacuum cleanerSupport for Home AssistantFeatures
Mi Robot Vacuum 1Sβœ… Complete.Supports zoning, but no map in real time
Dreame Bot D9βœ… Complete.Requires firmware 2023+ to work properly with HA
Viomi V3⚠️ PartialNo multi-card support (for multiple floors)
Roborock S7βœ… Complete.Best integration among all Xiaomi models

4. Control via Telegram-bot (for remote access)

If you need to operate a robot vacuum cleaner from anywhere in the world, but you don’t want to mess with a VPN or port port port port port port port, a Telegram bot is the perfect solution: you can send commands directly from the messenger, and the bot will transmit them to the robot over a local network or the cloud.

To set up:

  1. Create a bot in Telegram via @BotFather and get an API token.
  2. Install a script processor on your computer (or Raspberry Pi) Example in Python: from telegram.ext import Updater, CommandHandler from miio import Vacuum Settings TELEGRAM_TOKEN = "YOUR_TELEGRAM_TOKEN" VACUUM_IP = "192.168.1.100" VACUUM_TOKEN = "YOUR_VACUUM_TOKEN" vacuum = Vacuum(VACUUM_IP, VACUUM_TOKEN) def start(update, context): vacuum.start() update.message.reply_text("Cleaning started!) updater = Updater(TELEGRAM_TOKEN) updater.dispatcher.add_handler(CommandHandler("start", start)) updater.start_polling()
  3. Launch the script and send /start to your Telegram bot.

πŸ“Œ Key takeaway: Telegram bot is convenient for remote management, but requires that the computer running the script is always online. For reliability, use Raspberry Pi or a cloud server (for example, Google Cloud Shell with a free tariff).

⚠️ Note: Do not store the device tokens and the Telegram bot in plain code. Use environment variables or configuration files with limited access rights (for example,.env).

5. Alternative programs for Windows/macOS

If you don't want to use code, you can use ready-made GUI software that's suitable for users who want to operate a robot vacuum cleaner without learning Python or Home Assistant.

List of audited programmes:

  • πŸ–₯️ Mi Home Controller (Windows) - mobile app emulator with support for all functions, including cleaning cards.
  • 🍎 Xiaomi Vacuum for Mac (macOS) – a utility with a minimalist interface for basic commands.
  • 🌐 Valetudo is a web-based robot vacuum cleaner interface that supports Xiaomi, Roborock and other brands. Requires installation on a device on a local network (for example, Raspberry Pi).

πŸ”§ How to set up Valetudo:

  1. Install Docker on your server (or computer).
  2. Launch the Valetudo container with the command: docker run -d --name valetudo -p 80:80 -v /path/to/config:/config --restart unless-stopped ghcr.io/hypfer/valetudo
  3. Connect the robot vacuum cleaner in the web interface (http://localhost) via the token.

⚠️ Note: Programs like Mi Home Controller may require you to disable two-factor authentication in your Xiaomi account (temporary solution). 2FA back to avoid hacking the account.

6. Voice control via Alice, Google Assistant or Siri

If you have a voice assistant (Yandex Alice, Google Assistant or Siri), you can control a Xiaomi robot vacuum cleaner with a voice, which requires you to link the device to the assistant ecosystem via Mi Home or Home Assistant.

Methods of setting:

  • 🎀 Yandex Alice: Connect the robot vacuum cleaner to Mi Home. In the Yandex app, add Xiaomi account under Smart Home. Now you can use commands: "Alice, start cleaning" or "Alice, send a vacuum cleaner to the baseΒ».
  • πŸ€– Google Assistant: In Mi Home, go to Profile β†’ Settings β†’ Voice assistant, select Google Assistant. Follow the linking instructions for your accounts, and you'll either say, "OK, Google, turn on the vacuum cleaner," or "OK, Google, pause the cleaningΒ».

πŸ” Restrictions on voice control:

  • ❌ Not all models support voice commands (e.g. older versions of the Mi Robot Vacuum may not recognize requests).
  • ❌ There is no way to set zoned cleaning with your voice – only basic commands.
  • ❌ Delayed execution of commands can reach 5-10 seconds due to cloud processing.