Des projets sont apparus pour communiquer alors directement par l’intermediaire de la puce bluetooth BLE de la tesla. D’abord a base de PC, raspberry puis microcontrolleur esp32. La solution esp est desormais parfaitement fonctionnelle.
La solution avec esp m’a tout de suite interpellé car j’ai déjà un peu partout des esps chez moi , facile a deployer et pas cher. Je n’avais plus de tesla par contre…Des que ce petit soucis a été réglé , j’ai voulu testé le projet github :
https://github.com/yoziru/esphome-tesla-ble
En gros, on place un microcontrolleur a coté de la tesla et celui-ci permet de remonter toute les infos au système domotique Home Assistant. L’avantage est que la communication est locale BLE et on est donc plus limité en nombre d’appels de l’api et le retour est temps reel.
Ca vous donnera plein d’infos sur votre voiture en local. L’interet principal ( mais pas que ) est le contrôle de la charge de manière automatisé et a partir de 1A seulement. ( meme si pas vraiment utile )
Manque de chance, le projet initial a un probleme de compilation avec la derniere version d’esphome, ca complique et tous les tutos actuels qu’on peut trouver ( souvent partiels ) ne peuvent plus marcher. En voici un ok en Aout 2025.
Quelques images des infos ou controles alors accessibles :



Prerequis :
1 – Un microcontrolleur ESP.
Le projet a semble été testé intensivement avec un M5 stack S3 et M5 nano C6
- Je n’avais pas ca chez moi. Donc je ne pourrai pas valider la portée de ceux-ci. Apres avoir testé un un simple esp32 dev kit ( sans antenne externe ) , je me suis apercu que la distance ok entre la tesla et l’esp est ridiculement petite
- J’avais un seul modele avec antenne externe donc mes tests ont été fait avec un XIAO espC3 que j’avais chez moi et avec une petite antenne externe. La portee n’est pas ouf mais ca fonctionne en placant l’esp dans mon sous sol et la tesla a l’exterieur a quelques metres de la porte de garage fermée. Ca rends l’usage facile pour moi, je valide donc ce module traversant un mur de beton meme si pas ideal pour utiliser wifi et ble en meme temps. Au pire on peut l'equiper d'une plus grosse antenne si necessaire.
- Un lot de 3 coute 18€ - 3€ de coupon soit 5€ l’unite ce jour sur https://s.click.aliexpress.com/e/_c3PkGdxt
Il doit y avoir mieux. ( une carte esp poe avec ethernet et antenne ble externe separée par exemple ) . Mais ca sera plus cher et ca ne compilera pas forcement sans modif.
Un esp32devkit avec une portee ok si dans la meme pièce est possible aussi:
https://s.click.aliexpress.com/e/_c3LELowb
2- Une install Home assistant. Je ne vais pas detailler ce point mais HAOS s’installe en 5 minutes assez facilement sur toute machine virtuelle ou petit pc dédié. Un petit domaine perso en https pour le flashage facilitera un peu les chose mais ca n’est pas indispensable. Attention, une fois installé , on veut tout automatiser…
3- Dernier detail, une tesla…
C’est tout…Et cela vous permettra de faire des scenarios reellement « smart » ( avec 5€ ) pour la charge, pourtant impossible a faire pour les bornes « smart » ( depassant les 1000€ )
1- La compilation du firmware esp-home. Recup param vehicule
a. Plusieurs methodes mais je vais indiquer ici celle qui me semble la plus simple pour quelqu’un ne connaissant rien en esp. Il faut noter que la version du github ne compile pas sans erreur actuellement pouvant decourager les testeurs.
b. Recup du VIN : Aller juste sur votre app tesla ou compte tesla pour recuperer votre VIN. Exemple "XP7YGCEL0PBXXXX92"
c. Recup mac address BLE de votre vehicule . Le plus simple est d’installer une app android ( ou ios ) . BLE scanner fait ca tres bien sur android. . Ca sera quelque chose comme : 74:46:B3:66:XX:XX Assez simple a determiner car juste a coté , ca sera le signal le plus fort et le nom BLE devrait ressemble a « S___________C »
2- Installer l’addon esphome dans home assistant ou mettre a jour .
3- Editer secrets.yaml ( en haut a droite) et ajouter/modifier les lignes suivantes
Code : Tout sélectionner
# Your Wi-Fi SSID and password si pas existant
wifi_ssid: "ssidcustom"
wifi_password: "pass"
# pour la mise a jour par wifi, sans est ok si non parano
ota_password: ""
# en cas de probleme connection a votre reseau wifi, un hotspot est emis par l'esp pour s'yconnecter et corriger mais le plus simple est d'avoir une config correcte.
wifi_hotspot_password: "pass"
# tesla
ble_mac_address: "74:46:B3:66:XX:XX"
tesla_vin: "XP7YGCEL0PB09XXXX"
# a personnaliser, garder la votre
api_encryption_key: "t4W2Jays5nttJVmOU2ylDOu+4tYNtl4BSji0+5xt+dE=" Code : Tout sélectionner
substitutions:
# all substitutions for this project
friendly_name: Tesla BLE
device_name: "tesla-ble-sous-sol"
device_description: Tesla BLE
ble_mac_address: !secret ble_mac_address
tesla_vin: !secret tesla_vin
charging_amps_max: "32"
esp32:
board: esp32dev # set as needed for your board
# si besoin de traverser un mur en beton ou portee plus grande, ce module ci dessous avec antenne externe y arrive, pas le esp32 dev kit, decommenter les 2 lignes en dessous et commenter la ligne ci dessus
#board: seeed_xiao_esp32c3
#variant: esp32c3
framework:
type: esp-idf
api:
encryption:
key: !secret api_encryption_key
wifi:
ssid: !secret wifi_ssid
password: !secret wifi_password
external_components:
source: github://PedroKTFC/esphome-tesla-ble
packages:
base: github://PedroKTFC/esphome-tesla-ble/packages/base.yml
common: github://PedroKTFC/esphome-tesla-ble/packages/common.yml
project: github://PedroKTFC/esphome-tesla-ble/packages/project.yml
client: github://PedroKTFC/esphome-tesla-ble/packages/client.yml
# listener: github://PedroKTFC/esphome-tesla-ble/packages/listener.yml # Uncomment this to scan find your VIN BLE MAC address
esphome:
name: ${device_name}
name_add_mac_suffix: false
friendly_name: ${friendly_name}
libraries:
- TeslaBLE=https://github.com/PedroKTFC/tesla-ble.git
tesla_ble_vehicle:
odometer: # miles by default, edit the entity in home assistant if you need km
name: "Compteur" # Rename if desired
# At the time of writing, these are set to the default values. If you require a different value, uncomment and edit the value
# update_interval: 2s # Base polling interval, used for VCSEC sensors
# post_wake_poll_time: 300 # How long to poll for data after car awakes (s)
# poll_data_period: 60 # Normal period when polling for data when not asleep (s)
# poll_charging_period: 2 # Period to poll for data when charging (s)
a. Connecter l’esp a votre PC et suivez la procedure de l’addon esp home. A un moment, remplacer le fichier de config initialisé par celui-ci-dessus et relancer l’install. Si vous n’etes pas en https, choisissez « manual download » et vous pourrez l’installer sur votre esp a partir du site https://web.esphome.io/ . On pourra choisir ensuite une mise a jour par wifi.
6- Retourner sur les intégrations home assistant, home assistant devrait avoir trouvé votre nouvel esp une fois relancé avec ce firmware juste compilé , vous pouvez l’ajouter à HA.
7- Si vous allez ensuite sur les devices de home assistant en cherchant votre esp , vous arriverez a la page de config du device. Il faut valider que le signal wifi est correct ainsi que le signal ble. ( > -80db , donc -60db est ok )
8- Le plus dur est fait si connecté au wifi et le signal ble est correct . Un bon signal est necessaire pour la procedure d’appairage. Redemarrer votre esp, aller sur la page du device home assistant , cliquer sur « pair key » , votre tesla devrait vous proposer d’ajouter une clé en placant votre carte sur l’endroit dédié. Accepter sur la tesla. ( J’ai du faire la manip 2 fois et le redémarrage de l’esp a aidé ). Soyez patient, le message sur la tesla peut ne pas etre immediat. Renommer la clé ajoutée sur votre tesla pour vous souvenir de son usage.
9- Ca y est , c’est fait, la page du device sur HA vous permet de controler votre tesla localement sans limite ou de remonter les infos de votre tesla dans home assistant . Un petit coup de klaxon permet de verifier a distance…J’essaierai de faire un tuto pour un exemple de scripting du contrôle de la charge un peu plus tard…
Recharge à 1A en cours possible...










