Zur Erweiterung meines WiFI Projektes würde ich gerne 2 (oder mehr??) ESP's zur Steuerung miteinander drahtlos verbinden. ESP32-NOW viel mir hier ins Auge.
Damit ich nicht wieder zuviel Zeit mit Versuchen an den beiden funktionierenden "standalone" ESP32 zu verbringen, hab ich mit erst einmal eine einfache Verbindung mit einem Sender und Empfänger erstellt. Zumindest war das Hochladen bei diesen Sketchen erfolgreich.
Leider wird aber kein Text (Hi.... ) vom Sender zum Empfänger übertragen.
Die MAC-Adresse vom Empfänger passt auf jeden Fall. Mache ich auch da wieder was falsch??
Hier der Sender-Sketch:
#include <esp_now.h>
#include <WiFi.h>
uint8_t receiverAddress[] = {0xec, 0xe3, 0x34, 0xb4, 0x50, 0xc3};
esp_now_peer_info_t peerInfo;
void setup(){
Serial.begin(115200);
// delay(1000); // uncomment if your serial monitor is empty
WiFi.mode(WIFI_STA);
esp_now_init();
memcpy(peerInfo.peer_addr, receiverAddress, 6);
peerInfo.channel = 0;
peerInfo.encrypt = false;
esp_now_add_peer(&peerInfo);
}
void loop(){
char message[] = "Hi, this is a message from the transmitting ESP";
esp_now_send(receiverAddress, (uint8_t *) message, sizeof(message)-1); // -1 to not send the NULL terminator
delay(5000);
}
Hier die Ausgabe nach dem Hochladen:
ets Jul 29 2019 12:21:46
rst:0x1 (POWERON_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT)
configsip: 0, SPIWP:0xee
clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
mode:DIO, clock div:1
load:0x3fff0030,len:4980
load:0x40078000,len:16612
load:0x40080400,len:3480
entry 0x400805b4
Hier nun der Empfänger-Sketch:
#include <esp_now.h>
#include <WiFi.h>
void messageReceived(const esp_now_recv_info *info, const uint8_t* incomingData, int len){
for(int i=0; i<len; i++){
Serial.print((char)incomingData[I]);
}
Serial.println();
}
void setup(){
Serial.begin(115200);
// delay(1000); // uncomment if your serial monitor is empty
WiFi.mode(WIFI_STA);
esp_now_init();
esp_now_register_recv_cb(messageReceived);
}
void loop(){}
Auch hier die Hochladedaten vom Empfänger:
ets Jul 29 2019 12:21:46
rst:0x1 (POWERON_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT)
configsip: 0, SPIWP:0xee
clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
mode:DIO, clock div:1
load:0x3fff0030,len:4980
load:0x40078000,len:16612
load:0x40080400,len:3480
entry 0x400805b4
Dieses Beispiel aus dem Netz schien mir am Einfachsten (ohne Fehlermeldung) um auf eine drahtlose Kommunikation und Erweiterung mit den ESPs zu setzen.
Leider fehlt sogar der einfachste Text beim Empfänger ..




