Это не рекламная статья и не подробная инструкция что, как и зачем..
Это просто мои "заметки на память".Домашний центр МТС (он же МТS-HC-001, он же Geniatech GTW360) интересное устройство - процессор ARM Cortex-A7 NXP i.MX6ULL 792 МГц, плюс 515Мб ОЗУ DDR3 и 8Гб EMMC памяти, LAN порт, WiFi 2.4+5ГГц, Zigbee 3.0, USB.
В шлюзе МТС используется чип ZigBee 3.0 Nordic Semiconductor nRF52840. Координатор от nordic zboss - все еще в тестовой поддержке и может работать нестабильно, поэтому у
Ильи (создателя HOMEd) была заказана плата на православном TI CC2652 - это очень популярный и по праву стабильный чип ZigBee. Илья сделал плату которую можно поставить вместо штатной без пайки:
Помимо довольно хорошего железа, на этот шлюз еще очень привлекательная цена на распродаже Умного дома МТС на массмаркетах:
Плюс этот шлюз уже взломали и на него довольно просто ставится OpenWrt. Инструкция есть в Телеграм канале
HOMEd и на
4PDA.to.
Имея на шлюзе OpenWrt уже есть поле для танцев - можно установить туда Home Assistant, Zigbee2MQTT или HOMEd.
Так как у меня было желание попробовать сделать маленький самодостаточный сервер умного дома, то я решил пощупать HOMEd. В свое время я пробовал ZESP на Xiaomi DGNWG05LM, но мне он тогда не зашел, а HOMEd по скриншотам из интернета выглядит вполне взрослой системой. Тем более для него есть интеграция в Home Assistant, и возможно я решу его использовать дома и не только для тестов.
Что такое HOMEd?Это программный комплекс для умного дома. Это такой упрощенный, точнее облегченный, вариант Home Assistant. Он состоит из отдельных небольших приложений, которые общаются между собой посредством MQTT-брокера.
У HOMEd своя поддержка различных zigbee координаторов, поддержка zigbee устройств, свои автоматизации, есть возможностью работы с Telegram и Умным домом Яндекс, со своим рекордером данных, мини графиками и dashbord-ами. Уже появилась интеграция для Home Assistant, позволяющая прокинуть все устройства HOMEd в Home Assistant.
Установка OpenWrt на Домашний центр МТС (МТS-HC-001, Geniatech GTW360)
За инструкцию спасибо ИльеНам понадобится USB флэшка с FAT32. Закидываем на нее файлы
openwrt_geniatech-gtw360.zip [29,45 Mb] (cкачиваний: 0) (не забудьте распаковать).
Вставляем флэшку в USB порт шлюза, подключаем ethernet и подаем питание, ждем пока перестанет мигать синий светодиод - шлюз загрузился с флэшки.
Подключаемся по SSH (например PuTTY) к шлюзу по адресу 192.168.1.100, логин - root, пароль пустой. Если без пароля не пускает - значит загрузились не с флэшки, проверяем что флэшка была отформатирована именно в ФАТ32, меняем флэшку на другую - встречал жалобы что шлюз не все флэшки переваривает.
Подготавливаем файловую систему:
parted -s /dev/mmcblk1 rm 4
parted -s /dev/mmcblk1 mkpart primary 138MB 100%
mkfs.ext4 -F /dev/mmcblk1p2
Копируем файлы с флешки:
mount /dev/sda1 /mnt/
cp /mnt/fitImageA .
cp /mnt/openwrt-23.05.3-imx-cortexa7-geniatech_gtw360-rootfs.tar.gz .
umount /mnt
Заменяем загрузочный образ на нужный:
mount /dev/mmcblk1p1 /mnt
cp fitImageA /mnt
umount /mnt
Распаковываем rootfs:
mount /dev/mmcblk1p2 /mnt
gunzip openwrt-23.05.3-imx-cortexa7-geniatech_gtw360-rootfs.tar.gz
tar -xf openwrt-23.05.3-imx-cortexa7-geniatech_gtw360-rootfs.tar -C /mnt
umount /mnt
Вынимаем флешку и перезагружаем шлюз:
reboot
После перезагрузки подключаем к своему роутеру шлюз кабелем, IP адрес смотрим в роутере - на ethernet порту работает dhcp клиент.
Я сразу отключил FireWall в разделе System - Startup:
Отключение firewall на OpenWRT Если FireWall не отключить, то нельзя будет подключиться к шлюзу из WiFi сети.
(разобраться потом - почему)Настраиваем подключение шлюза к WiFi - Network - Wireless - Scan. Находим нашу сеть, вводим пароль. Обязательно нужно поставить галку "Replace wireless configuration" и при применении изменений вместо "Save & Apply" нажимаем "Apply unchecked", чтобы изменения применились без таймера.
Кнопка сбоку шлюза имеет такие функции:
- нажать кратко - корректная перезагрузка системы
- зажать на 10 - сброс настроек сети к заводским
- зажать на 20 - удаление всего оверлея
Устанавливаем Mosquitto MQTT брокер
Т.к. ХОМЕд работает через MQTT, то он просто необходим, однако его установка не описана в WiKi HOMEd и вызвала у меня небольшой затык при установке.
Илья (создатель HOMEd) это сделал специально - тут есть несколько вариантов:
1. установить на шлюз локально брокер MQTT (мой вариант)
2. использовать какой-нибудь облачный сервер
3. использовать тот же MQTT брокер который использует наш инстанс Home Assistant
Так как я планировал использовать шлюз МТС с OpenWRT и HOMEd как самодостаточный сервер умного дома, то я выбрал первый вариант.
Подключаемся через PuTTY к шлюзу по SSH и ставим mqtt.
Получим список и обновления новых пакетов:
opkg update
opkg upgrade
Устанавливаем MQTT брокер и клиент Mosquitto:
opkg install mosquitto-nossl
opkg install mosquitto-client-nossl
Теперь нам нужно настроить сервер MQTT, который мы только что установили.
Заведем пользователя, под которым мы будем подключаться к mosquitto, для этого нам нужно создать файл на шлюзе /etc/mosquitto/mosquitto.users с содержимым:
homed:password
После этого делам минимальный конфиг mosquitto. Файл /etc/mosquitto/mosquitto.conf:
# слушаем порт 1883 с любых сетей
listener 1883 0.0.0.0
socket_domain ipv4
# анонимусы идут лесом
allow_anonymous false
# логины пароли кому можно подключаться к нашему MQTT брокеру
password_file /etc/mosquitto/mosquitto.users
Установка HOMEd на OpenWRT
Эта часть хорошо описана в
HOMEd Wiki.
Действуем строго по инструкции - WiKi приложения, которое будем сейчас устанавливать, переходим в раздел установка и выполняем все по шагам, потом переходим в раздел конфигурация, смотрим где лежит конфигурационный файл и правим там секцию:
[mqtt]
host=localhost
port=1883
username=homed
password=password
username и password указываем такие же как те которые ранее указали в файле /etc/mosquitto/mosquitto.users при настройке Mosquitto
Особенность есть в настройке HOMEd ZigBee - тут нужно выбрать правильные настройки для подключения к координатору. Т.к. мы это делаем на шлюзе МТС, то идем в раздел
Geniatech GTW360 и копируем настройки в свой файл конфигурации.
Если в шлюзе Умного дома МТС стоит плата от Ильи с чипом TI CC2652, то необходимо внести некоторые изменения в конфигурационный файл как описывает Илья
тут.
Источники:
HOMEd. Описание и документацияHOMEd. Чат проекта в ТелеграмInstall and configure Mosquitto on OpenWrtAuthentication methods. mosquitto