Skip to content

Releases: crowbarz/ha-pioneer_async

0.10.1

05 Jan 20:58
Compare
Choose a tag to compare

What's Changed

0.10.0 introduced an unintended limitation where the integration no longer worked on AVRs that returned an error when the query_device_model command is sent. This command is used to validate that the integration is talking to an AVR that supports the Pioneer API. 0.10.1 now accepts the error response, although it flags a warning that device specific parameter defaults will not be applied as the integration doesn't know what model AVR it is talking to.

All Changes

  • Accept AVR error response to device model query as valid 0a327da
  • Bump aiopioneer to 0.8.1 9fbae15

Full Changelog: 0.10.0...0.10.1

0.10.0

03 Jan 20:27
Compare
Choose a tag to compare

Major refactoring has been completed on the aiopioneer library that underpin this HA integration. For HA integration users, the main impact of the refactoring is that the integration disconnects from the AVR only when the network connection drops, and no longer when an AVR command times out or when a code error causes an exception to be thrown. The order of query commands sent to the AVR has also changed, though this is not expected to cause any issues. The full list of changes to aiopioneer are listed in the release notes.

A new option always_poll has been added to always poll the AVR every scan interval. Enable this option, optionally along with disable_auto_query to reduce the number of queries sent during each poll, on AVRs where power and volume are not updated in HA in real time when they are changed directly on the AVR via the front panel and/or the remote.

Breaking Changes

  • From 0.10.0 onwards, it will no longer be possible to downgrade the integration to a version that uses an older config entry major version (currently 4). If this is encountered, the integration will refuse to start with a config entry migration error. You will need to either restore your HA configuration from a backup, or remove and re-add all instances of the integration to create a new config entry
  • The HA integration debug options have changed - the free-form debug_config has been deprecated and replaced with discrete debug options for integration load/unload, config flow and actions that are configurable from the UI. The deprecated debug config is not migrated
  • The recently introduced config_entry warning that appears when you reconfigure an integration instance has been fixed, but the fix may break reconfiguration on HA versions older than 2024.12

Major Changes

  • Use PioneerAVR.query_device_model on initial connect by @crowbarz in #55
  • Access params and AVR properties via new classes by @crowbarz in #56
  • Add config flow option for command queue debug by @crowbarz in #57
  • Use discrete debug options by @crowbarz in #59
  • Support PARAM_ALWAYS_POLL aiopioneer parameter by @crowbarz in #60

All Changes

  • Add note to enable network standby on the AVR 512e42e
  • Use param properties 56e23c6
  • Use PioneerAVR.query_device_model on initial connect 37bc298 #55
  • Access AVR params via pioneer.params and properties via pioneer.properties efbae03 #56
  • Use repr to show exception types and contents 5d85756
  • Add config flow option for command queue debug de3c8c0 #57
  • Refuse to downgrade config entry version 52fc5bb
  • Support config entry minor_version 52fc5bb
  • Add AM frequency step to FM and AM frequency number unrecorded attributes d64d493
  • Move initial_refresh public property to system param PARAM_ZONES_INITIAL_REFRESH 96b2420
  • Add System sensor 0845c6c
  • Move zones_initial_refresh property to PioneerAVRParams 44fc05c
  • Use cached source_name in PioneerAVRProperties 0a6d277
  • Rename PioneerAVRProperties.source -> source_id 7081d85
  • Rename aiopioneer.const.Zones class to Zone 7855d3d
  • Simplify zone name creation afcd6a2
  • Rename aiopioneer module param to params 48d8d19
  • Refresh only relevant zone on update e2af9ad
  • Use discrete debug options #59
    Use discrete debug bools to enable specific debug options instead of a JSON dict. Support enabling/disabling these from the UI. This is more discoverable as all possible debug options are now visible in the UI.
  • Don't set config_entry in options flow subclass, fix warning from 2024.12 a5a0aea
    https://developers.home-assistant.io/blog/2024/11/12/options-flow/
  • Rename DEBUG_SERVICE to DEBUG_ACTION to reflect HA terminology change d4c1094
  • Support PARAM_ALWAYS_POLL aiopioneer parameter 2e217af #60
    • Add options flow UI for PARAM_ALWAYS_POLL parameter
    • Move config entry version IDs to consts
    • Bump config entry version to 4.2
  • Change Zone.full_name to property b9b13eb
  • Support sound mode only when zone is on and listening modes are available 048f19e
  • Fail integration config flow and startup if model or main zone not detected 2cc57f5
  • Enable speaker system, amp, dsp, video parameters and audio parameters global property groups by default 98cdf75
  • Enable channel level zone property group by default 98cdf75
  • 0.10 documentation updates f000106

Full Changelog: 0.9.2...0.10.0

0.9.2dev1

10 Dec 20:12
Compare
Choose a tag to compare
0.9.2dev1 Pre-release
Pre-release

Patch release to bump aiopioneer to 0.7.2dev1 to address #54

0.9.2

03 Dec 21:26
Compare
Choose a tag to compare

What's Changed

  • Fixed unexpected exception on adding integration #49
  • When Don't check volume when querying AVR source is enabled, the current volume for a zone is not available until the zone is turned on for the first time after the integration starts.
  • The audio information, video information and listening mode queries are no longer sent to the AVR when all zones are off.
  • Only power and (optionally) volume query commands are now sent for zones that are off when the integration starts
  • media_player actions play, pause, stop, next_track and previous_track map to the equivalent AVR media functions supported AVR sources: Network (26), Internet Radio (38), Media Server (44), Tuner (02), USB-DAC (13), Pandora (41), Spotify (53), iPod/USB (17) . For example, when the Tuner is active, next_track selects the next preset.
    • Fast forward, rewind, repeat and shuffle are not yet supported, this is tracked in #52

All Changes

  • Synchronise max_source_id translations 8635b9a
  • Enable localisation of service descriptions and options 2ec0df6
  • Update deprecated asyncio.TimeoutError 14be148
  • Add note about database updates if display property is enabled 2c9fd53
  • Wait for first coordinator refresh to complete in async_setup_entry 6f5fab3
  • Add _unrecorded_attributes property for PioneerZone 99042a0
  • Move initial refresh callback to Zone 1 coordinator 5acaf00
  • Disable AVR reconnection during config flow f4b85bd
  • Bump aiopioneer to 0.7.1 5f9594d
  • Use generic media control commands by @webmeister in #50

New Contributors

Full Changelog: 0.9.1...0.9.2

0.9.1

10 Jul 18:41
Compare
Choose a tag to compare

What's Changed

All Changes

  • Update Makefile to support local repo e99590f
  • Use TunerBand enum in service select_tuner_band 93f9382
  • Don't shutdown or del pioneer if it was never created 84c875a
  • Fix passing of exception text when aborting
  • Moved async yield to PioneerAVR.shutdown 9af9d58
  • Add send_command service d023af3
  • Add strings for PioneerAVR exceptions
  • Remove asyncio import a19b091
  • Fix select_tuner_band API call 9a37dd9
  • Remove return code checking from PioneerAVR method calls ae450c0
  • Move exception checking and translation to PioneerEntityBase.pioneer_command ae450c0

0.9.0

26 May 11:50
Compare
Choose a tag to compare

Warning

Configuration via configuration.yaml is no longer supported in this release. The configuration is ignored and an error is logged if YAML configuration is detected. To migrate, add the integration via the UI.

What's Changed

  • AVR property groups, as well as some more useful properties such as input_multichannel and display, are presented as entities in HA. They can be displayed in the UI as well as used in scripts and automations. This adheres more closely to the HA architecture guidance on how attributes should be presented
    • The AVR property group sensor entities are considered beta and may change in the future, as it is expected that more properties will be exposed as separate entities
    • System wide AVR property groups such as DSP, audio and video parameters are available as entities attached to the main Pioneer AVR device in HA. Zone specific AVR property groups are available as entities attached to the device in HA for each zone. All zone entities except for the media_player entity become available only when the zone is powered on
    • Tuner entities for preset, band and frequency can be changed via the UI, and trigger commands to the AVR when changed. They are only available when the tuner is the selected source for at least one powered on zone. There are separate entities for AM and FM frequency as they have different units of measurement
    • Most of the new entities are disabled by default when the integration is added, to prevent changes from being written to the recorder. Disabled entities can be enabled by default in the entity's settings panel
  • The Maximum source ID and Don't check volume when querying AVR source options can now be set when adding a new instance
  • The media_player entity now uses the name of the zone device by default. The existing entity name should however be preserved when migrating from an older version of the integration.
  • Many action commands sent to the AVR (such as the ones that turn the AVR on and off) are now automatically sent up to 4 times by default (each with a 1 second delay) should they fail. The AVR sometimes refuses to execute certain actions in parallel, such as turning on/off multiple zones, and repeating the commands works around this limitation. Non-idempotent commands such as increase/decrease volume or preset are not repeated. The number of repeats can be configured through the Repeat action commands setting
  • Service calls (eg. turn_on) that fail now generate an error message that is shown by HA in the front-end
  • Service calls now support using targets to specify entities
  • The media_next_track and media_previous_track services now change the tuner presets when the tuner is available
  • Some AVR system information (eg. software version) is not available if all AVR zones are powered off when the integration is started. The integration now re-polls system information and updates the attributes of the HA device when Zone 1 is turned on
  • Documentation has been improved and should now more completely describe the integration's functionality

aiopioneer Package Major Changes

  • The tuner frequency will be set directly on AVR models that support this, instead of stepping the frequency up or down
  • Some zone AVR properties such as tone settings are now polled during full updates
  • Parsing issues for the display and signal_input_resolution have been fixed
  • For VSX-930, the power on volume bounce setting has been disabled by default, and it no longer supports polling of unsupported video properties on full updates making these complete faster

See the aiopioneer releases page for a detailed list of changes.

⚠️ Breaking Changes

  • Integration configuration via configuration.yaml is no longer supported. ADR10 outlines that integrations that communicate with devices, such as this one, must be configured via the UI
  • Migration from configuration.yaml is not implemented. Instead, add the integration via the UI and change the settings there to match your previous configuration
  • As AVR properties are now available as separate entities, the corresponding AVR property groups that were previously exposed as attributes on the media_player entities have been removed
  • Some AVR properties were previously set to --- when undefined or unknown. These properties are now set to a null value in such cases
  • The set_tuner_preset service has been renamed to select_tuner_preset, and the set_tuner_band service has been renamed to select_tuner_band

Full Changelog: 0.8.6...0.9.0

0.9.0rc1

23 Apr 19:26
Compare
Choose a tag to compare
0.9.0rc1 Pre-release
Pre-release

⚠️ 0.9.0 Release Candidate 1

Note

This pre-release is a release candidate for the upcoming 0.9.0 release, and may contain more bugs than usual as a lot of the code has changed. It is recommended that you create a full backup of your HA configuration before you upgrade the integration to this version. The config entry generated by this version of the integration may not be compatible with previous versions, and a full restore or the removal and reinstallation of integration may be required to recover.

Warning

Configuration via configuration.yaml is no longer supported in this release. The configuration is ignored and an error is logged if YAML configuration is detected. To migrate, add the integration via the UI.

What's Changed

  • AVR property groups, as well as some more useful properties such as input_multichannel and display, are presented as entities in HA. They can be displayed in the UI as well as used in scripts and automations. This adheres more closely to the HA architecture guidance on how attributes should be presented
    • The AVR property group sensor entities are considered beta and may change in the future, as it is expected that more properties will be exposed as separate entities
    • System wide AVR property groups such as DSP, audio and video parameters are available as entities attached to the main Pioneer AVR device in HA. Zone specific AVR property groups are available as entities attached to the device in HA for each zone. All zone entities except for the media_player entity become available only when the zone is powered on
    • Tuner entities for preset, band and frequency can be changed via the UI, and trigger commands to the AVR when changed. They are only available when the tuner is the selected source for at least one powered on zone. There are separate entities for AM and FM frequency as they have different units of measurement
    • Most of the new entities are disabled by default when the integration is added, to prevent changes from being written to the recorder. Disabled entities can be enabled by default in the entity's settings panel
  • The Maximum source ID and Don't check volume when querying AVR source options can now be set when adding a new instance
  • The media_player entity now uses the name of the zone device by default. The existing entity name should however be preserved when migrating from an older version of the integration.
  • Many action commands sent to the AVR (such as the ones that turn the AVR on and off) are now automatically sent up to 4 times by default (each with a 1 second delay) should they fail. The AVR sometimes refuses to execute certain actions in parallel, such as turning on/off multiple zones, and repeating the commands works around this limitation. Non-idempotent commands such as increase/decrease volume or preset are not repeated. The number of repeats can be configured through the Repeat action commands setting
  • Service calls (eg. turn_on) that fail now generate an error message that is shown by HA in the front-end
  • Service calls now support using targets to specify entities
  • The media_next_track and media_previous_track services now change the tuner presets when the tuner is available
  • Some AVR system information (eg. software version) is not available if all AVR zones are powered off when the integration is started. The integration now re-polls system information and updates the attributes of the HA device when Zone 1 is turned on
  • Documentation has been improved and should now more completely describe the integration's functionality

aiopioneer Package Major Changes

  • The tuner frequency will be set directly on AVR models that support this, instead of stepping the frequency up or down
  • Some zone AVR properties such as tone settings are now polled during full updates
  • Parsing issues for the display and signal_input_resolution have been fixed
  • For VSX-930, the power on volume bounce setting has been disabled by default, and it no longer supports polling of unsupported video properties on full updates making these complete faster

See the aiopioneer releases page for a detailed list of changes.

⚠️ Breaking Changes

  • Integration configuration via configuration.yaml is no longer supported. ADR10 outlines that integrations that communicate with devices, such as this one, must be configured via the UI
  • Migration from configuration.yaml is not implemented. Instead, add the integration via the UI and change the settings there to match your previous configuration
  • As AVR properties are now available as separate entities, the corresponding AVR property groups that were previously exposed as attributes on the media_player entities have been removed
  • Some AVR properties were previously set to --- when undefined or unknown. These properties are now set to a null value in such cases
  • The set_tuner_preset service has been renamed to select_tuner_preset, and the set_tuner_band service has been renamed to select_tuner_band

Full Changelog: 0.8.6...0.9.0

0.8.6

06 Mar 13:28
Compare
Choose a tag to compare

⚠️ Deprecation notice

Integration configuration via configuration.yaml will no longer be supported from the next minor release (0.9.0).

ADR10 outlines that integrations that communicate with devices, such as this one, must be configured via the UI. Also, several more recently added features, such as support for the HA device registry and dynamic integration loading/unloading, already do not work unless configured via the UI.

All configuration.yaml config options can be configured via the UI configuration now. If you believe that your current use case is not supported, then please describe your configuration in a reply to the discussion for this release, including your configuration.yaml snippet.

Given that there are not many configurable options to migrate, there won't be an automatic YAML migration path. To migrate, you will need to delete the configuration.yaml config, restart HA, remove any stale entities from Settings > Devices & Services > Entities, then configure the integration via the UI.

What's Changed

  • Expose listening_mode_raw, tone and audio in main zone entity attributes
  • Exclude AVR attribute state recording by recorder by default
  • Support updates to disable_auto_query and get_zone_listening_modes made in aiopioneer 0.5.0
  • Bump aiopioneer to 0.5.0

Full Changelog: 0.8.5...0.8.6

0.8.5

14 Jan 19:36
Compare
Choose a tag to compare
  • Don't assume MediaPlayerEntityFeatures are mutually exclusive b1694fc
  • Update usage of MediaPlayerEntityFeature to avoid deprecation warning in 2024.1 28abd7c

Full Changelog: 0.8.4...0.8.5

0.8.4

30 May 18:45
Compare
Choose a tag to compare
  • Add set_tuner_band service in HA integration and aiopioneer (fe3966d)
  • In configure, redisplay basic options with queried sources if query sources enabled (1459397)
  • Add step on integration add to disable source query and set basic parameters (1459397)
  • Fix config entry version update on migration, fixes #28 (9a4ad0c)
  • Improvements in aiopioneer 0.4.3:
    • remove race condition that may have caused AVR responses to be missed
    • avoid multiple commands being executed in parallel in several situations