Bonjour à tous,
Je partage un pack de 16 cartes Lovelace pour l'électroménager et les équipements de la maison. Chaque carte affiche une illustration réaliste de l'appareil qui s'anime selon son état : le tambour du lave-linge tourne, les flammes du poêle dansent, le couvercle du congélateur se soulève quand il est ouvert…

Le point de départ : chez moi, le lave-linge, le sèche-linge, le lave-vaisselle, le frigo et le ballon d'eau chaude sont sur de simples prises connectées qui remontent la puissance (W) et l'énergie (kWh). Je voulais autre chose qu'une icône et un chiffre, et je n'ai rien trouvé qui exploite bien ce type d'installation. Les cartes sont donc conçues d'abord pour ça : une prise avec mesure suffit, pas besoin d'un appareil « connecté » ni d'une appli de marque.
Dépôt GitHub : GitHub - skyrotter/ha-appliance-electromenager-cards: 16 realistic animated Lovelace cards / électroménager: washer, dryer, dishwasher, water heater, oven, microwave, fridge, freezers, pellet stove, pool pump, 3D printer, solar, VMC, cooktop, radiator. HACS. · GitHub
Démo en ligne (sans rien installer) : Appliance Cards – page de test
Les 16 cartes
| # | Carte | Type Lovelace |
|---|---|---|
| 1 | Lave-linge | custom:appliance-washer-card |
| 2 | Sèche-linge | custom:appliance-dryer-card |
| 3 | Lave-vaisselle | custom:appliance-dishwasher-card |
| 4 | Ballon d'eau chaude | custom:appliance-water-heater-card |
| 5 | Four | custom:appliance-oven-card |
| 6 | Micro-ondes | custom:appliance-microwave-card |
| 7 | Réfrigérateur / congélateur | custom:appliance-fridge-card |
| 8 | Poêle à granulés | custom:appliance-pellet-stove-card |
| 9 | Pompe de piscine | custom:appliance-pool-pump-card |
| 10 | Imprimante 3D | custom:appliance-printer-3d-card |
| 11 | Congélateur coffre | custom:appliance-chest-freezer-card |
| 12 | Congélateur à tiroirs | custom:appliance-drawer-freezer-card |
| 13 | Panneaux solaires + onduleur | custom:appliance-solar-card |
| 14 | VMC / extracteur de salle de bain | custom:appliance-vmc-card |
| 15 | Plaques de cuisson électriques | custom:appliance-hob-card |
| 16 | Radiateur électrique à inertie | custom:appliance-radiator-card |
Ce que chaque carte affiche
- Puissance en direct, énergie consommée, coût (si vous avez un capteur de coût)
- Temps restant et heure de fin (« Fin à 15:54 ») si l'appareil les fournit
- Températures (four, ballon, frigo, congélateurs, radiateur, buse et plateau de l'imprimante) si vous avez les capteurs
- Alertes : porte ou couvercle ouvert, frigo ou congélateur trop chaud, humidité élevée (VMC), fenêtre ouverte (radiateur), niveau de granulés bas
- Un afficheur LCD sur l'appareil qui reprend l'état, comme sur le vrai
- Un clic sur une valeur ouvre son historique
Et aussi :
- Éditeur visuel complet, pas besoin de YAML
- Détection automatique des entités à l'ajout de la carte (si leur nom contient
lave_linge,frigo,ballon,poele,piscine,solaire,vmc,radiateur…) - Suit le thème clair/sombre de HA
- Français / anglais automatiquement selon la langue de HA
- S'adapte à la taille de l'écran et à la vue en sections
- Animations désactivables (
animations: false) - Aucune dépendance : un seul fichier JS
Installation via HACS
Ou à la main :
- HACS → les 3 points en haut à droite → Dépôts personnalisés
- Dépôt :
https://github.com/skyrotter/ha-appliance-electromenager-cards, catégorie Dashboard - Cherchez Appliance Électroménager Cards → Télécharger
- Rechargez la page (Ctrl+F5)
- Modifier le tableau de bord → Ajouter une carte → tapez « Appliance »
Home Assistant 2024.8 minimum.
Comment l'état est déterminé
- Si
entitya un état descriptif (running,finished,idle, ou un texte comme Rinçage), il est utilisé tel quel. - Si
entityest uninput_booleanou unbinary_sensor:on= en marche. - Si
entityouswitchest une prise allumée : c'est la puissance qui décide (au-dessus dethreshold= en marche, en dessous = veille). - Puissance seule : au-dessus de
threshold= en marche.
Les seuils par défaut sont adaptés à chaque appareil (10 W pour le lave-linge, 20 W pour le frigo, 50 W pour le radiateur…) et réglables.
Exemple minimal avec une prise :
type: custom:appliance-washer-card
entity: switch.prise_lave_linge
power: sensor.prise_lave_linge_puissance
energy: sensor.prise_lave_linge_energie_jour
cost: sensor.lave_linge_cout_jour # facultatif
Astuce lave-linge : détection de cycle fiable (automatisation prête à l'emploi)
Un lave-linge fait des pauses (trempage, chauffe) pendant lesquelles la puissance tombe à quelques watts. Avec la puissance brute, la carte alterne entre « En cours » et « Veille ». L'automatisation suivante considère que le cycle démarre au-dessus de 100 W pendant 30 s et qu'il se termine sous 20 W pendant 8 min.
- Créez une entrée Interrupteur (
input_boolean.lave_linge_en_cours). - Ajoutez l'automatisation (remplacez le capteur de puissance par le vôtre) :
alias: Lave-linge – détection de cycle
mode: restart
triggers:
- trigger: numeric_state
entity_id: sensor.prise_lave_linge_puissance
above: 100
for: "00:00:30"
id: start
- trigger: numeric_state
entity_id: sensor.prise_lave_linge_puissance
below: 20
for: "00:08:00"
id: end
actions:
- choose:
- conditions:
- condition: trigger
id: start
sequence:
- action: input_boolean.turn_on
target:
entity_id: input_boolean.lave_linge_en_cours
- conditions:
- condition: trigger
id: end
- condition: state
entity_id: input_boolean.lave_linge_en_cours
state: "on"
sequence:
- action: input_boolean.turn_off
target:
entity_id: input_boolean.lave_linge_en_cours
# facultatif : notification de fin
# - action: notify.mobile_app_mon_telephone
# data:
# message: "La lessive est terminée 🧺"
- Dans la carte :
type: custom:appliance-washer-card
entity: input_boolean.lave_linge_en_cours
power: sensor.prise_lave_linge_puissance
energy: sensor.prise_lave_linge_energie_jour
Valeurs conseillées : lave-linge 100 W / 20 W / 8 min, sèche-linge 100 W / 15 W / 5 min, lave-vaisselle 50 W / 10 W / 10 min. Syntaxe triggers: / actions: : HA 2024.10 ou plus récent.
Détails par carte
Poêle à granulés
Avec une simple prise, la carte distingue l'allumage (la bougie consomme 250 à 400 W pendant quelques minutes) du fonctionnement (ventilateur et vis sans fin, 30 à 100 W) :
- au-dessus de
ignition_threshold(250 W) : Allumage, petite flamme, bougie rouge, fumée au conduit - au-dessus de
threshold(20 W) : Chauffe, flammes selonpower_level, braises, air chaud - en dessous : Arrêt / Veille
L'extinction, le nettoyage et les alarmes viennent d'une entité d'état (entity:) ou d'une entité climate d'une intégration de poêle.
type: custom:appliance-pellet-stove-card
power: sensor.prise_poele_puissance
energy: sensor.prise_poele_energie_jour
temperature: sensor.salon_temperature
power_level: sensor.poele_puissance_niveau # facultatif, 1–5
pellet_level: sensor.poele_niveau_granules # facultatif, %
Ne coupez jamais l'alimentation d'un poêle en marche ou en extinction : son ventilateur doit évacuer les fumées. Si switch: est renseigné, la carte demande un second clic.
Pompe de piscine
L'eau circule en boucle sur le dessin : piscine → préfiltre (eau qui tourbillonne, feuilles dans le panier) → pompe → retour avec bulles. La vitesse de l'animation suit speed (tr/min ou %) ou la puissance rapportée à max_power. runtime affiche le temps de filtration du jour, par exemple avec un history_stats :
sensor:
- platform: history_stats
name: Filtration piscine aujourd'hui
entity_id: switch.pompe_piscine
state: "on"
type: time
start: "{{ today_at() }}"
end: "{{ now() }}"
type: custom:appliance-pool-pump-card
switch: switch.pompe_piscine
power: sensor.pompe_piscine_puissance
energy: sensor.pompe_piscine_energie_jour
temperature: sensor.piscine_temperature_eau
runtime: sensor.filtration_piscine_aujourd_hui
max_power: 1100
Imprimante 3D
Imprimante à plateau mobile (Bambu Lab A1, Prusa MK, Ender…). La tête balaie, le portique monte couche après couche et la pièce grandit avec progress. Fonctionne avec les intégrations Bambu Lab, OctoPrint, Moonraker/Klipper, PrusaLink (états prepare, running, pause, finish, failed…) ou avec une simple prise (au-dessus de 40 W = impression).
type: custom:appliance-printer-3d-card
entity: sensor.a1_print_status
progress: sensor.a1_print_progress
remaining: sensor.a1_remaining_time
temperature: sensor.a1_nozzle_temperature
bed_temperature: sensor.a1_bed_temperature
program: sensor.a1_task_name
filament_color: "#ff8a1f"
Congélateur coffre et congélateur à tiroirs
- Coffre : quand
doors'ouvre, le couvercle se soulève et montre l'intérieur éclairé, avec le froid qui s'échappe. - Tiroirs : la porte s'ouvre sur quatre tiroirs transparents et un tiroir sort.
- Les deux : flocon qui pulse et air froid en bas quand le compresseur tourne, alerte « trop chaud » au-dessus de
freezer_max_temperature(−12 °C par défaut), alerte porte ouverte. - Si
switch:est renseigné, couper un congélateur demande toujours un second clic.
type: custom:appliance-chest-freezer-card
power: sensor.prise_congelateur_puissance
energy: sensor.prise_congelateur_energie_jour
temperature: sensor.congelateur_temperature
door: binary_sensor.congelateur_couvercle
Panneaux solaires
Le soleil, deux panneaux sur leur structure alu et l'onduleur, sans décor.
- Production : soleil jaune qui grossit selon la production (par rapport à
max_power), rayons qui tournent, reflet qui balaie les panneaux, énergie qui circule dans le câble jusqu'à l'onduleur. - Pas de production (nuit, pas de soleil) : soleil gris, panneaux sombres, onduleur au repos,
NIGHTsur l'afficheur.
type: custom:appliance-solar-card
power: sensor.solaire_puissance
energy: sensor.solaire_energie_jour
cost: sensor.solaire_economies_jour # facultatif
max_power: 3000 # puissance crête (Wc)
VMC / extracteur de salle de bain
Extracteur mural sur un mur carrelé. Petite vitesse : les pales tournent lentement et l'air humide est aspiré. Grande vitesse : tout accélère. Humidité au-dessus de humidity_max (70 %) : buée et gouttes de condensation, avec alerte. Avec une prise : 5–35 W = petite vitesse, au-dessus de high_threshold (35 W) = grande vitesse. Une entité speed est prioritaire si vous en avez une.
type: custom:appliance-vmc-card
power: sensor.prise_vmc_puissance
energy: sensor.prise_vmc_energie_jour
humidity: sensor.salle_de_bain_humidite
Plaques de cuisson
Table vitrocéramique noire à 4 foyers, casserole et poêle. Chaque foyer actif rougit selon son niveau, la casserole fume, la poêle grésille, et un H (chaleur résiduelle) reste affiché residual_minutes (10 min) après la cuisson. Données par foyer (zone_1 à zone_4, niveau 0–9, W ou %) si votre intégration les fournit (Home Connect, SmartThings…), sinon les foyers s'allument d'après la puissance totale.
type: custom:appliance-hob-card
power: sensor.plaques_puissance # module DIN ou pince ampèremétrique
energy: sensor.plaques_energie_jour
Une plaque de cuisson est sur un circuit dédié 20–32 A : jamais sur une prise connectée.
Radiateur électrique à inertie
Radiateur mural à six éléments avec son boîtier de commande (afficheur, icônes Confort / Éco / Hors-gel). En chauffe, les colonnes rougissent et la chaleur ondule au-dessus, plus fort selon la puissance (par rapport à max_power). Le mode est lu depuis un select fil pilote, un preset climate ou toute entité de mode. Fenêtre ouverte (window) : air froid et alerte.
type: custom:appliance-radiator-card
entity: climate.radiateur_salon # ou seulement power / mode
power: sensor.radiateur_salon_puissance
window: binary_sensor.fenetre_salon
Bouton marche/arrêt
Le bouton n'apparaît que si switch: est renseigné. Pour éviter les accidents, couper un lave-linge, sèche-linge, lave-vaisselle, poêle ou imprimante 3D en marche demande deux clics, et couper un congélateur en demande toujours deux. confirm_off: false désactive cette sécurité. Sur un lave-linge, le plus simple est souvent de ne pas mettre de switch: du tout.
Limites (pour être clair)
- Une prise ne connaît ni le programme, ni la phase (rinçage, essorage), ni le temps restant. Avec une prise seule, la carte affiche « En cours » pendant tout le cycle. Les phases et le temps restant s'affichent si votre appareil connecté (Home Connect, SmartThings, LG ThinQ…) les remonte.
- Les températures demandent des capteurs.
- Sécurité : vérifiez que la prise supporte l'appareil (16 A, soit 3 680 W en général). Four encastré et plaques de cuisson : module de mesure sur rail DIN ou pince ampèremétrique au tableau, jamais une prise connectée.
Tester sans installer
La page de démo permet de jouer avec des curseurs (puissance, état, température, porte, mode…) et de voir les 16 cartes réagir, en clair ou en sombre, en français ou en anglais :
Il y a aussi une page de tests automatiques (233 tests) :
C'est gratuit et open source (licence MIT). Je suis preneur de vos retours : bugs, appareils à ajouter, idées d'animation, ou simplement vos captures de tableau de bord. Vous pouvez répondre ici ou ouvrir une issue sur GitHub. Et si le projet vous plaît, une
sur le dépôt fait toujours plaisir.
Merci !






