Page 3 of 15
Re: Yamaha RX-Vxxx (or similar) Ethernet Plugin!
Posted: Thu Sep 19, 2013 5:54 pm
by birdapi
therealbiglou wrote:Thanks, your update works great! The only thing I'm missing is Zone A and Zone B toggles. Unfortunately, Zone 2, 3, or 4 will not toggle Zone B on my RX-V573. Is this something that can be added?
Unfortunately I have not figured it out yet. When i get time I want to try and figure that out. I do not own a RX-V573, only a 473, 867, and 775. The 473 doesnt have different zones, but maybe if i can get it working with the 775 it will work on your 573.
The majority of this project has been trial and error with the damn commands, lol. Mixed with a little bit of network packet sniffing and reverse engineering the official yamaha android app to see what works. I haven't given Dragon470's plugin a full run through yet to see if the zone stuff works with it or not. I also might peruse that YNC.zip he uploaded to see if it gives me any hints.
Re: Yamaha RX-Vxxx (or similar) Ethernet Plugin!
Posted: Thu Sep 19, 2013 6:39 pm
by therealbiglou
I was not able to get his to work with Zone A and Zone B either.

Re: Yamaha RX-Vxxx (or similar) Ethernet Plugin!
Posted: Fri Sep 20, 2013 2:12 am
by birdapi
I just pushed a new version to GitHub. This one seems to have fixed the Zone 2 bug. As it turns out, i was accidentally sending 2.0 instead of just 2 to one of the functions.
therealbiglou, I also added the ability to select zones A-D, can you test to see if this works for you? Can you also check if the new version Zone 2 will activate your Zone B? If so then i can get rid of the lettered zones...
New Features:
- Zone 2 is now working for a lot of things, as should zones 3 and 4 (untested)
- Ability to set the active zone with the "SetActiveZone" action, and any action you use that has "Active Zone" as its selected zone will apply to that zone. This allows you to use the same buttons for both zones, and just toggle the active zones to change what it controls at that moment.
Re: Yamaha RX-Vxxx (or similar) Ethernet Plugin!
Posted: Fri Sep 27, 2013 1:18 am
by Dragon470
GetInfo has now been added. So this allows everyone to move to the newer version. If there still features missing from my old version, let me know and I will add them in also. Reminder: to see the info in the log window use a python command action "print eg.result"
Re: Yamaha RX-Vxxx (or similar) Ethernet Plugin!
Posted: Mon Oct 21, 2013 7:39 pm
by v!rus
Hi
First, my programing knowledge is very, very limited. In short, i have no knowledge!

But i`m willing to learn.
I want to use the seekbar from Terremote to adjust the volume for my receiver.
If i increase or decrease the seekbar, Terremote sends a event with a payload. The Developer from Terremote
wrote a little toturial to use this event with a python script, but this script is to set the windows master volume.
So, i`ve tried to change this script and use it with your plugin. But saddly i don`t get it to work. I always get an "Attribute error".
My question is:
Is it possible to get this working with your plugin and if yes, could please help me?
This is the original script from terremote:
Code: Select all
eg.plugins.System.SetMasterVolume(float(eg.event.payload[1]))
This is my try to get it to work:
Code: Select all
eg.plugins.YamahaRX.SetVolume(float(eg.event.payload[1]))
and this is the error message from EG:
Code: Select all
19:59:11 Traceback (most recent call last):
19:59:11 Python script "39", line 1, in <module>
19:59:11 eg.plugins.YamahaRX.SetVolume(float(eg.event.payload[1]))
19:59:11 AttributeError: 'Bunch' object has no attribute 'YamahaRX'
And sorry for my limited english knowledge!
v!
Re: Yamaha RX-Vxxx (or similar) Ethernet Plugin!
Posted: Mon Oct 21, 2013 11:56 pm
by Dragon470
Yes, you can do this. The Function you are looking for:
Code: Select all
eg.plugins.YamahaRX.SetVolume(zone,val)
to use this from terremote use a python script with this:
Code: Select all
val = float(float(eg.event.payload)/97*100-80.5)
val = round(val)
eg.plugins.YamahaRX.SetVolume("Main Zone",val)
This is assuming the value you are getting from the payload is a number between 0 and 100. If that is not the case I would have to change the script. This is also just rounding to the nearest whole number. The receiver can do .5 increments between -80.5 and 16.5. I just didn't take the time to do the math. The "Zone_2" can be replaced with "Zone 2", "Zone 3", ...
Re: Yamaha RX-Vxxx (or similar) Ethernet Plugin!
Posted: Tue Oct 22, 2013 5:42 pm
by v!rus
Hi Dragon470,
thank you for your answer!
With your second script (for terremote) i get the following error:
Code: Select all
19:38:35 Traceback (most recent call last):
19:38:35 Python script "28", line 1, in <module>
19:38:35 val = float(float(eg.event.payload)/97*100-80.5)
19:38:35 TypeError: float() argument must be a string or a number

Re: Yamaha RX-Vxxx (or similar) Ethernet Plugin!
Posted: Tue Oct 22, 2013 9:33 pm
by Dragon470
use to fully test:
Code: Select all
print eg.event.payload
val = float(float(eg.event.payload[1])/97*100-80.5)
val = round(val)
eg.plugins.YamahaRX.SetVolume("Main Zone",val)
If this works you can remove the print eg.event.payload.
If it doesn't work just send me the output of the eg.event.payload
Re: Yamaha RX-Vxxx (or similar) Ethernet Plugin!
Posted: Wed Oct 23, 2013 5:48 pm
by v!rus
Saddly it doesn`t work. It also does not work if i only hit the "Test" button in the script editor.
Code: Select all
19:44:07 TCP.SetVolume ['192.168.101.7', u'0.5 ']
19:44:07 SetVolume
19:44:07 Python Skript
19:44:07 ['192.168.101.7', u'0.5 ']
19:44:07 Traceback (most recent call last):
19:44:07 Python script "28", line 4, in <module>
19:44:07 eg.plugins.YamahaRX.SetVolume("Main Zone",val)
19:44:07 AttributeError: 'Bunch' object has no attribute 'YamahaRX'
Re: Yamaha RX-Vxxx (or similar) Ethernet Plugin!
Posted: Thu Oct 24, 2013 12:09 am
by Dragon470
What version of the plugin are you using? The newest version that is on
https://github.com/BirdAPI/yamaha-netwo ... master.zip is what you should be using. If you are using a really old version it is not named YamahaRX. That could be why you are getting the bunch issue. I also noticed that your payload[1] was '0.5'. Either that was very low on the slider or you will have to change:
Code: Select all
val = float(float(eg.event.payload[1])/97*100-80.5)
to:
Code: Select all
val = float(float(eg.event.payload[1]*100)/97*100-80.5)
Re: Yamaha RX-Vxxx (or similar) Ethernet Plugin!
Posted: Thu Oct 24, 2013 5:18 pm
by v!rus
I use the same version (1.0) as you linked.
With your new line for the script, i get the following:
Code: Select all
19:16:44 TCP.SetVolume ['192.168.101.7', u'14.5 ']
19:16:44 SetVolume
19:16:44 Python Skript
19:16:44 ['192.168.101.7', u'14.5 ']
19:16:44 Traceback (most recent call last):
19:16:44 Python script "30", line 2, in <module>
19:16:44 val = float(float(eg.event.payload[1]*100)/97*100-80.5)
19:16:44 ValueError: Unicode float() literal too long to convert
Re: Yamaha RX-Vxxx (or similar) Ethernet Plugin!
Posted: Thu Oct 24, 2013 10:26 pm
by Dragon470
Virus, do you have more than 1 version of the plugin installed?
If so then YamahaRX could be renamed to YamahaRX_1, YamahaRX_2, ... etc.
Now I looked at your last payload and you should use the previous code with out the extra *100. I originally did not know if the payload limits were set between 0 and 1 or 0 and 100. I don't have terremote and none of my tablets can be registered with Google apps store. I only have an Archos 5IT and 2 Pandigital Novels. I do use them as remotes for the various entertainment rooms.
Re: Yamaha RX-Vxxx (or similar) Ethernet Plugin!
Posted: Sun Oct 27, 2013 6:53 pm
by v!rus
Hi Dragon,
sry for my late answer!
No, i have only 1 version of the plugin installed.
The latest error message is:
Code: Select all
19:48:51 TCP.SetVolume ['192.168.101.7', u'56.0 ']
19:48:51 SetVolume
19:48:51 Python Skript
19:48:51 ['192.168.101.7', u'56.0 ']
19:48:51 Traceback (most recent call last):
19:48:51 Python script "32", line 4, in <module>
19:48:51 eg.plugins.YamahaRX.SetVolume("Main Zone",val)
19:48:51 AttributeError: 'Bunch' object has no attribute 'YamahaRX'
Code:
Code: Select all
print eg.event.payload
val = float(float(eg.event.payload[1])/97*100-80.5)
val = round(val)
eg.plugins.YamahaRX.SetVolume("Main Zone",val)
Re: Yamaha RX-Vxxx (or similar) Ethernet Plugin!
Posted: Sun Oct 27, 2013 7:32 pm
by v!rus
Sorry for double posting!
I`ve reinstalled the plugin now and have removed all my (old) macros for the plugin.
Now i get this error message:
Code: Select all
20:28:40 TCP.SetVolume ['192.168.101.7', u'42.0 ']
20:28:40 SetVolume
20:28:40 Python Skript
20:28:40 ['192.168.101.7', u'42.0 ']
20:28:40 Traceback (most recent call last):
20:28:40 Python script "11", line 4, in <module>
20:28:40 eg.plugins.YamahaRX.SetVolume("Main Zone",val)
20:28:40 File "C:\Program Files (x86)\EventGhost\eg\Classes\PluginInstanceInfo.py", line 33, in __getattr__
20:28:40 return self.actions[name]()
20:28:40 KeyError: 'SetVolume'

Re: Yamaha RX-Vxxx (or similar) Ethernet Plugin!
Posted: Mon Oct 28, 2013 1:20 am
by Dragon470
I am sorry for the most recent problem. That is an oversight by me not testing. I have updated the plugin, so your current config should now work.
I still do not understand why you ever had the YamahaRX "Bunch" error. That should have never happened. All the back and forth about multiple instances was about that bunch issue.