I found that i can change the surround program for all options except “Straight”.
I added tPacketCapture to my android tablet and used the Yamaha AV controller to capture the request that is sent when Straight is selected and i found that its is a bit different than the format used to set a surround program:
This is what is sent when you choose Straight:
The method to set the surround program would not work in this case since “Straight” is not a name, but instead an element:
public void setSurroundProgram(Zone zone, String name) throws IOException {
postAndGetResponse("<?xml version=\"1.0\" encoding=\"utf-8\"?><YAMAHA_AV cmd=\"PUT\"><" + zone
+ "><Surround><Program_Sel><Current><Sound_Program>" + name
+ "</Sound_Program></Current></Program_Sel></Surround></" + zone + "></YAMAHA_AV>");
}
I was thinking i could help modify the Yamaha Binding to support this since it doesnt look like it currently does. But i wanted to check with the community to see if others are seeing the same thing. I dont know if its just with the RX-V479?
Same issue over here with a Yamaha Rxv773, since I don’t have a clue how to “fix” the binding, I’m really interested to make it work. Could you please give more detailed instructions?
I never heard back from anyone so i just modified my version of the Yamaha binding and added my version of the jar to the addons directory.
I modified the setSurroundProgram() method in YamahaReceiverProxy to this:
public void setSurroundProgram(Zone zone, String name) throws IOException {
if (name.toLowerCase().equals("straight")) {
postAndGetResponse("<?xml version=\"1.0\" encoding=\"utf-8\"?><YAMAHA_AV cmd=\"PUT\"><" + zone
+ "><Surround><Program_Sel><Current><Straight>On</Straight></Current></Program_Sel></Surround></" + zone + "></YAMAHA_AV>");
} else {
postAndGetResponse("<?xml version=\"1.0\" encoding=\"utf-8\"?><YAMAHA_AV cmd=\"PUT\"><" + zone
+ "><Surround><Program_Sel><Current><Sound_Program>" + name
+ "</Sound_Program></Current></Program_Sel></Surround></" + zone + "></YAMAHA_AV>");
}
}
Im not sure it will be the case for all Yamaha models, but it sounds like you might have the same problem i had. If you want i can provide the jar, just let me know.