tretyakovsa / Sonoff_WiFi_switch

Прошивка для ESP8266 (Умный дом)-Firmware for ESP8266 (Smart Home)
GNU General Public License v3.0
181 stars 40 forks source link

Необходимо отправлять статус реле через MQTT после подключения к WiFi #61

Closed shady2k closed 2 years ago

shady2k commented 6 years ago

Сейчас после подключения к WiFi шлется только сообщение в топик /IoTmanager/XXXXXXXXX/config {"id":0,"page":"buttons","descr":"Toggle","widget":"toggle","color":"green","topic":"/IoTmanager/XXXXXXXX/RELE_1_not"} Можно ли как-то сделать так, чтобы при подключении к WiFi через MQTT отправлялось сообщение о текущем статусе в топик /IoTmanager/ХХХХХХХХХХХ/RELE_1_not/status? Или же просто добавить статус в /IoTmanager/XXXXXXXXX/config. Это нужно для того, чтобы корректно отображать статус реле после сбоя питания, потери связи с WiFi и т.п.

AVL4GITHUB commented 6 years ago

Добавлю своих 5 копеек. И не только что б статус реле отправляло, а и время последней отправки данных. Отправлять можно раз в минуту или 5. В таком случае, в МКТТ сразу будет видно, система ОНЛАЙН или где-то, что-то подвисло или не работает.

pastukhov commented 6 years ago

Для мониторинга, что все онлайн в MQTT предусмотрено сообщение с типом LWT, оно объявляется обычно при старте системы, но становится доступно подписчикам только если модуль ушел в оффлайн, т.е. не выходит на связь с сервером в течении заранее определенного времени.

alxnovo commented 5 years ago

MQTT заработало если скомпилировать из текущих исходников?

49d4c156-6c0b-4eeb-8673-650f39e801f1

tretyakovsa commented 5 years ago

Да статусы от есп будут попадать в топик /IoTmanager/XXXXXXXXX/relay1/config. Мне кажется все очень медленно работает. А как у вас?

alxnovo commented 5 years ago

Я пробовал где-то полгода назад MQTT запускать, видел в посмотрщике MQTT сообщения от ESP, но не смог отправляемыми сообщениями управлять. Подумал что должный быть какие-то хитрые сообщения и забросил тогда. Ещё тогда заметил, если брокер не запущен, то ESP на вашей прошивке очень сильно тормозит, web-морда несколько минут открывалась, реакция на действие очень медленная была...до минуты. Сейчас подключил роллершаттеры (еso + ваша прошивка) к Home Assistant и управляю по http. Но при такой связке, если через web или физическую кнопку управлять жалюзи, статус в Home Assistant не меняется, для этого и стал нужен MQTT В идеале хотелось бы иметь логику в прошивке: если есть управление по MQTT, то девайс подчиняется только контролеру (серверу) несмотря на свои сценарии, таймеры; при пропадании связи с сервером, девайс переходит на локальные настройки и работает по заданным в прошивке сценариям и таймерам

tretyakovsa commented 5 years ago

@alxnovo Может обсудим по skype или https://hangouts.google.com?

alxnovo commented 5 years ago

Я только за, как связаться? Мой адрес <ник здесь>@gmail.com