Yamaha Receiver (official intergration) works 1-2 times and then looses control. Update Problem

Hello

System:
Docker - Raspberry Pi4
Home Assistant 0.117.6

Intergration:

Hardware:
Yamaha RX-V1067

Problem:
After restart of Home Assiatant i can control (turn on/off control volume and so on) the receiver only 1-2 times and then it do not react on any command.

Problem-relevant configuration.yaml:

media_player:
  - platform: yamaha
    host: 192.168.178.27

Traceback/Error logs

Updating yamaha media_player took longer than the scheduled update interval 0:00:10
3:42:44 PM – Media player (WARNING) - message first occurred at 3:37:04 PM and shows up 35 times

Logger: homeassistant.components.media_player
Source: helpers/entity_platform.py:600
Integration: Media player (documentation, issues)
First occurred: 3:37:04 PM (35 occurrences)
Last logged: 3:42:44 PM

Updating yamaha media_player took longer than the scheduled update interval 0:00:10

Additional information:
By the way - original Yamaha app and intergration in Openahab works perfect.

When it fails, ping the device IP address. Can it still be reached? Also, it seems like this receiver is old, possibly 10 years old. Have you updated the firmware at all?

As i said - original Yamaha app and intergration in Openahab works perfect without any issue, also after Home Assistant do not react. Normally Yamaha API did not changed many years, an it support all at least all the receivers of it.
Firmware is on the last state.

And that’s meaningless because they are different code bases. There very well could be a bug in the home assistant code because they all use different libraries.

Are you going to answer this question?

@petro
i have exactly the same problem as thisIO with my rx-v2020 which has latest available firmware and the receiver is working fine and ping towards the device also works just like the AV Controller app.

Would need to see error logs. If the device can be pinged on your network from your HA box, then this is most likely an issue with the library that HA uses.

Hi Petro

this is what my log says

2020-12-26 21:06:56 ERROR (MainThread) [homeassistant.helpers.entity] Update for media_player.yamaha_receiver fails

Traceback (most recent call last):

File "/usr/local/lib/python3.8/xml/etree/ElementTree.py", line 1700, in close

self.parser.Parse("", 1) # end of data

xml.parsers.expat.ExpatError: no element found: line 1, column 0

During handling of the above exception, another exception occurred:

Traceback (most recent call last):

File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 278, in async_update_ha_state

await self.async_device_update()

File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 474, in async_device_update

raise exc

File "/usr/local/lib/python3.8/concurrent/futures/thread.py", line 57, in run

result = self.fn(*self.args, **self.kwargs)

File "/usr/src/homeassistant/homeassistant/components/yamaha/media_player.py", line 195, in update

self._play_status = self.receiver.play_status()

File "/usr/local/lib/python3.8/site-packages/rxv/rxv.py", line 467, in play_status

src_name = self._src_name(self.input)

File "/usr/local/lib/python3.8/site-packages/rxv/rxv.py", line 254, in input

response = self._request('GET', request_text)

File "/usr/local/lib/python3.8/site-packages/rxv/rxv.py", line 154, in _request

response = cElementTree.XML(res.content)

File "/usr/local/lib/python3.8/site-packages/defusedxml/common.py", line 132, in fromstring

return parser.close()

File "/usr/local/lib/python3.8/xml/etree/ElementTree.py", line 1702, in close

self._raiseerror(v)

File "/usr/local/lib/python3.8/xml/etree/ElementTree.py", line 1602, in _raiseerror

raise err

File "<string>", line None

xml.etree.ElementTree.ParseError: no element found: line 1, column 0

Your receiver isn’t replying to the requests. Here’s the library that HA is using to communicate with Yamaha, post your issue there. Unfortunately, it’s out of HA’s hands at this point.

karia001 Please post the link to issue here to follow it!

I set up integration with an old Yamaha V673 receiver today. I let it discover the receiver, and everything works through multiple power cycles. BTW: you have to ensure “network standby” is enabled in the receiver’s settings…

rskaufmann
Thanks but it is not the question.
Reciever continue to work from original app, web interface and for example from openhab. It stops to work only from HA till it will be restartet. So it is 100% problem of HA.

No one has created an issue with the appropriate logs and this thread is almost 2 months old…

As a side note, the library in question only claims to work with the following receivers: Automation Library for Yamaha RX-V473, RX-V573, RX-V673, RX-V773 receivers. It’s possible that it will never work for receivers outside that list.

Hi petro,

i created a new issue on GitHub

1 Like

Hi @petro

i have noticed that i haven’t seen the problem since i upgraded HA to the latest version. Might it have been a problem with HA itself?
i will keep monitoring my device and post any updates regarding this issue

Rakesh

Unlikely, the error you posted is about malformed XML coming from the receiver. The issue most certainly resides in your receiver or the library that HA uses (which hasn’t been updated in 2 years).

Exactly the same problem here!

Yamaha RX-A2080 with latest firmware and network standby on. It worked for two days without issues! I dont’t know when it stopped working, maybe after a HA update or reboot. I’m able to ping the receiver, the android app works, I can browse the web menu. But the entity is not available.

Was anybody able to solve the issue? It’s very strange that it worked in the first place and then suddenly stopped working. Nothing was changed…

That’s a musiccast receiver and you should be using the musicast integration.

I’ve had this issue for a few months and haven’t had time to look into it. Now appears this thread is spot on. This is not a receiver problem as the receiver worked flawlessly until a few months ago, and works fine with iOS app and webpage while being unresponsive to HA.

Since the library hasn’t changed in two years, I think this points to a problem in Core HA rather than the library itself.

Logs aren’t capturing anything when command is issued. Do I need to add homeassistant.components.media_player.yamaha: debug to the logger to get it to register?

Did you update your firmware? I’ve locked my firmware on my receiver and haven’t updated anything. The integration works perfect still. This is likely not a core issue. The rxv library hasn’t been updated since 2018. Any firmware updates between then and now could break the library. Unfortunately, the owner of the code (outside HA) has not responded to anything in a long time. Depending on the license for his code, it may need to be forked and taken over by a new dev.

Logging on home assistants side only produces 2 warnings. With debug you’ll only get a list of controllers that are found or ignored. Nothing will occur when sending/receiving a command.


Also, good news. I just checked out the rxv library, and it looks like the dev came out of a slumber and there has been 2 updates.

With that being said, I recommend the people that are having an issue do the following:

  1. Create a custom_component folder inside your config folder.

  2. Create a yamaha folder inside that.

  3. Copy the contents of this directory into that folder.

  4. Modify the manifest.json file to have the following contents:

    {
      "domain": "yamaha",
      "name": "Yamaha Network Receivers",
      "documentation": "https://www.home-assistant.io/integrations/yamaha",
      "requirements": ["rxv==0.7.0rc2"],
      "codeowners": [],
      "iot_class": "local_polling"
    }
    
  5. Restart Home Assistat.

This will take the current home assistant library and use the updates that were delivered in January. If this fixes the problems, we can deliver it to the core.

Keep in mind that these are pre releases of rxv, so it may not fix the problem. If one of you could identify the problem, a PR against RXV could be created to address the issue now that it looks like the dev has returned.

EDIT: Also looks like someone opened up an issue against the core, and someone opened an issue in rxv. Is this the issue that’s occurring for you guys?