Роботы-пылесосы Xiaomi давно стали неотъемлемой частью экосистемы умного дома, но их настоящий потенциал раскрывается только при интеграции с Home Assistant. В отличие от стандартного приложения Mi Home, где функционал ограничен базовыми командами, Home Assistant позволяет создавать сложные автоматизации: запуск уборки по расписанию с учётом вашего местоположения, привязку к датчикам влажности или даже голосовое управление через Алису или Google Assistant.
Однако процесс подключения часто вызывает вопросы: где взять token, почему пылесос не отображается в интерфейсе, как обойти региональные ограничения Mi Home? В этом руководстве мы разберём все актуальные способы интеграции (включая обход облачных ограничений через локальный протокол), проанализируем типичные ошибки и покажем, как выжать максимум из вашего Mi Robot Vacuum, Viomi или Dreame в экосистеме Home Assistant. Особое внимание уделим моделям с поддержкой LDS-лазера (например, Xiaomi Mi Robot Vacuum-Mop 2 Pro), где доступны расширенные функции зонирования и картографии.
1. Подготовка: что понадобится для интеграции
Прежде чем приступать к настройке, убедитесь, что у вас есть всё необходимое. Минимальные требования зависят от выбранного метода подключения (облачного или локального), но базовый набор одинаков для всех вариантов:
- 📱 Смартфон с установленным приложением Mi Home (версия не ниже 6.0.100). Важно: учётная запись должна быть привязана к тому же региону, что и пылесос (обычно
Mainland China,EuropeилиRussia). - 🖥️ Рабочий сервер Home Assistant (версия 2023.12 или новее). Подойдёт как установка на Raspberry Pi, так и контейнер в Docker.
- 🔑 Token устройства — уникальный идентификатор для доступа к API. Его можно получить несколькими способами (разберём ниже).
- 🌐 Стабильное интернет-соединение (для облачного метода) или локальная сеть (для прямого подключения).
Если вы используете пылесос Xiaomi старше 2019 года (например, Mi Robot Vacuum 1S), проверьте поддержку протокола MiIO в официальной документации Home Assistant. Некоторые бюджетные модели (например, Viomi V2) могут требовать ручной настройки device_id.
⚠️ Внимание: Пылесосы Dreame (например, Dreame D9) используют отдельный протоколDreameVacuum. Для них потребуется другая интеграция —dreame_vacuumв Home Assistant.
Для упрощения процесса рекомендуем заранее:
- 🔄 Обновить прошивку пылесоса до последней версии через Mi Home.
- 📡 Подключить пылесос и сервер Home Assistant к одной локальной сети (желательно по Wi-Fi 5 ГГц для стабильности).
- 📝 Записать MAC-адрес пылесоса (можно найти в настройках роутера или в Mi Home в разделе
Устройство → Настройки → Об устройстве).
2. Получение токена устройства: 3 рабочих метода
Token — это ключ доступа к API пылесоса, без которого Home Assistant не сможет отправлять команды. Существует несколько способов его получения, различающихся по сложности и надёжности. Рассмотрим их от самого простого к самому техническому.
Метод 1: Через приложение Mi Home (для новичков)
Самый простой способ, но работает не для всех регионов. Подходит, если ваш аккаунт привязан к серверам Mainland China:
- Откройте Mi Home и перейдите в настройки пылесоса.
- Нажмите на три точки в правом верхнем углу →
О программе. - Тапните 5–7 раз по версии прошивки, пока не появится меню
Debug. - Выберите
Get Token— система сгенерирует токен и скопирует его в буфер обмена.
Метод 2: Через Python-скрипт (универсально)
Если первый метод не сработал, используйте скрипт miio-cli. Этот способ подходит для любых регионов, но требует минимальных знаний командной строки:
pip install python-miio
miio discover --handshake 0
miio inspect --ip <IP_пылесоса> --token <ваш_токен_аккаунта_Mi>
Где <IP_пылесоса> — локальный IP-адрес устройства, а <ваш_токен_аккаунта_Mi> можно получить через этот репозиторий (инструкция на английском).
Метод 3: Через HTTP-перехват (для опытных)
Альтернативный метод — перехват токена при авторизации в Mi Home через Fiddler или Charles Proxy. Подробная инструкция:
Как перехватить токен через Charles Proxy
1. Установите Charles Proxy и настройте его на перехват HTTPS (установите корневой сертификат на смартфон).
2. В настройках Wi-Fi смартфона укажите прокси-сервер (IP вашего ПК с Charles).
3. Авторизуйтесь в Mi Home и найдите в логах Charles запрос к api.io.mi.com с параметром ssecurity — это и есть ваш токен.
4. Скопируйте его и используйте в Home Assistant.
| Метод | Сложность | Работает для регионов | Требуется ПК |
|---|---|---|---|
| Через Mi Home (Debug) | ⭐ | Только China | Нет |
Python-скрипт miio-cli |
⭐⭐ | Все | Да |
| HTTP-перехват | ⭐⭐⭐ | Все | Да |
⚠️ Внимание: Токены, полученные через Mi Home Debug, могут сбрасываться после обновления прошивки. Для надёжности используйте метод с miio-cli.
3. Настройка интеграции в Home Assistant
Когда токен получен, переходим к добавлению пылесоса в Home Assistant. Существует два основных подхода: через облачный мост (проще, но зависит от серверов Xiaomi) и через локальное подключение (надёжнее, но требует дополнительных настроек).
Способ 1: Облачная интеграция (через Mi Home)
Если вы не хотите возиться с локальной сетью, используйте официальную интеграцию Xiaomi Miio:
- В Home Assistant перейдите в
Настройки → Устройства и сервисы → Добавить интеграцию. - Введите в поиске
Xiaomi Miioи выберите её. - Укажите
IP-адрес пылесоса,tokenи выберите регион (например,cnдля Китая). - Нажмите
Submit— устройство появится в списке.
Способ 2: Локальное подключение (рекомендуется)
Для стабильности лучше использовать локальный протокол MiIO. Это исключит зависимость от облака Xiaomi и ускорит реакцию на команды. Инструкция:
- Добавьте в файл
configuration.yamlследующий код:vacuum:- platform: xiaomi_miio
host: !secret vacuum_ip
token: !secret vacuum_token
name: "Xiaomi Vacuum"
model: "roborock.vacuum.a10" # Укажите вашу модель (список ниже)
- В файл
secrets.yamlдобавьте:vacuum_ip: "192.168.1.100" # Замените на IP вашего пылесосаvacuum_token: "ваш_токен_здесь"
- Перезагрузите Home Assistant.
Список популярных моделей для параметра model:
roborock.vacuum.s5— Xiaomi Mi Robot Vacuum-Mopviomi.vacuum.v7— Viomi V7dreame.vacuum.p2008— Dreame D9rockrobo.vacuum.v1— Mi Robot Vacuum 1S
☑️ Проверка успешной интеграции
4. Расширенные настройки: карты, зоны и автоматизации
Базовая интеграция позволяет только запускать и останавливать уборку. Но настоящая магия начинается, когда вы подключаете карты помещений и настраиваете зональную уборку. Для этого потребуется:
Подключение карт (для моделей с LDS)
Модели с лазерным сканером (Mi Robot Vacuum-Mop 2 Pro, Dreame Z10 Pro) поддерживают отображение карты в Home Assistant. Для этого:
- Установите дополнение
Xiaomi Miio Map ExtractorчерезHACS. - Добавьте в
configuration.yaml:camera:- platform: xiaomi_miio_map
host: !secret vacuum_ip
token: !secret vacuum_token
name: "Vacuum Map"
draw: ["charger", "path", "robot", "zones"]
attributes:
- calibrated
- cleaning
- После перезагрузки в разделе
Mediaпоявится карта с текущим местоположением пылесоса.
Настройка зон и виртуальных стен
Чтобы пылесос убирал только определённые комнаты, используйте zoned cleanup. Пример команды для уборки кухни (координаты берутся с карты):
service: vacuum.send_command
target:
entity_id: vacuum.xiaomi_vacuum
data:
command: app_zoned_clean
params: [[25000, 25000, 30000, 30000, 2]] # [x1, y1, x2, y2, повторений]
Для создания виртуальных стен (например, чтобы пылесос не заезжал в детскую) используйте параметр app_segment_clean с указанием идентификаторов зон.
5. Типичные ошибки и их решения
Даже при точном следовании инструкции могут возникать проблемы. Разберём самые распространённые ошибки и способы их устранения.
| Ошибка | Причина | Решение |
|---|---|---|
Failed to connect при добавлении устройства |
Неверный IP или токен | Проверьте IP через роутер, перегенерируйте токен |
| Пылесос не реагирует на команды | Облачные серверы Xiaomi недоступны | Перейдите на локальное подключение |
Unsupported device |
Неверно указана модель в configuration.yaml |
Проверьте список поддерживаемых моделей в документации |
| Карта не обновляется | Пылесос не в сети или прошивка устарела | Обновите прошивку, проверьте подключение к Wi-Fi |
Если вы видите в логах ошибку Device not found, но IP и токен верные, попробуйте:
- 🔄 Перезагрузить пылесос (удерживайте кнопку питания 5 секунд).
- 📡 Переподключить его к Wi-Fi.
- 🔧 Временно отключить брандмауэр на роутере.
⚠️ Внимание: Пылесосы Xiaomi с прошивками новее 2023 года могут блокировать локальные подключения, если в Mi Home не включён режим разработчика. Чтобы его активировать, перейдите в Профиль → Настройки → Режим разработчика.
6. Автоматизации: примеры полезных сценариев
Теперь, когда пылесос подключён, можно создать автоматизации, которые сэкономят ваше время. Вот несколько готовых примеров для automations.yaml:
Автоматическая уборка по расписанию
Запуск уборки каждый день в 10:00, если никого нет дома:
alias: "Уборка по расписанию"
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
Уборка при высокой концентрации пыли
Если у вас есть датчик качества воздуха (например, Xiaomi Air Purifier), можно запускать пылесос при превышении PM2.5:
alias: "Уборка при загрязнении"
trigger:
- platform: numeric_state
entity_id: sensor.air_quality_pm25
above: 50
action:
- service: vacuum.start
target:
entity_id: vacuum.xiaomi_vacuum
- delay: "00:30:00" # Уборка 30 минут
- service: vacuum.return_to_base
target:
entity_id: vacuum.xiaomi_vacuum
Голосовое управление через Алису
Чтобы управлять пылесосом голосом, интегрируйте Home Assistant с Яндекс Алисой через Yandex Smart Home:
- В
configuration.yamlдобавьте:yandex_smart_home:filter:
include_entities:
- vacuum.xiaomi_vacuum
exclude_domains:
- script
- В приложении Яндекс добавьте Home Assistant как устройство для управления.
- Теперь можно сказать:
"Алиса, включи пылесос"или"Алиса, верни пылесос на базу".
7. Оптимизация и советы по эксплуатации
Чтобы пылесос работал стабильно и прослужил дольше, следуйте этим рекомендациям:
- 🔋 Зарядка: Не держите пылесос постоянно на базе. Оптимально — заряжать до 80% и разряжать до 20% (это продлевает жизнь аккумулятору). В Home Assistant можно настроить автоматизацию, которая будет отключать пылесос от базы после достижения 80%:
alias: "Ограничение заряда"
trigger:
- platform: numeric_state
entity_id: sensor.xiaomi_vacuum_battery
above: 80
action:
- service: vacuum.return_to_base
target:
entity_id: vacuum.xiaomi_vacuum
- 📡 Wi-Fi: Пылесосы Xiaomi плохо работают с сетями 5 ГГц. Если у вас двухдиапазонный роутер, привяжите пылесос к сети 2.4 ГГц вручную.
- 🗺️ Карты: Периодически (раз в 1–2 месяца) сбрасывайте карту в настройках пылесоса и заново обучайте его планировке. Это предотвращает ошибки навигации.
- 🛠️ Обслуживание: Чистите датчики и щётки не реже 1 раза в неделю. Забитые сенсоры приводят к хаотичной уборке.
Критическая особенность моделей с лазерным навигатором (LDS): не используйте их под прямыми солнечными лучами. Лазерный датчик может давать сбои, и пылесос будет "слепнуть".
FAQ: Ответы на частые вопросы
Можно ли подключить пылесос Xiaomi к Home Assistant без токена?
Нет, токен обязателен для всех методов интеграции. Однако для некоторых моделей (например, Dreame) существуют альтернативные протоколы, где вместо токена используется логин/пароль от аккаунта Mi. Но этот метод менее надёжен и может перестать работать после обновлений.
Почему пылесос отключается от Home Assistant после обновления прошивки?
Xiaomi иногда сбрасывает токены при обновлении прошивки. Чтобы этого избежать, перед обновлением:
- Сохраните текущий токен в безопасное место.
- Отключите пылесос от интернета (чтобы прошивка не установилась автоматически).
- После ручного обновления проверьте работоспособность токена и при необходимости получите новый.
Как сделать так, чтобы пылесос убирал только определённые комнаты?
Для этого нужно:
- Активировать отображение карты в Home Assistant (как описано в разделе 4).
- Определить координаты зон на карте (можно использовать инструмент
Map Editorв HACS). - Создать автоматизацию с командой
app_zoned_clean, указав координаты нужных комнат.
Пример для уборки коридора и кухни:
service: vacuum.send_command
data:
command: app_zoned_clean
params: [[20000, 20000, 35000, 35000, 1], [15000, 36000, 25000, 45000, 1]]
Можно ли управлять пылесосом Xiaomi через Home Assistant вне дома?
Да, но для этого нужно:
- Настроить удалённый доступ к Home Assistant (например, через Nabu Casa или Cloudflare Tunnel).
- Убедиться, что пылесос подключён к локальной интеграции (облачный метод может не работать вне домашней сети).
- В роутере пробросить порт для Home Assistant (если не используете облачный сервис).
Для надёжности рекомендуем локальное подключение + Nabu Casa (5$ в месяц).
Какие модели Xiaomi лучше всего интегрируются с Home Assistant?
Топ-5 моделей по совместимости:
- Xiaomi Mi Robot Vacuum-Mop 2 Pro — лучшее соотношение цена/функционал (LDS, зональная уборка, мокрое протирание).
- Dreame Z10 Pro — поддерживает 3D-карты и виртуальные стены.
- Viomi V3 — бюджетная модель с лазерной навигацией.
- Roborock S7 — премиальная модель с поддержкой
multi-floor mapping. - Xiaomi Mi Robot Vacuum-Mop P — оптимален для небольших квартир.
Избегайте моделей без LDS (например, Mi Robot Vacuum 1C) — они не поддерживают карты и зональную уборку.