ESP-Now: Schnelle und kabellose Kommunikation für ESP32 & ESP8266
Das ESP-NOW Netzwerk
ESP-NOW ist ein von Espressif entwickeltes verbindungsloses Kommunikationsprotokoll, das eine kurze Paketübertragung ermöglicht und dafür das 2,4-GHz-Band verwendet. Mit diesem Protokoll können bis zu zwanzig ESP8266 oder ESP32, auf einfache Weise miteinander kommunizieren und Nachrichten von bis zu 250 Byte austauschen. Jedes Board kann mit ESP-NOW als Receiver, Transmitter oder Trans-receiver eingesetzt werden und es können Reichweiten mit Antennen von bis zu 400 Meter erreicht werden. Mit den eingebauten Antennen sollte die Kommunikation in einem mittelgrossen Haus problemlos Möglich sein.
Vor der Kommunikation zwischen den Geräten ist ein Pairing erforderlich. Nach dem Pairing ist die Verbindung sicher, ohne dass ein Handshake erforderlich ist. Wenn eines der Boards plötzlich den Strom verliert oder zurückgesetzt wird, verbindet es sich nach dem Neustart automatisch mit seinem Gegenstück, um die Kommunikation fortzusetzen.
Die Daten können unidirektional oder bidirektional sein, d. h. single-duplex oder full-duplex und die meisten Datentypen werden unterstützt.
Die Daten können verschlüsselt oder unverschlüsselt übertragen werden, und es ist keine externe Wi-Fi-Quelle oder ein Router erforderlich.
ESP-NOW Netzwerk Modi
Wir haben die Möglichkeit das ESP-NOW Netzwerk in vielen Konfigurationen einzurichten und können darin ESP8266 und ESP32 mischen.
Jedes Gerät, dass an einem ESP-NOW Netzwerk teilnimmt, kann in einem von zwei Modi betrieben werden.
Initiator – dieses Gerät initiiert die Übertragung. Dazu benötigt es die MAC-Adresse des empfangenden Geräts.
Responder – dieses Gerät empfängt die Übertragung.
Im unidirektionalen (halb-duplex) Modus ist das sendende Gerät der Initiator und das empfangende Gerät der Responder.
In einem 2-Wege-Kommunikationsmodus (Vollduplex) ist jedes Gerät sowohl Initiator als auch Responder.
Lasst uns jetzt die möglichen Netzwerke genauer ansehen.
Einweg Kommunikation
Die einfachste Kommunikationstopologie ist eine einseitige, unidirektionale Kommunikation. Bei dieser Anordnung sendet der Initiator (Sender) Daten an den Responder (Empfänger).

Sender


Empfänger
Ein Sender und multiple Empfänger
Bei diesem Aufbau kann der Sender zu einem Empfänger direkt Daten senden oder eine Broadcast-Nachricht an alle Empfänger senden.
Ein Empfänger und multiple Sender
Bei diesem Netzwerk haben wir mehrere Sender wie zum Beispiel Sensoren, die Daten an einem Empfänger senden.
Zwei-Weg Netzwerk
In diesem bidirektionalen oder Voll-Duplex Netzwerk kann jedes Modul Daten senden und Empfangen.
Die MAC Adresse
Die MAC-Adresse, auch bekannt als Media Access Control-Adresse, ist eine eindeutige Kennung, die Netzwerkgeräten zugewiesen ist. Sie besteht aus einer 48-Bit-Zahl und wird normalerweise in 6-stelliger hexadezimalen Form dargestellt. Die MAC-Adresse wird auf der Hardwareebene eines Netzwerkgeräts festgelegt und identifiziert dieses Gerät eindeutig in einem Netzwerk. Die MAC-Adresse können wir aber auch auf der Software Seite einstellen.
Um die MAC-Adresse unsere Mikrocontroller auslesen zu können, wird dieser kurze Sketch verwendet, der die MAC-Adresse in den Serial Monitor schreibt.
#include // for ESP32 boards
//#include // for ESP8266 boards
void setup(){
Serial.begin(115200);
delay(1000);
Serial.print("MAC-Address: ");
Serial.println(WiFi.macAddress());
}
void loop(){}
Praxis Beispiel
Im ersten Beispiel senden wir mittels eines Arduino Nano ESP32 ein Signal, wenn der Taster gedrückt wird. Im zweiten ESP schalten wir dann die LED ein, solange der Taster gedrückt wird. Wird der Taster losgelassen, dann wird auch die LED wieder ausgeschalten. Zur Übertragung der Daten verwenden wir natürlich das ESP-NOW Protokoll.
Hier findet ihr das benötigte Material!
Produkt | Amazon |
---|---|
2 x Arduino Nano ESP32 | shopping_cart Bei Amazon kaufen |
180 Stück Drucktaster Sortiment | shopping_cart Bei Amazon kaufen |
Widerstände Sortiment Kit 525 Stück 1/4W Metallfilm | shopping_cart Bei Amazon kaufen |
LED Leuchtdioden Sortiment - 90 Stück pro der fünf Farben | shopping_cart Bei Amazon kaufen |
Jumper Kabel Set 3x40 Stk. je 20 cm M2M/ F2M / F2F | shopping_cart Bei Amazon kaufen |
3X 400 Pin Breadboard | shopping_cart Bei Amazon kaufen |
Alle Links in dieser Tabelle sind Amazon Affiliate Links.