Apologies for the noob post, but I only got my HA green Friday and one of the major reasons I wanted HA was actually to sync the volume of 2 yamaha avrs I have next to each other. Of course, I’m learning the possibilities, but this is one annoying thing I really want to fix!
My living room home theatre uses 2 avrs - ‘big Rex’ for the main unit and Rx-v581 that runs the two front and front atmos speakers.
It’s a huge pain having to look to see if the volume are the same, and also lean far forward to make sure the second avr gets the remote signal.
The rx is set to direct and feeds from big rex.
I I’m trying to get the rx-v581 to change volume when the ‘Big Rex’ one does. I have it working, but regardless of whether I turn the volume on Rex (source) up or down, the volume on rx-v581 (dependent) just goes up. I’m guessing it is due to the "+0.01 }}, but I’m a YAML neophyte…
I copied the code below from a reddit sub that’s not Home Assistant and changed the entities to mine.
Could someone please help?
Pleeeeease?! 
triggers:
- entity_id:
- media_player.big_rex
attribute: volume_level
trigger: state
actions:
- data:
volume_level: "{{ state_attr('media_player.jeff_s_rx_v581', 'volume_level') +0.01}}"
action: media_player.volume_set
target:
device_id: bf0884d8b0ce3f50700b0c
you almos got it
alias: Sync Volume from Big Rex to RX-V581
description: Syncs volume exactly between two Yamaha AVRs
trigger:
- platform: state
entity_id: media_player.big_rex
attribute: volume_level
condition: []
action:
- service: media_player.volume_set
target:
entity_id: media_player.jeff_s_rx_v581
data:
volume_level: "{{ state_attr('media_player.big_rex', 'volume_level') }}"
mode: single
this way you can sync both
alias: sincronizar volumen entre satelites
description: manten ambas bocinas sincronizadas en volumen
triggers:
- entity_id:
- media_player.asistente_oficina
- media_player.asistente_cuarto
attribute: volume_level
trigger: state
conditions:
- condition: template
value_template: >
{% set big = state_attr('media_player.asistente_oficina', 'volume_level')
| float(0) %} {% set rx = state_attr('media_player.asistente_cuarto',
'volume_level') | float(0) %} {{ (big - rx) | abs > 0.01 }}
actions:
- choose:
- conditions:
- condition: template
value_template: "{{ trigger.entity_id == 'media_player.asistente_oficina' }}"
sequence:
- target:
entity_id: media_player.asistente_cuarto
data:
volume_level: >-
{{ state_attr('media_player.asistente_oficina', 'volume_level')
}}
action: media_player.volume_set
- conditions:
- condition: template
value_template: "{{ trigger.entity_id == 'media_player.asistente_cuarto' }}"
sequence:
- target:
entity_id: media_player.asistente_oficina
data:
volume_level: >-
{{ state_attr('media_player.asistente_cuarto', 'volume_level')
}}
action: media_player.volume_set
mode: single
just change your entities
1 Like
Thank you so much! I’ve had this sync issue for a couple of years now and it’s always annoyed me! 
Now I can have faith in the speaker level values I’m setting for the second avr and not have to always get up to match both.