Skip to content

Tschuuuls/speed-monitor-pi

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

24 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Speed Monitor Pi

I built this tool for a blog post I wrote about my internet speed during the pandemic, which can be found here.

This tool runs an Ansible playbook in a Docker container to provision a Raspberry Pi for the purpose of monitoring internet speed.

  • Tested on Raspberry Pi OS Lite (64-bit) with a Raspberry Pi 4 Model B.
  • Using OS version: 2022-09-22-raspios-bullseye-arm64-lite.img.xz (but later versions should also work!).

Dashboard past year

Requirements

Services Installed

Setup

  1. Install Docker.

  2. Install GNU Make (if your OS doesn't provide it by default).

  3. Generate an SSH key to access the Raspberry Pi with.

    $ ssh-keygen
  4. Use the Raspberry Pi Imager to install Raspberry Pi OS Lite (64-bit) to your SD card.

    OS selection
  5. Ensure you have Enable SSH and Allow public-key authentication only options set with your SSH key's public key.

    Enable SSH option
  6. Insert the SD card into your Pi.

  7. Connect your Pi to the same LAN as your PC and power it on.

  8. Run the following command to provision your Pi.

    You can specify any of the following parameters to customize the installation.

    # You can specify any of the following parameters to customize the installation.
    
    # Defaults:
    
    # HOST=raspberrypi.local  [Address of the Raspberry Pi]
    # SSH_USER=pi             [SSH user]
    # SSH_KEY=~/.ssh/id_rsa   [Location of the SSH private key]
    # CRON='*/30 * * * *'     [Speedtest interval (Every 30 minutes)]
    
    $ make [HOST='...'] [SSH_USER='...'] [SSH_KEY='...'] [CRON='...']

    Preview

    asciicast

  9. Access your Internet Speed Monitor Grafana dashboard here, with admin:admin.

  10. You should see new data points every 30 minutes (by default).

    Dashboard

About

Monitor your internet speed with a Raspberry Pi.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 77.4%
  • Dockerfile 12.9%
  • Makefile 9.7%