#include <esp_now.h>
#include <WiFi.h>
uint8_t broadcastAddress[] = {0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF}; // Broadcast address for all devices
typedef struct message {
char text[32];
} message;
message myMessage;
void setup() {
Serial.begin(115200);
WiFi.mode(WIFI_STA); // Set device as a Wi-Fi Station
Serial.println("ESP-NOW Sender");
// Initialize ESP-NOW
if (esp_now_init() != ESP_OK) {
Serial.println("Error initializing ESP-NOW");
return;
}
// Register peer
esp_now_peer_info_t peerInfo;
memcpy(peerInfo.peer_addr, broadcastAddress, 6);
peerInfo.channel = 0;
peerInfo.encrypt = false;
// Add peer
if (esp_now_add_peer(&peerInfo) != ESP_OK) {
Serial.println("Failed to add peer");
return;
}
// Set up the message to send
strcpy(myMessage.text, "Hello, World!");
}
void loop() {
esp_err_t result = esp_now_send(broadcastAddress, (uint8_t *)&myMessage, sizeof(myMessage));
if (result == ESP_OK) {
Serial.println("Message Sent: Hello, World!");
} else {
Serial.println("Error sending the message");
}
delay(2000); // Send a message every 2 seconds
}