Block ads across your entire home network at the DNS level, affecting all devices including phones and smart TVs.
Track your home internet speed, ping times, and uptime over time with visual charts in a Grafana dashboard.
Monitor power usage from Shelly smart plugs or air quality from AirGradient sensors on the same dashboard.
Set up Starlink satellite internet connection statistics and monitoring on a Raspberry Pi.
Requires a Raspberry Pi 4 or newer (older models have slow network interfaces) plus Ansible installed on the Pi before running the playbook.
Internet Pi is a set of automated configuration scripts for turning a Raspberry Pi into a home network monitoring and ad-blocking device. Rather than manually installing and configuring software, you run a single command and the scripts handle the setup for you. The result is a Pi that blocks ads across your entire home network, monitors your internet connection speed and reliability over time, and displays everything in a visual dashboard. The two main features are Pi-hole and an internet monitoring stack. Pi-hole intercepts all DNS requests on your network, which is the lookup process your devices use to find websites by name. By running the lookup through the Pi, it can block requests to known ad servers before they ever reach your devices. The monitoring side runs regular speed tests and connection checks, then stores the results so you can see charts of your upload and download speeds, ping times, and uptime over days and weeks. Optional extras can be enabled through a configuration file. These include monitoring for Shelly smart plugs to track power usage, air quality monitoring through AirGradient sensors, and statistics for Starlink satellite internet connections. All of these feed into the same Grafana dashboard that handles the base internet monitoring. Setting up Internet Pi requires installing Ansible on the Pi first, which is a tool that applies configuration instructions from a file. Once Ansible is installed, you clone the repository, copy two example configuration files, edit them with your preferences, and run the main playbook command. The scripts then pull down the necessary Docker containers and configure everything. The README recommends a Raspberry Pi 4 or newer for reliable results, noting that older models have slower network interfaces that cap speed test results. The project is built around Raspberry Pi OS or Debian, and may work on Ubuntu or Arch Linux but those are not regularly tested. A note in the README warns that the internet monitoring feature uses a meaningful amount of data each day due to automated speed tests, which could be a concern on metered connections.
← geerlingguy on gitmyhub — every repo by this author, as a profile.
Verify against the repo before relying on details.