Страница 6 из 33
MQTT для Arduino, ESP8266, ESP32
Добавлено: 23 дек 2018, 15:56
User8
Golan писал(а): 22 дек 2018, 23:27в чем засада, модуле?
Не знаю, возможно нужно перед заливкой скетча, прошивать esp пустым файлом.
Отправлено спустя 2 минуты 9 секунд:
[ref]CraCk[/ref], может взять 2 esp и попробовать, чтобы точно быть уверенным. Когда я делал блоки, проверял qos, все работало.
Отправлено спустя 4 минуты 55 секунд:
[ref]CraCk[/ref], проблема с зависанием решилась включением "Защита от зависания" в настройках контроллера.
MQTT для Arduino, ESP8266, ESP32
Добавлено: 23 дек 2018, 16:20
CraCk
User8 писал(а): 23 дек 2018, 15:56CraCk, может взять 2 esp и попробовать, чтобы точно быть уверенным. Когда я делал блоки, проверял qos, все работало.
Я бы с удовольствием но до второго esp еще не доработался
Вы как то проверяли работу qos?
User8 писал(а): 23 дек 2018, 15:56CraCk, проблема с зависанием решилась включением "Защита от зависания" в настройках контроллера.
Это ни как не повлияет на работу в целом?
Отправлено спустя 5 минут 54 секунды:
Размышление на тему qos. Если включен на есп qos=1, значит должен создаваться какой то буфер на есп при разрыве связи. И при восстановление связи с буфера должно произойти повторное отправление. Буфер можно как то смотреть например через терминал?
MQTT для Arduino, ESP8266, ESP32
Добавлено: 23 дек 2018, 16:34
User8
CraCk писал(а): 23 дек 2018, 16:14Вы как то проверяли работу qos?
Проверял с двумя esp, отключал одну, на включенной отправлял сообщение, включал другую и после старта сообщение приходило.
CraCk писал(а): 23 дек 2018, 16:14Это ни как не повлияет на работу в целом?
Не должно, просто esp перезагрузится.
CraCk писал(а): 23 дек 2018, 16:20Буфер можно как то смотреть например через терминал?
Там сложная система, получается если связи с брокером нет, то есп должна хранить данные в памяти. А если например esp отправила данные на другую esp, а другая esp недоступна, получается в таком случае брокер на себя берет ответственность и хранит данные у себя, пока другая esp не появится в сети. Не разбирался где это все хранится на брокере.
MQTT для Arduino, ESP8266, ESP32
Добавлено: 23 дек 2018, 16:59
CraCk
User8 писал(а): 23 дек 2018, 15:56CraCk, может взять 2 esp и попробовать, чтобы точно быть уверенным. Когда я делал блоки, проверял qos, все работало.
Немного подзатупил. Есть же телефон с MQTT dashboard.
User8 писал(а): 23 дек 2018, 16:34Проверял с двумя esp, отключал одну, на включенной отправлял сообщение, включал другую и после старта сообщение приходило.
Проверил с телефоном. Тот же результат. Сообщение не обновляется после переподключения. Раньше тестировал esp-link. То там после восстановления связи состояние столько раз изменялось сколько было сделано изменений при отсутствии связи. Например при отсутствии связи нажал 10 раз кнопку, Восcтановилась связь и на брокер прилетело 10 раз true/false. Только жаль esp-link не до конца работает хорошо. По этому муштрую MQTT ESP8266.
А вообще есть еще какие то хорошие библиотеки MQTT для ESP8266, может на них попробовать?
MQTT для Arduino, ESP8266, ESP32
Добавлено: 23 дек 2018, 17:08
User8
[ref]CraCk[/ref], эта улучшенная с qos, лучше вроде как нет. Есть стандартная без qos:
viewtopic.php?p=54118#p54118
MQTT для Arduino, ESP8266, ESP32
Добавлено: 23 дек 2018, 17:15
Golan
CraCk писал(а): 23 дек 2018, 16:59Например при отсутствии связи нажал 10 раз кнопку, Восcтановилась связь и на брокер прилетело 10 раз true/false
А сейчас разве не так?
MQTT для Arduino, ESP8266, ESP32
Добавлено: 23 дек 2018, 17:29
CraCk
Golan писал(а): 23 дек 2018, 17:15А сейчас разве не так?
Если бы так, я бы тут не спамил.
Отправлено спустя 7 минут 41 секунду:
User8 писал(а): 23 дек 2018, 17:08эта улучшенная с qos, лучше вроде как нет.
А есть примеры *.ino с qos чтоб залить и проверить? Для исключение проблем с блоками.
MQTT для Arduino, ESP8266, ESP32
Добавлено: 23 дек 2018, 17:36
Golan
[ref]CraCk[/ref], точно, виноват, ща проверил, релюхи при подключение клиента, встают в положение заданное в браузере.
[spoiler]
1.jpg
[/spoiler]
MQTT для Arduino, ESP8266, ESP32
Добавлено: 23 дек 2018, 17:37
User8
MQTT для Arduino, ESP8266, ESP32
Добавлено: 23 дек 2018, 17:43
CraCk
User8 писал(а): 23 дек 2018, 17:08эта улучшенная с qos, лучше вроде как нет. Есть стандартная без qos:
Что такое еще есть. Тоже библиотека
https://github.com/256dpi/arduino-mqtt/issues/68
Golan писал(а): 23 дек 2018, 17:36встают в положение заданное в браузере.
Веб может глючить. Лучше смотреть состояние а админ панели раздел
Объекты. Там сразу и время можно увидеть.
MQTT для Arduino, ESP8266, ESP32
Добавлено: 23 дек 2018, 17:45
Golan
CraCk писал(а): 23 дек 2018, 17:43Веб может глючить.
Не замечал, что в объектах что в вебе одинаково, хотя все может быть.
MQTT для Arduino, ESP8266, ESP32
Добавлено: 23 дек 2018, 18:13
User8
[ref]CraCk[/ref], надо будет попробовать библиотеку
MQTT для Arduino, ESP8266, ESP32
Добавлено: 23 дек 2018, 19:31
slon-genia
Установил MQTT клиент на телефон и подписался на топик. Второй MQTT клиент установил на планшет и опубликовал в тот же топик сообщение "1", при этом в настройках установил галочку RETAIN. При подключении подписчика к брокеру ему сразу же выдаёт сообщение с текстом "1". Почему на ESP8266 такого не происходит, не понятно.
MQTT для Arduino, ESP8266, ESP32
Добавлено: 23 дек 2018, 20:04
CraCk
User8 писал(а): 23 дек 2018, 16:34Проверял с двумя esp, отключал одну, на включенной отправлял сообщение, включал другую и после старта сообщение приходило.
Если остался рабочий проект скиньте. Хочу у себя попробовать.
Отправлено спустя 23 секунды:
User8 писал(а): 23 дек 2018, 18:13CraCk, надо будет попробовать библиотеку
Жду с нетерпение.
MQTT для Arduino, ESP8266, ESP32
Добавлено: 24 дек 2018, 10:34
slon-genia
В общем решил я свою задачу. Проэкт остался тот же, что и выкладывал выше. Поменял блоки MQTT, которые взял из этой
viewtopic.php?t=4096&start=120 темы, и библиотеку так же взял из шапки этой темы. Всё стало работать на ура. Питание передёргиваю- всё восстанавливается. WI-FI пропадает- всё работает от местных выключателей. До этого брал блоки и ссылку на библиотеку из шапки этой темы- больше одного канала не работало нормально. Проэкт вылаживаю, может кому пригодится. В чём проблема- либо блоки либо библиотека 100%, не стал эксперементировать. Осталось решить проблему передёргивания реле при старте ESP, но это уже другая тема. Автору спасибо за блоки.
MQTT для Arduino, ESP8266, ESP32
Добавлено: 24 дек 2018, 11:48
Golan
Как по мне, попробовать убрать с блока вот эти настройки, у Андрея в блоках этого нет. Так для пробы и погонять
[spoiler]
1.jpg
[/spoiler]
Отправлено спустя 2 минуты 5 секунд:
slon-genia писал(а): 24 дек 2018, 10:34Осталось решить проблему передёргивания реле при старте ESP
У меня вот так не передергивается, хотя изначально тоже прыгали.
[spoiler]
2.jpg
[/spoiler]
MQTT для Arduino, ESP8266, ESP32
Добавлено: 24 дек 2018, 16:02
User8
[ref]CraCk[/ref], [ref]Golan[/ref], [ref]slon-genia[/ref], переделал все под другую библиотеку:
https://github.com/256dpi/arduino-mqtt
Нужно тестировать. Зависания пропали, если разорвать соединение с брокером принудительно. qos 1 2 на блоке sub так и не смог толком проверить, у меня не работает, по идее после подключения если были недоставленные данные, то должны дойти сообщения, но вроде как не доходят.
MQTT для Arduino, ESP8266, ESP32
Добавлено: 24 дек 2018, 16:07
pipapsix
[ref]User8[/ref],
Здрасти)
А я?
а мне?
с выходами на установку.
MQTT для Arduino, ESP8266, ESP32
Добавлено: 24 дек 2018, 16:16
User8
[ref]pipapsix[/ref], вот

MQTT для Arduino, ESP8266, ESP32
Добавлено: 24 дек 2018, 16:24
pipapsix
А старые библиотеки удалять нужно??
А то я уже удалил, по ходу лишние.