{#TE33E} Neue Hardware für den Teslalogger

Beitragsbild Teslalogger auf dem Raspberry Pi installieren
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 im Beitrag genannten Marken. Aber die affige Gesetzgebung Deutschlands … ach egal.

Es werden im gesamten Artikel KEINE Affiliate-Links verwendet, es gibt auch kein Sponsoring oder ähnliches.

Mein Tesla Model 3 ist nun bald 5 Jahre alt, eine Vielzahl seiner Daten wurde mit dem Teslalogger mal mehr, mal weniger zuverlässig mitgeschrieben. Der dafür verwendete Raspberry Pi 3B ist nun doch schon in die Jahre gekommen, und so musste irgendwann geschehen, was nun vorgefallen ist: Die SD-Karte hielt den zahlreichen Schreib- und Lesevorgängen wohl nicht mehr stand und verabschiedete sich.

Einigermaßen regelmäßigen Sicherungen der Daten zum Dank war der Datenverlust nicht ganz so groß, schnell wurde ein Raspberry Pi 4 (2 GB) zum neuen Teslalogger erkoren. Aber da ich noch einen Raspberry Pi 5 8GB aus einem KI-Experiment herumliegen habe, wurde schnell ein neuer Plan geschmiedet, um das ganze Projekt auf ein neues Level zu setzen.

Hier in diesem Artikel wird es rein nur um die verwendete Hardware und den Umzug der Daten gehen. Die Installation des Teslaloggers NET8 und das Upgrade eines alten Systems auf NET8 habe ich ja bereits an anderer Stelle beschrieben.

Viel Spaß beim Lesen des Beitrages!

Was findest du in diesem Artikel?

Was ist das Ziel dieses Beitrages?

Wie bereits beschrieben: Der Raspberry Pi 3B hat seine Arbeit meistens gut erledigt, aber auch ich habe so manche Datenverluste zu beklagen. Die ersten 1,5 Jahre der Aufzeichnungen fehlen, dank einer katastrophalen Backup-Strategie meinerseits, vollständig, und auch auf Reisen hat der RasPi schon versagt. Am meisten schmerzt mich der Verlust unserer Reise im vergangenen Sommer zum Europa-Finale der WRO. Die Reiseroute München → Ostsee → Ljubljana, Slowenien, konnte sich echt sehen lassen. Aber eben halt leider nicht.
Daher stand fest: Ich wollte zwei der größten natürlichen Feinde des Teslaloggers, der WLAN‑Verbindung und der SD-Karte, an den Kragen gehen.

Besonders Letztere ist ein wirkliches Problem. SD-Karten sind nun mal nicht für die ständigen Schreib- und Lesevorgänge der verwendeten MariaDB-Datenbank gemacht. Auch wenn es mittlerweile spezielle SD-Karten für diesen Dauereinsatz gibt. Zum Schluss hatte ich im RasPi 3B eine solche im Einsatz (WD Purple), aber auch diese riss letztlich irgendwann die Hufe hoch.

Somit war nun klar: Jetzt muss alles einfach anders, nerdiger und besser werden.
Geplant war nun ein völlig überdimensionierter RasPi 5 mit 8GB RAM aus einem KI-Experiment (der später ganz bestimmt auch noch andere Aufgaben im Smarthome übernehmen kann), eine 256-GB-NVMe M.2 SSD und ein Alu-Gehäuse mit aktivem Lüfter und einem integrierten M.2-Port. Interessant war hier ganz besonders der neue PCI-Express-Anschluss des RasPi 5, der es ermöglichte, direkt von der SSD zu starten und deshalb (eigentlich, aber dazu später mehr) überhaupt keine SD-Karte mehr benötigen würde … sofern man ein externes M.2-Gehäuse besitzt, damit die SSD auch geflasht werden kann.

Ferner wird der RasPi direkt mit dem LAN verbunden, sodass der mögliche Flaschenhals WLAN ebenfalls entfallen würde. Die Speicherdaten sollten in regelmäßigen Abständen automatisch auf unserem Synology-NAS gespeichert werden, um einem möglichen Datenverlust durch Tod der SSD zuvorzukommen. Ja, ich weiß, ein lokales Backup ist kein Backup, daher sollten die Daten wenigstens noch in eine Cloud gesynct werden. Mehr Aufwand wäre mir das Ganze aber dann doch nicht mehr wert 😉

Zurück nach oben

Disclaimer!

Dieser Beitrag dient der Unterhaltung und als Ideengeber für eigene Bastelprojekte.
Solltest du nun auf den Geschmack gekommen sein, deinem Teslalogger ebenfalls ein Hardware-Upgrade zu gönnen, dann viel Erfolg und Spaß!

Wenn du diesem Blog-Beitrag folgst, dann nur im Vollbesitz deiner geistigen Kräfte, aus freien Stücken und auf eigenes Risiko.
Ich übernehme keinerlei Haftung für Schäden an Hardware, Software oder deinen gesammelten Teslalogger-Daten!

Welche Soft- und Hardware habe ich für diesen Beitrag genutzt?

Raspberry Pi 5 mit 8GB RAM
Ediloca EN600 PRO 256 GB NVMe M.2 SSD 2280
Argon Neo 5 M.2 NVMe PCIe-Gehäuse für Raspberry Pi 5
Raspberry Pi OS (64-Bit-Version, Desktop-Version für zukünftige Ideen)
Cyberduck (oder beliebige andere SFTP-Software, wie Filezilla o. Ä., zur Sicherung der Daten)
TigerVNC (um auf den Desktop des RasPi zugreifen zu können)
Tabby/iTerm2 als Terminal
pCloud für die in die Cloud gsyncten Daten

Als OS für die Screenshots und zum Flashen der SSD verwende ich wahlweise macOS oder Linux Mint, das kann unter Windows alles ein wenig anders aussehen.
Überdies besitzen wir in unserem Haushalt eine Fritz!Box 5590 Fiber und auch hier wird es möglicherweise Unterschiede in der Darstellung geben.

Auf einer hellen Holzoberfläche liegen vier Hardware-Teile, die für das Projekt gekauft wurden. Links oben befindet sich eine braune Verpackung mit der Aufschrift 'Argon NEO 5 NVMe', daneben rechts ein weißer USB-Stick mit der Marke 'Transcend'. In der Mitte liegt eine kleine microSD-Karte. Unten rechts ist eine schwarze Verpackung mit der Aufschrift 'EDILOCA EN600 PRO NVMe SSD'. Alle Teile sind ungeöffnet und ordentlich angeordnet.
Die für das Projekt verwendete Hardware

Zurück nach oben

Zusammenbau der neuen Hardware

Der Zusammenbau der Hardwareteile war wenig spektakulär.
Das Gehäuse Neo 5 von Argon ist ausgezeichnet verarbeitet, hat aber auch seine Nachteile. Es gibt keinen Schlitz für die SD-Karte, man muss das Gehäuse noch einmal zerlegen, wenn man an diese Karte heranmöchte. Somit musste ich die SD-Karte erst einsetzen, dann wieder entnehmen. Pro-Tipp: SD-Karte einfach drinlassen und das Gehäuse zuschrauben. Das hat den Vorteil, dass man die SSD über den Raspberry Pi-Desktop auf die SD-Karte kopieren kann und damit eine Sicherung des Betriebssystems hat. Dieses lässt sich dann im Notfall wieder auf die SSD kopieren.

Finde ich das gut? Ja. Habe ich das gemacht? Natürlich nicht, hole ich aber noch nach 🙂
Was sich noch als nicht so klug herausgestellt hat: Wenn man nicht aufpasst, wie herum das Flachbandkabel für die SSD im Gehäuse eingebaut werden muss.

Auf einer blauen, antistatischen Arbeitsmatte mit der Aufschrift 'SPURTAR' liegen mehrere elektronische Bauteile, die für das Projekt zusammengebaut werden. Zentral befindet sich eine offene Elektronikbox mit sichtbarer Platine und angeschlossenen Kabeln. Daneben liegen ein schwarzes Gehäuse mit der Aufschrift 'OBU3', ein weiteres schwarzes Bauteil mit der Aufschrift 'THINK', mehrere Schrauben, ein Flachbandkabel und ein kleiner pinkfarbener Streifen. Die Anordnung deutet auf einen laufenden Montageprozess der Hardware-Teile für das Projekt hin.
Zusammenbau der Hardware

Zurück nach oben

Sicherung der Daten des alten Teslaloggers

Die Sicherung der Daten ist relativ einfach. Dafür verwendet man die Funktion Datensicherung , die sich im Extras-Menü der Teslalogger-Seite versteckt. Der Teslalogger legt zwar jeden Tag selbstständig eine Sicherung an, aber um wirklich auf dem aktuellsten Stand zu sein, sollte man Gebrauch von dieser Funktion machen. Wem es egal ist, der kann sich natürlich auch einfach das letzte automatische Backup auf die Festplatte ziehen. Der Sicherungsvorgang kann eine Zeit dauern, also heißt es hier Geduld mitbringen und auf die Erfolgsmeldung, die aus einer völlig weißen Seite besteht, zu warten.

Ausschnitt der Bedienoberfläche des Teslaloggers mit Fokus auf das grüne Dropdown-Menü unter dem Reiter »Extras«. Die Menüeinträge lauten: »Änderungsliste«, »Datensicherung«, »Wiederherstellung«, »Geofence« und »Reisen«. Links ist ein Kartenausschnitt mit Straßen und einem Symbol mit drei gestapelten Linien zu sehen. Die Gestaltung ist klar und kontrastreich.
Datensicherung im Teslalogger über Extras/Datensicherung starten

Wenn der Teslalogger nun seine Datensicherung auf die SD-Karte geschrieben hat, dann wird es Zeit, ein SFTP-Programm zu starten. In meinem Fall ist es Cyberduck auf dem Mac. Alternativ verwende ich auch gerne das Urgestein FileZilla, das es gefühlt auch schon immer gibt. Am Ende ist es aber vollkommen egal. Das Ziel ist es, sich auf dem RasPi anzumelden und die Backup-Dateien herunterzuladen. Diese findet man im Verzeichnis „/home/teslalogger/teslalogger/backup/“. Wenn man nach dem Datum sortiert, dann benötigt man eigentlich nur die beiden neuesten Dateien, die mit „DAY-geofence-private*.gz“ und „DAY-mysqldump*.gz“ beginnen. Aber um sicherzugehen, dass alle Daten in Ordnung sind, kann man sich natürlich auch den gesamten Datenbestand sichern. Benötigt für das Vorthaben des Umzugs wird aber nur die jeweils aktuellste Datei. Ob man die Geofence-Datei überhaupt benötigt, kann ich gar nicht sagen, da ich im Teslalogger keine Geofence-Bereiche definiert habe.

Benutzeroberfläche der Mac-Software Cyberduck mit dunklem Farbschema. Im Hauptfenster ist ein Verzeichnisbaum zu sehen, der über eine SFTP-Verbindung mit einem Raspberry Pi verbunden ist. Der Pfad '/home/Teslalogger' ist ausgewählt. In der Dateiliste werden zahlreiche komprimierte Dateien mit dem Präfix 'DAY-' angezeigt, die jeweils eine Größe von etwa 55,7 MB haben. Die Spalten zeigen Dateinamen, Größe und Änderungsdatum. Mehrere Dateien sind markiert. Am unteren Rand sind weitere Dateien und Ordner wie 'invoices', 'mysql', 'docker-compose.yml' und 'get-docker.sh' sichtbar. Im Hintergrund ist ein Bild der Erde aus dem Weltraum zu erkennen.
SFTP-Datensicherung mit Cyberduck unter MacOS

Zurück nach oben

Feste IP-Adresse für den Teslalogger vergeben

Damit man keine bösen Überraschungen erlebt und der Teslalogger immer schön im Heimnetz erreichbar bleibt, sollte man dem RasPi einen aussagekräftigen Namen und eine feste IP-Adresse zuweisen und dafür sorgen, dass dieser auch immer die gleiche Adresse erhält. Ich verwende hier einen Fritzbox-Router, das Einstellen der IP-Adressen wird auf anderen Modellen sicher anders aussehen.

Ausschnitt aus der Benutzeroberfläche einer Fritz!Box 5590 Fiber. Im oberen Bereich befindet sich eine blaue Leiste mit dem Fritz!Box-Logo und der Modellbezeichnung. Darunter sind Navigationsschaltflächen und Registerkarten für die Bereiche Allgemein, Heimnetz und WLAN zu sehen. Im Abschnitt Geräte-Informationen ist der Name des Geräts als 'raspi-ultron' eingetragen. Ein grünes Symbol mit dem Hinweis 'verbunden' signalisiert, dass das Gerät aktuell im Netzwerk aktiv ist.
Ein fester Name des RasPi hilft im Netzwerk sehr
Ausschnitt aus der Benutzeroberfläche eines Fritzbox-Routers mit dem Tab „Heimnetz“ im Vordergrund. Im Bereich „Heimnetz-Eigenschaften“ ist das Eingabefeld für die IPv4-Adresse zu sehen, das den Wert „192.168.178.190“ enthält. Darunter befindet sich eine Statuszeile mit dem letzten Nutzungsdatum und eine aktivierte Checkbox mit der Beschriftung „IPv4-Adresse dauerhaft zuweisen“. Die Gestaltung ist schlicht, mit klaren Linien und blauer Hervorhebung der aktiven Registerkarte.
Feste IP-Adresse und diese auch immer zuweisen lassen

Zurück nach oben

Das Grundsystem wird auf dem RasPi installiert

Alles neu mit Raspberry Pi OS

Früher war es deutlich komplizierter, ein System mit Raspberry OS zum Laufen zu bringen.
Heute reicht es, den Raspberry Pi Imager herunterzuladen, die Software zu starten und dem Einrichtungsdialog zu folgen. Nur, dass das Betriebssystem in diesem Fall nicht auf einer SD-Karte hätte landen sollen, sondern direkt auf der SSD. Weswegen ich mir auch noch ein externes Gehäuse für die SSD hätte kaufen müssen.

Zentraler Bereich mit weißem Hintergrund zeigt eine Downloadseite für die Software Raspberry Pi Imager. Oben befindet sich ein breiter, pinkfarbener Balken mit weißer Überschrift 'Raspberry Pi software' und einem kurzen erklärenden Text. Darunter steht in großer, fetter Schrift 'Raspberry Pi Imager' mit einer Beschreibung der Software. Es folgen drei blaue Schaltflächen mit den Beschriftungen 'Download for macOS', 'Download for Windows' und 'Download for Linux (x86_64)'. Daneben befindet sich ein Screenshot des Programms Raspberry Pi Imager mit einer grafischen Benutzeroberfläche, die eine Auswahl verschiedener Betriebssysteme für den Raspberry Pi zeigt. Ein blauer Kasten enthält einen Terminalbefehl für die Installation unter Linux. Das Layout ist klar strukturiert, die Farben sind überwiegend weiß, pink und blau.
Downloadseite des Raspberry Pi Imagers

Habe ich auch, das SSD-Gehäuse kam nur nicht rechtzeitig an. Ungeduldig, wie ich halt nun mal so bin, habe ich mich dann doch für den längeren Weg über die SD-Karte entschieden. Was sich am Ende sogar als wahrscheinlich der bessere Weg gezeigt hat.

Von hier an wird der Rest des Beitrages ein Gemisch aus Erfahrungsbericht mit Anleitungs-Charakter. Also sieh es mir bitte nach, wenn ich wild zwischen „Ich habe dann“ und „Jetzt machst du am besten“ hin und her wechsle 🙂

Installation des Raspberry Pi OS

Im ersten Schritt wird die Installer-Datei geöffnet und das Betriebssystem ausgewählt.

Ich habe mich hier für die Version „Raspberry Pi OS (64-bit)“ mit Desktop entschieden, da ich die Desktop-Oberfläche gerne via Remote Desktop über TigerVNC nutzen möchte. Und wie sich das im späteren Verlauf als richtig erwiesen hat, da sonst die Konfiguration des Cloud-Syncs deutlich komplizierter vonstattengegangen wäre. Im folgenden Dialog lassen sich dann noch alle wichtigen Einstellungen, wie der Zugang zum WLAN oder SSH, konfigurieren.

WICHTIG: Hier in diesem Setup-Dialog vergibst du auch deinen Usernamen und dein Passwort. Nachfolgend in diesem Beitrag wird von mir der User „user“ mit Passwort „passwort“ für den SSH-Login verwendet. Dass ich diese Daten NICHT wirklich verwende, versteht sich hoffentlich von selbst, oder? 😉

Die Benutzeroberfläche der Software »Raspberry Pi Imager« ist zu sehen. Links befindet sich eine vertikale Schritt-für-Schritt-Navigation mit den Punkten »Modell«, »Betriebssystem«, »Speicher«, »Anpassung«, »Schreiben« und »Fertig«. Im Hauptbereich steht die Überschrift »Wählen Sie Ihr Raspberry Pi-Modell aus«. Darunter werden verschiedene Raspberry-Pi-Modelle mit kleinen grünen Symbolen und Modellbezeichnungen aufgelistet, darunter »Raspberry Pi 5«, »Raspberry Pi 4«, »Raspberry Pi 3«, »Raspberry Pi 2« und »Raspberry Pi 1«. Unten rechts befindet sich ein roter Button mit der Aufschrift »Weiter«, unten links ein Button mit der Aufschrift »Einstellungen«. Das Fenster hat einen weißen Hintergrund mit rosa Akzenten.
Setup des Raspberry Pi Imagers

Mit dem Klick auf „Schreiben“ geht es auch schon los, damit sind Installation und die erste Konfiguration des Grundsystems abgeschlossen. Die SD-Karte kann nun in deinen RasPi gesteckt und der kleine Computer an seinem neuen Arbeitsplatz aufgestellt werden.

SD-Karte auch mit Imager-Software beschreibbar

Natürlich kannst du deine SD-Karte auch mit einem Imager-Tool, wie dem balenaEtcher oder Win32 Disk Imager, beschreiben. Wie das geht, habe ich bereits in diesem Artikel ausführlich beschrieben. Das Image für diese Installationsart findest du dann hier.

Zurück nach oben

Via SSH mit dem Raspberry Pi verbinden

Via SSH auf dem Raspberry Pi einloggen
Via SSH auf dem Raspberry Pi einloggen

Hilfe, ich hab’ den RasPi verbeult!

Solltest du bereits viel mit deinem RasPi ausprobiert haben, so wie ich, kann es leicht passieren, dass du beim Versuch, dich mit dem Minicomputer zu verbinden, die Fehlermeldung „WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED…“ zu Gesicht bekommst. Was es damit auf sich hat, kannst du zum Beispiel hier nachlesen. Dort findest du auch Wege unter macOS und Windows, um das Problem zu lösen.

Verwendest du ebenfalls wie ich einen Mac, dann gib Folgendes in deiner Terminal-Software ein (dazu ist keine Verbindung zum RasPi notwendig, würde ja momentan ohnehin nicht gehen):

ssh-keygen -R "[SERVER-NAME]oder[IP-ADRESSE]"

Im Anschluss daran sollte sich dein Computer wieder per SSH mit dem RasPi verbinden lassen.

Jetzt aber echt, verbinden des Rasberry Pi via SSH

Ich verwende hier die App „Tabby“ aus dem Homebrew Appstore. Die SSH-Verbindung funktioniert natürlich auch mit der Standard-App „Terminal“, die unter macOS automatisch vorinstalliert ist. Unter Windows verwendest du eben das bekannte Tool PuTTY oder MobaXterm (oder was du auch immer dafür einsetzen möchtest).

Hast du deinen Terminal-Client geöffnet, dann gibst du Folgendes in der Kommandozeile ein:

ssh [DEIN USER]@[IP-ADRESSE DEINES RASPI]
Beispiel: ssh user@raspi-ultron.local
Beispiel: ssh user@192.168.178.190

Oder, falls du einen anderen Port als den Standardport 22 verwenden solltest:

ssh -p [PORTNUMMER] [DEIN USER]@[IP-ADRESSE DEINES RASPI]
Beispiel: ssh -p 220 user@raspi-ultron.local
Beispiel: ssh -p 220 user@192.168.178.190

Username und Passwort sind hier die im vorherigen Abschnitt konfigurierten Daten, also „user“ und „passwort„. Hast du andere Login-Daten erstellt, dann verwendest du natürlich diese.
Für den Fall, dass du noch nie etwas mit der Kommandozeile des RasPi zu tun hattest: nicht wundern, wenn sich während der Passworteingabe im Eingabefeld nichts bewegt, das gehört so. Einfach Passwort eintippen und mit Return bestätigen.

Zurück nach oben

Grundeinstellung des RasPi

Da wir gerade erst ein nagelneues OS aufgesetzt haben, solltest du zuerst das Betriebssystem aktualisieren.

sudo apt update && sudo apt upgrade -y

Nach dem ersten Anmelden am Raspberry Pi ist nun ein Besuch im Konfigurationsmenü notwendig.

sudo raspi-config

Hier müssen bereits die ersten wichtigen Einstellungen erledigt werden.

Interface Options -> VNC aktivieren (für Verbindung mit TigerVNC zum RasPi Desktop)
Advanced Options -> PCIe Speed (Aktivierung der PCIe-Schnittstelle)
Localisation Options -> Locale -> Sprachen de_DE.UTF8, en_GB.UTF8 und en_US.UTF8 

Danach eine VNC-Verbindung zum RasPi-Desktop aufbauen und die Software „SD Card Copier“ starten. Dieser kopiert die SD-Karte auf die NVMe-M.2-SSD … sofern man das Flachbandkabel im Gehäuse richtigrum eingebaut hat. Wenn nicht, dann sieht man die SSD im Programm nicht und kann alles wieder zerlegen. Wenn es was falsch herum einzubauen gibt, dann mach‘ ich das …

Im Vordergrund ist ein Dialogfenster der Software SD Card Copier des Betriebssystems Raspberry Pi OS zu sehen. Das Fenster zeigt einen Fortschrittsbalken mit der Beschriftung 'Copying partition 2 of 2...'. Darunter befindet sich eine Schaltfläche mit der Aufschrift 'Cancel'. Im Hintergrund ist unscharf ein orangefarbener Desktop-Hintergrund mit Bergsilhouetten zu erkennen.
Die Daten werden von der SD- auf die SSD-Karte kopiert

Der nächste Schritt ist noch einmal mit sudo raspi-config in die Konfiguration und eine weitere wichtige Einstellung tätigen.

Advanced Options -> Boot Order -> NVMe aktivieren (Start von SSD)

Dann den Raspberry Pi herunterfahren, die SD-Karte entfernen (oder als Backup-Lösung drinlassen) und den Computer erneut starten. Wenn alles richtig gelaufen ist, sollte der RasPi nun vom neuen Speicherort starten.

sudo shutdown now

Teslalogger installieren

Das wichtigste war geschafft, jetzt ging es darum, den Teslalogger wieder zu installieren und die gespeicherten Daten wiederherzustellen.
Das habe ich bereits an anderer Stelle beschrieben: Teslalogger auf Raspberry Pi installieren

Teslalogger-Daten wieder herstellen

Die Wiederherstellung der Daten war natürlich so einfach, wie die vorhergehende Datensicherung. Im Menüpunkt „Extras“ den Punkt „Wiederherstellung“ und anschließend die Backup-Datei auswählen. Dann heißt es: lange warten und ja nichts anfassen 😉

Ausschnitt der Benutzeroberfläche des Teslaloggers mit hervorgehobenem Menüpunkt. Im oberen Bereich befindet sich eine grüne Navigationsleiste mit den Menüpunkten 'EXTRAS' und 'EINSTELLUNGEN'. Das aufgeklappte Untermenü unter 'EXTRAS' zeigt die Einträge 'ÄNDERUNGSLISTE', 'DATENSICHERUNG', 'WIEDERHERSTELLUNG' und 'GEOFENCE', wobei 'WIEDERHERSTELLUNG' farblich hervorgehoben ist. Links ist ein Teil einer Landkarte mit Kartensymbol zu sehen.
Wiederherstellung der vorher gesicherten Teslalogger-Daten

Datensicherung auf dem Synology NAS

Jetzt, da die Schwachstelle SD-Karte beseitigt war und ich ein wenig mehr Vertrauen in die NVMe M.2 SSD hatte, wollte ich trotzdem noch eine zusätzliche Sicherung einbauen. Wir besitzen ein NAS von Synology als Datengrab, und was würde sich besser eignen, als Datenempfänger des Teslaloggers herzuhalten?
Nachdem ich nun einen freigegebenen Ordner auf dem NAS erstellt und mit den erforderlichen Rechten versehen hatte, ging es an das Einbinden des Verzeichnisses.

Als Erstes wurde ein Mount-Punkt erstellt.

sudo mkdir -p /mnt/nas_backup

Danach musste die Datei /etc/fstab bearbeitet werden. Fstab ist übrigens eine Dateisystemtabelle, die vom Kernel beim Booten zum Mounten des Dateisystems verwendet wird.

sudo nano /etc/fstab

Hier muss dann einfach die folgende Zeile am Ende der Datei eingefügt und angepasst werden

//[IP-ADRESSE NAS]/[FREIGABEORDNER]/[BACKUP-VERZEICHNIS] /mnt/nas_backup cifs username=[USERNAME],password=[PASSWORT],uid=[UID],gid=[GID],file_mode=0777,dir_mode=0777 0 0
Beispiel: //192.168.178.100/backup/Teslalogger /mnt/nas_backup cifs username=user,password=passwort,uid=1000,gid=1000,file_mode=0777,dir_mode=0777 0 0

Die UID und GID findest du übrigens heraus, wenn du im Terminal id eingibst.
Nach dem Speichern und Schließen der Datei müssen die Service-Konfiguration neu geladen und das Laufwerk im System eingehängt werden.

systemctl daemon-reload
sudo mount -a

Jetzt wird es spannend, man kann schon mal einen ersten Test mit rsync machen.

rsync -av --delete ~/Teslalogger/backup/ /mnt/nas_backup/

Wenn alles gut gelaufen ist, dann sollten nun die Backup-Dateien aus dem Teslalogger-Verzeichnis in der NAS-Freigabe auftauchen. Das --delete bewirkt übrigens, dass, wenn Dateien auf dem Raspberry Pi gelöscht wurden, diese im Backup-Laufwerk auf dem NAS ebenfalls gelöscht werden. Sollte man dieses Verhalten nicht wollen, dann muss diese Option weggelassen werden.
Man kann übrigens auch, ohne gleich direkt rsync zu starten, die Schreibrechte auf dem Netzwerkordner prüfen. Hier wird bei ausreichenden Rechten eine testdatei.txt im Zielverzeichnis erstellt.

touch /mnt/nas_backup/testdatei.txt
Der Finder von MacOS zeigt den im Netzwerk freigegebenen Ordner Teslalogger. Im Hauptbereich sind mehrere Backup-Dateien mit Dateinamen wie 'DAY-gcdefence-private20260428065137.gz' und 'DAY-mysqldump20260428065137.gz' aufgelistet. Die Spalten enthalten Informationen zu Name, Änderungsdatum, Größe und Art der Dateien. Die Dateigrößen reichen von 41 Byte bis 55,7 MB, als Dateityp ist jeweils 'gzip-komprimiertes Archiv' angegeben. Die Benutzeroberfläche ist hell gestaltet, die Schrift ist klar und gut lesbar.
Backup-Dateien des Teslaloggers im Finder von MacOS

Zurück nach oben

Datensicherung automatisieren

Jetzt macht es natürlich keinen Sinn, das Programm rsync immer manuell zu starten. Aber um Probleme mit rsync vorzubeugen, falls das gemountete Laufwerk nicht verfügbar sein sollte (in diesem Fall würden alle Dateien in das Verzeichnis /mnt/nas_backup geschrieben werden), gilt es noch ein Bash-Script zu erstellen.

nano ~/backup_to_nas.sh

In dieses Skript kommen folgende Einträge:
(Spoiler: Im Bereich der Cloud-Sicherung verändert sich das Script noch einmal deutlich…)

#!/bin/bash

# Zielpfad definieren
MOUNT_POINT="/mnt/nas_backup"

# Prüfen, ob der Pfad ein aktiver Mount-Punkt ist
if mountpoint -q "$MOUNT_POINT"; then
    echo "NAS ist verbunden. Starte Backup..."
    rsync -av --delete ~/Teslalogger/backup/ "$MOUNT_POINT/"
    echo "Backup abgeschlossen."
else
    echo "Fehler: NAS ist nicht gemountet! Backup abgebrochen."
    exit 1
fi

Danach muss das Skript noch ausführbar gemacht und in crontab eingerichtet werden.

chmod +x ~/backup_to_nas.sh
crontab -e

Hier am Ende der Datei noch Folgendes anhängen:

0 4 * * * /home/[DEIN USER]/backup_to_nas.sh 

Wenn crontab richtig arbeitet und das Skript funktioniert, dann sollten nun um 4 Uhr morgens die Teslaloggerdaten vom RasPi auf das NAS gespiegelt werden.
Zu guter Letzt kann die Zeile in crontab noch erweitert werden. Diese Erweiterung legt eine Log-Datei an, sodass immer geprüft werden kann, ob das Backup überhaupt funktioniert hat.

0 4 * * * /home/[DEIN USER]/backup_to_nas.sh >> /home/[DEIN USER]/backup_log.txt 2>&1

Diese Log-Datei kannst du dann so auslesen:

cat ~/backup_log.txt

Zurück nach oben

Sahnehäubchen Cloud-Sync

Um das Ganze noch spannender zu machen, noch das Sahnehäubchen auf den Synology-Sync. Die Daten sollen auch gleichzeitig in die Cloud (in meinem Fall auf „den Computer eines anderen“, nämlich den von pCloud) geladen werden. Hier an dieser Stelle habe ich dann mit KI-Unterstützung weitergemacht, denn vom Cloud-Sync hatte ich nun wirklich überhaupt keine Ahnung. An dieser Stelle vielen herzlichen Dank an Google Gemini.

Für mein Vorhaben eignet sich die Software rclone , weil diese bereits pCloud und viele andere Cloud-Anbieter nativ unterstützt. Dafür muss Rclone erst mal installiert werden, danach muss der Konfigurationsvorgang gestartet werden. Kleiner Hinweis aus eigener Erfahrung: Startet die Einrichtung im Terminal auf dem Raspberry Pi-Desktop. Man benötigt einen Webbrowser, um einen Access-Token zu generieren, und das geht mit der Browser-Unterstützung des Desktops deutlich einfacher, als mit einer SSH-Verbindung von einem entfernten Computer aus.

sudo -v ; curl https://rclone.org/install.sh | sudo bash
rclone config

Nun folgt eine Reihe von Einstellungen:

n -> für "New remote"
Name: pcloud
Storage-Typ: 45 (in der langen Liste nach pcloud suchen).
Client_id -> leer lassen 
Client_secret -> leer lassen
Edit advanced config?: n
Use web browser to authenticate? 

Hier folgt nun der große Unterschied. Auf dem RasPi OS-Desktop öffnet sich mit y nun der Browser, man loggt sich beim Cloud-Dienstleister ein, erlaubt den Zugriff auf Online-Speicher, schließt den Browser, und das war es dann auch schon. Rclone macht den Rest und mit q kann das Konfigurationsmenü beendet werden.
Was bei einer SSH-Verbindung und dem Druck auf n passiert? Das erspare ich dir jetzt, verwende lieber Methode 1 😉

Nun muss das Skript ~/backup_to_nas.sh noch einmal angepasst werden. Google Gemini war dann so nett und hat dieses noch einmal komplett auf den Kopf gestellt. So sieht es nun aus:

#!/bin/bash

# Zielpfad definieren
MOUNT_POINT="/mnt/nas_backup"
LOCAL_BACKUP="/home/[DEIN USERNAME]/Teslalogger/backup"
LOGFILE="/home/[DEIN USERNAME]/backup_log.txt"

echo " " >> $ LOGFILE
echo "--- Backup Start: $(date '+%Y-%m-%d %H:%M:%S') ---" >> $LOGFILE

# 1. Sync zum NAS
if mountpoint -q "$MOUNT_POINT"; then
    echo "NAS ist verbunden. Starte Backup..." >> $LOGFILE
    rsync -av --delete "$LOCAL_BACKUP/" "$MOUNT_POINT/" >> $LOGFILE 2>&1
else
    echo "Fehler: NAS ist nicht gemountet! Überspringe NAS-Backup." >> $LOGFILE
fi

# 2. Sync zu pCloud
echo "Starte pCloud Upload..." >> $LOGFILE
/usr/bin/rclone sync "$LOCAL_BACKUP/" pcloud:[VERZEICHNIS]/[UNTERVERZEICHNIS] >> $LOGFILE 2>&1

echo "--- Backup Ende: $(date '+%Y-%m-%d %H:%M:%S') ---" >> $LOGFILE
echo "------------------------------------------------" >> $LOGFILE

Versteht sich wahrscheinlich von selbst, dass die Bereiche [DEIN USERNAME] und pcloud:[VERZEICHNIS]/[UNTERVERZEICHNIS] entsprechend angepasst werden müssen.
Jetzt kann man für einen Test das Skript testen und die Log-Datei auslesen.

bash ~/backup_to_nas.sh
cat ~/backup_log.txt

Sollte alles richtig gelaufen sein, dann müssten sich Backup-Dateien auf dem NAS und in der Cloud befinden.
Herzlichen Glückwunsch, wir haben das Projekt wohl erstmal gemeistert!

Ein stilisierter Roboter mit leuchtendem Herzsymbol auf dem Display steht tanzend neben einer großen, detailreich dargestellten Raspberry-Pi-Platine, die auf einer bunten Musikbox mit LED-Anzeige montiert ist. Im Hintergrund hängen eine Diskokugel und ein Schild mit dem Schriftzug 'PARTY', bunte Lichtstrahlen und Konfetti sorgen für Partystimmung. Links steht eine Pflanze, daneben liegt ein Luftballon. An der Wand hängt ein Poster mit der Aufschrift 'I ♥ PI'. Die Szene illustriert auf verspielte Weise das Zusammenbauen neuer Hardware-Teile für das Projekt Teslalogger im Rahmen einer Party.
Robo- und Raspberry Pi-Party – Projekt abgeschlossen!

Zurück nach oben

Zusammenfassend betrachtet: Was kann der RasPi jetzt?

  • Völlig überdimensionierter Raspberry Pi 5 8GB
  • Startet von NVMe M.2 SSD
  • Hat eine Backuplösung auf der SD-Karte mit an Bord
  • Beheimatet den Teslalogger
  • Sichert die Daten automatisch auf einem Synology NAS
  • Sichert die Daten automatisch in einer Cloud

Zurück nach oben

Letzte Worte

Damit sollte der Teslalogger durchaus ein brauchbares und langlebiges neues Zuhause haben, das Ziel wurde eindeutig erreicht.

War das Ganze machbar? Auf jeden Fall.
War das Ganze notwendig? Auf jeden Fall nicht … aber das war auch der Spaß an der Sache. Man darf schließlich auch mal „mit Kanonen auf Spatzen schießen“ (! Man darf natürlich NICHT mit Kanonen auf Spatzen schießen !) 🙂

Abschließend lässt sich nur noch sagen, dass das neue System auf jeden Fall viel Platz für Spielereien bietet. Man könnte noch zusätzlich PiHole als Werbeblocker installieren, das Smarthome über Home Assistant steuern oder sicherlich noch viele weitere interessante Dinge ausprobieren. So, dass sich der RasPi 5 nicht mehr langweilen muss, da er vom Teslalogger hoffnungslos unterfordert ist.

Ich hoffe, euch hat dieser Beitrag gefallen und vielleicht auch auf die eine oder andere Idee gebracht. Wenn ihr Lust habt, dann könnt ihr ja gerne in den Kommentaren noch etwas zu euren Bastelideen oder Teslaloggern schreiben.
Auf jeden Fall vielen lieben Dank für das Lesen dieses Blog-Beitrags, bis zum nächsten Mal, und haltet immer eure Galionsfigur sauber,
euer Michael, der Couchpirat. … Arrrr!

Zurück nach oben

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

DerCouchpirat