Умный дом вместо зоопарка
Я думаю, никому уже сейчас не надо рассказывать про концепцию умного дома, где большое количество устройств, в том числе традиционных, объединено в единую сеть и так же согласовано управляется. Для реализации этого подхода есть сразу несколько экосистем — HomeKit у Apple, Alexa в Amazon, Google Home понятно где и так далее. Правда, в наших условиях не всё так просто — большое большинство устройств рассчитано на английский язык при голосовом управлении, а интерфейсы — на западные образцы. К примеру, далеко не новый умный термостат Google Nest в наших условиях никуда особо не подключишь.
У меня, впрочем, есть и другая проблема — поскольку интересоваться этим я стал давно и иногда покупал что-то полезное, совместимость этого всего оставляет желать лучшего. К примеру, с HomeKit у меня совместима только одна камера NetAtmo Welcome, а Weather Station от той же NetAtmo не совместима — когда я ее покупал, HomeKit только запускался и совместимость появилась в следующей модели. Есть видеодомофон от Ring, но он принципиально не будет работать с устройствами Apple — впрочем, есть колонка Echo с Alexa внутри. А есть еще колонки Sonos, которые вообще ни туда, ни сюда. И очень давно хочется это всё же подружить.
И вот совершенно случайно мне попалась заметка, где упоминался некий HomeBridge, причем именно как нечто, которое делает совместимым с HomeKit несовместимые устройства. Забегая вперед — да, действительно делает.
HomeBridge — это небольшой сервер, который вы можете запустить в локальной сети, который выступает мостом для HomeKit. То есть к нему разными плагинами — а их немало, — подключаются устройства, типа того же домофона Ring, а он транслирует их в HomeKit API. iOS, правда, ругается на отсутствие сертификации, но исправно показывает необходимую информацию и даже понимает, что она означает — в смысле, использует её для сценариев автоматизации.
Для запуска сервера можно использовать любой компьютер — ну, понятно, что он должен быть постоянно включен, если вы хотите, чтобы это всё постоянно работало. Варианты есть для все платформы, я попробовал сразу три варианта.
Вариант с Raspberry Pi практически идеален для тех, у кого под рукой есть этот маленький компьютер. Я прямо не поверил простоте процесса — берете SD-карту, записываете на неё готовый образ, который скачиваете из репозитория, включаете Raspberry Pi и через некоторое время у вас в сети появляется готовый бридж, доступный через любой браузер. Может быть загвоздка, если у вас компьютер не может найти его в сети по имени homebridge.local, но в этом случае надо просто на роутере найти, какой ему IP выдали и сходить по нему.
Правда, мне он не очень понравился, поскольку у меня под рукой оказался еще самый первый Raspberry Pi (если точнее, второй, то есть Pi 1 Model B), и ему было откровенно тяжело запускаться и пережевывать все процессы. Установка первого плагина заняла минут десять и я решил не увлекаться, тем более, что температура процессора стабильно держалась на 45 градусах.
Вторым вариантом стал запуск сервера на моем NAS Synology. У меня модель DS-918+, где можно установить Docker, а на сайте описан способ установки сервера именно таким образом. Долго расписывать не буду — мне этот вариант не понравился совсем, поскольку веб-интерфейс при этом отсутствует и все плагины приходится запускать через команды терминала. Но, если у вас уже есть NAS, то это в принципе хороший вариант, поскольку он все же включен постоянно.
Но я выбрал третий вариант — поскольку у меня прямо в доме работает несколько серверов, оставшихся после закрытия коворкинга (на одном бежит телефония и бухгалтерия, ведь компания-то работает, на другом развернул вебсервер с архивными проектами), то почему бы не использовать их? Тем более, что на одном сервере стоит гипервизор с виртуалками, отрезать кусок для еще одной виртуалки не проблема. В общем, самое долгое было поставить Ubuntu Server на эту виртуалку, а затем по еще одному мануалу разворачивание HomeBridge заняло минут 5.
Правда, подключение его к HomeKit отняло немало времени, но это мои локальные заморочки — в отличие от бытового Wi-Fi, мой Cisco довольно строго относится к поползновениям устройств куда-то ходить на непривычные порты, а найти, какие именно это порты, надо уметь — ведь производители упрощают процесс установки до «купи и включи».
Но, когда заморочки Wi-Fi были побеждены, получилась красота. Ring без вопросов стал показывать картинку с камеры прямо в Home.app, Alexa показала, что она охранная система (то есть режим Guard), а NetAtmo сдала все свои датчики по отдельности. Единственное, с чем я еще не разобрался, это Amazon Smart Plug — там предлагается эмулировать его сразу двумя плагинами, включая виртуальный контакт и вот последний не обнаруживается самой Alexa. Ну, разберемся.
Теперь можно подбирать девайсы без оглядки на то, с чем они конкретно работают. И, в принципе, можно уже и про термостат подумать, наверное. А то мороз, знаете ли, вон то 10,5 в кружке — это на самом деле минус 10,5 на уличном датчике.