[APP][PRO] Yamaha AV & MusicCast Receiver

AMAZING!
It works for me too, took a little adaptation and a homey restart, but now it’s working like a charm!
Thank you so much! Will send you a donation for your great work!

1 Like

First, let me explain how it works in the Musiccast app. If you link a client to a server, it shows MC link for the client. If you remove the link, the “MC link” icon remains for the client. Even if you then make the former client now a server, the “MC link” icon sticks to that device. Only after you choose a different source (eg. netradio) the “MC link” icon is replaced by the appropriate icon.
When using your app, it works exactly the same, so clients stay in “MC link” input, but can be made a server nevertheless.

Your flow cards “remove device from this server” and “remove server group” do exactly what they describe.

Hope my little tests were helpful

1 Like

New test version 0.4.2

  • Added two flow conditions for MusicCast state:
    Device role (server, client, none)
    Server is working (or not)

@Hans_Van_der_Eijk @Timmmeeeeh: Just for the case you will need it in future :slight_smile:

1 Like

Hello Ronny,
Maybe this is off topic but I am looking for a similar app for my Emotiva AV Receiver. The according request is stored here Homey Pro Community App Requests - #601 by romiwi.
As the Emotiva AV Receiver is also completely controllable via an ethernet connection and also a complete reference of the Emotiva API (see Dropbox - XMC-1_remote_codes_and_net_API - Simplify your life) is available, i was wondering if you would be willing and able to implement an according app. I would be available for testing it and also make a donation :slight_smile: , would really appreciate your work ! Thanks a lot !

Hi,
thanks for your trust in me :slight_smile:

If I had such a device it would be ok to create an app. But without local tests it’s hard up to impossible to add features. Also if you could test with your device it’s not possible to dive into special data handling and debug errors.
I think you will need a developer who owns such a device to get a stable app.

Hi,
Being new to all this and I have tried to find the response on how to use this app for multi-rooming, i.e. link different rooms to each other. I may miss something obvious, but cannot find how to do this. Is it possible?

Many thanks in advance

Hi. yes, it’s possible using flows because in flow cards you can dynamically select a client to.

Please check this short description.

This way you can link clients to a server and start/stop distribution.

If you have zones and want to control them independent og main zone, yo can add a zone device that’s assigned to the main zone.

On/Off delay Issues

Hey Guys.

The app works great, and thank you Ronny for keeping this alive <3

BUT!, when ever i turn on my reciever, it takes “forever” for homey to see that the reciever is either on/off. it differs between 25 > almost 60 seconds before my ON flow is started or the OFF flow.

I use the status on/off of the Reciever to start different things…light, blinds etc…Yamaha RX-V479

is there any way i can improve that in my end. The old App from Lucas van der Have had almost instant respons from the recivers status ??..(homey 2019)

the system is now HP23 if that makes any difference ?

kind regards \RepairGuyDK from Denmark

Hi,
the app requests an update shortly after changing the state in Homey (press on/off). Perhaps your receiver is changing its internat state too late.
I’ll add a second status request (like it’s already done for changes that take lobger time like input change).

Which device type are you using? AV receiver or MusicCast receiver?

As workaround you can adjust the request period in device setting.
The old app used a fixed interval with 5 or 10 seconds.

Hi Ronny.

I´m Sorry, should have been more precise, it´s not via the App, it´s when ever i press the original remote and turn on/off the reciever !, then Homey takes forever to registre the change …25-60sek before the reciever status is updated in homey, thus my flow(s) can start…

No worries :smile:

The app can only poll data from the receiver. Push messaging is not supported.
To not overload Homey if instant data is not needed, the app has a low pull frequency as default. If I remember right 1min.
You can adjust it to your needs (5sec or 2sec) to get inshant feedback in device settings.

thx Ronny, I changed the pull fre. to 10 sec, the HP23 dosen´t seem to be affected at all in regards to CPU perfomance, everything os working great now with the 10 sec i feel

1 Like

Hi all,
Yesterday I tried to make flows ro control my musiccast 20 with an Aqara cube.
However I found out that several commands were not working (next song, previous song, play and pause) volume control did work. Next I checked the flow and the command was recieved and gave no errors, however nothing happened on the speaker. I tried multiple sources (spotify and local). Skipping songs did work for everything in the musiccast app. Also I then found out I was not able to control it via the device controls, and the device did not show media being played (even after poll interval).
I tested this also on my Musiccast WXAD-010, which had the same problems, and if I pressed pause, and then play in the device screen it skipped a song.
I have no idea if anyone else had these problems or that they don’t occur for recievers?
Kind regards
Tim

Hi Tim,

what commands don’t work?

  • play
  • pause
  • next
  • prev

That’s all?

What input have you selected?

  • Spotify
  • local (means NAS/DLNA server?)

You used the MusicCast device on paiting, right?

Not all functions are available for every source. But I can check the code. Perhaps the list is not complete.
I don’t have Spotify to test, but most “online” sources are controlled via the same API calls. But there can be a difference on devices. The same is for media artwork. I get a media image from my receiver for NetRadio, but nor for other sources.

If I can’t find differences, I’ll send you some URLs as PM to check in your browser. Perhaps I can some more details there :slight_smile:

1 Like

Hi Ronny, and to whomever this may be useful,
It has been a while, since I have been a bit busy.
However, today I figured something out, When changing the input of the device in the homey app to either “spotify” or “server” then it did show the albumart and all of the functions that were previously not working started working. At least for spotify. It seems like if the homey device is set to an input that the device does not have, it does not take any commands anymore, and does not update playing media. The issue is that if the input is changed externally (musiccast app, or spotify connect) the device does not update its new input to the homey device. So if its within homey on the wrong input the controls don’t work. Ofcourse this can now be counteracted by setting one of the 2 inputs via flow, or always keeping the device one of those within homey. However I was curious if it would be possible to let the device itself update the current input in homey @RonnyW ? The device I tested with is a Musiccast 20 speaker (WX-021). I also now tested with the Home Assistant integration, and there it does update the input itself, so it should be possible.

Hi @Timmmeeeeh,

just to clarify…

  • If you set the input in Homey to Spotify, all controls are working?
  • If you set the input at the real device, controls in Homey are not working?

If yes, have you already adjusted the poll interval in device settings for your Homey device?
When you only control the device from Homey, it’s updating the state directly (reading current state from real device)
But if you change something directly at your Yamaha (via IR remote), the state is only synced after the set defined poll interval (60sec as default).
Can you please adjust this interval to 2 or 3 seconds? Then your Homey device should sync much faster.

In addition I’ll check the device sync if there is something not working correctly when using inputs like Spotify or server.

Hi @RonnyW ,
The first statement is correct, at least when using spotify as a source.
Second statement is also correct, except for when the homey device is still on either Spotify or Server, then it does work. I already tried the poll interval, and waiting for the poll interval before drawing conclusions. It is a small speaker so I do not change source on the device itself, but I use the musiccast app, or spotify connect (which can turn on the speaker and start streaming whatever I select in the spotify app).

Okey I just did some more tests and came with the following findings:

  • when any input in the homey app is selected that the device actually has (in the musiccast app, so like spotify, server, bluetooth or netradio) it will allow for controls and show media information (sometimes takes a couple of polls or media changes).
  • when any inout is selected in the homey apo that the device does not have (e.g. HDMI 1) it will not allow for controls or show playing media
  • HOWEVER, it seems to align with the capabilities of the selected input; hdmi sources cannot be paused or skipped, and for intance net radio I could pause and play the song currently playing but not skip or go back (as is also impossible with net radio).
  • Though, when the input is changed externally via musiccast app or spotify, the input will not update in the homey device, not even after polls.
1 Like

Hi @Timmmeeeeh,
I would like to see what input your device is responding in status request.
Could you please execute this UL in your browser?
http://[IP]/YamahaExtendedControl/v1/main/getStatus
Set your device IP as [IP]

You should see something like:

{
  "response_code": 0,
  "power": "standby",
  "sleep": 0,
  "volume": 60,
  "mute": false,
  "max_volume": 161,
  "input": "av1",
  "distribution_enable": true,
  "sound_program": "straight",

Please check the field “input”, if it changes after you changed the input at your device.
It should be one of the available inputs (defined by the API definition) from this value list (field “id”):

Hi @RonnyW ,
The input piece is indeed updated each time I switch inputs externally (trough Yamaha or Spotify).
It will report inputs like “Spotify”, “Server” or “Bluetooth” like the ones that are listed in the input list. Would it be possible to add this to the polling so the device will update its set input upon external change?
If you need any of the responses from the URL then DM me.