Перейти к содержанию

Почему ESP32 перезагружается при включении Wi-Fi?

Обновлено Редакция GAW

ESP32 работает, пока радио выключено, но сбрасывается в момент подключения к точке доступа или при первой передаче. Это почти всегда питание: в момент передачи ток модуля резко растёт, напряжение на выводе 3V3 проседает, и чип уходит в сброс.

Сколько тока берёт ESP32

РежимСредний токПиковый ток
Передача 802.11b, 19,5 дБм239 мА379 мА
Передача 802.11g, 54 Мбит/с190 мА276 мА
Передача 802.11n, MCS7183 мА258 мА
Приём 802.11b/g/n112 мА112 мА

Данные — для модуля ESP32-WROOM-32E при 3,3 В. Модулю нужно от 3,0 до 3,6 В, а источник по требованию Espressif должен отдавать не меньше 0,5 А.

Где теряется напряжение

Допустим, на пути от источника до модуля набирается 1 Ом: тонкий USB-кабель, контакты, дорожки. Тогда пик тока 379 мА даёт просадку

ΔU=I⋅R=0,379⋅1≈0,38 В,\Delta U = I \cdot R = 0{,}379 \cdot 1 \approx 0{,}38\ \text{В},

и 3,3 В превращаются в 2,92 В — модуль уже вне допустимого режима 3,0–3,6 В. При более глубокой просадке срабатывает встроенный детектор пониженного питания: ESP-IDF выводит в монитор порта строку «Brownout detector was triggered» и сбрасывает чип. По этой строке, иногда оборванной, проблему с питанием и узнают.

Что сделать

  • Питать плату от источника, который держит 0,5 А и больше, и коротким толстым кабелем.
  • Проверить стабилизатор 3,3 В на плате: он должен отдавать ток с запасом.
  • Поставить рядом с выводом питания модуля блокировочный конденсатор и электролит для пиков.
  • При питании от батареи — следить за её напряжением: Espressif советует супервизор питания, чтобы ESP32 не застревал при загрузке на низком напряжении. Как работает такая защита, объясняет термин «детектор пониженного питания».

Как устроено питание отладочной платы и какой вывод куда идёт, показано на странице ESP32-DevKitC, а характеристики самого чипа собраны на странице ESP32. Сравнение потребления с STM32 — в ответе «Чем отличается STM32 от ESP32».

Похожие вопросы

Поможет ли конденсатор на питании ESP32?

Конденсатор рядом с выводом питания модуля сглаживает короткие пики тока передатчика, но не спасает, если источник в принципе не отдаёт 0,5 А или напряжение падает на длинных проводах. Сначала проверяют источник и провода, потом добавляют ёмкость.

Почему без Wi-Fi ESP32 работает, а с Wi-Fi нет?

Без радио ESP32 потребляет десятки миллиампер, и даже слабый источник держит напряжение. При передаче ток растёт до сотен миллиампер короткими пиками — до 379 мА у модуля WROOM-32E, — и именно в эти моменты напряжение проседает.

От какого напряжения работает ESP32?

Сам чип ESP32 по даташиту работает от 2,3 до 3,6 В, а модулю ESP32-WROOM-32E нужно от 3,0 до 3,6 В. Для модуля просадка ниже 3,0 В уже выход за допустимый режим.

Источники

  1. Espressif. ESP32 Series Datasheet v5.3 — раздел о питании: рабочее напряжение чипа 2,3–3,6 В, при одном источнике рекомендовано 3,3 В и выходной ток 500 мА или больше; при питании от батареи рекомендован супервизор питания, чтобы избежать сбоя загрузки при низком напряжении; табл. 5-4 — передача 802.11b 1 Мбит/с, +19,5 дБм — 240 мА, 802.11g 54 Мбит/с — 190 мА, 802.11n MCS7 — 180 мА, приём — 95–100 мА (3,3 В, 25 °C, скважность передачи 50 %); 4.3 — в режиме Modem-sleep без радио двухъядерные чипы потребляют 20–31 мА на 80 МГц и 27–44 мА на 160 МГц
  2. Espressif. ESP32-WROOM-32E & ESP32-WROOM-32UE Datasheet v2.1 — табл. 14 — напряжение питания модуля 3,0–3,6 В, ток внешнего источника не менее 0,5 А; табл. 16 — передача 802.11b 1 Мбит/с, 19,5 дБм: в среднем 239 мА, в пике 379 мА; 802.11g 54 Мбит/с: 190 и 276 мА; 802.11n MCS7: 183 и 258 мА; приём — 112 мА
  3. Espressif. ESP-IDF Programming Guide v5.3: Fatal Errors (ESP32) — раздел Brownout — детектор пониженного питания включён по умолчанию и сбрасывает чип, если напряжение ниже безопасного уровня; настройки CONFIG_ESP_BROWNOUT_DET и CONFIG_ESP_BROWNOUT_DET_LVL_SEL; перед сбросом печатается Brownout detector was triggered, при быстрой просадке — не полностью

Нашли ошибку?