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

Запитка esp32 от батареи и проблема с просадкой питания.

maddogmaycry

New member
Приветствую.

Wroom32 (правда на какой то плате devkitV от китайцев) питается от lifepo батареи. На пин 3v3 подключена батарея.
ESP включается, соединяется, и уходит в сон. Спит пока не дернуть ножку.

Так вот при достижении 2.8v на батарее начинается следующее. ESP просыпается и производит соединение, в этот момент напряжение просаживается до 2.75 и ESP не то зависает, не то залипает от недостатка напряжения. При этом потребление не падает, вольтаж батареи продолжает падать.

Вплоть до критически низких значений. То-есть хоть до вольта может упасть если бы не защита элемента.

Понятно что надо регулировать в двух направлениях.
Отключать питание при падении и так далее.

Но мне просто интересно - в ESP32 нет встроенной защиты от этой бяки или это обвязка на китайской плате подглючивает?
 

nikolz

Well-known member
Приветствую.

Wroom32 (правда на какой то плате devkitV от китайцев) питается от lifepo батареи. На пин 3v3 подключена батарея.
ESP включается, соединяется, и уходит в сон. Спит пока не дернуть ножку.

Так вот при достижении 2.8v на батарее начинается следующее. ESP просыпается и производит соединение, в этот момент напряжение просаживается до 2.75 и ESP не то зависает, не то залипает от недостатка напряжения. При этом потребление не падает, вольтаж батареи продолжает падать.

Вплоть до критически низких значений. То-есть хоть до вольта может упасть если бы не защита элемента.

Понятно что надо регулировать в двух направлениях.
Отключать питание при падении и так далее.

Но мне просто интересно - в ESP32 нет встроенной защиты от этой бяки или это обвязка на китайской плате подглючивает?
нет и ESP8266 тоже нет
если напряжение падает ниже критического для ESP8266 это 2.6 то дальше все падает пока батарейка не разрядится полностью.
 

nikolz

Well-known member
О, хорошо что вас подловил!
А на STM32 или STM8 такая защита имеется?
для STM не изучал данный вопрос так как там эта проблема менее актуальна, так как нет wifi c 300 ма в импульсе.
Но и для STM и любых других чипов намерен использовать описанные ниже два способа:
--------------------------
Мои способы решения данной проблемы следующие:
1) Измеряю напряжение внутри ESP8266 (ESP32 применять пока нет надобности два ядра не надо )
--------------------
в двух вариантах
------------
вариант 1 измерения внутри начальной загрузки
в этом случае самая быстрая реакция и наименьшие токи (пиковый ток 40 ма средний 30 время активности 80 мс)
----------------
вариант 2
в начале работы основной программы до калибровки и включения WiFi(пиковый ток 40ма время 110 мс)
после калибровки - пик до 300 ма (у Вас он может составлять 400 ма) средний ток 60 ма время 130 мс - это я не использую, но это самое простое и очевидное для большинства.
-----------------------
Измеренное внутри напряжение сравниваю с порогом и принимаю решение снова спать или работать дальше
=============================
2) использую супервизор питания
 

sharikov

Active member
Но мне просто интересно - в ESP32 нет встроенной защиты от этой бяки или это обвязка на китайской плате подглючивает?
Защита есть на 2,42V но в errata пишут что она с багами и не работает. В чем баг не разъясняется. У меня в Wroom32 вроде работает. Не забудьте включить Brownout в menuconfig.
Вы выбрали неудачный модуль. В Wroom32 трехвольтовая флэшка. Ниже 3V она превращается в тыкву и модуль виснет.
Для батарейного питания больше подходит Wrover32 или ESP32D pico в них флэшки на 1,8V и все работает вплоть до срабатывания встроенного Brownout.
Ну и для надежности лучше ставить внешний супервизор.
 

nikolz

Well-known member
Защита есть на 2,42V но в errata пишут что она с багами и не работает. В чем баг не разъясняется. У меня в Wroom32 вроде работает. Не забудьте включить Brownout в menuconfig.
Вы выбрали неудачный модуль. В Wroom32 трехвольтовая флэшка. Ниже 3V она превращается в тыкву и модуль виснет.
Для батарейного питания больше подходит Wrover32 или ESP32D pico в них флэшки на 1,8V и все работает вплоть до срабатывания встроенного Brownout.
Ну и для надежности лучше ставить внешний супервизор.
вижу Вы далеко продвинулись в освоении ESP32.
Если не сложно, расскажите какие удается получит время активности, токи потребления длительность работы от батарейки, токи с выключенным wifi и скорость включения wifi и BLE.
Можно в отдельной теме.
Может у меня появится к ней интерес, а то как-то никак не вдохновлюсь ее использовать.
Спасибо
 

maddogmaycry

New member
1) Измеряю напряжение внутри ESP8266 (ESP32 применять пока нет надобности два ядра не надо )
2) использую супервизор питания
В ESP8266 хотя бы программно напряжение можно измерить (с большой погрешностью конечно).А вот с ESP32 все сложнее.

ESP32 еще и с косяками как мне кажется.
То-ли разработчики спешили, то-ли архитектура была разработана разными людьми в разное время. То-ли они не были продуманы.

Вот на пример пин RTC-VDD, изначально и судя по схеме (да и по логике) задумывалось как аналог VBAT. Но вероятно в какой то момент пин подключается к LDO CPU.
"VDD3P3_RTC is also the input power supply for RTC and CPU."

2.3
Power Scheme
https://www.espressif.com/sites/default/files/documentation/esp32_datasheet_en.pdf#page=16

Я даже находил ветку по этому поводу, фреймворкер сначала отвечает мол: "конечно RTC может быть запитан отдельно и работать без CPU иначе зачем бы он там был", и уже после ссылаясь на схему, пишет, что запитав RTC_VDD запитывается и основной CPU.
 

maddogmaycry

New member
Защита есть на 2,42V но в errata пишут что она с багами и не работает. В чем баг не разъясняется. У меня в Wroom32 вроде работает. Не забудьте включить Brownout в menuconfig.
Вы выбрали неудачный модуль. В Wroom32 трехвольтовая флэшка. Ниже 3V она превращается в тыкву и модуль виснет.
Для батарейного питания больше подходит Wrover32 или ESP32D pico в них флэшки на 1,8V и все работает вплоть до срабатывания встроенного Brownout.
Ну и для надежности лучше ставить внешний супервизор.
Спасибо!

О флешке не подумал. Уже забыл что за флешка, но вероятнее всего не на 1,8.
Поковыряю :)
 

nikolz

Well-known member
В ESP8266 хотя бы программно напряжение можно измерить (с большой погрешностью конечно).А вот с ESP32 все сложнее.

ESP32 еще и с косяками как мне кажется.
То-ли разработчики спешили, то-ли архитектура была разработана разными людьми в разное время. То-ли они не были продуманы.

Вот на пример пин RTC-VDD, изначально и судя по схеме (да и по логике) задумывалось как аналог VBAT. Но вероятно в какой то момент пин подключается к LDO CPU.
"VDD3P3_RTC is also the input power supply for RTC and CPU."

2.3
Power Scheme
https://www.espressif.com/sites/default/files/documentation/esp32_datasheet_en.pdf#page=16

Я даже находил ветку по этому поводу, фреймворкер сначала отвечает мол: "конечно RTC может быть запитан отдельно и работать без CPU иначе зачем бы он там был", и уже после ссылаясь на схему, пишет, что запитав RTC_VDD запитывается и основной CPU.
Поэтому я после того как поигрался с ESP32 вернулся на ESP8266 и назад пока не хочу.
относительно флешки хорошо работает ESP8285 у нее флешка внутри чипа и все работает до 2 вольт
----------------
напряжение на ESP измеряется относительно точно скажем с погрешностью не более 5%
 

maddogmaycry

New member
ESP8285 у нее флешка внутри чипа и все работает до 2 вольт
Здравствуйте.

Вернулся к теме с питанием. Глянул даташит по 8285, и там диапазон напряжений указан 3.0в - 3.6в
Не могли бы прояснить по 2 вольтам на флешке. То-есть на сколько я понял для функционирования WIFI ему нужно 3в, но в режиме без онного он может запускаться вплоть до 2в?
 

nikolz

Well-known member
Здравствуйте.

Вернулся к теме с питанием. Глянул даташит по 8285, и там диапазон напряжений указан 3.0в - 3.6в
Не могли бы прояснить по 2 вольтам на флешке. То-есть на сколько я понял для функционирования WIFI ему нужно 3в, но в режиме без онного он может запускаться вплоть до 2в?
у 8285 флешка внутри Чипа и очевидно она работает от более низкого напряжения.
какой вопрос?
У меня работает до 2 вольт по внутреннему АЦП
 

sharikov

Active member
у 8285 флешка внутри Чипа и очевидно она работает от более низкого напряжения.
какой вопрос?
У меня работает до 2 вольт по внутреннему АЦП
https://www.espressif.com/sites/default/files/documentation/0a-esp8285_datasheet_en.pdf
Страница 19 :
5.1. Electrical Characteristics
Operating Voltage 2.7 - 3.3 - 3.6V
 

nikolz

Well-known member
https://www.espressif.com/sites/default/files/documentation/0a-esp8285_datasheet_en.pdf
Страница 19 :
5.1. Electrical Characteristics
Operating Voltage 2.7 - 3.3 - 3.6V
вы не внимательно читаете то, что написал я.
Я написал результаты своих измерений а не выдержки из документации
более того в доке указано что надо источник с 500 ма
и ничего не сказано что это импульсный ток на малом интервале работы передатчика
а без wifi надо в 10-15 раз меньше - этого в доке нет.
---------------
еще в документации сказано про напряжение источника питания
а я указал напряжение измеренное внутри ESP его АЦП
 
Сверху Снизу