• Система автоматизации с открытым исходным кодом на базе esp8266/esp32 микроконтроллеров и приложения IoT Manager. Наша группа в Telegram

D1 mini перезагружается при приеме по Serial

Slava Trifonov

New member
Есть задача получить большой (~10кб) объем данных по Serial и отправить по wifi
использую дуриновский фреймворк
platformIO в vs code
создаю буфер приема
char buf[10000] = {0};
запускаю прием данных по Serial
Serial.readBytes(buf,10000);

и контроллер уходит в ребут.
изменяя число байт, опытным путём, удалось установить что перезагрузка происходит после приема примерно 2600-2700 байт (всегда по разному)
почему это происходит, как это исправить?
 

Slava Trifonov

New member
судя по всему перезагружается изза собаки
но я её не включал
даже отключал
ESP.wdtDisable();
Есть ещё какая-то?
 

Slava Trifonov

New member
да памяти то хватает.
а вот времени, действительно нет.
уменьшил запросы (принимаю по 1к) и, на всякий случай, кормлю собаку.
всё работает.
я только начинаю работать с esp (поэтому и выбрал дуриновский фреймворк, возможно с RTOS получится избежать подобного без танцев с бубном), до этого только писал для stm32 (CMSIS).
 

CodeNameHawk

Moderator
Команда форума
Перед чтением из Serial, полезно проверять количество поступивших байтов и только такое количество байтов читать.
 
Сверху Снизу