Integrationbeginner

Esparagus Snapclient Multi-Room Audio

Snapcast client firmware for ESP32 audio boards enabling perfectly synchronized multi-room audio playback with automatic server discovery and browser-based flashing.

Boards:ESP32ESP32-S3
Firmware:ESP-IDF
Use Cases:Audio ProjectsHome Automation

A synchronous multi-room audio streaming client for Snapcast, designed specifically for ESP32-based audio boards including the Louder ESP32.

What It Does

Turns the Louder ESP32 into a Snapcast client endpoint, enabling perfectly synchronized audio playback across multiple rooms. All speakers play in perfect sync — similar to Sonos but with better accuracy and zero vendor lock-in.

Key Features

  • High-quality audio: FLAC, OPUS, and PCM decoding up to 48kHz
  • Multi-room sync: Synchronized playback across all Snapcast clients on the network
  • Zero configuration: Automatic Snapcast server discovery via mDNS
  • WiFi provisioning: Improv protocol for easy network setup
  • Web UI: Browser-based device configuration
  • Multiple board support: Pre-built configurations for all Sonocotta ESP32 audio boards

Supported Boards

The firmware includes pre-built binaries for the full Sonocotta lineup:

  • Louder ESP32 and Louder ESP32-S3
  • HiFi-ESP32, Loud-ESP32, Amped-ESP32
  • ESP32-LyraT, ESP32-Audio-Kit

Installation

Three methods available:

  1. Web Installer (recommended): Visit sonocotta.github.io/esparagus-snapclient and flash from the browser
  2. Pre-built binaries: Download and flash with esptool.py
  3. Build from source: Using Docker or ESP-IDF v5.1.5

How It Works

Once flashed, the Louder ESP32 automatically discovers any Snapcast server on the local network. The Snapcast server distributes audio streams to all connected clients, which play them back in precise synchronization. Pair with Home Assistant or any Snapcast-compatible server for centralized control.

Resources