Умный дом iOS разработчика. Часть 2

Моя цель - предложение широкого ассортимента товаров и услуг на постоянно высоком качестве обслуживания по самым выгодным ценам.

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

Эта статья – продолжение моего рассказа про умный дом. Здесь будут конкретные примеры моих девайсов для HomeKit и умного дома Яндекса. Расскажу по каким принципам выбирал и как связывал все вместе.

Краткая схема умного дома
Краткая схема умного дома

В итоге получилось примерно такая схема. Есть Homebridge на Raspberry Pi и плагин для него, который помогает прокинуть девайсы в Алису. Остальное уже завязано на то, что придумали производители умных девайсов: Яндекс.Станция управляет устройствами через сервера компаний, то есть при голосовой команде она отправляет запрос на сервер, а он уже отправляет запрос на устройство. Если устройство имеет встроенный WiFi, то подключается к серверу напрямую. А в случае мелких датчиков обычно есть специальный хаб, к которому они подключаются по ZigBee. HomeKit же может управлять устройствами локально, но об этом поговорим далее.

Предыстория

Первым приобретением была Яндекс.Станция сразу после появления ее в свободной продаже. Уже тогда была понятно, что она станет центром умного дома. А аналогов умных колонок на русском языке на тот момент не было, да и сейчас все еще мало кто сравнится с ней по фичам. HomePod и прочие американские колонки, конечно, лучше по всем параметрам, кроме одного – наличие русского языка (на данный момент HomePod уже поддерживает русский язык), поэтому изначально была идея собрать умный дом полностью на базе Яндекс.Станции, благо она уже поддерживала достаточное количество сторонних производителей.

К счастью, на рынке некоторые устройства поддерживают как HomeKit, так и Алису. Их немного, но они были, поэтому по-возможности были куплены именно такие устройства, чтобы не выпадать из экосистемы Apple, имея iPad, Mac и iPhone.

HomePod Mini
HomePod Mini

Когда набралось достаточное количество устройств, настало время придумывать сценарии. И тут ждал неприятный сюрприз: автоматизации через приложения яндекс очень скудные, так как яндекс не поддерживает никакие датчики, и автоматизировать можно только по времени или голосовой команде. Это убило желание продолжать собирать умный дом на яндексе и переключиться полностью на HomeKit. Благо HomeBridge уже был настроен для светодиодной ленты на кухне, и оставалось просто подтянуть еще парочку ламп через плагины. После чего я докупил HomePod Ьini и стал покупать девайсы только с поддержкой HomeKit.

Кухня

У меня уже была светодиодная лента, которая питалась от блока питания, преобразующего 220V в 12V, а также были куплены несколько ESP32 для экспериментов. Нужно было все это собрать воедино и подключить к HomeKit, а для этого пришлось где-то завести HomeBridge. Выбор пал на Raspberry Pi 4 и плагин, который переводил HomeKit запросы в HTTP к ESP32. Она в свою очередь размыкала силовой ключ на базе MOSFET-транзистора. И так как изначально собирался умный дом для алисы, то HomeBridge был еще дополнительно прокинут в яндекс через h-on плагин. Подробнее про теоретическую часть я рассказывал в прошлой статье.

ESP32 с силовым ключем (ранний вариант без корпуса)
ESP32 с силовым ключем (ранний вариант без корпуса)

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

Troyka-модуль
Troyka-модуль

Помимо светодиодной ленты на кухне так же есть потолочный светильник от Philips Hue. Philips, а вернее их подразделение Signify, делает крутое rgb освещение, которое в России пользуется популярностью. Но для Европы Philips делает так же потолочные светильники с оттенками теплого и холодного света. И я не мог пройти мимо такого футуристичного светильника:

Philips Hue Being ceiling light
Philips Hue Being ceiling light

Цена у него, конечно, тоже «европейская», и свет оказался не таким ярким как хотелось бы, но внешний явно выделяется на фоне светильников от Xiaomi.

Умные чайники с Алисой
Умные чайники с Алисой

У HomeKit нет поддержки чайников, зато она есть у Алисы. Правда выбор их все равно не так велик, как хотелось бы. На момент покупки это были только чайники Redmond, сейчас еще появились Polaris.

Зал

Телевизор был также куплен с нативной поддержкой Алисы и AirPlay. Однако, возможности Алисы весьма ограничены. Она даже не может включать телевизор по прошествии несколько часов. Прошерстив форумы уже после покупки в попытках решить проблему и найти разницу в моделях телевизоров (Q70 vs Q77), обнаружилось что это ограничение более дешевых моделей телевизоров. Телевизор похоже через несколько часов в режиме ожидания отключается от WiFi и соответственно теряет связь с Яндекс.Станцией. Закончилось тем, что я просто купил ИК-пульт для Алисы. У него и проблем со включением нет, и источник сигнала телевизора поменять может.

ИК-пульт
ИК-пульт

AirPlay в телевизоре поддерживается второй версии. Теперь он не добавляется в HomeKit, как это было в случае с первой, соответственно включать/выключать его голосом не получится. Можно только передавать видео с телефона.

У Philips есть собственное телевизоры с крутой подстветкой, которая меняется в зависимости от картинки на экране. Но, к сожалению, телевизоры Philips не поддерживают ни AirPlay, ни Алису. Зато можно сделать подсветку собственным руками через Philips Hue Play или Gradient Lightstrip для телевизоров других производителей.

Philips Hue Play
Philips Hue Play

Однако с телевизоров сторонних производителей в реальном времени картинку получать не выйдет, поэтому это работает только через HDMI. Покупается HDMI Sync box, в которую втыкается HDMI и уже от нее идет кабель в телевизор. И соотвественно работать все будет только если смотреть Netflix с какой-нибудь PlayStation 5, а не напрямую с ТВ.

Philips Hue Sync Box
Philips Hue Sync Box

Покупать Sync box за 30к рублей не очень хотелось, поэтому начал искать DIY решения. И оно есть! Harmonize project. Покупается HDMI сплиттер и карта захвата (в сумме тысяч за 5), на все той же Raspberry Pi запускается скрипт на питоне и происходит магия:

Благодаря вастрику и его дому-дурачку я узнал, что есть модные стартапы, производящие устройства для HomeKit, типа EVE и Fibaro. И у них есть умные терморегуляторы на батарейные клапаны. Первым был куплен EVE Thermo – отличная штука, работает без нареканий, но размеры весьма внушительные. У EVE также крутое приложение для HomeKit.

Eve Thermo
Eve Thermo

Для разнообразия и из-за меньших размеров в спальню был куплен Fibaro Heat Controller. Из особенностей у него есть выносной датчик температуры, соотвественно он мериет температуру не возле батареи, а где вы расположите датчик. Но этот терморегулятор постоянно раскалибровывается и теряет связь с HomeKit. Это оказалась массовая проблема и непонятно, что с этим делать.

Fibaro Heat Controller
Fibaro Heat Controller

Помимо Philips Hue и Eve, есть также крутой стартап Nanoleaf, который делает световые панели разной формы. В обновленной версии панели разной формы можно собирать в одну фигуру, шестиугольники + треуголиники, например.

Nanoleaf Shapes
Nanoleaf Shapes

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

ESP32 Haier
ESP32 Haier

Все эксперименты на работе проводились с кондиционером: была возможность перепрошить его ESP32 на свою прошивку и завести туда поддержку HomeKit, так как прошивка от иностранных коллег его не поддерживала. И это оказалось не так трудно:

Прошивка была сделана на основе готовой библиотеке от Espressif, про которую я писал в прошлой статье. Конечно, это решение до продакшена не дойдет, но я вполне могу повторить то же самое со своим домашним кондиционером от Haier. У нас в России как-то тяжело с кондиционерами, которые поддерживают HomeKit из коробки. Есть только которые поддерживают Яндекс.Станцию.

Камера с HomeKit оказалась годной вещью. Можно смотреть трансляцию прямо в приложении Дом на iPhone и сохранять видео в iCloud. Можно настроить, чтобы камера не снимала, если дома кто-то есть (об этом в следующей секции), но при этом чтобы работал датчик движения, который участвует в сценариях автоматизации.

Aqara G2H
Aqara G2H

Я выбрал камеру от Aqara, которая выступает также хабом для моих ролл-штор с мотором. Aqara – это саббренд Xioami для Европейского и Американского рынка с отдельным приложением, поэтому при покупке не приходится мучится с регионами в Mi Home.

Также есть умный пылесос Xiaomi Mop P. Cоветую покупать пылесосы с LiDaR и возможность построения карты помещений. Из интересного в пылесосах Xioami можно поменять озвучку на "кожаных ублюдков".

Особенности HomeKit

Настройки HomeKit для добавляемых пользователей
Настройки HomeKit для добавляемых пользователей

Самое годное что есть в HomeKit – это возможность добавлять людей в твой умный дом (в Mi Home тоже можно). Если кто-то приходит в гости можно дать полный контроль над всеми девайсами, либо же дать только частичный доступ (см. скрин). Можно даже настраивать сценарии на определенных людей - по распознаванию лица или геопозиции iPhone.

У HomeKit нет отдельных хабов. Чтобы управлять девайсами, когда вас нет дома, нужно докупить iPad, Apple TV или HomePod mini. Можно несколько сразу, чтобы не терять коннект, если iPad сядет, например.

Ванная

В ванной уже был светильник, поэтому был куплен только умный выключатель. Наиболее футуристично выглядели сенсорные выключатели от Rubetek, а также они поддерживали Алису. У них также есть неофициальная (несертифицированная) поддержка HomeKit, но работает она так себе.

Rubetek RE-3317
Rubetek RE-3317
Умная розетка Яндекс в приложении Яндекс
Умная розетка Яндекс в приложении Яндекс

В ванной также есть электрический смеситель, который я воткнул через умную розетку яндекса. Умные устройства от яндекса (лампачка, ИК-пульт, розетки) сделаны на базе tuya, соотвественно можно покупать просто tuya совместимые устройства. Довольно интересно, что розетки показывают текущее напряжении, которое оказалось аж 240V вместо 220V.

Яндекс.Станция в отличие от HomeKit поддерживает даже стиральные машинки, а с недавнего времени и утюги, правда польза от Алисы в них весьма сомнительна.

Спальня

В спальню на потолок была куплена «таблетка» от Xioami без нативной поддержки HomeKit, но оказалось, что уже есть новые модели той же лампы с поддержкой. В коридоре я такой ошибки не допустил и купил сразу новую модель лампы, а в спальне пришлось прокидывать её через HomeBridge.

Xiaomi Mi LED Ceiling Light (MUE4086GL/X20369)
Xiaomi Mi LED Ceiling Light (MUE4086GL/X20369)

HomeKit поддерживает умные удлинители. И из-за опять-таки футуристичного вида я купил удлинитель от Rubetek, но он как и выключатель нормально с HomeKit не работает…

Rubetek RE-3310
Rubetek RE-3310

Автоматизировать можно как ролл-шторы, так и раздвижные занавески. В зале выбор пал на первый вариант, а в спальне на второй. В спальню был куплен мотор от Xiaomi со специальным карнизом к нему.

Мотор для раздвижных штор Xiaomi Aqara Curtain Motor
Мотор для раздвижных штор Xiaomi Aqara Curtain Motor

При покупке умных девайсов от Xioami нужно обращать внимание на регион, для которого предназначается это уйстройства и покупать соотвественный хаб. Яндекс.Станция поддерживает как Китайский регион, так и Россию (может даже оба одновременно, если в аккаунте есть девайсы для обоих регионов), но в первом случае будут обращения на китайский сервер, что может оказать влияние на время обработку команд Алисы.

Мотор для рулонных штор Aqara Roller Shade
Мотор для рулонных штор Aqara Roller Shade

В этой комнате также повесили Hue Bridge для удаленного управления лампами Hue, причем в нем нет WiFi (а у Xiaomi есть!) и он подключается только через кабель к роутеру. Но роутер расположен под потолком и тянуть кабель от него не самое приятное занятие, поэтому было решено купить репитер/мост от Asus. Кстати, в Hue Bridge на самом деле есть WiFi модуль, просто он отключен, но можно через хаки его включить.

Коридор

Помимо светильника в коридоре также стоит умный дверной замок Aqara. Он работает на батарейках и поддерживает кучу способов его открытия, включая HomeKit. Это чуть ли не единственный замок с поддержкой HomeKit, который можно найти в России в свободной продаже в большинстве магазинов.

Aqara N100 (Zigbee)
Aqara N100 (Zigbee)

Как выбрать устройство для умного дома?

Приложение Яндекса
Приложение Яндекса

Первая мысль – смотреть их на сайтах ритейлеров, но зачастую их нельзя отфильтровать по экосистемам, или у них просто устаревшая информация. Лучше всего смотреть сразу в приложения производителей. Например, при добавлении девайса в Яндексе, можно сразу посмотреть список всех поддерживаемых устройств этого производителя. У Apple для HomeKit есть на сайте полный список. У Xiaomi в их приложении также можно посмотреть весь список для каждого региона при добавлении.

Чтобы не городить костыли с ESP32, рекомендую также обратить внимание в сторону Sonoff. Они также сделаны на базе ESP и их можно добавлять в приложение Mi Home.

Заключение

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

Скорее всего мой пример умного дома уже устареет через пару лет - производители не стоят на месте. Яндекс показал Яндекс.Станцию 2 с поддежкой мультирума и встроенным Zigbee. Теперь можно будет объединять несколько станций вместе для прослушивания музыки и управлять устройствами без обращения к серверам производителей, как это было у Amazon Alexa. А в HomePod уже добавили русский язык.

Также я возлагаю большие надежды на Matter. Яндекс теперь тоже присоединился к альянсу.

Небольшая часть участников альянса
Небольшая часть участников альянса
Источник: https://habr.com/ru/post/595637/


Интересные статьи

Интересные статьи

Вот и добрались до дистрибутивов операционных систем на ядре Linux, которые начинаются на букву Р. В предыдущих частях мы рассмотрели запуск КОМПАС-3D v20 в ОС Ubuntu, Astra Linux и “Альт”. И сразу ск...
Всем привет!Это Денис Вебер и как я и обещал, выкладываю вторую часть статьи о создании мира Super Mario Brothers 3 в 3D.В предыдущей части я рассказывал о создании первых четырёх уровней игры и если ...
Продолжаем погружаться в строение контроллера GD32VF103CBT6. Теперь рассмотрим как он может обрабатывать прерывания работать под управлением высокоуровневого кода. Первая часть здесь ...
Хаос-инжиниринг для Kubernetes становится всё популярнее, и это закономерно: ведь такая инфраструктура создавалась быть готовой к тому, чтобы в любой момент что-нибудь «отстрелило». А...
В последние годы на instagram.com появилось много нового. Очень много. Например — средства создания историй, фильтры, творческие инструменты, уведомления, прямые сообщения. Однако по мере роста п...