From ad4d5666fef56f4f79d366ef95061ff0b0451d10 Mon Sep 17 00:00:00 2001 From: Joshi <42069141+Joshi425@users.noreply.github.com> Date: Wed, 10 Oct 2018 14:07:33 +0200 Subject: [PATCH] Yamaha AVR update and change Sound Mode only on main_zone (#17241) * Add support for sound_mode for Yamaha rxv media_player * Catch ParseError Exeption on surround_program for unsupported models * Catch all Exeptions from rxv * only get sound mode list / current sound mode on main_zone --- homeassistant/components/media_player/yamaha.py | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/homeassistant/components/media_player/yamaha.py b/homeassistant/components/media_player/yamaha.py index be61560d52b..101dfc2bc53 100644 --- a/homeassistant/components/media_player/yamaha.py +++ b/homeassistant/components/media_player/yamaha.py @@ -12,9 +12,10 @@ import voluptuous as vol from homeassistant.components.media_player import ( DOMAIN, MEDIA_PLAYER_SCHEMA, MEDIA_TYPE_MUSIC, PLATFORM_SCHEMA, SUPPORT_NEXT_TRACK, SUPPORT_PAUSE, SUPPORT_PLAY, SUPPORT_PLAY_MEDIA, - SUPPORT_PREVIOUS_TRACK, SUPPORT_SELECT_SOUND_MODE, SUPPORT_SELECT_SOURCE, - SUPPORT_STOP, SUPPORT_TURN_OFF, SUPPORT_TURN_ON, SUPPORT_VOLUME_MUTE, - SUPPORT_VOLUME_SET, MediaPlayerDevice) + SUPPORT_PREVIOUS_TRACK, SUPPORT_SELECT_SOURCE, SUPPORT_STOP, + SUPPORT_TURN_OFF, SUPPORT_TURN_ON, SUPPORT_VOLUME_MUTE, SUPPORT_VOLUME_SET, + SUPPORT_SELECT_SOUND_MODE, MediaPlayerDevice) + from homeassistant.const import ( ATTR_ENTITY_ID, CONF_HOST, CONF_NAME, STATE_IDLE, STATE_OFF, STATE_ON, STATE_PLAYING) @@ -184,8 +185,12 @@ class YamahaDevice(MediaPlayerDevice): self._playback_support = self.receiver.get_playback_support() self._is_playback_supported = self.receiver.is_playback_supported( self._current_source) - self._sound_mode = self.receiver.surround_program - self._sound_mode_list = self.receiver.surround_programs() + if self._zone == "Main_Zone": + self._sound_mode = self.receiver.surround_program + self._sound_mode_list = self.receiver.surround_programs() + else: + self._sound_mode = None + self._sound_mode_list = None def build_source_list(self): """Build the source list."""