Free lead magnet · averyjparker.com · 2026 · Print → Save as PDF
Raspberry Pi First Weekend Checklist
A finishable plan: boot, secure, update, and ship one useful service (not a pile of unfinished tutorials).
Goal for the weekend
By Sunday night you should have: a Pi that boots headless on your network, updates cleanly, has SSH keys (not password-only on the open internet), and runs one useful service you chose in advance.
Pick one track before you buy parts:
- A — Print brain: Klipper host path (see site guide)
- B — Workshop utility: file share / MQTT broker / Pi-hole-style DNS on a lab VLAN
- C — Offline helper: tiny local model or docs search (start small)
BOM (minimum)
- Raspberry Pi 4 (2GB+) or Pi 5 (4GB+ preferred for AI experiments)
- Official or quality PSU (undervoltage ruins weekends)
- Active cooler for Pi 5; case with airflow
- microSD (or NVMe on Pi 5 if you already own the hat)
- Ethernet cable if possible (Wi‑Fi is fine; Ethernet is calmer)
Gear notes: /gear
Saturday morning — image & first boot
- Flash Raspberry Pi OS Lite (or Desktop if you need a GUI) with Raspberry Pi Imager
- In Imager: set hostname, enable SSH, set user/password, configure Wi‑Fi or plan Ethernet
- Boot; find the Pi on the LAN (`ping hostname.local` or router DHCP list)
- `ssh user@pi-address`
- `sudo apt update && sudo apt full-upgrade -y` then reboot if kernel updated
hostname
ip a
sudo raspi-config # locale, timezone, expand filesystem if needed
Saturday afternoon — harden the basics
- Change default-ish passwords; create a non-root workflow you actually use
- Add your SSH public key; test key login
- Optional: disable password SSH only after key login works
- `sudo apt install fail2ban` if the Pi will ever see the internet
- Do not port-forward 22 to the world without a plan (use VPN/tailnet later)
mkdir -p ~/.ssh && chmod 700 ~/.ssh
# copy your id_ed25519.pub into ~/.ssh/authorized_keys on the Pi
chmod 600 ~/.ssh/authorized_keys
Sunday — ship one service
Track A — Print brain (outline)
- Read the site Klipper/Pi guide before installing random scripts
- Use a known-good install path (KIAUH or current docs)
- Confirm MCU USB enumerates: `lsusb` / `ls /dev/serial/by-id`
- Get a web UI loading on the LAN before tuning
Track B — MQTT workshop broker
sudo apt install -y mosquitto mosquitto-clients
sudo systemctl enable --now mosquitto
mosquitto_sub -h localhost -t 'lab/#' -v
# other terminal:
mosquitto_pub -h localhost -t 'lab/hello' -m 'pi-first-weekend'
- Subscribe receives the publish
- Bind to LAN only; add auth before any WAN exposure
Track C — Tiny offline helper
- Install only one runtime (e.g. a small llama.cpp build or a docs search tool)
- Prove a single query works offline
- Stop before “and also Docker and also Home Assistant and also…”
Done checklist
- Pi survives reboot and comes back on the network
- You can SSH in without drama
- One service does one useful thing
- You wrote down hostname, IP, and what you installed in a note
© 2026 Avery J. Parker · Free for personal/classroom use · averyjparker.com