Xiaomi gateway 3 подключение к home assistant

На момент установки Home assistant из умный устройств у меня было две лампочки, переехавшие со мной еще из съемной квартиры , шлюз Xiaomi Gateway (lumi.gateway.v3), выключатели и розетки Aqara, несколько беспроводных кнопок и датчиков из той же экосистемы.

Все zigbee устройства, которым для работы необходим шлюз (координатор), попадут в Home assistant вместе с интеграцией шлюза, wi-fi лампочки же придётся добавлять отдельно.

Интеграция, отвечающая за шлюз называется Xiaomi(Aqara) Gateway. На данный момент она уже переехала в графический интерфейс, но на момент описываемых событий ее настроить было возможно только через правку файла configuration.yaml.

Обратите внимание, что существует и другая интеграция Xiaomi Miio, это две разные интеграции для разных задач.

Для добавления шлюза необходимо указать сетевой интерфейс (оставляем как есть), ключ от шлюза и имя. Токен проще всего посмотреть в модифицированном приложении mihome с сайте kapiba.ru. Также, чтобы добавить шлюз в сторонние системы управления, необходимо включить режим разработчика в приложении mihome.

Home Assistant. Урок 9.4 ADD-ON — Xiaomi Gateway 3, интеграция в zigbee2mqtt

Стоит отметить, что не все шлюзы интегрируются в сторонние системы управления. На момент написания статьи интегрируется только шлюз Xiaomi второй версии(китайская вилка, модель lumi.gateway.v3), а также в Home Assistant интегрируется шлюз Xiaomi Gateway 3, но не штатной интеграцией, а с помощью стороннего компонента. Шлюзы от Aqara, шлюзы Xiaomi для европейского и российского рынка режима разработчика не имеют.

После перезагрузки сервера у меня в устройствах не появился шлюз, а также другие zigbee устройства.

Решив, что что-то делаю не так, решил добавить wi-fi лампочки в конфигурацию. Для их добавления нужно также получить ip адрес, модель и токен, для лампы xiaomi. Лампочки прекрасно заработали и управляются из Home assistant. Итоговая конфигурация выглядела так:

Забивая голову, почему же тоже самое не срабатывает со шлюзом, — полез в Гугл. Оказалось, я не один такой, проблема действительно есть. То ли новая прошивка шлюза, то ли какое-то обновление, а может целые партии или софтовый глюк, но факт есть факт — в некоторых шлюзах не открывается режим разработчика. Приложение mihome говорит, что режим разработчика активирован, но это не так.

При активации этого режима на шлюзе должны открыться сетевые порты :4321 и 9898. Эти же порты и используются для интеграции в HA. Я проверил через утилиту nmap (тут то мне и понадобился доступ к host системе) доступность этих портов и убедился в своей правоте — режим разработчика не активирован, порты закрыты. Это было фиаско, но энтузиасты умного дома не сдаются.

В интернете есть мнение и даже статьи о том, как эти порты можно открыть без разбора и вмешательство во внутреннее устройство шлюза, но четкой последовательности действий никто не предоставляет. Но с другой стороны инструкций, как открыть эти порты путём разбора шлюза — множество. Я воспользовался одной из них .

Home Assistant. Урок 9.3 ADD-ON — Xiaomi Gateway 3, токены xiaomi устройств, обновление 2021

Собственно, в инструкциях все четко указано: разбираем шлюз, подпаиваемся к необходимым пятакам, подключаем USB TTL к этим проводам с одной стороны и вставляем в компьютер с другой. На компьютере открываем Putty, выбираем необходимую скорость, выделенный адаптеру com порт, начинаем читать информацию со шлюза. Выполняем пару команд, проверяем и вот — шлюз рапортует, что режим разработчика включен. Проверяем снова через утилиту nmap — готово, порты действительно открыты.

После перезагрузки конфигурации шлюз и все zigbee устройства появились в home assistant. “Наконец-то”,- подумал тогда я. Думаю и вы, мои читатели, сейчас тоже вздохнули с облегчением.

То, что можно было делать в mihome из коробки, спустя часы мучения и страницы текста теперь можно делать на собственном сервере умного дома. Да, первоначальные этапы всегда затратны по времени и сложны технически, во всяком случае у коробочных решений этот первый этап гораздо меньше, но плюс тут прежде всего в гибкости решений, интерфейсов и автоматизаций.

Источник: dzen.ru

Xiaomi Gateway 3: прошивка, подключение к Home Assistant

В данной статье речь пойдёт о способах подключения Xiaomi Gateway 3 в Home Assistant, при помощи интеграции от AlexxIT. В текстовом варианте не будет приведено скриншотов, поскольку визуальная составляющая присутствует в видео, которое является дополнением данной статьи. Помимо этого, readme проекта на GitHub содержит довольно подробное описание как в текстовом виде, так и видео. Моя статья — это лишь вариация на тему. Предполагается, что у вас уже установлен HACS, если же нет, то инструкция есть в моей статье про подключение Яндекс Станции.

Удаленно включить чайник Xiaomi

Подключение интеграции

Итак, для установки интеграции в HACS необходимо перейти в раздел Integrations и добавить сторонний репозиторий: AlexxIT/XiaomiGateway3, после чего перезагрузить сервер и в разделе интеграции добавить интеграцию Xiaomi Gateway 3. Далее необходимо подключить шлюз, используя его IP и токен (о том, как его получить, будет описано ниже). Также возможно выполнить подключение при помощи аккаунта MiHome, в данном случае нет необходимости предварительно получать токен устройства и кроме того, использование такого способа позволит при помощи GUI получить основную информацию ( в том числе, токен) о любом устройстве, добавленном в Home Assistant, что, согласитесь, выглядит очень привлекательно, даже для тех людей, кто не имеет шлюза.

Получение токена при помощи модифицированного Mi Home

Для этого нам понадобится эмулятор Android устройств, их существует множество, но я остановился на GenyMotion. Не буду лукавить, просто это единственный эмулятор, который без особых проблем установился на мой Debian. Обратите внимание, эмулятор для своей работы требует наличие установленной VirtualBox. Эмулятор бесплатен для персонального использования.

После установки эмулятора, необходимо в нём создать устройство, в моём случае это был телефон Samsung на 8-й версии Android, версия очень важна, так как после запуска устройства на него нужно установить ARM Translation, иначе Модифицированное приложение Mi Home не запустится. Затем необходимо перезагрузить эмулируемое устройство и установить модифицированное приложение Mi Home, последняя версия которого доступна тут. После установки снова перезагружаем устройство.

Для того, чтобы узнать токен, входим в аккаунт MiHome, выбираем шлюз и переходим в раздел Additional Settings — > Network Info. В данном разделе программы доступна информация о токене устройства, его IP и MAC адресах, и некоторая другая информация.

Прошивка устройства

Для прошивки необходим USB<>UART Преобразователь, схема соединения представлена в репозитории автора. Обратите внимание, что нет необходимости подавать на шлюз питание от преобразователя. Также и то, что TX на преобразователе подключается к RX шлюза, а RX преобразователя — к TX шлюза. Прошивка устройства мной осуществлялась в GNU/Linux, все дальнейшие шаги справедливы для этой операционной системы.

Ставим необходимые пакеты:

sudo apt update sudo apt install lrzsz coreutils expect -y

Клонируем репозиторий в удобный для нас каталог, например, /home/username/. У меня на этот случай в домашней директории в каталог tmp монтируется tmpfs раздел:

git clone https://github.com/serrj-sv/lumi.gateway.mgl03.git

Переходим в каталог со скриптом загрузки:

Копируем в него бутлоадер, автор рекомендует использовать именно этот бутлоадер, но можно выбрать бутлоадер с другой скоростью передачи данных.

Копируем наиболее свежую прошивку:

Подключаем преобразователь при помощи USB к компьютеру, второй USB держим наготове, его нужно будет подключить к шлюзу по запросу скрипта. Запускаем скрипт:

  • Скрипт предложит выбрать бутлоадер, нажимаем Enter.
  • Скрипт предложит выбрать прошивку, нажимаем Enter.
  • Скрипт предложит выбрать последовательное устройство, по умолчанию это /dev/ttyUSB0, нажимаем Enter.

Затем появится сообщение Power ON Gateway NOW!, в этот момент необходимо подать на шлюз питание при помощи второго USB кабеля.

Прошивка устройства займёт около 20 минут, затем скрипт задаст несколько вопросов, на все необходимо ответить положительно. В завершении скрипт предложет перейти на PayPall для осуществления пожертвования автору, я рекомендую это сделать.

После прошивки, зарегистрируйте шлюз в MiHome и проверьте telnet. Логин пользователя admin, пароль не требуется.

Спасибо, что дочитали до конца! Пожалуйста оцените статью, оставьте в комментариях свои пожелания и рекомендации, это поможет мне писать лучше 🙂

Источник: sprut.ai

Плюсы интеграции Xiaomi Gateway 3 в Home Assistant

13 : 18 , 30 декабря 2020 г.

Прошивка шлюза

Эта модель шлюза действительно получилась очень удачной. Иначе как можно объяснить, что компания Xiaomi уже два раза успела обновить прошивку шлюза на своих заводах. Это единственная модель шлюза, у которой прошивка теперь обновляется настолько оперативно на производстве.

В сентябре вышла первая версия компонента. В октябре, после долгих задержек, покупателям начали приходить шлюзы уже с новой прошивкой. В ней Telnet был закрыт паролем. В ноябре прошивка на заводах снова обновилась, и Telnet в ней совсем пропал. Определить проблемный шлюз можно по дате производства на коробке — 2020.10 и выше.

Xiaomi seabird 4K настройка

В миг шлюз превратился из простого Plug and Play устройства в устройство, которое нужно обязательно вскрыть и прошить для интеграции в альтернативные системы умного дома.

Но шлюз хорош не только своим современным Zigbee-чипом и наличием чипа Bluetooth . Выбранный компанией-производителем SoC от Realtek позволяет в любой момент записать на шлюз любую прошивку, подключив всего три провода UART.

Если вы не любите паять, можно воспользоваться специальной прищепкой с контактами. Есть даже удачные примеры прошивки с бельевой прищепкой. Главное помнить, что обрыв контактов во время прошивки или UART на 5 В вместо 3.3 В вполне могут спалить микросхемы шлюза.

Все полезные ссылки можно найти в вики проекта.

Поддержка Mi Home

Многие гики не любят облака и стараются с ними не связываться. Идеология облаков нарушает и главный девиз Home Assistant: конфиденциальность — прежде всего (privacy first).

С другой стороны, если при данном подходе сохраняется полноценное локальное управление (local control, вторая часть девиза Home Assistant), то ничего страшного в облаках нет.

Экосистемы производителей добавляют устройствам больше свободы и возможностей управления, включая внешний доступ «из коробки» и прямое подключение к популярным голосовым ассистентам вроде Яндекс .Алисы и Google Assistant .

Также с этим подходом новые пользователи могут плавно осваивать Open Source системы умного дома: если что-то не получается, можно легко продолжить пользоваться устройством в экосистеме производителя.

Да, где-то на китайском сервере будет хранится информация, включен ли у вас в туалете свет. Так ли много на вас компромата у лампочки? Особенно если сравнивать с данными в вашем браузере или смартфоне. А полный доступ к прошивке шлюза позволяет пытливому уму легко отследить, какая именно информация отправляется «на родину».

Поддержка Zigbee устройств Xiaomi

Компонент поддерживает:

  • все популярные устройства: выключатели, кнопки, розетки, реле, лампочки, датчики движения, температуры, открытия, протечки, вибрации, газа, дыма, шторы и замки;
  • редкие устройства вроде термостата Aqara Thermostat S2 (KTWKQ03ES) — такой термостат пока не поддерживается даже в zigbee2mqtt;
  • самые свежие устройства вроде новых: реле Aqara Relay T1 и высокоточный датчик присутствия Aqara Hight Precision Motion Sensor (RTCGQ13LM).

Альтернатива: разнообразные DIY и коммерческие Zigbee-стики и DIY-хабы. Вот довольно большое русскоязычное сообщество в Telegram , где могут ответить на ваши вопросы по поводу Zigbee.

Поддержка BLE-датчиков Xiaomi

  • все популярные датчики: разнообразные датчики температуры с экраном, датчик ухода за растениями, фумигатор, ночник и умный кубик Рубика;
  • редкие устройства вроде сейфа Xiaomi Safe Box (BGX-5/X1-3001) — да, есть и такое устройство;
  • самые свежие датчики вроде новых датчиков двери, протечки и движения на технологии BLE;
  • различные дверные замки экосистемы Xiaomi.

Компонент не поддерживает не BLE устройства вроде чайника и самоката Xiaomi.

Альтернатива: шлюз на основе ESP32 или встроенный Bluetooth на сервере умного дома. Обычно этими способами поддерживаются только популярные датчики температуры — альтернативной поддержки дверных замков я не встречал.

Поддержка Bluetooth Mesh-ламп

Компонент поддерживает новые Mesh-лампы экосистемы Xiaomi под брендами MiJia и Yeelight. И один китайский пользователь уже второй месяц пытается добавить поддержку Mesh-выключателей. А я никак не найду время рассмотреть его pull request.

Новые лампы очень выгодно отличаются ценой и функциями от аналогов на технологиях Wi-Fi и Zigbee, поэтому к ним стоит присмотреться. Об одной из таких ламп я рассказываю в своей статье про адаптивное освещение.

Альтернатива: на ум приходит только новый хаб Yeelight и подключение его к Home Assistant через протокол HomeKit. Open Source проекты с поддержкой Mesh-ламп я не встречал.

Поддержка Zigbee Home Automation

Пользователи не любят хабы крупных компаний из-за того, что они поддерживают только устройства своего производителя. Так вот Xiaomi Gateway 3 лишен этого недостатка.

Я добавил в него режим, в котором Home Assistant напрямую подключается к Zigbee-чипу хаба через интеграцию Zigbee Home Automation.

Конечно, у подхода есть минусы:

  • Zigbee-чип перестаёт работать с Mi Home и начинает работать только с Home Assistant;
  • по количеству поддерживаемых устройств ZHA сильно уступает проекту zigbee2mqtt.

Но есть и плюсы:

  • в Китае не узнают, включен ли у вас в туалете свет;
  • в любой момент можно вернуть хаб в обычный режим работы c Mi Home без последствий для родной прошивки хаба;
  • BLE-датчики и Mesh-лампы продолжают работать в этом режиме;
  • команда Home Assistant активно развивает проект ZHA в рамках своей основной работы.

Альтернатива: шлюз Sonoff ZBBridge, прошитый Tasmota.

Поддержка сторонних устройств в Mi Home

В некоторых случаях для поддержки сторонних Zigbee-устройств режим ZHA включать не обязательно.

Изучая проблему, почему лампы IKEA E27 из российских магазинов не подключаются к хабам Xiaomi, я пришел к выводу, что в хабах зашита поддержка лишь семи моделей ламп, хотя проект zigbee2mqtt поддерживает более 30 моделей ИКЕА .

Как настроить окей Гугл на Xiaomi redmi note

Дело осталось за малым — вместо настоящей модели лампы подсунуть хабу ту, которую он поддерживает. Реализовать код, организующий подмену модели устройства в момент добавления устройства в хаб, оказалось несложно. Как оказалось, этот способ отлично подошёл для диммеров и реле других фирм.

И самое интересное в данном способе то, что устройства работают и управляются в Mi Home без участия Home Assistant. И могут участвовать в автоматизациях.

Конечно, не стоит рассчитывать, что таким образом заработают любые устройства. Например, у меня не получилось заставить работать лампочки и датчик Philips Hue, а также кнопку Sonoff. А умные розетки, добавленные таким образом, не показывают энергопотребление.

Интеграция с облаком

Компонент поддерживает опциональную интеграцию с облаком. При этом компонентом можно пользоваться и без интеграции с облаком, просто добавив шлюз по IP-адресу и токену Mi Home.

Но если вы авторизуетесь в облаке Xiaomi, все данные о шлюзе загрузятся автоматически. Кроме адреса и токена шлюза из облака загрузятся все имена ваших Zigbee, BLE и Mesh-устройств. Вам не придётся снова заполнять их в Home Assistant, выясняя, что за устройство скрывается за именем 0x00158D0007396A5D.

Получение токенов любых Xiaomi устройств

Помимо получения данных о шлюзе и его устройствах — облачная интеграция позволяет получить Mi Home токены от любых Wi-Fi устройств в вашем аккаунте. Если ваш аккаунт использует одновременно разные сервера (например, европейский и китайский), это тоже поддерживается.

Функция получения токенов работает даже если у вас нет шлюза Xiaomi Gateway 3.

Расширенные настройки устройств

Один из самых популярных Zigbee-датчиков в экосистеме Xiaomi это датчик движения. Ранее я пользовался “вторым шлюзом” Xiaomi и писал автоматизации для этого датчика в Node-RED.

Довольно давно я придумал автоматизацию “прогрессивного” таймера для датчика движения с опцией “быстрого возвращения”. Первое движение человека перед датчиком запускало небольшой таймер, а следующие движения — запускали уже увеличенный таймер. Таким образом при постоянном нахождении в комнате свет мог гореть дольше, а при кратковременном пробегании мимо датчика — свет выключался быстро. Хорошо работает в помещении вроде кухни.

Также при обнаружении движения сразу после выключения света — свет включался с увеличенным таймером. Полезно, когда свет выключается не вовремя и злой человек машет рукой датчику.

Логика работы показана на картинке

Мониторинг работы устройств

Радиосвязь всегда менее надёжнее провода. Сигнал от датчика может по разным причинам “не дойти” в центр. Zigbee и Bluetooth работают на той же частоте, что Wi-Fi и микроволновки.

Для обнаружения возможных проблем в компоненте есть опциональная статистика по каждому Zigbee и BLE устройству.

В ней можно узнать время последнего сообщения от датчика, качество сигнала, количество пропущенных сообщений и через какой роутер устройство работает.

Хотя многие привыкли судить о стабильности в сети именно по качеству сигнала, на мой взгляд именно количество пропущенных сообщений является наиболее показательной величиной.

Именно этот показатель помог мне выпустить две заплатки и уменьшить количество пропусков срабатывания у популярного датчика движения Aqara Motion Sensor. Одна заплатка попала в компонент Home Assistant, а вторая в проект zigbee2mqtt.

Перспективы развития

За четыре месяца компонент оброс огромным количеством функционала и успел получить более 400 звёзд на GitHub. Но мысли по дальнейшему развитию и не думают кончаться.

Ещё остаётся добавить корректную работу с Bluetooth-устройствами при использовании нескольких хабов на одном сервере Home Assistant. Дело в том, что BLE датчики и Mesh-лампы не привязаны к какому-либо одному хабу. Все хабы могут получать данные с окружающих сенсоров и управлять окружающими лампами. Кстати огромный плюс в сравнении с технологией Zigbee.

Так же в планах добавить настройку параметров дочерних устройств — режим interlock в реле Aqara (переключатель пропал в последних версиях приложения Mi Home), чувствительность и задержки между срабатываниями нового датчика присутствия Aqara и многие другие.

Отдельным направление развития остаётся поддержка конвертеров проекта zigbee2mqtt. Если его удастся довести до релиза, пользователь сможет выбрать, как именно подключать имеющиеся у него устройства:

  • оригинальное ПО Xiaomi — готово
  • интеграция Zigbee Home Automation — готово
  • конвертеры zigbee2mqtt — есть рабочий прототип

И что немаловажно — переключаться между режимами можно в любой момент без последствий для оригинальной прошивки хаба.

На моём GitHub можно найти ссылки на другие компоненты и статьи. А за их развитием можно следить на моём канале в Telegram .

Источник: news.myseldon.com

Рейтинг
( Пока оценок нет )
Загрузка ...
Китай Покупай