sglabs_tech

ESP-NOW statt WLAN: Sensordaten ohne Router senden

ESP-NOW statt WLAN: Sensordaten ohne Router senden

Titelbild: KI-generiert

Sensordaten direkt zwischen Boards senden ganz ohne Router. Nutzt du ESP-NOW schon für deine Sensor-Knoten?

Tipp

WLAN ohne Router nutzen

ESP-NOW verbindet ESP32-Boards direkt. Das spart die lange Router-Anmeldung und schont bei Batteriebetrieb wertvolle Energie.

Stand: ESP32, Arduino IDE 2

Schritt 1

MAC-Adresse auslesen

Lies zuerst auf dem Empfänger die WLAN-MAC-Adresse aus und notiere sie für die Adressierung im Sender-Sketch.

WiFi.macAddress()

Stand: ESP32, Arduino IDE 2

Schritt 2

Datenstruktur anlegen

Definiere in beiden Skripten die exakt gleiche Datenstruktur für Sensorwerte wie Temperatur und Luftfeuchte.

typedef struct { float temp; float hum; } Data;

Stand: ESP32, Arduino IDE 2

Schritt 3

Sender einrichten

Initialisiere ESP-NOW, trage die MAC-Adresse des Empfängers als Peer ein und sende das Datenpaket direkt ab.

esp_now_send(peerAddr, (uint8_t *) &data, sizeof(data))

Stand: ESP32, Arduino IDE 2

Schritt 4

Empfänger programmieren

Registriere eine Callback-Funktion auf dem Empfänger, die eingehende Pakete liest und im Seriellen Monitor ausgibt.

esp_now_register_recv_cb(OnDataRecv)

Stand: ESP32, Arduino IDE 2

Tipp

Reichweite optimieren

Eine niedrigere Datenrate erhöht die Reichweite und Stabilität der Funkübertragung durch Wände spürbar.

esp_wifi_set_protocol(WIFI_IF_STA, WIFI_PROTOCOL_LR)

Stand: ESP32, Arduino IDE 2

Stand: ESP32, Arduino IDE 2 · jeder Schritt selbst am Gerät nachvollzogen

Quellen

Weitere Tipps