Music

ads header

sábado, 4 de julho de 2026

Tudo sobre Wi-Fi no ESP32

0

 

Tudo sobre Wi-Fi no ESP32 - Guia Completo ArcadeMakerBR Academy

O Wi-Fi é uma das funcionalidades que transformaram o ESP32 numa das placas favoritas da comunidade maker. Com ele, você pode conectar sensores à internet, criar web servers, enviar dados para APIs, integrar com Home Assistant, usar MQTT e construir projetos IoT completos.

🎓 ArcadeMakerBR Academy

ESP32 Essentials • Aula 11
Nível: 🟢 Iniciante
Tempo de leitura: 20 a 30 minutos
Projeto sugerido: página web para controlar LED pelo ESP32


O que você vai aprender

  • Como funciona o Wi-Fi no ESP32.
  • Diferença entre Station Mode e Access Point.
  • Como conectar o ESP32 ao roteador.
  • Como criar uma rede Wi-Fi própria com o ESP32.
  • Como fazer scan de redes Wi-Fi.
  • Como usar IP fixo.
  • Como criar um WebServer simples.
  • Boas práticas de reconexão e segurança.

Índice

  1. Por que Wi-Fi é tão importante no ESP32?
  2. Modos Wi-Fi do ESP32
  3. Station Mode
  4. Access Point
  5. Scan de redes
  6. IP fixo
  7. WebServer no ESP32
  8. Cliente HTTP
  9. Reconexão automática
  10. FAQ

Por que Wi-Fi é tão importante no ESP32?

Antes do ESP32 se popularizar, muitos projetos com Arduino precisavam de módulos externos para conectar à rede. Isso deixava a montagem mais cara, mais complexa e mais difícil para iniciantes.

Com o ESP32, o Wi-Fi já vem integrado. Isso significa que uma única placa consegue ler sensores, controlar atuadores, processar dados e comunicar com a rede local ou com a internet.

É por isso que o ESP32 aparece tanto em projetos de automação residencial, IoT, monitoramento remoto, estações meteorológicas, controle de LEDs, robótica e dashboards.

Dica do Maker: se o seu projeto precisa enviar dados para outro sistema, controlar algo pelo telemóvel ou integrar com Home Assistant, provavelmente o Wi-Fi será um dos primeiros recursos que você vai usar.

Modos Wi-Fi do ESP32

O ESP32 pode trabalhar com Wi-Fi de formas diferentes. As mais comuns são:

  • Station Mode (STA): o ESP32 conecta-se a um roteador existente.
  • Access Point (AP): o ESP32 cria a sua própria rede Wi-Fi.
  • AP + STA: o ESP32 cria uma rede e ao mesmo tempo conecta-se a outra.
Modo Como funciona Quando usar
Station ESP32 entra na rede do roteador. IoT, MQTT, Home Assistant, APIs e internet.
Access Point ESP32 cria a própria rede. Configuração inicial, controle local, projetos sem roteador.
AP + STA ESP32 cria uma rede e conecta-se a outra. Portais de configuração e dispositivos mais avançados.
Modos Wi-Fi do ESP32 Station ESP32 entra no roteador Access Point ESP32 cria a rede AP + STA Cria rede e conecta também ESP32
O ESP32 pode conectar-se a uma rede, criar uma rede ou usar os dois modos.

Station Mode: conectar ao roteador

No modo Station, o ESP32 funciona como um dispositivo comum da rede, igual a um telemóvel, portátil ou impressora Wi-Fi. Ele conecta ao roteador usando SSID e senha.

Esse é o modo mais usado em projetos IoT, porque permite ao ESP32 comunicar com:

  • Home Assistant.
  • Node-RED.
  • Broker MQTT.
  • Servidor web.
  • API na internet.
  • Banco de dados através de uma API.

Código exemplo: conectar ao Wi-Fi

// Exemplo: conectar ESP32 ao Wi-Fi
// ArcadeMakerBR Academy

#include <WiFi.h>

const char* ssid = "NOME_DA_REDE";
const char* password = "SENHA_DA_REDE";

void setup() {
  Serial.begin(115200);

  WiFi.begin(ssid, password);
  Serial.print("Conectando ao Wi-Fi");

  while (WiFi.status() != WL_CONNECTED) {
    delay(500);
    Serial.print(".");
  }

  Serial.println();
  Serial.println("Conectado!");
  Serial.print("IP: ");
  Serial.println(WiFi.localIP());
}

void loop() {
}

Quando a conexão for bem-sucedida, o ESP32 recebe um endereço IP na rede. Esse IP pode ser usado para aceder a um web server, enviar dados ou integrar com outros sistemas.

Access Point: ESP32 criando uma rede Wi-Fi

No modo Access Point, o ESP32 cria a própria rede Wi-Fi. Outros dispositivos podem conectar diretamente nele, sem precisar de roteador.

Isso é útil para:

  • Configuração inicial de dispositivos.
  • Projetos portáteis.
  • Controle local sem internet.
  • Robôs ou equipamentos em campo.
  • Painéis de configuração.

Código exemplo: criar rede Wi-Fi

// Exemplo: ESP32 como Access Point
// ArcadeMakerBR Academy

#include <WiFi.h>

const char* ssid = "ESP32_Config";
const char* password = "12345678";

void setup() {
  Serial.begin(115200);

  WiFi.softAP(ssid, password);

  Serial.println("Access Point criado!");
  Serial.print("IP do ESP32: ");
  Serial.println(WiFi.softAPIP());
}

void loop() {
}

Depois de carregar esse código, procure a rede ESP32_Config no telemóvel ou computador.

Dica do Maker: o modo AP é excelente para criar uma página de configuração onde o utilizador informa o Wi-Fi da casa.

Scan de redes Wi-Fi

O ESP32 também consegue procurar redes Wi-Fi próximas. Isso é útil para diagnósticos, seleção de rede, portais de configuração e projetos que precisam mostrar as redes disponíveis.

// Exemplo: scan de redes Wi-Fi
// ArcadeMakerBR Academy

#include <WiFi.h>

void setup() {
  Serial.begin(115200);

  WiFi.mode(WIFI_STA);
  WiFi.disconnect();
  delay(100);

  Serial.println("Procurando redes...");
  int n = WiFi.scanNetworks();

  if (n == 0) {
    Serial.println("Nenhuma rede encontrada.");
  } else {
    for (int i = 0; i < n; ++i) {
      Serial.print(i + 1);
      Serial.print(": ");
      Serial.print(WiFi.SSID(i));
      Serial.print(" | RSSI: ");
      Serial.println(WiFi.RSSI(i));
      delay(10);
    }
  }
}

void loop() {
}

O que é RSSI?

RSSI é uma medida da força do sinal recebido. Normalmente aparece como valor negativo, como -40 dBm, -65 dBm ou -80 dBm.

  • -30 a -50 dBm: sinal forte.
  • -60 a -70 dBm: sinal razoável.
  • -80 dBm ou pior: sinal fraco.

Usando IP fixo no ESP32

Por padrão, o roteador entrega um IP automaticamente usando DHCP. Isso funciona bem na maioria dos projetos.

Mas em alguns casos, você pode querer que o ESP32 tenha sempre o mesmo IP, principalmente quando usa WebServer local.

// Exemplo: IP fixo no ESP32

#include <WiFi.h>

const char* ssid = "NOME_DA_REDE";
const char* password = "SENHA_DA_REDE";

IPAddress local_IP(192, 168, 1, 80);
IPAddress gateway(192, 168, 1, 1);
IPAddress subnet(255, 255, 255, 0);

void setup() {
  Serial.begin(115200);

  if (!WiFi.config(local_IP, gateway, subnet)) {
    Serial.println("Falha ao configurar IP fixo.");
  }

  WiFi.begin(ssid, password);

  while (WiFi.status() != WL_CONNECTED) {
    delay(500);
    Serial.print(".");
  }

  Serial.println();
  Serial.print("IP: ");
  Serial.println(WiFi.localIP());
}

void loop() {
}
Atenção: escolha um IP livre na sua rede para evitar conflito com outros dispositivos.

Criando um WebServer no ESP32

Um dos usos mais populares do Wi-Fi no ESP32 é criar uma página web para controlar o projeto.

Exemplo: abrir o navegador, aceder ao IP do ESP32 e clicar em botões para ligar ou desligar um LED.

// Exemplo simples: WebServer para controlar LED
// ArcadeMakerBR Academy

#include <WiFi.h>
#include <WebServer.h>

const char* ssid = "NOME_DA_REDE";
const char* password = "SENHA_DA_REDE";

#define LED_PIN 2

WebServer server(80);

void paginaInicial() {
  String html = "<h1>ESP32 WebServer</h1>";
  html += "<p><a href='/on'>Ligar LED</a></p>";
  html += "<p><a href='/off'>Desligar LED</a></p>";

  server.send(200, "text/html", html);
}

void ligarLED() {
  digitalWrite(LED_PIN, HIGH);
  server.send(200, "text/html", "LED ligado. <a href='/'>Voltar</a>");
}

void desligarLED() {
  digitalWrite(LED_PIN, LOW);
  server.send(200, "text/html", "LED desligado. <a href='/'>Voltar</a>");
}

void setup() {
  Serial.begin(115200);
  pinMode(LED_PIN, OUTPUT);

  WiFi.begin(ssid, password);

  while (WiFi.status() != WL_CONNECTED) {
    delay(500);
    Serial.print(".");
  }

  Serial.println();
  Serial.print("Acesse: http://");
  Serial.println(WiFi.localIP());

  server.on("/", paginaInicial);
  server.on("/on", ligarLED);
  server.on("/off", desligarLED);

  server.begin();
}

void loop() {
  server.handleClient();
}

Este exemplo é simples, mas já mostra o potencial do ESP32 como servidor local.

ESP32 como cliente HTTP

Além de criar servidor, o ESP32 também pode atuar como cliente HTTP. Isso significa que ele pode enviar ou buscar dados em uma API.

Exemplos:

  • Enviar leitura de sensor para um servidor.
  • Consultar previsão do tempo.
  • Enviar evento para automação.
  • Comunicar com backend próprio.
// Exemplo básico de cliente HTTP
// Requer internet e URL válida

#include <WiFi.h>
#include <HTTPClient.h>

const char* ssid = "NOME_DA_REDE";
const char* password = "SENHA_DA_REDE";

void setup() {
  Serial.begin(115200);

  WiFi.begin(ssid, password);

  while (WiFi.status() != WL_CONNECTED) {
    delay(500);
    Serial.print(".");
  }

  HTTPClient http;
  http.begin("http://example.com");

  int httpCode = http.GET();

  Serial.print("Codigo HTTP: ");
  Serial.println(httpCode);

  if (httpCode > 0) {
    String resposta = http.getString();
    Serial.println(resposta);
  }

  http.end();
}

void loop() {
}

Reconexão automática

Em projetos reais, o Wi-Fi pode cair. O roteador pode reiniciar, o sinal pode ficar fraco ou a rede pode ficar indisponível por alguns minutos.

Por isso, é importante criar lógica de reconexão.

// Reconexão Wi-Fi simples

void verificarWiFi() {
  if (WiFi.status() != WL_CONNECTED) {
    Serial.println("Wi-Fi desconectado. Reconectando...");
    WiFi.reconnect();

    unsigned long inicio = millis();

    while (WiFi.status() != WL_CONNECTED && millis() - inicio < 10000) {
      delay(500);
      Serial.print(".");
    }

    Serial.println();
  }
}

Em projetos mais avançados, você pode usar eventos Wi-Fi, timeouts, watchdogs e estratégias para evitar que o ESP32 fique preso tentando conectar para sempre.

Wi-Fi e consumo de energia

Wi-Fi consome energia considerável. Em projetos com bateria, o ideal é conectar, enviar os dados rapidamente e desligar ou entrar em Deep Sleep.

Um fluxo comum é:

  1. ESP32 acorda.
  2. Conecta ao Wi-Fi.
  3. Lê sensores.
  4. Envia dados via MQTT ou HTTP.
  5. Entra em Deep Sleep.

Esse padrão aumenta muito a autonomia quando comparado a deixar o Wi-Fi ligado o tempo todo.

Wi-Fi, MQTT e Home Assistant

O Wi-Fi é a ponte que permite ao ESP32 integrar com outros sistemas. Com MQTT, por exemplo, o ESP32 pode publicar leituras de sensores e receber comandos.

Com Home Assistant, o ESP32 pode fazer parte de uma casa inteligente, enviando dados de temperatura, umidade, presença, consumo ou controle de relés.

Com Node-RED, você pode criar fluxos visuais para processar dados, enviar notificações e conectar serviços.

Erros comuns com Wi-Fi no ESP32

1. SSID ou senha errados

Parece simples, mas é um dos erros mais comuns. Verifique maiúsculas, minúsculas e caracteres especiais.

2. Ficar preso eternamente no while

Se o código espera conexão para sempre, o projeto pode travar. Use timeout.

3. Sinal fraco

Se o ESP32 está longe do roteador, a conexão pode ficar instável. Verifique o RSSI.

4. IP fixo em faixa errada

Se usar IP fixo, confirme gateway, subnet e faixa da rede.

5. Usar Wi-Fi em projeto com bateria sem Deep Sleep

Wi-Fi ligado o tempo todo pode descarregar a bateria rapidamente.

Boas práticas

  • Use timeout na conexão inicial.
  • Mostre o IP no Serial Monitor.
  • Prefira sinal Wi-Fi forte para projetos críticos.
  • Use reconexão automática.
  • Evite colocar senha diretamente em exemplos públicos.
  • Em projetos com bateria, combine Wi-Fi com Deep Sleep.
  • Use MQTT quando precisar de comunicação leve e constante.

FAQ sobre Wi-Fi no ESP32

O ESP32 suporta Wi-Fi 5 GHz?

Na maioria dos modelos ESP32 clássicos, o Wi-Fi é 2.4 GHz. Se a sua rede for apenas 5 GHz, o ESP32 não irá conectar.

Posso usar ESP32 sem roteador?

Sim. Use o modo Access Point para o ESP32 criar a própria rede.

Posso criar uma página web no ESP32?

Sim. O ESP32 pode rodar um WebServer simples para controle e visualização de dados.

O Wi-Fi funciona junto com ESP-NOW?

Pode funcionar, mas exige cuidado com canal Wi-Fi, modo de operação e arquitetura do projeto.

Wi-Fi consome muita bateria?

Comparado a Deep Sleep, sim. Para bateria, conecte rapidamente, envie dados e volte a dormir.

Resumo final

O Wi-Fi é um dos recursos mais importantes do ESP32. Ele permite criar projetos conectados, servidores web, clientes HTTP, dispositivos IoT, integrações com MQTT, Home Assistant, Node-RED e muito mais.

Para começar, aprenda primeiro o modo Station. Depois teste Access Point, scan de redes e WebServer. Em seguida, avance para HTTP, MQTT, reconexão automática e projetos com Deep Sleep.

Com Wi-Fi bem entendido, o ESP32 deixa de ser apenas uma placa de prototipagem e passa a ser uma plataforma completa para automação e IoT.


📚 Continue aprendendo

  • Tudo sobre ESP32
  • Tudo sobre ESP-NOW
  • Tudo sobre MQTT
  • Tudo sobre Deep Sleep no ESP32
  • Tudo sobre OTA no ESP32

Kit de publicação

Título SEO: Tudo sobre Wi-Fi no ESP32 – Guia Completo para Iniciantes

Slug: tudo-sobre-wifi-esp32

Meta Description: Aprenda tudo sobre Wi-Fi no ESP32: modo Station, Access Point, scan de redes, IP fixo, WebServer, cliente HTTP e reconexão automática.

Tags: ESP32, Wi-Fi, ESP32 WiFi, Arduino, Arduino IDE, IoT, WebServer ESP32, Access Point, Station Mode, HTTP Client, IP Fixo, WiFiMulti, Maker, Eletrônica, Automação, Microcontroladores

Categoria: ESP32 Academy

ALT da capa: Tudo sobre Wi-Fi no ESP32 - Guia Completo ArcadeMakerBR Academy

Author Image
AboutAlexandre Paixao

Soratemplates is a blogger resources site is a provider of high quality blogger template with premium looking layout and robust design

Nenhum comentário:

Postar um comentário