Sonoff Relay модернизация кастомной прошивки
ฝัง
- เผยแพร่เมื่อ 6 ก.ย. 2024
- Небольшое усовершенствование кастомной прошивки для реле Sonoff.
Добавлен выбор сетей WiFi, датчики температуры и влажности серии DHT, обработка двойного нажатия на кнопку и выбор произвольного времени автоотключения в веб-интерфейсе.
Код скетча: drive.google.c...
Использованы библиотеки из стандартного репозитория Arduino IDE PubSubClient, OneWire и Adafruit DHT Sensor Library.
Если у вас после прошивки модуль не работает, то в конфигурации платы в Arduino IDE измените Flash Мode на "DOUT" и прошейте модуль еще раз (спасибо за решение Сергею Тучкину).
Актуальная версия скетча в ролике • Прошивка для Sonoff Ba...
Алексей, Супер! Новшества в обновлении очень понравились. Не думал, что так скоро, учитывая что на работу собираетесь выйти. Но наверное не смогли воздержатся реализовать эти Ваши идеи, пока в голове крутились? А то как выйдите на работу можно о них и забыть. На всякий случай делюсь своими мыслями:
1. Логин для Admin и для User. User - интерфейс без возможности изменять конфигурацию модуля ( при совместном использовании важно).
2. Если будет больше кнопок и реле - сделать возможным нескольким кнопкам управлять одним реле. Что то типа проходного выключателя получится. Или определенной кнопкой выключить все реле, например.
Пользовательская аутентификация поддерживается еще с предыдущей версии, просто пароль для user на странице параметров WiFi не задан по умолчанию. С этим паролем можно попасть только на главную страницу и в логи, все остальное требует административный пароль.
Про вариант "одна кнопка-много целей" помню, здесь это без надобности, а вот в общем "умном реле" обязательно будет реализовано.
Я, к сожалению, увлекающаяся натура, в итоге бросаюсь из стороны в сторону, хвосты только отращиваю, вместо того, чтобы их рубить. Вот думал в отпуске порубить старые хвосты - как видите не успел. Но когда-нибудь все будет доведено до логического финала. Хотя нет же пределов совершенству... :)
Да прозевал этот момент с авторизацией ( Очень хотел данную функцию, а как появилась - прозевал момент где и когда). Пока самого модуля Sonoff у меня нет, буду пытаться адаптировать под MEGA RELAY ). Да и с датчиками, когда их много, не плохо в будущих прошивках иметь возможность подписать их, как у Вас сделано с RELAY. Еще раз громадное СПАСИБО.
Вот здорово!!! "Хотелка" #1 реализована. Ждём продолжение с датчиком движения. ;) Спасибо!
Все отлично встало, только я долго мчался с версией один, не знал что вышло второе. Самое интересное то что сделал засунул в стену. и нет обновления по воздуху. Спасибо за видео
Добрый день !!! Очень хорошая тема прошивать Sonoff , есть еще и прошивки Tasmota, но ваша прошивка очень интересная . Спасибо !!! Жалко, что не продолжаете эту тему.
У меня вопрос , а датчик например BME280 можно так же прописать , как DHT , добавив стандартную библиотеку BME280 ?
Датчики BMP(E)x80 и т.п. используют протокол I2C, для него нужны 2 пина помимо питания, так что просто как с OneWire не получится, а вот взяв, например, еще и пин RX...
@@alexmorozov73 спасибо за информацию!!!
А будут ещё видеоуроки с Sonoff ?
Здравствуйте, очень интересная реализация! У ас есть на канале как это работает по MQTT, как это всё настроииь?
Подскажите, пожалуйста, где искать головной файл "DHT.h" в модернизированной кастомной прошивке и в прошивке, поддерживающей датчик PIR? Без него, что очевидно, компиляция скетча не происходит: #include "DHT.h" compilation terminated.
Подскажите совсем для чайника, какой файл из архива скейч или надо как то все файлы загружать?
Спасибо за проделанную работу. А можно на GPIO14 подключить несколько датчиков 18b20?
Без изменения кода нельзя.
Планируете ли вы снимать продолжение экспериментов с этим реле, например прикрутить расширитель портов на I2С или барометр BMP. Тема очень интересная. Стоит устройство копейки а получаешь ESP c блоком питанием и корпусом. Даже с одним свободным GPIO можно ведь прикрутить например управление светодиодной лентой с адресацией типа WS2812b а встроенным реле включать сам блок питания ленты.
Alex Morozov в программе eWeLink можно как то организовать на смартфоне звуковой сигнал , когда температура нагрева поднимется до заданной в ручном режиме ?
Почему меня спрашивают о программе, к которой я не имею никакого отношения?
@@alexmorozov73 ну если нет чего сказать, лучше промолчать...
Alex Morozov , очень клевые видеоуроки. Спасибо Вам за них. я не силен в программировании, но нвбросал в flprog веб сервер на меге. есть ли возможность управления реле с веб сервера (для меня абривиатура mqtt звучит как нечто страшное)? То есть сервер при определенном условии делает запрос на реле , реле меняет свое положение и отправляет статус обратно серверу
был бы ооочень благодарен если бы в настройках была возможность переключения на иной протокол
Не хотите понять MQTT - изучайте веб-код главной страницы реле, там и получение текущего статуса через AJAX есть и команда переключения реле на чекбоксе. Именно это и позволило без особых проблем написать простенькое приложение на Android для управления реле.
Alex Morozov, спасибо. попробую разобраться
Ты конечно знаток своего дела! Есть возможность привязать эту прошивку с sonoff к homebridge с обратной связью ? Подписался)
У меня нет и не будет огрызков, соответственно их инфраструктура меня не интересует.
Alex Morozov если я правильно понял, эта прошивка не подойдёт к HomeKit ?
Если хомекит не поддерживает MQTT, то нет.
Alex Morozov как то подключают через mosquitto и плагин к нему в homebridge
Alex, подскажите, в первой версии прошивки температура до сотых долей показывается, а в "модернизация кастомной прошивки" только целые числа и температуры и влажности и соответственно толерантность ниже 1 не работает, можно ли как-то изменить в коде чувствительность хотя бы до десятых долей? И можно ли в "Climate Setup" устанавливать не целые значения? А то спред в 2 градуса слишком большой получается.
Вы про датчик DHT11? У него насколько я помню нет десятых долей ни в температуре ни во влажности.
А если задать толерантность меньше 1, то должно на любое изменение значений реагировать судя по коду.
спасибо, я не знал этого)
Alex привет. Спасибо за проделанную работу. Подскажи есть ли возможность из программы узнать МАС адрес подключенного DS18B20. Требуется при регистрации на народном мониторинге.
Не понимаю, какая связь между этим скетчем и народным мониторингом, у которого свой API и это отнюдь не MQTT.
Адрес DS1820 можно узнать с помощью примера из библиотеки OneWire, например.
Спасибо разобрался. Отличная работа. С наступающим Новым годом.!!!
Вас также с наступающим Новым годом!
Алексей, всё супер! Прошил, подключил датчик и всё работает. А какая сейчас крайняя версия? И где про неё почитать или посмотреть?
На канале есть плейлист Sonoff, последняя версия в ролике th-cam.com/video/ei1kmES_sQY/w-d-xo.html
Спасибо. Прошил. Прошивка шикарная.
Алексей, подскажите, прошил "сонофф 16" по первому уроку, прошивка залилась, ошибок нет, реле "дышит" светодиод моргает, но в WI FI сетях в телефоне нет реле сонофф, в чем может быть проблема? кнопка реле срабатывает те вкл выкл реле работает. я не нахожу в своем телефоне данной точки доступа сонофф. и соответственно не могу зайти в веб интерфейс и тд. может в скетче что не так? пробовал менять ip в скетче на 192.168.1.4 , ни чего не изменилось.
Обновите в Arduino IDE поддержку ESP8266 до актуальной сейчас версии 2.4.1 и обновите бутлоадер от SDK 2.1 до заливки скетча. Должно помочь.
Спасибо Алексей за прошивки.У меня sonoff R2 пин датчиков разведен на плате io2.В скетче нужно сменить 14 на 2 и все ок. Вопрос по Mqtt ,как не бился соединятся с cloudmqtt соединятся не хочет.В чем проблема,подскажите?
Используется обычная библиотека PubSubClient. Если ее примеры работают отдельно с cloudmqtt, то должно и реле работать.
@@alexmorozov73 спасибо попробую примеры.Чего-то сразу не допер.
с тем сервером что в библиотеке работает,но с другими не хочет.Уже 3шт попробовал-никак
Странно! в веб пишет что нет соединения а в логе MQTT publish topic "/Relay" with value "1"
MQTT subscribe to topic "/Relay"
Attempting MQTT connection... connected
MQTT publish topic "/Relay" with value "1"
MQTT subscribe to topic "/Relay"
Attempting MQTT connection... connected
MQTT publish topic "/Relay" with value "1"
MQTT subscribe to topic "/Relay"
Attempting MQTT connection... connected
MQTT publish topic "/Relay" with value "1"
MQTT subscribe to topic "/Relay"
Attempting MQTT connection... connected
MQTT publish topic "/Relay" with value "1"
MQTT subscribe to topic "/Relay"
Attempting MQTT connection... connected
MQTT publish topic "/Relay" with value "1"
MQTT subscribe to topic "/Relay"
Attempting MQTT connection... connected
@@user-zs9gx5ru5q по логам постоянный обрыв коннекта. Возможно ограничения бесплатной подписки на частоту запросов.
Здравствуйте, подскажите пожалуйста, скетч при проверки выдаёт ошибку:
Arduino: 1.6.7 Hourly Build 2015/12/17 04:47 (Windows 7), Плата:"Generic ESP8266 Module, 80 MHz, ck, 26 MHz, 40MHz, DOUT, 1M (256K SPIFFS), v2 Prebuilt (MSS=536), Disabled, None, 115200"
In file included from C:\Users\Pavel\Documents\Arduino\libraries\DHT_sensor_library\DHT_U.cpp:22:0:
C:\Users\Pavel\Documents\Arduino\libraries\DHT_sensor_library\DHT_U.h:25:29: fatal error: Adafruit_Sensor.h: No such file or directory
#include
compilation terminated.
exit status 1
Ошибка компиляции.
Это сообщение будет содержать больше информации чем
"Отображать вывод во время компиляции"
включено в Файл > Настройки
Библиотеки из стандартного репозитория Arduino IDE PubSubClient, OneWire и Adafruit DHT Sensor Library установил.
Предыдущий скетч предыдущего ролика без датчиков влажности загружается и работает, а этот не хочет :( что может быть?
Или удалите DHT_U.* по указанному в ошибке пути или доустановите библиотеку Adafruit Unified Sensor Library.
действительно! удалил DHT_U.cpp по указанному пути и всё заработало! Спасибо огромное! Ваши труды очень вдохновляют! вы не зря всё это делаете и тратите время! смотрю на вашу работу и восхищаюсь, это пробуждает во мне аппетит изучения программирования! :)
Нет, нет, нет, фу, фу, фу только не надо выходить из отпуска, не поддавайтесь на провокацию, оно того не стоит. :( Сам был в таком положении, как это бесит все - отпуск есть отпуск, это не покалебимое.
Пока кормит работа, а не хобби - никуда не денешься... :)
Alex Morozov так уже все заранее спланировано, если не выйдите на работу а до отдыхаете отпуск, денег ни кто не заберет.
Здравствуйте Алексей! Прошил модуль Вашей прошивкой. Вроде работает, полудышит как и должно быть. Кнопка включает и выключает реле. Однако вайфай сети sonoff ни одним устройством найти не могу. В чем может быть дело? Подскажите пожалуйста!!!
Подключайте реле БЕЗ 220В через USB-TTL конвертер и смотрите, что в сериал-интерфейс сыпется. Там будет имя сети. Я с такой проблемой не сталкивался.
В монитор порта ничего не сыпется, пусто там. При нажатии на кнопку появляется 9 символов в непонятной кодировке.
Скорость порта 115200?
Режим флеша при прошивке на DOUT пробовали менять?
может можно где-нибудь в скетче сразу указать имя сети и пароль? Тем самым пропустить шаг с нахождением вайфай сети сонофа.
скорость 115200, шилось на DUOT. На QIO вообще не работает
Можно добавить пару реле для Nodemcu и как это сделать ?
Возьмите скетч из старых роликов про "умное реле", там как раз оно многоканальное. Например из видео th-cam.com/video/gycQfap7T1k/w-d-xo.html
Спасибо.
Спасибо! Отлично! Боюсь вас китайцы украдут :)))
Да кому мы нужны! :)
Хотел было сказать, что китам лучше было Грохоткова Ивана "украсть", так он уже в Эспрессиве. :)
Странно, что для ESP32 Arduino-адаптацию не он делает.
как обратно заводскую прошивку вернуть?
Если заранее не сохранили - то искать на просторах Инета и флешером заливать. Я для серии Basic Relay заводскую прошивку даже не думал сохранять.
Alex Morozov спасибо за ответ а как базовую прошивку сохранить, извините за возможно глупый вопрос
Вопрос неглупый, на него не так просто найти ответ.
Нужно будет воспользоваться питоновой версией esptool (github.com/espressif/esptool)
esptool.py -p COMx read_flash 0x00000 0x100000 ./sonoff_backup.bin
Alex Morozov Спасибо,дружище!)
ещё бы поддержку bme280
На UART ее цеплять? Идея была в использовании цифровых датчиков с одной ногой, чем BMP и BME явно не являются.
@@alexmorozov73 Получается , что данный датчик BME280 не будет работать с Sonoff ?