ESP-NOW e redes mesh: sensores locais com entrega confiável
O ESP-NOW envia pequenos dados por quadros de ação do Wi-Fi sem exigir conexão a um ponto de acesso convencional. Isso não transforma automaticamente várias placas ESP32 em uma rede mesh: encaminhamento, escolha de rota, eliminação de duplicatas, garantias de entrega e recuperação são responsabilidades da aplicação ou de uma camada superior. Defina o contrato de entrega antes de decidir se os repetidores compensam o custo de rádio e manutenção.
Publicado em 28 de setembro de 202613 min de leituraRedes locais de sensores
Separe o enlace de rádio da lógica de rede
Uma leitura passa por etapas explícitas de encaminhamento e entrega
1 / AmostrarLer o sensor e incluir ID, sequência e qualidade do horário.
2 / RetransmitirValidar origem, saltos e duplicatas antes de encaminhar.
3 / GatewayEnfileirar localmente e integrar com MQTT quando houver conexão.
4 / ConfirmarEnviar ACK da aplicação e repetir dentro de um limite.
A Espressif descreve o ESP-NOW como comunicação sem conexão baseada em quadros de ação. A API oferece gestão de pares e callbacks de envio e recepção, mas um callback não prova que o aplicativo de destino gravou a medição. Trate entrega pelo enlace, aceitação pelo aplicativo e persistência no backend como estados diferentes.
Defina um pacote pequeno e versionado
Inclua versão do protocolo, tipo de mensagem, ID de origem, sequência, limite de saltos, tamanho do conteúdo e estratégia compacta de integridade e autenticação. Mantenha os dados limitados e compatíveis com o dispositivo mais antigo da frota. O tamanho máximo depende das versões do ESP-IDF e ESP-NOW; dispositivos v1 têm limite menor que v2. Confira a documentação do alvo e negocie capacidades em vez de presumir que todos os nós foram atualizados.
Use sequências para eliminar duplicatas e um limite finito de saltos para interromper ciclos. Cada repetidor deve guardar pares origem/sequência recentes por tempo limitado, descartar pacotes expirados ou malformados e evitar devolver tráfego à origem. Sequências persistentes exigem cuidado com o desgaste da flash; um contador só em RAM pode reiniciar após falta de energia.
Escolha rotas conscientemente em vez de inundar a rede
Inundação facilita o protótipo, mas pode multiplicar transmissões. Para uma instalação pequena e fixa, um coordenador ou uma árvore de pais pré-configurada pode ser mais fácil de entender. Se os nós se movem ou os enlaces variam, descoberta de rota precisa de métricas, expiração, prevenção de ciclos e reparo. Avalie a qualidade ao longo do tempo, não por um único pacote bem-sucedido. Um repetidor também pode virar ponto único de falha ou consumir bateria demais.
Defina um orçamento de transmissões por nó e distribua tentativas com jitter para evitar que um beacon perdido sincronize os sensores em uma sequência de colisões. Teste ambientes densos, nós ocultos, interferência e alarmes simultâneos. Os pares precisam compartilhar canal compatível, e a coexistência com um ponto de acesso pode limitar as escolhas.
Segurança vai além de um nome de rede compartilhado
ESP-NOW oferece proteção CCMP para pares configurados. Provisione identidades e chaves individuais por um processo controlado, defina rotação e revogação e proteja separadamente a conexão do gateway à nuvem. Descoberta por broadcast e quadros sem criptografia não devem carregar segredos ou comandos críticos. Autentique a origem dos comandos, inclua proteção contra repetição e bloqueie acionamentos se a confiança não puder ser estabelecida.
Aspecto
Decisão de protocolo
Evidência em campo
Entrega
ACK da aplicação, tentativas limitadas, sequência
Taxa de confirmação e duplicatas
Roteamento
Limite de saltos, idade da rota, bloqueio de ciclos
Mudanças de caminho e carga dos repetidores
Capacidade
Pacotes compactos e classes de tráfego
Ocupação do canal e atraso na fila
Segurança
Chaves por par, comando autenticado, revogação
Quadros rejeitados e auditoria das chaves
Recuperação
Armazenamento temporário e fila do gateway
Amostra mais antiga e tempo de recuperação
Meça antes de ampliar a rede
Registre RSSI por enlace quando disponível, taxa de entrega, tentativas, idade ponta a ponta, saltos, fila, causa de reinicialização e tensão da bateria. Faça testes prolongados com paredes, interferência, perda de nós, indisponibilidade do gateway e ciclos de energia. Um painel deve mostrar conectividade e ausência de dados: um indicador verde pode esconder perda silenciosa. Represente explicitamente a incerteza temporal quando os nós não sincronizam relógios.
Quando outra tecnologia faz mais sentido
ESP-NOW pode servir a redes locais pequenas de controle ou telemetria quando independência de infraestrutura e mensagens modestas são prioridades. Não substitui diretamente Wi-Fi com IP, Thread, Zigbee, BLE Mesh ou LoRaWAN. Compare interoperabilidade, alcance, repouso, número de nós, ocupação de rádio, provisionamento e ferramentas operacionais. Para uma mesh de produção com muitos dispositivos, prefira uma pilha mantida a ampliar indefinidamente um algoritmo de inundação próprio.
Em resumo
Trate ESP-NOW como um transporte sem conexão útil e implemente as semânticas de rede necessárias. Versione pacotes, limite saltos e tentativas, confirme na camada adequada, proteja os pares e observe a entrega ponta a ponta. Mesh é uma decisão de roteamento e operação, não só um desenho de topologia.