Forum: Mikrocontroller und Digitale Elektronik Stromverbrauch ESP32 Devboard TTGO T8 minimieren


von Thomas (Gast)


Angehängte Dateien:

Lesenswert?

Hallo Forum,

ich besitze ein Development Board "TTGO T8 v1.7" - eines der günstigsten 
chinesischen Development Boards für den ESP32 mit 4MB PSram und 
Ladeschaltung integriert. (Schematic anbei)

Dummerweise verbraucht dieses Board im Deepsleep des ESP32 ca. 3.5 mA 
wenn ich es über 3.3V speise und somit die 5V Schiene tot ist.
Ich habe den deepsleep sowohl mit Arduino als auch mit Micropython 
ausgetestet und beide sind sich da einig vom Stromverbrauch. Da der 
ESP32 aber problemlos auf ca. 10 µA runtergehen sollte muss wohl die 
Hardware nicht dafür ausgelegt sein.
(ist leider oft so bei den Chinesen dass hier gerne günstige Bauteile 
genommen werden und niemand auf deren Spezifikation oder Stromverbrauch 
achtet...)

Nun habe ich folgende Daten gesammt:
Deepsleep: 3.5 mA
CP2104 ausgelötet: 3.1 mA
Widerstand R20 ausgelötet (pullt VDD_SDIO auf 3.3V, ohne diesen wird 
VDD_SDIO vom ESP32 im deepsleep deaktiviert und somit ist Flash und 
Psram stromlos): 2.3 mA
Regulator IC ausgelötet: 0.1 mA

Und jetzt die Frage: Was könnte hier noch ~90 µA benötigen. Ich vermute 
ja irgendeinen Pullup Widerstand, wobei die GPIOs des ESP32 doch -imho- 
floaten müssten und somit keinen Strom sourcen.
Dann gibt es da noch so komische Konstrukte wie R21 + R24 - über diese 
ist die Batterie direkt mit Ground verbunden oder 1R3 + 1R12 beim Power 
IC welcher 3.3V mit Ground verbindet.

Bin ich hier auf dem richtigen Weg, oder total auf dem Holzweg?

Danke für ein bisschen Input,

Thomas

von Michael U. (amiga)


Lesenswert?

Hallo,

Thomas schrieb:
> Dann gibt es da noch so komische Konstrukte wie R21 + R24 - über diese
> ist die Batterie direkt mit Ground verbunden oder 1R3 + 1R12 beim Power
> IC welcher 3.3V mit Ground verbindet.

naja, den Strom durch den Spannungsteiler für die Messung der 
Batteriespannung kannst Du selber ausrechenen, den Strom durch den 
Referenzspannungsteiler am StepDown auch...
Wenn Dir der Zweck dieser Widerstände komisch vorkommt, solltest Du 
etwas an Deinen Grundlagen-Kenntnissen arbeiten.

Gruß aus Berlin
Michael

von Analoger (Gast)


Lesenswert?

Thomas schrieb:

> Und jetzt die Frage: Was könnte hier noch ~90 µA benötigen. Ich vermute
> ja irgendeinen Pullup Widerstand, wobei die GPIOs des ESP32 doch -imho-
> floaten müssten und somit keinen Strom sourcen.

Also Spannungen zwischen 0,1 * Vcc  und 0,9 * Vcc sollte man vermeiden - 
sonst leiten die Eingangs p- und n- FETs ein bisschen...

von Arno (Gast)


Lesenswert?

Coprozessor deaktiviert?

Laut Datenblatt 
https://www.espressif.com/sites/default/files/documentation/esp32_datasheet_en.pdf 
Seite 21 braucht der ESP32 mit aktivem Coprozessor 150µA im DeepSleep.

MfG, Arno

von Thomas (Gast)


Lesenswert?

Ich blas halt mal den Spannungsteiler fürs Batteriestrom messen (stimmt, 
hätte ich sofort erkennen sollen...) und den für den Power IC vom Board, 
dann mess ich halt nochmal.
Leider gibt es keinen Bestückungsplan :-(

Vielen Dank schonmal für die Tipps!

von Klaus R. (klara)


Lesenswert?

Thomas schrieb:
> Dummerweise verbraucht dieses Board im Deepsleep des ESP32 ca. 3.5 mA
> wenn ich es über 3.3V speise

Kannst Du eigentlich von Deinem Development Board "TTGO T8 v1.7" 
erwarten das es überhaupt einen niedrigeren Stromverbrauch ermöglicht? 
Ein Development Board enthält meist einiges an Overhead, der unnötig 
Strom zieht.

Die normalen ESP32 - Boards gehen deutlich unter 1 mA.

https://www.instructables.com/id/ESP32-Deep-Sleep-Tutorial/
mfg klaus

von Thomas (Gast)


Lesenswert?

Hallo Klaus,

nein, das Board ist natürlich ein xy günstiges Devboard ohne dass da 
jemand auf deepsleep geachtet hätte. Ich bin einfach nur neugierig und 
will herausfinden welche Komponenten denn hier eigentlich soviel Strom 
brauchen und wie weit ich den Stromverbrauch runterdrücken kann.

Danke für den link!

von Michael U. (amiga)


Lesenswert?

Hallo,

nimm ein ESP32-Wrover Modul und hänge es an einen LiFePO4-Akku. Spart 
Spannungsregler usw. komplett. Weniger sollte Dir kaum gelingen.

Gruß aus Berlin
Michael

von Thomas (Gast)


Lesenswert?

Hallo Michael,

das mach ich wohl lieber. Aber die Neugier halt...

Hier übrigens mein Ergebnis:

Ohne Voltage IC: 100 uA
Ohne Voltage Divider für den IC Feedback: 90 µA
Ohne die Pullups auf den GPIO Lines die zur SD Card gehen: 5 µA

Weniger als 5 µA (was mir schon echt außergewöhnlich wenig erscheint!) 
wird jetzt sicherlich nicht mehr gehen.

Danke für eure Hilfe!

Thomas

von Stefan F. (Gast)


Lesenswert?

Thomas schrieb:
> Ohne die Pullups auf den GPIO Lines die zur SD Card gehen: 5 µA

Vielleicht kannst du die auf einen I/O Pin legen, statt fest auf 3,3V.

von KF (Gast)


Lesenswert?

Falls das Problem noch aktuell sein sollte:
vor dem deepsleep kannst Du die GPIOs, an denen 
Pullup-/Pulldown-Widerstände angeschossen sind, im ESP32 isolieren 
(siehe isolate_gpio() oder so ähnlich).
Damit sollte sich der Stromverbrauch im deepsleep ebenfalls reduzieren 
lassen (ich weiß allerdings nicht, wie viel Strom die SD-Karte dabei 
dann noch zieht).
HTH,
KF

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.