ESP8266 PubSubClient проблема. Прошу помощи!
- Войдите на сайт для отправки комментариев
Столкнулся с отвратительной странностью.
Локальный брокер с оф. сайта mosquitto установлен на OrangePi PC2 (Armbian). В сетке 2 роутера, один главный и один по витой паре к главному как точка доступа (естественно одна подсеть, никаких служб на точке доступа нет).
Библиотека PubSubClient by Nick O'Leary 2.7.0 Скетч эелементарный с парой подписок и парой публикаций 3-4 раза в день.
Те ESP, которые подключены к главному работают без нареканий месяцами, те которые подключены к точке доступа - переподключаются каждые 5-15 сек, при этом, по сути по подпискам им ничего не попадает, видят только то, что retain и то при переподключении. mqtt-клиенты на Android, подключенные к той же точке доступа, работают без нареканий. Куда копать?
И как всё это связано с ардуино?
Думаю, непосредственно. Какие-то ошибки/особенности в работе библиотеки. Клиенты с мобильного телефона работают то без проблем.
Замечательно!!!!!! И где мы это можем увидить?
На совершенно стандартном примере
В Issues библиотеки на гитхабе в причинах реконнектов нашел только повторяющийся ID клиента и использование delay в loop.
Как видно, у меня этого - нет.
Лог при подключении к главному роутеру - совершенно обычный. Коннект и дальше за 30 минут ни одного реконекта. Топики принимаются мгновенно.
А вот лог при подключении к точке доступа (скетч немного модифицирован - подписка с QoS 1, 20с пауза между паблишами) :
У нас разные библиотеки pubsubclient вы все пишете через char а у меня через string. Извините с этой библиотекой не разбирался. Вы где библиотеку брали?
Так в официальном репозитории Arduino. Или как там правильно называется Скетч-Подключить библиотеку-Управлять библиотеками. Порылся на форумах, вроде - да, самая популярная. Да и нету с ней никаких проблем на роутере. Вот вообще никаких.
Тем не менее, буду признателен, если скинете на свою ссылку