Pioneer AVR integration (supporting config flow and asyncio)

Just downloaded it.
Will try it later in the week when I get some time, and report back.

Thank you,

BTW if you want to install the integration from GitHub ahead of the next release, please keep in mind that you will also need to install the latest aiopioneer package onto wherever you install HA, as there were changes required there as well to support changing only the band. I need to release both for the new tuner feature to work.

OK, I had only downloaded from the repo. I’ll wait for the next release before testing.
The VSX-823 (and others) also have built-in support for Pandora and Netradio, are there any plans of supporting these in the future?

I have a Chromecast connected to my AVR which is capable of similar features (plus unlike many AVR models its software is still updated) so I do not have plans to support Pandora and Internet Radio. Pandora has not been available in Europe for a while and I’m not sure if the radio station directory used by Internet Radio is still being updated. You can already switch an AVR Zone to these inputs through the integration where supported by the AVR. You are quite welcome to submit a PR to the repo if you choose to implement Pandora and Internet Radio support.

Hi @2t0m

I have a VSX-S510 as well. Can you turn it on via the integration?
I can’t turn it on and I was wondering if its just a configuration problem or If the VSX-s510 doesn’t have WOL. Also I couldn’t find anything online or in the manual, so I guess it doesn’t support WOL…

Hi. Yes, I can turn it on and off with the integration v0.8.4 without any problem.

My config file :

- platform: pioneer_async
  host: 192.168.1.171
  timeout: 10
  sources: {  'TV': '05', 'Google TV': '06' }
  params: { volume_step: True, ignored_zones: ['2']}

Mh oh.
I tried your config but I can get it to work. When my Pioneer VSX-S510 is turned off the dashboard card is greyed out and it says unavailable… :frowning:

Anyways, thanks for the fast reply! :slight_smile:

Don’t you have some logs from this custom integration to share ?

I set the logging for the pioneer_async custom integration to debug.
Now when my Pioneer is turned off and I go to settings > system > logs thats what I see:

2023-10-31 21:30:24.921 INFO (MainThread) [homeassistant.components.media_player] Setting up media_player.pioneer_async
2023-10-31 21:30:24.922 DEBUG (MainThread) [custom_components.pioneer_async.debug] >> Debug.setconfig({})
2023-10-31 21:30:24.922 DEBUG (MainThread) [custom_components.pioneer_async.device] Configuring AVR "192.168.178.49:8102" via entry_id configuration.yaml
2023-10-31 21:30:24.922 INFO (MainThread) [aiopioneer.pioneer_avr] Starting aiopioneer 0.4.3
2023-10-31 21:30:28.006 ERROR (MainThread) [custom_components.pioneer_async.media_player] Could not open AVR connection: OSError: [Errno 113] Connect call failed ('192.168.178.49', 8102)

When clicking the turn on button in my dashboard nothing happens and nothing is logged.
When turning the device on manualy and clicking on the three dots of the integration dashboard card it finds the receiver and I can control it via the integration.

here is what’s logged when the receiver is turned on (at the end I turn it of via integration):

2023-10-31 21:31:48.088 INFO (SyncWorker_1) [homeassistant.loader] Loaded spotify from homeassistant.components.spotify
2023-10-31 21:33:28.008 INFO (MainThread) [homeassistant.components.media_player] Setting up media_player.pioneer_async
2023-10-31 21:33:28.009 DEBUG (MainThread) [custom_components.pioneer_async.debug] >> Debug.setconfig({})
2023-10-31 21:33:28.009 DEBUG (MainThread) [custom_components.pioneer_async.device] Configuring AVR "192.168.178.49:8102" via entry_id configuration.yaml
2023-10-31 21:33:28.010 INFO (MainThread) [aiopioneer.pioneer_avr] Starting aiopioneer 0.4.3
2023-10-31 21:33:28.017 INFO (MainThread) [aiopioneer.pioneer_avr] AVR connection established
2023-10-31 21:33:28.018 INFO (MainThread) [aiopioneer.pioneer_avr] updating AVR status (full=True, last updated never)
2023-10-31 21:33:28.018 INFO (MainThread) [aiopioneer.pioneer_avr] querying device information from Pioneer AVR
2023-10-31 21:33:29.151 INFO (MainThread) [aiopioneer.pioneer_avr] Global: model: VSX-S510 (<003><VSX-S510/SYXE8 >)
2023-10-31 21:33:38.009 WARNING (MainThread) [homeassistant.components.media_player] Setup of media_player platform pioneer_async is taking over 10 seconds.
2023-10-31 21:33:39.158 INFO (MainThread) [aiopioneer.pioneer_avr] applying default parameters for model VSX-S510 (^VSX-S510)
2023-10-31 21:33:39.163 INFO (MainThread) [aiopioneer.pioneer_avr] querying available zones on AVR
2023-10-31 21:33:39.175 INFO (MainThread) [aiopioneer.pioneer_avr] Zone 1: power: True (0)
2023-10-31 21:33:39.299 INFO (MainThread) [aiopioneer.pioneer_avr] Zone 1: volume: 27 (027)
2023-10-31 21:33:39.300 INFO (MainThread) [aiopioneer.pioneer_avr] Zone 1 discovered
2023-10-31 21:33:40.423 INFO (MainThread) [aiopioneer.pioneer_avr] Zone 2: power: False (1)
2023-10-31 21:33:41.484 INFO (MainThread) [aiopioneer.pioneer_avr] Zone 2: volume: 0 (00)
2023-10-31 21:33:51.490 INFO (MainThread) [custom_components.pioneer_async.media_player] Adding entities for zones ['1']
2023-10-31 21:33:51.491 DEBUG (MainThread) [custom_components.pioneer_async.media_player] Created entity Pioneer AVR for zone 1
2023-10-31 21:33:51.507 INFO (MainThread) [aiopioneer.pioneer_avr] updating AVR status (full=True, last updated 1.204 s ago)
2023-10-31 21:34:01.817 INFO (MainThread) [aiopioneer.pioneer_avr] Zone 1: mute: False (1)
2023-10-31 21:34:06.831 INFO (MainThread) [aiopioneer.pioneer_avr] Zone 1: source: 17 (17)
2023-10-31 21:34:06.831 INFO (MainThread) [aiopioneer.pioneer_avr] Zone 1: media_control_mode: IPOD (17)
2023-10-31 21:34:56.953 INFO (MainThread) [aiopioneer.pioneer_avr] Zone 1: source: 17 (17)
2023-10-31 21:35:53.401 INFO (MainThread) [aiopioneer.pioneer_avr] Zone 1: power: False (1)

after a while when turned off the dashboard card shows unavailable

31-10-_2023_21-47-09

Have you tried to change the setting Network Standby from the menu ?

1 Like

Oh man, thats it! :smiley:
Turned On Network Standby on the receiver and it’s working.
Thanks for the help!!!

1 Like

Discovered this integration and am trying on my VSX-926. I have a couple questions:

  • from the iControlAV5 app I can see the receiver IP address is 192.168.50.80:8102. The integration won’t connect using port 8102 but does find the receiver on port 23 - does this make sense?
  • None of my configuration is in configuration.yaml, all is done from the UI. Correct?
  • The integration finds my receiver and the Zone 2 amp correctly. The problem is both amplifiers alternate between being available and unavailable (changes about each 30 seconds). The Network standby is turned on. Any ideas what could be causing this?

None of my configuration is in configuration.yaml, all is done from the UI. Correct?

Yes, this integration has been UI only since 0.9.0. The top post hadn’t been updated since I originally wrote the integration in 2020, so I have lightly edited it to reflect the high level changes since its initial release.

from the iControlAV5 app I can see the receiver IP address is 192.168.50.80:8102. The integration won’t connect using port 8102 but does find the receiver on port 23 - does this make sense?

You may need to close iControlAV5 on all other devices before adding your AVR. Most AVRs support a limited number of concurrent connections (as low as 1!) so this integration can’t connect if your AVR doesn’t respond.

You could try configuring the integration to use port 23, though on my AVR it seems less stable when using that port, and also keepalives don’t seem to be sent by the AVR.

The integration finds my receiver and the Zone 2 amp correctly. The problem is both amplifiers alternate between being available and unavailable (changes about each 30 seconds). The Network standby is turned on. Any ideas what could be causing this?

I haven’t heard of this behaviour before. Do you have a firewall between your HA instance and the AVR? Maybe similar to above there is a conflict with other active iControlAV5 instances and/or the original Pioneer integration in HA if you still have that running, all of which use up limited active connections. It could also be a bug that is causing the integration to crash with your particular AVR. It is hard to tell without debug logging, which you can temporarily enable on the integration’s page.

I have been using the Onkyo integration for my Pioneer Sc-LX704.

media_player:
  - platform: onkyo
    host: 192.168.86.90
    name: Main Reciever
    sources:
      'BD': '25'
      'DVD': '04'
      'SAT': '06'
      'HDMI3': '21'
      'HDMI4': '22'
      'HDMI5': '23'
      'HDMI6 - MHL': '24'
      'Ipod/USB': '17'
      'BT': '33'
      'Tuner': '02'
      'TV': '05'
      'CD': '01'
      'Internet Radio': '38'
      'Media Server': '44'
      'Favourites': '45'
      'Net': '26'
    receiver_max_volume: 200

This is the info I get in Develper tools:

source_list:
  - "25"
  - "04"
  - "06"
  - "21"
  - "22"
  - "23"
  - "24"
  - "17"
  - "33"
  - "02"
  - "05"
  - "01"
  - "38"
  - "44"
  - "45"
  - "26"
volume_level: 0.545
is_volume_muted: false
source: dvd_bd_dvd
video_information:
  video_input_port: HDMI 2
  input_resolution: 4K(3840x2160) 59 Hz
  input_color_schema: YCbCr420
  input_color_depth: 24bit
  video_output_port: MAIN
  output_resolution: 4K(3840x2160) 59 Hz
  output_color_schema: YCbCr420
  output_color_depth: 24bit
audio_information:
  audio_input_port: HDMI 2
  input_signal_format: PCM
  input_frequency: 48 kHz
  input_channels: 2.0 ch
  listening_mode: Stereo
  output_channels: 2.0 ch
  output_frequency: 48 kHz
  precision_quartz_lock_system: "Off"
  auto_phase_control_delay: 0 ms
  auto_phase_control_phase: Normal
friendly_name: Main Reciever
supported_features: 3980

Dear all,

For the VSX I might have the codes/commands available for the additional audio features (ILV for advanced speaker configuration, AST/VST/AUA are in decoding), like disabling/enabling the subwoofer, setting its volume and some other functions.

It there a way to get it the code submitted to my own core code and next to the core for the community in which the pioneer module is included?

You can fork the aiopioneer repo and update the code to include the additional AVR commands and response decoders. Commands are defined in commands.py, and parsers are defined in parsers. There is a basic CLI that will allow you to test the updated commands and decoders. Please create a discussion in the github repo if you would like to discuss this process further.

It is a bit harder to redirect the HA integration to use the updated aiopioneer, as HA will always try to fetch integrations via PyPi. One way to do this is to modify the integration’s manifest.json to point to your updated fork of aiopioneer on GitHub.