Шлюз Xiaomi Gateway 3 (модель ZNDMWG03LM) стал одним из самых популярных устройств для построения экосистемы умного дома от Xiaomi. Однако его интеграция с Home Assistant — открытой платформой автоматизации — часто вызывает вопросы у пользователей. В отличие от стандартного приложения Mi Home, где подключение занимает минуты, добавление шлюза в HA требует знания нюансов протоколов Zigbee и MiOT, а также настройки токена доступа.
Эта статья не просто повторяет официальную документацию, а раскрывает скрытые параметры конфигурации, которые позволяют избежать типичных ошибок: от отсутствия устройств в сети до проблем с обновлением прошивки. Мы разберём два основных метода интеграции — через официальный компонент Xiaomi Miio и альтернативный Zigbee2MQTT, — а также покажем, как заставить шлюз работать стабильно даже с неофициальными прошивками.
Если вы уже пробовали подключить Gateway 3 и столкнулись с ошибками вроде "Failed to connect" или устройства отображаются как unavailable, здесь вы найдёте решения. А для новичков мы подготовили пошаговые инструкции с визуальными примерами конфигурационных файлов.
1. Подготовка к интеграции: что нужно знать до начала
Прежде чем приступать к настройке, убедитесь, что ваш Xiaomi Gateway 3 соответствует ключевым требованиям:
- 🔹 Версия прошивки: шлюз должен работать на прошивке
1.5.7_0043или новее. Старые версии могут не поддерживать протоколMiOT, необходимый для интеграции с Home Assistant. - 🌍 Регион устройства: шлюз должен быть привязан к серверам China Mainland (даже если вы находитесь в другой стране). Это связано с ограничениями API Xiaomi.
- 📡 Сеть Wi-Fi: устройство поддерживает только сети
2.4 ГГц. Если ваш роутер работает в режиме5 ГГц, создайте отдельную сеть для умных устройств. - 🔑 Токен доступа: его придётся получить вручную (об этом — в следующем разделе). Без токена интеграция невозможна.
Также проверьте, что ваш Home Assistant обновлён до последней версии (минимум 2023.12). В старых версиях компонент Xiaomi Miio может работать некорректно. Если вы используете Docker-контейнер или Home Assistant OS, обновите систему через веб-интерфейс (Настройки → Система → Обновления).
⚠️ Внимание: если вы ранее настраивали шлюз через приложение Mi Home, сбросьте его до заводских настроек. Для этого удерживайте кнопку на корпусе устройства в течение 10 секунд, пока индикатор не начнёт мигать жёлтым цветом. Это удалит все привязанные устройства, но избежит конфликтов при интеграции.
Для удобства подготовьте:
- 📱 Смартфон с приложением Mi Home (потребуется для получения токена).
- 💻 Компьютер с доступом к файлам конфигурации Home Assistant (через
SambaилиTerminal & SSH). - 📝 Блокнот для записей (токен, IP-адрес шлюза, MAC-адрес).
2. Получение токена доступа для Xiaomi Gateway 3
Токен (token) — это уникальный ключ, который позволяет Home Assistant взаимодействовать с устройствами Xiaomi через облако или локальную сеть. Без него интеграция невозможна. Существует несколько способов получить токен, но мы рассмотрим два самых надёжных:
Способ 1: Через приложение Mi Home (для Android)
Этот метод работает только на Android-устройствах с установленным приложением Mi Home версии 6.0.100 или старше.
- Откройте Mi Home и перейдите в профиль своего аккаунта.
- Нажмите на
...(три точки) в правом верхнем углу и выберитеО программе. - Тапните по версии приложения
5-7 раз, пока не появится сообщение"Отладочный режим включён". - Вернитесь в главное меню, найдите свой Gateway 3 в списке устройств и откройте его настройки.
- Нажмите на
...→Информация об устройстве→Получить токен.
Скопируйте появившуюся строку — это и есть ваш токен. Он выглядит как набор из 32 символов (цифры и буквы в нижнем регистре). Не передавайте его третьим лицам!
Способ 2: Через Mi Home API (универсальный метод)
Если у вас iOS или предыдущий способ не сработал, воспользуйтесь веб-сервисом mihome.dev:
- Авторизуйтесь на сайте через аккаунт Xiaomi (используйте те же данные, что и в приложении Mi Home).
- В разделе
Devicesнайдите свой Gateway 3 (устройство будет отмечено какlumi.gateway.mgl03). - Скопируйте токен из колонки
Token.
⚠️ Внимание: если токен получен через mihome.dev, он может перестать работать после смены пароля в аккаунте Xiaomi. В этом случае повторите процедуру получения.
Проверьте токен на валидность с помощью команды в Terminal (если у вас есть доступ к серверу Home Assistant):
curl -X POST "http://[IP_ШЛЮЗА]/miio/info" -H "Content-Type: application/json" -d '{"id":1}'
Замените [IP_ШЛЮЗА] на реальный IP-адрес вашего устройства. Если ответ содержит данные о модели и версии прошивки — токен рабочий.
3. Добавление шлюза через официальный компонент Xiaomi Miio
Это самый простой способ интеграции, но он имеет ограничения: не все устройства, подключённые к шлюзу, будут доступны в Home Assistant. Например, датчики движения могут отображаться, а кнопки — нет. Тем не менее, для базовой функциональности этого достаточно.
Шаг 1: Настройка конфигурационного файла
Откройте файл конфигурации Home Assistant (configuration.yaml) и добавьте следующий блок:
xiaomi_miio:
devices:
- host: [IP_ШЛЮЗА]
token: [ВАШ_ТОКЕН]
model: lumi.gateway.mgl03
Пример для IP-адреса 192.168.1.100 и токена a1b2c3d4e5f678901234567890abcdef:
xiaomi_miio:
devices:
- host: 192.168.1.100
token: a1b2c3d4e5f678901234567890abcdef
model: lumi.gateway.mgl03
Шаг 2: Перезагрузка Home Assistant
Сохраните изменения и перезагрузите систему через веб-интерфейс (Настройки → Система → Перезагрузить) или командой:
ha core restart
Шаг 3: Проверка подключения
После перезагрузки откройте раздел Настройки → Устройства и сервисы. В списке должен появиться Xiaomi Gateway 3 с статусом Connected. Если устройство отображается как Unavailable, проверьте:
- 🔌 Правильность IP-адреса и токена.
- 🌐 Доступность шлюза в локальной сети (ping).
- 🔄 Отсутствие конфликтов с другими интеграциями (например,
Zigbee2MQTT).
Если шлюз подключился успешно, но не все датчики отображаются, попробуйте вручную добавить их через configuration.yaml:
sensor:
- platform: xiaomi_miio
host: 192.168.1.100
token: a1b2c3d4e5f678901234567890abcdef
name: "Xiaomi Gateway 3 Sensors"
Шлюз отображается в разделе "Устройства и сервисы"|IP-адрес пингуется без потерь|Токен проверен через curl|Датчики движения/освещённости доступны в HA-->
4. Альтернативный метод: Zigbee2MQTT для полного контроля
Если официальная интеграция не устраивает ограниченной функциональностью, используйте Zigbee2MQTT — решение, которое позволяет работать с Xiaomi Gateway 3 как с полноценным Zigbee-координатором. Этот метод сложнее в настройке, но даёт доступ ко всем устройствам экосистемы, включая кнопки, выключатели и датчики, которые игнорирует xiaomi_miio.
Шаг 1: Установка Zigbee2MQTT
Если Zigbee2MQTT ещё не установлен, добавьте его через HACS (Home Assistant Community Store) или вручную:
- Перейдите в
Настройки → Дополнения → Магазин дополнений. - Найдите
Zigbee2MQTTи установите его. - Запустите дополнение и откройте веб-интерфейс по адресу
http://[IP_HA]:8080.
Шаг 2: Настройка конфигурации
Откройте файл конфигурации Zigbee2MQTT (configuration.yaml в папке дополнения) и добавьте:
serial:
port: tcp://[IP_ШЛЮЗА]:8888
advanced:
network_key: [GENERATE_NEW_KEY]
Для генерации нового network_key используйте команду:
openssl rand -hex 16
Шаг 3: Подключение шлюза
В веб-интерфейсе Zigbee2MQTT перейдите в раздел Settings → Zigbee и:
- Выберите
Xiaomi Gateway 3в списке поддерживаемых устройств. - Укажите IP-адрес и порт
8888. - Сохраните настройки и перезапустите сервис.
После успешного подключения все устройства, подсоединённые к шлюзу, появятся в Home Assistant как отдельные сущности (sensor, binary_sensor, switch и т.д.).
⚠️ Внимание: при использовании Zigbee2MQTT отключите интеграцию xiaomi_miio для этого же шлюза, чтобы избежать конфликтов. Две системы не должны управлять одним устройством одновременно.
Как сбросить сеть Zigbee на шлюзе?
Если устройства не подключаются к Zigbee2MQTT, сбросьте сеть на шлюзе:
1. Отключите шлюз от питания на 10 секунд.
2. Удерживайте кнопку на корпусе при включении, пока индикатор не замигает красным.
3. Подождите 2-3 минуты — сеть будет сброшена, и устройства можно подключать заново.
5. Решение типичных проблем при интеграции
Даже при правильной настройке пользователи часто сталкиваются с ошибками. Мы собрали самые распространённые проблемы и их решения:
| Проблема | Возможная причина | Решение |
|---|---|---|
| Шлюз не отвечает на ping | Блокировка фаерволом или неверный IP | Проверьте настройки роутера, отключите фаервол, используйте статический IP |
Ошибка "Invalid token" |
Неправильный токен или смена пароля аккаунта | Получите новый токен через mihome.dev |
Датчики отображаются как unavailable |
Конфликт интеграций или устаревшая прошивка | Обновите прошивку шлюза, отключите xiaomi_miio при использовании Zigbee2MQTT |
| Шлюз перестаёт работать после перезагрузки | Проблемы с питанием или перегрев | Используйте оригинальный блок питания, обеспечьте вентиляцию |
| Не все устройства отображаются в HA | Ограничения компонента xiaomi_miio |
Перейдите на Zigbee2MQTT для полной поддержки |
Если ваша проблема не описана в таблице, проверьте логи Home Assistant (Настройки → Система → Логи). Ошибки с кодом 401 обычно связаны с токеном, 502 — с сетевыми проблемами, а 9999 указывает на внутренние ошибки шлюза (требуется перезагрузка).
Для диагностики сетевых проблем используйте команду:
tcpdump -i eth0 host [IP_ШЛЮЗА]
Это поможет увидеть, доходят ли пакеты до устройства.
6. Оптимизация работы шлюза в Home Assistant
После успешной интеграции настройте шлюз для максимальной эффективности:
- 📊 Автоматизации: создайте сценарии для датчиков движения, кнопок и освещения. Например, автоматическое включение света при обнаружении движения:
automation:
- alias: "Включить свет при движении"
trigger:
platform: state
entity_id: binary_sensor.motion_sensor_158d0001234567
to: "on"
action:
service: light.turn_on
target:
entity_id: light.gateway_light_7811dca12345
- 🔄 Обновление прошивки: проверяйте актуальность прошивки раз в 2-3 месяца. Новые версии часто исправляют ошибки совместимости с Home Assistant.
- 🛡️ Безопасность: отключите доступ к шлюзу из интернета в настройках роутера. Используйте только локальную сеть.
- 📈 Мониторинг: добавьте датчики шлюза на панель Lovelace для отслеживания состояния сети
Zigbee:
type: entities
entities:
- entity: sensor.gateway_zigbee_network_status
- entity: sensor.gateway_wifi_strength
- entity: sensor.gateway_memory_usage
Для уменьшения нагрузки на шлюз отключите ненужные сущности в configuration.yaml:
xiaomi_miio:
devices:
- host: 192.168.1.100
token: a1b2c3d4e5f678901234567890abcdef
model: lumi.gateway.mgl03
sensors:
- "humidity"
- "temperature"
# Отключаем ненужные датчики:
- "!pressure"
- "!illuminance"
7. Сравнение методов интеграции: что выбрать?
Выбор между xiaomi_miio и Zigbee2MQTT зависит от ваших задач:
| Критерий | Xiaomi Miio | Zigbee2MQTT |
|---|---|---|
| Простота настройки | ⭐⭐⭐⭐⭐ | ⭐⭐⭐ |
| Поддержка всех устройств | ⭐⭐ (ограничена) | ⭐⭐⭐⭐⭐ |
| Стабильность работы | ⭐⭐⭐ | ⭐⭐⭐⭐ |
| Локальное управление | ⭐⭐⭐ (частично) | ⭐⭐⭐⭐⭐ |
| Поддержка автоматизаций | ⭐⭐⭐ | ⭐⭐⭐⭐⭐ |
Если вам нужна простая интеграция для базовых устройств (датчики температуры, освещение), достаточно xiaomi_miio. Для полного контроля над экосистемой Xiaomi (кнопки, выключатели, кастомные сценарии) выбирайте Zigbee2MQTT.
Некоторые пользователи комбинируют оба метода: используют xiaomi_miio для управления светодиодом шлюза и звуковыми сигналами, а Zigbee2MQTT — для остальных устройств. Однако это требует аккуратной настройки, чтобы избежать конфликтов.
FAQ: Частые вопросы по Xiaomi Gateway 3 и Home Assistant
Можно ли подключить шлюз без токена?
Нет, токен обязателен для обоих методов интеграции. Однако существуют альтернативные протоколы вроде BLE (для некоторых устройств), но они не поддерживаются Gateway 3.
Почему шлюз отключается раз в сутки?
Это связано с энергосберегающим режимом шлюза. Отключите его в настройках Mi Home (раздел Настройки шлюза → Режим сна) или настройте автоматическую перезагрузку через Home Assistant:
automation:
- alias: "Перезагрузка шлюза ночью"
trigger:
platform: time
at: "03:00:00"
action:
service: button.press
target:
entity_id: button.gateway_reboot
Как перенести устройства с Mi Home на Home Assistant?
Сначала сбросьте шлюз к заводским настройкам (удерживайте кнопку 10 секунд). Затем подключите его к Home Assistant и заново добавьте все устройства в режиме сопряжения. Альтернативно, если используете Zigbee2MQTT, можно перенести сеть без сброса, но это требует ручного редактирования файла database.db.
Поддерживает ли Gateway 3 Matter?
На текущий момент (2026 год) Xiaomi Gateway 3 не сертифицирован для работы с Matter. Однако в будущих обновлениях прошивки поддержка может появиться. Следите за анонсами на официальном сайте Xiaomi.
Можно ли использовать шлюз без облака Xiaomi?
Да, но только при использовании Zigbee2MQTT. Официальный компонент xiaomi_miio требует облачного токена, даже если шлюз управляется локально. Для полного отключения от облака перепрошейте шлюз на кастомную прошивку вроде OpenMQTTGateway, но это аннулирует гарантию.