Categorias

Irrigação automática de jardim com ESP32 e Home Assistant

Tutorial: monte irrigação automática com ESP32, sensor de umidade do solo e válvula solenoide. Código ESPHome testado, integrado ao Home Assistant.

Esquecer de regar a horta (ou regar demais e apodrecer a raiz) é um problema clássico de quem tem plantas em casa. Este tutorial monta um sistema de irrigação automática: o ESP32 lê a umidade do solo e abre a válvula solenoide sozinho quando a terra está seca, com toda a automação visível e configurável no Home Assistant.

Lista de materiais

Produto Destaque Nota Preço Comprar
Placa ESP32 DevKit · ESP32 Cérebro do projeto ⭐ 4.9 R$ 38,88
Sensor de Umidade do Solo (capacitivo) · Genérico Detecta terra seca R$ 27,99
Módulo Relé 1 Canal · Genérico Chaveia a válvula ⭐ 4.8 R$ 13,49
Válvula Solenoide 12V · Genérico Libera/corta a água ⭐ 4.7 R$ 38,90

💲 Preços consultados em 14/07/2026, sujeitos a alteração. Confira o valor atual na loja.

Placa ESP32 DevKit Pino Soldado

Ver no Mercado Livre

Além dos itens acima, você vai precisar de uma fonte 12V (a mesma usada em câmera de segurança ou fita LED serve) e uma mangueira/conexão de 1/2” entre a torneira/caixa d’água e a válvula.

Como funciona

  1. O sensor de umidade do solo fica enterrado na terra do vaso ou canteiro, medindo a umidade por capacitância.
  2. O ESP32 lê esse valor periodicamente pela entrada analógica (ADC).
  3. Quando a leitura indica solo seco (abaixo do limite calibrado), o ESP32 aciona o módulo relé.
  4. O relé fecha o circuito de 12V que alimenta a válvula solenoide, liberando a água por um tempo determinado.
  5. Tudo isso aparece no Home Assistant — leitura de umidade em tempo real, histórico, e possibilidade de regar manualmente pelo app a qualquer momento.

Ligações (wiring)

  • Sensor de umidade → pino analógico do ESP32 (ex.: GPIO34) + alimentação 3,3V e GND.
  • Módulo relé → pino digital do ESP32 (ex.: GPIO26) no pino IN do relé + alimentação 5V e GND.
  • Válvula solenoide → um fio direto na fonte 12V, o outro fio passando pelo contato NO (Normally Open) do relé antes de voltar ao negativo da fonte 12V.

⚠️ Atenção: a válvula é alimentada pela fonte 12V, NÃO pelo ESP32. O relé só interrompe/libera esse circuito — ele não fornece energia para a válvula. Confira a polaridade da fonte 12V antes de ligar.

Código ESPHome

esphome:
  name: irrigacao-jardim
  friendly_name: Irrigação do Jardim

esp32:
  board: esp32dev
  framework:
    type: arduino

wifi:
  ssid: !secret wifi_ssid
  password: !secret wifi_password

  ap:
    ssid: "Irrigacao-Jardim Fallback"
    password: !secret fallback_password

captive_portal:

api:
  encryption:
    key: !secret api_encryption_key

ota:
  - platform: esphome
    password: !secret ota_password

logger:

sensor:
  - platform: adc
    pin: GPIO34
    name: "Umidade do Solo (bruta)"
    id: umidade_solo_bruta
    attenuation: 11db
    update_interval: 30s
    filters:
      - calibrate_linear:
          # Calibre com o seu sensor: valor lido no ar (seco) e na água (molhado)
          - 0.0 -> 100.0   # seco = 0% de umidade
          - 3.3 -> 0.0     # molhado = 100% de umidade (ajuste pelos seus valores reais)
    unit_of_measurement: "%"

binary_sensor:
  - platform: template
    name: "Solo Seco"
    id: solo_seco
    lambda: |-
      return id(umidade_solo_bruta).state < 30.0;  // abaixo de 30% = solo seco
    filters:
      - delayed_on: 10s   # evita disparo por leitura instável momentânea
      - delayed_off: 5s

switch:
  - platform: gpio
    pin: GPIO26
    name: "Válvula de Irrigação"
    id: valvula_irrigacao

# Automação local: rega sozinho quando o solo está seco, com tempo máximo de segurança
interval:
  - interval: 60s
    then:
      - if:
          condition:
            and:
              - binary_sensor.is_on: solo_seco
              - switch.is_off: valvula_irrigacao
          then:
            - switch.turn_on: valvula_irrigacao
            - delay: 30s   # tempo máximo de rega por ciclo — ajuste ao tamanho do vaso/canteiro
            - switch.turn_off: valvula_irrigacao

O bloco calibrate_linear traduz a leitura bruta do sensor (0 a 3,3V) para uma porcentagem de umidade — os valores de exemplo são só ponto de partida, calibre com o seu sensor específico (veja o FAQ sobre calibração). O delay: 30s dentro da automação é um limite de segurança: mesmo que o sensor trave “seco” por algum defeito, a válvula não fica aberta indefinidamente.

Integração no Home Assistant

Com o ESPHome instalado e o dispositivo online, o Home Assistant descobre automaticamente três entidades: o sensor Umidade do Solo, o binário Solo Seco e o switch Válvula de Irrigação. A partir daí dá para:

  • Ver o gráfico de umidade ao longo do dia (útil para calibrar o threshold com dados reais).
  • Criar uma automação adicional no próprio Home Assistant — por exemplo, só regar entre 6h e 8h da manhã, mesmo que o solo esteja seco em outros horários (evita regar sob sol forte, que desperdiça água por evaporação).
  • Acionar a válvula manualmente pelo app, para regar fora do ciclo automático quando quiser.

Perguntas frequentes

Preciso de fonte separada para a válvula? Sim — o relé só chaveia o circuito 12V, não fornece energia. Uma fonte 12V comum (de câmera/fita LED) resolve.

A válvula aguenta a pressão da rede residencial? Sim, modelos NF de 1/2” como o desta lista são feitos para isso — o mesmo tipo usado em máquina de lavar.

E se a energia ou o Wi-Fi cair no meio da rega? A válvula NF fecha sozinha sem energia — não fica presa aberta. Sem Wi-Fi, a automação local do ESPHome (o bloco interval) continua funcionando; só o controle remoto do Home Assistant fica indisponível.

Como calibro o sensor para o meu solo? Anote a leitura no ar (seco) e na água (molhado), e ajuste o calibrate_linear para essa faixa real — o valor de fábrica não serve para todo solo.

Dá para adicionar sensor de chuva? Sim — um sensor de chuva numa outra entrada analógica pode bloquear a rega automática em dia chuvoso, extensão natural deste projeto.


Dúvidas sobre o projeto? Fale com a gente.

Resumo dos produtos avaliados

#1
Placa ESP32 DevKit Pino Soldado Wi-Fi/Bluetooth (ESP32-WROOM-32)

ESP32

Placa ESP32 DevKit Pino Soldado Wi-Fi/Bluetooth (ESP32-WROOM-32)

4.9

R$ 38,88 · preço em 14/07/2026

Pontos positivos

  • Wi-Fi nativo — integra direto com Home Assistant, sem gateway extra
  • Maior base de avaliações desta lista (1.004), nota 4,9 — placa validada em massa

Pontos negativos

  • Pino já soldado é ótimo para prototipar rápido, mas menos flexível que placa sem solda para caber em gabinete apertado
#2
Sensor Capacitivo de Umidade do Solo para ESP32/Arduino

Genérico

Sensor Capacitivo de Umidade do Solo para ESP32/Arduino

R$ 27,99 · preço em 14/07/2026

Pontos positivos

  • Sensor capacitivo — não corrói com o tempo como o sensor resistivo mais barato
  • Regulador de tensão integrado, funciona de 3,3V a 5V (compatível direto com ESP32)

Pontos negativos

  • Ainda sem avaliações suficientes registradas no anúncio — confira a loja/vendedor antes de comprar
#3
Módulo Relé 5V 1 Canal com LED para Arduino/ESP32

Genérico

Módulo Relé 5V 1 Canal com LED para Arduino/ESP32

4.8

R$ 13,49 · preço em 14/07/2026

Pontos positivos

  • LED indicador mostra visualmente quando o relé está acionado — útil para depurar o circuito
  • Suporta até 10A/250VAC ou 10A/30VDC — sobra de margem para a válvula solenoide 12V

Pontos negativos

  • Relé mecânico faz um "clique" audível ao acionar — normal, mas repare se for instalar perto do quarto
#4
Válvula Solenoide 12V 1/2" NF para Água/Irrigação

Genérico

Válvula Solenoide 12V 1/2" NF para Água/Irrigação

4.7

R$ 38,90 · preço em 14/07/2026

Pontos positivos

  • Maior base de avaliações desta lista entre os componentes de irrigação (493), nota 4,7
  • Normalmente Fechada (NF) — em caso de falha de energia, a válvula tranca sozinha e não fica jorrando água

Pontos negativos

  • Precisa de fonte 12V separada — o ESP32 e o relé não alimentam a válvula sozinhos, só chaveiam o circuito