Затем качаем прошивку для 1кл. выключателя или для 2-3 кл.
Вторая версия прошивка с регулировкой яркости светодиода на выключателе.
Прошивка V3. Пока только для одноклавишного выключателя.
V3 включает в себя все доработки предыдущих версий.
Добавлена обработка длинного нажатия.
Исправлены мелкие ошибки.
Если клавишу выключателя держать нажатой более 1.3 сек, формируется пакет: LongPress/ИМЯ ВЫКЛЮЧАТЕЛЯ/light и сообщение 1. Через 3 секунды формируется такой же пакет и сообщение 0. С помощью длинного нажатия можно управлять дополнительными группами освещения или переключать дневной/ночной режим вручную в отдельно взятом помещении.
Новейшая прошивка V4.
V4 включает в себя все доработки предыдущих версий. Пока только версия для одноклавишного.
Добавлена обработка DoubleClick (Быстрое двойное нажатие). Добавлено запоминание яркости информационного светодиода во флеш память. После отключении питание яркость восстановится в ранее запрограммированое значение. Мелкии доработки.
Перед заливкой этой прошивки нужно установить дополнительную библиотеку работы с флеш памятью.
Для этого в ардуино нажать: скетч -> подключить библиотеку -> управление библиотеками -> в строку поиска вбить esp_eeprom, установить библиотеку.
Данная библиотека бережно относится к флеш памяти и не долбит данные в одну ячейку, а равномерно заполняет свободные. Ресурс памяти увеличивается в сотни раз.
Если залить в одноклавишный прошивку от 2-3 клавишного тоже всё будет работать, но во избежании глюков лучше заливать правильную.
В прошивку необходимо забить данные вашего WIFI подключения. Имя сети и пароль. 17 и 18 строка программы.
IP адрес, маску шлюз 24-26 строка.
IP адрес MQTT сервера 29 строка
логин/пароль MQTT. Если пароля нет, в кавычках ничего не должно быть. 14,15 строка.
Название топика MQTT (фактически название выключателя) 13 строка.
Затем нажать на кнопку наверху со стрелочкой вправо (Загрузка).
Выключатель будет работать, даже если нет подключения к wifi или mqtt. Обработка нажатий идёт с помощью прерываний и не зависит от внешних факторов.
Прошивка поддерживает обновление по воздуху. Если надо что-то поменять, можно не вынимать выключатель из стены, а прошить его удалённо. Для этого в ардуино надо выбрать инструменты-> порт . И вместо COM порта выбрать выключатель, который необходимо запрограммировать.
MQTT
При нажатии на клавишу, выключатель формирует MQTT пакет вида status/podval/light и сообщение 1 или 0. Думаю тут всё предельно ясно.
Для удалённого управления выключателем надо послать MQTT пакет вида cmnd/podval/light и сообщение 1 или 0. Можно on или off. Кому как нравится.
В случае с 2-3 клавишными, пакет будет вида
status/podval/light1
status/podval/light2
или
status/podval/light3
С управлением то же самое:
cmnd/podval/light1
cmnd/podval/light2
cmnd/podval/light3
Регулировка яркости светодиода: (Только для новой прошивки)
cmnd/podval/brightness и сообщение, цифра от 0 до 100 (значение яркости в %)
p.s. Значение "podval" , это название выключателя. Меняем на своё. )
Не забываем ставить лайк)
Update: Кстати на следующей странице есть прошивка для управления вентилятором. Пользуйтесь.
Update2: На 5 станице есть прошивка, в которой в т.ч. можно управлять яркостью информационного светодиода. (Актуально в ночное время)