На момент установки Home assistant из умный устройств у меня было две лампочки, переехавшие со мной еще из съемной квартиры, шлюз Xiaomi Gateway (lumi.gateway.v3), выключатели и розетки Aqara, несколько беспроводных кнопок и датчиков из той же экосистемы.
Все zigbee устройства, которым для работы необходим шлюз (координатор), попадут в Home assistant вместе с интеграцией шлюза, wi-fi лампочки же придётся добавлять отдельно.
Интеграция, отвечающая за шлюз называется Xiaomi(Aqara) Gateway. На данный момент она уже переехала в графический интерфейс, но на момент описываемых событий ее настроить было возможно только через правку файла configuration.yaml.
Для добавления шлюза необходимо указать сетевой интерфейс (оставляем как есть), ключ от шлюза и имя. Токен проще всего посмотреть в модифицированном приложении mihome с сайте kapiba.ru. Также, чтобы добавить шлюз в сторонние системы управления, необходимо включить режим разработчика в приложении mihome.
Стоит отметить, что не все шлюзы интегрируются в сторонние системы управления. На момент написания статьи интегрируется только шлюз Xiaomi второй версии(китайская вилка, модель lumi.gateway.v3), а также в Home Assistant интегрируется шлюз Xiaomi Gateway 3, но не штатной интеграцией, а с помощью стороннего компонента. Шлюзы от Aqara, шлюзы Xiaomi для европейского и российского рынка режима разработчика не имеют.
После перезагрузки сервера у меня в устройствах не появился шлюз, а также другие zigbee устройства.
Решив, что что-то делаю не так, решил добавить wi-fi лампочки в конфигурацию. Для их добавления нужно также получить ip адрес, модель и токен, для лампы xiaomi. Лампочки прекрасно заработали и управляются из Home assistant. Итоговая конфигурация выглядела так:
Забивая голову, почему же тоже самое не срабатывает со шлюзом, - полез в Гугл. Оказалось, я не один такой, проблема действительно есть. То ли новая прошивка шлюза, то ли какое-то обновление, а может целые партии или софтовый глюк, но факт есть факт - в некоторых шлюзах не открывается режим разработчика. Приложение mihome говорит, что режим разработчика активирован, но это не так. При активации этого режима на шлюзе должны открыться сетевые порты :4321 и 9898. Эти же порты и используются для интеграции в HA. Я проверил через утилиту nmap (тут то мне и понадобился доступ к host системе) доступность этих портов и убедился в своей правоте - режим разработчика не активирован, порты закрыты. Это было фиаско, но энтузиасты умного дома не сдаются.
В интернете есть мнение и даже статьи о том, как эти порты можно открыть без разбора и вмешательство во внутреннее устройство шлюза, но четкой последовательности действий никто не предоставляет. Но с другой стороны инструкций, как открыть эти порты путём разбора шлюза - множество. Я воспользовался одной из них.
Собственно, в инструкциях все четко указано: разбираем шлюз, подпаиваемся к необходимым пятакам, подключаем USB TTL к этим проводам с одной стороны и вставляем в компьютер с другой. На компьютере открываем Putty, выбираем необходимую скорость, выделенный адаптеру com порт, начинаем читать информацию со шлюза. Выполняем пару команд, проверяем и вот - шлюз рапортует, что режим разработчика включен. Проверяем снова через утилиту nmap - готово, порты действительно открыты.
После перезагрузки конфигурации шлюз и все zigbee устройства появились в home assistant. “Наконец-то”,- подумал тогда я. Думаю и вы, мои читатели, сейчас тоже вздохнули с облегчением.
То, что можно было делать в mihome из коробки, спустя часы мучения и страницы текста теперь можно делать на собственном сервере умного дома. Да, первоначальные этапы всегда затратны по времени и сложны технически, во всяком случае у коробочных решений этот первый этап гораздо меньше, но плюс тут прежде всего в гибкости решений, интерфейсов и автоматизаций.
Подписывайтесь на мой канал и страницу в инстаграм @smart.home53, чтобы не пропустить обновления.