Le week-end dernier, j’ai aidé un utilisateur du Forum de NAS à installer TeslaMate sur son Synology. Vous allez voir, c’est relativement simple, cependant il y a quelques petites subtilités. C’est pour cette raison que je vous propose aujourd’hui ce guide.
TeslaMate et NAS Synology
TeslaMate est comme un carnet de bord numérique gratuit et open source que vous pouvez installer sur un NAS, un Raspberry Pi, etc. L’application fonctionne en interrogeant l’API de Tesla et en enregistrant les données renvoyées dans une base de données. L’application permet d’offrir des visualisations détaillées et de nombreuses statistiques sur l’utilisation de la voiture électrique. L’outil est très apprécié pour ses nombreuses informations sur l’état de la voiture, l’historique de charge, des trajets, etc.
Tout d’abord, vous devez avoir le paquet Container Manager (docker) installé. Cela se passe par le Centre de Paquets. Ensuite, depuis File Station, déplacez vous dans le dossier docker et créez un nouveau dossier TeslaMate. Déplacez vous dans ce nouveau dossier et créez 5 sous-dossiers : import, teslamate-db, teslamate-grafana-data, mosquitto-conf et mosquitto-data.
Au niveau du dossier TeslaMate, faites un clic-droit puis choisissez Propriétés. Allez sur l’onglet Permission et cliquez sur le bouton Créer. En face de Utilisateur ou groupe, vous sélectionnerez SYSTEM et dans la section Permission, vous cochez les cases Lire et Écrire.
Ensuite, vous cliquez sur le bouton Effectuer…
Une fois de retour sur l’onglet Permission, cochez la case en bas « Appliquer à ce dossier, ces sous-dossiers et fichiers » et cliquez sur le bouton Sauvegarder. Toujours à la racine de TeslaMate, vous déposez ce fichier compose.yaml dont voici le contenu :
services: teslamate: image: teslamate/teslamate:latest restart: always environment: - ENCRYPTION_KEY=aZ3Rt4yu$ #remplacer pour chiffrer les jetons de l'API Tesla - DATABASE_USER=teslamate - DATABASE_PASS=q$3eRt+uY #remplacer avec votre propre mot de passe - DATABASE_NAME=teslamate - DATABASE_HOST=database - MQTT_HOST=mosquitto - TM_TZ=Europe/Paris ports: - 4075:4000 volumes: - ./import:/opt/app/import cap_drop: - all database: image: postgres:15 restart: always environment: - POSTGRES_USER=teslamate - POSTGRES_PASSWORD=q$3eRt+uY #remplacer avec votre propre mot de passe - POSTGRES_DB=teslamate volumes: - ./teslamate-db:/var/lib/postgresql/data grafana: image: teslamate/grafana:latest restart: always environment: - DATABASE_USER=teslamate - DATABASE_PASS=q$3eRt+uY #remplacer avec votre propre mot de passe - DATABASE_NAME=teslamate - DATABASE_HOST=database ports: - 3000:3000 volumes: - ./teslamate-grafana-data:/var/lib/grafana mosquitto: image: eclipse-mosquitto:2 restart: always command: mosquitto -c /mosquitto-no-auth.conf # ports: # - 1883:1883 volumes: - ./mosquitto-conf:/mosquitto/config - ./mosquitto-data:/mosquitto/data
Rentrons un peu dans le détail… Pour faire fonctionner, TeslaMate a besoin de 3 autres applications (container) :
- Grafana : pour les ;
- : pour stocker les données en local sur le NAS ;
- Mosquitto : serveur de messagerie MQTT (Message Queuing Telemetry Transport).
TeslaMate utilise par défaut le port 4000, mais ici j’ai fait le choix d’utiliser le port 4075. Pour la base de données, nous utiliserons le dossier teslamate-db avec le nom d’utilisateur teslamate avec le mot de passe q$3eRt+uY.
Ouvrez Container Manager et allez sur le menu de gauche Projet, puis appuyez sur le bouton Créer. Donnez un nom à votre projet (ici : teslamate) et sélectionnez le répertoire TeslaMate contenant le fichier compose.yaml fraichement téléchargé. Le système détecte automatiquement la présence du fichier, cliquez sur le bouton OK. Vous devriez avoir quelque chose de ce style :
Il ne reste plus qu’à cliquer sur le bouton Suivant, puis encore Suivant et enfin le bouton Effectué. Maintenant, on patiente…
C’est terminé, vous pouvez appuyer le bouton Fermer.
Accéder à TeslaMate
Ouvrez un nouvel onglet dans votre navigateur et tapez dans la barre d’adresse de votre navigateur :
- http://AdresseIPduNAS:4075
- http://NomduNAS:4075
La mire ci-dessous devrait apparaitre :
Si vous utilisez la fonction pare-feu (firewall) sur votre NAS Synology, pensez à ajouter une règle pour le port 4075 😉 Pour récupérer les jetons, il faudra passer par un outil tiers (le lien est sous le bouton Connexion).
Enfin pour terminer, allez dans Réglages (en haut à droite) puis tout en bas de la page vous saisirez l’adresse de Grafana dans le champs Tableaux de bord :
- http://AdresseIPduNAS:3000
- http://NomduNAS:3000
le mot de passe par défaut est admin.
Voila, c’est terminé !