ACDR / homebridge-yamaha-avr

homebridge-plugin for Yamaha AVR. Audio Receiver Accessory with Power, Input, Volume & Remote Control
Apache License 2.0
45 stars 6 forks source link

v3 support for AVRs without YXC (RX-A2010) #76

Open WTell opened 2 years ago

WTell commented 2 years ago

Hi,

First of all, thanks for putting in the time and effort to maintain this fantastic HomeBridge plugin!

Upon upgrading to v3 (specifically, v3.0.0-beta.3 and newer), the connection to my Yamaha AVR has broken. Downgrading to 2.1.0-beta.3 solves the issue and restores connectivity.

The error I'm getting on v3 and above is:

3|hb-Yamah | [9/6/2022, 2:30:17 PM] [Yamaha RX-A2010] 
3|hb-Yamah |         Failed to get system config from Yamaha RX-A2010. Please verify the AVR is connected and accessible at 10.0.0.9

I assume that this issue is related to the change Interface with YamahaExtendedControl API directly, removing yamaha-nodejs dependency.

Is there any hope in restoring connectivity to my RX-A2010?

ACDR commented 2 years ago

Hi! Have you tried v3.0.1?

Does your AVR return anything if you browse to the endpoint in your browser?

http://10.0.0.9/YamahaExtendedControl/v1/system/getDeviceInfo

WTell commented 2 years ago

Hi again!

The problem is present in v3.0.1.

The endpoint you provided doesn't return anything, neither in a browser nor through the terminal.

% curl -v http://10.0.0.9/YamahaExtendedControl/v1/system/getDeviceInfo
*   Trying 10.0.0.9:80...
* Connected to 10.0.0.9 (10.0.0.9) port 80 (#0)
> GET /YamahaExtendedControl/v1/system/getDeviceInfo HTTP/1.1
> Host: 10.0.0.9
> User-Agent: curl/7.79.1
> Accept: */*
> 
* Mark bundle as not supporting multiuse
< HTTP/1.1 404 Not Found
< Server: AV_Receiver/3.1 (RX-A2010)
< Content-Length: 0
< Connection: close
< 
* Closing connection 0
ACDR commented 2 years ago

Looks like you may be correct, in that the RX-A2010 seems to not feature the YXC API used in v3.

You may need to stick with the 2.1.0 release for now if that version works fine for you.

I'll do some tinkering & see if I can add support for non-YXC AVRs in version 3 without drastically increasing complexity.

Trippersgarage commented 2 years ago

I can confirm the same behaviour with my RX-V477. And no idea how to roll back. :)

Will wait to see if ACDR can work his magic before figuring how to roll back.. or upgrading the unit which I was thinking about anyways and this may be the catalyst. I love having this plug in and Siri sorting my AVR out. :)

ACDR commented 2 years ago

You should be able to install 2.1.0 using the homebridge UI, or:

npm i homebridge-yamaha-avr@2.1.0

As for restoring functionality for non-YXC receivers in v3, I'm still pondering the best way to approach this. Tricky one.

Trippersgarage commented 2 years ago

Thanks for looking into this ACDR. You da man.