Fala galera! Quem acompanha o blog sabe que sou um fanático por projetos sem fio. Recentemente, estive trabalhando com placas ESP32 e ESP8266, e descobri o poder do protocolo ESP-NOW para comunicações sem fio ponto a ponto. Hoje, vou compartilhar como integrar esse recurso nos seus projetos!
Neste artigo, você aprenderá o que é ESP-NOW, como configurá-lo, e um passo a passo prático para implementá-lo em seus dispositivos ESP. Prepare-se para dar um salto em sua habilidade de criar redes sem fio personalizadas!
Antes de mergulharmos nos passos, vamos entender melhor o conceito por trás desse poderoso protocolo.
💡 O que é ESP-NOW?ESP-NOW é um protocolo de comunicação sem fio desenvolvido pela Espressif para ESP32 e ESP8266, permitindo a transmissão de dados ponto a ponto ou multicast sem a necessidade de conexão Wi-Fi. Diferente do Wi-Fi tradicional, o ESP-NOW é mais leve, rápido para configuração e consome menos energia, tornando-o ideal para IoT e projetos de making.
Para este tutorial, você precisará:
| Componente | Onde comprar | Preço médio |
| 1x ESP32 (ou ESP8266) - Sender | AmaZon, Adafruit | R$ 50 |
| 1x ESP32 (ou ESP8266) - Receiver | AmaZon, Adafruit | R$ 50 |
| Computador com Arduino IDE | - | Grátis |
| Cabo USB para programação | - (provavelmente já tem) | - |
1. **Instale a placa ESP32/ESP8266** na Arduino IDE, seguindo as instruções oficiais para ESP32 ou ESP8266. 2. **Conecte** ambos os dispositivos ao computador via USB.
Copie o código abaixo para o Sender. Substitua `YOUR_SENDER_MAC_ADDRESS` com o endereço MAC do seu Sender (encontre no serial monitor após executar um sketch de leitura de MAC).
#include <ESPNow.h> uint8_t broadcastMacAddress[] = {YOUR_SENDER_MAC_ADDRESS}; void setup() { Serial.begin(115200); ESPNow.setTxPower(ESP_POWER_MAX); if (ESPNow.initSender() == ESP_OK) { Serial.println("ESPNow Sender Inicializado!"); } else { Serial.println("Falha na inicialização do Sender!"); while(1); } } void loop() { // Mensagem a ser enviada char* message = "Olá, ESP-NOW funcionando!"; ESPNow.send(broadcastMacAddress, (uint8_t *)message, sizeof(message)); delay(1000); } 📊 Passo 3 — Código Receiver (Receptor) Copie o código abaixo para o Receiver. Substitua `YOUR_RECEIVER_MAC_ADDRESS` com o endereço MAC do seu Receiver.
#include <ESPNow.h> uint8_t broadcastMacAddress[] = {YOUR_RECEIVER_MAC_ADDRESS}; void setup() { Serial.begin(115200); if (ESPNow.initReceiver() == ESP_OK) { Serial