Потеряли доступ к управлению роботом-пылесосом Xiaomi через Mi Home или сторонние приложения вроде Home Assistant? Без токена (token) устройство не будет отвечать на команды извне — ни через API, ни через голосовых помощников. Эта статья поможет найти или сгенерировать токен для любой модели: от Mi Robot Vacuum первой версии до Xiaomi Vacuum-Mop 2 Ultra.
Мы разберём 5 рабочих методов — от официального получения через Mi Home до обходных путей для устройств с привязкой к китайскому региону. А ещё объясним, почему токен может перестать работать и как это исправить. Важно: процедура отличается для устройств, выпущенных до и после 2021 года — об этом ниже.
Что такое токен пылесоса Xiaomi и зачем он нужен
Токен — это уникальный 32-значный ключ доступа, который генерирует сервер Xiaomi при первой привязке пылесоса к аккаунту. Он нужен для:
- 🔗 Интеграции с Home Assistant, ioBroker или другими системами умного дома.
- 📱 Управления через неофициальные приложения (например, Valetudo для прошивки без облака).
- 🗣️ Голосового управления через Алису, Google Assistant или Siri (если не используется Mi Home).
- 🛠️ Отладки и диагностики через
Python-скрипты илиMQTT.
Без токена пылесос будет работать только через оригинальное приложение Mi Home (или Xiaomi Home для новых моделей). Если вы сбросили устройство к заводским настройкам или поменяли аккаунт — токен автоматически аннулируется, и его придётся получать заново.
Способ 1: Получение токена через Mi Home (официальный метод)
Самый простой способ — извлечь токен из трафика приложения Mi Home. Работает для устройств, привязанных к аккаунту в регионах Китай, Европа, Россия (но не для серверов Сингапура или Индии). Вам понадобится:
- 📱 Смартфон с Android (на iOS метод не работает из-за ограничений
HTTP-трафика). - 🔌 Пылесос, уже привязанный к вашему аккаунту Mi Home.
- 💻 Компьютер с программой Fiddler или Charles Proxy (для перехвата трафика).
Пошаговая инструкция:
- Установите Mi Home на Android и авторизуйтесь.
- Настройте Fiddler для перехвата
HTTPS-трафика (включитеDecrypt HTTPS traffic). - На смартфоне в настройках Wi-Fi укажите прокси-сервер (IP вашего ПК и порт
8888). - Откройте Mi Home, перейдите на страницу пылесоса и обновите данные (потяните экран вниз).
- В Fiddler найдите запрос к домену
api.io.mi.comс путьём/app/genToken— в ответе будет строка"token": "ваш_токен".
☑️ Подготовка к перехвату токена
⚠️ Внимание: Если в ответе сервера нет токена, проверьте регион аккаунта. Для китайских серверов (cn) токен может передаваться в зашифрованном виде — потребуется дополнительное декодирование через miio-cli.
Способ 2: Извлечение токена из резервной копии Mi Home
Если у вас есть бэкап данных Mi Home (сделанный через Настройки → О программе → Резервное копирование), токен можно извлечь из файла без перехвата трафика. Метод работает для бэкапов, созданных до апреля 2023 года (после этого Xiaomi изменила формат шифрования).
Инструкция:
- Скачайте бэкап на компьютер (файл с расширением
.mihome). - Переименуйте расширение на
.zipи распакуйте архив. - Откройте файл
mihome.sqlв текстовом редакторе. - Найдите строку с
"token" = "— после неё будет ваш ключ.
Для новых бэкапов (после 2023 года) потребуется инструмент mihome-bin-decrypt:
python3 mihome_bin_decrypt.py -i backup.mihome -o output.sql
Как узнать дату создания бэкапа?
Откройте файл .mihome в архиваторе (например, 7-Zip) и посмотрите дату изменения файла mihome.sql — это и есть дата бэкапа.
Способ 3: Использование скрипта miio-cli для новых моделей
Для пылесосов, выпущенных после 2021 года (например, Xiaomi Vacuum-Mop 2 Pro или DreameBot L10 Ultra), Xiaomi внедрила дополнительную защиту. Токен теперь привязан к уникальному ID устройства (did) и требует подтверждения через Mi Home API.
Алгоритм получения:
- Установите
Node.jsи библиотекуmiio-cli:npm install -g miio-cli - Авторизуйтесь в Mi Home через консоль:
miio login(введите логин/пароль от аккаунта, к которому привязан пылесос).
- Получите список устройств:
miio devicesНайдите в списке ваш пылесос и скопируйте его
did. - Сгенерируйте токен:
miio token --did ваш_did
Если команда возвращает ошибку Invalid device id, значит:
- 🔴 Устройство привязано к другому аккаунту.
- 🔴 Пылесос не подключён к Wi-Fi.
- 🔴 Ваш аккаунт привязан к серверу
cn(Китай), а вы используете европейскую версию miio-cli.
Способ 4: Получение токена через Valetudo (для прошитых устройств)
Если ваш пылесос работает на кастомной прошивке Valetudo (альтернатива Mi Home без облака), токен можно сгенерировать прямо в веб-интерфейсе:
- Подключитесь к пылесосу по IP-адресу (например,
http://192.168.1.100). - Перейдите в раздел
Settings → Cloud Interface → Mi Home Token. - Нажмите
Generate Token— система создаст новый ключ.
Преимущества этого метода:
- ✅ Токен не привязан к аккаунту Xiaomi — работает даже после сброса.
- ✅ Нет зависимости от серверов Mi Home (подходит для блокировок по региону).
- ✅ Можно использовать с Home Assistant без облачных посредников.
⚠️ Внимание: Прошивка Valetudo аннулирует гарантию и может привести к блокировке устройства, если Xiaomi обнаружит модификацию. Перед установкой сделайте резервную копию оригинальной прошивки!
Способ 5: Покупка токена у третьих лиц — риски и альтернативы
В интернете можно найти предложения о продаже токенов для пылесосов Xiaomi (например, на AliExpress или тематических форумах). Цена обычно составляет 200–500 рублей, но у этого метода есть критические недостатки:
| Риск | Последствия | Как избежать |
|---|---|---|
| 🔓 Утечка данных аккаунта | Продавец может получить доступ к вашему Mi Home и другим устройствам. | Используйте отдельный аккаунт для пылесоса. |
| 🚫 Блокировка устройства | Xiaomi может заблокировать пылесос за подозрительную активность. | Покупайте токен только у проверенных продавцов с гарантией. |
| ⏳ Временный токен | Ключ может перестать работать через 1–3 месяца. | Уточните у продавца срок действия. |
Альтернатива покупке — аренда облачного сервера (например, Nabu Casa для Home Assistant), который сам будет управлять авторизацией. Стоимость — от 5$ в месяц, но без рисков блокировки.
Частые ошибки и их решения
Если токен не работает или пылесос не отвечает на команды, проверьте:
- 🌍 Регион сервера: Устройства с прошивкой для Китая (
cn) не будут работать с токенами, полученными через европейские серверы (eu). Проверьте регион в Mi Home (Профиль → Регион). - 🔄 Сброс устройства: После hard reset (
удержание кнопки 10 секунд) токен обнуляется. Придётся привязывать пылесос заново. - 📡 Блокировка IP: Если вы часто запрашиваете токен, Xiaomi может заблокировать ваш IP на 24 часа. Используйте VPN (регион — тот же, что и сервер Mi Home).
- ⏱️ Истёк срок токена: Ключи, полученные через miio-cli, действуют 1 год. После истечения нужно повторить процедуру.
Если пылесос выдаёт ошибку Device not found при использовании токена, проверьте:
- Подключён ли он к той же сети Wi-Fi, что и устройство, с которого отправляются команды.
- Не изменился ли его IP-адрес (используйте статический IP в роутере).
- Не обновилась ли прошивка устройства (иногда Xiaomi меняет протоколы взаимодействия).
FAQ: Ответы на частые вопросы
Можно ли использовать один токен для нескольких пылесосов?
Нет. Токен привязан к конкретному устройству (did) и аккаунту. Для каждого пылесоса нужно получать отдельный ключ. Исключение — если устройства привязаны к одному аккаунту Mi Home и управляются через Valetudo.
Почему токен перестал работать после обновления прошивки?
Xiaomi периодически обновляет протоколы безопасности. Если после апдейта пылесос перестал отвечать на команды через API, попробуйте:
- Получить новый токен через
miio-cli. - Откатить прошивку (если есть бэкап).
- Использовать Valetudo для обхода облачных ограничений.
Как проверить, действителен ли токен?
Отправьте тестовую команду через miio-cli:
miio call ваш_did miIO.info
Если ответ содержит данные устройства (модель, прошивка, заряд) — токен рабочий. Если ошибка Invalid token — ключ недействителен.
Можно ли получить токен без root-прав на телефоне?
Да. Root не требуется ни для одного из описанных методов. Достаточно:
- Перехвата трафика (Fiddler/Charles).
- Доступа к бэкапу Mi Home.
- Использования
miio-cliили Valetudo.
Root может понадобиться только для модификации системных файлов Mi Home, но это небезопасно и не рекомендуется.
Что делать, если пылесос привязан к китайскому аккаунту (cn), а я в Европе?
Есть 3 варианта:
- Сменить регион аккаунта (риск блокировки устройства).
- Использовать VPN с китайским IP при получении токена.
- Прошить Valetudo и отказаться от Mi Home.
Самый надёжный способ — Valetudo, но он требует технических навыков.