Forum: Mikrocontroller und Digitale Elektronik ESP32-Start bei externer Powering


von Alexander S. (knut740)


Lesenswert?

Hallo,
mein ESP32 startet nicht von selbst, wenn die externe Stromversorgung 
eingeschaltet wird - außer, man drückt den RST-Knopf.
Nun habe ich eine Quelle gefunden
(https://arduino-hannover.de/2018/07/11/esp32-mit-batteriebetrieb/) die 
sich mit diesem Thema befaßt.
Dort steht u.a.
Spannungsversorgung: VDD (+) und GND (-) mit Batterie 2,5 – 3,6 V
Reset (EN) 10kOhm auf VDD
PIN 2 mit 10 kOhm auf VDD
Allerdings: eine zweite Quelle beschreibt, daß beim "normalen" Booten 
der GPIO2 gar nicht beachtet würde.
Also habe ich nur EN über 10k mit 3V3 verbunden und mit PIN2 nichts 
getan.
Das war mir schon deshalb recht, weil ich nicht wußte, was PIN2 ist (der 
zweite von oben, also 22 ?). Es ging natürlich nicht, der ESP32 startete 
nicht.

Dann habe ich in einem alten Thread von hier etwas gefunden:

>Nachdem ich den o.g. zusätzlichen Stützelko weggelassen habe,
>funktioniert es einwandfrei, der ESP8266 NodeMCU startet zuverlässig.
>Am DevBoard ist ohnehin ein dicker Tantal-Elko drauf, der wahrscheinlich
>zur Stabilisierung der Betriebsspannung dient.
>So funktioniert es nun einwandfrei:
>* GPIO-0 und GPIO-2 gebrückt und über 10k mit +3.3V verbunden.
>* GPIO-15 über 10k mit GND verbunden.
>Beste Grüße
>LeFish

Ich hatte noch keine Gelegenheit, es auszuprobieren,
Hat sich in der langen Zeit nach diesem Thread inzwischen ein 
Standardverfahren herausgebildet?
VG
735knut

von Michael U. (amiga)


Lesenswert?

Hallo,

Du hast nicht verraten, welches ESP32 Modul Du da bnutzt, was Deine 
Spannungsquelle ist.
Mein ESP32 Wroom startet jedenfalls zuverlässig wenn ich den LiFePO4 
Akku anstecke. Spannungsregler gibt es keinen, Resetknopf auch nicht, 
100 zwischen GND und +3,3V gibt es.

Gruß aus Berlin
Michael

von Alexander S. (knut740)


Lesenswert?

Michael U. schrieb:
> Du hast nicht verraten, welches ESP32 Modul Du da bnutzt, was Deine
> Spannungsquelle ist.
Ist keineswegs geheim; es steht darauf WROVER-B und als Spannungsquelle 
habe ich ein von einer Autobatterie gespeistes Stepdownmodul, 
eingestellt auf 3,3V. Die Stromversorgung ist tadellos in Ordnung, denn 
wenn ich auf den Resetknopf drücke, startet das Programm sofort (und 
stellt eine Verbindung zum Telefonnetz her und verschickt eine SMS (es 
ist ein SIM800L ist eingebaut)).
> Mein ESP32 Wroom startet jedenfalls zuverlässig wenn ich den LiFePO4
> Akku anstecke. Spannungsregler gibt es keinen, Resetknopf auch nicht,
> 100 zwischen GND und +3,3V gibt es.

Meinst einen Kondensator?
> Gruß aus Berlin
> Michael

Ich habe, wie schon geschrieben, 10k zwischen EN und dem 
Spannungseingang 3V3, aber leider ohne Erfolg.

von Stefan F. (Gast)


Lesenswert?

Ist doch ganz einfach: Wenn die Versorgungsspannung zu langsam ansteigt, 
endet das Reset Signal zu früh. In diesem Fall muss man entweder dafür 
sorgen, dass die Versorgungsspannung schneller ansteigt oder man sorgt 
für einen längeren Reset Impuls.

Ohne weitere Infos zu deinem Aufbau kannst du nur die Wahl treffen und 
einen Plan dafür erstellen.

Auf jeden Fall würde bei der Beschaltung der Pins davon absehen, diverse 
ESP32 Modelle mit dem ESP8266 zu verwechseln. Ebenso würde nicht 
"nackte" Chip und unterschiedliche Module mit diesen Chips einfach 
gleich behandeln.

von Michael U. (amiga)


Lesenswert?

Hallo,

Alexander S. schrieb:
> Meinst einen Kondensator?
>> Gruß aus Berlin
>> Michael

ja, sollte 100 miroFarad werden...
Ich denke, das Verhalten bei Laständerung Deines StepDown gefällt dem 
ESP32 nicht ganz.
100n...10 micoFarad von EN nach GND zusätzlich kannst Du auch testen.

Wie stefanus schon schrieb: wir wissen nicht, was Du da gebaut hast. Ein 
ESP32 Wrover B ist ein nacktes ESP32 Modul, da ist auch kein Resettaster 
drauf. Also mußt Du den ja angebuat haben...

Gruß aus Berlin
Michael

von Alexander S. (knut740)


Lesenswert?

Michael U. schrieb:
> Ich denke, das Verhalten bei Laständerung Deines StepDown gefällt dem
> ESP32 nicht ganz.

Das Stepdown-Teil heißt
> XL4016 Step Down Converter DC-DC 5-40V bis 1,2-35V
und es hat ausgangseitig zwei stramme 1000myF Kondensatoren, von denen 
ich zwar nicht weiß, ob sie von der schnellen Sorte sind, aber das 
dürfte hier nicht wichtig sein, weil der bekannt hohe Strombedarf des 
SIM800L nur beim Einbuchen in das Providernetz entsteht. Beim Booten 
kommen XL4016 und ESP32 gut miteinander aus - wie ein Druck auf den 
Resetknopf zeigt. Zugegeben, das erscheint etas zu einfach, wenn man im 
ESP32_datasheet... liest, aber es geht.

> 100n...10 micoFarad von EN nach GND zusätzlich kannst Du auch testen.
>
> Wie stefanus schon schrieb: wir wissen nicht, was Du da gebaut hast. Ein
> ESP32 Wrover B ist ein nacktes ESP32 Modul, da ist auch kein Resettaster
> drauf. Also mußt Du den ja angebuat haben...

Sorry, ich hatte nur an den ESP32-Chip gedacht; das ganze Ding heißt
>TTGO T-Call V1.4 ESP32 Wireless Modul SIM800L Antenne.
Auf dem Teil gibt es noch den Aufdruck LILYGO.
VG
735knut

: Bearbeitet durch User
von Stefan F. (Gast)


Lesenswert?

Alexander S. schrieb:
> Das Stepdown-Teil heißt
> XL4016 Step Down Converter DC-DC 5-40V bis 1,2-35V
> und es hat ausgangseitig zwei stramme 1000myF Kondensatoren

Vermutlich sorgen diese ziemlich großen Kondensatoren dafür, dass dessen 
Ausgangsspannung beim Einschalten ungewöhnlich langsam ansteigt. Solche 
Vermutungen überprüft man am besten mit einem digitalen Oszilloskop.

Du wirst dann wohl alle getakteten Bauteile durch eine zusätzliche 
Schaltung mit einem längeren Impuls resetten müssen.

von Michael U. (amiga)


Lesenswert?

Hallo,

ich habe mit SIM-Modulen selbst noch nichts gemacht, die sind doch meist 
mit mehr als 3,3V angegeben? Wie (wo) speist Du das Board denn nun 
eigentlich?
Ansonsten bin ich auch beim Spannungsanstieg, notfalls muß Du eben eine 
zusätzliche Logik für eine längere Verzögerung der L/H Flanke für den 
ESP32 dranbauen. Beim ESP8266 weiß ich, daß EN da recht anspruchslos 
ist, was die Flankensteilheit angeht. Beim ESP32 habe ich es nicht 
getestet.
Ich vermute mal, der ESP32 startet wenn EN auf über ca. 2,5V geht. Wenn 
in diesem Moment durch die zusätzliche Last und auch durch den Start des 
SIM-Moduls die Spannung kurz dynamisch etwas runtergeht, mögen das auch 
die ESP32 eigentlich garnicht und bleiben hängen.

Gruß aus Berlin
Michael

: Bearbeitet durch User
von Stefan F. (Gast)


Lesenswert?

Die ESP Chips haben zwar einen weiten Versorgungsspannungsbereich, aber 
sie mögen keine Schwankungen/Ripple über 100mV.

Außerdem brauchen die Flash Speicherchips meistens mehr als 2.5V um 
zuverlässig zu funktionieren. Leider wird das in Produktbeschreibungen 
von Modulen meistens verheimlicht, die schreiben einfach nur die Zahlen 
aus dem Datenblatt des ESP Chips ab.

von Alexander S. (knut740)


Lesenswert?

Stefan ⛄ F. schrieb:
> Vermutlich sorgen diese ziemlich großen Kondensatoren dafür, dass dessen
> Ausgangsspannung beim Einschalten ungewöhnlich langsam ansteigt. Solche
> Vermutungen überprüft man am besten mit einem digitalen Oszilloskop.

Mangels Digitaloszilloskop habe ich es so versucht: Stepdownmodul 
eingeschaltet und erst später die Verbindung zu ESP hergestellt.
Nun gut, der Spannungverlauf am ESP durch das Draht-Einschrauben ging 
bestimmt auf und ab, aber durch die geringe Last sollte die 
Kondensatorausgangsspannung doch davon wenig beeinflußt worden sein.

Leider hatte ich damit keinen Erfolg. Ich mußte dann doch die Resettaste 
drücken - und da ging es sofort.

VG
Alexander

von Stefan F. (Gast)


Lesenswert?

Alexander S. schrieb:
> Mangels Digitaloszilloskop habe ich es so versucht: Stepdownmodul
> eingeschaltet und erst später die Verbindung zu ESP hergestellt.

Gute Idee.

> Ich mußte dann doch die Resettaste drücken

Schade. Kannst du den Schaltplan davon zeigen - auch von den fertigen 
Modulen?

von Joachim B. (jar)


Lesenswert?

Stefan ⛄ F. schrieb:
> Ist doch ganz einfach: Wenn die Versorgungsspannung zu langsam ansteigt,
> endet das Reset Signal zu früh. In diesem Fall muss man entweder dafür
> sorgen, dass die Versorgungsspannung schneller ansteigt oder man sorgt
> für einen längeren Reset Impuls.

vermutlich deswegen musste ich viele ESP32 Module mit einem 10µF tunen

https://randomnerdtutorials.com/solved-failed-to-connect-to-esp32-timed-out-waiting-for-packet-header/
https://i2.wp.com/randomnerdtutorials.com/wp-content/uploads/2019/02/esp32-waiting-for-packet-header-featured.jpg

ein 10µF KerKo MLC kann direkt angelötet werden (von EN nach Blech)

Alexander S. schrieb:
> Also habe ich nur EN über 10k mit 3V3 verbunden

Da könnte auch ein Kondensator helfen das der EN später freigegeben 
wird!

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.