Spotify Connect protocol
A Spotify Connect protocol library with a plain C API and I2S output, plus an LVGL player application.
Install
# From the workspace root
curl -fsSL https://kartben.github.io/windrose/m/zspot.yaml \
-o zephyr/submanifests/zspot.yaml
west update zspot
# From the workspace root
Invoke-WebRequest https://kartben.github.io/windrose/m/zspot.yaml `
-OutFile zephyr/submanifests/zspot.yaml
west update zspot
- name: zspot url: https://github.com/walidbadar/zspot revision: v0.1.0 path: modules/lib/zspot
Add to projects in your west.yml, then run west update zspot.
Details
- Revision
- v0.1.0
- License
- GPL-3.0-only AND BSD-3-Clause
- Maintainers
- @walidbadar
- Last commit
- 2 days ago
About
zspot packages the Spotify Connect protocol, derived from cspot, as a Zephyr module with a plain C API. The device shows up in the Spotify app, takes over playback and decodes the tracks to PCM, which a ready-made sink sends to an I2S DAC. Threads, sockets, TLS, PSA crypto, mDNS and nanopb come from Zephyr; only the Tremor decoder is bundled.
The repository also holds a player application with a Now Playing touch screen: cover art, synced lyrics, search, Your Library and Wi-Fi setup. It runs on the ESP32-S3 (VIEWE UEDX32480035E-WB-A) and on native_sim.
A Spotify Premium account is required.