Главная > Технический изврат > Разбираем контроллер умного дома Z-Wave.Me Hub

Разбираем контроллер умного дома Z-Wave.Me Hub

Что-то давненько я не ковырял разные необычные железки. На днях мне снова пришлось вернуться к теме умных домов, протестировать вот такой набор железа.

1. Контроллер Z-Wave.Me Hub
2. Датчик затопления
3. Датчик открытия двери, движения, температуры
4. Реле с сухим контактом
5. Реле с измерением мощности нагрузки

Z-Wave.Me Hub

Z-Wave.Me Hub


Датчики

Датчики


Реле

Реле

Что интересно, на контроллере написано, что это российская разработка. А на самом деле в веб-интерфейсе имеется логотип европейской компании POPP, которая выпускает точно такой же девайс. Если это действительно наши для немцев придумали, то мое глубочайшее уважение разработчикам. Но если честно, верится с трудом.

Неужели правда спроектировано в России?

Неужели правда спроектировано в России?

Дизайн аккуратный, со всех сторон мигают и переливаются лампочки. Правда, не совсем ясно, как и куда его крепить. Скорее всего, к стене, но никакого крепежа в комплекте не было, даже отверстий подходящих на корпусе нет. Контроллер нормально запустился, все датчики и реле без проблем подключились. Управлять умным домом можно через локальную сеть, Wi-Fi или сайт find.z-wave.me.

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

Первым делом я попробовал попасть в контроллер через сеть. Он отвечал по ssh, но ни один из указанных на корпусе паролей не подходил. Пришлось аккуратно расколупать корпус в поисках консоли. К счастью, разработчики не стали сильно огораживать устройство, даже нормально распаяли на плате UART. На обратной стороне платы я обнаружил флешку MicroSD, на которой хранятся настройки и логи. Этих логов пишется достаточно много, а кроме того, используется журналируемая файловая система ext4. Неизвестно, сколько проживет флешка в таком режиме.

Плата контроллера

Плата контроллера

Первым делом я вошел в failsafe режим OpenWrt и поменял пароль root. Но после перезагрузки войти в систему не получилось. Сравнив хеш пароля до и после перезагрузки, я понял, что пароль кто-то меняет. Пришлось скопировать корневую файловую систему на флешку и тщательно изучить ее.

Обнаружился скрипт /etc/init.d/set_default_password, который делал следующее:

ROOT_PASSWORD=`dd if=/dev/mtd3 bs=1 skip=$((0x100)) count=10` && echo -e “$ROOT_PASSWORD\n$ROOT_PASSWORD” | passwd
WIFI_PASSWORD=`dd if=/dev/mtd3 bs=1 skip=$((0x110)) count=10` && sed -i ‘s/\(option key \).*$/\1″‘$WIFI_PASSWORD'”/’ /etc/config/wireless

Пароли хранились в особом месте внутренней памяти и устанавливались при каждой загрузке контроллера. Можно было бы перезаписать их, но я пока не стал это делать и входил в систему, используя прошитый рутовый пароль. Интересно, уникален ли этот пароль для каждого устройства и хранит ли изготовитель базу паролей всех изготовленных контроллеров для нужд техподдержки. При этом он попадает в локальную сеть дома, а там всякое возможно…

Исследуя систему, можно найти много интересного. Не обошлось и без костылей.

sleep 10 # if we don’t wait, it hangs on something.

Весь основной функционал выполняет один монолитный процесс z-way-server, который содержит в себе и работу с периферией, и веб-интерфейс, написанный на богомерзком яваскрипте, и хост для выполнения плагинов, написанных на нем же. Z-Way API открыто и позволяет выполнять все необходимые действия.

А теперь о самом главном. Я таки нашел, как сделано в этой системе удаленное управление. Это скрипт /etc/init.d/zbw_connect. Он устанавливает SSH туннель до сервера find.z-wave.me и пробрасывает на него порты веб-интерфейса (8083) и ssh (22). Скрипт содержит в себе логин и приватный ключ для соединения с сервером, а также передает через переменные окружения другие данные, необходимые для доступа. Отредактировав этот скрипт, я перенаправил туннель на свой сервер и смог управлять контроллером через Z-Way API. Скорее всего, Ростелеком сделал то же самое, особо не изменяя прошивку контроллера.

На очереди создание личного кабинета пользователя и организация передачи запросов из него через API. Фактически, полная реализация серверной части. А это значит, много интересной работы.

  1. Вячеслав
    13 августа 2019 в 17:34 | #1

    Здравствуйте! Есть ли еще информация по этому устройству?

  2. Zloy Admin
    30 августа 2019 в 15:01 | #2

    Проект был закрыт, этой железки у меня уже нет. Слитая прошивка валяется где-то, если что-то надо, могу посмотреть, но проверить не могу.

  3. Дмитрий
    24 декабря 2019 в 23:04 | #3

    @Zloy Admin
    Здравствуйте.
    Эх жаль, я уже год наблюдаю за блогом, в надежде на инструкцию по прошивке контроллера. Мне достались по дешевке три набора от ростелеком, но без привзки к другим системам умных домов – они валяются мертвым грузом, и хз что с ними делать…

  4. Максим
    1 октября 2020 в 20:47 | #4

    @Дмитрий
    Вопрос еще актуален?

  5. Максим
    1 октября 2020 в 20:51 | #5

    @Дмитрий
    Есть ли еще желание снести прошивку от Ростелеком и поставить прошивку которую предлагает разработчик этих устройств?
    Появится возможность управлять умным домом локально без подключения к интернет сети, а также по желанию можно будет подключить контроллер к find.z-wave.me и появится возможность управлять удаленно.

  6. Игорь
    25 ноября 2020 в 21:49 | #6

    @Максим
    Я меня есть такое желание. А что – есть такая возможность?

  7. Максим
    30 ноября 2020 в 13:56 | #7

    @Игорь
    Да есть возможно поставить прошивку от вендора.
    Соответственно нужно понимать что в таком случае если вдруг захочется вернуться в Умный дом от Ростелеком, то нужно будет искать уже их прошивку.
    Разместил на Яндекс Диске инструкцию по прошивке и две прошивки за 2020 год
    https://yadi.sk/d/jOKdXBgt2ImRCw?w=1

    И как говориться все на свой страх и риск. Прошивку необходимо осуществлять аккуратно, контроллер не должен в момент прошивки терять подключение к питанию и к uart

    Соответственно после прошивки необходимо будет пользоваться уже следующей инструкцией по эксплуатации:
    http://rus.z-wave.me/drive/?file=254cfb543fcfdc8f24263ae4a9fb6fab5996
    Дополнительно рекомендую, после ознакомления с новым интерфейсом, скачать дополнительный виджет который объединяет элементы много-функциональных устройств/датчиков в один виджет. Название не помню, но в интерфейсе загрузки дополнительных виджетов есть описания этих виджетов.
    После прошивки у контроллера будет две панели управления одна (базовая) будет доступна по адресу https://192.168.115.1, а вторая экспертная панель https://192.168.115.1/expert
    Желательно будет подключиться к wi-fi, который раздает контроллер, не через телефон. Ну или в браузере телефона выбрать отображение страницы в версии для ПК.

  8. Павел
    5 декабря 2020 в 04:53 | #8

    @Максим
    Ура! Без шуток, полтора года искал, как перепрошить. И ваш сайт видел. Утром обязательно попробую.

  9. Игорь
    7 декабря 2020 в 04:18 | #9

    @Максим
    Большое Спасибо! Буду пробовать. Результат отпишу.

  10. Максим
    19 марта 2021 в 18:24 | #10

    Спасибо все норм получилось

  11. Семен
    21 сентября 2022 в 12:08 | #11

    @Максим
    Максим привет, а есть возможность скинуть образ флешки с установленной ОС и прошивкой на данный Хаб?

*