// the find
rbouteiller/airplay-esp32
This firmware turns a cheap ESP32 board into a wireless AirPlay 2 speaker. Plug it into an amplifier or powered speakers and it shows up on your iPhone, iPad or Mac just like a HomePod or an AirPlay TV.
ESP-IDF firmware that turns an ESP32/S2/S3/C5 board plus a cheap DAC into an AirPlay 2 receiver, so you get a $10 HomePod clone for a powered speaker or amp. Good fit for anyone building their own whole-home audio setup who doesn't want a commercial smart speaker, or anyone curious how AirPlay 2, HomeKit pairing, and FairPlay actually work under the hood.
The protocol work is the real substance here: it reimplements SRP pairing, FairPlay, TLV8 and RTSP/HAP handshaking from scratch (main/hap, main/rtsp) rather than wrapping an existing library — that's the hard, failure-prone part of AirPlay 2 and it's done in portable C. Board support is genuinely broad (bare ESP32 plus several DAC chips: PCM5102A, ES8311, TAS57xx/58xx) with per-board configs instead of one happy path. CI (build.yml, ci.yml, docs.yml), clang-format/clang-tidy, and a real docs site built with Zensical show this isn't a weekend hack that stopped being maintained — last push is from last month.
License is non-commercial only, so anyone wanting to ship a product or even sell a DIY kit on Etsy is blocked without asking permission first. It's one speaker per board with no built-in multi-channel grouping beyond whatever AirPlay 2 does on the Apple side, so it's not a drop-in multi-room system by itself. The README admits it's not guaranteed to keep working with future iOS/macOS — Apple has broken reverse-engineered AirPlay implementations before, so anyone relying on this for daily use is one OS update away from a dead speaker. Build setup is also messier than it looks: PlatformIO plus ESP-IDF, git submodules, SPIFFS web UI that has to be flashed separately, and a dozen board-specific sdkconfig variants to pick the right one from.