SENDSPIN on Muse Luxe - Radio - Mn Cast

We have just released a new Git repository
(GitHub - RASPIAUDIO/esphomeLuxeMusic · GitHub).

esphomeLuxeMusic is a new player based on the SendSpin protocol, enabling synchronized multiroom playback.
(SendSpin is specific to Music Assistant.)

This is a first attempt and is intended to evolve (we welcome your feedback here).

You can:

either compile it directly from luxe_music.yaml (note: requires esphome version 3.1.4+)

or load the binary directly from raspiaudio.github.io

(Special thanks to Deco for his crucial contribution)

3 Likes

Great, will try it out coming weekend. Are you planning to roll out the same to the mncast and muse radio?

Will be difficult to find reasons to stay on the lyrion platform once sendspin is available cross the board!

We’ve just published a new GitHub repository
(=> GitHub - RASPIAUDIO/esphomeMangaCastMusic )
It’s the little brother of esphomeLuxeMusic; Like it, it uses SendSpin and allows multiple devices to play in sync

(Right now, I’m listening to a piece of music on two Luxe and one Manga !)

Plus, thanks to its small screen, it displays information about what’s playing (radio station name, track title, artist, etc.).

You can:

either compile it directly from lmanga_music.yaml (note: requires esphome version 3.1.4+)

or load the binary directly from raspiaudio.github.io

1 Like

We’ve released a new repository, still focused on Sendspin and Music Assistant. (==> GitHub - RASPIAUDIO/esphomeRadioMusic · GitHub )

It’s about Muse Radio and aims to make the most of the screen to display all the information about the current track.

This is a trial version, and of course, it’s meant to evolve.

Read the README carefully, experiment, and let us know how it goes!

Hello,

It would be fine to add sendspin support at Muse Radio device. I made a fork of RASPIAUDIO/muse-radio-voice-satellite : GitHub - afer92/muse-radio-voice-satellite at sendspin · GitHub

I also added some preset radio chanels : muse-radio-voice-satellite/raspiaudio/radios.yaml at sendspin · afer92/muse-radio-voice-satellite · GitHub

Regards

thanks we also did it here a few days ago:

Let’s compare and merge

moving all to this thread

Don’t compile on esphome 2026.3.0 :

Compiling .pioenvs/radio-music/src/esphome/components/audio/audio.cpp.o
Compiling .pioenvs/radio-music/src/esphome/components/audio/audio_chunk.cpp.o
Compiling .pioenvs/radio-music/src/esphome/components/audio/audio_chunk_queue.cpp.o
Compiling .pioenvs/radio-music/src/esphome/components/audio/audio_decoder.cpp.o
Compiling .pioenvs/radio-music/src/esphome/components/audio/audio_reader.cpp.o
In file included from src/esphome/components/audio/audio_reader.cpp:1:
src/esphome/components/audio/audio_reader.h:12:10: fatal error: esp_http_client.h: No such file or directory

*******************************************************************************
* Looking for esp_http_client.h dependency? Check our library registry!
*
* CLI > platformio lib search "header:esp_http_client.h"
* Web > PlatformIO Registry
*
*******************************************************************************

12 | #include<esp_http_client.h>
| ^~~~~~~~~~~~~~~~~~~
compilation terminated.

*** [.pioenvs/radio-music/src/esphome/components/audio/audio_reader.cpp.o] Error 1
========================= [FAILED] Took 41.49 seconds =========================

I have the same difficulty with :

external_components:
  - source:
      type: git
      url: https://github.com/esphome/home-assistant-voice-pe
      ref: dev
    components:
      - voice_kit
    refresh: 0s
  - source: github://pr#12256
    components: [ audio ]
  - source: github://pr#12258
    components: [ media_player ]
  - source: github://pr#12284
    components: [ mdns, sendspin ]
  - source: github://pr#12429
#    components: [color_noise, file, http_request, media_source, speaker_source]
    components: [color_noise, file, media_source, speaker_source]

Don’t compile with http_request.

Don’t compile on esphome 2026.3.0 :

compiling .pioenvs/radio-music/src/esphome/components/audio/audio.cpp.oCompiling .pioenvs/radio-music/src/esphome/components/audio/audio_chunk.cpp.oCompiling .pioenvs/radio-music/src/esphome/components/audio/audio_chunk_queue.cpp.oCompiling .pioenvs/radio-music/src/esphome/components/audio/audio_decoder.cpp.oCompiling .pioenvs/radio-music/src/esphome/components/audio/audio_reader.cpp.oIn file included from **src/esphome/components/audio/audio_reader.cpp:1:src/esphome/components/audio/audio_reader.h:12:10: fatal error: esp_http_client.h: No such file or directory** ******************************************************************************** Looking for esp_http_client.h dependency? Check our library registry!** CLI > platformio lib search “header:esp_http_client.h”* Web > PlatformIO Registry******************************************************************************** 12 | #include **<esp_http_client.h>** | **^~~~~~~~~~~~~~~~~~~compilation terminated.** *** [.pioenvs/radio-music/src/esphome/components/audio/audio_reader.cpp.o] Error 1========================= [ **FAILED** ] Took 41.49 seconds =========================

I have the same difficulty with :

external_components:
  - source:
      type: git
      url: https://github.com/esphome/home-assistant-voice-pe
      ref: dev
    components:
      - voice_kit
    refresh: 0s
  - source: github://pr#12256
    components: [ audio ]
  - source: github://pr#12258
    components: [ media_player ]
  - source: github://pr#12284
    components: [ mdns, sendspin ]
  - source: github://pr#12429
#    components: [color_noise, file, http_request, media_source, speaker_source]
    components: [color_noise, file, media_source, speaker_source]

Don’t compile with http_request.

Hi,

For now, you need to compile using esphome 2026.1.4

(This is due to some elements in “external components:”)

Keep me updated…

Effectivement se compile bien avec esphome 2026.1.4 mais la radio est instable :
It does compile correctly with esphome 2026.1.4, but the radio is unstable:

17:43:40 [D] [sendspin_media_source:272] Pipeline 0 stopping
17:43:40 [D] [sendspin_media_source:277] Pipeline 0 stopped
17:43:40 [E] [sendspin.hub:288] [httpd]  httpd_ws_recv_frame failed with -1
17:43:40 [I] [sendspin.websocket:153] [httpd] Websocket client closed a connection
17:43:40 [D] [sendspin.hub:217] [httpd] Connection closed
17:43:40 [D] [speaker_source_media_player:303] State changed to IDLEype or paste code here

My version work better with esphome 2026.2.4 than with esphome 2026.1.4

To compile with esphome 2026.3.0 :

esp32:
  board: esp32-s3-devkitc-1
  flash_size: 8MB
  framework:
    type: esp-idf
    sdkconfig_options:
      CONFIG_ESP32S3_DEFAULT_CPU_FREQ_240: "y"
      CONFIG_ESP32S3_DATA_CACHE_64KB: "y"
      CONFIG_ESP32S3_DATA_CACHE_LINE_64B: "y"
    advanced:
      include_builtin_idf_components:
        - esp_http_client

It works!
I will quickly publish the change to our repositories

Thank you!

we are down to just two external_components and there’s some other changes, here is a working version for esp32 wrover on 2026.3.1: sendspin for wrover on esphome release version 2026.3.1 · GitHub

note: currently there’s some stuttering issues on wrover devices being looked into, but for s3 devices it works well, so if you are on wrover and experience some stuttering at the beginning of playback and few random dropout, it’s “normal” for now.. it still plays “ok” after the initial stuttering.

updated for esphome 2026.4.0:

Hi,
I recently bought a Muse Luxe v2 and unfortunately the new component in 2026.4 for es8388 does not work. I have tried @RealDeco s config from the previous message, but it does not work for me.

Both the old custom component from RaspiAudio and the never submitted version that was used as an external component previously work … (there are other stability issues, but let’s solve one problem at a time).