Support for multiple zones on Pioneer AVR

Can we add multi-zone support for the Pioneer AVRs like is possible with the Denon component?

The Pioneer component works great for my AVRs primary zone, and by replacing the commands in the source I can have it control Zone 2 instead using a custom component. But trying to enable 2 devices at once runs into problems with source-selection, as the receiver periodically returns its current config, and Home Assistant gets confused about the source selection for the receiver.

Can you explain how you got it to control the second zone? I’m really only interested in controlling Zone 2 since it’s the one thats farthest from the receiver.

I made a copy of the python script, and re-named it to pioneer_z2.py so that in my main config I would define a new media player as a separate platform. If you don’t care about the main zone, you can just change the script for this instead, and save yourself some work.

The main issue is that the telnet commands in the script are specific to zone1, so you have to replace these with the appropriate commands for zone2. I found a document listing all the commands online somewhere, and used those. For example, if memory serves the command to get the volume level for Zone1 is “?V” whereas the corresponding command for zone 2 is “?ZV”.

Note that there are 2 places in the code where the script strips the return-text for a specific number of characters given by the receivers response, and when you change the commands to the relevant zone2 commands this response differs as well.

I can dig the details up when I get home from work, but this might point you in the right direction?