Управление через Mihome, Яндекс Алису и Home Assistant
Большое разнообразие всевозможных «умных» устройств из экосистемы Xiaomi иногда подталкивает меня на мысль об их использовании в своем доме. А так как я использую Home Assistant в качестве центра управления всей автоматикой, очень хотелось бы управлять этими устройствами именно через него. И, естественно, локально. Без задержек из-за удаленности серверов и, что самое главное, не быть зависимым от какой-либо компании, даже если это такая компания как Xiaomi.
Один из выходов в такой ситуации — перепрошивка. Это самый прямой вариант, и в некоторых случаях даже топорный. Потому что не всегда получается вскрыть устройство без повреждений корпуса или приходится изобретать обходные пути ввиду того, что любимая прошивка не поддерживает тот или иной mcu, работающий в паре с esp8266 или esp32. Хотя этот вариант у меня самый любимый.
Например, устройства, работающие в экосистеме Tuya стали очень популярны у энтузиастов и большую их часть можно перепрошить без ущерба в функциональности, а то и вовсе добавить новые фичи. А вот устройства Xiaomi менее любимы у народных diy умельцев, но некоторые из них можно добавить в Home Assistant с родной прошивкой и управлять локально. Та же родная интеграция Yeelight, например.
Чтобы управлять остальными, официально неподдерживаемыми в Home Assistant устройствами, работающими по протоколу
MIoT, есть интеграция, доступная для установки через пользовательский магазин компонентов HACS —
Xiaomi Miot Auto. С ее помощью можно попробовать добавить любое «умное» устройство из экосистемы Xiaomi в Home Assistant. Интеграция позволяет добавлять устройства через веб интерфейс, а это значит, что не нужно вручную вносить правки в конфигурацию. Очень удобно.
Я не берусь утверждать, что
любое устройство будет работать «из коробки» c HA, но большинство будет точно. На
странице интеграции есть список проверенных устройств, протестированных сообществом. Я же покажу весь процесс добавления, включая получение токена для локального управления, на примере вот такого небольшого модуля реле с маркировкой JL-SS-03.
Его размеры 82x35x22мм. Модуль небольшой, по типу тех, что встраивают в люстры.
На упаковке все расписано на китайском, но основная информация по модулю читается и без переводчика.
Модуль позволяет управлять нагрузкой до 10А в сетях переменного тока 100-240В, допустимый диапазон температур для работы модуля -5℃~55℃. Отдельно отмечено, что максимальная мощность LED нагрузки не должна превышать 350Вт. Внутри установлено реле FANHAR W14-1AST на 10А.
Так как модуль предназначен для работы с приложением MiHome, на его упаковке есть соответствующее лого —
works with Mijia. Как раз то, что нам нужно, чтобы проверить интеграцию.
Чтобы добавить устройство в Home Assistant через интеграцию Xiaomi Miot Auto для локального управления, нужно получить токен. Его можно будет узнать только если выполнить сопряжение с MiHome. Поэтому сначала добавляем модуль реле обычным способом. В приложении добавляем устройство — я зажал единственную кнопку на корпусе примерно на 3-4 секунды, после чего замигал синий светодиод под одной из темных заглушек для фиксации кабеля и в «поиске устройств поблизости» был найден мой модуль — julun smart switch. Добавляем.
После добавления скачается его персональный плагин — обычное дело для MiHome. Жаль только, что плагин без перевода и все подписи на китайском языке. Но для управления это не помеха, все интуитивно понятно. В выключенном и включенном состоянии у карточки разный фон.
Те, кто знаком с MiHome знают, что из-за удаленности их серверов, а управление происходит именно через них, присутствует небольшая задержка между отправкой команды — нажатием кнопки в приложении, до выполнения — переключения реле. Плохо, что Xiaomi не реализует локальное управление если телефон и устройство в одной WiFi сети. Может быть это не на всех устройствах, но на многих точно.
Кстати, Алиса сама обнаружила новое устройство от Xiaomi в сети и что-то там сказала про наши с ней отношения. Через Яндекс управляется, статус отображается.
Кому-то MiHome и Алисы будет достаточно, но моя цель — управлять реле из Home Assistant. Значит нужно получить токен устройства. Есть разные способы, но я не буду описывать их все. Самый простой и быстрый — с использованием
Xiaomi Cloud Tokens Extractor из под Windows или Linux. Я буду пользоваться ноутбуком с виндой, поэтому покажу версию под нее. Скачиваем с Github и запускаем. Ничего сложного нет, нас попросят ввести учетные данные вашего аккаунта Xiaomi. Вводим почту, затем пароль и на выборе сервера жмем enter. В этом случае будут показаны все ваши устройства на всех серверах, если вы пользовались разными. Например, устройства Yeelight скрипт распознал у меня в ru сегменте.
Как видно на скриншоте, устройства удобно разбиты на блоки, в которых есть токен и даже ip адрес в локальной сети. Очень удобно. Теперь переходим в Home Assistant и устанавливаем Xiaomi Miot Auto из HACS или вручную, если вы этого еще не сделали.
Далее переходим в
Настройки > Интеграции и жмем кнопку
Добавить интеграцию. Выбираем из списка Xiaomi Miot Auto
На следующем этапе будет предложен выбор — использовать локальную интеграцию с токеном или облачную с Mi аккаунтом. Выбираем первый вариант —
Add device using host/token
Теперь вводим данные нужного нам устройства для добавления.
Всё, модуль реле добавлен. Можно выбрать помещение, переименовать и добавить в карточку lovelace.
Управляется моментально, локально все таки. Из плюсов — если модуль отключен, то статус меняется на Недоступно. То же самое касается ручного переключения с помощью кнопки на устройстве, статус обновляется. Только интервал обновления ставьте поменьше, чтобы быстрее узнавать статус в Home Assistant.
На странице интеграции на Github расписаны очень интересные устройства, включая устройства климата, умные шторы, камеры и прочее. Было бы очень занимательно проверить некоторые из них в ближайшем будущем.
Кстати, сейчас есть возможность приобрести этот релейный модуль со скидкой. Оформите заказ без оплаты — это можно сделать через мобильное приложение, выбрав «Другие способы оплаты» в самом низу. После этого напишите продавцу, что вы от kvvhost и он снизит цену еще на 13%
Товар предоставлен для написания обзора магазином. Обзор опубликован в соответствии с п.18 Правил сайта.
Или там чтото нестандартрное, неперешиваемое?
Если кому-то это будет интересно, могу после праздников проверить.
А ещё он стоит на отдельной плате и на штырях. Мне кажется похожее решение я видел на Али. Если это так, то можно даже сохранить родную прошивку, просто купив готовую плату на Али и экспериментируя с ней.
kvvhost.ru/2020/04/30/esptool-windows-10/
И даже если esp8285, никто не запрещает купить на Али esp-12f какой-нибудь и поставить вместо того, что стоит здесь, сохранив родную прошивку на родном модуле
И давайте я сам решу, что мне нужно. Для особо умных и намекающих на свою суперпрошаренность, система Mihome у меня дома развернута. И Domoticz на synology…
Не вижу ни в одном слове или предложении автора ни намека на неуважение к читающим. Тоже самое касательно определения обзора.
Конечно, Вы можете сами рашить что Вам нужно, именно поэтому я написал «могу предположить» предположить != утверждаю, или намекаю, или другой иной смысл, кроме очевидного — предположение.
И в моих словах не было и тени намека на «суперпрошаренность», просто сочетание слов «Xiaomi Julun Smart Switch в Home Assistant» явно указывает на:
Xiaomi — известный китайский бренд электроники и не только
Smart switch — умный переключатель. Соотнеся данные два слова с изображением, можно сделать вывод о том, что это управляемое реле.
Home assistant — система домашней автоматизации.
Таким образом, название отражает, что в обзоре будет идти речь о взаимодействии «умного» реле от производителя Xiaomi и системы домашней автоматизации Home Assistant.
Для проведения вышеописанной аналитики нет нужды быть «суперпрошаренным».
И повторюсь, я считаю, что если вышеописанное мною не очевидно для читателя, то скорее всего ему это не нужно, так как нет понимания значения и назначения как минимум одного из составляющих: xiaomi/smart switch/реле/home assistant.
Именно для таких случаев на ресурсах и придуманы правила. Единые для всех.
А в правилах данного ресурса есть п. 17.5, который как раз и говорит, как правильно и как неправильно давать заголовки.
К величайшему сожалению, в политике администрации царят двойные стандарты, и если на нарушения одних правил администрация реагирует очень остро, болезненно и репрессивно (например 6.2), то на нарушения п.17.5 вообще никак не реагирует. Ни разу за время существования ресурса не было озвучено не только ни одного замечания, но и не было устранено ни одного нарушения этого пункта. Обзоры так и висят с нечитаемыми названиями.
Но не нам обсуждать действия администрации.., видимо, предполагается, что авторы сами поправят названия своих тем. Спасибо вообще за существование ресурса.
Моё личное мнение — в названии обзора должно быть хотя бы одно существительное на русском языке. Но я его (мнение) никому не навязываю. Своим обзорам всегда даю такие названия, чтобы не заходя в него читателю было понятно, о чём это. Именно такую позицию я называю «уважением к читателю»…
Но я тоже не считаю что нужно репресировать авторов за пункт 17.5. Не считаю это двойными стандартами, просто разные, скажем так, меры наказания. Ну это как нарушение ПДД, если сотрудник остановит за превышение скоростного режима на 5 км/ч, или за езду по встречке, меры наказания будут отличаться, и это хорошо.
— а кому?
Так что администрация реагирует. Просто вы этого не замечаете. Это конечно не отменяет того факта, что существует куча обзоров с некорректными названиями.
А насчёт разного отношения к 6.2 и 17.5, ну так и нарушения разные. 17.5 — это нарушение по незнанию, невнимательности, неграмотности.
А 6.2 это часто превращается в травлю и буллинг. Люди мчатся в комменты что бы написать, что смотрите, это же необъективный обзор по п.18. Как будто я, как читатель, и без этого умника не вижу отметку п.18 в конце обзора. Поэтому я вполне понимаю администрацию. Люди которые приходят в комменты и критикуют п.18, но ни слова при этом не говорят про сам предмет обзора, должны подвергаться репрессиям администрации.
Мое мнение.
И каждый на этом замечательном ресурсе находит что-то интересное для себя.
Но если обзор не понятен и не интересен какой-то конкретной личности, это не значит что его не должно быть. И это не значит что автор обзора обязан разжевывать обзор для тех, кому он не понятен и главное — не интересен.
Авторы обзора не учителя и не преподаватели. Не должны они никому ничего объяснять. Они обозревают товар используя субъективные знания и навыки.
Считаю что если тема заинтересовала, то стоит прочесть весь обзор, и решить нужно или нет, а если не заинтересовала, то и не нужно. =)
Простой пример. Мне не интересны обзоры электронных сигарет. Вижу слова вейп-боксмод или картинку связаную с этим и пролистываю. Потому что мне это не нужно. А тысячам читателей нужно и интересно. И все счастливы.
хорошо, когда ты бездельник и есть куча свободного времени читать портянки, чтобы под конец понять, о чем вообще речь идет и осознать, что ты зря его потратил. Завидую.
Зы. Хорошо, что не все такие и хорошо, что нормальные люди ценят время других людей и оставляют описание, что они обозревают
Нет, когда ты бездельник и есть куча свободного времени — это плохо.
А еще плохо, что люди не хотят думать, познавать новое, самостоятельно искать информацию. И свое невежество преподносят как отсутствие свободного времени.
вы не понимаете, что своими такими комментами вы самого себя выставляете недалеким и любителем «поболтать» вместо получения информации или знаний? Подумайте
Подумайте
У моей супруги есть сестра младшая. Когда она училась в школе, она очень не любила делать домашнюю работу. Когда ее «сажали за домашку», она говорила ой, мне нужно покушать, и ела тарелку супа около часа, потом ей нужно было покакать, где-то минут 40. И я вообще сейчас не шучу и не преувеличиваю. Так вот, неделание домашки — это нежелание, это лень, это разгильдяйство, но никак не голод или иные физиологические потребности. Ложь, замещение реальной причины.
Когда человек говорит «когда ты бездельник и есть куча свободного времени читать портянки» — он явно подразумевает, что он настолько занятой и что у него так мало свободного времени, чтобы гуглить что-то. Так вот это та же самая история. Человек обосновывает свое невежество своей занятостью. Это просто ложь, замещение. Это может быть нежеланием учиться, ленью, незаинтересованностью данным предметом, но не надо мне лгать и рассказывать про свободное время.
kvvhost.ru/2019/12/27/khadas-vim1-pro-review/
Хотел бы конечно intel nuc какой-нибудь, но пока не вижу смысла — все устраивает.
У меня Apc 650, держит максимум 67 минут (роутер + регистратор) и выключается. Причём после возобновления питания сам не включается.
Может быть в вашей модели этого таймера нет и он работает, пока батарея не разрядится.
www.home-assistant.io/installation/ — тут наиболее популярные варианты написаны.
Install Home Assistant Operating System — по этой «инструкции»
1. На фото размер по сравнению с чем — коробок хотя бы =)
2. Как Вы его планируете использовать. Получается что это «исполнитель приказов». охоже на отличное решение по ключению лампочек до 350Вт. ( ИМХО можно смело делить на 2).