Cómo elegir un sensor
Empieza por lo que necesitas saber, no por el sensor que traía tu kit. Para un termómetro de habitación basta con ±0,5 °C; contra el moho o en un invernadero merece la pena un sensor de humedad de ±2 % HR; una estación meteorológica que compara la presión con la previsión necesita buena precisión absoluta, mientras que un altímetro necesita buena precisión relativa.
Después mira cómo se conecta. Los sensores I²C comparten dos hilos con otros dispositivos siempre que sus direcciones sean distintas; el DHT11 y el DHT22 usan un protocolo propio de un solo hilo, el DS18B20 usa 1-Wire y la mayoría de los sensores de CO₂ y de partículas usan una UART. Con ESP32 y Raspberry Pi Pico, elige sensores que funcionen a 3,3 V o cuyas líneas de datos trabajen a 3,3 V.
Temperatura y humedad: la ubicación importa más que el chip
La humedad relativa depende de la temperatura: un sensor 2 °C más caliente que la habitación marca varios puntos de humedad de menos, diga lo que diga su hoja de datos. Colócalo lejos del microcontrolador, del regulador y de la antena Wi-Fi, mejor con un cable corto o en una caja ventilada, y lejos del sol directo.
El DHT11 y el DHT22 son baratos y sencillos, pero lentos y menos precisos. El AHT20, el SHT31, el SHT4x, el HTU21D, el Si7021 y el HDC1080 son sensores I²C con ±0,2 a ±0,3 °C típicos; de ellos, el SHT4x es el más preciso en humedad. El BME280 añade la presión a cambio de algo de precisión, y el DS18B20 y el TMP117 solo miden temperatura.
CO₂ real o eCO₂
Los sensores NDIR y fotoacústicos (MH-Z19C, SCD30, SCD40, SCD41) miden el propio CO₂, que te indica cuándo hay que ventilar una habitación. Los sensores de óxido metálico (SGP30, SGP40, SGP41, ENS160, CCS811, BME680) reaccionan a los compuestos orgánicos volátiles: algunos estiman a partir de ellos un «eCO₂», pero no es una medida de CO₂. Sirven para detectar humos de cocina, productos de limpieza o pintura, y son más pequeños y baratos.
Ultrasonidos, infrarrojos o láser para la distancia
Los módulos de ultrasonidos como el HC-SR04 tienen un haz ancho y funcionan con cristal y superficies oscuras, pero los materiales blandos absorben el eco. Los sensores láser de tiempo de vuelo (VL53L0X, VL53L1X, VL53L4CD) y el LiDAR TF-Luna tienen un haz estrecho y leen objetos pequeños, pero la luz del sol y las superficies oscuras reducen su alcance. Para depósitos de agua, lo habitual es el JSN-SR04T estanco.
Cada sensor I²C enlaza con su ficha en la lista de direcciones I²C, con conexiones, resistencias de pull-up y conflictos. Para proyectos con batería, suma la corriente del sensor a la del resto de la placa en la calculadora de autonomía de la batería.
Fuentes: hojas de datos y páginas de producto de los fabricantes (Sensirion, Bosch Sensortec, Texas Instruments, Analog Devices, Silicon Labs, TE Connectivity, Aosong, Infineon, STMicroelectronics, Benewake, Sharp, ROHM, ams OSRAM, Vishay, Winsen, ScioSense, Plantower, Nova Fitness) y documentación de ESPHome, revisadas en noviembre de 2026.
Preguntas frecuentes
¿Cuál es el mejor sensor de temperatura y humedad para ESP32?
Para precisión, un Sensirion SHT4x o SHT31 por I²C: ±0,2 °C y ±1,8 o ±2 % HR típicos. El AHT20 cuesta menos y se queda cerca (±0,3 °C, ±2 % HR). Elige el BME280 si también quieres presión, y deja el DHT22 para proyectos sencillos. Elijas el que elijas, móntalo lejos de las partes calientes de la placa.
¿DHT22 o BME280?
El DHT22 está especificado a ±0,5 °C y ±2 % HR típicos; el BME280, a ±1 °C (±0,5 °C a 25 °C) y ±3 % HR. El BME280 añade presión, funciona por I²C o SPI y consume 0,1 µA en reposo frente a unos 50 µA, así que va mejor con batería; el DHT22 es lento y usa un protocolo propio de un solo hilo. Para una humedad precisa, un SHT4x supera a los dos.
¿Por qué mi sensor marca poca humedad en casa?
Normalmente porque está más caliente que la habitación. La humedad relativa baja cuando sube la temperatura, así que un sensor calentado por el microcontrolador, el regulador o el sol marca un aire demasiado seco. Sepáralo de la placa, con un cable corto o en una caja ventilada, y compáralo con otro sensor al cabo de unos minutos.
¿El SGP30, el ENS160 o el CCS811 miden CO₂?
No. Son sensores de gases de óxido metálico que reaccionan a los compuestos orgánicos volátiles y estiman a partir de ellos un «eCO₂». Para conocer el nivel real de CO₂, por ejemplo para decidir cuándo ventilar, usa un sensor NDIR o fotoacústico como el SCD40, el SCD41, el SCD30 o el MH-Z19C.
¿HC-SR04 o VL53L0X?
El HC-SR04 llega a 4 m con un haz ancho y detecta el cristal, pero necesita 5 V y un divisor en el pin de eco con placas de 3,3 V. El VL53L0X es un pequeño sensor láser I²C a 3,3 V con haz estrecho: unos 1,2 m sobre blanco en interior, hasta 2 m a oscuras y menos al sol. Para depósitos de agua, usa el JSN-SR04T estanco.
¿Puedo conectar dos sensores con la misma dirección I²C?
Solo si el sensor permite cambiarla: muchos tienen un pin de dirección (BME280, SHT31, TMP117), los VL53 se pueden renumerar por software y en el SHT4x la dirección depende de la referencia. Si no, usa un multiplexor como el TCA9548A o un segundo bus I²C en el ESP32.
¿Cuáles de estos sensores funcionan con ESPHome?
Casi todos tienen un componente oficial de ESPHome, indicado en la tabla. No lo tienen el VL53L1X, el VL53L4CD ni el Sharp GP2Y0A21; el de Sharp se puede leer igualmente con el componente adc. El generador de ESPHome de este sitio escribe la configuración para DHT11, DHT22, BME280, SHT3x y DS18B20.