Что он может?
1 - Может жить своей автономной жизнью.
2 - Управляет тремя нагрузками, как с шлюза, так и с кнопки (выключателя).
3 - При старте отправляет последнее состояние выходов и временные задержки шлюзу.
4 - Автоматическое выключение выходов по заданным временным задержкам.
5 - Если включили первый выход, то через установленное время включается второй.
6 - Определяет длительность нажатия кнопки и выполняет различные команды.
7 - Установка временных задержек дистанционно, без перепрошивки.
Для чего это все нужно?
"Неожиданно" в квартире затеялся ремонт. Для того, чтобы не ограничивать себя размерами коробок под выключатели, для установки "нод". Были заменены круглые распределительные коробки на большие прямоугольные. Так как все провода приходят в них, пришло решение "ноды" установить в распред. коробку.
Прихожая у меня граничит с ванной комнатой, и выключатели находятся в прихожей. Два выключателя относящихся к ванной в начале прихожей, а выключатель прихожей в конце, у выхода с квартиры.
Алгоритм работы.
По короткому нажатию кнопок, включение и выключение соответствующей нагрузки.
Канал 0 - свет в ванной.
Канал 1 - вытяжка в ванной.
Канал 2 - свет в прихожей.
По длинному нажатию кнопок, более 2 секунд включается свет в прихожей.
Если включили только свет в ванной, то через 2 минуты автоматически включается вытяжка.
Если был включен свет в ванной и вытяжка, а выключили только свет, то через 5 минут выключается вытяжка.
В случае, если любую нагрузку включили, но забыли выключить. Автовыключение произойдет через 60 минут.
Временные параметры.
Все временные параметры придется подстраивать под свои нужды. Для этого реализовано удаленное изменение временных параметров.
Так как не получил своевременно ответа на данном форуме, то пришло такое решение.
В скетче реализовано три канала управления и десять параметров у каждого канала. Мне нужно обмениваться со шлюзом тремя параметрами на каждый канал, итого девять параметров. Значит на шлюз представляю ноду как единый тип датчика, а параметры разделяю на три типа данных.
Первый тип - статус выключателя, каналы вкл/выкл.
Второй тип - время автовыключения каналов.
Третий тип - время вкл/выкл вытяжки относительно света в ванной.
Так определяются типы данных ноды, и выглядят мои связанные объекты и свойства:
СпойлерПоказать
СпойлерПоказать
Идея реализации не моя, подглядел и поправил под свои нужды.
Спасибо Алексею Степанову @avstepanov https://geektimes.ru/post/258430/
Скетч под библиотеку MySensors 1.5.4 Скетч под библиотеку MySensors 2.2.0 После первой прошивки скетча в ноду, нода работает не правильно, т.к. в памяти EEPROM не те значения, что нам нужно. Установите нужные значения через модуль MySensor и все будет предсказуемо. Удачи.