# Raspberry Pi

Live-verified 2026-04-18. Two Pi 5 units in active use; legacy Pi 4 / Zero not in current fleet.

## Pi 5 (Vish) — monitoring + Uptime Kuma

| | |
|---|---|
| Model | Raspberry Pi 5 Model B Rev 1.1 |
| SoC | Broadcom BCM2712 (4× Cortex-A76 @ 2.4 GHz) |
| RAM | 16 GB LPDDR4X |
| OS | Raspberry Pi OS (kernel 6.12.47+rpt-rpi-2712) |
| LAN IP | 192.168.0.66 |
| Tailscale IP | 100.77.151.40 |
| Hostname / SSH | `pi-5` |
| Role | Uptime Kuma (central monitor), DIUN (image update notifier), dozzle-agent, glances, scrutiny-collector |
| Containers | 7 |

Deployed as a Portainer endpoint (`endpoint=rpi5`) managed via GitOps — see stacks under `hosts/edge/rpi5-vish/`.

## Pi 5 (Jellyfish) — remote LAN helper

| | |
|---|---|
| Model | Raspberry Pi 5 Model B Rev 1.0 |
| SoC | Broadcom BCM2712 |
| RAM | 4 GB |
| OS | Raspberry Pi OS (kernel 6.12.75+rpt-rpi-2712) |
| Tailscale IP | 100.69.121.120 |
| Location | Remote subnet `192.168.12.0/24`, behind GL-MT3600BE (Beryl 7) |
| Role | LAN backup / photo helper |
| Containers | 2 |

Active project: LUKS/EXT4 SSD recovery — see [hosts/jellyfish.md](../hosts/jellyfish.md) and the `project_jellyfish_fsck` memory entry.

## Retired / unused

Previous notes referenced a Pi 4 cluster and Pi Zero 2 W. None are in the current active fleet — any legacy Pi's in storage aren't tracked here. Kevin's Pi 5 (`100.123.246.75`, referenced in older diagrams) is also not currently in the headscale inventory as of 2026-04-18.

## Common operational notes

- **Power:** Both Pi 5 units run on the official 27 W USB-C PSU; a sub-spec supply causes under-voltage warnings that can corrupt storage.
- **Storage:** REDACTED_APP_PASSWORD SSD via the Pi 5 PCIe HAT (not microSD). This keeps SD-card wear out of the picture for workloads like Uptime Kuma that log heavily.
- **Cooling:** Official active cooler (fan + heatsink). Under sustained load (Tdarr, LLM inference) the Pi throttles without active cooling.
- **Kernel:** `6.12.x+rpt-rpi-2712` Raspberry Pi Foundation kernel, not the Debian upstream kernel.
- **ARM64:** All Docker images must be `linux/arm64` — Portainer GitOps picks these automatically from multi-arch manifests.

## Ansible

Both Pi's are targets in `ansible/playbooks/ssh_mesh.yml` and the general `site.yml`. See [networking/SSH_MESH.md](../networking/SSH_MESH.md).
