Forum: Mikrocontroller und Digitale Elektronik Daten zwischen ESP32 und RaspberryPi verschicken


von Johannes (Gast)


Lesenswert?

Einen schönen guten morgen,

ich habe mehrere ESP32 an denen ich verschiedene Sensoren hängen habe 
(temperatur, luftfeuchtigkeit, hal)
Diese möchte ich nun zum Raspberry-Pi schicken, wo ich sie mir dann über 
node-red darstellen lassen kann.

Meine Frage ist nun, wie würdet ihr die Daten am Besten zum Raspberry-Pi 
schicken?
Ich habe (bisher für mich) zwei Möglichkeiten gefunden.

Direkt via MQTT
vorteil: jeder ESP kann mit dem Raspberry-Pi direkt kommunizieren
Nachteil: Stromverbrauch?

Über ESP-Now
ich habe mehrere ESP sender, welche die Daten an einem ESP receiver 
schicken. Dieser schickt die Daten dann via UART an dem Raspberry-Pi.
Da hier gar kein Wifi genutzt wird, erhoffe ich mir weniger 
Stromverbrauch?

Da die Sender natürlich mit Battereien betrieben werden, sollten diese 
einen möglichst geringen Stromverbrauch haben.

Welche Methode verwendet ihr? Oder noch eine ganz andere?
Wie ist das mit dem Stromverbrauch via MQTT bzw. ESP-Now?

von STK500-Besitzer (Gast)


Lesenswert?

Meine ESP-Sensoren senden die Daten per HTTP-Post an einen Webserver auf 
dem Raspi. Geht auch.

von Michael U. (amiga)


Lesenswert?

Hallo,

zu ESPNow kann ich nichts sagen, bisher nie genutzt.
ESP32 mit BME280 und MAX44009 sendet alle 5 Minuten Daten per MQTT an 
einen RasPi mit Mosquitto. Akku ist ein LiFePO4 1500mAh, läuft damit 2 
Monate.
Akku wird dann getauscht und extern geladen.
Andererseits laufen hier noch 5 Sensoren seit gut 10 Jahren mit RFM02 
auf 433MHz, Tiny45 und FOST02, die senden alle 2 Minuten Temperatur und 
Feuchte als Datenpaket. Empfangen macht seit wohl 5 Jahren jetzt ein 
RFM12 an einem ESP8266, der das dann als MQTT weiterschickt. Laufzeit 
hier ca. 2 Jahre mit einer CR123A Batterie...

Gruß aus Berlin
Michael

von J. S. (jojos)


Lesenswert?

Einen sparsamen Controller und Funkmodul verwenden, 1 μA Ruhestrom und 
40 mA statt 400 mA Peak beim Senden. Dann hält eine Batterie auch 
mehrere Jahre. Ein Dualcore mit 240 MHz und mehreren Megabyte Flash um 
ab und zu ein paar Bit Daten zu übertragen braucht einfach unnötig viel 
Strom.

von Wolfgang (Gast)


Lesenswert?

Johannes schrieb:
> Da die Sender natürlich mit Battereien betrieben werden, sollten diese
> einen möglichst geringen Stromverbrauch haben.

Ein Sender braucht nur Strom, wenn er sendet. Ein Empfänger braucht 
dauernd Strom, solange er empfangsbereit ist. Es ist also eine Frage des 
Timings (Duty Cycle Sleep vs. Running), Häufigkeit der Aussendung, 
Energie pro Aussendung.
WLAN mit bidirektionaler Kommunikation und relativ viel Aufwand für den 
Verbindungsaufbau ist also eher kritisch zu beurteilen.

Ein schlafender Controller braucht meist nicht viel Strom, wenn das 
Drumrum sauber abgeschaltet ist.

Möglichst gering braucht die Stromaufnahme allerdings nicht zu sein - 
das geht unnötig ins Geld. Es nützt überhaupt nichts, die Stromaufnahme 
wesentlich unter die Selbstentladung der Batterie zu drücken.
Es reicht, wenn das Ding so sparsam arbeitet, dass du mit dem 
Batteriewechselintervall leben kannst.

von Sven (Gast)


Lesenswert?

Die Frage ist wie zeitig willst du die Daten haben?
Ein Esp hat eine menge Speicher. Du kannst auch Sensorwerte zwischen 
speichern. Dann irgendwann Wlan einschalten und alle werte absenden.

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.