Forum: Mikrocontroller und Digitale Elektronik ESP8266 mit Arduino Framework im Dauerbetrieb


von ISP (Gast)


Lesenswert?

Hallo zusammen,

ich spiele aktuell ein wenig mit dem ESP8266. Ich verwende als IDE die 
Arduino Umgebung, damit ist es wirklich ziemlich einfach den ESP zu 
Programmieren, sogar wenn man nicht nur Code kopiert und hofft das es 
funktioniert.
Nun habe ich ein Programm für meine Heimautomatisierung geschrieben, das 
soweit auch funktioniert. Bevor ich alles einbaue würde ich gerne noch 
wiessen ob jemand Erfahrungen mit der Kombination aus ESP8266 und dem 
Arduino Framework im Dauerbetrieb hat.
Läuft das alles durch oder gibts nach ein paar Tagen/Wochen 
Probleme/Resets?
Was mir gleich mal in den Sinn kommt ist die millis() Funktion, die wird 
wahrscheinlich nur den Wert einer Variablen liefern die irgendwann 
überläuft, kommts da zum Reset oder wird das irgendwie abgefangen??

Danke und Frohes Fest

von Frank L. (hermastersvoice)


Lesenswert?

die millis laufen irgendwann über und fangen dann wieder bei 0 an. Das 
musst du nur abfangen und gut ists. Dann läuft das System auch im 
Dauerbetrieb.

von Stefan F. (Gast)


Lesenswert?

> Bevor ich alles einbaue würde ich gerne noch wiessen ob
> jemand Erfahrungen mit der Kombination aus ESP8266 und dem
> Arduino Framework im Dauerbetrieb hat.

Hab ich, läuft inzwischen absolut stabil. Wenn nicht, liegt der Fehler 
bei mir. Ich habe hier zwei Absätze mit meinen Erkenntnissen zu dem 
Thema aufgeschrieben:

http://stefanfrings.de/esp8266/index.html#stability
http://stefanfrings.de/esp8266/index.html#fallstricke

> die millis laufen irgendwann über und fangen dann wieder bei 0 an

Ja sicher. Jeder Zähler läuft irgendwann über. Bei der Subtraktion ist 
das allerdings kein Problem, das Ergebnis stimmt trotzdem.
1
unsigned long start=millis();
2
...
3
unsigned long duration=millis()-start;

oder so:
1
unsigned long start=millis();
2
while (millis()-start < 10000)
3
{
4
   ...
5
}
Das gilt allerdings für alle Computer gleichermaßen.

von ISP (Gast)


Lesenswert?

Danke für die schnellen und sehr hilfreichen Antworten. Die Seite von 
Stefan kannte ich noch gar nicht ist auf sehr aufschlussreich.

@Stefan
du schreibst auf deiner Seite das ab Version SDK 1.5.4 alles stabil 
läuft und du sogar auf SDK 2.0.0 geupdatet hast.
Nur zum besseren Verständnis meinerseits, mit SDK Version 2.0.0 meinst 
du die ESP Libs für den Arduino oder. Also das was unter folgendem Link 
zu finden ist.

https://github.com/esp8266/Arduino

Vielen Dank für die Antworten.

von Michael U. (amiga)


Lesenswert?

Hallo,

ich habe die dort verlinkte 2.3.0 bei mir mit dem Boardmanager 
installiert, IDE ist hier noch die 1.6.9.
Hier geistern mehrere ESP8266 rum, teils Akku betrieben und viel 
schlafend.
Absolut stabil, teilweise unverändert seit Mitte 2016.
Bei den "ganz alten" passiert es manchmal, das der WLAN-Reconnect nicht 
klappt wenn das WLAN mal weg war. Das liegt aber an meinem damals noch 
etwas fragwürdigen Umgang mit der ESP-WiFi-Programmierung und nicht an 
den ESP selbst.
Stefans Hinweis zur Stromaufnahme bei PowerOn und Reset oder/und CH_PD 
Low muß ich bei meinen PIR-Sensoren direkt mal nachgehen.

Gruß aus Berlin
Michael

von Stefan F. (Gast)


Lesenswert?

> Nur zum besseren Verständnis meinerseits, mit SDK Version 2.0.0
> meinst du die ESP Libs für den Arduino oder?

Ich meine damit das SDK von Espressif. In der Doku der Arduino 
Erweiterung kannst du nachlesen, welche SDK Version sie verwendet haben.

Ich benutze die Arduino IDE 1.8.2 mit der ESP Erwiterung 2.3.0, welche 
das SDK 2.0.0 beinhaltet.

von ISP (Gast)


Lesenswert?

Ich habs immer noch nicht ganz verstanden, ich muss doch auf den ESP 
erstmal die Firmware flashen oder? Ich verwende da Momentan die

nodemcu_float_0.9.6-dev_20150704.bin

Welche Version meinst du denn da?
Sorry wenn mir noch ein wenig der Durchblick fehlt :-(

von Einer K. (Gast)


Lesenswert?

ISP schrieb:
> ich muss doch auf den ESP
> erstmal die Firmware flashen oder?
Wir schreiben die Firmware selbst...
In/Mit der Arduino IDE.

Nix mit: nodemcu_float_0.9.6-dev_20150704.bin
Oder ähnlich.

von Stefan F. (Gast)


Lesenswert?

> ich muss doch auf den ESP erstmal die Firmware flashen oder?

Mit der Arduino IDE erzeugst du eine komplette Firmware. Dein eigenes 
Programm wird immer mit der Firmware zusammen gebündelt und hochgeladen. 
Was vorher in dem Chip an Firmware drin war, spielt keine Rolle, es wird 
komplett ersetzt.

Hast Du dich noch nicht gewundert, dass selbst ein simpler LED Blinker 
schon mehr als 250kB Flash belegt?

von ISP (Gast)


Lesenswert?

Ok jetzt hab ichs verstanden. :-)
Vielen Dank für eure Gedult.

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.