--- title: "AirPlay Audio" section: "smarthome" tags: "smarthome" parent: "/smarthome/" description: "Multi-room AirPlay receivers with software volume boost on Raspberry Pi devices." layout: base.njk ---
Two Raspberry Pis run AirPlay receivers so any Apple device in the flat can stream audio to the kitchen or the bathroom without a dedicated speaker app.
| Location | Hardware | AirPlay version | Runs as |
|---|---|---|---|
| Kitchen | Raspberry Pi 3B | AirPlay 2 | Docker container (shairport-sync) |
| Bathroom | Raspberry Pi Zero W | AirPlay 1 | Native systemd service (older OS, legacy repo) |
Both Pis' analog audio output is too quiet at full hardware volume, so
a software mixer stage (+20 dB via an ALSA softvol plugin) sits between
shairport-sync and the hardware. The hardware mixer itself is deliberately
left fixed at 100% / 0 dB, and shairport-sync only ever adjusts its own
internal software volume — this avoids the volume jumps and mixer
conflicts that show up when multiple layers all try to control loudness.
The bathroom Pi also runs a small custom tool that starts an internet radio stream automatically when its light sensor detects the light has been switched on. A simple flag file signals whether AirPlay is currently active, so the automatic radio stream politely stays off while someone is actively AirPlaying — and resumes its normal behavior as soon as the AirPlay session ends.