Amazon Echo - Volume Change Beep Bypass

Long time reader, first time poster so hopefully I’ve put this in the right place.

I’m currently writing some automations/scripts using Amazon Echo devices. I’m wondering if anyone has found a work around to them making a ‘beep’ when setting the volume using media_player.volume_set service.

I’ve tried muting using media_player.volume_mute just prior and just after setting the volume with media_player.volume_set, but this doesn’t have the desired effect.

I’ve had a look in the Amazon forums as well and also not come up with anything so I’m thinking it’s probably something I’ll have to live with. But I thought it was worth asking the question on here to see if someone had come up with a solution.

5 Likes

I’ve searching for the same result! It’s funny that the original Echo (gen 1) doesn’t do the tone notification before changing volume but the echo dots do? I have to think someone far smarter than me has found a workaround!

Has anyone found a workaround.?

Noticed the same thing happen with my Echo dot 2nd gen about a year or so ago. I have an alexa routine to turn up and down it’s volume at 9am, 10am, 9pm and 10pm accordingly and it would not make any beeps/chirps only the status ring light would flash.

Then all of a sudden one night that all changed, my gut feel is this was a firmware/software update by Amazon that whenever a volume change occurs on the echo devices it will also beep/chirp to confirm the new setting and volume.

Shame they didn’t include a toggle to allow users to revert back to the prior way so we can do ‘stealth’ adjustments.

Have you tried sending a custom command “volume up” or “volume down” or “volume 3”?

The following works, but there seems to be a per device cool-down period of about 2 minutes where the device will still make the feedback sound.

service: media_player.play_media
data:
  media_content_id: mute and volume 2
  media_content_type: custom
target:
  entity_id: media_player.kitchen_dot

Or set it up as a script so you can call it in your automations:

alias: Alexa Silent Volume Change
description: Mute feedback sound and change volume to specific value
fields:
  volume:
    name: Volume
    description: The Level to set the volume
    example: 2
    required: true
    selector:
      number:
        min: 0
        max: 10
  target:
    name: Target
    description: The Alexa device to act upon
    required: true
    example: media_player.kitchen_echo_dot
    selector:
      entity:
        multiple: true
        integration: alexa_media
        domain: media_player
sequence:
  - service: media_player.play_media
    data:
      media_content_id: mute and volume '{{ volume }}'
      media_content_type: custom
    target:
      entity_id: "{{ target }}"
mode: queued

@Didgeridrew I have an automation setup for the time to announce every hour on the hour (I also have this as a script so I could do the same but on demand). The sutomation is triggered when it’s the top of the hour but only from 8am to 11pm. It then checks the current volume of the Alexa device and uses input_number.set_value to save the speakers current volume. It then uses a choice to check if the sun is currently above or below the horizon. Based on that it sets the volume of the device using the code below. I use a lower volume after the sun sets. Afterwards it uses the saved value from the original volume of the speak and sets the speaker back to that volume. This way it will always announce at a set level and then if I use the device it’ll still be at the volume levelit was when I used it last.

I also use notify.alexa_media and not media_player.play_media so feature there is no media_content_id: or media_content_type: for me to enter mute and volume 2. I’ve never tried to set the volume like you did but I can easliy change it and give it a try. If I just use mute without volume does it mute the device? If so then I’m wondering if the reason you don’t hear the beep is because the mute and volume change is happening so quickly. The device could still be recovering from being muted so inadvertently the beep isn’t heard. I’ll give it a try…

service: media_player.volume_set
data:
  volume_level: 0.5
target:
  entity_id:
    - media_player.echo_show_5

I have found an alternative workaround - it seems if you are playing a sound then the volume beep doesn’t play. However, for some reason this only works if you add a 500ms delay between the two calls (otherwise it seems to play them as a sequence)

sequence:
  - service: notify.alexa_media
    data:
      message: >-
        <audio
        src='https://mysite.com/mysound.mp3'
        />
      target:
        - media_player.my_echo
      data:
        type: tts
    enabled: true
    alias: Play alarm tune
  - delay:
      hours: 0
      minutes: 0
      seconds: 0
      milliseconds: 500
  - service: media_player.volume_up
    target:
      entity_id: media_player.my_echo
    data: {}

Hope this helps others!

James

1 Like