Как добавить пылесос Xiaomi в home assistant

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

Устройства столь же великолепны и безпроблемны, сколь ужасен софт для них от Xiaomi. Он в существенной степени не локализован, так что вы будете постоянно видеть половину экрана в иероглифах, он неудобен и малофункционален, и он медленно работает (ну в чем смысл внопки в смартфоне, включающей свет, если она вначале “открывается” примерно 15 секунд с надписью “инициализация zigbee — проще дойти до выключателя на стене)

Я попробовал OpenHAB, но мне кажется, что они сами не понимают, куда развиваются. Дикое месиво между конфигами и малофункциональным UI, в котором невозможно разобраться, не прочитав вначале инструкцию по его использованию.

Также посмотрел на Domoticz но он показался мне не очень развивающимся и есть риск что его скоро совсем забросят.

Добавляем Xiaomi MiHome устройства в Home Assistant. Ищем заветные token и key.

Home assistant

И тут на глаза попался Home assistant.

С очень внятными инструкциями, как установить их docker-контейнер homeassistant/home-assistant на NAS Synology.

Единственно, они почему-то не настаивают на смене пароля доступа через http. Чтобы установить свой пароль, надо добавить в configuration.yaml :

http: # Secrets are defined in the file secrets.yaml api_password: !secret http_password

И в файле secrets.yaml указать пароль в:

http_password:

Xiaomi

Для управления устройставми, подключенными к Xiaomi шлюзу надо добавить его ключ в конфигурацию home assistant configuration.yaml :

xiaomi_aqara: gateways: — mac: key:

Получение ключа — нетривиальные манипуляции с китайским приложением MiHome, описанные у коллег из Domoticz.

Внятные имена вместо идентификаторов можно настроить в файле customize.yaml

Источник: sorokin.engineer

Про умный дом. Часть последняя. Home Assistant

Настал этот момент, и я готов рассказать про свои эксперименты с системой умного дома на базе Home Assistant.
Приход к текущей конфигурации контроллера умного дома (далее — Home Assistant, т.к. реально в моем варианте умного там очень мало) — результат эволюции, начавшийся с аппаратного контроллера Vera Plus (см предыдущие заметки).
На данный момент мой Home Assistant выполняет ровно те задачи, которые я хотел изначально, даже чуть больше, а именно:
— мониторинг температуры и влажности (текущая и статистическая информация) с беспроводных датчиков Zigbee из экосистемы Aqara/Xiaomi;
— мониторинг протечки в районе посудомойки;
— автоматизация света (лампы Yeelight) на лестнице по датчику движения (Xiaomi);
— уведомления автоматические и по запросу в Telegramm и на Email;

Управление роботом пылесосом из Home Assistant.


— простая настройка и простой интерфейс;
— простое резервное копирование конфигурации.

Работает все локально, от удаленных серверов не зависит.

Однажды я нашел классного дядьку Alex Kvazis, который в своем Youtube-канале (Ссылка прямо на его плейлист с уроками по Home Assistant) доходчиво и просто рассказывал как устанавливать и настраивать Home Assistant.

Его вариант предполагал использование Raspberry Pi 3b — маленькая такая коробочка, с достаточной производительностью. Мне это понравилось, я купил на авите этот микрокомп (2500-3000 р), нашел у себя MicroSD карту (на Raspberry Pi нет хранилища), и — настроил Home Assistant. Выписал из китая платку-контроллер Zigbee с программатором, датчики уже были, и — вот они, первые показания с датчиков.

Минимальный комплект для построения контроллера умного дома.

Спустя месяца 2 Home Assistant накрылся медным тазом — выяснилось, что карта памяти жестко умерла, актуальных конфигов не сохранилось.
Что ж, наверное карта была не очень (ну, правда — нашел самую дешманскую на 16 Гб у себя в барахле), вытащил из камеры самсунговскую на 32 Гб, и повторно развернул Home Assistant, параллельно записав все шаги — на всякий случай.

Как откалибровать сенсор на андроиде Xiaomi

Стоит заметить, что Alex Kvazis в своих заметках исповедует наиболее сложный вариант установки (hass.io+portainer+docker, причем случись что с docker — через операционку добраться до данных мне не удалось) и настройки. Например, весь интерфейс он пишет руками (ну, в Home Assistant интерфейс с теми данными, которые вы хотите отображать может быть настроен одним из 2х вариантов — либо в виде драг-н-дроп, либо правкой файла в формате YAML, имхо, результат одинаковый, но во втором случае геммороя раз в 10 больше).

Итак, спустя еще 2 месяца Home Assistant снова умер — часть контейнеров Docker запускаются, но сам Home Assistant нет. И снова какая-то беда с картой. Надо что-то радикально менять.

К этому моменту времени я уже обзавелся домашними серверами виртуализации, в качестве гипервизора выбор пал на Oracle VirtualBox (потому, что потом я смогу внутрь виртуальной машины запустить наш Zigbee USB-адаптер).
По инструкции из документации Home Assistant поставил Debian (сначала, конечно поставил Ubuntu Server, но инсталляционный файл HomeAssistant проверяет на что его пытаются поставить, и если не Debian — не хочет работать) и, собственно, сам HomeAssistant.
Дальше — установка интеграций (в терминах Home Assistant. Грубо говоря — это модули для взаимодействия с чем бы то ни было) для работы Zigbee устройств, добавление датчиков.

В этот раз решил интерфейс редактировать штатными средствами — это оказалось легко и по возможностям так же.

Home Assistant забавный — он умеет сам находить доступные для интеграции устройства в сети. Например, он нашел роутер TP-Link Archer A9 по UPnP и я смог добавить график загрузки канала (что интересно, в этом роутере нет поддержи SNMP), еще он нашел Smart TV Samsung и у меня появились 2 сомнительные возможности — получать информацию о том, когда ТВ был включен и выключен, и принудительно например его выключать (может что-то еще — мне было не интересно и я не разбирался).

Итак, спустя некоторое время я добавил свои датчики, настроил уведомления на Email об обнаружении факта протечки и ежедневном статусе. Тут такой полукостыль получился для GMail (отправка писем осуществляется через аккаунт gmail) — пришлось включить в настройках GMail отправку писем по SMTP, а дальше выяснилось, что если в течении примерно 20 дней письма не отправлялись по этому протоколу, то GMail отключает эту возможность. Так что пришлось сделать периодическую отправку условно нужной информации.

Полный размер
Карта Zigbee-сети, сама строит.

Кстати, на карте устройств видно, что часть датчиков присоединены к умной розетке. Это особенность Zigbee-сети — она самоорганизующаяся, устройства, которые подключаются к 220В являются не только датчиками/исполнительными устройствами, но и Zigbee-коммутаторами, и подключение конечных Zigbee устройств (работающих от батарейки) осуществляется не только к Zigbee-контроллеру, но и к коммутатору, причем автоматически.

Дальше было добавлено взаимодействие с Telegram, тут тоже все просто: средствами Телеграмм создаете бота, получаете его ID, потом узнаете свой ID и эти два идентификатора используете для отправки. Правда, легко.

Как-то так приходит. Ну, впрочем — как настроил, так и приходит. В телеграм еще приходил факт запуска сервера, когда он был на RasPi — удобно мониторить факты отключения эл-ва.

Следующим шагом, уже по фану, было добавление в интерфейс изображения с IP камеры, Веб-страничек с графиками из системы мониторинга сети PRTG и веб-странички с данными метеорадаров (удобно смотреть приближающиеся осадки).

Самым долгим оказалось прикручивание света и вот почему. В свое время для подсветки лестницы и площадки 2го этажа были куплены 3 лампы: 1 (для площадки) лампа Yeelight Color Bulb и 2 Xiaomi Smart Bulb или как-то так. Все они WiFiные, первая настраивается через приложение Yeelight, две другие — через Mi Smart Home.
Выяснилось, что просто так лампочки Xiaomi не прикрутить — там нужно вытаскивать токены и как-то дальше их использовать в каких-то интеграциях. С лампой Yeelight тоже было не просто, но вроде проще — для интеграции этой лампы в Home Assistant нужно было поставить интеграцию Yeelight и указать некий идентификатор безопасности, указанный не то на самой лампе, не то на коробке от нее. В общем тогда (полгода назад) — все это отложилось.

Установка one ui на Xiaomi

Сейчас же, разбираясь со светом, я внезапно обнаружил, что лампа Yeelight добавилась автоматически без дополнительной информации.
Воодушевленный этим фактом, я поменял две другие лампы также на Yeelight, они так же добавились на ура.
Дальше — пара часов времени на написание скрипта автоматизации (причем делал это дома, на тестовых переключателях — просто добавил переменные-бинарные сенсоры и по ним написал автоматизацию, а позже на даче — просто перенес скрипт и поменял искусственные сенсоры на физические и лампочки).

В итоге — и лампочки заработали. Заодно сделал костыль — у меня была еще беспроводная кнопка (от комплекта Xiaomi), написал для нее автоматизацию, чтобы включала или выключала весь свет.
Тут надо сделать пояснение — когда отключается, а потом включается электричество, даже выключенные (программно) лампочки включаются. И, чтобы иметь возможность их выключить руками — будет использоваться кнопка. У Alex Kvazis есть решение — нужно отслеживать переход состояния из Undefined в On и делать им Off, надо прикрутить как-нить.

Ниже скриншоты интерфейса.

Полный размер

Первая страница, слева видно меню. По сути, нам надо конфигурировать интерфейс только первого пункта. Остальные — служебные или не интересные.

Полный размер

Это вторая вкладка — графики температур. Слева — за сутки, справа — динамика за 3-е суток. Хорошо наблюдать как падает температура в остальных комнатах, когда начали топить печку.

Полный размер

Гифка с сайта meteoinfo.ru/radanim. Полезная, рекомендую. Раньше можно было в режиме почти реального времени смотреть данные долгопрудненского МРЛ, он охватывает примерно радиус 50-70 км вокруг себя, но в Росгидромете жмоты и прикрыли эту лавочку.

Полный размер
HTMLка из PRTG с загрузкой сетевых интерфейсов роутера и точки доступа.

Полный размер

Служебная страничка — слева те самые бинарные сенсоры, которые я использовал для теста и написания автоматизации света; справа внизу — реальные датчики и лампочки. Уникальный момент — кто-то прошел, лампочки включились, таймер тикает.

Про редактирование — в Home Assistant есть встроенный редактор конфигурационных файлов. Вот вам пример как выглядит автоматизация включения и выключения подсветки лестницы. В общих чертах — если сработал датчик движения — запускаем скрипт загорания (там последовательное включение трех лампочек с интервалом в секунду и запуск таймера на 3 минуты).

Если сработал таймер — запускаем скрипт затухания (также последовательно с интервалом тушим лампы и сбрасываем таймер). Все просто. Сложные называния сущностей (лампы и датчики) подсказывает редактор.

Вот такой вот редактор

И в заключение, во что это выливается по деньгам примерно:
— ноут-сервер виртуализации считаем что был изначально (0 руб), если нет — берем самый дешевый ноут с батарейкой. Хотел у отца отобрать RoverBook какого-то лохматого года — так не отдает, дескать, там (а там Linux Mint) правильная игра «Паук» =)
— Zigbee-стик+удлинитель (500+500 р = 1000 р)
— Лампочки Yeelight Smart LED Bulb W3(White) YLDP007 одноцветные (3*750р = 2250 р)
— Датчики движения Xiaomi YTC4041GL (YTC4041GL/X23953) (2*920 р = 1840 р)
— Датчик температуры и влажности Xiaomi Mi Temperature and Humidity Sensor (5*940Р = 4700 р)
— Датчик протечки Aqara Water Leak Sensor (1400 р)
— Беспроводная кнопка Xiaomi Mi Smart Home Wireless Switch Key (WXKG01LM) (820 р)
— Умная розетка Xiaomi Aqara Smart Plug (1500 р)

Итого 13 510 р. На самом деле потрачено было меньше, т.к. часть устройств была куплена комплектом, часть на алишке.

Как увеличить скорость интернета на телефоне Андроид Сяоми

Источник: www.drive2.ru

xiaomi mi purifier 2s и Home assistant

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

Из плюсов:
— цена втрое ниже «аналогов»;
— wifi;
— приложение из которого можно управлять режимом работы, скоростью кручения вентилятора в «favorite» режиме, гасить экран, выключать пищалку и отключать органы управления в детском режиме;
— приложение работает через «облако», и устройства доступны отовсюду.

Минусы:
— китайская вилка, магазин положил переходник немаленького размера;
— приложение работает через «облако», и когда нибудь оно закончится;
— индикатор качества воздуха показывает всегда (первые минут 45 работы показывал 100+) 1.

Смрад-составляющая устройства оказала решающий вес в решении о покупке. Разного рода строители «умных домов» очень любят устройства экосистемы ксиоме за их «легкость» интеграции и невысокую цену. По способу взаимодействия с внешним миром бывают wifi и Zig-Bee устройства — тут WiFi

Про подключение этого устройства к home assistant и пойдет речь. Не все оказалось так «просто».

После включения в сеть устройство поднимает wifi сетку. Приложение (Mi home), подключается к этой сетке отдает ему параметры домашнего wifi и получает от него токен. Для успешной регистрации устройства оно должно быть с телефоном в одной сети.

В приложении необходимо указать «регион» при регистрации в котором оно и будет разрешать добавлять устройства одобренные производителем для региона. Я зарегистрировал в Китае. В регионе Россия оно тоже было.

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

Варианты получения токена следующие:

— Выковырять из лога древнего приложения (версии 5.4.49) которое сохраняло токены в логе. Не пробовал, надеялся на следующий способ.

— MIIO COMMAND LINE TOOL. Раскурить node-js, посредством npm поставить пакет miio
и командой miio discover наивно ожидать ответа с токеном. Не работает. На «новом» устройстве отдает вот так (звездочки моих рук дело)

Device ID: 13*****50 Model info: zhimi.airpurifier.ma2 Address: 192.168.13.1 Token: 43a4f4d53df****************7e9da via auto-token Support: At least basic

“via auto-token” как бы намекает что это что-то не настоящее. И после инициализации этот токен меняется.
На проинициализированном устройстве токен не отдается в эфир.

— Получить токен из БД приложения. Путь получения зависит от используемой ОС (windows, linux, andorid, ios) но суть примерно одна — ставим приложение, синхронизируем с учеткой, делаем бекап через adb и стягиваем базу, с помощью приложения/запроса к sqlite3 выдергиваем токен.
Но и тут есть нюансы. Приложение надо не очень новое, т.к. новое не хранит токены в базе. Ну и пляски вокруг режима разработчика, adb и вот это вот все.

Есть мнение, что «альтернативное» приложение MiHome показывает токены сразу в информации «об устройстве». Но это еще хуже китайского облака.

После указания добытого токена в конфиге в HA появляется «вентилятор». Из органов управления у него только изменение режим работы. Через sensor template вытаскивается температура и влажность.

Атрибуты
speed: Auto
speed_list: Auto,Silent,Favorite,Idle
model: zhimi.airpurifier.ma2
temperature: 25
humidity: 57
aqi: 1
mode: auto
filter_hours_used: 198
filter_life_remaining: 94
favorite_level: 8
child_lock: false
led: true
motor_speed: 347
average_aqi: 2
learn_mode: false
extra_features: 0
turbo_mode_supported: false
button_pressed: power
purify_volume: 20502
sleep_time: 1221
sleep_mode_learn_count: 7
auto_detect: null
use_time: 714900
buzzer: false
led_brightness: null
sleep_mode: silent
friendly_name: Living room purifier
supported_features: 1

Картиночки в HA

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

Источник: koolru.livejournal.com

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