Como criar um sensor de temperatura e umidade com ESP32 e Home Assistant

07 Mar 2026 Social Blackdog Automação Residencial 7 min 263 views
Como criar um sensor de temperatura e umidade com ESP32 e Home Assistant

Por que montar seu próprio sensor?

Sensores de temperatura prontos como o Xiaomi Aqara ou Sonoff SNZB-02 custam entre R$ 80 e R$ 150 cada. Se você quer colocar um em cada cômodo da casa, a conta sobe rápido. Com um ESP32 é um DHT22, você monta o mesmo sensor por menos de R$ 45 e ainda tem a liberdade de adicionar outros sensores na mesma placa depois.

Além do custo, o sensor caseiro te dá controle total: você decide o intervalo de leitura, o nome das entidades, pode adicionar sensores extras (luminosidade, qualidade do ar, presença) e não depende de nenhum fabricante ou app de terceiro.

Lista de materiais

  • ESP32 DevKit V1 (~R$ 30): a placa de desenvolvimento. Tem Wi-Fi e Bluetooth integrados, 34 GPIOs e roda o ESPHome perfeitamente. Compre no AliExpress ou mercado livre
  • Sensor DHT22 (AM2302) (~R$ 15): mede temperatura de -40°C a 80°C (precisão ±0.5°C) e umidade de 0 a 100% (precisão ±2-5%). Existe o DHT11 que é mais barato, mas a precisão é bem pior
  • 3 fios jumper fêmea-fêmea: para conectar o sensor na placa
  • Cabo micro-USB: para alimentação e primeira gravação
  • Fonte USB 5V/1A: qualquer carregador de celular serve para alimentação definitiva

Opcional mas recomendado: um case impresso em 3D ou uma caixinha de projeto elétrico pequena (R$ 5 em loja de eletrônica). Protege a placa e fica mais apresentável.

Esquema de ligação

A ligação é direta, sem protoboard e sem solda:

  • Pino 1 do DHT22 (VCC) vai no 3.3V do ESP32
  • Pino 2 do DHT22 (DATA) vai no GPIO4 do ESP32
  • Pino 4 do DHT22 (GND) vai no GND do ESP32
  • Pino 3 do DHT22 não é usado (deixe solto)

Se o seu DHT22 veio no módulo com 3 pinos (a plaquinha azul ou vermelha), o resistor pull-up de 10kΩ entre VCC e DATA já está incluído. Se veio o sensor solto com 4 pinos, coloque um resistor de 10kΩ entre o pino 1 (VCC) e o pino 2 (DATA). Sem esse resistor, a leitura pode falhar intermitentemente.

Preparando o ESPHome

No seu Home Assistant, vá em Configurações > Add-ons > Loja de Add-ons e instale o ESPHome. Depois de instalado, acesse o painel do ESPHome e clique em "New Device".

Dê um nome descritivo para o dispositivo. Eu costumo usar o padrão sensor-[cômodo], por exemplo: sensor-quarto, sensor-sala, sensor-garagem. Isso facilita quando você tem vários espalhados pela casa.

Arquivo de configuração completo

Aqui está a configuração YAML completa. Copie, ajuste o nome da rede Wi-Fi e a senha:

esphome:
  name: sensor-quarto
  friendly_name: "Sensor do Quarto"

esp32:
  board: esp32dev
  framework:
    type: arduino

# Conexão Wi-Fi
wifi:
  ssid: "NomeDaSuaRede"
  password: "SenhaDoWiFi"

  # Caso perca o Wi-Fi, cria um AP para reconfigurar
  ap:
    ssid: "Sensor Quarto Fallback"
    password: "senhaqualquer"

# Portal de configuração caso caia o Wi-Fi
captive_portal:

# Permite logs pelo Wi-Fi (útil para debug)
logger:

# API para integração com Home Assistant
api:
  encryption:
    key: "sua-chave-será-gerada-automaticamente"

# Atualização sem fio (OTA)
ota:
  - platform: esphome
    password: "sua-senha-ota"

# Sensor de temperatura e umidade
sensor:
  - platform: dht
    pin: GPIO4
    model: DHT22
    temperature:
      name: "Temperatura"
      filters:
        - offset: -1.0  # Calibração se necessário
    humidity:
      name: "Umidade"
    update_interval: 30s

  # Sensor de sinal Wi-Fi (bonus: monitora qualidade da conexão)
  - platform: wifi_signal
    name: "Sinal Wi-Fi"
    update_interval: 60s

  # Tempo ligado (útil para saber se reiniciou)
  - platform: uptime
    name: "Uptime"

# Sensor binário: status da conexão
binary_sensor:
  - platform: status
    name: "Status"

O que cada bloco faz

  • wifi > ap: se o ESP32 perder a conexão com seu Wi-Fi, ele cria uma rede própria chamada "Sensor Quarto Fallback". Você conecta nessa rede e reconfigura pelo navegador. Muito útil se mudar a senha do Wi-Fi
  • captive_portal: trabalha junto com o AP de fallback, abre uma página de configuração automática quando você conecta
  • api + encryption: a chave de criptografia é gerada automaticamente pelo ESPHome na primeira compilação. Ela protege a comunicação entre o ESP32 e o Home Assistant
  • ota: permite atualizar o firmware pelo Wi-Fi. Depois da primeira gravação por USB, você nunca mais precisa conectar cabo
  • filters > offset: calibração de temperatura. Se o sensor marca 1°C a mais que um termômetro de referência, coloque offset: -1.0. Se marca 1°C a menos, coloque offset: 1.0
  • wifi_signal: sensor bônus que mostra a qualidade do sinal Wi-Fi. Se ficar abaixo de -75 dBm, o ESP32 está longe demais do roteador
  • uptime + status: sensores de diagnóstico. Você sabe há quanto tempo o sensor está ligado e se está conectado

Primeira gravação (USB)

  1. Conecte o ESP32 no computador via USB
  2. No painel do ESPHome, clique nos 3 pontos do dispositivo > Install
  3. Escolha "Plug into this computer"
  4. Selecione a porta serial (geralmente aparece como CP2102 ou CH340)
  5. Aguarde a compilação e gravação (leva 2 a 5 minutos na primeira vez)

Se a porta não aparecer, pode ser que falte o driver do chip USB do seu ESP32. Os mais comuns são o CP2102 (da Silicon Labs) e o CH340 (da WCH). Baixe o driver no site do fabricante do chip.

Integração automática com Home Assistant

Depois da gravação, o ESP32 conecta no Wi-Fi e o Home Assistant detecta automaticamente. Vai aparecer uma notificação "Novo dispositivo descoberto". Clique em configurar, confirme a chave de criptografia e pronto.

Os sensores aparecem como entidades:

  • sensor.sensor_quarto_temperatura
  • sensor.sensor_quarto_umidade
  • sensor.sensor_quarto_sinal_wi_fi
  • sensor.sensor_quarto_uptime
  • binary_sensor.sensor_quarto_status

Automações que você pode criar com esse sensor

Com o sensor funcionando, as possibilidades se abrem:

  • Ar-condicionado automático: temperatura passa de 26°C > liga o ar. Cai abaixo de 23°C > desliga. Precisa de um controle IR (Broadlink RM4 Mini, ~R$ 80)
  • Alerta de umidade baixa: umidade abaixo de 30% > notificação no celular para ligar o umidificador. Importante no inverno paulista
  • Alerta de umidade alta: umidade acima de 80% por mais de 2 horas > pode indicar infiltração ou vazamento
  • Gráficos de histórico: o Home Assistant guarda o histórico e você vê a variação ao longo do dia. Útil para entender o comportamento térmico do cômodo

Dica: calibração fácil

O DHT22 é razoavelmente preciso de fábrica, mas cada sensor tem uma pequena variação. Para calibrar:

  1. Coloque o ESP32 ao lado de um termômetro confiável por 30 minutos
  2. Compare as leituras
  3. Ajuste o valor do offset na configuração
  4. Atualize pelo OTA (sem fio, pelo painel do ESPHome)

Quanto custa montar um para cada cômodo?

Com os componentes comprados no AliExpress:

  • 1 sensor: ~R$ 45
  • 3 sensores (sala, quarto, escritório): ~R$ 120
  • 5 sensores (casa inteira): ~R$ 180

Compare com 5 sensores Aqara que custariam R$ 400 a R$ 750. E o ESP32 ainda aceita sensores extras na mesma placa.

Expansões possíveis na mesma placa

O ESP32 tem GPIOs sobrando. Você pode adicionar na mesma placa, sem custo extra de hardware:

  • BH1750: sensor de luminosidade (~R$ 8). Automação: acender a luz quando escurece
  • BME280: substitui o DHT22 com mais precisão e adiciona pressão atmosférica (~R$ 15)
  • PIR HC-SR501: sensor de movimento (~R$ 8). Automação: acender luz quando detecta presença
  • LD2410: sensor de presença mmWave (~R$ 25). Detecta presença mesmo com pessoa parada
  • MQ-135: qualidade do ar (~R$ 12). Alerta quando o ar está ruim

Com um ESP32 + BME280 + BH1750 + LD2410 você tem um sensor multifunção completo por menos de R$ 80 que substitui 3 ou 4 dispositivos separados.

Se você curtiu a ideia mas prefere um projeto pronto e configurado, a Blackdog.dev monta sensores customizados e instala na sua casa em Amparo, Serra Negra, Socorro e região do Circuito das Águas. Fale com a gente.

Compartilhar
Fale conosco