Sistema de sensor de calidad del aire ESPHome (SEN6x)
Table of Contents
Un simple sensor de CO2 a menudo no es suficiente para controlar con precisión la calidad del aire interior. En este proyecto muestro la construcción de un monitor de calidad del aire totalmente dinámico basado en ESPHome. Lo especial: el sistema se puede configurar completamente en tiempo de ejecución a través de una interfaz web sin necesidad de volver a flashear y resuelve los desafíos de hardware específicos de los sensores profesionales.
Base de hardware del troquel
El sistema se basa en componentes compactos y de alta calidad:
-
Microcontrolador: Un ESP32-C3-DevKitM-1 proporciona suficiente energía para la pantalla y garantiza una conexión WLAN estable.
-
Sensorio: El Sensirión SEN66 (compatible con SEN6x/SEN5x) es un sensor todo en uno para medir CO2, partículas (PM1.0, PM2.5, PM4.0, PM10), compuestos orgánicos volátiles (VOC), óxidos de nitrógeno (NOx), así como temperatura y humedad.
-
Mostrar: Una pantalla LCD redonda de 1,28 pulgadas con GC9A01 Controlador, controlado vía SPI.
También diseñé una carcasa adecuada para el proyecto que garantiza un flujo de aire óptimo para el sensor y aloja todos los componentes de forma compacta.
Características del software y aspectos técnicos destacados
El firmware se basa en ESPHome y utiliza la biblioteca LVGL para la interfaz gráfica. La atención se centró durante el desarrollo en la máxima flexibilidad y precisión física.
1. UI completamente dinámica y operación sin cabeza
El dispositivo está diseñado como un verdadero sistema autónomo. No necesariamente requiere una nube o incluso una instancia activa de Home Assistant. Gracias al servidor web ESPHome integrado, el dispositivo puede funcionar sin cabeza a través de cualquier navegador de la red local. Todas las asignaciones (qué valor medido se muestra en qué ranura de pantalla), colores, configuraciones de tema (modo oscuro/claro) y frecuencias de actualización se pueden cambiar en vivo en la interfaz de usuario web. La pantalla se ajusta en tiempo real.
2. Lógica específica del motor de gasolina Sensirion
Los sensores de gas para CO2, VOC y NOx requieren un período de calentamiento continuo para calcular las líneas de base correctas. Simplemente reiniciar el temporizador de consulta restablecería el sensor y distorsionaría los valores medidos. Por lo tanto, el firmware utiliza una lógica de consulta desacoplada: el sensor funciona internamente en funcionamiento continuo en un intervalo de 24 horas, mientras que un script independiente y personalizable recupera los datos de forma suave y asíncrona en el intervalo deseado (por ejemplo, cada 30 segundos) a través del bus I2C.
3. Compensación dinámica de humedad (fórmula Magnus)
Las carcasas compactas generan calor residual, lo que requiere una compensación de temperatura en el software. Sin embargo, la humedad relativa depende físicamente directamente de la temperatura. Si solo se calibra la temperatura, la precisión de la humedad mostrada disminuye. Por lo tanto, el firmware calcula mediante el Fórmula Magnus-Tetens La presión de vapor de saturación actual y corrige la humedad relativa para que coincida con la compensación de temperatura establecida. Esto significa que los valores medidos mostrados siguen siendo físicamente consistentes.
4. Límites de alarma individuales
Para poder evaluar la calidad del aire de un vistazo, se implementaron 21 valores límite individuales (tres niveles para siete sensores cada uno). Si un valor excede el límite definido, la hoja o el texto correspondiente en la pantalla cambia automáticamente al color de advertencia deseado (por ejemplo, amarillo, naranja o rojo). Estos valores de umbral y colores también se pueden configurar fácilmente a través de la interfaz de usuario.
Recursos y descarga
El proyecto es completamente de código abierto. Hago el código ESPHome completo (YAML) y el modelo 3D de la vivienda disponibles en GitHub y Thingiverse:
-
Firmware/código fuente: Haga clic aquí para acceder al repositorio de GitHub
-
Carcasa de impresión 3D (STL/STEP): Haga clic aquí para ver el proyecto Thingiverse
-
Conductor: El excelente controlador SEN6x del repositorio se utiliza como componente personalizado tuct/esphome-proyectos usado.
TPA3116r…









I tried to manhandle it but got bun all over it.
What happened?
Hello iam interested in building the same project can you please ask for more details?
Cause i dont know how to program arduino.
Thx
Can you send me the diagram of the cables? how to connect?