1. A Força da ESPHome Native API

Diferente do MQTT tradicional (onde você precisa definir tópicos, payloads JSON e formatar estados manualmente), o ESPHome utiliza a Native API (porta 6053 TCP) com o protocolo de criptografia Noise:

2. Exemplo Canônico: Firmware do Monitor de Cisterna

Abaixo está o arquivo YAML de produção para monitorar o nível de água com sensor ultrassônico JSN-SR04T à prova d'água, aplicando filtro de mediana contra ruídos de gotas e cálculo linear de volume em litros:

ESPHOME / CISTERNA-MAKER.YAML
esphome:
  name: cisterna-artesdosul
  friendly_name: "Cisterna Artes do Sul"

esp32:
  board: esp32dev
  framework:
    type: esp-idf

api:
  encryption:
    key: "SUA_CHAVE_NOISE_GERADA_PELO_ESPHOME_32_BYTES"

ota:
  - platform: esphome

wifi:
  ssid: !secret wifi_ssid
  password: !secret wifi_password
  manual_ip:
    static_ip: 192.168.1.180
    gateway: 192.168.1.1
    subnet: 255.255.255.0

sensor:
  - platform: ultrasonic
    trigger_pin: GPIO5
    echo_pin: GPIO18
    name: "Nível da Cisterna (%)"
    update_interval: 5s
    unit_of_measurement: "%"
    icon: "mdi:water-percent"
    filters:
      - filter_out: nan
      - median:
          window_size: 7
          send_every: 3
      - lambda: |-
          float altura_total = 2.20;
          float distancia_lida = x;
          float nivel_agua = altura_total - distancia_lida;
          float perc = (nivel_agua / altura_total) * 100.0;
          if (perc < 0.0) perc = 0.0;
          if (perc > 100.0) perc = 100.0;
          return perc;

  - platform: template
    name: "Volume da Cisterna (Litros)"
    unit_of_measurement: "L"
    icon: "mdi:water"
    lambda: |-
      float perc = id(nivel_da_cisterna).state;
      return (perc / 100.0) * 5000.0;

switch:
  - platform: gpio
    pin: GPIO23
    name: "Bomba da Cisterna"
    icon: "mdi:pump"
    id: rele_bomba
⚠️ Atenção Elétrica (GPIO 18 Echo): O pino ECHO do sensor JSN-SR04T opera em 5V. Nunca ligue o ECHO direto no pino do ESP32! Utilize um divisor de tensão resistivo (resistor de 1kΩ em série e 2kΩ para o GND) para rebaixar o sinal a 3.3V com segurança.

3. Displays Touch & Painéis de Parede (CYD 2.8" & LVGL)

O ESP32 Cheap Yellow Display (CYD 2432S028) de R$ 50,00 pode ser transformado em um elegante painel touch para mesa ou parede com a biblioteca lvgl no ESPHome. Ele se conecta via Wi-Fi ao Home Assistant e exibe botões virtuais, medições de temperatura e controle de lâmpadas.

4. Sincronização com as Bancadas Artes do Sul

Todos os projetos desenvolvidos na Oficina Maker, os nós portáteis do M5Stack Lab e a malha do Portão ESP-NOW integram-se de forma transparente nesta mesma central.

⬅️ Anterior: Guia Zigbee 3.0 Próximo: Benchmark Hardware N100 ➔