Broadband speed-test history. Seeded 2026-07-05 with example rows — replace them with real speedtest-cli output and edit the ISP/plan block in build.py, then re-deploy.

Current ISP / Plan

ISP
— edit in build.py —
Plan
— edit in build.py —
Rated Down
— Mbps
Rated Up
— Mbps
Connection
— (cable / fiber / 5G)
Modem / Gateway

Download Throughput

2026-07-02 18:30 ET
472 Mbps
2026-07-04 09:15 ET
588 Mbps
2026-07-05 21:00 ET
612 Mbps
download throughput · peak 612 Mbps

Speed-test History

WhenDownloadUploadPingServerDevice
2026-07-05 21:00 ET612.4 Mbps41.811 msVerizon — Newark, NJRSJ_NUC (wired) ex
2026-07-04 09:15 ET588.1 Mbps40.213 msComcast — New York, NYRSJ_NUC (wired) ex
2026-07-02 18:30 ET471.9 Mbps39.615 msVerizon — Newark, NJPi-Primary (wired) ex

How to Wire Live Logging

Wire live logging (speedtest-cli cron on a Pi). Run scheduled tests on Pi-Primary or Pi-Secondary and append CSV rows this page can read.
sudo apt install speedtest-cli        # Ookla CLI also works: 'speedtest'

# /home/pi/speedlog.sh
#!/usr/bin/env bash
OUT=/home/pi/speedtests.csv
TS=$(date '+%Y-%m-%d %H:%M %Z')
speedtest-cli --csv >> "$OUT.raw"
# columns: down/up are bits/s in --csv output; convert to Mbps in build.py

# crontab -e  (every 6 hours)
0 */6 * * * /home/pi/speedlog.sh
Then point build.py's RESULTS list at the CSV (parse it in place of the seeded rows) and re-deploy. Keep the newest-first ordering the renderer expects.
Manual snapshot · seeded 2026-07-05 · example rows marked "ex"