Aller au contenu principal
Mathyou ANDRE
ESP32 (Cheap Yellow Display)ESPHomeLVGLHome Assistant

CYD-Buttons-HA

Télécommande tactile pour Home Assistant sur écran ESP32 Cheap Yellow Display, via ESPHome et LVGL : allumer/éteindre trois lumières et choisir leur couleur d'un tap.

Code source

Écran CYD affichant les trois boutons Plafonnier, Chevet et Bureau

Télécommande tactile pour Home Assistant sur écran ESP32 Cheap Yellow Display (CYD) 2.8”, via ESPHome et LVGL. Trois lumières pilotées : allumer/éteindre en un tap, choisir une couleur en deux.

Fonctionnalités

  • Page principale : un bouton toggle par lumière (Plafonnier, Chevet, Bureau) et un bouton palette qui ouvre la sous-page couleur correspondante.
  • Sous-pages couleur : Blanc, Orange, Rouge, Vert, Bleu, Violet, plus un bouton « < Retour ».
  • Les boutons toggle reflètent l’état réel de la lumière dans Home Assistant (allumé = coché), pas seulement l’état demandé localement.
  • Flash initial en USB, mises à jour suivantes en OTA (Wi-Fi).

Sous-page couleur d'une lumière

Installation

Deux méthodes possibles : en ligne de commande, ou via l’add-on ESPHome Device Builder — recommandé si Home Assistant tourne déjà en local (HA OS ou Supervised), car il embarque son propre environnement de compilation et évite de gérer soi-même la version d’ESPHome et de Python.

# Méthode ligne de commande
py -3.12 -m venv venv_esphome
venv_esphome\Scripts\activate
pip install esphome==2024.11.0
esphome run esphome.yaml

Pièges connus

Retenus après plusieurs sessions de débogage sur cette combinaison ESPHome/LVGL/écran :

  • color_palette: 8BIT n’existe pas dans ESPHome 2024.11.0 : le firmware plante au démarrage.
  • auto_clear_enabled: false est obligatoire dans le bloc display avec LVGL, sinon erreur au démarrage.
  • Ne pas ajouter color_order: rgb : ça rend l’écran entièrement blanc.
  • Utiliser la syntaxe homeassistant.service (pas homeassistant.action, réservée aux versions 2025+ d’ESPHome).