Bonjour,
Je cherche a faire un script HA pour envoyer une mise à jour sur un appareil esphome tout simple (Un capteur de température sur un esp8266)
Coté HA j’ai essayé :
sans succès.
J’en viens à penser que c’est l’appareil qui doit réclamer sa mise à jour via le composant esphome « update » ( Update Core — ESPHome ) mais impossible de trouver le moindre exemple. La doc annonce :
# Example configuration entry
update:
- platform: ...
sans plus de précision. On voit qu’il existe une action update.perform mais comment l’utiliser ?
Toute aide sera bienvenue. Merci.
Bonjour,
tu veux mettre a jour le firmware de ton esp directement quand une mise à jour est sortie ?
Chez pas si c’est une bonne chose à faire, vu les bugs qui peuvent avoir sur les nouvelles versions de ESPHome. Surtout les x.x.0 .
Sinon, tu peux regarder ce sujet :
attention service: est modifier en action: depuis quelques mois sur HA.
Mettre aussi le module complémentaire ESPHome, sur mise à jour automatique :
Non surtout pas, la mémoire ne supporte qu’un nombre limité d’écritures. Je veux pouvoir pousser une mise a jour par script uniquement quand j’ai modifié le YAML de l’appareil, c’est MES mises à jour, pas celle de ESPhome. Et je veux le faire par script (au lieu d’avec ESPhome builder) pour différentes raisons et notamment à un moment donné.
Et il faut donc que ça lance la compilation du code …
Bonsoir,
58 vues et personne n’a une idée ? Ça me paraissait une question simple, même assez basique mais non j’ai demandé la lune !
Je viens de voir que « ESPhome builder » peux être manipulé en ligne de commande, notamment avec « run » Reste à voir si un script peux lancer la ligne de commande …
Finalement tout ça me parait plus compliqué que de la prog pure et dure en C++ ou en Python.
Sans doute pas, mais c’est pas non plus un truc classique. Et le forum n’est pas une garantie de réponse (encore moins réponse avec solution).
Personnellement je ne trouve pas d’intérêt à faire une telle usine à gaz : ESPHOME dispose déjà un bouton pour mettre à jour tous les ESP lorsque tu le souhaites. Donc quel est l’apport de ton idée ?
A partir du moment où tu ne souhaites pousser le code que quand tu le modifies, on peut facilement penser que tu es à quelques centimètres du fameux bouton, non ?
Sans compter qu’à mon avis, le plus pénible c’est d’avoir la notification avec X mises à jours pour ESPHOME ce qui cache un peu les autres .
Bonjour,
En fait je veux pousser le code lorsque l’ESP se réveillera car il est en deepsleep la majeure partie du temps. Donc je fait une automation (qui est activée par un switch virtuel) et qui attend que l’ESP se réveille puis le met à jour.
Je ne bute que sur la mise à jour par script, le reste fonctionne bien.
Je reste persuadé qu’il existe un moyen, si ce n’est pas par HA, alors par un script installé sur le device car ESPhome propose un composant update.core avec une méthode update.perform mais sans donner le moindre exemple …
Quand l’esp se reveille, coté esp on lance un script qui teste si le bouton de mise a jour est actif.
Si c’est le cas le script empêche l’esp de se remettre en deepsleep pour permettre de le mettre à jour.
Ensuite dans une automatisation tu testes si ton esp est connecté pendant plus de x minutes et tu t’envoies une notif pour te le signaler. Tu n’as plus qu’a aller cliquer sur install.
Ce n’est pas complétement auto mais vu que dans le fil du forum HA (que j’ai juste survolé) il ne le mentionne pas peut être que ce n’est pas possible de faire plus.
Salut
Le update.install ne fait que les mise a jour du firmware esphome mais pas celle du code que l’on a modifié en tout cas pas dans le test que j’ai fait.
Oui c’est bien ça le problème…
L’idée du bouton pour bloquer le deepsleep et me notifier, c’est ce que j’utilise actuellement.
Je vais essayer d’utiliser ESPhome en ligne de commande si je trouve où il est installé.
Merci pour tes réponses.
Salut, j’avais utilisé un système similaire, basé sur l’envoi d’un message MQTT à l’ESP.
Le reste est identique : se réveille, s’il a reçu un message lui disant qu’il y a une mise à jour, il ne se remet pas en sommeil profond. A ce moment là tu peux t’envoyer une notification et faire la mise à jour + renvoyer un message pour lui dire de repasser en sommeil profond.