Sobre el proyecto
Este repositorio proporciona una interfaz humano-máquina de ESPHome/LVGL para el M5Stack Tab5 V2 (ESP32-P4), diseñada como un panel de Home Assistant. La interfaz se compila en C++ y se integra en el firmware; no ejecuta un navegador web ni consulta Home Assistant. Las actualizaciones llegan como eventos push de automatizaciones de HA mediante llamadas nativas de servicios de ESPHome, por lo que la carga de CPU se mantiene baja cuando no hay cambios.
Capacidades principales descritas:
- Página única de 1280x720 con áreas funcionales: reloj, temperatura/humedad interior, acciones rápidas, icono de estado del micrófono y una fecha que se recolorea según el nivel de alerta meteorológica.
- Clima: ventanas de pronóstico deslizables que muestran datos por hora (hora, temperatura codificada por color, lluvia, icono de condición) y un pronóstico diario de 15 días con iconos de doble capa y temperaturas máximas/mínimas.
- Tarjeta central giratoria que alterna entre planificación, gráfico de lluvia a corto plazo, iconos de vigilancia de Météo-France, un panel de información y hasta cuatro banners de alerta/información de HA; los banners se pueden descartar con un toque.
- Popup de control remoto de TV (IR Samsung) usando servicios remotos de Home Assistant.
- Popup de clima con botones de modo, un termostato de arco con objetivo optimista y actualizaciones con debounce, ajustes preestablecidos y control de flujo de aire.
- Popup de luces con selector de múltiples luces, arco de brillo con accesos directos, blancos nombrados y muestras de color.
- Sensores de plantas: tarjeta de humedad del suelo para hasta cinco sensores BLE, codificada por color, con un popup de detalle que muestra humedad, estado de riego, fertilidad, luz, temperatura y batería.
- Superposición de consola para diagnósticos y gestión de HA (RAM/PSRAM, Wi-Fi, tiempo de actividad, volumen, re-push, recargar automatizaciones, reiniciar HA, reiniciar tableta).
- Ocho consolas de juegos experimentales a pantalla completa (marble roguelite, breakout, pinball, Lode Runner, Go, trivia, damas, ajedrez), todas locales con persistencia NVS y sin dependencia de HA.
- Popup de asistente que muestra transcripción de STT y respuestas de LLM renderizadas en Markdown, con ajustes para selección de cerebro, alternancia de palabra de activación, volumen y tamaño de texto.
- Popup de calendario calculado localmente desde SNTP, con horas de trabajo, marcadores de festivos/citas y un sub-popup de detalle del día.
- Asistente de voz con detección de palabra de activación en dispositivo okay_nabu, con estado de pipeline mostrado por el color del micrófono; pipeline de Discusión opcional respaldado por el proyecto separado vromvrom-engine. Una segunda palabra de activación en dispositivo detiene las persianas enrollables mientras se mueven.
Notas de arquitectura: YAML modular dividido por preocupación, renderizado nativo de LVGL en PSRAM, fuentes de iconos vectoriales en lugar de imágenes, empaquetado de datos con cadenas delimitadas analizado en C++ y resiliencia fuera de línea con estado último conocido retenido. La documentación cubre instalación, modo demo sin HA, hardware, diseño de UI, asistente de voz, solución de problemas, ADRs y un kit de publicación. Las pruebas del lado del host y las guardas de contenido se ejecutan en una PC sin el dispositivo. El README indica que el proyecto fue creado con herramientas de IA y es una exploración personal.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.