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

Энергопотребление ESP32-WROVER в deep sleep

sharikov

Active member
Модуль ESP32-WROVER V4 с чипом ESP32D0WDQ6 (revision 1).
Тестирую примеры из esp-idf, что-то большое потребление получается. (примеры работают как обещалось)
ulp: 0.1 mA
deep_sleep: 0.47 mA
Когда EN=Low ток не регистрируется (менее 0.5uА)
В readme в примерах обещают потребление раз в 10 меньше.
Кто может замерьте токи ESP32 в этих примерах.

ну и до кучи
iperf (2 ядра на 80MHZ)
not connected: 0.11 A
STA connected: 0.11 A
run : 0.16A (bandwidth=16mbis/s)
 

Юрий Ботов

Moderator
Команда форума
Может это qspi sram на модуле wrover добавляет? 32 мегабит это не хухры-мухры...
 

sharikov

Active member
Может это qspi sram на модуле wrover добавляет? 32 мегабит это не хухры-мухры...
в WROVER flash и psram питаются напряжением 1.8V от внутреннего стабилизатора ESP. Он по идее в deep sleep должен отключаться. Проверить не могу - не выведено. Но на линиях данных напряжение пропадает.
Стоит флэшка Gigadevice c id=0x6016 (GD25LQ32?). холостое потребление у нее приличное: 50uA. И у psram небось столько же.

Выяснил. Надо было читать ДШ, в readme к примерам у espressif враньё.
Deep-sleep:
The ULP co-processor is powered on: 150 uA
...
When the system works in the ULP sensor-monitored pattern, the ULP co-processor works with the ULP sensor periodically and the ADC works with a duty cycle of 1%, so the power consumption is 100 uA.
А обещали работающий ulp сопроцессор и 20uA.
 

pvvx

Активный участник сообщества
В документации (deep-sleep c ULP 0.5 ma) у Вас (0.47 ma) соответствует.
т е в 20 раз меньше чем для ESP с включенным CPU и отключенным модулем WIFI.
и для ULP в документации написано 25мка@1%duty
т е спим 100 секунд потом 1 секунду работает ULP (так можно сделать?)
10 мка обещано лишь с RTC т е в 2 раза меньше чем у ESP8266
Посмотреть вложение 5586
=============================
Power Consumption
Light Sleep Mode:
  • The CPU is paused
  • WiFi/BT base-band and radio are Off
  • The RTC and ULP are running
  • Any wake-up events (MAC, host, RTC timer, or external interrupts) will wake up the chip
  • Current consumption is 800 uA
We are care of Deep-Sleep mode:
  • The ULP co-porcessor is powered on: 150 uA current consumption
  • ULP sensor-monitored pattern: 25 uA @ 1% duty
  • RTC timer + RTC memory: 10 uA
And Hibernate Mode:
  • The internal 8MHz oscillator and ULP coprocessor are disabled
  • The RTC recovery memory are power-down
  • Only one RTC timer on the slow clock and some RTC GPIOs are active.
  • The RTC timer or the RTC GPIOs can wake up the chip from the Hibernation mode
  • Power Consumption: 2.5 uA
Вы опять попутали:
1) тут про ESP-32, а него есть версии и не всё ещё корректно описано.
2) Указанные характеристики из PDF на ESP8266 не соответствуют вашим описаниям. Там мельком описано, что эти данные при пониженном напряжении питания - менее 2.5В, когда работа Flash не вписывается в нормативы. По этому и многим другим причинам сравнение с ESP8266 некорректно.
И "10 мка обещано" без RTC и у ESP8266 :)
Стоит флэшка Gigadevice c id=0x6016 (GD25LQ32?). холостое потребление у нее приличное: 50uA. И у psram небось столько же.
Они должны переводиться в режим sleep, а там до 20 uA по докам (обычно)...
Для GD25LQ32 указано: Deep Power-Down Current CS#=VCC, VIN=VCC or VSS 1..5 μA
С ULP наверняка есть зависимость от программы и для замера надо конкретный пример.
 
Последнее редактирование:

pvvx

Активный участник сообщества
esp-idf/examples/system/ulp
esp-idf/examples/system/deep_sleep
без изменений
Быстро не сделать - надо роздолбать плату "ESP-32 DEWKIT V1" c "ESP-WROM-32" модулем. Других пока нет, а там питание повязано дорогами с 1117... С PSRAM заказывать модули до выяснения возможно ли в ней исполнение программы неохота, да и с текущей ревизией самого ESP-32 - нет смысла...
Чуть позже разломаю плату, и измерю...
 
Последнее редактирование:

pvvx

Активный участник сообщества
Пример deep_sleep:
deep_sleep1.gif
deep_sleep2.gif
В начале графика удержан RESET, далее запуск и модуль периодически просыпается через разные временные промежутки, пишет кучу всякой лабуды в UART и опять типа засыпает.
------
Уточнение на пределе измерения в 10 мА:
deep_sleep.gif
Тепловой шум на RESET больше на порядок, чем шумит сам измеритель (наводки - город). С модуля отключена клемма +3.3V (gnd оставлено):
noconnect.gif
С удержанным RESET дул на модуль, нагревал рукой:
TempReset.gif
 
Последнее редактирование:

pvvx

Активный участник сообщества
По оси X какая единица измерения?
Секунды.
Измеритель собирался десяток лет назад :)
Какая физическая природа отрицательных токов на последнем графике?
Наводки на провода, тепловой шум резисторов и пайки, шум развязок БП.
60 нА (p-p) шума на соплях при подрубленной к модулю USB-UART идущей в шумный ящик = Комп. :)
ESP работает как генератор тока?
Нет - на фиксированном стабилизированном напряжении 3.3В +- 0.05 примерно. Ток до 3A, но на время замера ограничил лаб.БП питающем измеритель в 0.7..1A. Больше ESP-32 не жрет и для опытов ему не надо.
 

pvvx

Активный участник сообщества
какое минимальное время просыпания и засыпания вновь?
Минимум пару мс. Каждый раз разный интервал. Такая программа. Смотрите исходники - они не закрыты (ноя их и не смотрел - открыл на 2 секунды с пролистыванием, мельком увидев что там примерно про deep_sleep и ULP и зашил в ESP-32 :)).
Кроме установки COM7 в конфиге и выполнения [inline]make flash[/inline] я ничего не трогал с установки всей этой байды для ESP-32.
--------
Вы не можете подключить свой купленный 24-х битный ADC? :)
Примерная схема с дикими упрощениями (самый простой вариант):
Scm.gif
Если поставите мостовой выход, то будут и отрицательные значения тока - обратно в источник (при переключении выводов в измеряемой схеме нагруженных емкостными и индуктивными нагрузками...)
--------
Или что вас беспокоит? Что вместо заявленных 150 мкА выходит 400? Ну... Espressif! :)
 
Последнее редактирование:

pvvx

Активный участник сообщества
Бредовая ламерская схема. В схемотехнике вы полный ноль. :D
Сказал обиженный тролль =AK= не смогший измерить ничего за всю историю (и не только на этом форуме). :)
В первый раз наверно увидел источник питания с контролем напряжения в заданной точке... :)
Вы о чем?
Не понял вопрос.
Меня ничего не беспокоит.
У меня все работает.
От куда тогда ламерские вопросы? Мозг не работает?

Почему в примере выходит разный интервал deep-sleep?
 
Последнее редактирование:

pvvx

Активный участник сообщества
esp-idf/examples/system/ulp
esp-idf/examples/system/deep_sleep
без изменений
esp-idf/examples/system/ulp без изменений не собирается.
CPP main/ulp/pulse_cnt.S
ULP_AS build/main/pulse_cnt.ulp.o
make[1]: esp32ulp-elf-as: Команда не найдена
make[1]: *** [/e/esp32/esp-idf/components/ulp/component_ulp_common.mk:41: pulse_cnt.ulp.o] Ошибка 127
make: *** [e:/esp32/esp-idf/make/project.mk:450: component-main-build] Ошибка 2

Там участвует файл на ассемблере [inline]pulse_cnt.S[/inline], а он средой не компилируется.
Аналогичная история со всеми примерами с вложенными asm файлами для ULP...
Надо доустанавливать доп.toolchain
 
Последнее редактирование:

=AK=

New member
источник питания с контролем напряжения в заданной точке...
Бред сивой кобылы. Можно было бы принять за бред в силу косноязычия и неумения внятно излагать свои мысли. Однако с учетом представленной схемотехники это просто бред, без оговорок. А с учетом истории бредовых высказываний pvvx на форуме - это очередной бред идиота, ничего не смыслящего в электронике. Из серии "20 вольт на открытом диоде", "предела скорсти развертки ЭЛТ в десятки МГц", "накопления неосновных носителей в МОП транзисторах" и прочей невежественной галиматьи. =:D=
 

pvvx

Активный участник сообщества
Бред сивой кобылы. Можно было бы принять за бред в силу косноязычия и неумения внятно излагать свои мысли. Однако с учетом представленной схемотехники это просто бред, без оговорок. А с учетом истории бредовых высказываний pvvx на форуме - это очередной бред идиота, ничего не смыслящего в электронике. Из серии "20 вольт на открытом диоде", "предела скорсти развертки ЭЛТ в десятки МГц", "накопления неосновных носителей в МОП транзисторах" и прочей невежественной галиматьи. =:D=
Бе-бе-бе. Вы так и не освоили всё перечисленное. Бедный обиженный папарацци-тролль =AK= :(
Побеситесь ущё - это так прикольно, наблюдать вашу деградацию...
 
Последнее редактирование:

pvvx

Активный участник сообщества
После установки binutils-esp32ulp компилируется. Описано в инструкциях espressif.
ulp.gif
Кнопки и прочие резисторы включены на другое питание 3.3В. Их ток не учитывается. Измеряется только питание самого модуля.
 
Последнее редактирование:

pvvx

Активный участник сообщества
Последнее редактирование:

sharikov

Active member
Посмотреть вложение 5603
Кнопки и прочие резисторы включены на другое питание 3.3В. Их ток не учитывается. Измеряется только питание самого модуля.
22uA что ли в паузе ? от нулей аж в глазах рябит.
Если так это похоже на что что обещали. Интересно почему у меня ток в 5 раз выше при том что в примере deep_sleep результаты схожие.
Нипонятна...
 
Сверху Снизу