Yamaha Receiver driving me nuts

Hi all-

How can I keep my yamaha receiver from polluting my logs? every ten seconds or so I get this in the logs making debugging anything else a nightmare:

2018-06-06 14:21:06 ERROR (SyncWorker_1) [rxv] Invalid XML returned for request <YAMAHA_AV cmd="GET"><Zone_4><Volume><Mute>GetParam</Mute></Volume></Zone_4></YAMAHA_AV>: b''
Traceback (most recent call last):
  File "/usr/local/lib/python3.6/site-packages/rxv/rxv.py", line 139, in _request
    response = ET.XML(res.content)  # releases connection to the pool
  File "/usr/local/lib/python3.6/xml/etree/ElementTree.py", line 1315, in XML
    return parser.close()
  File "<string>", line None
xml.etree.ElementTree.ParseError: no element found: line 1, column 0
2018-06-06 14:21:06 ERROR (MainThread) [homeassistant.helpers.entity] Update for media_player.rxa3050_zone_4 fails
Traceback (most recent call last):
  File "/usr/src/app/homeassistant/helpers/entity.py", line 204, in async_update_ha_state
    yield from self.async_device_update()
  File "/usr/src/app/homeassistant/helpers/entity.py", line 327, in async_device_update
    yield from self.hass.async_add_job(self.update)
  File "/usr/local/lib/python3.6/concurrent/futures/thread.py", line 56, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/usr/src/app/homeassistant/components/media_player/yamaha.py", line 165, in update
    self._muted = self.receiver.mute
  File "/usr/local/lib/python3.6/site-packages/rxv/rxv.py", line 554, in mute
    response = self._request('GET', request_text)
  File "/usr/local/lib/python3.6/site-packages/rxv/rxv.py", line 139, in _request
    response = ET.XML(res.content)  # releases connection to the pool
  File "/usr/local/lib/python3.6/xml/etree/ElementTree.py", line 1315, in XML
    return parser.close()
  File "<string>", line None
xml.etree.ElementTree.ParseError: no element found: line 1, column 0

I tried putting zone_ignore in my config but it isn’t, well, ignoring. I don’t even think that it has four zones
Thanks,

-jamie

1 Like

Yours only has 3 zones. This could be a bug in the component. It’s trying to update the information from the 4th missing zone.

your ignore zone section should look like this:

  zone_ignore:
    - "Zone_4"
1 Like

I have:

media_player:
  - platform: yamaha
    host: 192.168.1.31
    name: 'Family Room Receiver'
    zone_ignore:
      - "Zone_2"
      - "Zone_3"
      - "Zone_4"
    zone_names:
      Main_Zone: "Family Room"

  - platform: yamaha
    host: 192.168.1.30
    name: 'Office Receiver'
    zone_ignore:
      - "Zone_2"
      - "Zone_3"
      - "Zone_4"
    zone_names:
      Main_Zone: "Office"

which looks like the docs (Yamaha Network Receivers - Home Assistant)

1 Like

which device is media_player.rxa3050? Is that the device you are using? I don’t change the name of my receivers so they come through naturally like this.

If that isn’t the reciever you use in the ui to perform your automations, then that reciever is coming through from the discovery component. You should add:

discovery:
  ignore:
    - yamaha
1 Like

Glorious.

Thanks!!! that has been bugging me since I think day one.

Nice, glad to help.

Known Bug, this has already benn covered ( and solved) here: https://github.com/home-assistant/home-assistant/issues/16724

That bug is completely unrelated. That bug is due to the addition of surround sound modes to the yamaha platform. This thread was made prior to that addition.

Thanks Petro - you solved the same issue for me!

1 Like