В апреле 2023 года Xiaomi объявила о начале продаж европейской версии Smart Home Hub 2. Шлюз работает с протоколами Bluetooth, Bluetooth Mesh и ZigBee и предназначен для организации работы умного дома. Через него работают датчики, выключатели, лампочки и другие элементы единой системы.
У Xiaomi Smart Home Hub 2 улучшено покрытие, он работает стабильнее и поддерживает два диапазона Wi-Fi — 2.4 ГГц и 5 ГГц, а также может подключаться к интернету через проводное соединение. Поддержка сразу двух протоколов Bluetooth и ZigBee позволяет устройству охватить больший спектр устройств.
Размеры устройства 9,5 х 9,5 х 2,59 см, корпус из белого пластика, который не поддается воздействию УФ-лучей и не должен желтеть со временем. Стоимость новинки 50$.
Источник: xiaomi-rus.com
Умный дом на Xiaomi. Почему пришлось поменять xiaomi hub на Aqara hub
Данные летят в Китай? Только ты не допускай!
Большинство “умных” устройств всячески стараются затащить вас в свою постель экосистему и держать там как можно дольше. Всякие “умные” лампочки, розетки, камеры предлагают вам зарегистрировать устройство на собственном сервере, чтобы через приложение удобно им управлять.
“ Шибко умные! ”, — считают продвинутые пользователи, которым не сидится на месте ровно, и всячески пытаются перехватить управление этими устройствами в свои руки. Это отчасти связано с паранойей — “за нами следят”. Им кажется, что “товарищ майор”, либо “хитрый китаец” знают что происходит у них дома, следят за ними через камеру и в любой удобный момент могут отключить свет в туалете, пока они там находятся.
Поэтому, эти пользователи создают “хаки”, прошивки и другие обходные маневры, чтобы остановить слежку и перенаправить “умные” устройства на свой собственный сервер.
Сегодня я поддержу этих пользователей и расскажу как можно отобрать у компании Xiaomi контроль за их датчиками и кнопками, работающими по протоколу Zigbee. Эти датчики и устройства очень популярны среди любителей “этого дела” (домашней автоматизации и “Умных домов”) благодаря своей доступности и внешнему виду.
Пусть в Китай летят журавли , а наши данные останутся при нас.
Узкие места
Стратегически важным “местом утечки данных” считается Zigbee-Wifi-шлюз от Xiaomi, который подключен к сети и может отправлять какие-то данные на внешние сервера. Но это легко исправляется, если на роутере заблокировать внешний доступ этому устройству.
Еще одним “узким местом” является аккаунт в приложении MiHome, где настроено подключение к шлюзу и видны все устройства заведенные в него. Для этого случая уже давно известен способ включения developer-режима на шлюзе и получения управляющего токена. После чего, можно напрямую общаться со шлюзом по сети без приложения MiHome. Именно этим способом пользуются все системы “умного дома”, чтобы работать с датчиками и устройствами Xiaomi.
Xiaomi smart home HUB 2 ZNDMWG04LM Global НОВЫЙ шлюз умного дома MiHome ZigBee 3.0, WiFi 5, BLE Mesh
Но есть и более кардинальный способ — отказ от шлюза Xiaomi и MiHome. Т.е. организация своей собственной Zigbee-сети и подключение датчиков и устройств Xiaomi к ней. Вот об этом чуть более подробно.
Варианты решения
Один из вариантов — использовать иной хаб Zigbee-устройств. Например, Samsung SmartThings, Wink Hub 2, Mixtile Hub или какой-то иной. Но это “менять шило на мыло” и значительного профита никакого — данные как улетали, так и будут улетать, только в другие края.
Второй вариант — спец платы, добавляющие функционал Zigbee нашему серверу “Умного дома”. Это уже более удобный вариант для нашего параноика.
Эти устройства выступают в роли “Координатора” Zigbee-сети (вместо шлюза Xiaomi) и организуют сеть, регистрируют устройства и могут управлять ими. Дополнительно, эти решения позволяют подключать все разнообразные Zigbee-устройства, а не только от Xiaomi.
В Европе есть несколько экземпляров таких устройств.
Dresden Elektronik
Для работы требуют установки специального драйвера и приложения. А для возможности интеграции в систему “Умного дома”, требуется REST-плагин , обрабатывающий http-запросы:
Zigate
Совмещает в себе Zigbee и Wifi — может работать как шлюз.
Есть готовые наработки по интеграции в системы “Умного дома”:
А вот у российских пользователей есть надежда на другой вариант, правда не сразу готовый для потребления:
Texas Instruments
cc2531 или платы на базе cc2530
Для работы в качестве координатора Zigbee-сети, необходимо прошить специальную прошивку. После этого возможна интеграция с системами “Умного дома”:
Основная логика находится не в прошивке, а в модуле интеграции с системой “Умного дома”, который работает с устройством. Поэтому, на текущий момент, еще не все zigbee-устройства Xiaomi через такой шлюз поддерживаются в системах “Умного дома”. Но это дело времени.
Чуть подробнее
Этот последний вариант я решил попробовать на себе.
Началось всё с библиотеки zigbee-shepherd для node.js , именно там я обнаружил упоминания о подключении датчиков xiaomi через zigbee-стик cc2531. Там же есть и прошивка и инструкция по прошивке .
Для прошивки, необходимо присоединить стик через DEBUG-разъем на плате. Это 10 пинов (2*5) с шагом 1.27 мм. Поэтому, можно приобрести отдельно контакты для подключения к такому разъему , либо взять такую плату с кабелем .
Существует как минимум 2 варианта прошить USB-стик cc2531:
- используя специализированные устройства, типа CCDebugger
- используя Arduino-совместимые микроконтроллеры
Приобрести CCDebugger можно например тут , либо чуть иной блок .
Нужно установить прошивальщик и скачать прошивку . Процесс прошивки очень быстрый — несколько секунд . Вот еще один вариант описан . Можно попробовать прошить через Arduino, с использованием проекта https://github.com/wavesoft/CCLib , но с небольшими доработками. Один из пользователей описал, что смог прошить CC2531 используя CCLib и описал свои замечания .
Этот способ я тоже попробовал — не понравилось. Процесс прошивки длился около 1.5 часа.
После прошивки можно попробовать пример из библиотеки, либо установить проект https://github.com/oskarn97/xiaomi-zb2mqtt , работающий на указанной выше библиотеке и попытаться подключить устройства.
Именно так началась разработка драйвера для ioBroker . Не все zigbee-устройства xiaomi подключились сразу — где-то потребовалось доработать библиотеку, но т.к. ее автор пока забросил, то используется отдельный форк с изменениями.
В итоге, удалось подключить все доступные мне устройства и получить все их параметры.
Также можно попробовать устройства на базе cc2530 с внешними антеннами — они “бьют” дальше (~50м в пределах прямой видимости), но выглядят чуть хуже и подключаются через UART. Справа устройство с усилителем — оно “бьет” еще дальше, стоит дороже, но толку не больше — сами датчики Xiaomi не могут послать такой же сильный сигнал, поэтому устройство их не слышит на больших расстояниях.
Итого
Для нерешительных параноиков, подготовил сравнительную таблицу плюсов и минусов
Шлюз Xiaomi | cc253x (стик) |
❌ Нужен аккаунт Xiaomi для начальной настройки в MiHome | ✅ Независимость от аккаунта Xiaomi, Китая, наличия интернета |
❌ Работает только с устройствами Xiaomi | ✅ Возможность работы с другими Zigbee-устройствами (не только Xiaomi, уже проверено в IKEA TRÅDFRI bulb и FLOALT panel) |
❌ Ограниченный (~10м) радиус доступности устройств | ✅ Варианты с внешней антенной могут «услышать» устройства на достаточно большом расстоянии (~50м) |
❌ Стоимость ~ $30 | ✅ Стоимость ~ $10 |
✅ Отличный внешний вид | ❌ Голое устройство, с корпусом стоят дороже |
✅ Свободная возможность размещения (там где есть розетка) и доступ по Wifi | ❌ Вставляется в компьютер (или микрокомпьютер/одноплатник/малина) и зависит от его расположения |
✅ Благодаря MiHome может управлять устройствами как со смартфона, так и из сторонней системы «Умного дома» | ❌ Требует спец драйвер (софт), чтобы управлять устройствами из системы «Умного дома». Управление с телефона — только через систему «Умного дома». |
? Сценарии работы устройств настраиваются в MiHome или в системе «Умного дома» | ? Сценарии работы устройств настраиваются в системе «Умного дома» |
✅ Можно использовать встроенную лампу, радио и датчик освещенности. Агрегирует также wifi-устройства Xiaomi | ❌ Нет функций, кроме Zigbee |
✅ Не требует специальной доработки и работает «из коробки» | ❌ Требуется специальная прошивка, без нее не работает. Либо приобрести уже прошитый стик (в личку), но это увеличивает стоимость. |
И если вы всё-таки решитесь избавиться от шлюза Xiaomi — спрашивайте поддержку описанных устройств у своего поставщика системы “Умного дома”.
Источник: inhomekit.ru