Страница 2 из 33

MQTT для Arduino, ESP8266, ESP32.

Добавлено: 16 ноя 2018, 23:37
User8
[ref]Golan[/ref], попробуйте удалить библиотеку pubsubclient из папки с библиотеками после чего скачайте библиотеку с гитхаба из первого поста и закиньте в папку с библиотеками.

MQTT для Arduino, ESP8266, ESP32.

Добавлено: 16 ноя 2018, 23:55
Golan
Жень, я вроде так и сделал, ща еще раз попробую

Отправлено спустя 5 минут 54 секунды:
Прохлопал, там была еще библиотека pubsubclient, видимо был конфликт с pubsubclient-master
Все, бульбулирует, сенькаю вери вери мач!!!!

Отправлено спустя 3 минуты 30 секунд:
Жень, гляньте настройки в Main, данные там верные, но правильно ли все указал, нет соединения

Отправлено спустя 5 минут 43 секунды:
MQTT.fx нормально соединяется по тем же данным

MQTT для Arduino, ESP8266, ESP32.

Добавлено: 17 ноя 2018, 00:21
User8
[ref]Golan[/ref], зачем ставить keepalive 1000 секунд? Установите по умолчанию 15. Все должно работать если данные указаны правильно.

MQTT для Arduino, ESP8266, ESP32.

Добавлено: 17 ноя 2018, 00:42
Golan
Все, разобрался, не в этом дело было.
Спасибо большое

Отправлено спустя 13 минут 53 секунды:
Долго блок соединяется, почти минуту

MQTT для Arduino, ESP8266, ESP32.

Добавлено: 17 ноя 2018, 00:49
User8
[ref]Golan[/ref], первая попытка подключения к брокеру происходит после старта esp. В настройках можно указать через какой период делать попытку подключиться к брокеру.

MQTT для Arduino, ESP8266, ESP32.

Добавлено: 17 ноя 2018, 01:16
Golan
Я понял, спасибо.

MQTT для Arduino, ESP8266, ESP32.

Добавлено: 08 дек 2018, 08:55
pipapsix
Привет.
Появилась нужда, вывести настройки блока майн на входы.
Чтобы через веб интерфейс настройки вбить можно было. Спасибо.

MQTT для Arduino, ESP8266, ESP32.

Добавлено: 08 дек 2018, 15:48
ivanpost
Согласен с #28.
Но надо не просто входы, а системные параметры чтобы он принимал. Что то никак не врублюсь, как это сделать... Помогайте создатели!

MQTT для Arduino, ESP8266, ESP32.

Добавлено: 08 дек 2018, 15:54
pipapsix
Ну да. Стринги там всякие))

MQTT для Arduino, ESP8266, ESP32.

Добавлено: 09 дек 2018, 12:00
User8
[ref]ivanpost[/ref], [ref]pipapsix[/ref], пробуйте. Для изменения данных нужно перезагрузить esp.

MQTT для Arduino, ESP8266, ESP32.

Добавлено: 09 дек 2018, 12:43
pipapsix
ура.тестим

Отправлено спустя 36 минут 21 секунду:
Не пойму куда он меня посылает??
Библиотеки поменял.
[spoiler]pr4:31: error: no matching function for call to 'PubSubClient::PubSubClient(WiFiClient&, String&, int&)'

PubSubClient client(mqttClient, mqttServer, mqttPort);

^

C:\Users\User\AppData\Local\Temp\flprog\pr4\pr4.ino:31:53: note: candidates are:

In file included from C:\Users\User\AppData\Local\Temp\flprog\pr4\pr4.ino:7:0:

c:\Users\User\Desktop\FLProgPortable_4-2\ideV2\portable\sketchbook\libraries\pubsubclient\src/PubSubClient.h:126:4: note: PubSubClient::PubSubClient(const char*, uint16_t, std::function<void(char*, unsigned char*, unsigned int)>, Client&, Stream&)

PubSubClient(const char*, uint16_t, MQTT_CALLBACK_SIGNATURE,Client& client, Stream&);

^

c:\Users\User\Desktop\FLProgPortable_4-2\ideV2\portable\sketchbook\libraries\pubsubclient\src/PubSubClient.h:126:4: note: candidate expects 5 arguments, 3 provided

c:\Users\User\Desktop\FLProgPortable_4-2\ideV2\portable\sketchbook\libraries\pubsubclient\src/PubSubClient.h:125:4: note: PubSubClient::PubSubClient(const char*, uint16_t, std::function<void(char*, unsigned char*, unsigned int)>, Client&)

PubSubClient(const char*, uint16_t, MQTT_CALLBACK_SIGNATURE,Client& client);

^

c:\Users\User\Desktop\FLProgPortable_4-2\ideV2\portable\sketchbook\libraries\pubsubclient\src/PubSubClient.h:125:4: note: candidate expects 4 arguments, 3 provided

c:\Users\User\Desktop\FLProgPortable_4-2\ideV2\portable\sketchbook\libraries\pubsubclient\src/PubSubClient.h:124:4: note: PubSubClient::PubSubClient(const char*, uint16_t, Client&, Stream&)

PubSubClient(const char*, uint16_t, Client& client, Stream&);

^

c:\Users\User\Desktop\FLProgPortable_4-2\ideV2\portable\sketchbook\libraries\pubsubclient\src/PubSubClient.h:124:4: note: candidate expects 4 arguments, 3 provided

c:\Users\User\Desktop\FLProgPortable_4-2\ideV2\portable\sketchbook\libraries\pubsubclient\src/PubSubClient.h:123:4: note: PubSubClient::PubSubClient(const char*, uint16_t, Client&)

PubSubClient(const char*, uint16_t, Client& client);

^

c:\Users\User\Desktop\FLProgPortable_4-2\ideV2\portable\sketchbook\libraries\pubsubclient\src/PubSubClient.h:123:4: note: no known conversion for argument 1 from 'WiFiClient' to 'const char*'

c:\Users\User\Desktop\FLProgPortable_4-2\ideV2\portable\sketchbook\libraries\pubsubclient\src/PubSubClient.h:122:4: note: PubSubClient::PubSubClient(uint8_t*, uint16_t, std::function<void(char*, unsigned char*, unsigned int)>, Client&, Stream&)

PubSubClient(uint8_t *, uint16_t, MQTT_CALLBACK_SIGNATURE,Client& client, Stream&);

^

c:\Users\User\Desktop\FLProgPortable_4-2\ideV2\portable\sketchbook\libraries\pubsubclient\src/PubSubClient.h:122:4: note: candidate expects 5 arguments, 3 provided

c:\Users\User\Desktop\FLProgPortable_4-2\ideV2\portable\sketchbook\libraries\pubsubclient\src/PubSubClient.h:121:4: note: PubSubClient::PubSubClient(uint8_t*, uint16_t, std::function<void(char*, unsigned char*, unsigned int)>, Client&)

PubSubClient(uint8_t *, uint16_t, MQTT_CALLBACK_SIGNATURE,Client& client);

^

c:\Users\User\Desktop\FLProgPortable_4-2\ideV2\portable\sketchbook\libraries\pubsubclient\src/PubSubClient.h:121:4: note: candidate expects 4 arguments, 3 provided

c:\Users\User\Desktop\FLProgPortable_4-2\ideV2\portable\sketchbook\libraries\pubsubclient\src/PubSubClient.h:120:4: note: PubSubClient::PubSubClient(uint8_t*, uint16_t, Client&, Stream&)

PubSubClient(uint8_t *, uint16_t, Client& client, Stream&);

^

c:\Users\User\Desktop\FLProgPortable_4-2\ideV2\portable\sketchbook\libraries\pubsubclient\src/PubSubClient.h:120:4: note: candidate expects 4 arguments, 3 provided

c:\Users\User\Desktop\FLProgPortable_4-2\ideV2\portable\sketchbook\libraries\pubsubclient\src/PubSubClient.h:119:4: note: PubSubClient::PubSubClient(uint8_t*, uint16_t, Client&)

PubSubClient(uint8_t *, uint16_t, Client& client);

^

c:\Users\User\Desktop\FLProgPortable_4-2\ideV2\portable\sketchbook\libraries\pubsubclient\src/PubSubClient.h:119:4: note: no known conversion for argument 1 from 'WiFiClient' to 'uint8_t* {aka unsigned char*}'

c:\Users\User\Desktop\FLProgPortable_4-2\ideV2\portable\sketchbook\libraries\pubsubclient\src/PubSubClient.h:118:4: note: PubSubClient::PubSubClient(IPAddress, uint16_t, std::function<void(char*, unsigned char*, unsigned int)>, Client&, Stream&)

PubSubClient(IPAddress, uint16_t, MQTT_CALLBACK_SIGNATURE,Client& client, Stream&);

^

c:\Users\User\Desktop\FLProgPortable_4-2\ideV2\portable\sketchbook\libraries\pubsubclient\src/PubSubClient.h:118:4: note: candidate expects 5 arguments, 3 provided

c:\Users\User\Desktop\FLProgPortable_4-2\ideV2\portable\sketchbook\libraries\pubsubclient\src/PubSubClient.h:117:4: note: PubSubClient::PubSubClient(IPAddress, uint16_t, std::function<void(char*, unsigned char*, unsigned int)>, Client&)

PubSubClient(IPAddress, uint16_t, MQTT_CALLBACK_SIGNATURE,Client& client);

^

c:\Users\User\Desktop\FLProgPortable_4-2\ideV2\portable\sketchbook\libraries\pubsubclient\src/PubSubClient.h:117:4: note: candidate expects 4 arguments, 3 provided

c:\Users\User\Desktop\FLProgPortable_4-2\ideV2\portable\sketchbook\libraries\pubsubclient\src/PubSubClient.h:116:4: note: PubSubClient::PubSubClient(IPAddress, uint16_t, Client&, Stream&)

PubSubClient(IPAddress, uint16_t, Client& client, Stream&);

^

c:\Users\User\Desktop\FLProgPortable_4-2\ideV2\portable\sketchbook\libraries\pubsubclient\src/PubSubClient.h:116:4: note: candidate expects 4 arguments, 3 provided

c:\Users\User\Desktop\FLProgPortable_4-2\ideV2\portable\sketchbook\libraries\pubsubclient\src/PubSubClient.h:115:4: note: PubSubClient::PubSubClient(IPAddress, uint16_t, Client&)

PubSubClient(IPAddress, uint16_t, Client& client);

^

c:\Users\User\Desktop\FLProgPortable_4-2\ideV2\portable\sketchbook\libraries\pubsubclient\src/PubSubClient.h:115:4: note: no known conversion for argument 1 from 'WiFiClient' to 'IPAddress'

c:\Users\User\Desktop\FLProgPortable_4-2\ideV2\portable\sketchbook\libraries\pubsubclient\src/PubSubClient.h:114:4: note: PubSubClient::PubSubClient(Client&)

PubSubClient(Client& client);

^

c:\Users\User\Desktop\FLProgPortable_4-2\ideV2\portable\sketchbook\libraries\pubsubclient\src/PubSubClient.h:114:4: note: candidate expects 1 argument, 3 provided

c:\Users\User\Desktop\FLProgPortable_4-2\ideV2\portable\sketchbook\libraries\pubsubclient\src/PubSubClient.h:113:4: note: PubSubClient::PubSubClient()

PubSubClient();

^

c:\Users\User\Desktop\FLProgPortable_4-2\ideV2\portable\sketchbook\libraries\pubsubclient\src/PubSubClient.h:113:4: note: candidate expects 0 arguments, 3 provided

c:\Users\User\Desktop\FLProgPortable_4-2\ideV2\portable\sketchbook\libraries\pubsubclient\src/PubSubClient.h:88:7: note: PubSubClient::PubSubClient(const PubSubClient&)

class PubSubClient : public Print {

^

c:\Users\User\Desktop\FLProgPortable_4-2\ideV2\portable\sketchbook\libraries\pubsubclient\src/PubSubClient.h:88:7: note: candidate expects 1 argument, 3 provided

c:\Users\User\Desktop\FLProgPortable_4-2\ideV2\portable\sketchbook\libraries\pubsubclient\src/PubSubClient.h:88:7: note: PubSubClient::PubSubClient(PubSubClient&&)

c:\Users\User\Desktop\FLProgPortable_4-2\ideV2\portable\sketchbook\libraries\pubsubclient\src/PubSubClient.h:88:7: note: candidate expects 1 argument, 3 provided

pr4:668: error: 'MQTT' does not name a type

void callback(const MQTT::Publish& pub)

^

pr4:668: error: expected unqualified-id before '&' token

void callback(const MQTT::Publish& pub)

^

pr4:668: error: expected ')' before '&' token

pr4:668: error: expected initializer before 'pub'

void callback(const MQTT::Publish& pub)

^

C:\Users\User\AppData\Local\Temp\flprog\pr4\pr4.ino: In function 'void loop()':

pr4:274: error: 'MQTT' has not been declared

client.publish(MQTT::Publish(Topic_143862172_4, Message_143862172_4)

^

pr4:300: error: 'MQTT' has not been declared

client.publish(MQTT::Publish(Topic_143862172_3, Message_143862172_3)

^

pr4:326: error: 'MQTT' has not been declared

client.publish(MQTT::Publish(Topic_143862172_2, Message_143862172_2)

^

pr4:352: error: 'MQTT' has not been declared

client.publish(MQTT::Publish(Topic_143862172_1, Message_143862172_1)

^

C:\Users\User\AppData\Local\Temp\flprog\pr4\pr4.ino: At global scope:

pr4:668: error: 'MQTT' does not name a type

void callback(const MQTT::Publish& pub)

^

pr4:668: error: expected unqualified-id before '&' token

void callback(const MQTT::Publish& pub)

^

pr4:668: error: expected ')' before '&' token

pr4:668: error: expected initializer before 'pub'

void callback(const MQTT::Publish& pub)

^

C:\Users\User\AppData\Local\Temp\flprog\pr4\pr4.ino: In function 'boolean reconnect()':

pr4:678: error: 'MQTT' has not been declared

if (client.connect(MQTT::Connect(mqttClientId)

^

pr4:683: error: 'class PubSubClient' has no member named 'set_callback'

client.set_callback(callback);

^

pr4:683: error: 'callback' was not declared in this scope

client.set_callback(callback);

^

pr4:684: error: 'MQTT' has not been declared

client.publish(MQTT::Publish("client1/status", "1")

^

Несколько библиотек найдено для "PubSubClient.h"
Используется: c:\Users\User\Desktop\FLProgPortable_4-2\ideV2\portable\sketchbook\libraries\pubsubclient
Не используется: c:\Users\User\Desktop\FLProgPortable_4-2\ideV2\libraries\pubsubclient-master
Не используется: c:\Users\User\Desktop\FLProgPortable_4-2\ideV2\libraries\pubsubclient-Imroy
exit status 1
no matching function for call to 'PubSubClient::PubSubClient(WiFiClient&, String&, int&)'

[/spoiler]

Отправлено спустя 4 минуты 40 секунд:
Я так понимаю блок майн 4,0 должен первым компелироваться?? или тут все равно.
А то показывает что он 10 в очереди

MQTT для Arduino, ESP8266, ESP32.

Добавлено: 09 дек 2018, 12:46
User8
[ref]pipapsix[/ref], версия portable? Если да, нужно удалить папку pubsubclient по пути: flprog\ideV2\portable\sketchbook\libraries\
Еще я щас подумал и смена сервера и порта не будет работать мне кажется, если не будет, надо будет думать как реализовать.

MQTT для Arduino, ESP8266, ESP32.

Добавлено: 09 дек 2018, 13:02
pipapsix
так загрузил. конфликт с блоком был WiFiManager., удалил загрузилось.

Отправлено спустя 5 минут 53 секунды:
Да. вроде не отправляет, сейчас еще попробую.

MQTT для Arduino, ESP8266, ESP32.

Добавлено: 09 дек 2018, 14:22
ivanpost
[ref]User8[/ref], Я сам хотел так сделать, но не понятно, откуда он возьмет параметры, если
PubSubClient client(mqttClient, mqttServer, mqttPort);
стоит прямо в декларации. До Setup и Loop.
А ведь надо еще считать системные параметры, которые меняются из HTTP.

MQTT для Arduino, ESP8266, ESP32.

Добавлено: 09 дек 2018, 14:43
User8
[ref]ivanpost[/ref], можно попробовать эти строки разместить между setup и loop, и в setup переменные брать из eeprom, но в flprog такого не сделаешь, поэтому если это будет работать то придется руками добавлять каждый раз.

MQTT для Arduino, ESP8266, ESP32.

Добавлено: 09 дек 2018, 15:12
pipapsix
даже в ручную в этот блок данные забил, не работать.не хочет.

MQTT для Arduino, ESP8266, ESP32.

Добавлено: 09 дек 2018, 15:41
ivanpost
[ref]User8[/ref], Я пробовал подгружать из EEPROM - не может. Нужен спец по С++, думаю для него простой вопрос, если идеологию понимать. На гитхабе есть конструкции
PubSubClient client(mqttClient);
И настройки уже в Setup (server,port) и тп

MQTT для Arduino, ESP8266, ESP32.

Добавлено: 09 дек 2018, 16:50
User8
[ref]ivanpost[/ref], [ref]pipapsix[/ref], вроде как разобрался, обновил выше файл, пробуйте.
Сейчас по идее даже перезагрузка esp не требуется, нужно только переподключиться к брокеру, либо перезагрузить брокер.

MQTT для Arduino, ESP8266, ESP32.

Добавлено: 09 дек 2018, 17:06
pipapsix
первый раз такое при загрузке. но все ништяк, работает. благодарю очень.
[spoiler]Uploading 259040 bytes from to flash at 0x00000000
.............................................................................................................................................................................................................................................................
http://downloads.arduino.cc/packages/package_index.json ошибка проверки сигнатуры файла. Файл проигнорирован.[/spoiler]

Отправлено спустя 7 минут 42 секунды:
в личку щас напишу. бблагодарность)))

MQTT для Arduino, ESP8266, ESP32

Добавлено: 09 дек 2018, 18:01
User8
[ref]pipapsix[/ref], [ref]ivanpost[/ref], добавил вход mqttReconnect, чтобы после установки новых данных можно было подать на него единицу, после чего esp переподключится к брокеру уже с новыми данными. Нужно проверить работает или нет...