Como Controlar um LED pelo Celular com ESP32 via Wi-Fi (Guia Fácil e Prático)

Já imaginou apagar a luz do quarto ou ligar um aparelho sem precisar levantar da cama? O que antes parecia cena de filme de ficção científica, hoje é totalmente possível, barato e você mesmo pode fazer.

Seja bem-vindo ao mundo da Internet das Coisas (IoT)! Neste guia passo a passo, você vai aprender como controlar um LED pelo seu smartphone usando uma placa ESP32 e a sua rede Wi-Fi. E o melhor: você não precisa ser um gênio da programação para conseguir.

Vamos colocar a mão na massa?

Para montar esse projeto, você vai precisar de um ESP32.
👉 Veja aqui o melhor preço atualizado no Mercado Livre


🛒 O Que Você Vai Precisar (Lista de Compras)

Para montar este projeto, você vai precisar de alguns componentes eletrônicos básicos. A boa notícia é que eles são super acessíveis!

Dica de Ouro: Para garantir que tudo chegue rápido e com segurança na sua casa, separamos os melhores links do Mercado Livre para você comprar agora mesmo:

  • 1x Placa ESP32 (Módulo Wi-Fi e Bluetooth): O “cérebro” do nosso projeto. Super potente e barato.
    • 👉 [Compre seu ESP32 no Mercado Livre aqui]
  • Unidades por kit: 1. | Formato de venda: Unidade. | Com arquitetura SMD. | Tem um núcleo de 0TB. | Apresenta 0.512KB de…
R$ 49,90
  • 1x LED (Qualquer cor): Para simularmos a nossa lâmpada.
    • 👉 [Kit de LEDs variados com desconto]
  • Cor da luz: Verde e Vermelho. | Kit com 25 Leds Vermelhos de 5mm cada. | Kit com 25 Leds Verdes de 5mm cada. | Tensão de…
R$ 19,29
  • 1x Resistor de 220Ω ou 330Ω: Para proteger o seu LED e evitar que ele queime.
    • 👉 [Compre resistores no Mercado Livre aqui]
  • 1x Protoboard (Matriz de contatos): Para você montar tudo sem precisar de solda.
    • 👉 [Compre sua Protoboard aqui]
  • Dimensões : 1 cm x 5,5 cm x 8,5 cm.
R$ 19,00
  • Fios Jumper (Macho-Macho): Para fazer as ligações entre a placa e os componentes.
    • 👉 [Kit de Cabos Jumper no Mercado Livre]
  • Unidades por kit: 40. | Cabo jumper macho-macho com comprimento de 10 centímetros. | Fios de cobre de alta qualidade par…
R$ 12,50

(💡 Sugestão: Se você está começando, vale a pena comprar um Kit Iniciante Arduino/ESP32 que já vem com todas essas peças juntas!

  • Microcontrolador: ATmega328P. | Tensão de operação: 5-12v. | Tutorial de todas as peças.
R$ 210,99

🛠️ Passo 1: Montando o Circuito

A montagem é extremamente simples. Siga os passos abaixo com os componentes desplugados do computador:

  1. Encaixe o seu ESP32 na Protoboard.
  2. Conecte a perna mais longa do LED (Positivo/Ânodo) a um espaço vazio na protoboard.
  3. Conecte a perna mais curta do LED (Negativo/Cátodo) a outro espaço na protoboard.
  4. Ligue o Resistor na mesma linha da perna curta do LED e conecte a outra ponta do resistor ao pino GND do ESP32.
  5. Use um fio Jumper para ligar a perna longa do LED ao pino D2 (ou GPIO 2) do ESP32.

Pronto! A parte física já está feita.


💻 Passo 2: O Código de Programação

Agora vamos dar vida ao projeto. Nós vamos usar a Arduino IDE para enviar o código para o ESP32. (Se você ainda não configurou a Arduino IDE para o ESP32, existem vários tutoriais rápidos no YouTube para isso).

Copie e cole o código abaixo. Atenção: Não se esqueça de colocar o nome e a senha da sua rede Wi-Fi nos locais indicados!

🔥 O que você vai conseguir fazer com esse projeto:

  • controlar pelo celular
  • ligar/desligar remotamente
  • base para casa inteligente
#include <WiFi.h>

// Substitua com os dados da sua rede Wi-Fi
const char* ssid = "NOME_DA_SUA_REDE";
const char* password = "SENHA_DA_SUA_REDE";

WiFiServer server(80);
const int ledPin = 2; // Pino onde o LED está conectado

void setup() {
  Serial.begin(115200);
  pinMode(ledPin, OUTPUT);
  digitalWrite(ledPin, LOW); // Garante que o LED comece apagado

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

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

  Serial.println("\nWiFi conectado.");
  Serial.print("Endereço IP: ");
  Serial.println(WiFi.localIP());
  
  server.begin(); // Inicia o servidor web
}

void loop() {
  WiFiClient client = server.available(); // Verifica se tem algum cliente conectado

  if (client) {
    String currentLine = "";
    while (client.connected()) {
      if (client.available()) {
        char c = client.read();
        
        // Verifica os comandos enviados pela URL
        if (currentLine.endsWith("GET /H")) {
          digitalWrite(ledPin, HIGH); // Liga o LED
        }
        if (currentLine.endsWith("GET /L")) {
          digitalWrite(ledPin, LOW); // Apaga o LED
        }

        if (c == '\n') {
          if (currentLine.length() == 0) {
            // Cria a página Web que vai aparecer no seu celular
            client.println("HTTP/1.1 200 OK");
            client.println("Content-type:text/html");
            client.println();
            client.println("<!DOCTYPE html><html><head><meta name=\"viewport\" content=\"width=device-width, initial-scale=1\">");
            client.println("<style>body {text-align: center; font-family: Arial;} button {padding: 15px 32px; font-size: 24px; margin: 10px; cursor: pointer;}</style></head><body>");
            client.println("<h1>Controle do ESP32</h1>");
            client.println("<p><a href=\"/H\"><button style=\"background-color: #4CAF50; color: white;\">LIGAR LED</button></a></p>");
            client.println("<p><a href=\"/L\"><button style=\"background-color: #f44336; color: white;\">APAGAR LED</button></a></p>");
            client.println("</body></html>");
            client.println();
            break;
          } else {
            currentLine = "";
          }
        } else if (c != '\r') {
          currentLine += c;
        }
      }
    }
    client.stop();
  }
}

Faça o upload do código para a sua placa e abra o Monitor Serial (na lupa no canto superior direito da IDE) configurado para a velocidade de 115200 baud. Assim que o ESP32 conectar no seu Wi-Fi, ele vai mostrar um Endereço IP (exemplo: 192.168.1.15). Anote esse número!


📱 Passo 3: Controlando pelo Celular

Este é o momento mágico!

  1. Certifique-se de que o seu celular está conectado na mesma rede Wi-Fi que o ESP32.
  2. Abra o navegador do seu celular (Chrome, Safari, etc.).
  3. Digite o Endereço IP que você anotou no passo anterior e aperte “Ir”.
  4. Uma página super simples com dois botões gigantes vai aparecer: LIGAR LED e APAGAR LED.

Toque nos botões e veja o LED responder instantaneamente na sua mesa. Parabéns, você acabou de criar o seu primeiro projeto de Automação Residencial!


💡 Próximos Passos (Vá além!)

Se você conseguiu acender um LED, você pode acionar um módulo relé e controlar uma lâmpada de verdade, um ventilador ou até a sua cafeteira!

A automação residencial é um caminho sem volta e muito divertido. Não deixe de garantir suas peças com entrega garantida e os melhores preços.

👇 Clique nos links abaixo e comece seu projeto de Casa Inteligente hoje mesmo no Mercado Livre! 👇

  • 🔗 [Comprar Módulo Relé para ligar lâmpadas reais]
  • 🔗 [Kits Completos de Robótica e IoT]
  • Placa de desenvolvimento com microcontrolador ESP32 e processador dual-core. | Tensão de operação de 3.3V para compatibi…
R$ 287,30

Gostou do tutorial? Compartilhe com aquele amigo que adoraria transformar a casa dele em uma verdadeira “Smart Home”!


Dicas para você (dono do site) aplicar na postagem:

  • Substitua os textos entre colchetes como [Compre seu ESP32 no Mercado Livre aqui] pelos links diretos gerados pelo seu painel de afiliados do Mercado Livre.
  • Crie botões visuais no seu WordPress/site com o texto “Ver Preço no Mercado Livre” para chamar mais atenção do que apenas o link em texto.
  • Se possível, adicione uma foto real do circuito montado no seu blog, isso aumenta muito a confiança do leitor na hora de comprar as peças.