À propos du projet

Ce dépôt fournit une interface homme-machine ESPHome/LVGL pour le M5Stack Tab5 V2 (ESP32-P4), conçue comme un tableau de bord Home Assistant. L'interface est compilée en C++ et intégrée au firmware ; elle n'exécute pas de navigateur web et n'interroge pas Home Assistant par polling. Les mises à jour arrivent sous forme d'événements push depuis les automatisations HA via des appels de service ESPHome natifs, ce qui maintient la charge CPU faible lorsque rien ne change. Principales capacités décrites : - Une page unique de 1280x720 avec des zones fonctionnelles : horloge, température/humidité intérieure, actions rapides, icône d'état du microphone et une date qui change de couleur selon le niveau d'alerte météo. - Météo : fenêtres de prévision balayables affichant les données horaires (heure, température avec code couleur, précipitations, icône de condition) et une prévision quotidienne sur 15 jours avec icônes à double couche et températures max/min. - Carte centrale rotative alternant entre planification, graphique de pluie à court terme, icônes de vigilance Météo-France, un panneau d'information et jusqu'à quatre bannières d'alerte/information HA ; les bannières peuvent être fermées par un tap. - Popup télécommande TV (Samsung IR) utilisant les services remote de Home Assistant. - Popup climat avec boutons de mode, un thermostat en arc avec cible optimiste et mises à jour temporisées, des presets et le contrôle du flux d'air. - Popup éclairage avec sélecteur multi-lampes, arc de luminosité avec raccourcis, blancs nommés et nuanciers de couleurs. - Capteurs de plantes : carte d'humidité du sol pour jusqu'à cinq capteurs BLE, avec code couleur, et un popup de détail affichant l'humidité, l'état d'arrosage, la fertilité, la lumière, la température et la batterie. - Superposition console pour le diagnostic et la gestion HA (RAM/PSRAM, Wi-Fi, uptime, volume, re-push, rechargement des automatisations, redémarrage de HA, redémarrage de la tablette). - Huit consoles de jeu expérimentales en plein écran (marble roguelite, breakout, flipper, Lode Runner, Go, quiz, dames, échecs), toutes locales avec persistance NVS et sans dépendance à HA. - Popup assistant affichant la transcription STT et les réponses LLM rendues en Markdown, avec des réglages pour la sélection du cerveau, l'activation du mot-clé, le volume et la taille du texte. - Popup calendrier calculé localement à partir de SNTP, avec heures de travail, marqueurs de jours fériés/rendez-vous et un sous-popup de détail du jour. - Assistant vocal utilisant la détection du mot-clé okay_nabu sur l'appareil, avec l'état du pipeline indiqué par la couleur du micro ; pipeline Discussion optionnel soutenu par le projet séparé vromvrom-engine. Un second mot-clé sur l'appareil arrête les volets roulants pendant leur mouvement. Notes d'architecture : YAML modulaire divisé par préoccupation, rendu LVGL natif en PSRAM, polices d'icônes vectorielles au lieu d'images, compactage des données en chaînes délimitées analysées en C++, et résilience hors ligne avec conservation du dernier état connu. La documentation couvre l'installation, le mode démo sans HA, le matériel, la conception de l'interface, l'assistant vocal, le dépannage, les ADR et un kit de publication. Les tests côté hôte et les garde-fous de contenu s'exécutent sur un PC sans l'appareil. Le README indique que le projet a été réalisé avec des outils d'IA et constitue une exploration personnelle.