Démarrage auto Lave Vaisselle avec HA et ESP32

Salut à tous :waving_hand:

Je voulais partager avec vous un petit projet perso autour de Home Assistant et d’un lave-vaisselle non connecté, qui tourne maintenant parfaitement chez moi.


:bullseye: Objectif du projet

:backhand_index_pointing_right: Démarrer automatiquement le lave-vaisselle en heures creuses réelles, et non théoriques.

Au départ, j’avais simplement une tuile sur mon dashboard HA qui m’indiquait dans combien de temps arrivaient les prochaines heures creuses contractuelles, et je programmais le LV en fonction de ça.

Sauf qu’en analysant les données du TIC Linky via Zigbee, je me suis rendu compte que les HC théoriques étaient souvent assez éloignées de la réalité.
Exemple récent chez moi :

  • Heures creuses contractuelles :
    01h10–06h10 et 14h10–17h10

  • Heures creuses réellement observées via le TIC :
    • 13h58–15h58
    • 00h28–06h28

Conclusion : impossible de se fier uniquement aux horaires “papier”.

Ce fait m’a été confirmé par Enedis que les HC donné par le fournisseur ne sont pas fiable à 100%
:backhand_index_pointing_right: Il fallait donc que Home Assistant déclenche le LV exactement au moment où le TIC indique le passage en HC.


:gear: Contrainte matérielle

Mon lave-vaisselle a quelques années et n’est pas connecté.

Première idée :

  • ESP32 + optocoupleurs

  • Simulation de l’appui sur les boutons de la carte de commande

Sauf que…
:backhand_index_pointing_right: la carte de commande ainsi que les boutons sont en 230 V
(et je me suis d’ailleurs pris un bon coup de bourre au passage :sweat_smile: → donc prudence absolue).

La solution la plus simple, robuste et safe a finalement été :
:backhand_index_pointing_right: mettre des relais en parallèle des boutons poussoirs existants sur la carte.


:brain: Matériel utilisé

  • Une carte ESP32 avec 4 relais et alimentation 230 V intégrée
    (trouvée pour ~15 € sur Amazon)

    • Avantage énorme : pas besoin de chercher un 5 V sur la carte du LV

    • Pas d’alim externe, tout est intégré. Je récupère le 230V sur la carte principale du LV.

  • Un bouton poussoir avec voyant intégré, ajouté sur la façade du lave-vaisselle
    → permet de donner l’ordre directement depuis la machine sans passer par le dashboard

(oui, je me suis torché avec le code couleur des câbles… :grinning_face_with_smiling_eyes:)


:electric_plug: Ce qui est piloté

Les 4 relais simulent l’appui sur :

  1. ON / OFF

  2. Mode Auto (mode par défaut du LV)

  3. Mode Intensif (plus rare, sélectionnable depuis HA)

  4. Bouton Départ

:warning: Point important :
:backhand_index_pointing_right: le lave-vaisselle fonctionne toujours parfaitement en manuel comme avant.
HA ne remplace rien, il ajoute juste une couche d’automatisation.


:robot: Fonctionnement dans Home Assistant

:small_blue_diamond: Mode Auto

  • Appui sur le bouton ajouté sur le LV ou le bouton sur le dashboard HA

  • La LED du bouton clignote → “demande HC prise en compte”

  • HA attend le passage réel en HC via le TIC

  • Quand le TIC passe en HC :

    1. ON / OFF

    2. Mode Auto

    3. Départ

  • La LED passe fixe pendant 2h40 (durée du cycle Auto)


:small_blue_diamond: Mode Intensif

  • Sélection uniquement depuis le dashboard HA

  • LED clignotante = demande HC prise en compte

  • Passage en HC :

    1. ON / OFF

    2. Mode Intensif

    3. Départ

  • LED fixe pendant 2h15 (durée du cycle Intensif)


:locked_with_key: Sécurité / annulation

  • Si on s’est trompé ou si un enfant appuie sur le bouton :
    :backhand_index_pointing_right: un appui long sur le bouton permet d’annuler la programmation HC

:scroll: Code

Je n’ai volontairement pas mis le code ici pour éviter un post de 50 pages :grinning_face_with_smiling_eyes:
:backhand_index_pointing_right: Si certains sont intéressés, je le partagerai avec plaisir, sans aucun souci.


:speaking_head: Pour finir

Déjà, pour la rédaction de ce post, j’ai été aidé par notre ami le chat (je manque de temps et je rédige beaucoup moins bien :sweat_smile:), mais le projet, les idées, le contenu et la mise en œuvre viennent bien de moi.

Je poste ici parce que j’aime partager ce que je fais.
:backhand_index_pointing_right: Si vous trouvez ça inutile, n’hésitez pas à le dire.
:backhand_index_pointing_right: Et au contraire, si ça vous intéresse et que vous en voulez d’autres du même genre, c’est avec plaisir :wink: (Prochaine étape : la recharge d’une tesla et démarrage d’un lave linge)

Merci de m’avoir lu :+1:

11 « J'aime »

Bonjour,

Suite à votre commentaire sur https://forum.hacf.fr/t/heures-pleines-heures-creuses-pour-le-suivi-cout/53228/34 je suis venu lire ce post.

j’apprécis votre adaptation et l’utilisation de l’ESP32 que vous avait faite. j’ai récupéré les informations pour la connexion d’un compteur Linky faite par Hallard, j’ai récupéré toutes les évolutions qui avaient été faite pour en faire une version V3.0.1 (c’est ça conçu à la base pour Jeedom et que j’utilise en MQTT pour envoyer les info à Home Assistant):

Mais c’est très spécifique à votre lave-vaiselle. Ca ne correspond pas au miens …

Je viens justement d’en changer et il est sous garanti. Je ne suis pas chaud pour faire une telle adaptation.

Mais Bravo !!!

1 « J'aime »

Ah c’est pas mal ce tuto pour remplacer le lixee !

J’avoue que l’esp32 je le garde pour les besoins qui n’ont pas de solution toute faite sauf si celles-ci sont trop chère ou merdique ^^

Oui évidemment si le LV est neuf moi non plus je ne l’aurai pas ouvert :rofl:

Justement, je me suis posé la question, ESPHOME c’est bien mais:

  • Une fois installé, ça builde tous seul, c’est pratique
  • Il faut un bon NUC pour le compiler (Sur Raspberry 3B, c’est trop long, peut se swap, on oubli)
  • ESPHOME et teleinfo linky, pas vraiment standard, il faut ajouter l’option …
  • Qui l’a en fonctionnement ? (pas facile à savoir)
  • Quand je refais un build quelles sont les modifications apportées ? les nouveaux bug ?
  • Enfin il faut sauvegarder son config.yaml => on ne peut pas de ressortir du build.

Il y a aussi Tasmota Linky:

  • Ce sont les mêmes problèmes (ou persque)

Finalement la domotique, c’est bien quand on l’oublie …

Alors c’est pour ça que j’ai conservé mon module Wifinfo V3.0.1

  • Dans les statistiques : Pas de reboot depuis 147 jours : que demander de mieux
  • Seule config historique ou standard
  • Seule l’ip de Home Assistant dans la config MQTT
  • Et il envoie tous les éléments qu’il reçoit du compteur

A suivre …