Когда я делал ремонт в квартире, то планировал поставить систему контроля протечек. О умном доме я в ту пору не думал. Смотрел в сторону готовых решений типа систем Нептун. Почти все эти системы состоят из головного устройства с подключенными к нему проводами датчиками протечки. Поэтому я предусмотрительно проложил кабеля в ванну, туалет и кухню, в общем в те места где возможно самопроизвольное появление воды. После знакомства с технологией zigbee я решил собрать свою систему контроля протечек и подвязать ее к своему умному дому Home Assistant.
За основу взял статью на Хабре. Для проекта закупился на Aliexpress запчастями.
Понижающий преобразователь DC-DC
Прошивка для CC2530. Для этого нам нужна программа PTVO. Меняем параметры как на скриншотах и сохраняем с расширением .bin. Не забываем создать внешний конвертер для zigbee2mqtt. Мои файлы лежат тут.


Для прошивки собираем такую схему. Если и дальше планируете заниматься разработкой zigbee устройств то лучше купить CC-Debugger

Подключаем esp8266 NodeMCU к компьютеру. Если попросит, то устанавливаем драйвера. Скачиваем CLoader_Arduino.bin и заливаем в esp8266 с помощью Tasmotizer или nodemcu-flasher. Далее нам понадобится CCLoader. Создаем папку ccloader на диске C. В нее кидаем скачанный файл и прошивку из ptvo.Открываем терминал и вводим 2 команды. 4 — номер порта на котором висит esp8266. Можно посмотреть в диспетчере устройств.
cd c:\ccloader
CCLoader_x86_64.exe 4 название_прошивки_из_ptvo.bin 0
По экрану должны побежать буквы с циферками и при успешной загрузке прошивки должна появится надпись Upload successfully! File closed! Comport closed!
Схема всего устройства выглядит так. При желании можно подключить и больше модулей протечки. Свободных пинов у CC2530 много. Дописать нужные в PTVO не составит труда.

З.3 вольта я брал с понижающего DC-DC преобразователя т.к. у меня разведена по квартире слаботочная проводка на 12 вольт. Можно поставить блок питания на 3,3 вольта и подключить в розетку 220в.
Все устройство я решил делать на печатной плате (см. ЛУТ). Вот исходники для SprintLayout.
Готовый результат:


Для добавления устройства в Zigbee2mqtt надо предварительно закинуть файл внешнего конвертера (.js) в папку zigbee2mqtt/external_converters. Перезагрузить zigbee2mqtt, включить обнаружение устройств и подать питание.

На будущее хочу подключить к этой плате шаровый кран с электроприводом. Так что продолжение следует…
Реклама: ООО «АЛИБАБА.КОМ (РУ)» ИНН: 7703380158