#include <esp_now.h>
#include <WiFi.h>
//Estructura para guardar los datos de temperatura y humedad.
typedef struct temp_humidity {
float temperature;
float humidity;
};
// Crea un struct_message llamado myData
temp_humidity dhtData;
// función de devolución de llamada ejecutada cuando se reciben datos
void OnRecv(const uint8_t * mac, const uint8_t *incomingData, int len) {
memcpy(&dhtData, incomingData, sizeof(dhtData));
Serial.print("Bytes received: ");
Serial.println(len);
Serial.print("Temperature: ");
Serial.println(dhtData.temperature);
Serial.print("Humidity: ");
Serial.println(dhtData.humidity);
}
void setup() {
// Inicializar monitor serie
Serial.begin(115200);
// Configurar el dispositivo como estación Wi-Fi
WiFi.mode(WIFI_STA);
// Inicializar ESP-NOW
if (esp_now_init() != ESP_OK) {
Serial.println("Hubo un error al inicializar ESP-NOW");
return;
}
//Una vez inicializado el protocolo ESP-Now, registraremos la función de devolución de llamada
esp_now_register_recv_cb(OnRecv);
}
void loop() {
}