ESP32 не дружит с сим-картовским интернетом

В общем, название темы - чисто мой вывод, сделанный на основе собственных исследований и догадок. Есть некий проект, который управляет телеграм ботом. Это все залито на ESP32, которая отлично работает с домашним роутером, подключенным к оптоволокну, и наотрез отказывается подключаться к телефонной точке доступа, а так же плохо (через пол дня от подключения валится и usb модем и весь интернет роутера в целом) работает с конфигурацией роутер+usb модем. Буду рад предположениям по решению моей проблемы, ибо мои догадки/идеи (как и, в общем, нервы) все исчерпаны. Заранее спасибо за любую помощь.

что за роутер что за модем что за оператор

Роутер tp link wr842n, модем Huawei, модель точно не помню, если сильно понадобиться - найду, оператор в обоих случаях (и в модеме, и на телефоне) - Мегафон.

пора в металлолом, сильно много отработал, устал видимо
если бы ты имел возможность посмотреть загрузку памяти был бы сильно удивлён, что оно вообще работает…
Это без модема

И ведь каждую секунду бот новыми сообщениями интересуется?

const unsigned long BOT_MTBS = 1000; // mean time between scan messages

:wink: Угадай, что не так при сотовом модеме? Дело, как обычно, “не в бобине” :wink:

Давайте пожалуйста без намеков, ибо я их уже столько начитался, что не догоняю. Чрезмерная нагрузка на модем/роутер?

Дракула видимо намекает на время жизни пакета, поставь 5000, это был стандарт на дальнейшую утилизацию пакета, если за это время не дошёл… (читал давно лет двадцать пять назад)

Причём м тут TTL?

Она мечтала жить да на Манхеттене,
А дома ждал её пакет с пакетами…

(слова народные) :wink:

тогда не знаю, у меня (правда кроме двух ботов было еще 8 подключенных плат) заканчивалась память, некоторые процессы оставались жить, некоторые встревали, ушел с тплинка на микротик ушли проблемы

Сотовый модем рвет соединение и требует время для реконнекта. Конечно все сильно зависит от роутера.
Сама библиотека защищена от всяких сбоев. Но “шит хеппенс”. То есть:

  1. бота положить в отдельный таск;
  2. Следить за heapSIze;
  3. опрашивать сервер Телеги с разной скоростью. Например в сонном состоянии - раз в 10 сек, а после получения хоть одного сообщения - каждую секунду.
  4. Логи все-таки повесить и последить … возможно причина сбоя найдется. ЕСП - это никак не АВР-ка! Это уже целый комп и отлаживать его нужно как комп, а не как микроконтроллер. В том смысле, что никому не нужны состояния каждого байта памяти и регистров - это количество необозримо, а нужны логи и продуманная стратегия наблюдения Вочдогом.

При попытке подружить еспшку с мобильной точкой, в отладке вылезает ошибка AP_NOT_FOUND.
Так же при подключении к модему, с которым эта музыка играет “бесконечно долго”, сначала проскакивает пара “AUTH_FAILED”, а потом подключается.
Это наблюдения отладки

Другие-то девайсы работают через эту связку? Пинг, например, на полдня поставить ежели?

Я же говорил, что “дело не в бобине”. Это уже реальные проблемы. Гадать, конечно не стану.

Пингуется постоянно, раз в 2 минуты
На этой основе формируются данные о времени без подключения
За ночь набирается 4-5 таких оффлайнов, длительностью от 3х часов до 10 минут каждый
Но тут, по количеству оффлайнов все рандомно, никаких закономерностей пока не наблюдается

Так может ответ простой - твой телефонный интернет гавно, да и все?

У меня домашний проводной инет - и тот регулярно виснет на 3-5 минут. Что я делаю не так?

Если у провайдера все сгнило, так оно и будет отваливаться, что ты не делай.

Кстати. У меня есть написанный на Джаве мною… неделю (или три? дни сливаться стали в сплошной поток… :frowning: ) назад… UDP logger. Запускаешь на компе, а на любой ардуинке с сетью (я для ЕСП32 писал) кидаешь логи в UDP порт.
Логгер их добросовестно складывает в файл.

ТС - нужно? Поставишь дома и следить станешь…

ЗЫ: Другие участники - если нужно - выложу тут. И jar и исходник. и Пример для Ардуинки. Если есть интерес. Писал как служебную программу для вылавливания неочевидных багов при длительной работе уже “в боевых условиях” когда сеть есть, а вот кабель для логов повесить уже невозможно.

Вернее не выложу, а приватный гитхаб сделаю публичным и сцылку выложу.

На 514/UDP слушает? :wink:

:wink: Нет. на любом. При старте указываешь файл - куда писать и порт - откуда слушать
Есть с Гуи. и с командной строкой.
Поясню - в сислог нужно правильно кидать. А в мой логгер - что угодно. Просто строку текста, как нравится

А то тут есть вон… GitHub - arcao/Syslog: An Arduino library for logging to Syslog server in IETF format (RFC 5424) and BSD format (RFC 3164)