18 марта 2020

Умный дом на Zigbee2mqtt часть 1

После долгих раздумий, решил попробовать сделать себе немного умного дома. Проблема состоит в том, что нигде не найти информации по настройке умного дома под конкретное оборудование и задачи. Приходится все проверять методом проб и ошибок. Я постараюсь пошагово описать все свои изыскания в этом вопросе. Итак приступим...
Прежде всего нужно определиться с тем, что мы хотим получить от умного дома и из этого расчета закупать оборудование. Я честно говоря до сих пор не определился, но понял что нужно идти постепенно и не кидаться на все готовое. Готовые устройства и наборы, например Xiaomi уже из коробки готовы к использованию, но ограничены в плане софта и заграничных серверов на которые сливают всю информацию ваши устройства. Я как-то не очень хочу, чтобы китайцы могли как-то влиять на работу моих устройств, по этому выбрал самую простую (как мне показалось) стратегию. На одном сайте я прочитал о том, как автор статьи переходил с одной ОС умного дома на другую и в комментариях к статье получил поистине ценную информацию о zigbee2mqtt. Вся прелесть данной системы состоит в том, что вы можете подключить к своей системе умного дома практически любое оборудование. Я зашел на сайт zigbee2mqtt и с помощью переводчика начал познавать эту систему...

Что нужно купить для начала

Прежде всего нужно купить специальный стик на базе контроллера CC2531 и программатор. Выбор на Aliexpress очень велик. Можно купить все по отдельности или в комплекте (так лучше и поступить, даже если будет дороже). Есть стики со встроенными антеннами и внешними. Есть даже в готовых корпусах, так что выбор остается за вами. Я покупал в этом магазине.
Этот стик будет служить координатором всей сети умного дома. Он будет собирать данные со всех конечных устройств, обрабатывать их и отправлять команды. Если у вас большой дом или нужно покрыть большую часть участка в загородном доме, можно купить несколько таких стиков и прошить их как роутеры. Они будут работать как ретрансляторы и усилители сигнала. На фото, самая простая модель со встроенной антенной, я купил чуть подороже с внешней антенной.
 Так выглядит мой набор
 Ждать заказ пришлось очень долго. Сначала китайский новый год отодвинул сроки отправки, а потом эпидемия корона-вируса, еще добавила две недели.
Но вот все получено и готово к настройке. Еще советую прикупить пару удлинителей USB, например такие недорогие.

Прошивка стика

Дальнейшим шагом будет прошивка стика. Я работаю в Windows и по этому буду описывать процесс прошивки именно в этой системе. Для начала скачиваем и устанавливаем программу для прошивальщика SmartRF Flash programmer. Для скачивания потребуется регистрация. Обратите внимание, что вам нужна версия 1.12.8.
Скачиваем и устанавливаем драйвера для прошивальщика.
Скачиваем прошивку для стика и распаковываем в любую папку.
Теперь собираем стенд для прошивки
 Обратите внимание на правильность подключения шлейфа
 Красный провод соответствует контакту №1 на плате
 Красный провод соответствует контакту №1 на плате
 Тут ошибиться трудно, специальные вырез на разъеме вам в помощь
Теперь подключаем стенд к компьютеру. Кабель от программатора и стик вставляем в USB разъемы на компьютере. При этом должны загореться зеленые светодиоды на программаторе и стике.
Зайдите в диспетчер устройств и вы увидите два новых устройства как на фото внизу.
Если у вас ничего не появилось, попробуйте перезагрузить программатор кнопкой на корпусе.
Запускаем программу для прошивки. В поле Flash image, подставляем файл с прошивкой с расширением HEX. Далее нажимаем кнопку Perform actions и ждем окончания прошивки.
Процесс пошел
 Стирание и запись закончилась, идет проверка
 Все, прошивка завершена
Зайдем снова в диспетчер устройств. Видим что появилось новое устройство в разделе портов
Смотрим свойства устройства
Отключаем программатор и отсоединяем шлейфы. В диспетчере остается только стик
Теперь для удобства можно присвоить устройству уникальный номер по порядку(например (СОМ 2)). Только не забудьте в каком разъеме у вас установлен стик и в дальнейшем используйте только его, иначе при подключению к другому разъему у вас поменяется номер порта и придется делать изменения в настройках. Отключаем стик от USB.

Проверка работы

Переходим по ссылке, и скачиваем последнюю стабильную версию Node.js. Устанавливаем на компьютер. На всякий случай установите флажок для автоматической установки дополнительных инструментов.
У меня установка заняла много времени, более 20 минут
 Установились так же последние обновления безопастности
Проверим, что все установилось правильно. Запускаем окно PowerShell от имени администратора и набираем node --version
И видим что версия совпадает
Теперь скачиваем и распаковываем в корень диска файлы Zigbee2mqtt.
Я распаковал архив на диск С: в папку Zigbee2mqtt. Теперь перейдем в эту папку и зарегистрируем её набрав команду npm ci.
Переходим в папку data и вносим изменения в файле configuration.yaml. Нам нужно указать что стик подключен к порту COM 2
Сохраняем изменения и выходим в корневую папку. Подключаем стик к USB порту
Через некоторое время зеленый светодиод гаснет
Теперь можно запускать Zigbee2mqtt. Набираем команду npm start 
 Видим что все работает, ревизия прошивки совпадает с залитой нами. Так как не запущен сервер MQTT, больше смотреть нечего и мы прерываем работу комбинацией клавиш Ctrl + С и подтверждаем свое намерение Y.
Итак, в первой части мы рассмотрели покупку, прошивку и проверку координатора для будущей системы умного дома. В следующей части я продолжу рассказ...

Комментариев нет:

Отправить комментарий