Forum: Mikrocontroller und Digitale Elektronik esp8266 sleep mode


von Neuling A. (jesuisla)


Angehängte Dateien:

Lesenswert?

guten Tag,

ich möchte eine automatisierte Wasserverbrauchsmessung durch 
Impulserfassung mittels esp8266 und das mit Batteriebetrieb, nun möchte 
ich n bissen Strom sparen und in den Sleepmodus gehen und den esp8266 
mit einem Interrupt bzw wenn ein Impuls ankommt und dann wieder schläft.

meine Frage: kann der esp8266 während des Schlafmodus die Daten behalten 
bzw der nimmt ja einen Impuls wahr dann schläft er, kann er die 
Impulszahl aufsammeln und speichern auch im Schlafmodus?

von Stefan F. (Gast)


Lesenswert?

Neuling A. schrieb:
> kann der esp8266 während des Schlafmodus die Daten behalten

Ja, aber nicht im normalen RAM sondern in der RTC. Die hat dafür 512 
Bytes extra Speicher, davon sind die ersten 64 Bytes schon belegt.

Beim Aufwachen muss der Chip neu booten, das dauert ein paar hundert ms.

Wie willst du per WLAN darauf zugreifen, während er schläft? Es bleibt 
vermutlich nur die Variante, dass dein ESP die Daten von sich aus auf 
einen Server ablegt.

Bedenke auch, dass die RTC im Deep Sleep Modus sehr ungenau läuft (wegen 
R/C Oszillator statt Quarz), falls du vor hattest Zeiten zu messen.

von Michael M. (Gast)


Lesenswert?

Hallo,

hier mal gute Informationen zu den Thema. Die Bezeihen sich zwar auf den 
ESP32, aber sollte ähnlich bei den esp8266 sein.

Der ESP32 hat ein präprozessor (oder sö ähnlich) der im deep sleep 
aktive ist und variablen speichern und halten kann während sleep -> 
ative -> sleep.

evtl. hilft dir ja der link bei dein Problem.

https://randomnerdtutorials.com/esp32-deep-sleep-arduino-ide-wake-up-sources/

Gruß
Michael

von Stefan F. (Gast)


Lesenswert?

Michael M. schrieb:
> sollte ähnlich bei den esp8266 sein.

> Der ESP32 hat ein präprozessor (oder sö ähnlich) der im deep sleep
> aktive ist

In dem Punkt sind sie sich allerdings so unähnlich wie es nur geht. Der 
ESP8266 hat nichts dergleichen.

von Schlaumaier (Gast)


Lesenswert?

Stefan ⛄ F. schrieb:
> Ja, aber nicht im normalen RAM sondern in der RTC. Die hat dafür 512
> Bytes extra Speicher, davon sind die ersten 64 Bytes schon belegt.

Ist völlig richtig.

Das Problem ist nur das dieser Speicher von Hersteller mit sehr 
niedriger Schreibzyklen angegeben ist.

Nach meiner Schätzung ist der bei den von dir angegeben Einsatz in ein 
paar Monaten defekt.

Mein Rat. Entweder du schickt die Daten in einen Cloudspeicher (ich 
denke da an das NAS der Fritzbox) oder du kaufst dir für ein paar Euro 
ne SD-Kart-Modul und steckst da eine deiner alten SD-Karten rein.

Dann kannst du sogar ein Protokoll schreiben und das analysieren wenn du 
willst.

von Stefan F. (Gast)


Lesenswert?

Schlaumaier schrieb:
> Das Problem ist nur das dieser Speicher von Hersteller mit sehr
> niedriger Schreibzyklen angegeben ist.

Schade. Kann man das irgendwo mit konkreten Zahlen nachlesen?

von Schlaumaier (Gast)


Lesenswert?

Stefan ⛄ F. schrieb:
> Schade. Kann man das irgendwo mit konkreten Zahlen nachlesen?

Klor DATENBLATT

Angeben werden 100.000 auf diversen Seiten im Netz und wenn man Google 
fragt.

Aber das sind in meinen Augen Laborbedingungen. Unter Berücksichtigung 
lebenslanger Erfahrung mit so Angaben gehe ich eher von 40.000 aus.

Das mag im ersten Moment viel klingen ist es aber nicht wirklich. 
Besonders dann nicht wenn man immer wieder die selbe Zelle quält. Und 
DIE muss man angeben beim Schreibvorgang.

Wie gesagt ne SD-Karte (hat auch nicht mehr Zyklen) tausche ich in 1 
Minute wenn ich fummeln muss. Ich habe mehr Daten die ich brach Seq. 
speichern kann und kann mir eine Software schreiben (alternativ Excel) 
was die CSV-Datei dann analysieren kann.

Das Thema UHR würde ich mit einen DCF-Modul MIT BATTERIE lösen. Kostet 
auch nur 1-2 Euro. Falls ich auf Zeitdaten wert legen. Ist halt ne Frage 
der Analyse der Daten.

https://www.ebay.de/itm/264391930437?hash=item3d8efcb245:g:TngAAOSwB3tZpJE5

Ist aus Spanien. Aber Spanien ist EU da gibts kein Stress mir den Zoll. 
;)

von Stefan F. (Gast)


Lesenswert?

Schlaumaier schrieb:
> Klor DATENBLATT

Wo denn, ich dazu nichts gefunden. Zeige mal die Seite - für Blinde wie 
mich.

von J. S. (jojos)


Lesenswert?

das ist auch wieder Schlaumeier Unsinn. In RTC Chips und devices in µC 
steckt low power SRAM drin und kein Flash. So bescheuert sind die 
Chinesen nicht.

von Εrnst B. (ernst)


Lesenswert?

Schlaumaier schrieb:
> Stefan ⛄ F. schrieb:
>> Schade. Kann man das irgendwo mit konkreten Zahlen nachlesen?
>
> Klor DATENBLATT

Nö.

> Angeben werden 100.000 auf diversen Seiten im Netz und wenn man Google
> fragt.

Nö.

d.H. du hast dir mal wieder eine abstruse Lügengeschichte aus den 
Fingern gesogen.

Gegenbeweis gerne per Datenblatt-Link+Seitenzahl.

von Schlaumaier (Gast)


Lesenswert?

100.000 Fliegen können sich nicht irren.

Also frag einfach Google. Ich habe das Datenblatt nie gelesen. Mir 
reicht es wenn ich weiß wo ich was anschließen kann und welche Probleme 
auf mich warten.

Google : esp8266 eeprom write cycles

The memory cells can be read as many times as necessary but the number 
of write cycles is limited to 100,000. It is advisable to pay close 
attention to the size of the stored data and how often you want to 
update it. The overall flash memory size is usually 4MB. The EEPROM of 
the ESP8266 has a size of 4kB.

Und diese Info finde ich auf fast jeder Seite zu den Thema.

Und da das alles im Prinzip die selbe Technik ist, denke ich das diese 
Aussage auch auf meine Nano's bezogen ist.  Da ist mir das aber egal, 
weil ich nur Einstellungen darin speichere und die i.d.R. selten 
geändert werden.

von STK500-Besitzer (Gast)


Lesenswert?

Schlaumaier schrieb:
> Google : esp8266 eeprom write cycles
>
> The memory cells can be read as many times as necessary but the number
> of write cycles is limited to 100,000. It is advisable to pay close
> attention to the size of the stored data and how often you want to
> update it. The overall flash memory size is usually 4MB. The EEPROM of
> the ESP8266 has a size of 4kB.

Aber nix vonwegen RTC...

von Schlaumaier (Gast)


Lesenswert?

STK500-Besitzer schrieb:
> Aber nix vonwegen RTC...

Stimmt. Da gibt es keine Infos. Aber ich gehe einfach mal davon aus das 
der Wert bedeutend schlechter ist.

Bei meinen Entwicklungssystem gehen die Entwickler von 1000 Cyles aus.

Weshalb mir die SD-Karte immer besser gefällt.

von STK500-Besitzer (Gast)


Lesenswert?

Schlaumaier schrieb:
> Stimmt. Da gibt es keine Infos. Aber ich gehe einfach mal davon aus das
> der Wert bedeutend schlechter ist.

Weil es ein "batteriegestützes" RAM ist (wenn die Versorgung weg ist, 
sind auch die Daten weg...).

Schlaumaier schrieb:
> Weshalb mir die SD-Karte immer besser gefällt.

Äpfel und Birnen...

von Stefan F. (Gast)


Lesenswert?

Schlaumaier schrieb:
> esp8266 eeprom write cycles

Der hat gar kein EEPROM. Die entsprechenden Ardiuno Calls werden 
stattdessen im Flash Speicher ausgeführt.

Aber das hat alles nicht mit dem RAM der RTC zu tun, den ich meine.

von Εrnst B. (ernst)


Lesenswert?

Oooh... Schlaumeier hat mal Recht...
Weil der ESP8266 weder Flash noch EEPROM integriert hat, sind die 
möglichen Schreibzyklen exakt 0. In Worten: Null.
Das ist in der Tat sehr wenig.
Ich versteh zwar nicht, was die möglichen Schreibzyklen im RAM damit 
zu tun haben sollen, aber das steht bestimmt auch bei Google.

von Stefan F. (Gast)


Lesenswert?

Schlaumaier schrieb:
> Klor DATENBLATT
> Angeben werden 100.000 auf diversen Seiten im Netz und wenn man Google
> fragt.

Wo hast du die 100.000 her? Im Datenblatt von Espressif steht nichts 
dergleichen (ergäbe auch keinen Sinn) aber im Datenblatt von Winbond 
konnte ich die Zahl wieder finden. 
http://www.mkpochtoi.ru/flash_w25q32_winbond.pdf

Bei einem anderen Flash Chip kann das wieder ganz anders sein.

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.