Forum: Mikrocontroller und Digitale Elektronik IoT: Wireless Sensor ESP8266 vs NRF24L01


von Chris S. (chris_05)


Lesenswert?

Hallo Mikrocontroller-Gemeinde

Ich arbeite an einem IoT-Projekt zur Temperatur- und Feuchtemessung. 
Hierbei sollen Stand-Alone Wireless Sensoren Messdaten auf einem App 
visualisieren. Der Grossteil der Komponenten ist evaluiert. Gerne würde 
ich euren Input zum Thema ESP8266 vs NRF24L01 hören.

Nachfolgend findet Ihr erstmal die Eckdaten meines Projektes:

Sensor:
- BME280
- Stand-Alone Betrieb (Coin-Cell)
- Lange Betriebsdauer (mehrere Monate)
- Miniatur Ausführung (so klein wie möglich)
- geringe Reichweite: <10m

Gateway:
- Messdaten anzeigen über Gateway oder direkt an Visualisierung
- Gateway: Raspberry Pi alternativ Arduino
- aktueller Favorit für Visualisierung: Blynk
- mehrere Sensoren

Und noch einige Gedanken zum Funkmodul:

ESP8266:
+ kein Gateway nötig -> direkte Anbindung Blynk
- hoher Stromverbrauch -> mehrere Monate Betrieb kritisch

NRF24L01:
+ Geringer Stromverbrauch
- Gateway erforderlich für die Weiterleitung der Daten an Blynk

Aktuell tendiere ich zum ESP8266, da der Gateway entfällt. Jedoch 
befürchte ich, dass dies aufgrund des Stromverbrauches nicht möglich 
sein wird.


Ich freue mich auf eure Kommentare und Inputs!

mfg

: Verschoben durch User
von Stefan F. (Gast)


Lesenswert?

Den ESP8266 kann du nicht sinnvoll mit Knopfzelle betreiben. Wie häufig 
soll er denn aktiv werden und wie lange wäre das dann jedesmal?

von Chris S. (chris_05)


Lesenswert?

Das habe ich auch gelesen aber zusätzlich habe ich noch so Workarounds 
gefunden. Hat schon jemand Erfahrung gesammelt mit einem ESP8266 und 
Knopfzelle?

Ups habe ich vergessen zu erwähnen.

 - 1 Messung pro Stunde

von Stefan F. (Gast)


Lesenswert?

Chris S. schrieb:
> Hat schon jemand Erfahrung gesammelt mit einem ESP8266 und
> Knopfzelle?

Das brauchst du gar nicht erst versuchen, weil keine normale Knopfzelle 
die nötigen 400mA liefern kann.

von Chris S. (chris_05)


Lesenswert?

Stefanus F. schrieb:
> Das brauchst du gar nicht erst versuchen, weil keine normale Knopfzelle
> die nötigen 400mA liefern kann.

Ich hatte da an sowas gedacht: 
https://www.youtube.com/watch?v=IYuYTfO6iOs

von Daniel von Elkos-Prints.de (Gast)


Lesenswert?

Chris S. schrieb:
> Stefanus F. schrieb:
> Das brauchst du gar nicht erst versuchen, weil keine normale Knopfzelle
> die nötigen 400mA liefern kann.
>
> Ich hatte da an sowas gedacht: Youtube-Video "#58 ESP8266 Sensor runs 17
> days on a coin cell/transmits data to sparkfun.com and ubidots.com"

Solche Videos wurden mit einem ESP im deep sleep modus durchgeführt. Das 
heißt, du kannst keine Berechnungen während dieser Zeit ausführen. 
Selbst wenn du nur stündlich den ESP wieder ausweckst wird es mit der 
Knopfzelle definitiv nicht hinhauen.

Zum nrf24l01 habe ich leider keine Erfahrung.

von Timmo H. (masterfx)


Lesenswert?

Der Nrf24l01 läuft problemlos über ein Jahr aus einer cr2032 mit einem 
xmega E mit 5 Sek Sendeintervall.
Das Problem beim esp8266 ist hauptsächlich dass der Reconnect zum wlan 
nach dem deep sleep ca. 2-4 Sekunden benötigt. Das lässt sich schlecht 
mit nem Elko puffern.

: Bearbeitet durch User
von ntldr (Gast)


Lesenswert?

Ich hab für ein ähnliches Projekt (allerdings mit dem ESP32) mir eine 
ESP-Now <-> WLAN Brücke gebastelt.

Dazu: Zwei ESP32s per Serial Port verbunden. Einer läuft im WLAN Modus 
einer als ESP-Now Empfänger. Wenn jetzt eine Nachricht per ESP-Now 
reinkommt, wird die über die serielle Verbindung weiter ans WLAN 
gereicht. Der ganze Aufbau steht bei mir dann im Haus mit permanenter 
Stromversorgung.

Der Vorteil im Batteriebetrieb mit ESP-Now ist nämlich, dass der 
komplette WLAN Handshake für den Sensor entfällt. Ich bin damit bei 
unter 50ms, um die aktuelle Temperatur + Luftfeuchte zu übertragen.

von ntldr (Gast)


Lesenswert?

Wobei ich überlesen hab, dass du ein Gateway vermeiden willst. Mit 
meiner Lösung ist dieser Vorteil natürlich dahin.

von Chr. M. (snowfly)


Lesenswert?

Vorschlag:
Nimm einen esp32, nutz dessen Energiesrparfeatures
und schalte WLAN nur ein bei externener Stromversorgung
(oder nimm BT des esp32)

von Torsten R. (Firma: Torrox.de) (torstenrobitzki)


Lesenswert?

Chris S. schrieb:
> Gerne würde
> ich euren Input zum Thema ESP8266 vs NRF24L01 hören.

Wieso schränkst Du Deine Auswahl auf diese beiden Lösungen ein? Welche 
Reichweiten hast Du zu überbrücken?

mfg Torsten

von Reiner (Gast)


Lesenswert?

Mit einem esp32 und dem ULP Modus kann man ganz tolle dinge machen. Der 
ULP ist quasi soetwas wie ein kleiner Prozessor im Prozessor. Da kannst 
du deine Temperatur mit ein paar µA abfragen und wenn diese sich 
verändert oder nach einer Stunde den Hauptkern aufwecken die Daten 
senden und wieder abschalten.

ULP ist allerdings etwas kompliziert. Ich habe bei meinen Sensoren einen 
AT Tiny dafür verbaut. Dieser misst und vergleicht und sendet wenn es 
nötigt ist über einen 8266 die Daten an den Server. Mit einem alten 
Handy Akku (~500mA) hält das System bei ~1 Übertragung pro 15 Minuten 
ungefähr 6 Monate.

von Michael U. (amiga)


Lesenswert?

Hallo,

Timmo H. schrieb:
> Das Problem beim esp8266 ist hauptsächlich dass der Reconnect zum wlan
> nach dem deep sleep ca. 2-4 Sekunden benötigt. Das lässt sich schlecht
> mit nem Elko puffern.

ESP8266 mit BME280 und LH1750, mQTT als Portokoll, braucht normalerweise 
unter einer Sekunde für wLN-Connect, MQZZ connect und Message senden.
Bedingung ist natürlich feste IP, kein DHCP usw.

Von den seinen Anforderungen ist aber ein ESP mehr als ungünstig.
Ich habe hier noch fast 10 Jahre alte Sensoren mit ATiny45, FOST02 und 
HP03S und RFM02 im Einsatz, da hält eine CR123A rund 3 Jahre.

Die Datenweiterleitung erledigt inzwischen eine Bridge mit RFM12 und 
ESP8266 als MQTT-Messages.
Mit nRF24 würde ich wohl ähnliche Wege gehen, einen ESP8266 als Bridge 
und Web/App-Server mit USB-Loader in eine Steckdose. Hängt natürlich von 
seinen raumlichen Wünschen ab, was über welche Entfernungen erreichbar 
sein soll.

Gruß aus Berlin
Michael

von Chris S. (chris_05)


Lesenswert?

Danke für eure Kommentare!

Reichweite wäre <10m (Indoor).

Der ESP32 wäre durchaus eine Variante. Aber nach euren Kommentaren sowie 
meinem bisherigen Wissensstand scheint es schwierig zu werden einen ESP 
mit Knopfzelle in Miniaturausführung zu bauen.

Von da her wird es vermutlich ein NRF Modul. Oder allenfalls BLE, wie 
ist eure Erfahrung hierzu?

von Torsten R. (Firma: Torrox.de) (torstenrobitzki)


Lesenswert?

Chris S. schrieb:

> Von da her wird es vermutlich ein NRF Modul. Oder allenfalls BLE, wie
> ist eure Erfahrung hierzu?

BLE ist dafür ausgelegt, mit einer Knopfzelle auszukommen. 10m sind 
überhaupt kein Problem. Nordic hat auch Cortex M0/M3 Controller mit BLE 
Peripheral im Angebot.

von Chr. M. (snowfly)


Lesenswert?

Chris S. schrieb:
> meinem bisherigen Wissensstand scheint es schwierig zu werden einen ESP
> mit Knopfzelle in Miniaturausführung zu bauen.

Das bezieht sich hauptsächlich auf den 8266,
dort wurde u.a. die SleepModi versaubeutelt
das macht der 32er viel besser auch ohne ULP.
Und WLAN zieht zuviel Strom wo der 32 ja BT hat.

von Chris S. (chris_05)


Lesenswert?

Ich werde Tests mit dem NRF24L01+ und mit dem ESP32 BLE Modul 
durchführen.

Ich melde mich wieder nach den ersten Tests.

Danke für eure Inputs.

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.