ESP8266 Deep-Sleep, BME280 Daten über MQTT senden. |
HTML-код
- Опубликовано: 5 сен 2024
- Bei diesem Video lernen wir die Grundlagen über depp-sleep mit einen NodeMCU bzw. ESP8266. Mit deep-sleep wird am ESP alles ausgeschalten bis auf die RTC (Die Uhr), dadurch ist er in diesem Modus sehr stromsparrend und kann im Batterie Modus betrieben werden.
Nach den Grundlagen hängen wir einen BME280 Sensor an den NodeMCU der uns über MQTT die aktuellen Wetter Daten sendet und sich dann für 15 Minuten in den Tiefschlaf begibt und wie immer gilt, …….JEDER KANN DAS!
Korrektur: Ein Fehler bei den Angaben hat sich eingeschlichen, es sind nicht 0.7A sondern die gemessenen ~0,07A. (Danke Lars)
★☆★ 🛒 On-line shop bei Edi's Techlab 📒 ★☆★
► Edi’s Techlab e-book Shop: edistechlab.co...
► Edi’s Techlab Webseite: edistechlab.com/
★☆★ 💶 Wenn ihr den Kanal unterstützen wollt oder mir ein Bier ausgeben wollt: ★☆★
www.paypal.me/...
Die Links und Videos vom Projekt:
► Der Source Code: github.com/Edi...
► Der Batterie Rechner: www.of-things.d...
► Die Deep-Sleep GRATIS Anleitung: edistechlab.co...
► Grundlagen über MQTT: • 🔴 MQTT in 7 Minuten ei...
► NodeRed auf Raspberry Pi - • Node-red und Mosquitto...
► Pull-up Pull-down Widerstände: - • Pull-up und Pull-down ...
► Beschreibung: - edistechlab.co...
★☆★ Material ★☆★
►BME280 Sensor:
* amzn.to/3bh2fIs - BME280
* amzn.to/2UoqCgw - 3er Set, BME280.
* amzn.to/2J5pnNU - 5er Set, BME280
►Node-MCU ESP8266 Board:
* amzn.to/2U7Urmn - ESP8266 ESP-12F
* amzn.to/2J5wLJ3 - 3er Set, ESP8266 ESP-12F
* amzn.to/3belvGd - 5er Set, ESP8266 ESP-12F
►FTDI / UART / USB mini Kabel:
* amzn.to/3a6Ln6S - FTDI232RL USB zu TTL Serial
* amzn.to/2xkgqgQ - USB auf Mini USB Kabel für den FTDI232
* amzn.to/2Uso9BB - USB-UART Konverter 6-in-1
►Arduino:
* amzn.to/2WAlxEm - Arduino Starter Kit für Anfänger
* amzn.to/3diucRV - Arduino Uno Rev 3
* amzn.to/2JhJ3OR - Arduino Nano
* amzn.to/3a9RqaF - Arduino Mega 2560
►Jumper Wire:
* amzn.to/2WxKwIl - Female to Female F2F 40 STK. je 20 cm
* amzn.to/2xeKb2V - Set 3 x 40 STK. je 20 cm M2M/ F2M / F2F
►Breadboard:
* amzn.to/2QQ7JSL - Breadboard Steckbrett mit 830 Kontakten
►USB Kabel:
* amzn.to/2y01THN - USB A auf Micro USB Kabel 0.5m
* amzn.to/2xkgqgQ - USB auf Mini USB Kabel 0.5m
* amzn.to/2QBxCp7 - USB A zu USB B Kabel 0.5m
►Raspberry Pi:
* amzn.to/2J3w8j4 - Raspberry Pi 3 Starterset
* amzn.to/2Uo9tDu - Raspberry Pi 3
* amzn.to/3djpovz - Raspberry Pi 4 -1GB Kit
* amzn.to/2QDoiBc - Raspberry Pi 4 -1GB
* amzn.to/2WAgkMO - Raspberry Pi 4 -2GB Kit
* amzn.to/2Up5Ehj - Raspberry Pi 4 - 2GB
* amzn.to/2wr0rxD - Raspberry Pi 4 -4GB Kit
* amzn.to/2Uobpfe - Raspberry Pi 4 - 4GB
►Micro SD Speicherkarten:
* amzn.to/399tX8c - SanDisk Ultra 16GB
* amzn.to/2UrI5Ex - SanDisk Ultra 32GB
* amzn.to/3dmbo40 - SanDisk Ultra 64GB
* amzn.to/2J7rFfv - SanDisk Ultra 128GB
* amzn.to/2U68eKa - SanDisk Ultra 256GB
* amzn.to/2U68fxI - SanDisk Ultra 512GB
►Netzteile:
* amzn.to/3beWY3V - 2er-Pack USB Ladegerät 5V/2A
* amzn.to/398WzP9 - Raspberry Pi 4 Netzteil, USB-C, 5.1V, 3A
* amzn.to/2wsS8Bh - HomeSpot Netzteil 3A/5V inkl. 1,5M Micro USB Kabel
------------------------- Mehr von Edi's Techlab ---------------------------
FACEBOOK: edis.techlab.new
INSTAGRAM: / edistechlab
WEBSEITE: edistechlab.com
TWITTER: / edistechlab
PATREON: / edistechlab
IMPRESSUM: edistechlab.co...
---------------------------------------------------------------------------------------------
Meine Videos enthalten bezahlte Produktplatzierungen. Alle Links mit "*" sind Amazon oder Banggood Affiliate Links. Edi’s TechLab ist Partner am Amazon / Bangood Affiliate Partner Programm
Alle Geräte wurden selbst erworben.
Genial. Mir gefällt deine Aussprache und die Darstellung.
Hi, vielen Dank, ich versuche mein bestes so gut es geht Deutsch zu sprechen :-), nicht so einfach als Österreicher der in der Schweiz lebt.
Vorbildlich!!! Vielen Dank, genau das was ich gesucht habe❤
Vielen Dank für das Projekt!
Das Rechenbeispiel ab 5:41 hat sich ein kleiner Fehler eingeschlichen.
Du schreibst bei 5 V sind es 0,7 A.
Nach der Rechnung braucht man bei 3,7 V dann 0,1 A. Das ist zwar richtig, aber die 0,7 A bei 5 V sind nicht richtig, denn es waren 0,07 A.
Ansonsten hätte man bei geringerer Spannung auch weniger Strom benötigt 😉
Am Ende der Rechnung gehen auch noch mA und mAh durcheinander.
Top. Konsequent nachvollziehbar präsentiert. Danke!
Hallo, freut mich sehr zu hören und liebe Grüsse Edi
Super erklārt. vielen Dank. Eine Bitte hātte ich noch: wenn du Sourcecode zeigst, bitte etwas zoome, damit man besser lesen kann.
Viel Erfolg und weiter so...
Hallo Kemal, vielen Dank für deine Anregung, werde ich bei den nächsten Videos so umsetzen. Auf der Edis-Techlab Webseite findest du den Code als PDF auch zum herunter laden. Liebe Grüsse Edi
Sehr gut erklärt. Du hast mein Abo! Danke
Freut mich, danke!
Super Video, und vor allendingen alles noch als PDF Dokumentiert zum abheften. So sollte es bei allen RUclipsrn sein. Weiter so.
Hallo Juergen, vielen Dank für dein Lob, freut mich das es dir gefällt. Liebe Grüsse Edi
Hallo Edi!
Sehr gut erklärte Videos, Respekt 👍🏼
Nur der Vollständigkeit halber, in der Auflistung deiner Messwerte ist dir ein Fehler unterlaufen. Gemessen wurden ~0,07A, bei deiner Rechnung sprichst/schreibst du 0,7A.
Hallo Lars, vielen Dank, ich habe eine Korrektur in der Video Beschreibung eingefügt. Liebe Grüsse Edi
Schöne Sky-Dweller! Aber sonst auch gut erklärt!
Danke GTS Dude, ja die Uhr macht mir sehr viel Freude :-)
Funktioniert prima... solange der BME280 funktioniert. Fällt dieser aus, kann man nicht mehr sehen, was los ist, da sich der ESP8266 nicht mehr mit dem WIFI verbindet. Wäre es nicht sinnvoller, den BME-check erst durchzuführen, wenn WIFI und MQTT schon verbunden sind, und ggf eine Fehlermeldung per MQTT zu versenden, falls der BME280 nicht funktioniert?
Leider kenn ich mich nicht gut genug aus, ich kann nur umsetzen, was ich vorgesetzt bekomme.
Hallo Edi, tolles Video, aber wo ist jetzt die Einbindung in MQTT beschrieben?
Hallo, ich verstehe die Frage nicht genau, ab 4:03 zeige ich den Sketch wo der Sensor die Daten mittels MQTT zum Server sendet. In diesem Video geht es um Deep-Sleep mit einem praktischen Beispiel und nicht um die Erklärung von MQTT. Wenn du genaueres über MQTT erfahren möchtest, es gibt dazu schon ein paar Videos bei Edi' Techlab.
Video zu MQTT: ruclips.net/video/kZDhyqrmbJo/видео.html
Praxis Beispiel mit MQTT: ruclips.net/video/QhecPNkWBQ0/видео.html
Gruss Edi
👌
👍
Hey Edi, wie immer super Video! Eine Frage: Ist es möglich ein Relais mit einem Esp über NodeRed zu steuern?
Hi Tortilladip, na klar ist es möglich ein Relais über NodeRed zu steuern. Nächsten Samstag kommt ein Grundlagen Video über Pull-up und Pull-down Widerstände, aber dann.....
kommt dein gewünschtes Video dran.
Liebe Grüsse und ein schönes Wochenende Edi
Hallo Edi, anstatt der Drahtbrücke kann auch eine Schottky Diode eingebaut werden. Das erspart den ein- und ausgebau der Brücke beim Programmieren.
Hallo Thomas, vielen Dank für den Tip und liebe Grüsse Edi
@@EdisTechlab Wie funktioniert das mit einer Schottkydiode und wie muss sie eingebaut werden? AnFi
Hallo Edi, mal wieder sehr anschaulich erklärt. Leider führt der Link ins Leere und nicht zum PDF.
Hallo Oldworldmac, vielen Dank für den Hinweis, der Link ist wohl beim Umbau der Webseite verloren gegangen. Ich habe ihn neu erstellt.
Viel Spass mit der Anleitung und liebe Grüsse Edi
@@EdisTechlab Super, vielen Dank!
Bitte gerne. Liebe Grüsse Edi
Moin, super Video erstmal. Sind die Befehle für den Deep-Sleep bei einem ESP32 gleich oder gibt es da Unterschiede?
Hallo Tim, das deep sleep funktioniert sehr ähnlich wie beim ESP8266 mit mehr Funktionen. Es sind 16 RTC Pins verbaut die zum aufwecken verwendet werden können.
Es gibt folgende Betriebsmodi beim ESP32: Aktiv, Modem Sleep, Light Sleep, Deep Sleep und Hibernation.
Liebe Grüsse Edi
@@EdisTechlab Vielen Dank für die Info.
Hallo-super erklärt - ich kann es jetzt! Ich habe einen ESP01 mit einem Taster (3:04 fürs aufwecken) an meinen Briefkasten angebaut - funktioniert, auch Deine Erklärungen zum MQTT habe ich umgesetzt! Aber eine Frage: Ich wollte nun den 10k Widerstand gegen Ground und einen ReedKontakt gegen 3,3V ersetzen, damit der Kontakt öffnet wenn die Gartentür geöffnet wird. Aber das hat nicht funktioniert- warum nicht?
Hi, der Widerstand ist ein pull-up Widerstand, warum möchtest du den ersetzen? Um den ESP aus dem Tiefschlaf zu wecken muss der Reset Pin kurz auf GND gezogen werden. Was du mit einen ReedKontakt auf 3,3V setzen meinst verstehe ich leider nicht.
Kurz gesagt, am Reset Pin liegt immer HIGH an, und um in aus den Tiefschlaf zu wecken muss der Reset Pin kurz auf GND gezogen werden.
Liebe Grüsse Edi
Gibt es eine Möglichkeit den esp z.B. 11Std. In den Deepsleep zu bringen?
Hallo, nein der ESS8266 kann max. für 71 Minuten in den deep-sleep versetzt werden.
Liebe Grüsse Edi
Moin, ich weiß ich habe schon einmal etwas zu diesem Video gefragt. 1-2 Fragen habe ich allerdings noch: Warum wird bei der reconnect Funktion der ESP nicht auch in den Deep-Sleep versetzt? Inwiefern ist dies hier nicht notwendig oder wird die Funktion noch für einen anderen Fall aufgerufen außer beim Verbindungsversuch am Anfang? Und macht es vielleicht Sinn, die Abfrage der Sensoren erst nach der MQTT-Verbindung durchzuführen? Auf diese Weise würde ein potenzieller Kabelbruch im Dashboard auffallen, da der ESP dann dauerhaft auf active steht
Hallo Tim,
ja man könnte den ESP auch in den Deep-sleep setzen wenn die Verbindung zu MQTT nicht zustande kommt. Sollte mein Broker ein Problem haben, dann bekomme ich das sowieso mit und alle Sensoren fallen aus, dass war der Grund hier kein Deep-Sleep zu verwenden.
Die Reihenfolge Sensor-WIFI-MQTT bin ich einfach so gewöhnt, und sollte der Sensor nicht verfügbar sein, dann siehst du es auch auf dem Dashboard, soweit ich mich erinnern kann verbindet sich dann MQTT nicht. Du kannst es ja sehr gerne auf beide Varianten versuchen und uns dein Resultat mitteilen, würde mich sehr darüber freuen und liebe Grüsse Edi
@@EdisTechlab ok alles klar. werde versuchen dran zu denken meine Variante hier zu posten wenn ichs fertig habe
Hallo Edi! Interessantes Video! Aber nach dem Dialekt nach bist du aber kein Schweizer oder?
Hallo Meins Da, ja das stimmt ich bin aus der Steiermark von Österreich, lebe aber schon seit 2004 in der Schweiz. Liebe Grüsse Edi
@@EdisTechlab man bemerkt es noch immer ;) NAch dem Dialekt musst du aus der nähe Bruck/Mur sein oder? Aber interessante Beiträge hast du. Natürlich abo schon abgeschlossen!
Hallo, ja aber ganz knapp vorbei, ich komme aus dem Bezirk Leoben. Liebe Grüsse Edi
Hallo und danke für die vielen tollen Videos. Eine Frage habe ich allerdings an dich. Ist es prinzipiell möglich Daten von einen Nodemcu, mit BME280 über MQTT an einen Rpi mit iobroker zu senden und in dem gleichen Sketch noch die aufgenommenen Daten parallel direkt an Thingspeak zu senden!? Wenn ja,wie müsste der Sketch aussehen? Gruß Thomas
Hallo Thomas, ich kenne zwar Thingspeak nicht aber der Funktion über MQTT ist so aufgebaut, dass man Informationen überall im Netzwerk lesen bzw. schreiben kann. Du sendest mit dem MCU die Daten vom BME280 an den Broker (publish). Mit subscribe topic auf Thingspeak (zum Broker) kann man diese Werte dann auch lesen.
Wenn du mehr über MQTT und wie es funktioniert erfahren willst, empfehle ich dir dieses Video. ruclips.net/video/ItcGWCvYa8o/видео.html
Liebe Grüsse Edi
Hallo Edi, ich schaue mir viele Ihrer Videos an, die, wie Ihre Bücher, mir äußerst nützlich sind. Ich habe eine Frage allgemeiner Natur und stelle sie einfach hier: ich experimentiere ein Bißchen mit dem ESP8266 unter Micropython auf einem kleinen Breaboard. Der ESP8266 ist per MicroUSB an den PC geschaltet, von wo die Python Scripts geladen werden. Das Breaboard wird per Netzteil-Adapter-Modul mit 3,3V und 5V versorgt. Nun meine Frage: muss ich den ESP8266 zusätzlich an die Spannungsversorgung und Ground des Breadboards anschließen? Er wird bereits per USB Kabel vom PC versorgt. Ich dachte wegen Potentialausgleich o.Ä. Vielen Dank im Voraus für Ihre Antwort und herzliche Grüße.
Hallo Jose, es freut mich sehr, dass dir meine Videos / Bücher helfen deine Projekte umzusetzen. Bei einer externen Spannungsversorgung und der Versorgung über USB, sollte auf jeden Fall GND verbunden werden.
Liebe Grüsse Edi
@@EdisTechlab Hallo Edie, herzlichen Dank für die prompte Antwort. Ja, deine Videos und Bücher (habe kürzlich das über MQTT bezogen) sind einfach Klasse, weil fachlich fundiert und Praxis orientiert. Einzig wünsche ich mir, du würdest unter Python, Micropython und beispielsweise Thonny deine Projekte präsentieren, aber auch so habe ich einen großen Mehrwert davon! 👍🏼
Hallo Jose, ich programmiere schon sehr viele Jahre in C und deswegen sind alle Videos bis jetzt auch in C programmiert. Python ist sicherlich auch spannend und ich sollte schon lange einmal dahinter, aber ich möchte derzeit nicht zweigleisig fahren. Aber Photon ist auf meiner ToDo Liste :-)
Liebe Grüße Edi
Hallo Eddi, ist es auch möglich den ESP per Button UND nach einer bestimmten Zeit zu wecken.
Sprich wenn innerhalb des DeepSleeps der Button gedrückt wird wacht er auf, ud wenn nichts gedrückt wird wacht er eben nach der definierten Zeit auf?
Eine zweite Frage bezieht sich bei ESP8266 auf die DeepSleep Dauer, hatte gelesen, das maximal 71 Sekunden möglich sind. Du erklärdt, dass sogar 15Minuten der 8266 schlafen kann.
Danke und Gruss
Hallo Adrian,
ob Button und Zeit zum Aufwecken geht weiss ich nicht, irgendwie bekommt man das aber Sicherlich hin wenn man will. Beim Aufwecken musst du den RST Pin auf GND ziehen, dass ist die Bedienung dazu.
Wo hast du gelesen, dass der Deep-Sleep nur 71 Sek. lang möglich ist? Richtig ist 71 Minuten.
Liebe Grüsse Edi
Hast du auch ein Video wo man den ESP auf einen Lightsleep versetzen kann ?
Hallo Michael, nein derzeit habe ich nur deep-sleep.
Liebe Grüsse Edi
@@EdisTechlab okay schade. Funktionieren die digitalen Pins denn noch im DeepSleep ?
Während dem Deep-Sleep ist alles ausgeschaltet und der ESP startet erst wieder hoch, wenn RST auf LOW gesetzt ist.
Liebe Grüsse Edi
@@EdisTechlab okay, aber Danke für die Superschnelle Antwort. Darf ich noch eine kritik loswerden ? Gilt aber nicht nur für dich, sondern für viele Maker: sehr viele videos werden verkompliziert. Ich finde, dass man solche Videos sehr sehr simpel halten sollte. In deinem Beispiel, solltest du wirklich nur zeigen, wie der DeepSleep ausgelöst wird, und wieder Rückgängig gemacht wird. Nichts weiter. Also kein Raspi oder keine "Buttons" zum reaktivieren und etc.. Also wirklich sehr schlank gehalten. Ob man das mit eine PushButton wieder reaktivieren kann, das müsste auch ein Anfänger wissen. Also, wirklich immer sehr sehr simpel halten. Hoffe, du verstehst was ich meine. Es gibt RUclipsr, die wollen uns den UltraSchall sensor erklären. Anstatt es sehr simpel zuu halten, fügen die soviele Sachen bei, dass es verkompliziert wird. Da werden plötzlich LED eingebunden, PushButtons eingebunden. Dislays eingebunden. TemperaturSensoren mit eingebunden... sodass alles verkompliziert wird. Ansonsten finde ich deine Videos, und die Arbeit die du hier machst, super.
@@EdisTechlab hatte es vergessen: für deine aktive Kommunikation, klicke ich einmal auf dein Vdieo :d sorry, aber verboten ist das ja heutzutage nicht mehr. Die großen Website zwingen ja heutzutage deren User, auf irgendwelche Banner zu klicken. Ich mache es hiermit freiwillig.
Hallöchen, woher wissen wir denn die Watt Anzahl von dem Beispiel?
Hallo Lucas, durch das Messen können wir die Wattzahl ermitteln, bei 5:30. Wenn du kein Messgerät hast, im Datenblatt von den Bauteilen ist auch immer die Leistung angegeben. Liebe Grüsse Edi
Gibt es irgendeine Möglichkeit den DeepSleep so zu verlängern, dass man nur zweimal pro Tag Sensordaten schickt?
Hallo, nein, die max. Deep-sleep Zeit ist 71 Minuten.
Liebe Grüsse Edi
Hallo Edi, mit Hilfe deiner Videos habe ich einen Raspi mit MQTT als Broker aufgesetzt und Node-red.
Dazu habe ich einen ESP8266 mit BMP180 die Temperatur und den Druck publishen lassen und dazwischen für 3 Minuten in den deebSleep geschickt. Das funktionierte einige Male und endete dann dauerhaft in "Attempting MQTT connection...failed, rc=-2 try again in 5 seconds".
Nachdem ich den raspi und den ESP mal vom Strom getrennt und beides neu gestartet habe wieder das gleiche. Was kann ich deiner Meinung nach tun um den Fehler in den Griff zu bekommen?
Hallo, warum der ESP sich nicht mit dem MQTT Server verbinden kann lässt sich aus der Ferne leider nicht analysieren.
Liebe Grüsse Edi
Sorry, aber statt 0,7 wurde nur 0,07 A verbraucht . In der Rechnung wurde jedoch mit 0,35 richtig weiter gerechnet. Deepsleep wurde guterklärt. Manchmal lassen sich CPUs auch durch interne RTC oder Interrupts aufwecken.
Hallo Viktor, das stimmt, deswegen steht in der Videobeschreibung die Korrektur von diesem Fehler.
Liebe Grüsse Edi
später - doch endlich mal auf einen esp gespielt.... alles ( fast ) OK
die adafruit - BME lib geht leider nicht auf die lokale höhe ein ( nach meinem wissen ) und somit ist der angezeigte luftdruck nicht der lokale luftdruck - was auch der vergleich mit lokalen wetterdaten zeigt .... ua die lib bme280t / bme280-t ist da dann ggf die bessere lösung. mit angabe der lokalen höhe kommt man den wetterstationsdaten sehr nahe ...
happy hacking
Hallo Edi, ein sehr gutes Video mit einem interessanten Ansatz den ESP8266 als externe Datenquelle für Temperatur, Luftfeuchtigkeit etc. zu verwenden. Genau danach hatte ich gesucht. Woran ich momentan hadere ist die externe Stromversorgung mittels Akku. Ich hatte mir überlegt, dies mit einer Powerbank zu erledigen. Dummerweise haben die in der EU eine Abschaltautomatik und der ESP8266 zieht wohl im Deep Sleep zu wenig Strom. Hast Du eine Idee wie man die Powerbank trotzdem verwenden könnte? VG Marco
Hallo Marco, ja das Problem mit der Abschaltung ist bekannt und ich habe dafür leider auch keine Lösung. Am Besten verwendest du einen Akku für dein Vorhaben.
Liebe Grüsse Edi
welcher ESP8266 verbraucht 0,7 A ?????
Hallo Bernd, Beschreibung lesen, dort steht die Korrektur,
Korrektur: Ein Fehler bei den Angaben hat sich eingeschlichen, es sind nicht 0.7A sondern die gemessenen ~0,07A. (Danke Lars)
Gruss Edi
Greeting
My name is Djole and I live in a forest in Serbia.
I have hives and one WiFi scale under one hive.
But it consumes a lot of fast battery. The scale sends the measurement data to the Thingspeak site.
Unfortunately I don't know how to program and my knowledge comes down to copy and paste.
Would you be kind enough to help me and insert in the sketch this your command to save battery. I would send you by e-mail this sketch of mine.
Thank you very much in advance.
Big greetings from the forest.