Hallo,
in den Weihnachtsferien will ich mal wieder irgendwas basteln. Außer mit
den nRF24L01+ habe ich mit Funk noch nix gemacht und will daher mal so
einen ESP8266 (vermutlich nodemcu, da schön universell nutzbar)
ausprobieren. Da habe ich 2 Fragen, die ich so nicht auf die Schnelle im
Netz beantwortet gefunden habe:
1.) Da die Dinger ja (für meine Verhältnisse) enorm viel Strom ziehen,
werde ich sehr viel mit sleepmodes spielen. Wie lange bleibt so ein
WLAN-Teilnehmer eigentlich beim Router angemeldet, bis er wegen
Inaktivität rausfliegt? Bei GSM z.B. prüft die Zelle ja auch so alle 30
Minuten, ob der Teilnehmer noch da ist.
2.) Kann man bei den Chips eigentlich auch die Sendeleistung einstellen,
um Strom zu sparen? Oder besagt ein Standard, daß sowieso immer nur mit
so viel Leistung wie gerade erforderlich gesendet wird?
Hallo,
Deine Überlegung stimmt so nicht ganz.
Wenn Du den ESP in den DeepSleep schickst, ist die WLAN-Verbindung zum
Router so oder so getrennt. Wenn Du den ESP aufweckst (geht nur per
Reset) dann bau er einen neuen Connect auf. Das dauert bei günstigen
Einstellung um 200-300ms.
Wenn der ESP schläft und jemand will was von ihm ist er für den Router
so oder so nicht erreichbar. Wie lange das "Zielhost ist nicht
erreichbar" bei einer Anfrage an den Router braucht, kann ich nicht
sagen, hat aber mit dem ESP auch nicht direkt was zu tun, das gilt ja
für jede Anfrage im Netzwerk.
Es soll Modi beim ESP geben, die die WLAN-Verbindug irgendwie aktiv
halten, ihn also bei einer Anfrage vom Router antworten lassen. Habe ich
noch nicht geziehlt nach gesucht und ein Beispiel o.ä. ist mir bisher
nicht begegnet.
Gruß aus Berlin
Michael
Die Sendeleistung kann man denke ich nicht direkt im Code einstellen. Es
gibt ein ESP flash tool von Espressif wo es diverse
Einstellmöglichkeiten dazu gibt. Näher beschäftigt hab ich mich damit
aber auch noch nicht.
WLAN Teilnehmer bleiben NICHT in das Netz "eingebucht" wie beim GSM o.ä.
Entweder ein Teilnehmer sendet, oder eben nicht. Entweder er Antwortet
auf einen Request, oder eben nicht.
Das hat höchstens Einfluss auf die Router-Interne Tabelle mit aktiven
Devices.
Sogar per DHCP vergebene IP-Adressen haben bereits ihre Leasetime und
sind somit von der tatsächlichen Aktivität unabhängig.
Michael U. schrieb:> Es soll Modi beim ESP geben, die die WLAN-Verbindug irgendwie aktiv> halten, ihn also bei einer Anfrage vom Router antworten lassen. Habe ich> noch nicht geziehlt nach gesucht und ein Beispiel o.ä. ist mir bisher> nicht begegnet.
Das ist kein Hörensagen. Das nennt sich light sleep und das
Stromspar-Datenblatt von Espressif ist dazu sehr eindeutig. Allerdings
ist das letzte Update dieses Datenblattes und das SDK, mit dem es
funktionieren soll erst von Frühling oder Sommer 2016.
Gründe, warum es noch nichts dazu gibt, sind vermutlich:
. In der Vergangenheit funktionierte es vermutlich nicht.
. Nicht jeder auf der Welt findet sleep modes interessant
(Deepsleep: xx uA; lightsleep: 1 mA)
. Fähigkeiten der Menschen, die ESP826-Videos machen und Blogs darüber
schreiben. Der light-sleep Modus ist anspruchsvoller, beispielsweise
wenn mit dem Beacon vom Router etwas nicht so funktioniert, wie es das
ESP8266 erwartet. ...oder das Lesen des Datenblattes.
Michael, das PDF wurde schon mehrfach verlinkt, ua. hier:
Beitrag "Re: ESP8266/Thread-Steckdose - lohnt sich das?"
Zwischenzeitlich habe ich ein wenig herum gefragt. Mal schauen, ob
(noch) jemand eine Demo dazu macht. Für mich wäre ein funktionierender
light-sleep der erste Grund, ESP8266 zu benutzen...
Grüße
Lars
@Cyblord:
Liegen das Espressif-Datenblatt und wikipedia
(https://en.wikipedia.org/wiki/Delivery_Traffic_Indication_Message)
falsch oder funktioniert das alles niemals oder ist meine
Interpretation/Verständnis falsch oder ist Deine Aussage unvollständig?
Wäre schlecht, wenn hier im Forum zu den Stromsparmöglichkeiten ständig
von mehreren Personen direkt und indirekt falsche Informationen
verbreitet werden.
Hallo,
@Lars R. (lrs): naja, auch für mich gibt es Leben außerhalb der
ESP8266...
>Zwischenzeitlich habe ich ein wenig herum gefragt. Mal schauen, ob>(noch) jemand eine Demo dazu macht. Für mich wäre ein funktionierender>light-sleep der erste Grund, ESP8266 zu benutzen...
und? Hast Du es schon getestet? Ein ESP kostet ja nicht die Welt.
Für mich wird es wohl so enden, daß ich mir einen meiner ESP8266 greife
und es mal austeste. Ob ich dafür nun morgen order erst nächste Woche
Zeit finde, wird sich rausstellen.
Es wäre bei mir erstmal ein "Proof of Concept" wie so vieles, ich
brauche es noch nicht konkret für ein Projekt.
Als Ausgleich scheint hier eine Sonoff-Steckdose den Geist aufzugeben,
meldet sich sauber an, dann 1x schalten und weg ist sie...
Gruß aus Berlin
Michael
Hallo Michael,
>>Zwischenzeitlich habe ich ein wenig herum gefragt. Mal schauen, ob>>(noch) jemand eine Demo dazu macht. Für mich wäre ein funktionierender>>light-sleep der erste Grund, ESP8266 zu benutzen...>> und? Hast Du es schon getestet? Ein ESP kostet ja nicht die Welt.>> Für mich wird es wohl so enden, daß ich mir einen meiner ESP8266 greife> und es mal austeste. Ob ich dafür nun morgen order erst nächste Woche> Zeit finde, wird sich rausstellen.
ESP01 habe ich vermutlich seit über einem Jahr im Schrank und noch nicht
einmal in die Hand genommen. Also immer noch zu zeitig gekauft ;)
Deine Beiträge hier im Forum sind informativ und ich lese sie gern. Wann
Du etwas ausprobierst, ist Deine Sache. Ich habe (fast) alle Zeit der
Welt. Mich interessiert erst einmal die Information. Ich kann nicht
alles ausprobieren, was mich interessiert. Cnlohr habe ich gefragt. Er
schrieb, light sleep sollte man nutzen, aber wann und ob er zu light
sleep etwas macht, bleibt offen.
ESP8266 Light sleep hat für viele Projekte Potential. Umso
interessanter, dass praktisch überall (insbes. hackaday) immer nur
Projekte mit deep-sleep als der Weisheit letzter Schluss dargestellt
werden.
Grüße
Lars
Hallo,
Danke für die Blumen. :)
Ich schätze mal, daß ich das auf jeden Fall mal testen werde. So eine
NodeMCU ist schnell rangesteckt und man kommt auch aus der Arduino-IDE
an die Systemfunktionen ran.
Ist eben für mich oft der schnellste Weg für Experimente.
DeepSleep ist eben einfach und für vieles ausreichend gut nutzbar.
LightSleep wäre eben was für Aktoren, die ständig zuhören sollen.
Da ist mein Problem bisher: das ist bisher dann was, das ohnehin Strom
haben will, also aus dem Netz verorgt wird.
Ein mit Akku versorgter Aktor als Lichtschalter mit Bi-stabilem Relais
wäre allerdings auch für mich sinnvoll. Einfach statt Lichtschalter
einbauen und anklemmen. Mit einem Akkuwechsel zum Laden in sinnvollen
Zeitabständen könnte ich leben. Da liegen ja noch die LiFePO4 sinnlos
bei mir rum...
Gruß aus Berlin
Michael
vielleicht geht ja deep sleep vom ESP mit RTC DS3231 zusammen?
Der ESP programmiert die Alarmzeit in der RTC und geht schlafen, die RTC
weckt den ESP.
Über die Schaltintervalle bestimmt der ESP je nach dem was er für
Aufgaben so hat, alle Minute eine Meldung absetzen oder 1x am Tag.
Zumindest mit den aktuellen "dev"-Nodemcu Builds scheint der Light-Sleep
zu tun was er soll.
Nachdem man in LUA eh "ereignisorientiert" Programmiert, muss das
Programm auch nicht sonderlich angepasst werden.
Einmal "wifi.sleeptype(wifi.LIGHT_SLEEP)" und fertig.
Danach werden Pings etwas langsamer (die ersten > 100ms, bis halt alles
wieder "wach" ist), und die Serielle LUA-Konsole wird sehr Hackelig und
verliert Eingaben.
Stromverbrauch habe ich nur primär gemessen (KD-302), sinkt da von 0.7W
-> 0.5W, inkl. Pollin-Restekisten-Netzteil und 5V -> 3.3V Schaltwandler.
Mit dem Arduino-Framework ist es vmtl. schwieriger, den Light-Sleep
vernünftig einzusetzen, weil die "loop()" ja immer rennen will.
Hallo,
Michael U. schrieb:> Ein mit Akku versorgter Aktor als Lichtschalter mit Bi-stabilem Relais> wäre allerdings auch für mich sinnvoll. Einfach statt Lichtschalter> einbauen und anklemmen. Mit einem Akkuwechsel zum Laden in sinnvollen> Zeitabständen könnte ich leben. Da liegen ja noch die LiFePO4 sinnlos> bei mir rum...
Ja, Akkubetrieb ist eine Variante. Langfristig "verfolge" ich immer noch
die Variante: günstiges, kleines SSR mit Zerocross (zB Reichelt <1 EUR)
+ ESP8266 + Supercap + Kondensatornetzteil (mit Strombedarf bei 230V im
uA-Bereich und ca. 1mA bei 48VDC).
Am SSR kann dann ein 230V-Optokoller zur Prüfung des SSR sowie ein
weiteres Netzteil oder ein mechanisches Relais hängen. Dessen
Standby-Verbrauch ist dann sekundär.
Für die Mietwohnung ist die Idee nicht so relevant. Aber für ein Haus
lautet die Frage langfristig nicht: "Wie viel elektrische Energie
benötigt man?" Sondern: "Wie viel Energie benötigt man, wenn man keine
hat?" sowie "Wie hoch ist der minimale Standby-Verbrauch des Hauses,
wenn man selbst gar nichts verbraucht?" Dh, nachts, wenn Solar nicht
liefern kann und man auch ein BHKW oder Generator nur ungern nur für
einen "hohen" Standby-Verbrauch anschaltet.
Grüße
Lars
Hallo,
Lars R. schrieb:> Für die Mietwohnung ist die Idee nicht so relevant. Aber für ein Haus> lautet die Frage langfristig nicht: "Wie viel elektrische Energie> benötigt man?" Sondern: "Wie viel Energie benötigt man, wenn man keine> hat?" sowie "Wie hoch ist der minimale Standby-Verbrauch des Hauses,> wenn man selbst gar nichts verbraucht?" Dh, nachts, wenn Solar nicht> liefern kann und man auch ein BHKW oder Generator nur ungern nur für> einen "hohen" Standby-Verbrauch anschaltet.
"Stromverbrauch ohne Stromverbrauch" spielt durchaus auch bei mir eine
Rolle wenn auch nicht mit dieser Auswirkung.
Mein Problem ist: Lichtschalter durch WLAN (zur Not durch 433MHz)
ersetzen und eben nur die geschaltete Leitutung zur Verfügung zu haben.
SSR will dafür dann schon wieder zuviel Strom...
http://de.rs-online.com/web/p/bistabile-relais/7181941/
ist etwas knapp in der Leistung, sollte nur ein Beispiel sein.
Gruß aus Berlin
Michael
Hallo,
Michael U. schrieb:> "Stromverbrauch ohne Stromverbrauch" spielt durchaus auch bei mir eine> Rolle wenn auch nicht mit dieser Auswirkung.> Mein Problem ist: Lichtschalter durch WLAN (zur Not durch 433MHz)> ersetzen und eben nur die geschaltete Leitutung zur Verfügung zu haben.> SSR will dafür dann schon wieder zuviel Strom...>> http://de.rs-online.com/web/p/bistabile-relais/7181941/> ist etwas knapp in der Leistung, sollte nur ein Beispiel sein.
Wie meinst Du das, wenn Du schreibst, dass SSR benötigt zu viel Strom?
Habe ich hier einen Denkfehler?
Nach meinem Verständnis hat das SSR auf der Schaltseite einen höheren
Widerstand als ein mechanisches Relais und daher benötigt das SSR auf
der Schaltseite im eingeschalteten Zustand mehr Strom als ein
mechanisches Relais. IMHO ist dies in Relation zu Verbrauchern mit
durchschnittlich 5Watt...100Watt vernachlässigbar und unkritisch.
Auf der Steuerseite sehe ich beim SSR nur die LED mit 10mA@1.2V
http://cdn-reichelt.de/documents/datenblatt/C300/S26M_D02.pdf
Grüße
Lars
@Εrnst B: Danke für die Hinweise.
@Michael U.: Jetzt habe ich Dein Argument verstanden. Das bistabile
Relais benötigt lediglich beim (Um-)Schaltvorgang Energie auf der
Steuerseite. Das aktivierte SSR benötigt immer Energie.
Ich finde diesen light-sleep Modul uninteressant, da er für
Batteriebetrieb immer noch viel zu hoch ist.
Ich denke, WLAN und Monatelanger Batteriebetrieb passen einfach nicht
zusammen. Die Smartphones zeigen uns gerade, wo in etwa das Ende der
Fahnenstange liegt (2000mAH für eine Woche).
Bei Netztbetrieb eines einzelnen ESP kann mir ziemlich egal sein, ob er
nun 1mA oder 100mA aufnimmt. Da werden die Verluste im Netzteil so oder
so höher sein, als was der ESP verbraucht.
Und ein ganzes Haus würde ich ohnehin nicht mit 50 ESP's voll stellen.
Bei der Menge wären mir die 100mA pro Gerät dann doch zu viel. Aber wer
weiss schon, ob mein WLAN Router mit so vielen Clients zurecht kommt und
ob dann noch Netflix richtig funktioniert? Und wie steht es um die
Sicherheit (Ich sag nur Telekom-Router). Ich glaube, da sind die
Konzepte mit separaten Funknetzen und ggf. ein Gateway-Server
sinnvoller.
Cool wäre, wenn ich den USB Stick von der drahtlosen Maus für meine
eigenen Geräte mit verwenden könnte.
Diesen Gedankenaustausch hatten wir doch schon x mal.
Zu Deinen ökonomischen Argumenten (dh. den Bastlergedanken und
allgemeines Interesse einmal hinten angestellt):
Ein Smartphone hat noch anderes zu tun. Ein ESP8266 im light sleep am
Akku kann 3 Monate halten. Man muss kein Telekom-Router verwenden.
Sicherer als WPA (+optional zusätzliche Verschlüsselung der Daten) geht
es kaum. Man kann einen zusätzlichen WLAN-Kanal nehmen. Wie sich 50ESP
in einem Netz machen, ist eine gute Frage. ESP8266 mit 1mA sollte man
natürlich nicht an Netzteilen mit 100+mW Standby-Verlust betreiben.
Wenn es "nur" um eine Bridge oder nur um einen WLAN-Switch geht, warum
soll ich dann überhaupt mit dem ESP8266 anfangen? Das kann ich auch
gleich von einem PI o.ä. erledigen lassen; sei es per Kabel am Router
oder per WIFI. Oder man kauft sich die eine WLAN-Dose.
Ich beobachte nun schon eine Weile. Die 433MHz-Lösung mit
low-cost-Steckdosen hat Ihren Reiz, aber ist genau hinsichtlich des von
Dir angesprochenen Sicherheitsaspektes, Stefan, noch schlechter. Für
viele dennoch eine akzeptable Lösung.
Für Single-IC-Lösungen bliebe nrf51 und nrf52. Im Moment sehr teuer und
wohl auf absehbare Zeit unverändert.
Bei 433MHz mit zusätzlicher (Sicherheits)-Funktionalität kommt ein
separater uC dazu und die Sache artet schnell in alle Richtungen aus und
von einem homogenen System kann keine Rede sein. Wenn jeder Knoten
andere HW und anderen uC hat, will ich keine 50Knoten im Haus haben;
nicht mal 10.
Also STM32F103 und 433MHz-Modul oder 2.4GHz-Modul je nach Wunsch? Wie
viel besser wird das bei Preis, Stromverbrauch und Aufwand? Alternative
2.4GHz-Module belasten dieses Band im Haus ähnlich wie ein zweiter
WLAN-Kanal...
Ich finde jeden konkreten Vorschlag interessant: HW, SW, wie ist das
Funkmesh realisiert und was kostet das alles? Wenn ein Knoten
stromsparend ist, aber sich erst nach 10 Jahren amortisiert, brauch ich
auch keine 50 davon.