Forum: Mikrocontroller und Digitale Elektronik ESP8266 power down mode


von Basti (Gast)


Lesenswert?

Hi,

ich habe einen ESP8266 auf einem ESP-12 Board.

Wenn ich den CH_PD Pin auf Low ziehe, verbraucht das Board immernoch 
0.6mA.

Hat jemand eine Idee wie ich noch mehr Strom im Powerdown sparen kann? 
Board komplett abschalten per PNP?

von Pete K. (pete77)


Lesenswert?

Könnte am RAM liegen. Du kannst einen attiny o.ä nehmen und das Modul 
komplett abschalten.

von Basti (Gast)


Lesenswert?

Hi,

danke, ja das mache ich momentan. Die applikation läuft auf einem AVR, 
der GPIO, CH_PD und reset des ESP8266 steuert.

ich tippe momentan auf den flash des boards, der ja nicht mit dem 
enable-pin verbunden ist und warscheinlich daher nicht herunterfährt..

von Anon Y. (avion23)


Lesenswert?

Ist angeblich ein Bug im ESP8266. Du musst das Modul in den Sleep MOdus 
versetzen.

von Basti (Gast)


Lesenswert?

AT+SLEEP=1 verändert bei mir gar nichts (aktuelle firmware)
AT+SLEEP=2 (modem sleep, default) halbiert die stromaufnahme in etwa auf 
30mA

von Solder (Gast)


Lesenswert?

Ob das mit der eingebauten Firmware geht, weiß ich nicht. Für den 
DeepSleep muss man Reset mit GPIO16(?) verbinden. Dann zeigt mein 
Labornetzteil bei der Stromaufnahme 0 an. Ein LiFePO4 18650-Akku reicht 
dann für 5s Meßintervalle ca. 4 Wochen. Allerdings mache ich mir die 
Firmware immer selbst mit der Arduino-IDE.

Offenbar willst du den zusätzlichen AVR ja weglassen. Dann musst du die 
Meßaufgabe(?) ja sowieso vom ESP erledigen lassen.

Ich habe übrigens früher auch oft einen AVR messen lassen und dann den 
ESP für die WLAN-Übertragung eingeschaltet (per MosFET VCC des ESP). Das 
mache ich nicht mehr, weil da keine weitere Stromersparnis festzustellen 
war.

von Basti (Gast)


Lesenswert?

also:

beim powerdown, den reset pin nicht betätigen, nur den CHPD. Hatte alle 
pinne per avr auf 0 gezogen....

von Solder (Gast)


Lesenswert?

Wenn du den ESP mit CHPD in PowerDown schickst, bleibt halt der Flash 
noch aktiv (und vielleicht noch mehr). Besser wäre es, wenn sich der ESP 
selbst abschalten kann. Dann kann er vorher auch die anderen Bausteine 
schlafen schicken. Ich nehme an, das passiert, wenn man DeepSleep per 
Software aufruft, denn der Unterschied im Stromverbrauch ist doch recht 
groß.

Wenn die eingebaute Firmware das nicht bietet, musst du es halt doch per 
Transistor machen. Wie schon geschrieben, habe ich das auch über einen 
Transistor an VCC gemacht (z.B. IRLML2244, da ich möglichst wenig 
Spannungsabfall wollte - damals wusste ich noch nicht, dass der ESP auch 
bei 2,5V noch läuft).

von Basti (Gast)


Lesenswert?

die sequenz die ich jetzt nutze sieht so aus

? "AT+SLEEP=1"
wait 1
? "AT+GSLP=10000"
wait 1
esp_chpd=0
esp_res=1 'reset nicht betätigen!
esp_io0=0
esp_io2=0

der gesamtverbrauch für den powerdown AVR mit aktiviertem watchdog, und 
dem ESP liegen bei 200µA


Ich hatte mit einem PNP an VCC des ESP experimentiert, aber da hat 
irgendwas angefangen zu schwingen, denke ich, denn die 
gesamtstromaufnahme im betrieb ist von 80 auf 120mA angestiegen, da muss 
ich nochmal gucken was da passiert ist

von Stefan F. (Gast)


Lesenswert?

Zeitweise nimmt der Chip mehr als 300mA auf.

Wichtig ist, daß du den Chip mittels CH_PD erst schlafen legst, nachdem 
seine Firmware gestartet ist. Im Reset und wenn du CH_PD zu frühl auf 
Low ziehst, beträgt die Stromaufnahme mehrere Milliampere.

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.