{#TE33E} RasPi-Teslalogger auf NET8 aktualisieren

Beitragsbild Raspberry Pi
Beitragsbild Raspberry Pi

Anzeige … Weil es das Gesetz so verlangt (was ist das?)
Der folgende Beitrag ist ein reiner Anleitungs-Artikel ohne Verbindung zu den genannten Marken TESLA, Transcent, Western Digital, AVM/Fritz, Rii oder Teslalogger. Aber die affige Gesetzgebung Deutschlands… ach egal.
Es werden im gesamten Artikel KEINE Affiliate-Links verwendet, es gibt auch kein Sponsoring oder ähnliches.

Na was für eine Überraschung.
Öffne ich am Wochenende die Admin-Oberfläche des Teslaloggers und erblicke die Meldung, meine Software sei veraltet und müsse auf NET8 aktualisiert werden. Aber nur wie? Und warum?

Das waren gute Fragen. Das „warum“ weiß ich , ehrlich gesagt, auch noch nicht so ganz. Aber das „Wie“ kann ich euch gerne zeigen. Auch wenn dieser Weg möglicherweise etwas umständlich geworden ist, aber zumindest war es mir möglich, den Teslalogger mit einer neuen Version upzudaten, bzw. diesen mit Teslalogger NET8 neu zu installieren.
Nachfolgend findet ihr meinen(!) Weg, der hoffentlich für den einen oder anderen ebenso funktioniert.

Auf jeden Fall schon mal viel Erfolg beim Upgrade!

Was findest du in diesem Artikel?

Welche Soft- und Hardware wird für diese Anleitung genutzt?
BACKUP(!) der Teslalogger-Daten
Disclaimer!
DOCKER stoppen und docker-compose.yml bearbeiten
Updaten des Betriebssystems
Erstellen neuer Verzeichnisse
Naja, oder halt auch nicht… Fehlermeldung „… port is already allocated“
Wieder warten und was dann noch so kommt
Das Ende… (?) … zumindest letzte Worte

Welche Software wird für diese Anleitung genutzt?

Ich arbeite meistens auf MacOS und verwende hier in diesem Artikel folgende Software:

macOS App „WebSSH“ (SSH- und SFTP-Zugang zum RasPi)
macOS App „iTerm2“ (SSH- Zugang zum RasPi)
macOS App „Filezilla Pro“ (SFTP-Zugang)
macOS App „Cyberduck“ (SFTP-Zugang)
macOS App „Commander One Pro“ (SFTP-Zugang)

Unter dem Strich gesehen reicht natürlich eine einzige Software, aber ich habe das Wochenende gleich mal genutzt, verschiedene Programme auszuprobieren.

Unter Windows würde ich übrigens wohl „Putty“ und „Filezilla“ verwenden.

BACKUP(!) der Teslalogger-Daten

Das dürfte der absolut wichtigste Punkt sein, die Sicherung deiner Teslalogger-Daten. Das wäre echt schade, wenn diese verloren gehen würden.
Dafür musst du dich mit dem FTP-Programm deiner Wahl, zum Beispiel Filezilla, per SFTP mit deinem RasPi verbinden. Solltest du meiner Anleitung zur Installation des Teslaloggers damals gefolgt sein, musst du dich wahrscheinlich als User „Pi“ oder auch als „Root“ einloggen, um auf die Daten zugreifen zu können.
In meinem Fall ist es „Root„, so werde ich es auch für den Rest der Anleitung handhaben.

Die zu sichernden Daten befinden im Home-Verzeichnis unter „/root/TeslaLogger/TeslaLogger/bin/backup/“
Bitte die jeweilige individuelle Schreibweise deines Pfades anpassen 😉
Die Dateien, die du in diesem Verzeichnis findest, bitte vom Pi auf deinen Computer herunterladen und sicher aufbewahren.

Disclaimer!

Folgende Anleitung ist nur für versierte Menschen gedacht, die wissen, was zum Beispiel SSH oder SFTP bedeuten.
Solltest du nicht genau wissen, was und wie du das Upgrade des Teslaloggers durchführen sollst, dann lass es bitte bleiben und suche nach jemandem, der weiß, was er tut. Wenn du einen Fehler machst, kann das zum vollständigen Verlust deiner Teslalogger-Daten führen.

Ich habe diese Anleitung nach bestem Wissen und Gewissen verfasst und übernehme keinerlei Gewähr für Hardware, Software oder deine gesammelten Daten.
Wenn du dieser Anleitung folgst, dann nur im Vollbesitz deiner geistigen Kräfte, aus freien Stücken und auf eigenes Risiko.

Viel Erfolg 🙂

DOCKER stoppen und docker-compose.yml bearbeiten

Im nächsten Schritt kannst du dein FTP-Programm beenden und startest deine Software, mit der du per SSH auf deinen Raspberry Pi verbindest.
Nach dem einloggen meldest du dich als „Root“ (oder „Pi“, je nachdem was bei dir richtig ist. Ich bleibe jetzt aber bei „Root“.) an,

sudo -i

… und wechselst in das Verzeichnis deiner Teslalogger-Installation.

cd root/TeslaLogger

Nun wird DOCKER abgeschaltet.

docker compose stop

Nun sollten vier Docker-Container heruntergefahren werden.
Anschließend bearbeitest du noch die Datei „docker-compose.yml“, um ein neues Starten der Container zu verhindern. Allerdings muss ich ehrlich gestehen, ich bin mir nicht ganz sicher, ob es diesen Schritt überhaupt braucht. Aber falls doch, schreibe ich ihn hier trotzdem auf.

nano docker-compose.yml

Hier gilt es alle Einträge, die den Wert „restart: always“ enthalten, in den Wert „restart: no“ zu ändern. Das sollte die Container teslalogger, database, grafana und webserver berteffen. Danach die Datei mit STRG-O speichern und Nano mit STRG-X verlassen.

Updaten des Betriebssystems

Da wir das alte System eh mehr oder weniger „zerstören“ und Docker gerade nicht läuft, bietet es sich selbstverständlich an, das Betriebssystem des RasPi auch gleich zu aktualisieren

apt-get update && apt-get upgrade && apt-get autoremove

Erstellen neuer Verzeichnisse

Nun wieder zurück in das Home-Verzeichnis von „root“

cd ~/root/

Dann werden folgende Verzeichnisse erstellt:

mkdir TeslaLoggerNet8
mkdir TeslaLoggerNet8/backup
mkdir TeslaLoggerNet8/mysql
mkdir TeslaLoggerNet8/invoices

Danach müssen noch die passenden Rechte vergeben werden.

cd TeslaLoggerNet8
chmod 777 backup
chmod 777 mysql
chmod 777 invoices

Es folgt die Installation des neuen Teslaloggers

wget https://raw.githubusercontent.com/bassmaster187/TeslaLogger/refs/heads/NET8/.env -O .env
wget https://raw.githubusercontent.com/bassmaster187/TeslaLogger/refs/heads/NET8/docker-compose.yml -O docker-compose.yml
docker compose pull

Jetzt heißt es warten.

Danach kann die neue Installation wieder gestartet werden.

docker compose up -d

Naja, oder halt auch nicht… Fehlermeldung „… port is already allocated“

Irgendwo hatte ich vielleicht was falsch gemacht, ich bekam eine hässliche Fehlermeldung zu sehen: „Bind for 0.0.0.0:3000 failed: port is already allocated“

Das Problem liegt daran, dass bereits andere Docker-Container die notwendigen Ports blockieren. Wie habe ich das nach einiger Tüftelei gelöst? Zuerst Docker wieder gestoppt…

docker compose down

und erst einmal geprüft, welche Container denn noch laufen.

docker ps

Da waren tatsächlich noch die alten Container vorhanden und belegten die Ports. Wichtig hierbei sind die Container-IDs aus der ersten Spalte der Übersicht.
Mit …

docker stop <ID>

… lassen sich die einzelnen Container gezielt der Reihe nach stoppen, mit …

docker rm <ID>

löschen. Sind alle Container beseitigt, sind auch die Ports wieder freigegeben und der neue Teslalogger NET8 kann gestartet werden.

docker compose up -d

Wieder warten und was dann noch so kommt

Wenn bis zu diesem Punkt alles richtig gelaufen ist, dann kannst du dich nach etwas Wartezeit wie gewohnt auf der Admin-Oberfläche der Software anmelden.
Da es sich um eine Neuinstallation handelt, müssen die wichtigsten Einstellungen gleich zu Beginn gemacht werden und dann über „EXTRAS/WIEDERHERSTELLUNG“ der MySQL-Dump wieder eingelesen werden.

Achtung! Das kann echt lange dauern (bei mir etwa 15 Minuten), du darfst hier auf keinen Fall ungeduldig werden und das Fenster schließen oder etwas anklicken. Einfach dasitzen, dem Ladebalken des Webbrowsers zusehen und auf die Erfolgsmeldung des Teslaloggers warten.

Das Ende… (?) … zumindest letzte Worte

So, das soll es auch schon gewesen sein.
Nach einem Neustart des Geräts …

shutdown -r now

… kommt nun die übliche Konfiguration mit virtuellem Auto-Schlüssel, anmelden an der Fleet-API usw.
Hier findest du dich dann hoffentlich wieder alleine zurecht. Hinweise und Support-Links im TFF-Forum findest du auch in meinem Original-Artikel zum Teslalogger auf dem Raspberry Pi und den üblichen Anlaufstellen.

Ich hoffe, dass dir diese Anleitung ein wenig weiterhelfen konnte und wünsche dir noch viel Spaß mit deinem Tesla, dem RasPi und dem Teslalogger.

Vielen Dank für das Lesen dieses Blog-Beitrags, bis zum nächsten Mal und haltet immer eure Galionsfigur sauber,
euer Michael, der Couchpirat… Arrrr!

DerCouchpirat WordPress Cookie Hinweis von Real Cookie Banner