MQTT клиент для Arduino, ESP8266, ESP32

Пользовательские блоки для коммкникации и связи GSM, GPRS, IR, Bluetooth и другие
Правила форума
Рекомендации по размещению блоков:
Автор блока создает подробное описание блока, отличие от подобных(если есть на данный момент).Сложные блоки очень желательно с примерами.
При выходе новых версий редактирует/дополняет свой первый пост с указанием даты, версии, причины.
В каждой теме обсуждается только выложенный автором блок - баги, возможность (или предложение) доработки и прочие хотелки.
Свои блоки, переработанные, с другими библиотеками, протоколами и т.д.- размещаем либо сами отдельно, либо обсуждаем и дорабатываем в форуме Разработка блоков.
Пользователи улучшив блок автора и проверив его работоспособность - могут обратиться к автору или модераторам с просьбой добавить их версию блока в первое сообщение темы.
zik12
Рядовой
Сообщения: 31
Зарегистрирован: 19 фев 2020, 16:50
Имя: Алексей

MQTT клиент для Arduino, ESP8266, ESP32

Сообщение zik12 »

[ref]starshoy81[/ref], смотрел и видео и делал как вчера говорили - не помогает. Может с настройками IDE что-то не так?
настр.jpg
У вас нет необходимых прав для просмотра вложений в этом сообщении.
cristianu
Рядовой
Сообщения: 1
Зарегистрирован: 09 ноя 2021, 23:35
Имя: Cristian

MQTT клиент для Arduino, ESP8266, ESP32

Сообщение cristianu »

Can you help me with this issue?
I have used MqTT_ESP_Main_6_8



sketch_nov10a:17:1: error: 'WiFiEventHandler' does not name a type
WiFiEventHandler wifiConnectHandler;
^
sketch_nov10a:18:1: error: 'WiFiEventHandler' does not name a type
WiFiEventHandler wifiDisconnectHandler;
^
sketch_nov10a:115:26: error: 'WiFiEventStationModeGotIP' does not name a type
void onWifiConnect(const WiFiEventStationModeGotIP& event)
^
sketch_nov10a:119:29: error: 'WiFiEventStationModeDisconnected' does not name a type
void onWifiDisconnect(const WiFiEventStationModeDisconnected& event)
^
C:\Users\IT\Documents\Arduino\sketch_nov10a\sketch_nov10a.ino: In function 'void setup()':
sketch_nov10a:38:5: error: 'wifiConnectHandler' was not declared in this scope
wifiConnectHandler = WiFi.onStationModeGotIP(onWifiConnect);
^
sketch_nov10a:38:31: error: 'class WiFiClass' has no member named 'onStationModeGotIP'
wifiConnectHandler = WiFi.onStationModeGotIP(onWifiConnect);
^
sketch_nov10a:39:5: error: 'wifiDisconnectHandler' was not declared in this scope
wifiDisconnectHandler = WiFi.onStationModeDisconnected(onWifiDisconnect);
^
sketch_nov10a:39:34: error: 'class WiFiClass' has no member named 'onStationModeDisconnected'
wifiDisconnectHandler = WiFi.onStationModeDisconnected(onWifiDisconnect);
^
C:\Users\IT\Documents\Arduino\sketch_nov10a\sketch_nov10a.ino: At global scope:
sketch_nov10a:115:26: error: 'WiFiEventStationModeGotIP' does not name a type
void onWifiConnect(const WiFiEventStationModeGotIP& event)
^
sketch_nov10a:119:29: error: 'WiFiEventStationModeDisconnected' does not name a type
void onWifiDisconnect(const WiFiEventStationModeDisconnected& event)
^
Multiple libraries were found for "WiFi.h"
Used: C:\Users\IT\AppData\Local\Arduino15\packages\esp32\hardware\esp32\1.0.6\libraries\WiFi
Not used: C:\Program Files (x86)\Arduino\libraries\WiFi
exit status 1
'WiFiEventHandler' does not name a type
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Аватара пользователя
Phazz
Полковник
Сообщения: 3114
Зарегистрирован: 17 окт 2016, 15:38
Откуда: Сургут
Имя: Анатолий
Благодарил (а): 231 раз
Поблагодарили: 110 раз

MQTT клиент для Arduino, ESP8266, ESP32

Сообщение Phazz »

[ref]cristianu[/ref], viewtopic.php?p=61490#p61490
Аватара пользователя
dimaspec
Рядовой
Сообщения: 20
Зарегистрирован: 24 сен 2015, 19:16

MQTT клиент для Arduino, ESP8266, ESP32

Сообщение dimaspec »

Пробую разобраться с работой MQTT на ESP8266, подписка работает хорошо, публикация работает только если значение константа, если значение задается блоком рандом (имитация температуры) то ESP8266 перестает подключатся к точке доступа. Возможно кто-то с проблемой публикации сталкивался, использую FLProg7.3.8, MQTT_ESP_Pub_6_8_(CODE).
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Аватара пользователя
dimaspec
Рядовой
Сообщения: 20
Зарегистрирован: 24 сен 2015, 19:16

MQTT клиент для Arduino, ESP8266, ESP32

Сообщение dimaspec »

dimaspec писал(а): 13 ноя 2021, 23:17 Пробую разобраться с работой MQTT на ESP8266, подписка работает хорошо, публикация работает только если значение константа, если значение задается блоком рандом (имитация температуры) то ESP8266 перестает подключатся к точке доступа. Возможно кто-то с проблемой публикации сталкивался, использую FLProg7.3.8, MQTT_ESP_Pub_6_8_(CODE).
Публикация в топик заработала когда поменял настройки блока SConv, конвертацию строки в место DEC поставил на HEX или BIN, а с DEC не работает.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
vitaly1974
Рядовой
Сообщения: 2
Зарегистрирован: 04 ноя 2021, 21:55
Имя: Виталий

MQTT клиент для Arduino, ESP8266, ESP32

Сообщение vitaly1974 »

добавьте пожалуйста в блоки, вход-"перезагрузить блок" , когда работает на входе три кнопки, 1 сенсорная, другая двойная, третьей алиса управлять должна, очень трудно строить логику чтобы все в куче работали . а то вот такой геморой на 2 кнопки и 1 лампочку получается :shok:
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Аватара пользователя
Phazz
Полковник
Сообщения: 3114
Зарегистрирован: 17 окт 2016, 15:38
Откуда: Сургут
Имя: Анатолий
Благодарил (а): 231 раз
Поблагодарили: 110 раз

MQTT клиент для Arduino, ESP8266, ESP32

Сообщение Phazz »

[ref]vitaly1974[/ref], а что за двойная кнопка?

Отправлено спустя 5 минут 14 секунд:
ну в любом случае вы сильно перемудрили )
zakhar81
Рядовой
Сообщения: 35
Зарегистрирован: 25 май 2021, 08:47
Имя: Захар

MQTT клиент для Arduino, ESP8266, ESP32

Сообщение zakhar81 »

Уважаемые форумчане кто может помочь, при необходимости не за бесплатно!
Блоки, те что в этой ветке доступны для скачивания (MQTT_ESP_Main) используют библиотеку с протоколом V3.1.1 для работы c брокером
Но у моего брокера к сожалению версия протокола V3.1, другого рабочего с нормальным автозапуском просто нет под андроид.
Virtuino с ним работает нормально, так как поддерживает все протоколы

Отправлено спустя 1 минуту 34 секунды:
Вот эта библиотека используется
https://github.com/marvinroger/async-mqtt-client#readme
Features
Compliant with the 3.1.1 version of the protocol
Fully asynchronous
Subscribe at QoS 0, 1 and 2
Publish at QoS 0, 1 and 2
SSL/TLS support
Available in the PlatformIO registry

Так вот, может ли кто нибудь доработать блоки используя другую библиотеку которая поддерживает оба протокола или именно V3.1?
slon-genia
Сержант
Сообщения: 102
Зарегистрирован: 21 ноя 2016, 11:05

MQTT клиент для Arduino, ESP8266, ESP32

Сообщение slon-genia »

Спасибо разработчику за блоки. Работают на кухне - управляют вентилятором и освещением. Вентилятор включается по влажности. По MQTT протоколу передаются данные на сервер IObroker, от туда же могу управлять в локальном режиме, и менять уставки с записью в EEPROM. Блоки стабильно работают уже год. Сейчас тестю на ARDUINO NANO, пока всё нормально.
SerOv
Лейтенант
Сообщения: 613
Зарегистрирован: 06 янв 2018, 19:50
Благодарил (а): 8 раз
Поблагодарили: 2 раза

MQTT клиент для Arduino, ESP8266, ESP32

Сообщение SerOv »

Всем привет. Подскажите, что случилось с автором Блоков? На форум он давно не заглядовал. И нет ответа на личные сообщеения. Появились проблемы с блоками после обновление arduino 1.8.16. хотел поинтересоваться в чем может быть проблема?
User8
Лейтенант
Сообщения: 341
Зарегистрирован: 12 июн 2017, 14:44
Имя: Евгений

MQTT клиент для Arduino, ESP8266, ESP32

Сообщение User8 »

[ref]SerOv[/ref], никуда не делся, но микроконтроллерами щас пока не занимаюсь :smile44:
В первом посте есть ссылка на гитхаб на последнюю версию библиотеки, может поможет.
SerOv
Лейтенант
Сообщения: 613
Зарегистрирован: 06 янв 2018, 19:50
Благодарил (а): 8 раз
Поблагодарили: 2 раза

MQTT клиент для Arduino, ESP8266, ESP32

Сообщение SerOv »

Из папки Flprog 741\ideV8\portable\sketchbook\libraries удалит старую версиию. Установил новую async-mqtt-client-develop.zip
Но не помогло. Единица (когда устанавливается связь с MQTT) так и пропадает. Сначала появляется, а затем через 15 сек примерно устанавливается ноль. И он держится.
zakhar81
Рядовой
Сообщения: 35
Зарегистрирован: 25 май 2021, 08:47
Имя: Захар

MQTT клиент для Arduino, ESP8266, ESP32

Сообщение zakhar81 »

У вас с брокером проблема походу
Он свой или внешний?
SerOv
Лейтенант
Сообщения: 613
Зарегистрирован: 06 янв 2018, 19:50
Благодарил (а): 8 раз
Поблагодарили: 2 раза

MQTT клиент для Arduino, ESP8266, ESP32

Сообщение SerOv »

zakhar81 писал(а): 05 дек 2021, 19:22 У вас с брокером проблема походу
Он свой или внешний?
свой. если прошить этот проект в 7.3.5 то работает хорошо.
Проба4S.flp
У вас нет необходимых прав для просмотра вложений в этом сообщении.
zakhar81
Рядовой
Сообщения: 35
Зарегистрирован: 25 май 2021, 08:47
Имя: Захар

MQTT клиент для Arduino, ESP8266, ESP32

Сообщение zakhar81 »

Тогда видимо проблема в другом
Если первые несколько секунд работает потом отваливается, может быть там проблема не с обменом MQTT а со связью что нибудь, может WiFi отваливается
После потери связи с брокером веб морда доступна у самого ESP?
Короче проверю в ближайшие дни свои проекты на бетта версии, отпишусь
SerOv
Лейтенант
Сообщения: 613
Зарегистрирован: 06 янв 2018, 19:50
Благодарил (а): 8 раз
Поблагодарили: 2 раза

MQTT клиент для Arduino, ESP8266, ESP32

Сообщение SerOv »

zakhar81 писал(а): 10 дек 2021, 07:27 Тогда видимо проблема в другом
Если первые несколько секунд работает потом отваливается, может быть там проблема не с обменом MQTT а со связью что нибудь, может WiFi отваливается
После потери связи с брокером веб морда доступна у самого ESP?
Короче проверю в ближайшие дни свои проекты на бетта версии, отпишусь
На ESP Web страницы нет. Данные передаются на IoBroker. Поставил счётчик и залил в ESP. Ну так вот. Единица пропадает после примерно 15-20 сек. Сданные со счётчика приходят и он продолжает считать. И это хорошо видно в IoBrokere.
Вот здесь подробнее.
viewtopic.php?f=39&t=7668&start=80#p109074
Последний раз редактировалось SerOv 10 дек 2021, 08:20, всего редактировалось 1 раз.
zakhar81
Рядовой
Сообщения: 35
Зарегистрирован: 25 май 2021, 08:47
Имя: Захар

MQTT клиент для Arduino, ESP8266, ESP32

Сообщение zakhar81 »

Так получается что данные продолжают идти на брокер (публикуются) не смотря на то, что статус соединения уходит в ноль?

Отправлено спустя 1 минуту 6 секунд:
Включите WEB для контроля, хоть какую, там есть та что по умолчанию идет при активировании WEB
SerOv
Лейтенант
Сообщения: 613
Зарегистрирован: 06 янв 2018, 19:50
Благодарил (а): 8 раз
Поблагодарили: 2 раза

MQTT клиент для Arduino, ESP8266, ESP32

Сообщение SerOv »

zakhar81 писал(а): 10 дек 2021, 08:14 Так получается что данные продолжают идти на брокер (публикуются) не смотря на то, что статус соединения уходит в ноль?

Отправлено спустя 1 минуту 6 секунд:
Включите WEB для контроля, хоть какую, там есть та что по умолчанию идет при активировании WEB
Вот здесь подробнее
viewtopic.php?f=39&t=7668&start=80#p109074
zakhar81
Рядовой
Сообщения: 35
Зарегистрирован: 25 май 2021, 08:47
Имя: Захар

MQTT клиент для Arduino, ESP8266, ESP32

Сообщение zakhar81 »

Там просто галочку поставить нужно

Отправлено спустя 3 минуты 38 секунд:
Там как раз в этом топике кто то заикнулся про то, что нет реконнекта по WiFi

Отправлено спустя 8 минут 50 секунд:
Судя по вашему описанию проблемы, у вас статус коннекта в единице, а в топик публикуется ноль вместо единицы, но генерит то то единицу счетчик
А если блок счетчика виноват?
Хотя там есть генератор для этой цели, чтобы генерировать что то а не счетчик
Сделайте еще посылку с вашего счетчика не только в блок публикатора но и в UART и запустите монитор порта для отладки, посмотрите что на самом деле ваш счетчик посылает
Или на веб выведите этот сигнал
SerOv
Лейтенант
Сообщения: 613
Зарегистрирован: 06 янв 2018, 19:50
Благодарил (а): 8 раз
Поблагодарили: 2 раза

MQTT клиент для Arduino, ESP8266, ESP32

Сообщение SerOv »

zakhar81 писал(а): 10 дек 2021, 08:38 Там просто галочку поставить нужно
Какую галочку?

Отправлено спустя 7 минут 23 секунды:
Повторюсь ещё раз. В версии 7.3.5 эта схема работает без проблем. И единица держится.Вернее если прошивать через чере Arduino
IDE входит от 7.3.5. Если прошить из 7.4.1 но версию от 7.3.5 тоже всё работает. Я думаю связано с обновлением версиий через которую мы прошиваем.
Ответить

Вернуться в «Коммуникация и связь»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 5 гостей