| Dashboard_2.png | ||
| Dashboard_3.png | ||
| down.py | ||
| IMG_0144.jpeg | ||
| LICENSE | ||
| README.md | ||
| Schema_GPIO.png | ||
Speedtest_Display_Rasberry_Pi
1. Raspberry Pi OS installieren
Empfohlen:
- Raspberry Pi OS Lite (64 Bit)
Mit Raspberry Pi Imager auf die SD-Karte schreiben.
Während des Flashens direkt konfigurieren:
- WLAN
- SSH aktivieren
- Hostname setzen
2. System aktualisieren
sudo apt update
sudo apt full-upgrade -y
sudo reboot
3. SPI aktivieren
sudo raspi-config
Dann:
Interface Options
→ SPI
→ Enable
Neustarten:
sudo reboot
4. Prüfen ob SPI aktiv ist
ls /dev/spi*
Erwartet:
/dev/spidev0.0
/dev/spidev0.1
5. TFT-Display aktivieren
Datei öffnen:
sudo nano /boot/firmware/config.txt
Ganz unten ergänzen:
dtparam=spi=on
dtoverlay=piscreen,speed=16000000,rotate=270
6. Framebuffer aktivieren
Neustart:
sudo reboot
Danach prüfen:
ls /dev/fb*
Erwartet:
/dev/fb0
7. Testbild auf Framebuffer
sudo apt install -y fbi
Test:
sudo fbi -T 1 -d /dev/fb0 -noverbose test.jpg
8. Python installieren
sudo apt install -y python3 python3-pip python3-pil python3-numpy
9. DejaVu Fonts installieren
sudo apt install -y fonts-dejavu-core
Prüfen:
ls /usr/share/fonts/truetype/dejavu/
10. InfluxDB Python Client installieren
pip3 install --break-system-packages influxdb-client
11. Python-Datei anlegen
nano /home/hubobel/down.py
Python-Code einfügen und speichern.
12. Testlauf
python3 /home/hubobel/down.py
Jetzt sollte sichtbar sein:
- Downloadrate
- Uploadrate
- Ping
- WLAN-IP
- WAN-IP
- Verlaufsgrafik
13. systemd Service anlegen
sudo nano /etc/systemd/system/down.service
Inhalt:
[Unit]
Description=Framebuffer Speedtest Display
After=network-online.target
[Service]
Type=simple
User=hubobel
WorkingDirectory=/home/hubobel
ExecStart=/usr/bin/python3 /home/hubobel/down.py
Restart=always
RestartSec=5
[Install]
WantedBy=multi-user.target
14. Service aktivieren
sudo systemctl daemon-reload
sudo systemctl enable down.service
sudo systemctl start down.service
15. Status prüfen
systemctl status down.service
Live-Log:
journalctl -u down.service -f
16. Nach Reboot testen
sudo reboot
Ergebnis
Das System läuft danach:
- ohne Desktop
- direkt auf
/dev/fb0 - rebootfest über systemd
- ressourcenschonend
- ideal für Embedded-Statusanzeigen
Dashboard-Umschaltung per GPIO-Taster
Das Display unterstützt drei unterschiedliche Dashboards, die direkt über GPIO-Taster am Raspberry Pi ausgewählt werden können.
Verwendete GPIOs
| Funktion | GPIO | Pin |
|---|---|---|
| Dashboard 2 | GPIO5 | Pin 29 |
| Dashboard 3 | GPIO21 | Pin 40 |
| Masse (GND) | — | Pin 39 |
Die Taster werden jeweils zwischen GPIO und GND angeschlossen.
Die internen Pull-Up-Widerstände des Raspberry Pi werden per gpiozero verwendet, daher sind keine zusätzlichen Widerstände notwendig.

Logik
| Zustand | Anzeige |
|---|---|
| kein Taster aktiv | Dashboard 1 |
| GPIO5 gegen GND | Dashboard 2 |
| GPIO21 gegen GND | Dashboard 3 |
Hinweise zur Konfiguration
Die dargestellten Werte werden nicht direkt durch das Projekt ermittelt, sondern aus bereits vorhandenen Datenquellen abgerufen.
Voraussetzung ist, dass die benötigten Messwerte über ioBroker und/oder InfluxDB bereitgestellt werden. Die verwendeten Datenpunkte, Measurements, URLs, Zugangsdaten und Abfragen müssen daher an die jeweilige Umgebung angepasst werden.
Das Projekt dient als Beispiel für die Visualisierung von Infrastruktur-, Netzwerk- und Systemdaten. Welche Werte angezeigt werden, hängt von den in der eigenen Installation verfügbaren Datenquellen ab.
Aktuell werden die Daten unter anderem aus folgenden Quellen bezogen:
- InfluxDB (z. B. Speedtest-, Proxmox- und Sensordaten)
- ioBroker Simple-API (
/getPlainValue/...) - UniFi Controller / UniFi Network über ioBroker
- Linux-Control Adapter für Systemdaten
Vor der Inbetriebnahme müssen die verwendeten Datenpunkte und URLs entsprechend der eigenen Umgebung angepasst werden.
Screenshots
Dashboard 2 – Hubobels Netzwerk
Übersicht über die UniFi-Infrastruktur mit:
- Aktive Clients (LAN / WLAN)
- UXG Max CPU- und RAM-Auslastung
- US24 CPU- und RAM-Auslastung
- US24 Temperatur
- Gateway-Uptime

Dashboard 3 – Proxmox Monitoring
Übersicht über den Proxmox-Host mit:
