Thanks to the post: ESPHome Voice Assistant speech output to Home Assistant Media Player - #21 by thewebmachine
I have been able to eliminate the internal speaker.
My customization of the code does not contain the speaker section, only the voice_assistant variant of the one listed above:
voice_assistant:
noise_suppression_level: 4 # increase noise suppression to 3 -or- 4 from default 2 for better sound floor suppression
volume_multiplier: 5.0 # increase multiplier from 2.0 to 5.0 to give the mic a little boost...going above 5.0 with Atom Echo resulted in distorted audio for me
speaker: !remove # remove the default 'echo_speaker' entry so VA doesn't use internal speaker at all. NOTE: THIS ALSO DISABLES SOUND FOR TIMERS but LED will still flash on finish
on_tts_end:
- homeassistant.service:
service: media_player.play_media
data:
entity_id: media_player.name_of_a_player # <- this to be changed to actual media_player
media_content_id: !lambda 'return x;'
media_content_type: music
announce: "false"
Hope it helps.