Hallo zusammen,
ich habe bei einem kleinen ESP32-Projekt ein Problem: Der ESP32 läuft grundsätzlich normal, startet aber gelegentlich neu, sobald WLAN aktiviert wird bzw. eine Verbindung aufgebaut wird.
Versorgung momentan über USB, sonst hängt nur ein kleiner I2C-Sensor am Board.
Kann das einfach an kurzen Spannungseinbrüchen beim WLAN-Senden liegen oder sollte ich eher in Richtung Software/Watchdog suchen?
Würdet ihr zuerst die 3,3-V-Versorgung messen bzw. einen zusätzlichen Kondensator direkt am ESP testen?
Grüße
Tobias
Ja kann gut sein. Der Chip nimmt Impulsweise fast 500 mA auf. Versuche ein dickeres USB Kabel.
Was heißt abgeschlossen an USB? Am PC? Dann mach die serielle Schnittstelle auf. Normalerweise sieht man beim Starten was der Grund für den Reset war.
Ansonsten Mal ein richtiges Netzteil nehmen. Eigene Platine? Oder was für ein Board genau verwendet du? Schaltplan?
Ein extra Kondensator würde due Problemursache verbergen. Du könntest 100 uF an 3,3V versuchen. An 5V sind nur 10 uF ingesamt erlaubt, da der hohe Ladestrom beim Einstecken die USB Anschlüsse beschädigen kann.
Schaltplan? Kann am Spannungsregler liegen
Normalerweise sieht man beim Starten was der Grund für den Reset war.
Ich stimme zu!
Ohne den Resetgrund zu kennen, ist dss alles ein stochern im Nebel.
Danke euch. Dann schaue ich mir zuerst über die serielle Ausgabe den Resetgrund an, bevor ich mit Kondensatoren herumprobiere.
Danach teste ich noch ein anderes USB-Kabel bzw. ein ordentliches Netzteil. Wenn dort etwas wie Brownout auftaucht, weiß ich zumindest, dass ich bei der Versorgung weitersuchen muss.
Das genaue Board schaue ich auch noch nach und poste es dann dazu.
Würdet ihr zuerst die 3,3-V-Versorgung messen ...
Das kommt drauf an, ob die geeignetes Messwerkzeug besitzt. Die Strompeaks dauern teilweise nur ein paar Millisekunden.
Tobias schrieb:
Würdet ihr zuerst die 3,3-V-Versorgung messen bzw. einen zusätzlichen Kondensator direkt am ESP testen?
Das kommt drauf an, ob die geeignetes Messwerkzeug besitzt. Die Strompeaks dauern teilweise nur ein paar Millisekunden.
Ich ergänze Das gekürzete Zitat um den Kondensator, warum auch immer Du diesen wichtigen Punkt weggekürzt hast.
Als wir mangels Internet noch eigenständig handeln durften, wäre genau das der erste Schritt gewesen.
Und klar, anstatt Meßaufwand zu treiben, wäre mein erster Schritt ein fetter Elko oder eine externe Versorgung.
wäre mein erster Schritt
Der erste Schritt ist die Meldungen zu lesen!
Denn, merke:
Kondensatoren helfen nicht gegen Exceptions.
Manfred P. schrieb:
wäre mein erster Schritt
Der erste Schritt ist die Meldungen zu lesen!
Da habe ich nichts gegen einzuwenden, aber die (meine) Vorgehensweise kommt auch aus dem aktuellen Bauchgefühl.
Denn, merke: Kondensatoren helfen nicht gegen Exceptions.
Richtig, die nachgelegte Info "USB-Versorgung" deutet in eine andere Richtung.
Ich ergänze Das gekürzete Zitat um den Kondensator, warum auch immer Du diesen wichtigen Punkt weggekürzt hast.
Weil es mir um das "zuerst" ging. Die Messung kann nur dann einen Erkenntnisgewinn bringen, wenn das Messwerkzeug geeignet ist, die Spannungseinbrüche vernünftig zu erfassen.
Mit einer Messung sieht man z.B. auch, wie stark das Kabel an einem Spannungseinbruch Schuld ist.
Auch die Wirkung des Kondensators macht sich an der Spannung am direktesten bemerkbar. Blind pauschal einen "fetten" Kondensator einzubauen, kann helfen. Aber wie fett er sein muss, verrät dir am einfachsten eine Messung. Bei nur gelegentlich auftretenden Fehlern ohne Kontrollmessung ist das sonst blindes Stochern im Nebel und kann langwierig werden, weil du nie weißt, wie kritisch du an irgendwelchen Grenzwerten liegst, zumal ein Kondensator direkt auf den 3,3V relativ ineffektiv ist, da der uC trotzdem die Entladekurve mit bekommt. Effektiver wäre der Kondensator vor einem LDO, der seine Ausgangsspannung trotz Teilentladung des Kondensators stabil halten würde, aber das mag ja der USB nicht.
Kann das einfach an kurzen Spannungseinbrüchen beim WLAN-Senden liegen oder sollte ich eher in Richtung Software/Watchdog suchen?
Ich würde da einfach einen Freiheitsgrad herausnehmen und das Ding mit ordentlich dicken und möglichst kurzen Kabeln an einer anständigen Stromversorgung (aka. Labornetzgerät) in Betrieb nehmen. Wenn es dann auch nicht funktioniert, hast du die Stromversorgung als Fehlerquelle gleich mal ausgeschlossen.
Danke, dann gehe ich erstmal systematisch vor: zuerst Resetgrund über die serielle Ausgabe prüfen. Falls dort Brownout bzw. nichts Auffälliges auf Softwareseite zu sehen ist, schaue ich mir die 3,3-V-Versorgung mit dem Oszi an und teste danach ggf. ein anderes Kabel/Netzteil. Einen großen Elko einfach auf Verdacht draufzusetzen würde ich dann erstmal lassen.