Closed mariopesch closed 3 months ago
some minimal sketches:
#include "WiFi.h"
void setup(){ Serial.begin(115200); WiFi.mode(WIFI_MODE_STA); Serial.println(WiFi.macAddress()); }
2. Sender
uint8_t broadcastAddress[] = {0x84, 0xF7, 0x03, 0xD1, 0x08, 0xA8};
esp_now_peer_info_t peerInfo;
void setup() {
WiFi.mode(WIFI_STA);
if (esp_now_init() != ESP_OK) {
return;
}
memcpy(peerInfo.peer_addr, broadcastAddress, 6);
peerInfo.channel = 0;
peerInfo.encrypt = false;
if (esp_now_add_peer(&peerInfo) != ESP_OK){
return;
}
}
void loop() { esp_err_t result = esp_now_send(broadcastAddress, (const uint8_t*)"test", sizeof("test")); delay(2000); }
3. Receiver
void OnDataRecv(const uint8_t mac, const uint8_t incomingData, int len) { Serial.println((const char*)incomingData); }
void setup() { Serial.begin(115200);
WiFi.mode(WIFI_STA); if (esp_now_init() != ESP_OK) { Serial.println("Error initializing ESP-NOW"); return; } esp_now_register_recv_cb(OnDataRecv); }
void loop() {}
ESP now is a nice feature to communicate directly between two or more devices.