![](https://feddit.nl/pictrs/image/1fc6ce2b-657a-42a4-b52a-5701df7e7eea.jpeg)
![](https://lemmy.world/pictrs/image/94b2b808-7c9c-4de0-a35b-966d14ae40fd.png)
on_tts_end:
you have a media player component while you define a speaker instead. They are not interchangeable. It is likely trying to grab default values from somewhere because of that. Media player is better if you want the device to also play music or alerts through home assistant instead of voice assistant or some preset wav files.
Media player is also a speaker using an arduino library (not compatible with esp_adf as that uses the esp-idf framework and not arduino). If you want to use the media player, you have to get rid of vad_threshold
and the esp_adf.
Please follow this yaml for an esp-idf config using the speaker instead of the media player: https://github.com/esphome/firmware/blob/main/voice-assistant/m5stack-atom-echo.yaml
Sorry, I misunderstood what you are trying to do here. I thought you were trying to use the Atom Echo itself as a media player. Disregard that arduino library comment, it isn’t relevant. I just watched the video since I couldn’t earlier.
Indeed what you are doing should work. Are you certain that the upload was successful? With GPIO21 set as the speaker output, the speaker data should absolutely not work. The fact that it does means that somewhere along the line, the GPIO22 is set as the speaker output.