In dem Artikel „Raspberry-Temparatur in CSV Datei fortschreiben“ habe ich schon kurz beschrieben, wie man die Temperatur von CPU und GPU des Raspberry auslesen kann. Interessant kann es aber auch sein, einen längeren Zeitraum grafisch auszugeben. Und was eignet sich dazu besser als ein Webserver, auf den von überall aus zugegriffen werden kann. Folgende Beschreibung habe ich nur auf dem Gerät Pi 3 B+ getestet.

Erreichen will ich eine einfache Ausgabe via Web-Frontend:


Was ist dazu nötig?

  1. Eine Webserver Installation mit PHP 7.x
  2. jQuery in der Version 3.4.1 (Google CDN)
  3. chart.js (Offizielle Website)
  4. die fortgeschriebene CSV Datei mit den Thermal-Daten (zum Artikel)
  5. (optional einen Cronjob zum löschen der CSV Log-Datei)

Der Quellcode für das Frontend im einzelnen:

Zunächst wird das DIV zur Ausgabe des Charts und darunter das Array mit den Daten aus der CSV Datei erstellt.

Die Datei „thermal.txt“ ist in diesem Fall eine symbolische Verknüpfung auf die original Quelle, der „thermal.log“, wie im vorangegangenen Artikel beschrieben.

Vor dem schließenden Body-Tag wird noch das entsprechende JavaScript ergänzt, was die Ausgabe steuert und die Array-Daten verarbeitet:

chart.js ist wirklich ganz hervorragend dokumentiert mit einigen Beispielen (zur Website).

Crontab zum löschen der CSV Log-Datei

Wer zum Schluss noch sporadisch seine CSV Datei löschen will, kann das am besten via Cron bewerkstelligen. Zum testen habe ich die Datei einfach alle 6 Stunden gelöscht. Denkbar wäre auch die Einträge in eine Datenbank zu schreiben oder bereits im Array zu filtern.