Muse Radio Home Assistant

Raspiaudio Muse Radio Voice Satellite

YouTube Video

This is an ESPHome configuration that turns the Raspiaudio Muse Radio into a Home Assistant voice satellite.

This project builds upon the work of Tetele. I have added several screen interfaces and fixed (hopefully) the keyword detection.

ESPHome Radio for RASPIAUDIO Muse Radio

This project is designed for use with the RASPIAUDIO Muse Radio.

How It Works

  • Wake Word: Configure a wake word in Home Assistant - Voice Assistant.
  • Microphones: Ensure your pluggable microphones are connected.
  • Screen Support: Includes basic screen support using the new LVGL library.

Flashing Your Device

  1. Open Google Chrome.
  2. Visit apps.raspiaudio.com.
  3. Select Muse Radio - Home Assistant and follow the on-screen instructions.

Source Code

The source code is available on GitHub: Raspiaudio Muse Radio Voice Satellite

Forum & Support

For discussions and support, visit the Raspiaudio Forum.

Step-by-Step Video Guide

For a detailed video tutorial, watch this step-by-step guide (created for the Luxe, but also applicable to the Muse Radio).

1 Like

Is it possible to add a battery level sensor to this project?

Thanks

1 Like

Yes see ADC 13

check how we did it in the demo app MuseRadio-DEMO/RadioV01/RadioV01.ino at main Ā· RASPIAUDIO/MuseRadio-DEMO Ā· GitHub

Repository updated see first message of this thread

Canā€™t wait my Muse RAdioā€¦
When (second) batch will be shipped ? My order is ;
RASPIAUDIO - Order 3731 (21/08)

I looked through the example, and tried reading GPIO13 in esphome e.g

sensor:
 - platform: adc
   pin: GPIO13

But this throws up an error due to the following:

ESP32 pinsĀ¶

ADC2 pins are only usable when Wi-Fi is not configured on the device.

Variant ADC1 ADC2
ESP32 GPIO32 - GPIO39 GPIO0, GPIO2, GPIO4, GPIO12 - GPIO15, GPIO25 - GPIO27
ESP32-C3 GPIO0 - GPIO4 GPIO5
ESP32-S2 GPIO1 - GPIO10 GPIO11 - GPIO20
ESP32-S3 GPIO1 - GPIO10 GPIO11 - GPIO20

Am I misunderstanding which pin is being read in the example you give?

Thanks

Hi ADC for battery is on the pin 13 indeed

https://forum.raspiaudio.com/t/muse-radio-installation-documentation/

I didnā€™t have this error when I tested it couple week ago.

Were you testing using Arduino C++ or esphome YAML? I can see the former working but for the latter the YAML wonā€™t compile for me due to pin 13 being off limits when WiFi is enabled.

Thanks

Ii was compiled in HA ESPHOME plugin

Ok, could you share or link the YAML you used please?

Thanks

Thatā€™s the example I based the YAML Iā€™m using on. Unfortunately when I add the lines below it no longer compiles for the reason about reserved pins due to WiFi.

If you have the time maybe you could check itā€™s the same for you.

Thanks

Hello @Raspiaudio ,
Thank you for the awesome work with Muse Radio. Didnā€™t find you before and built/print my own box (GitHub - JMiahMan1/Home-Assistant-Smart-Speaker: Creating a Home Assistant Smart Speaker). I have a couple of questions :

  • Possible to use esp-idf framework to have local micro wake word ?
  • What amp do you use with the dac (es8388 if Iā€™m not mistaken) ?
  • Muse radio is an instant buy ! Do you have a rough ETA if I order now as itā€™s mid december for the backers ?

Thanks again and congrats !

Sylvain (from Paris with love ;))

Hi Sylvain,

Thanks ! ETA is here Update on stock - #6 by Raspiaudio
Radio is based on S3 with PSRAM so yes it should be possible to use local wake work, but I have not tried it yet.

Amp is about 11-12W it uses a boost converter to raise voltage to 17v from the Lipo cell, let say that is a quite loud.

We are in Paris too btw

try to install using this the integration is well done : Ready-Made Projects ā€” ESPHome

choose Media Player - Luxe

Just tried but it wouldnā€™t install:

ā€œYour ESP32-S3 board is not supported.ā€œ

Regards

Sorry I miss read your message with another thread about the Muse Luxe, let me try again with the Muse Radio

Hereā€™s the quick solution: add this to your YAML configuration:

sensor:
  - platform: template
    name: "Battery Voltage"
    id: battery_voltage
    unit_of_measurement: "V"
    update_interval: 60s
    lambda: |-
      // Directly read the ADC value on GPIO13
      return (float) analogRead(GPIO_NUM_13) / 4095.0 * 3.3;  // Adjust based on expected voltage range
    filters:
      - multiply: 2.0  # Adjust according to your voltage divider ratio

My Journey :slightly_smiling_face::

  • Voice Assistant Check: I confirmed that the voice assistant is still working on Home Assistant 2024.11.1 with ESPHome 2024.10.3. I used the pre-built image from RaspiAudioā€™s apps store. However, it didnā€™t prompt me for WiFi credentials at the end, so I had to manually configure WiFi by following the ESPHOME installer.
  • Wake Word Test: In HA, the wake word worked well using Nabu Casaā€™s wake word integration.
  • ESPHome Configuration: In the ESPHome plugin, I created a new device and attempted to recompile the YAML for the radio. I used this file: RaspiAudio Radio YAML. No errors occurred.
  • ADC Issue: I added the ADC on pin 13 in the usual way, but encountered an error message claiming that the S3 is not compatible with ADC when WiFi is connected. This is misleading, as it works fine on my Arduino demo. I consulted ChatGPT, which suggested adding this block to the sensor section of the YAML mentioned above.

Now itā€™s working! The battery level decreases slowly while unplugged.

3 Likes

Thanks for that, itā€™s working for me. Very sneaky way to avoid the problem - I like it!

Regards

Thank you! Iā€™ve added PR with a battery sensor, this one works fine for me