Blog Post

Speedtest Chart

UPDATE | Raspberry Pi: Internet-Geschwindigkeit-Tests automatisieren (quick & dirty)

Are you willing to resist
The people you’ve never met?
The devil’s wheel revolves
But it needs to be reset

Never never try to gauge temperature
When you tend to travel at such speed
It’s our velocity!

Our Velocity, Maxïmo Park

Unser Erster Beitrag zur Internet-Geschwindigkeitsmessung ist auf sehr viel Zuspruch gestoßen – die dort beschriebene Vorgehensweise ist nun etwas in die Jahre gekommen. Zeit für ein schnelles und dreckiges (dennoch nicht ohne einen gewissen Qualitätsanspruch) Update zu diesem Thema.

1. Messen

Zur Messung benötigen wir einen lauffähigen Raspberry Pi (oder sonstigen Kleinstrechner) inkl. einem (am Besten) Debian-basierten Betriebssystem wie z.B. dem weit-verbreiteten und beliebten Raspbian. Dabei mit Putty eine SSH-Verbindung zum Pi aufbauen und schon gehts los!

Die Messergebnisse werden final in ein einfaches CSV-File geschrieben. Dieses lässt sich anschließend auf alle erdenklichen Art und Weisen auswerten.

Notwendiges installieren:
sudo apt-get install gnupg1 apt-transport-https dirmngr
export INSTALL_KEY=379CE192D401AB61
export DEB_DISTRO=$(lsb_release -sc)
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys $INSTALL_KEY
echo "deb https://ookla.bintray.com/debian ${DEB_DISTRO} main" | sudo tee /etc/apt/sources.list.d/speedtest.list
sudo apt-get update
sudo apt-get remove speedtest-cli
sudo apt-get install speedtest

Test-Messung durchführen (Beim ersten Aufruf die Lizenz mit “YES” bestätigen):
speedtest

2. Automatisieren

Skriptausgabe in ein csv-File vorbereiten:
cd ~
mkdir speedtest
cd speedtest
nano speedtest.zsh

Folgenden Code im Editor erfassen:

#!/bin/sh#
echo "\"$(date +%F" "%T)\",$(speedtest --format=csv)"

Mit Strg+X den Editor verlassen und mit Y die Änderungen speichern.

File ausführbar machen:
chmod +x speedtest.zsh

Cronjob zur zeitgesteuerten, automatischen Ausführung einrichten (Ausführung jede Stunde):
crontab -e

0 * * * * bash ~/speedtest/speedtest.zsh 2>>~/speedtest/error.log >> ~/speedtest/speedtest.csv

Mit Strg+X den Editor verlassen und mit Y die Änderungen speichern.

3. Auswerten

Nach einigen Stunden kann man bereits die Ergebnisse auswerten. Dazu am Besten mit einem FTP-Client wie FileZilla am Raspberry Pi anmelden und die speedtest.csv herunterladen.
Mit der Tabellenkalkulation der Wahl kann man die CSV-Datei grafisch aufbereiten:

4. Chillen

Nach getaner Arbeit ein Bier öffnen und genießen. 🙂

Comments (12)

  1. Raspberry Pi: Internet-Geschwindigkeit-Tests automatisieren (kurz & gut) | smarthomebau.de Dienstag, 17UTCTue, 17 Mar 2020 12:10:49 +0000 17. März 2020 at 12:10 Antworten

    […] Dieser Beitrag ist veraltet und wird nicht mehr gepflegt. Es steht eine aktuellere Version der Anleitung zur Verfügung. Letzter Stand: […]

  2. Markus Montag, 06UTCMon, 06 Apr 2020 18:45:53 +0000 6. April 2020 at 18:45 Antworten

    Vielen Dank für die Anleitung! Hat prima funktioniert. Dennoch zwei Fragen:
    1. In welcher Reihenfolge werden welche Werte in die CSV geschrieben? Tu mich schwer, die einzelnen Zahlen zuzuordnen/zu interpretieren.
    2. Ich bekomme mehrfach die Fehlermeldung “Configuration – Couldn’t resolve host name (HostNotFoundException)”. Kann man den angefragten Server festlegen oder woher kommt der Fehler?

    1. smarthomebau.de Dienstag, 07UTCTue, 07 Apr 2020 10:58:50 +0000 7. April 2020 at 10:58 Antworten

      Markus, die Werte werden in der Reihenfolge der Ausführung in die CSV geschrieben. Den Server kann man, glaube ich, über den Parameter

      -s [Serverid]
  3. Gerd Mittwoch, 22UTCWed, 22 Apr 2020 22:41:20 +0000 22. April 2020 at 22:41 Antworten

    Wie mache ich denn auch den CSV Zahlen lesbare Werte bzw. was finde ich denn in welcher Spalte?
    (wie muss man das alles umrechnen damit man eben auf DOWNLOAD Mbps 67.62 usw. kommt?)

    1. smarthomebau.de Freitag, 24UTCFri, 24 Apr 2020 12:38:03 +0000 24. April 2020 at 12:38 Antworten

      Gerd, mit dem Parameter

      --output-header

      kannst du dir zusätzlich die Spaltenbezeichner anzeigen lassen. Die csv-Datei in Excel aufbereiten, ist auch keine Magie (“Text in Spalten”)… 🙂 Viel Erfolg!

      1. Jonas Wagner Montag, 15UTCMon, 15 Jun 2020 11:16:40 +0000 15. Juni 2020 at 11:16 Antworten

        Ich bin in dem leider noch nicht so fit. Wie muss ich –output-header an
        echo “\”$(date +%F” “%T)\”,$(speedtest –format=csv)”

        anhängen?

        Meine Ergebnisse variieren zwischen gar keinem Header und Header ohne Datum, was die ganze csv zerschiesst. Dankeschön

  4. Marcel Sonntag, 17UTCSun, 17 May 2020 16:46:03 +0000 17. Mai 2020 at 16:46 Antworten

    Der speedtest funktioniert wunderbr. Nur leider wird keine csv Datei mit dem Script erstellt.

    1. Uwe Sonntag, 14UTCSun, 14 Jun 2020 18:31:53 +0000 14. Juni 2020 at 18:31 Antworten

      Also die Werte in der CSV Datei sind mir etwas ein Rätsel.

      Ich erhalte ab der Spalte C Zahlen:
      C: 30587
      D: 23655
      E: 848
      F: N/A
      G: 6687150
      H: 6258696
      I: 45410976
      J: 33081008

      Wenn ich den Link zur Messung aufrufe, der auch in der Zeile steht, dann ergab diese folgende Werte:
      Ping: 24ms
      Download: 53.50 Mbps
      Upload: 50.07 Mbps

      Die Spalte D könnte ja was mit dem Ping zu tun haben, abber alles andere kann ich so nicht nachvollziehen.

    2. Uwe Sonntag, 14UTCSun, 14 Jun 2020 18:35:15 +0000 14. Juni 2020 at 18:35 Antworten

      @Marcel
      Ich habe die Zeile in der Crontab so angepasst, das die kompletten Verweise für das Verzeichnis da sind. Dann ging es bei mir mit der CSV:

      /home/pi/speedtest/speedtest.zsh usw ….

  5. Markus2 Montag, 17UTCMon, 17 Aug 2020 21:19:37 +0000 17. August 2020 at 21:19 Antworten

    Ich habe das gleiche Problem, wie Uwe. Ich habe in den Spalten C-J Werte, die ich nicht zurodnen kann. Ansatzweise könnte man es sich vorstellen, was mit jenem Wert gemeint sein könnte, aber sicher bin ich mir leider auch nicht. Ich finde die Anleitung für den Test sehr gut und, vor allem, er läuft.

  6. Filip Freitag, 11UTCFri, 11 Sep 2020 15:20:28 +0000 11. September 2020 at 15:20 Antworten

    Erklärung der Spalten nach der “Text zu Daten” funktion von Excel:
    C: Server ID
    D: Ping in ms
    E: Jitter in ms ( Vom Ping )
    F: Denke packet loss? Bei mir steht durchgehend eine 0 drin.
    G: Download in kiloByte (kB). Druch 125 teilen für Megabit (Mb). Pro Sekunde.
    H: Upload, berechnen wie bei G
    I + J, braucht man nicht. Sind wahrscheinlich die Größen welche Heruntergeladen/Hochgeladen wurden (data used).

  7. Sven Donnerstag, 08UTCThu, 08 Oct 2020 16:09:56 +0000 8. Oktober 2020 at 16:09 Antworten

    Super, endlich mal eine Anleitung, die auf Anhieb funktioniert. Hat schon einmal jemand eine Visualisierung der Daten hinten drangehängt? Das würde ich auch noch gern autpomatisieren, anstatt jedesmal mit Excel herumzufuhrwerken.

Schreibe einen Kommentar

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

Verwandte Themen

Smart mit KNX: Automatische Gartenbewässerung mit Hunter-Ventilen

Nichts hat mich Anfang dieses Sommers mehr genervt als den frisch gesäten Rasen mehrmals…

Im Test: 1HOME KNX Bridge – Smart Home Sprachsteuerung leicht gemacht

Im Rahmen einer Vorab-Vorführ-Aktion hat 1HOME Inc. aus Slovenien das neu entwickelte 1HOME Bridge…

KNX Secure in a Nutshell: Fragen & Antworten

Seien wir ehrlich: Das ursprüngliche Design zu Übertragungszwecken im KNX-Standard war schlicht und einfach…

#Corona – Intermezzo

Wir erleben alle derzeit bewegte Zeiten. Wir hoffen euch und eure Nächsten bei…

KNX: ETS 5 – Tipps & Tricks & FAQs (Demo/Lite/Professional)

Yeah bitches! Was KNX/ETS-Know-How angeht, sind wir the hottest shit on the internetz™®©!11!! Nur…

Schicksalsschlag: Unser Plan zur Notfall-/Nachlass-Vorsorge

“Das einzig Gute am eigenen Tod ist es, dass man ihn selbst verpasst.” So…

KNX: “ETS Inside” – UPDATE – Endlich brauchbare Alternative zu “ETS Professional”?

Wir wollen uns heute erneut in aller Kürze mit der neuesten Version des KNX…

Ein schwedisches Heim für einen toten Franzosen

Liebe Freunde, es gibt eine gute und eine schlechte Nachricht. Die Gute ist: Ein…

Roborock S50
Automatischer Staubsauger ohne Cloud-Zwang: Roborock S5 im KNX-Smarthome

Sehr lange schlummerte das folgende Projekt auf unserer TODO-Liste. Das Ziel: Integration eines Staubsaugerroboters…

Kostengünstig & Cloud-unabhängig: Smart-Home-Sprachsteuerung mit Snips

Liebe Freunde – es wird euch kaum entgangen sein: Wir haben uns erst vor…

Elektrischer Türöffner im Heimnetzwerk

Nicht selten hat man (in einem Smart-Home) den Wunsch sich selbst oder einem Gast…

Die Sprachsteuerung des “Kleinen Mannes” (Respeaker Core V2 + Kalliope + Edomi)

Liebe Freunde der Sonne! Ihr habt ein Smart Home mit erlesensten Technik-Spielereien vom Feinsten,…

(Fast) Jedes Haushaltsgerät ins (KNX-)Smart-Home direkt einbinden!

Leider kann man im Leben zum Einen nicht alles vorplanen und berücksichtigen, zum Anderen…

“Visu Porn”: Visualisierung in unserem Smart-Home

Ich schaue mir gerne förmlich recht voyeuristisch andere Visus an. Eine sehr gute Inspirationsquelle…

Magic Mirror im KNX-Smart-Home

Wenn es eine Sache im Internet gibt, die das Pornografie-Angebot übersteigt, dann sind es…

Was kann ein KNX/Smart Home-Einfamilenhaus kosten?

Hier ist die Übersicht aller geplanten und zum Groß-Teil getätigten Ausgaben inkl. Smart-Home-Komponenten unseres…

KNX Visualisierung – Erste Gehversuche

Liebe Freunde der optischen Leckerlies – das hier könnte hässlich werden… Denn heute geht…

Heim-LAN: Netzwerkschrank, Switch, Patchpanel & Co.

Das Netzwerk-Thema ist doch größer, als man es anfangs einschätzt: Nachdem wir die Netzwerkverkabelung…

KNX: ETS-Gruppenadressen – Die geordnete Struktur im Einfamilienhaus

Jedes ernsthaft betriebene KNX-Projekt benötigt eine geordnete Gruppenadressen-Struktur. Es sei denn ihr setzt die…

KNX: “ETS Inside” – Heilsbringer oder Mogelpackung?

Wir wollen uns heute in aller Kürze mit dem neuen KNX Inbetriebnahme-Tool ETS Inside…

ETS5 Professional (fast) kostenlos? KNX kostengünstig konfigurieren

Liebe KNX-Freunde, ich muss es euch eigentlich nicht erklären: Jede KNX-Installation benötigt zur (initialen)…

Netzwerkleitung verlegen: Schritt-für-Schritt-Anleitung

Letzes Mal sprachen wir über die theoretischen Grundlagen der Netzwerk-Vekabelung (LAN). Wie versprochen beschäftigen…

Cut Wire
Netzwerk-Verkabelung: Von Dummies für Dummies

Beim Thema Netzwerkverkabelung habe ich anfangs auch gedacht:
“Kann nicht so schwierig sein –…

Skizze-Haus
Unser Haus

Übersicht der wichtigsten Kernpunkte unseres Neubaus. Wird laufend aktualisiert! 🙂
teilen twittern teilen merken E-Mail 

Tipps zum (Smart-Home-)Bauen: Lehren & Erkenntnisse – “Lessons Learnt”

Wir machen die Fehler, damit ihr sie nicht mehr machen müsst! 🙂
Hier schreiben wir…

Probleme beim Programmieren mit ETS4/ETS5 in Verbindung mit knxd

So, zwischendurch mal eine Kurzmitteilung von uns. Wir glauben, dass die Info für euch…

In 4 Schritten zum eigenen Smart-Home – Schritt 3.: Ausschreibung/Umsetzung

Es wird Zeit die entbehrungsreichen, langweiligen Tage der Konzeption und Planung hinter sich zu…

Produktgarantie von MDT

Vielleicht habt ihr in unserem letzten Beitrag über unser KNX-Testboard gelesen. Unter anderen haben…

Wissenschaftliche Studie bestätigt: Smart Home hat gravierende Nachteile

Bei all der Euphorie, die heutzutage um das Thema “Vernetztes Zuhause” herrscht, sollte man…

Familie + Haus
Der erste Schritt – SMARTHOMEBAU.de ist online!

Wir schreiben dieses kleine Blog, um unsere Erfahrungen und Erlebnisse zu teilen. Wir haben…