Having exactly the same issues… the folks over at raspiaudio on their forum are pointing to a network issue, but I am banging my head trying to get the ESPHOME mediaplayer to work on this ESP MUSE Lux…
Edit: Crossing subnets does not work (ooh, the joys of unifi) and media_player / mode: stereo will not work either (produces white noise).
Reflashed with following esphome yaml (on same subnet as HA instance) and all is fine now:
substitutions:
name: "raspiaudio-muse-luxe"
friendly_name: "RaspiAudio Muse Luxe"
esphome:
name: "${name}"
name_add_mac_suffix: false
project:
name: raspiaudio.muse-luxe
version: "1.0"
esp32:
board: esp-wrover-kit
framework:
type: arduino
# Enable logging
logger:
# Enable Home Assistant API
api:
# Enable over-the-air updates
ota:
# Enable Web server
web_server:
port: 80
i2c:
sda: GPIO18
scl: GPIO23
# dashboard_import:
# package_import_url: github://esphome/media-players/raspiaudio-muse-luxe.yaml@main
wifi:
networks:
- ssid: !secret wifi_ssid
password: !secret wifi_pw
# use_address: 192.168.12.127
improv_serial:
external_components:
- source: github://pr#3552
components: [es8388]
refresh: 0s
media_player:
- platform: i2s_audio
name: ${friendly_name}
dac_type: external
i2s_lrclk_pin: GPIO25
i2s_dout_pin: GPIO26
i2s_bclk_pin: GPIO5
# i2s_lrclk_pin: GPIO33
# i2s_dout_pin: GPIO22
# i2s_bclk_pin: GPIO19
mode: mono # stereo will not work as of ESPHOME v. 2022.12
mute_pin:
number: GPIO21
inverted: true
es8388:
sensor:
- platform: adc
pin: GPIO33
name: ${name} Battery
icon: "mdi:battery-outline"
device_class: voltage
state_class: measurement
unit_of_measurement: V
update_interval: 15s
accuracy_decimals: 3
attenuation: 11db
raw: true
filters:
- multiply: 0.00173913 # 2300 -> 4, for attenuation 11db, based on Olivier's code
- exponential_moving_average:
alpha: 0.2
send_every: 2
- delta: 0.002
- platform: wifi_signal
name: ${friendly_name} WiFi Signal
update_interval: 60s
- platform: uptime
name: ${friendly_name} Uptime
id: uptime_s
update_interval: 60s
binary_sensor:
- platform: gpio
pin:
number: GPIO19
inverted: true
mode:
input: true
pullup: true
name: ${friendly_name} Volume Up
on_click:
- media_player.volume_up:
- platform: gpio
pin:
number: GPIO32
inverted: true
mode:
input: true
pullup: true
name: ${friendly_name} Volume Down
on_click:
- media_player.volume_down:
- platform: gpio
pin:
number: GPIO12
inverted: true
mode:
input: true
pullup: true
name: ${friendly_name} Play Button
on_click:
- media_player.toggle:
light:
- platform: fastled_clockless
name: ${friendly_name}
pin: GPIO22
chipset: SK6812
num_leds: 1
rgb_order: grb
text_sensor:
- platform: wifi_info
ip_address:
name: ${name}_ip
ssid:
name: ${name}_ssid
bssid:
name: ${name}_bssid
- platform: version
name: ${friendly_name} ESPHome Version
- platform: template
name: ${friendly_name} Uptime (formatted)
lambda: |-
uint32_t dur = id(uptime_s).state;
int dys = 0;
int hrs = 0;
int mnts = 0;
if (dur > 86399) {
dys = trunc(dur / 86400);
dur = dur - (dys * 86400);
}
if (dur > 3599) {
hrs = trunc(dur / 3600);
dur = dur - (hrs * 3600);
}
if (dur > 59) {
mnts = trunc(dur / 60);
dur = dur - (mnts * 60);
}
char buffer[17];
sprintf(buffer, "%ud %02uh %02um %02us", dys, hrs, mnts, dur);
return {buffer};
icon: mdi:clock-start
update_interval: 60s
switch:
# Switch to restart the device
- platform: restart
name: ${name}_restart