Intégration externe - Teslemetry (voitures Tesla et Powerwall)

Salut tout le monde ! :waving_hand:

On continue la série nord-américaine :united_states: avec du lourd : Tesla, pour les voitures et les Powerwall. Elle colle pile à l’axe énergie de Gladys :high_voltage:

Elle passe par Teslemetry : la Fleet API officielle de Tesla impose à chaque utilisateur de déclarer une application de développeur et d’héberger une clé sur son propre domaine, autant dire personne. Teslemetry s’occupe de tout ça pour un simple jeton. C’est un abonnement payant chez eux, je préfère le dire tout de suite.

Ce que ça fait

Pour chaque voiture :

  • :battery: batterie, autonomie (km ou miles selon votre profil), état et puissance de charge, prise branchée ou non ;
  • :thermometer: températures intérieure et extérieure, kilométrage, voiture réveillée ou endormie ;
  • :control_knobs: depuis Gladys : lancer ou arrêter la charge, régler la limite et l’intensité de charge, la clim et sa température, verrouiller, activer le mode Sentinelle.

Pour le Powerwall et le solaire : production, consommation de la maison, réseau (soutirage / injection), charge et décharge de la batterie, présence du réseau, mode de fonctionnement réglable, et des index en kWh pour le suivi d’énergie.

Deux widgets : « Véhicule Tesla » et « Flux d’énergie ».

Le truc sympa

Voiture branchée et surplus solaire → on lance la charge :sun::automobile:
Coupure du réseau → notification, et on coupe les gros consommateurs :electric_plug:
Charge terminée → « Ta Tesla est prête » sur le téléphone :white_check_mark:

Et promis : relever les données ne réveille jamais la voiture. Elle n’est réveillée que pour une commande que vous avez demandée, donc pas de batterie vidée en douce :wink:

Installation

:warning: Gladys 5.1 minimum.

  1. Créez un compte sur teslemetry.com, reliez votre Tesla et générez un jeton d’accès.
  2. Dans Gladys : Intégrations → Tesla → Installer, collez le jeton, puis l’onglet Découverte pour ajouter la voiture et le site d’énergie.

Petites réserves honnêtes : pas de position GPS (volontairement), ni coffre, fenêtres ou sièges chauffants pour l’instant, et les index d’énergie partent de zéro à l’installation.

:warning: Développée sans le matériel : je n’ai ni Tesla ni Powerwall. Les tests reposent sur les données de test de l’intégration Home Assistant et sur la doc officielle, mais rien ne remplace un vrai essai.

Comme les précédentes, elle est développée avec Claude Code :robot:. Projet indépendant, non affilié à Tesla ni à Teslemetry.

Dépôt : GitHub - guim31/gladys-tesla: Tesla vehicles and Powerwall energy sites (via Teslemetry) for Gladys Assistant · GitHub

Vous avez une Tesla ou un Powerwall ? Je compte sur vous pour les premiers retours :folded_hands: @mutmut, j’ai vu que tu avais un Powerwall gen3 : si ça te dit de tester la partie énergie, je suis preneur :wink:

:weary_face: je me suis emmêlé les pinceaux, c’est une borne Wall Connector gen3 que j’ai, je ne sais pas ce qui m’est passé par la tête quand j’ai écrit, sûrement que j’en veux une :joy:
Donc je ne pourrais pas tester, désolé.
Mais si tu rajoute les bornes, c’est avec plaisir par contre !

Petite remarque avec Teslametry, ce n’est pas possible de passer via GladysPlus à la place ?

Pas de souci @mutmut :grinning_face_with_smiling_eyes:

La borne Wall Connector, bonne nouvelle : la gen3 a une petite API locale, sans compte ni cloud. Je l’ajoute à l’intégration Tesla, et elle marchera même sans abonnement Teslemetry : puissance de charge, véhicule branché ou en charge, énergie totale. Du coup tu seras le testeur idéal :wink: Je te fais signe dès que c’est prêt.

Gladys Plus à la place de Teslemetry : pas pour l’instant. Pour passer par l’API officielle de Tesla, il faut une application de développeur enregistrée chez Tesla, un nom de domaine qui héberge une clé, et la signature des commandes. Gladys Plus pourrait jouer ce rôle si une application Tesla était enregistrée pour toute la communauté Gladys, comme le fait Teslemetry. C’est un chantier côté Gladys Plus, donc une question pour @pierre-gilles :slightly_smiling_face:

@mutmut, c’est prêt :tada: La 1.1.0 de l’intégration Tesla lit ta Wall Connector gen3 directement sur ton réseau local, sans Teslemetry ni abonnement.

Pour l’installer

  1. Fixe l’adresse IP de ta borne dans ta box (pour qu’elle ne change pas).
  2. Dans Gladys : Intégrations → Tesla → Configuration, saisis l’adresse IP de la borne (le jeton Teslemetry est maintenant facultatif), puis clique sur Tester les bornes Wall Connector.
  3. Onglet Découverte : ajoute ta borne.

Ce que tu obtiens

  • :electric_plug: l’état du connecteur et de la charge (disponible, véhicule branché, en charge…) et un statut en clair ;
  • :high_voltage: la puissance de charge, l’énergie de la session, la tension, le courant et la température de la poignée ;
  • :bar_chart: l’énergie totale délivrée, branchée sur le suivi d’énergie de Gladys, comme un sous-compteur de ton compteur principal ;
  • :puzzle_piece: un widget « Borne Tesla » ;
  • :clapper_board: quatre déclencheurs de scène rien qu’à elle : véhicule branché, débranché, charge démarrée, charge terminée (avec l’énergie de la session).

Petites réserves honnêtes : la borne est en lecture seule (son API locale ne permet pas de piloter la charge), et dans le widget de consommation, ne coche pas en même temps ton compteur principal et la borne si tu veux un total juste, sinon la recharge compte deux fois.

:warning: Développée sans le matériel : tes retours me seront précieux, surtout la puissance affichée comparée à celle de l’appli Tesla, et ce qui se passe lors d’un vrai branchement et d’une vraie fin de charge. La mise à jour te sera proposée dès que le store l’aura vue, dans la journée. Merci d’avance :folded_hands:

Top @guim31, merci !
Je ne vois que la 1.0.1 dans Gladys donc je reviens dès que j’ai pu testé.

Une réflexion m’est venue par rapport à Telasmetry. Je crois que pas mal de monde utilise Tessie aussi ou d’autres applications tierces.
@Terdious était sur le coup : Intégration Tessie API (contrôle Tesla via Tessie)
A mon avis, il faudra prévoir dans un futur dev la possibilité de choisir son fournisseur.

Perso j’ai aussi une Tesla mais je ne la pilote que par l’appli officielle.
Par contre j’utilise Teslamate (gratuit et opensource) pour tout ce qui est suivi, ce serait aussi un futur dev à mettre ne place, je ne sais pas, sachant qu’on peut aussi récupérer les données via MQTT.

EDIT : forcer la mise à jour ça marche bien :joy: 1.1.0 installée, je teste tout ce que je peux !

idée comme ça : pas possible d’avoir le l’auto-discovery ?

Il y a une API dans les intégrations externe pour demande un webhook Gladys Plus donc même pas besoin de moi :grin:

il faut juste que chaque utilisateur crée son application côté Teslemetry pour avoir ses clés d’API et renseigner son webhook.

Par contre en terme de nommage, il vaudrait mieux appeler cette intégration « Teslemetry » plutôt que Tesla, car il y a d’autres services !

Merci à tous les deux pour les retours :folded_hands:

@pierre-gilles bien vu pour le nom, je fais le ménage :

  • l’intégration actuelle va s’appeler Teslemetry (voitures Tesla et Powerwall via Teslemetry) ;
  • la borne Wall Connector part dans sa propre intégration, Tesla Wall Connector, 100 % locale, sans compte ni abonnement. C’est plus logique, une borne en local n’a rien à faire sous le nom d’un service cloud. C’est d’ailleurs comme ça que fait Home Assistant.

Pour le webhook Gladys Plus, merci pour l’info, je regarde de près. Le point qui coince avec l’API officielle de Tesla, c’est qu’elle impose une clé publique hébergée sur le domaine de l’application, plus l’appairage d’une « clé virtuelle » dans chaque voiture. Je vais voir si on peut s’en sortir avec ça.

@mutmut :

  • la découverte automatique arrive avec la nouvelle intégration Tesla Wall Connector. La borne ne s’annonce pas sur le réseau, donc l’intégration ira la chercher elle-même sur votre réseau local, avec un bouton « Rechercher les bornes ».
  • Migration : tu pourras garder ta borne dans la 1.1.0 en attendant. Dès que Tesla Wall Connector est en ligne, je te fais signe : il suffira de l’installer et de retirer la borne de l’ancienne intégration.
  • Tessie et TeslaMate : très bonnes idées. Ce seraient des intégrations à part, chacune avec son nom, comme le suggère @pierre-gilles. Je les note pour la suite :wink:

@mutmut c’est en ligne :tada: La borne a sa propre intégration : Intégration externe - Tesla Wall Connector

En attendant que le store la voie, tu peux l’installer tout de suite par Intégrations → Installer depuis GitHub, avec GitHub - guim31/gladys-tesla-wall-connector: Tesla Wall Connector gen 3, read locally without any account, for Gladys Assistant · GitHub

Pour migrer ta borne :

  1. installe Tesla Wall Connector, puis clique sur Rechercher les bornes (ou saisis son adresse IP) et ajoute-la depuis l’onglet Découverte ;
  2. dans cette intégration-ci, qui s’appelle maintenant Teslemetry (1.2.0), la borne n’est plus gérée : tu peux supprimer l’ancien appareil borne.

Petite précision honnête : pour Gladys, c’est un nouvel appareil, l’historique de la 1.1.0 ne suit pas. Comme tu ne l’avais que depuis quelques heures, ça devrait aller :wink:

Dis-moi ce que donnent la recherche automatique, la puissance comparée à l’appli Tesla, et un vrai branchement. Merci encore :folded_hands: