Connecting the robot vacuum cleaner Xiaomi to HomeKit: 3 proven ways (with video)

Why Xiaomi and HomeKit are not friends out of the box

Xiaomi’s robot vacuum cleaners are among the most popular smart home devices thanks to their combination of price, functionality and integration with the Mi Home ecosystem. However, Apple owners face a problem: officially no Xiaomi robot vacuum cleaner supports the HomeKit protocol. This means that you will not be able to control it through the Home app on your iPhone or iPad, enable automation with other Apple devices (for example, start cleaning when you leave home), or use Siri voice commands.

The reason lies in the policy of Xiaomi: the company relies on its own ecosystem. Home/Mi Home Lite and partner platforms like Google Home or Amazon Alexa. But there are workarounds! In this article, we'll break down three workable integrations (via Home Assistant, ATHOM And Mi Home Bridge, their pros and cons, and the typical bugs that get in the way of connectivity. 2 Pro, Dreame D9 viomi V3 into 2026 year.

⚠️ Important: Before you start, make sure your robot vacuum cleaner is connected to Wi-Fi and runs on the Mi Home app. Without it, HomeKit integration is impossible!

Method 1: Connecting with Home Assistant (most reliable)

Home Assistant is an open-source smart home platform that supports thousands of devices, including Xiaomi robot vacuum cleaners, and allows you to β€œtranslate” commands from Mi Home to the HomeKit protocol, making the device visible to Apple.

  • πŸ”§ Full control of the device (including cleaning areas, schedule, suction level).
  • πŸ”„ Stable operation without cloud servers (all data is processed locally).
  • πŸ› οΈ Support for all models Xiaomi/Dreame/Viomi (even obsolete).

You'll need to set up:

  1. Computer or Raspberry Pi (recommended by Raspberry Pi 4 or Home Assistant Yellow).
  2. Installed Home Assistant (instructions for installation – official website).
  3. Mi Home Access Token (see below)

Install Home Assistant on Raspberry Pi or server |

Download the Home Assistant app on iPhone|

Get token access to Mi Home (via Mi Home Token Extractor)|

Write it down. IP-address of a robot vacuum cleaner on the local network|

Disable two-factor authentication in Mi Home (temporarily)

-->

Step 1: Obtaining Mi Home Token

The token is used to authenticate Home Assistant in the Xiaomi cloud, and you can do this in two ways:

  1. Through the Mi Home Token Extractor (Android): Install the app from GitHub. Sign in to your Mi Home account. Select a robot vacuum cleaner from the list of devices and copy the token.
  2. Through Packet Capture (iOS): Install Packet Capture from the App Store. Run traffic capture, open Mi Home and wait for the data update. Log a request to api.io.mi.com, the token will be in the ssecurity setting.

Step 2: Set up Home Assistant

Open the configuration file configuration.yaml and add the following code (replace). IP_Address and your Token to your data):

vacuum:


- platform: xiaomi_miio




host: IP_ ADRES




token: Your Token




name: "Xiaomi Robot Vacuum"

Then add integration with HomeKit:

homekit:


- name: HomeKit Bridge




port: 51827




filter:




include_entities:




- vacuum.xiaomi_robot_vacuum




entity_config:




vacuum.xiaomi_robot_vacuum:




name: Xiaomi vacuum cleaner




feature_list:




- start_pause




- stop




- return_home




- battery_level




- status

Reboot Home Assistant, and then the robot vacuum will appear in the Home app on the iPhone.

πŸ’‘

If the robot doesn’t show up in HomeKit, check that port 51827 is open in your router’s firewall settings.

Method 2: Using the bridge ATHOM (beginner)

If Home Assistant seems too complicated, you can use the ready-made solution – the bridge. ATHOM (This device connects to your network and β€œtransfers” commands from Mi Home to HomeKit without having to configure the server.

Pros of the method:

  • πŸ”Œ Easy to install (no need for Raspberry Pi or programming knowledge).
  • πŸ“± Support for all Xiaomi devices, including vacuum cleaners, lamps and sensors.
  • πŸ”„ Automatic firmware updates.

Cons:

  • πŸ’° The cost of the bridge (~3,000 to 5,000 rubles).
  • 🌐 Dependence on the cloud ATHOM (When servers fail, management may be lost).

Instructions for connection:

  1. Buy a bridge. ATHOM Mi Home Bridge (sold on AliExpress or in specialty stores).
  2. Connect the bridge to power and your Wi-Fi network.
  3. Install the app ATHOM on your iPhone and log in.
  4. In the app, select Add Device β†’ Mi Home and enter your username/password from your Xiaomi account.
  5. Once synchronized, the robot vacuum will appear in the list of devices. Click Add to HomeKit.
  6. Scan it. QR-code in the application "Home" on the iPhone.
What to do if the bridge ATHOM Can't find a robot vacuum cleaner?
1. Make sure that the robot and the bridge are connected to the same Wi-Fi network (do not use the guest network). 2. Check that the robot has access from other regions in the Mi Home settings (select the server "Mainland China" or "Europe" in the account profile). 3. Reset the bridge by disconnecting it from power for 30 seconds. 4. If the problem persists, update the bridge firmware via the app ATHOM.

Limitations of the method:

Through ATHOM Only basic functions are available:

FunctionAvailable on HomeKit?Note
Start/pause cleaningβœ… Yes.It's stable.
Return to baseβœ… Yes.Sometimes it is delayed for 10-20 seconds.
Installation of cleaning areas❌ No.Only through Mi Home.
Adjustment of suction power❌ No.β€”
Voice control (Siri)βœ… Yes.Teams: "Hey Siri, run the vacuum cleaner"

πŸ’‘

Bridge. ATHOM β€” Best choice for beginners, but only for basic management. For advanced features (cleaning areas, schedules) you need Home Assistant.

Method 3: Manual addition via Mi Home Bridge (for experienced)

If you don’t want to buy a bridge ATHOM, You can build your own software bridge using a Node-RED or Python script, and this requires programming knowledge, but gives you complete control of the device.

Tools required:

  • πŸ–₯️ Computer with Node.js installed (version 14)+).
  • πŸ“¦ The miio library (installed via npm install miio).
  • πŸ”‘ Mi Home Access Token (see Method 1).

Adjustment steps:

  1. Install Node-RED: npm install -g --unsafe-perm node-red
  2. Launch Node-RED and open the web interface at http://localhost:1880.
  3. Install the node-red-contrib-mi-home package through the Manage Palette menu.
  4. Create a new flow with a miio vacuum node and enter IP-robot address and token.
  5. Add the homekit-bridge node and connect it to the vacuum cleaner node.
  6. Start the stream - the robot will appear in HomeKit.

Important: This method requires that a computer with Node-RED work all the time.

Home Assistant (full control)|

ATHOM (simplicity)|

Node-RED/Python (experiment)|

Not yet.

-->

Typical errors and their solutions

Even if you set up the integration right, it might not work, and here are the most common problems and ways to fix them:

⚠️ Warning: If the robot vacuum cleaner stopped responding to commands from HomeKit but is running on Mi Home, the access token has most likely expired. Update it via Mi Home Token Extractor and restart Home Assistant or Bridge.

Problem.Possible causeDecision
The robot is not displayed in HomeKitwrong token or IP-addressCheck the token through the Mi Home Token Extractor and make sure that IP-The robot's address has not changed (set up static). IP router)
Commands are executed with a delayXiaomi’s cloud servers are overloadedUse local management (in Home Assistant, specify the use_miot: false)
HomeKit shows "Not responding"The bridge or Home Assistant has shut down.Check the power of the device and restart the service
Cleaning areas are not working.Limitation of the HomeKit protocolUse Home Assistant with custom maps or manage zones through Mi Home

Additional advice:

  • πŸ”„ If the robot is β€œhanging” in HomeKit, try removing it from the Home app and adding it again.
  • πŸ“‘ For stable operation, turn off the energy-saving mode on the router for Xiaomi devices.
  • πŸ”’ If you use two-factor authorization in Mi Home, temporarily turn it off while you set up.

Comparison of methods: which one to choose?

The choice of integration method depends on your technical skills and functional requirements.

CriteriaHome AssistantATHOMNode-RED/Python
Difficulty setting up⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐
CostFree (required Raspberry Pi)~3 000–5 000 β‚½Free of charge.
Supported functionsAll (including cleaning areas)Basic (start/stop/return)Everything (requires refinement)
Dependence on the cloud❌ No (local management)βœ… Yes (servers) ATHOM)❌ No.
Support for new modelsβœ… Yes (community updates)βœ… Yes (firmware updates)⚠️ Manual refinement required

Recommendations:

  • πŸ† For maximum control: Home Assistant + locality.
  • 🎯 For simplicity: bridge ATHOM (if basic functions are lacking).
  • πŸ› οΈ For experiments: Node-RED or Python script.

Security: Risks and How to Avoid Them

Integrating Xiaomi devices with HomeKit via third-party bridges or scripts carries potential risks:

⚠️ Note: When using a Mi Home access token, third parties can theoretically access your devices. Never share a token or store it in open repositories (e.g. on GitHub).

How to minimize the risks:

  • πŸ” Use local management (turn off cloud sync in Home Assistant).
  • πŸ”„ Regularly update the bridge firmware ATHOM or Home Assistant.
  • πŸ›‘οΈ Set up network segmentation: place the robot vacuum cleaner and bridge in a separate subnet (VLAN).
  • πŸ“± Enable two-factor authorization in your Mi Home account after receiving the token.

What to do if your account is compromised?

  1. Change your password in Mi Home immediately.
  2. Revoke all access tokens (remove devices from Home) Assistant/ATHOM and add again).
  3. Check the list of connected devices in your Xiaomi account for unknown gadgets.

FAQ: Frequent questions

Can you connect a Xiaomi robot vacuum cleaner to HomeKit without additional devices?
No, Xiaomi’s robot vacuum cleaners don’t have official HomeKit support. Integration will require an intermediate solution: Home Assistant, bridge ATHOM self-script.
Why does the robot disconnect from HomeKit after updating the firmware?
Xiaomi firmware updates sometimes reset the access token or change the communication protocol.In this case: Get a new token through Mi Home Token Extractor. Update the configuration in Home Assistant or reconnect the bridge ATHOM.
Can I manage cleaning areas through HomeKit?
The standard HomeKit protocol does not support cleaning areas, but you can create custom automations using a component in Home Assistant. xiaomi_miio.vacuum_clean_zone. Example of a team to clean the area: service: vacuum.clean_zone data: entity_id: vacuum.xiaomi_robot_vacuum zone: [[25000, 25000, 27000, 27000, 1]] # Repeat zone coordinates: 2 For convenience, you can create buttons in the Home Assistant interface and export them to HomeKit as switches.
Does voice control work through Siri?
Yes, once integrated, the robot vacuum cleaner will be available for voice commands. Examples: "Hey Siri, start the vacuum cleaner" β€” the start of the cleaning. "Hey Siri, stop cleaning in the living room" β€” if the robot is tied to a room in the Home app. "Hey Siri, bring the vacuum cleaner back to base" β€” return to the dock. Note: Siri does not support commands for cleaning or power adjustment areas.
Which Xiaomi robot vacuum cleaner is best for HomeKit?
Any model with Mi Home support can be integrated into HomeKit, but we recommend: Xiaomi Mi Robot Vacuum-Mop 2 Pro – the best price/function ratio. D10 Plus - powerful suction force and mapping support. Viomi V3 β€” Budget option with laser navigation. Avoid models with proprietary protocols (for example, some versions of Roborock require separate plugins).