Нужна помощь Изоляция пина esp32 перед входом в спящий режим

osintaras

New member
Борюсь с esp32. Чего уж только не делал, но в deep_sleep она берет 4 миллиампера, что весьма много.
Использую девборд, убрал 1117 стабилизатор, утекать току больше некуда. Нагрузка никакая ни к какому пину не подключена.
Причем неважно как программирую - через ардуино ide или через AT команды - ток во сне одинаковый.
Недавно наткнулся на такое важное замечание: 2019-03-20_11-02-37.png(https://docs.espressif.com/projects...rence/system/sleep_modes.html#configuring-ios). Получается что нужно программно изолировать данный пин перед входом в спящий режим.
Но не могу понять как эту функцию или ее аналог запустить в ардуино ide.
Может кто подскажет?
 

osintaras

New member
Решение найдено: нужно подключить #include "driver/rtc_io.h" и можно использовать эту функцию как есть.
 

osintaras

New member
там речь не о тех токах.
напишите подробнее
как вы определили что deep-sleep включается и выключается.
покажите схему и что и где вы отключили
Так ведь все просто.
3.3 вольта на соответствующие пины.
1117 убран.
Как вводить в спящий режим:
Через AT команды. К примеру https://github.com/espressif/esp32-...mmands_Set.md#24-atgslpenters-deep-sleep-mode.
Есть стандартные примеры глубокого сна для ардуино которые вместе с платой идут - там тоже все просто:
esp_sleep_enable_timer_wakeup(TIME_TO_SLEEP * uS_TO_S_FACTOR);
esp_deep_sleep_start();

В обоих случаях у меня получается ток 4 миллиампера. А на другой esp32 от другого поставщика китайского 7 миллиампер.

Как определяю, что спящий режим состоялся? - по тому что выдается в сериал порте, по падению тока, по тому, что вся логика программная выполняется как надо.
 

nikolz

Well-known member
Так ведь все просто.
3.3 вольта на соответствующие пины.
1117 убран.
Как вводить в спящий режим:
Через AT команды. К примеру https://github.com/espressif/esp32-...mmands_Set.md#24-atgslpenters-deep-sleep-mode.
Есть стандартные примеры глубокого сна для ардуино которые вместе с платой идут - там тоже все просто:
esp_sleep_enable_timer_wakeup(TIME_TO_SLEEP * uS_TO_S_FACTOR);
esp_deep_sleep_start();

В обоих случаях у меня получается ток 4 миллиампера. А на другой esp32 от другого поставщика китайского 7 миллиампер.

Как определяю, что спящий режим состоялся? - по тому что выдается в сериал порте, по падению тока, по тому, что вся логика программная выполняется как надо.
Ну если все просто, то в чем проблема?
------------------------------
просто бывает либо когда дилетант, либо когда профи в данном вопросе.
У профи проблем нет, потому что просто.
У дилетанта - всегда проблемы, потому что просто.
Просто спросить себя - я - кто в этом вопросе?
 

osintaras

New member
Ну если все просто, то в чем проблема?
------------------------------
просто бывает либо когда дилетант, либо когда профи в данном вопросе.
У профи проблем нет, потому что просто.
У дилетанта - всегда проблемы, потому что просто.
Просто спросить себя - я - кто в этом вопросе?
Просто было ответить на Ваш вопрос, который я процитировал.

Спасибо! Но ежели б там говорили об обычной esp32, а то у них там другая схема и компоненты, которых у меня на плате нет или скрыты.
 

nikolz

Well-known member
Просто было ответить на Ваш вопрос, который я процитировал.


Спасибо! Но ежели б там говорили об обычной esp32, а то у них там другая схема и компоненты, которых у меня на плате нет или скрыты.
могу лишь повторить то что сказал ранее. покажите что у вас и что вы делаете.
 

osintaras

New member
Я ведь описал что я делаю:
Вводил в спящий режим с помощью AT команды AT+GSLP=<time> .
Также вводил в спящий режим из под ардуино ide:
Код:
esp_sleep_enable_timer_wakeup(sleepTimeS * 60 * 1000000);
esp_deep_sleep_start();
Сама плата такая: 2019-03-21 10-33-23.JPG
Питание 3.3 вольта с землей подключаем на соответствующие пины 3.3 вольта и землю (вверху на фото).
 

nikolz

Well-known member
Я ведь описал что я делаю:
Вводил в спящий режим с помощью AT команды AT+GSLP=<time> .
Также вводил в спящий режим из под ардуино ide:
Код:
esp_sleep_enable_timer_wakeup(sleepTimeS * 60 * 1000000);
esp_deep_sleep_start();
Сама плата такая: 2019-03-21 10-33-23.JPG
Питание 3.3 вольта с землей подключаем на соответствующие пины 3.3 вольта и землю (вверху на фото).
если решать вопрос как в первой ссылке, то надо сдувать крышку.
посмотрите по коду на крышке какая у вас версия и год.
первые чипы и версии имели схемные проблемы и на них нельзя было реализовать ряд функций,
 

nikolz

Well-known member
еще предположу что есть дорожки под модулем и вы не отключаете их от питания.
в результате кушает что-то
еще предположу что кушает адаптер USB uart
 

osintaras

New member
как вы измеряете ток (схема)
и как вы отключаете адаптер или учитываете его потребление (расчет измерение)?
Делаю также как делал на esp8266, на которой прекрасный ток во сне имеем.
В разрыв между аккумулятором и контактом амперметр. Оттуда ток идет на dcdc преобразователь.
dc-dc преобразователь сам без подключенной платы берет 0.2 миллиампера. Подключаем плату - ток становится таким каким становится.
 

nikolz

Well-known member
Делаю также как делал на esp8266, на которой прекрасный ток во сне имеем.
В разрыв между аккумулятором и контактом амперметр. Оттуда ток идет на dcdc преобразователь.
dc-dc преобразователь сам без подключенной платы берет 0.2 миллиампера. Подключаем плату - ток становится таким каким становится.
я спросил Вас про USB-URT адаптер это такой черный пластм кубик около разъема. Он тоже кушает и кроме того может давать(брать) токи через RX TX от ESP
Как вы решили вопрос с его потреблением при расчете тока ESP в режиме сна.
 

osintaras

New member
я спросил Вас про USB-URT адаптер это такой черный пластм кубик около разъема. Он тоже кушает и кроме того может давать(брать) токи через RX TX от ESP
Как вы решили вопрос с его потреблением при расчете тока ESP в режиме сна.
Вы про cp2102? Он может много есть? 1117 стабилизатор ест гораздо меньше...
 

osintaras

New member
я спросил Вас про USB-URT адаптер это такой черный пластм кубик около разъема. Он тоже кушает и кроме того может давать(брать) токи через RX TX от ESP
Как вы решили вопрос с его потреблением при расчете тока ESP в режиме сна.
Срезал пины, питающие эту штуку :). И слава Богу амперметр в спящем режиме показывает только ток dcdc преобразователей!
Спасибо nikolz за наводку!
Как бы еще удалять его чтобы аккуратно было... паяльника и глаз не хватит чтобы выпаять - спаяю рядом стоящие контакты.
 

nikolz

Well-known member
Срезал пины, питающие эту штуку :). И слава Богу амперметр в спящем режиме показывает только ток dcdc преобразователей!
Спасибо nikolz за наводку!
Как бы еще удалять его чтобы аккуратно было... паяльника и глаз не хватит чтобы выпаять - спаяю рядом стоящие контакты.
Для устройств берите чистые модули и используйте отдельный адаптер USB для программирования.
А эту плату надо использовать для разработки софта.
будет и дешевле и без проблем.
 
Сверху Снизу