Qué vamos a montar
En este proyecto un ESP32 leerá un sensor de temperatura y enviará el dato a Home Assistant mediante ESPHome. El objetivo no es fabricar un producto final, sino practicar el recorrido completo: alimentación, cableado, firmware, WiFi, entidad y automatización.
Puedes usar un DHT22 para leer temperatura y humedad. Sus límites y diferencias con el DHT11 están explicados en la comparativa de sensores.
Materiales
- Una placa ESP32 de desarrollo.
- Un sensor DHT22 o un módulo compatible.
- Protoboard y cables Dupont.
- Cable USB de datos.
- Fuente USB estable.
- Home Assistant con ESPHome instalado.
No conectes cargas de red eléctrica en este montaje. El primer objetivo es leer un sensor de baja tensión y validar el software.
Cableado
Usaremos GPIO4 como ejemplo para la señal de datos:
| Sensor | ESP32 |
|---|---|
| VCC | 3,3 V si el módulo lo permite |
| GND | GND |
| DATA | GPIO4 |
Si utilizas el sensor sin módulo, revisa si necesita una resistencia de pull-up entre VCC y DATA. Muchos módulos ya la incluyen. El pinout cambia entre placas, así que confirma la serigrafía y no conectes una señal de 5 V a un GPIO del ESP32.
Crear el dispositivo en ESPHome
En el panel de ESPHome crea una configuración nueva y selecciona la placa exacta. Después adapta este bloque:
esphome:
name: sensor-temperatura
friendly_name: Sensor de temperatura
esp32:
board: esp32dev
logger:
api:
encryption:
key: !secret api_encryption_key
ota:
- platform: esphome
password: !secret ota_password
wifi:
ssid: !secret wifi_ssid
password: !secret wifi_password
sensor:
- platform: dht
pin: GPIO4
model: DHT22
temperature:
name: "Temperatura"
humidity:
name: "Humedad"
update_interval: 30s
Las claves y la red viven en secrets.yaml, no en el repositorio. El valor de
board y el modelo del sensor deben coincidir con tu hardware.
Primera instalación
- Valida la configuración en ESPHome.
- Compila el firmware y corrige el primer error que aparezca en el log.
- Conecta el ESP32 por USB y flashea la primera versión.
- Comprueba que se conecta a WiFi y que Home Assistant descubre la integración.
- Observa temperatura y humedad durante varias horas antes de fijar el sensor.
La primera carga por USB es más fácil de recuperar que una actualización OTA. No desconectes la placa durante el flasheo y conserva un cable de datos para futuras incidencias.
Comprobar que mide bien
No necesitas una calibración de laboratorio para validar el primer montaje, pero sí debes revisar coherencia:
- La temperatura no cambia de forma brusca sin una causa.
- La humedad no permanece siempre en cero o
NaN. - La lectura cambia cuando ventilas la habitación.
- El sensor no está pegado al regulador o al ESP32, que generan calor.
- La frecuencia de lectura respeta el límite del DHT.
Para comparar, coloca el módulo junto a otra referencia durante un tiempo estable. No lo mojes ni lo expongas a condensación para acelerar una prueba.
Convertir la lectura en automatización
Cuando la entidad sea estable, crea una automatización reversible, por ejemplo un aviso si la temperatura supera un umbral. Empieza con una notificación antes de controlar una calefacción o un relé. Así puedes comprobar la lógica sin poner en riesgo una carga.
Problemas frecuentes
- No aparece por USB: cable solo de carga, controlador o botón BOOT.
- No conecta al WiFi: credenciales, cobertura o red incompatible.
- Valores
NaN: modelo, pin, alimentación, pull-up o cableado. - Reinicios: fuente inestable o consumo de un periférico conectado al ESP32.
- OTA no disponible: el dispositivo debe estar en la red y la clave debe coincidir.
Fuentes y siguiente paso
Consulta el componente DHT de ESPHome y la guía del ESP32. Para elegir una placa de servidor para Home Assistant, revisa Raspberry Pi como servidor domótico.