diff --git a/_config.yml b/_config.yml
index 2ed288f5ae7..3365ff3ecea 100644
--- a/_config.yml
+++ b/_config.yml
@@ -107,9 +107,9 @@ social:
# Home Assistant release details
current_major_version: 2021
-current_minor_version: 8
-current_patch_version: 8
-date_released: 2021-08-18
+current_minor_version: 9
+current_patch_version: 0
+date_released: 2021-09-01
# Either # or the anchor link to latest release notes in the blog post.
# Must be prefixed with a # and have double quotes around it.
diff --git a/source/_posts/2021-09-01-release-20219.markdown b/source/_posts/2021-09-01-release-20219.markdown
new file mode 100644
index 00000000000..6fd6cafe475
--- /dev/null
+++ b/source/_posts/2021-09-01-release-20219.markdown
@@ -0,0 +1,2341 @@
+---
+layout: post
+title: "2021.9.0: Beta release notes"
+description: "2021.9.0: Beta release notes"
+date: 2021-08-25 00:00:00
+date_formatted: "September 1, 2021"
+author: Franck Nijhof
+author_twitter: frenck
+comments: true
+categories:
+- Release-Notes
+- Core
+og_image: /images/blog/2021-09/social.png
+feedback: true
+---
+
+
+
+
+
+These are the beta release notes for Home Assistant Core 2021.9 (and is thus a
+work in progress).
+
+If you encounter any issues with the beta release, please report them on GitHub:
+
+- Issues with integrations, automations and such (Core related):
+
+- Issues with the frontend/Lovelace:
+
+- Issues with the Supervisor:
+
+- Issues with the documentation:
+
+
+Please be sure to include the beta version you are running in the issue
+description (not title), so we can classify your issue correctly.
+
+Issues introduced in the beta are processed with priority.
+
+- [Energy now supports batteries and gas!](#energy-now-supports-batteries-and-gas)
+- [Long term statistics unlocked for all sensors](#long-term-statistics-unlocked-for-all-sensors)
+- [USB Discovery](#usb-discovery)
+- [New template entities: Select and Number](#new-template-entities-select-and-number)
+- [New template functions for area's](#new-template-functions-for-areas)
+- [Other noteworthy changes](#other-noteworthy-changes)
+- [New Integrations](#new-integrations)
+- [New Platforms](#new-platforms)
+- [Integrations now available to set up from the UI](#integrations-now-available-to-set-up-from-the-ui)
+- [If you need help...](#if-you-need-help)
+- [Breaking Changes](#breaking-changes)
+- [All changes](#all-changes)
+
+## Energy now supports batteries and gas!
+
+
+
+We have now added support for using your Home batteries with the energy
+dashboard. If you are heating your home with Gas, than you are in luck too!
+The Home Assistant energy management can now also monitor your gas usage.
+
+
+
+
+Additionally, a LOT of energy related integrations have been been updated
+this release to support all this new energy greatness! So, if you where
+unlucky your integration didn't show up on the dashboard yet, as of this
+release changes are they will.
+
+## Long term statistics unlocked for all sensors
+
+In the previous release, we introduced long term statistics for sensors and
+introduce a nice Lovelace card that goes with it. However, in the previous
+release we only unlocked this feature for temperature, humidity, power and
+energy related sensors.
+
+
+
+
+As of this release, we unleashed the long term statistics for all sensors!
+An integration still do need to provide Home Assistant with information
+about the type of value it provides, and a lot of integrations have done that
+at this point.
+
+
+For example, SpeedTest.net sensors can now be used with these.
+
+## USB Discovery
+
+Thanks to [@bdraco], Home Assistant now can discover USB device and provide
+integrations for those devices with configuration automatically.
+
+For example, if you plug in your new Aeotec Z-Wave USB stick into your
+machine running Home Assistant, it will discover it and Home Assistant will
+notify you about it. With a single click you can than configure the Z-Wave JS
+integration.
+
+
+
+
+This works similar as with other integration that discover devices on, for
+example, your network but now based on physical hardware plugged into the
+USB port of your Home Assistant device.
+
+Super cool! Thanks [@bdraco]!
+
+Added to ZHA, Z-Wave JS
+
+## New template entities: Select and Number
+
+This is cool, this release we weclome two new platforms to the template
+integrations: `select` and `number`.
+Thanks to [@raman325] you can create your own!
+
+
+
+## New template functions for area's
+
+Two new template function have been added, that make working with area's
+in YAML when using template a little bit easier.
+
+- `area_id("value")` returns the area ID for a given value. The `value` van be
+a device ID, entity ID, or area name. This function can also be used as a filter.
+
+
+
+- `area_name("value")` returns the area name for a given value. The `value` can
+ be a device ID, entity ID, or area ID. This function can also be used as a filter.
+
+
+
+## Other noteworthy changes
+
+There is much more juice in this release; here are some of the other
+noteworthy changes this release:
+
+
+
+
+- Camera image scaling by [@bdraco]?
+- System Bridge v2.3.0+ - Data from WebSocket ([@timmo001] - [#53443]) ([system_bridge docs])
+- Add light transition for Shelly integration ([@bieniu] - [#54327]) ([shelly docs])
+- Yeelight local push updates ([@starkillerOG] - [#51160]) ([yeelight docs])
+- Add support for Swedish smart electricity meters to DSMR ([@emontnemery] - [#54630]) ([dsmr docs])
+- Yamaha Musiccast Media Browser feature ([@micha91] - [#54864]) ([yamaha_musiccast docs])
+- Add Rainforest Eagle tests and price ([@balloob] - [#54887]) ([rainforest_eagle docs])
+- Compile missing statistics ([@emontnemery] - [#54690]) ([recorder docs])
+- Add support for area ID in zwave_js service calls ([@raman325] - [#54940]) ([zwave_js docs])
+- Add support for Google Assistant's LocatorTrait for vacuum cleaners ([@giannello] - [#55015]) ([google_assistant docs])
+- Add service to clear completed shoppinglist items ([@GrumpyMeow] - [#55032]) ([shopping_list docs])
+- Support device triggers in HomeKit ([@bdraco] - [#53869]) ([homekit docs])
+- Sonos add bass & treble EQ option ([@Tigger2014] - [#53978]) ([sonos docs])
+- Add "cron patterns" to define utility_meter cycles ([@dgomes] - [#46795]) ([utility_meter docs])
+- Add services to bond to start and stop increase/decrease brightness ([@bdraco] - [#55006]) ([bond docs])
+
+A bunch of integration that now support long term / energy. Some of these need
+to be mentioned in the first paragraph about the energy changes or in the
+paragraph about the unlocked long term statistics for sensors.
+
+- Add state class measurement to all suitable sensors on Speedtest.net ([@mib1185] - [#53693]) ([speedtestdotnet docs])
+- Add support for jammed status to SimpliSafe locks ([@bachya] - [#54006]) ([simplisafe docs]) (breaking-change)
+- Add statistics support for the PVOutput sensor ([@zoeisnowooze] - [#54149]) ([pvoutput docs])
+- Add state class and last reset in kostal_plenticore ([@gianklug] - [#54084]) ([kostal_plenticore docs])
+- OVO Energy Long-term Statistics ([@timmo001] - [#54157]) ([ovo_energy docs])
+- Refactor Fronius sensor device class and long term statistics ([@nielstron] - [#54185]) ([fronius docs])
+- Add state_class attribute to keba integration ([@carstenschroeder] - [#54271]) ([keba docs])
+- Use state class total increasing for TPLink smart plugs ([@mib1185] - [#54723]) ([tplink docs])
+- Update deCONZ to use new state classes ([@frenck] - [#54729]) ([deconz docs])
+- Add state classes to Vallox sensors ([@andre-richter] - [#54297]) ([vallox docs])
+- Energy support for Solax inverters ([@ppetru] - [#54654]) ([solax docs])
+- Rfxtrx,STATE_CLASS_TOTAL_INCREASING ([@Danielhiversen] - [#54776]) ([rfxtrx docs])
+- Add Gas device class to DSMR Reader ([@frenck] - [#54748]) ([dsmr_reader docs])
+- Add energy management support to Growatt server integration ([@maschel] - [#54174]) ([growatt_server docs])
+- Add growatt total state_class for storage ([@JasperPlant] - [#54913]) ([growatt_server docs])
+- Extract smappee switch energy attributes into sensors ([@bsmappee] - [#54329]) ([smappee docs]) (breaking-change)
+- Add state_class to relevant sensors in Danfoss Air ([@JonasPed] - [#54847]) ([danfoss_air docs])
+- Add state_class and device_class to Solarlog platform ([@Ernst79] - [#53946]) ([solarlog docs])
+- Update YouLess integration for long time measurements ([@gjong] - [#54767]) ([youless docs])
+- SMA: Add statistics support for power sensors ([@andre-richter] - [#54422]) ([sma docs])
+- Add statistics for emoncms power and energy feeds ([@lukewaite] - [#55109]) ([emoncms docs])
+- Add configurable `state_class` to Modbus sensors ([@farmio] - [#54103]) ([modbus docs])
+
+## New Integrations
+
+We welcome the following new integrations this release:
+
+- [AirTouch 4][airtouch4 docs], added by [@LonePurpleWolf]
+- [Fjäråskupan][fjaraskupan docs], added by [@elupus]
+- [P1 Monitor][p1_monitor docs], added by [@klaasnicolaas]
+- [Tractive][tractive docs], added by [@zhulik]
+- [USB Discovery][usb docs], added by [@bdraco]
+
+## New Platforms
+
+The following integration got support for a new platform:
+
+
+
+- Add `binary_sensor` platform for Xiaomi Miio integration ([@bieniu] - [#54096]) ([xiaomi_miio docs]) (new-platform)
+- Add light platform to MyQ ([@ehendrix23] - [#54611]) ([myq docs]) (new-platform)
+- Add binary sensor platform to Renault integration ([@epenet] - [#54750]) ([renault docs]) (new-platform)
+- Add select platform to template integration ([@raman325] - [#54835]) ([template docs]) (new-platform)
+- Add number platform to template integration ([@raman325] - [#54789]) ([template docs]) (new-platform)
+
+## Integrations now available to set up from the UI
+
+The following integrations are now available via the Home Assistant UI:
+
+- [Nanoleaf][nanoleaf docs], done by [@milanmeu]
+- [Nmap Tracker][nmap_tracker docs], done by [@bdraco]
+- [Rainforest EAGLE-200][rainforest_eagle docs], done by [@balloob]
+- [Uptime Robot][uptimerobot docs], done by [@ludeeus]
+
+## If you need help...
+
+...don't hesitate to use our very active [forums](https://community.home-assistant.io/) or join us for a little [chat](https://discord.gg/c5DvZ4e).
+
+Experiencing issues introduced by this release? Please report them in our [issue tracker](https://github.com/home-assistant/core/issues). Make sure to fill in all fields of the issue template.
+
+
+
+## Breaking Changes
+
+Below is a listing of the breaking change for this release, per subject or
+integration. Click on one of those to read more about the breaking change
+for that specific item.
+
+{% details "Lutron" %}
+
+If (and only if) you currently attempt to make use of the (previously ambiguous)
+Lutron button events in an automation, then you will need to switch to
+the new, unambiguous name. That said, since the current events are ambiguous
+they are not very useful.
+
+([@nickovs] - [#53666]) ([lutron docs])
+
+{% enddetails %}
+
+{% details "1-Wire" %}
+
+The previously deprecated YAML configuration of the 1-Wire integration has been removed.
+
+1-Wire is now configured via the UI, any existing YAML configuration has been imported
+in previous releases and can now be safely removed from your YAML configuration files.
+
+([@epenet] - [#53728]) ([onewire docs])
+
+{% enddetails %}
+
+{% details "Supervisor" %}
+
+The usage of "snapshot" is deprecated, from now "backup" is used instead.
+
+- The service `snapshot_full` is now named `backup_full`, the service `snapshot_full` will be removed in Home Assistant 2021.11.
+- The service `snapshot_partial` is now named `backup_partial`, the service `snapshot_partial` will be removed in Home Assistant 2021.11.
+- Using `snapshot` in the data for the `restore_full` and `restore_partial` services is deprecated and will be removed in Home Assistant 2021.11, use `slug` instead.
+
+Old examples:
+
+```yaml
+service: hassio.snapshot_full
+data:
+ name: "Awesome full snapshot"
+...
+service: hassio.snapshot_partial
+data:
+ name: "Awesome partial snapshot"
+ addons:
+ - awesome_addon
+...
+service: hassio.restore_full
+data:
+ snapshot: sn2321
+...
+service: hassio.restore_partial
+data:
+ snapshot: sn2321
+ addons:
+ - awesome_addon
+```
+
+New examples:
+
+```yaml
+service: hassio.backup_full
+data:
+ name: "Awesome full snapshot"
+...
+service: hassio.backup_partial
+data:
+ name: "Awesome partial snapshot"
+ addons:
+ - awesome_addon
+...
+service: hassio.restore_full
+data:
+ slug: sn2321
+...
+service: hassio.restore_partial
+data:
+ slug: sn2321
+ addons:
+ - awesome_addon
+```
+
+([@ludeeus] - [#53851]) ([hassio docs]) ([zwave_js docs])
+
+{% enddetails %}
+
+{% details "HomeKit" %}
+
+The underlying HomeKit protocol version has changed from version 1.0 to version 1.1.
+
+Cameras with motion sensors and some other accessories may need to be reset using
+the `homekit.reset_accessory` service or unpaired and paired again.
+
+If after unpairing with your iOS the QR code does not show, the pairings can
+manually be removed with the `homekit.unpair` service using the Developer Tools.
+
+([@bdraco] - [#53780]) ([homekit docs])
+
+{% enddetails %}
+
+{% details "Uptime Robot" %}
+
+The Uptime Robot integration migrated to configuration via the UI. Configuring
+Uptime Robot via YAML configuration has been deprecated and will be removed in a
+future Home Assistant release.
+
+Your existing YAML configuration is automatically imported on upgrade to this release;
+and thus can be safely removed from your YAML configuration after upgrading.
+
+([@ludeeus] - [#53938]) ([uptimerobot docs])
+
+{% enddetails %}
+
+{% details "SimpliSafe" %}
+
+SimpliSafe locks no longer have a `jammed` attribute; instead, when jammed,
+they will show a `jammed` state.
+
+If you are currently using the `jammed` attribute in your automation or scripts,
+you'll need to adopt to this change.
+
+([@bachya] - [#54006]) ([simplisafe docs])
+
+{% enddetails %}
+
+{% details "Growatt" %}
+
+The previously deprecated YAML configuration of the Growatt integration has been removed.
+
+Growatt is now configured via the UI, any existing YAML configuration has been imported
+in previous releases and can now be safely removed from your YAML configuration files.
+
+([@frenck] - [#54325]) ([growatt_server docs])
+
+{% enddetails %}
+
+{% details "Tesla Powerwall" %}
+
+The Tesla Powerwall attributes for `energy_exported_(in_kW)` and
+`energy_imported_(in_kW)` have been converted to their own energy sensors.
+
+If you relied on those attributes in your automation or scripts, you'll need
+to adopt to this change.
+
+([@bdraco] - [#54018]) ([powerwall docs])
+
+{% enddetails %}
+
+{% details "Custom integrations: Cameras" %}
+
+This breaking change is only relevant to custom integration authors!
+
+The function signature for `async_camera_image` and `camera_image` has changed
+to include a width and height.
+
+```py
+ async def async_camera_image(
+ self, width: int | None = None, height: int | None = None
+ ) -> bytes | None:
+```
+
+The goal of the change is to reduce the overhead of sending large images that
+will only be displayed as small images as this can quickly consume hundred of
+megabytes of bandwidth / mobile data allocation.
+
+Scaling should be done on a best effort basis and is not a strict requirement
+as the existing behavior of falling back to scaling at the display layer is
+preserved.
+
+- Integrations should pass on the width and height if the underlying
+ camera is capable of scaling the image.
+
+- Integrations may choose to ignore the height parameter in order to
+ preserve aspect ratio
+
+- If the integration cannot scale the image and returns a jpeg image, it will
+ automatically be scaled by the camera integration when requested.
+
+([@bdraco] - [#53835])
+
+{% enddetails %}
+
+{% details "Custom integrations: Sensors" %}
+
+This breaking change is only relevant to custom integration authors!
+
+Although not a breaking change from a user's perspective, this is a significant
+change from a developer's perspective.
+
+Temperature conversions are moving from the `Entity` base class to the
+`SensorEntity` base class.
+
+Additionally, we have two new properties, `native_value` (which replaces `state`)
+and `native_unit_of_measurement` which replaces `unit_of_measurement`.
+
+Read all about it in the developer blog:
+
+
+
+([@emontnemery] - [#48261]) ([abode docs]) ([sensor docs])
+
+----
+
+Additionally, a new sensor state class has been introduced: `total_increasing`.
+
+This releases the `measurement` that was used in conjunction with the
+`last_reset` attribute. For more information about his can be found in the
+developer blog about it:
+
+
+
+{% enddetails %}
+
+{% details "IKEA TRÅDFRI" %}
+
+The legacy code, which imported hosts from a JSON file have been removed.
+If you relied on that, please follow the instructions to setup the hosts
+(can be detected automatically).
+
+To avoid this first upgrade to 2021.8.x first which will (which will
+automatically import) and then upgrade to latest release.
+
+([@janiversen] - [#54452]) ([tradfri docs])
+
+{% enddetails %}
+
+{% details "Toon" %}
+
+The unit of measurement of gas and water sensors for Toon has changed from `m3` to `m³`.
+
+([@bramkragten] - [#54110]) ([toon docs])
+
+{% enddetails %}
+
+{% details "DSMR" %}
+
+The unit of measurement of gas sensors for DSMR has changed from `m3` to `m³`.
+
+([@bramkragten] - [#54110]) ([dsmr docs])
+
+{% enddetails %}
+
+{% details "Wink" %}
+
+The Wink integration has been deprecated and is pending removal in
+Home Assistant 2021.11.
+
+Their developer portal, needed for obtaining an API token, has been taken
+offline and their customer support has confirmed no new token or client/secret
+can be obtained. This makes it impossible to use this integration.
+
+([@frenck] - [#54496]) ([wink docs])
+
+{% enddetails %}
+
+{% details "UpCloud" %}
+
+The previously deprecated YAML configuration of the UpCloud integration has been removed.
+
+UpCloud is now configured via the UI, any existing YAML configuration has been imported
+in previous releases and can now be safely removed from your YAML configuration files.
+
+([@scop] - [#54516]) ([upcloud docs])
+
+{% enddetails %}
+
+{% details "Xiaomi Miio" %}
+
+The following fan entity attributes `temperature`, `humidity`, `aqi`,
+`purify volume`, `filter life remaining`, `filter hours used`, `co2`,
+`illuminance`, `motor speed` and ` motor2 speed` has been migrated to their own
+sensor entities.
+
+If you relied on those attributes in your automation or scripts, you'll need
+to adopt to this change.
+
+The `filter_rfid_product_id` and `filter_rfid_tag` fan entity attributes
+have been removed as they are of little use to keep around.
+
+([@bieniu] - [#54564]) ([xiaomi_miio docs])
+
+----
+
+The service `fan_set_led_brightness` will is removed and the **Led Brightness**
+`select` entity has been created instead.
+
+If you relied on this service in your automation or scripts, you'll need
+to adopt to this change.
+
+([@bieniu] - [#54702]) ([xiaomi_miio docs])
+
+----
+
+The previously (deprecated and old style) speeds, speed list and speed services
+have been removed.
+
+([@SmaginPV] - [#54182]) ([xiaomi_miio docs])
+
+----
+
+The services `fan_set_buzzer_on`, `fan_set_buzzer_off`, `fan_set_led_on`,
+`fan_set_led_off`, `fan_set_child_lock_on`, `fan_set_child_lock_off`,
+`fan_set_auto_detect_on`, `fan_set_auto_detect_off`, `fan_set_learn_mode_on`
+and `fan_set_learn_mode_off` are be removed.
+
+Switch entities have been created to replace those.
+
+If you relied on one of these services in your automation or scripts, you'll
+need to adopt to this change.
+
+([@bieniu] - [#54834]) ([xiaomi_miio docs])
+
+----
+
+The previously deprecated YAML configuration of the Xiaomi Miio integration has
+been removed (with the exception of the `remote` platform).
+
+Xiaomi Miio is now configured via the UI, any existing YAML configuration has
+been imported in previous releases and can now be safely removed from your
+YAML configuration files.
+
+([@rytilahti] - [#54930]) ([xiaomi_miio docs])
+
+----
+
+The services `fan_set_favorite_level`, `fan_set_fan_level`, and `fan_set_volume`
+have be removed and `number` entities have been created instead.
+
+If you relied on one of these services in your automation or scripts, you'll
+need to adopt to this change.
+
+([@bieniu] - [#54977]) ([xiaomi_miio docs])
+
+{% enddetails %}
+
+{% details "Z-Wave JS" %}
+
+The Basic CC always comes with two values, `currentValue` and `targetValue`.
+
+We currently only have a discovery schema for `currentValue` which creates a
+sensor, making these Basic CC values noninteractive. As of this release we will
+create a `number` platform entity for Basic CC values instead of sensors.
+
+([@raman325] - [#54512]) ([zwave_js docs])
+
+----
+
+If you have created an automation with the `zwave_js` device condition
+`Current value of a Z-Wave Value` for the `CONFIGURATION` Command Class,
+your automation will no longer work.
+
+Instead, you should use the `Config parameter` device condition for the value
+you were trying to use for your condition.
+
+([@raman325] - [#54962]) ([zwave_js docs])
+
+{% enddetails %}
+
+{% details "Nmap Tracker" %}
+
+The Nmap Tracker integration migrated to configuration via the UI. Configuring
+Nmap Tracker via YAML configuration has been deprecated and will be removed in a
+future Home Assistant release.
+
+Your existing YAML configuration is automatically imported on upgrade to this release;
+and thus can be safely removed from your YAML configuration after upgrading.
+
+To disable creation of new entities, use the the system option to disable new
+entities for the config entry, and manually enable entities as needed.
+
+([@bdraco] - [#54715]) ([nmap_tracker docs])
+
+{% enddetails %}
+
+{% details "HomeKit Controller" %}
+
+A future release (currently scheduled for 2021.12.0) will remove the (deprecated)
+air quality platfrom from the HomeKit Controller integration.
+
+Starting from this release the air quality values have been broken out as their
+own sensors, making them easier to incorporate in your dashboard widgets,
+graphs and automations.
+
+If you relied on an air quality entity (provided by the HomeKit Controller
+integration) in your automation or scripts, you'll need to adopt to this change.
+
+([@Jc2k] - [#54673]) ([homekit_controller docs])
+
+{% enddetails %}
+
+{% details "Smappee" %}
+
+The power and energy attributes from switch entities have been removed and
+replaced by sensors.
+
+If you relied on these attributes in your automations, scripts or Lovelace
+dashboards, you'll need to update your configuration to match this change.
+
+([@bsmappee] - [#54329]) ([smappee docs])
+
+{% enddetails %}
+
+{% details "Epson" %}
+
+The previously deprecated YAML configuration of the Epson integration has been removed.
+
+Epson is now configured via the UI, any existing YAML configuration has been imported
+in previous releases and can now be safely removed from your YAML configuration files.
+
+([@pszafer] - [#55045]) ([epson docs])
+{% enddetails %}
+
+{% details "Solar-Log" %}
+
+The `Watt-peak` unit of measurement has changed to `Watt`.
+
+([@Ernst79] - [#55110]) ([solarlog docs])
+
+{% enddetails %}
+
+{% details "MQTT" %}
+
+MQTT fan no longer supports Support for legacy speeds (OFF, LOW, MEDIUM, HIGH).
+With release 2021.3 the support for legacy speeds was announced to be removed
+after a quater (2021.7).
+
+With removing the legacy speeds support, integrations that rely on MQTT fan
+platform that still use legacy speeds would break because they can not be
+setup if deprecated attributes are used. This includes the MQTT auto discovery.
+
+To prevent that these integration will fail to setup, the deprecated attributes
+listed here are still allowed in the config:
+
+- `payload_high_speed`
+- `payload_low_speed`
+- `payload_medium_speed`
+- `speed_command_topic`
+- `speeds`
+- `speed_state_topic`
+- `speed_value_template`
+
+([@jbouwh] - [#54768]) ([mqtt docs])
+
+{% enddetails %}
+
+{% details "OVO Energy" %}
+
+These attributes have been removed and replaced with full sensors for both
+gas and electricity:
+
+- `start_time`
+- `end_time`
+
+If you relied on one of these attributes in your automation or scripts, you'll
+need to adopt to this change.
+
+([@timmo001] - [#54952]) ([ovo_energy docs])
+
+{% enddetails %}
+
+{% details "AVM FRITZ!Box Tools" %}
+
+The attributes of the switches provided by AVM FRITZ!Box Tools have been adjusted
+to match the naming rules and schema of Home Assistant.
+
+If you relied on one of these attributes in your automation or scripts, you'll
+need to adopt to this change.
+
+([@AaronDavidSchneider] - [#54842]) ([fritz docs])
+
+{% enddetails %}
+
+{% details "Lorem" %}
+
+The Nanoleaf integration migrated to configuration via the UI. Configuring
+Nanoleaf via YAML configuration has been deprecated and will be removed in a
+future Home Assistant release.
+
+Your existing YAML configuration is automatically imported on upgrade to this release;
+and thus can be safely removed from your YAML configuration after upgrading.
+
+If you have configured Nanoleaf with the discovery integration: You can remove
+`discovery:` from your YAML configuration if you only used it for Nanoleaf.
+The `.nanoleaf.conf` file in your configuration folder is no longer used,
+you can delete it after upgrading.
+
+([@milanmeu] - [#52199]) ([nanoleaf docs])
+
+{% enddetails %}
+
+{% details "MySensors" %}
+
+MySensors lights no longer supports deprecated `white_value`, use `rgbw_color`
+instead.
+
+([@emontnemery] - [#52068]) ([mysensors docs])
+
+{% enddetails %}
+
+## All changes
+
+{% details "Click to see all changes!" %}
+
+- Add renault integration ([@epenet] - [#39605]) ([renault docs]) (new-integration)
+- Bump version to 2021.9.0dev0 ([@frenck] - [#53638])
+- Correct typing in Zerproc and activate mypy ([@milanmeu] - [#53642]) ([zerproc docs])
+- Fix Lutron button events to have unambiguous names ([@nickovs] - [#53666]) ([lutron docs]) (breaking-change)
+- Clean up Surpetcare ([@Danielhiversen] - [#53699]) ([surepetcare docs])
+- Replace lists with tuples (2) ([@cdce8p] - [#53685])
+- wemo light brightness fixes ([@esev] - [#53740]) ([wemo docs])
+- Remove YAML configuration from onewire ([@epenet] - [#53728]) ([onewire docs]) (breaking-change)
+- Use constants for device_info in Onewire integration ([@epenet] - [#53724]) ([onewire docs])
+- Use constants for device_info in Renault integration ([@epenet] - [#53714]) ([renault docs])
+- fix flakky test ([@dgomes] - [#53750]) ([prosegur docs])
+- Update integration Fints with activate mypy, use attr_variables ([@janiversen] - [#53706]) ([fints docs])
+- Fix flaky netatmo tests ([@cgtobi] - [#53644]) ([netatmo docs])
+- Improve light scene support for white mode ([@emontnemery] - [#53768]) ([light docs])
+- Bump vallox-websocket-api to 2.8.1 ([@timmo001] - [#53463]) ([vallox docs])
+- Revert "Improve light scene support for white mode (#53768)" ([@balloob] - [#53782]) ([light docs])
+- Simplify DATA_TYPE -> struct conversion. ([@janiversen] - [#53805]) ([modbus docs])
+- Activate mypy for hdmi_cec ([@janiversen] - [#53763]) ([hdmi_cec docs])
+- Bump Amcrest version to 1.8.0 ([@flacjacket] - [#53784]) ([amcrest docs])
+- Please mypy. ([@janiversen] - [#53786]) ([marytts docs])
+- Rename snapshot -> backup ([@ludeeus] - [#53851]) ([hassio docs]) ([zwave_js docs]) (breaking-change)
+- Activate mypy for Sony Songpal ([@milanmeu] - [#53655])
+- Convert @property to _attr_variable for hdmi_sec ([@janiversen] - [#53816]) ([hdmi_cec docs])
+- Activate mypy for Norway_air ([@janiversen] - [#53787]) ([norway_air docs])
+- Bump HAP-python to 4.0.0 ([@bdraco] - [#53780]) ([homekit docs]) (breaking-change)
+- Improve Universal media player toggle default behavior ([@TastyPi] - [#49395]) ([universal docs])
+- Use homeassistant.const instead of integration const for device_info ATTR_ ([@milanmeu] - [#53703])
+- Late review on hdmi_cec (#53763) ([@janiversen] - [#53863]) ([hdmi_cec docs])
+- Add edl21 OBIS IDs for DZG DWS76 ([@pdcemulator] - [#53029]) ([edl21 docs])
+- Add state class measurement to all suitable sensors on Speedtest.net ([@mib1185] - [#53693]) ([speedtestdotnet docs])
+- Add support for MJJSQ humidifiers for Xiaomi MIIO integration ([@bieniu] - [#53807]) ([xiaomi_miio docs])
+- System Bridge v2.3.0+ - Data from WebSocket ([@timmo001] - [#53443]) ([system_bridge docs])
+- Add meta container data to rootfs ([@pvizeli] - [#53903])
+- Use SensorEntityDescription class for Xiaomi Miio ([@bieniu] - [#53890]) ([xiaomi_miio docs])
+- Add support for Eve Degree's air pressure sensor ([@Jc2k] - [#53891]) ([homekit_controller docs])
+- Allow esphome entities to be disabled by default ([@jesserockz] - [#53898]) ([esphome docs])
+- Stream API requests to the supervisor ([@ludeeus] - [#53909]) ([hassio docs])
+- Check for torrents in queue before calling the api stop_torrent() ([@jshank] - [#53895]) ([transmission docs])
+- Add "stop watering" service to rachio ([@adamjernst] - [#53764]) ([rachio docs])
+- Add target high/low temperatures to prometheus integration ([@mdz] - [#50071]) ([prometheus docs])
+- Enable mypy for Yamaha ([@janiversen] - [#53920]) ([yamaha docs])
+- Use the github context when writing metafile ([@ludeeus] - [#53928])
+- Validate Select option before calling entity method ([@jbouwh] - [#52352]) ([demo docs]) ([select docs])
+- Add xiaomi miio lumi.gateway.aqhm01 support ([@starkillerOG] - [#53929]) ([xiaomi_miio docs])
+- Validate Number value before calling entity method ([@jbouwh] - [#52343]) ([number docs])
+- Use `NumberEntityDescription` for Xiaomi Miio ([@bieniu] - [#53911]) ([xiaomi_miio docs])
+- Late review. ([@janiversen] - [#53933]) ([yamaha docs])
+- Upgrade anthemav dependency to 1.2.0 ([@Hyralex] - [#53931]) ([anthemav docs])
+- Remove Xiaomi_miio number value validation ([@jbouwh] - [#53934]) ([xiaomi_miio docs])
+- Remove Xiaomi_miio select option validation ([@jbouwh] - [#53936]) ([xiaomi_miio docs])
+- Activate mypy for LG webOS Smart TV ([@milanmeu] - [#53958]) ([webostv docs])
+- Add config flow to uptimerobot ([@ludeeus] - [#53938]) ([uptimerobot docs]) (breaking-change)
+- Add support for jammed status to SimpliSafe locks ([@bachya] - [#54006]) ([simplisafe docs]) (breaking-change)
+- Don't double-validate KNX select options ([@farmio] - [#54020]) ([knx docs])
+- Use SwitchEntityDescription instead of EntityDescription in the motionEye integration ([@dermotduffy] - [#54019]) ([motioneye docs])
+- Activate mypy for Reddit ([@milanmeu] - [#53949]) ([reddit docs])
+- Activate mypy for Updater ([@milanmeu] - [#53950]) ([updater docs])
+- Add vscode task code coverage ([@mib1185] - [#53783])
+- Bump pyuptimerobot to 21.8.1 ([@ludeeus] - [#53995]) ([uptimerobot docs])
+- Add state class support to Netatmo ([@frenck] - [#54051]) ([netatmo docs])
+- Add tractive integration ([@zhulik] - [#51002]) ([tractive docs]) (new-integration)
+- Activate mypy for Cloudflare ([@milanmeu] - [#54041]) ([cloudflare docs])
+- Add unique_id to Uptime Robot config_flow ([@ludeeus] - [#54055]) ([uptimerobot docs])
+- Bump py-nextbusnext to 0.1.5 ([@ViViDboarder] - [#53924]) ([nextbus docs])
+- Add some metadata to pvoutput energy sensor ([@balloob] - [#54074]) ([pvoutput docs])
+- Add `state_class` for KNX sensors ([@farmio] - [#53996]) ([knx docs])
+- We shouldn't add measurement without last_reset to metered entities ([@balloob] - [#54087]) ([pvoutput docs])
+- Run coordinator config_entry_first_refresh in rituals_perfume_genie setup ([@milanmeu] - [#54080]) ([rituals_perfume_genie docs])
+- Test knx sensor ([@farmio] - [#54090]) ([knx docs])
+- Test KNX binary sensor ([@farmio] - [#53820]) ([knx docs])
+- Fix jinja warning ([@balloob] - [#54109])
+- Fix Squeezebox dhcp discovery ([@rajlaud] - [#54137]) ([squeezebox docs])
+- Ignore Coinbase vault wallets ([@TomBrien] - [#54133]) ([coinbase docs])
+- Add statistics support for the PVOutput sensor ([@zoeisnowooze] - [#54149]) ([pvoutput docs])
+- Convert to using sensor descriptors ([@elupus] - [#54115]) ([rfxtrx docs])
+- Use SensorEntityDescription for AsusWRT sensors ([@ollo69] - [#54111]) ([asuswrt docs])
+- Add state class and last reset in kostal_plenticore ([@gianklug] - [#54084]) ([kostal_plenticore docs])
+- Flexit component fix for updated modbus ([@jorgror] - [#53583]) ([flexit docs])
+- Correct device class typo in rfxtrx ([@elupus] - [#54200]) ([rfxtrx docs])
+- Bump ha-philipsjs to 2.7.5 ([@elupus] - [#54176]) ([philips_js docs])
+- Fix Neato reauth flow when token expired ([@chemelli74] - [#52843]) ([neato docs])
+- Raise ConfigEntryNotReady for Neato API error ([@chemelli74] - [#54227]) ([neato docs])
+- Change update interval from 60s to 10s for Uptime Robot ([@ludeeus] - [#54230]) ([uptimerobot docs])
+- Set entities as unavailable if last update was not successful ([@ludeeus] - [#54229]) ([uptimerobot docs])
+- Handle added and removed monitors ([@ludeeus] - [#54228]) ([uptimerobot docs])
+- OVO Energy Long-term Statistics ([@timmo001] - [#54157]) ([ovo_energy docs])
+- Add enumerate to builtins in python_script component ([@rjulius23] - [#54244]) ([python_script docs])
+- Add more Fritz sensors for DSL connections ([@Schmidsfeld] - [#53198]) ([fritz docs])
+- Fix device registry lookup in uptimerobot ([@ludeeus] - [#54256]) ([uptimerobot docs])
+- Remove monitor checks in Uptime Robot entities ([@ludeeus] - [#54259]) ([uptimerobot docs])
+- Strict typing for Neato ([@chemelli74] - [#53633]) ([neato docs])
+- Add missing `motor_speed` sensor for Xiaomi Miio humidifier CA1 and CB1 ([@bieniu] - [#54264]) ([xiaomi_miio docs])
+- Add re-authentication to Uptime Robot ([@ludeeus] - [#54226]) ([uptimerobot docs])
+- Add modbus get_hub ([@janiversen] - [#54277]) ([modbus docs]) ([flexit docs])
+- Convert last properties in modbus to _attr_variable ([@janiversen] - [#53919]) ([modbus docs])
+- Bump google-nest-sdm to 0.3.6 ([@allenporter] - [#54287]) ([nest docs])
+- Update DeviceInfo static types ([@allenporter] - [#54276]) ([nest docs])
+- Fix inconsistent supported_features return in demo lock ([@bdraco] - [#54300]) ([demo docs])
+- Fix SQLAlchemy test warnings ([@balloob] - [#54116]) ([recorder docs])
+- Add siren support for available tones provided as a dict ([@raman325] - [#54198]) ([siren docs])
+- Add `unique_id` and `device_info` for SMS sensor ([@bieniu] - [#54257]) ([sms docs])
+- Ensure internal/external URL have no path ([@balloob] - [#54304]) ([config docs])
+- Fix external internal url core check ([@MartinHjelmare] - [#54310])
+- Convert base_config_test in modbus to existing Pytest.fixture ([@janiversen] - [#53836]) ([modbus docs])
+- Use SensorEntityDescription for arlo ([@janiversen] - [#54223]) ([arlo docs])
+- Update services.yaml for matrix service to fix Data field being replaced by [object Object] in UI ([@cpw] - [#54296]) ([matrix docs])
+- Remove icon where device_class is defined. ([@janiversen] - [#54323]) ([arlo docs])
+- Use dict for zwave_js siren.available_tones ([@raman325] - [#54305]) ([zwave_js docs])
+- Remove deprecated YAML configuration from Growatt ([@frenck] - [#54325]) ([growatt_server docs]) (breaking-change)
+- Clean up zwave_js RGB code ([@firstof9] - [#54336]) ([zwave_js docs])
+- Add light transition for Shelly integration ([@bieniu] - [#54327]) ([shelly docs])
+- Yeelight local push updates ([@starkillerOG] - [#51160]) ([yeelight docs])
+- Use EntityDescription - pi_hole ([@cdce8p] - [#54319]) ([pi_hole docs])
+- Use EntityDescription - abode ([@cdce8p] - [#54321]) ([abode docs])
+- Remove useless attribute in devolo Home Control ([@Shutgun] - [#54284]) ([devolo_home_control docs])
+- Remove HomeKit event guards ([@bdraco] - [#54343]) ([homekit docs])
+- Use EntityDescription - growatt_server ([@cdce8p] - [#54316]) ([growatt_server docs])
+- Use EntityDescription - bitcoin ([@cdce8p] - [#54320]) ([bitcoin docs])
+- Add `binary_sensor` platform for Xiaomi Miio integration ([@bieniu] - [#54096]) ([xiaomi_miio docs]) (new-platform)
+- Minor motionEye readability improvement ([@dermotduffy] - [#54251]) ([motioneye docs])
+- Update pyupgrade to 2.23.3 ([@mplemay] - [#54179])
+- Add Save Persistent States service ([@r-t-s] - [#53881]) ([homeassistant docs])
+- Add powerwall import and export sensors ([@bdraco] - [#54018]) ([powerwall docs]) (breaking-change)
+- Version sensor entity cleanup ([@ludeeus] - [#53915]) ([version docs])
+- AsusWRT remove default EntityDescription property ([@ollo69] - [#54367]) ([asuswrt docs])
+- Use EntityDescription - juicenet ([@cdce8p] - [#54362]) ([juicenet docs])
+- Upgrade codecov to 2.1.12 ([@frenck] - [#54370])
+- Upgrade debugpy to 1.4.1 ([@frenck] - [#54369]) ([debugpy docs])
+- Bump pymodbus version to 2.5.3rc1 ([@janiversen] - [#54318]) ([modbus docs])
+- Activate mypy for Filter ([@milanmeu] - [#54044]) ([filter docs])
+- Activate mypy for Alexa ([@milanmeu] - [#54042]) ([alexa docs])
+- Activate mypy for Pilight ([@milanmeu] - [#53956]) ([pilight docs])
+- Activate mypy for SiteSage Emonitor ([@milanmeu] - [#54040]) ([emonitor docs])
+- Activate mypy for Smart Meter Texas ([@milanmeu] - [#53954]) ([smart_meter_texas docs])
+- Activate mypy for Solar-Log ([@milanmeu] - [#53952]) ([solarlog docs])
+- Using VCN install as action ([@pvizeli] - [#54383])
+- Activate mypy for google_maps ([@janiversen] - [#53725]) ([google_maps docs])
+- Activate mypy for Proxmox VE ([@milanmeu] - [#53955]) ([proxmoxve docs])
+- Use `_attr_*` for Launch Library ([@ludeeus] - [#54388]) ([launch_library docs])
+- Apply suggested changes to tidy juicenet sensor code ([@jesserockz] - [#54390]) ([juicenet docs])
+- Xiaomi miio add coordinator to fan platform ([@jbouwh] - [#54366]) ([xiaomi_miio docs])
+- Activate mypy from amcrest and make the needed changes ([@janiversen] - [#54392]) ([amcrest docs])
+- Remove useless check in launch_library ([@ludeeus] - [#54393]) ([launch_library docs])
+- Adjust version tests ([@ludeeus] - [#54391]) ([version docs])
+- Mill cleanup ([@Danielhiversen] - [#54396]) ([mill docs])
+- Add 100% test coverage for Uptime Robot ([@ludeeus] - [#54314]) ([uptimerobot docs])
+- Update the Qubino Flush Shutter fixture ([@deiger] - [#54387]) ([zwave_js docs])
+- Use EntityDescription - ios ([@cdce8p] - [#54359]) ([ios docs])
+- Fix pi_hole sensor icon ([@cdce8p] - [#54403]) ([pi_hole docs])
+- Support unloading/reloading Sonos ([@jjlawren] - [#54418]) ([sonos docs])
+- Mark Uptime Robot as a platinum quality integration ([@ludeeus] - [#54408]) ([uptimerobot docs])
+- Add myself as codeowner to tradfri (IKEA stuff) ([@janiversen] - [#54415]) ([tradfri docs])
+- Refactor pi_hole icon usage ([@cdce8p] - [#54420]) ([pi_hole docs])
+- Add api to device_automation to return all matching devices ([@bdraco] - [#53361]) ([device_automation docs])
+- Improve HomeKit Color with Color Temp implementation ([@bdraco] - [#54371]) ([homekit docs])
+- Avoid increasing yeelight rate limit when the state is already set ([@bdraco] - [#54410]) ([yeelight docs])
+- Pass width and height when requesting camera snapshot ([@bdraco] - [#53835]) (breaking-change)
+- Add support for width and height to ffmpeg based camera snapshots ([@bdraco] - [#53837])
+- Activate mypy for Trådfri ([@janiversen] - [#54416]) ([tradfri docs])
+- Advantage Air code cleanup ([@Bre77] - [#54449]) ([advantage_air docs])
+- Bump aioambient to 1.2.6 ([@bachya] - [#54442]) ([ambient_station docs])
+- Move temperature conversions to sensor base class (1/8) ([@emontnemery] - [#48261]) ([abode docs]) ([sensor docs]) (breaking-change)
+- Remove legacy code. ([@janiversen] - [#54452]) ([tradfri docs]) (breaking-change)
+- Use monitor name for uptimerobot device registry ([@ludeeus] - [#54456]) ([uptimerobot docs])
+- Replace prepare_service_call with a simpler fixture in modbus ([@janiversen] - [#53975]) ([modbus docs])
+- Use SensorEntityDescription and set state class measurement for NUT sensors ([@mib1185] - [#54269]) ([nut docs])
+- Remove empty currency from discovery info ([@frenck] - [#54478]) ([api docs])
+- Ensure camera handles non-jpeg image sources correctly ([@bdraco] - [#54474]) ([camera docs]) ([demo docs])
+- Complete mysensors sensor coverage ([@MartinHjelmare] - [#54471]) ([mysensors docs])
+- Fix arlo platform schema ([@cdce8p] - [#54470]) ([arlo docs])
+- Upgrade isort to 5.9.3 ([@frenck] - [#54481])
+- Fix possible unhandled IQVIA exception with allergy outlook data ([@bachya] - [#54477]) ([iqvia docs])
+- Add battery support to energy ([@bramkragten] - [#54432]) ([energy docs])
+- Move temperature conversions to entity base class (2/8) ([@emontnemery] - [#54468])
+- Move temperature conversions to entity base class (7/8) ([@emontnemery] - [#54482])
+- Add device class `gas` and enable statistics for it ([@bramkragten] - [#54110]) ([recorder docs]) ([toon docs]) ([sensor docs]) ([dsmr docs]) (breaking-change)
+- Move temperature conversions to sensor base class (8/8) ([@emontnemery] - [#54483])
+- Move temperature conversions to sensor base class (4/8) ([@emontnemery] - [#54472])
+- Refactor Fronius sensor device class and long term statistics ([@nielstron] - [#54185]) ([fronius docs])
+- Use EntityDescription - blink ([@cdce8p] - [#54360]) ([blink docs])
+- Deprecate Wink integration ([@frenck] - [#54496]) ([wink docs]) (breaking-change)
+- Use entity class attributes for Adax ([@Danielhiversen] - [#54501]) ([adax docs])
+- Move temperature conversions to sensor base class (5/8) ([@emontnemery] - [#54475])
+- Move temperature conversions to sensor base class (3/8) ([@emontnemery] - [#54469])
+- Move temperature conversions to sensor base class (6/8) ([@emontnemery] - [#54476])
+- Log gathered exceptions during Sonos unsubscriptions ([@jjlawren] - [#54190]) ([sonos docs])
+- Remove unused import step in OpenUV config flow ([@bachya] - [#54554]) ([openuv docs])
+- Cleanup Sonos grouping event callback method ([@jjlawren] - [#54542]) ([sonos docs])
+- Remove obsolete upcloud YAML config support ([@scop] - [#54516]) ([upcloud docs]) (breaking-change)
+- Add state_class attribute to keba integration ([@carstenschroeder] - [#54271]) ([keba docs])
+- Updated ZHA to also poll Philips Hue lights with new firmware ([@TheJulianJES] - [#54513]) ([zha docs])
+- Add support for total and total_increasing sensor state classes ([@emontnemery] - [#54523]) ([sensor docs])
+- Fix for 'list index out of range' ([@DCSBL] - [#54588]) ([solaredge_local docs])
+- Use ssdp callbacks in upnp ([@StevenLooman] - [#53840]) ([upnp docs])
+- Add gas support to energy ([@bramkragten] - [#54560]) ([energy docs])
+- Update frontend to 20210813.0 ([@bramkragten] - [#54603]) ([frontend docs])
+- Skip Sonos zeroconf availability check in non-timeout scenarios ([@jjlawren] - [#54425]) ([sonos docs])
+- Bump python-miio to 0.5.7 ([@rytilahti] - [#54601]) ([xiaomi_miio docs])
+- Add MySensors S_MOISTURE type as sensor ([@janjurca] - [#54583]) ([mysensors docs])
+- Move temperature conversions to sensor base class - new integrations ([@emontnemery] - [#54623]) ([sensor docs])
+- Update pyhomematic to 0.1.74 ([@danielperna84] - [#54613]) ([homematic docs])
+- Add sensor platform for Xiaomi Miio fans ([@bieniu] - [#54564]) ([xiaomi_miio docs]) (breaking-change)
+- Add new OUIs to august for yale branded connect bridges ([@bdraco] - [#54637]) ([august docs])
+- Add siren, number, and weather to base platform list ([@raman325] - [#54665])
+- Fix typo in xiaomi_miio cloud_login_error string ([@nickstamat] - [#54661]) ([xiaomi_miio docs])
+- Bump zeroconf to 0.35.1 ([@bdraco] - [#54666]) ([zeroconf docs])
+- Address late review of nut integration ([@mib1185] - [#54606]) ([nut docs])
+- Use buffer at stream start with unsupported audio ([@allenporter] - [#54672]) ([stream docs])
+- Address late review of Flipr ([@cnico] - [#54668]) ([flipr docs])
+- Add `water level` and `water tank detached` sensors for Xiaomi Miio humidifiers ([@bieniu] - [#54625]) ([xiaomi_miio docs])
+- Add code owner to GitHub integration ([@timmo001] - [#54689]) ([github docs])
+- Activate mypy in lifx ([@janiversen] - [#54540])
+- Renault test optimisation ([@epenet] - [#53705]) ([renault docs])
+- Improve Tractive ([@Danielhiversen] - [#54532]) ([tractive docs])
+- Bump adb-shell to 0.4.0 ([@JeffLIrion] - [#54575])
+- Renault code quality improvements ([@epenet] - [#53680]) ([renault docs])
+- Fix typo in Todoist service description ([@serenewaffles] - [#54662]) ([todoist docs])
+- Fix event type names for non-specified Traccar events ([@bogdal] - [#54561]) ([traccar docs])
+- Update mill to use state class total ([@Danielhiversen] - [#54581]) ([mill docs])
+- Allow non-admin users to call history/list_statistic_ids ([@ludeeus] - [#54698]) ([history docs])
+- Update melcloud to use state class total increasing ([@Danielhiversen] - [#54607]) ([melcloud docs])
+- Bump pytautulli ([@ludeeus] - [#54594]) ([tautulli docs])
+- Set correct ESPHome color mode when setting color temperature ([@oxan] - [#54596]) ([esphome docs])
+- Remove last_reset attribute from dsmr_reader sensors ([@emontnemery] - [#54700]) ([dsmr_reader docs])
+- Allow specifying discovery without a config flow ([@balloob] - [#54677]) ([rainforest_eagle docs])
+- Refactor mysensors sensor description ([@MartinHjelmare] - [#54522]) ([mysensors docs])
+- Bump simplisafe-python to 11.0.4 ([@bachya] - [#54701]) ([simplisafe docs])
+- Update Toon to use new state classes ([@frenck] - [#54705]) ([toon docs])
+- Use zwave_js.number platform for Basic CC values ([@raman325] - [#54512]) ([zwave_js docs]) (breaking-change)
+- Remove last_reset attribute from dsmr sensors ([@emontnemery] - [#54699]) ([dsmr docs])
+- Fix TypeError when climate component sets fan modes to None ([@brianegge] - [#54709]) ([google_assistant docs])
+- Create zwave-js select platform and discover additional siren values ([@raman325] - [#53018]) ([zwave_js docs]) (new-platform)
+- Fix AsusWRT scanner entity DeviceInfo ([@ollo69] - [#54648]) ([asuswrt docs])
+- Add light platform to MyQ ([@ehendrix23] - [#54611]) ([myq docs]) (new-platform)
+- Upgrade pre-commit to 2.14.0 ([@frenck] - [#54719])
+- Convert nmap_tracker to be a config flow ([@bdraco] - [#54715]) ([nmap_tracker docs]) (breaking-change)
+- Upgrade mypy to 0.910 and types-* ([@scop] - [#54574])
+- Use EntityDescription - qbittorrent ([@cdce8p] - [#54428]) ([qbittorrent docs])
+- Use EntityDescription - point ([@cdce8p] - [#54363]) ([point docs])
+- Activate mypy in sabnzbd ([@janiversen] - [#54539]) ([sabnzbd docs])
+- Avoid some implicit generic Anys ([@scop] - [#54577])
+- Active mypy for netio ([@janiversen] - [#54543]) ([netio docs])
+- Add device classes that were part of deprecated air quality entity ([@Jc2k] - [#54075]) ([sensor docs])
+- Use state class total increasing for TPLink smart plugs ([@mib1185] - [#54723]) ([tplink docs])
+- Bump zeroconf to 0.36.0 ([@bdraco] - [#54720]) ([zeroconf docs])
+- Remove last_reset attribute from FritzBoxEnergySensor ([@emontnemery] - [#54644]) ([fritzbox docs])
+- Use EntityDescription - logi_circle ([@cdce8p] - [#54429]) ([logi_circle docs])
+- Activate mypy for sesame ([@janiversen] - [#54546]) ([sesame docs])
+- Use EntityDescription - mitemp_bt ([@cdce8p] - [#54503]) ([mitemp_bt docs])
+- Add DEVICE_CLASS_UPDATE to Binary Sensor ([@mib1185] - [#53945]) ([binary_sensor docs])
+- Fix Google Calendar event loading ([@Bert-R] - [#54231]) ([google docs])
+- Add device class update to the updater binary_sensor ([@ludeeus] - [#54732]) ([updater docs])
+- Add device class update to hassio update entities ([@ludeeus] - [#54733]) ([hassio docs])
+- Update deCONZ to use new state classes ([@frenck] - [#54729]) ([deconz docs])
+- Add state classes to Vallox sensors ([@andre-richter] - [#54297]) ([vallox docs])
+- Activate mypy for google_pubsub ([@janiversen] - [#54649]) ([google_pubsub docs])
+- Energy support for Solax inverters ([@ppetru] - [#54654]) ([solax docs])
+- Use PM1, PM25 and PM10 device classes in Nettigo Air Monitor integration ([@bieniu] - [#54741]) ([nam docs])
+- Use DEVICE_CLASS_UPDATE in Shelly integration ([@bieniu] - [#54746]) ([shelly docs])
+- Use entity descriptions for hassio entities ([@ludeeus] - [#54749]) ([hassio docs])
+- Relax zwave_js lock discovery rules to cover more use cases ([@raman325] - [#54710]) ([zwave_js docs])
+- DSMR: Remove icon from sensors with gas device class ([@frenck] - [#54752]) ([dsmr docs])
+- Bump pyfronius version to 0.5.5 ([@nielstron] - [#54758]) ([fronius docs])
+- Solax 0.2.8 ([@squishykid] - [#54759]) ([solax docs])
+- Toon: Remove icon from sensors with gas device class ([@frenck] - [#54753]) ([toon docs])
+- Deprecate homekit_controller's air quality entity in favor of separate sensor entities ([@Jc2k] - [#54673]) ([homekit_controller docs]) (breaking-change)
+- Airtouch4 integration ([@LonePurpleWolf] - [#43513]) ([airtouch4 docs]) (new-integration)
+- Add zwave_js Protection CC select entities ([@raman325] - [#54717]) ([zwave_js docs])
+- Use DEVICE_CLASS_UPDATE in Synology DSM ([@mib1185] - [#54769]) ([synology_dsm docs])
+- Use path helper method for principal file in google_pubsub ([@frenck] - [#54744]) ([google_pubsub docs])
+- Add upnp binary sensor for connectivity status ([@ehendrix23] - [#54489]) ([upnp docs])
+- set common test entity name. ([@janiversen] - [#54697]) ([modbus docs])
+- Tractive, update library ([@Danielhiversen] - [#54775]) ([tractive docs])
+- Fix goalzero sensor not using SensorEntity class ([@tkdrob] - [#54773]) ([goalzero docs])
+- Fix connectivity issue in the Youless integration ([@gjong] - [#54764]) ([youless docs])
+- Force STATE_CLASS_TOTAL_INCREASING to reset to 0 ([@emontnemery] - [#54751]) ([sensor docs])
+- Rfxtrx,STATE_CLASS_TOTAL_INCREASING ([@Danielhiversen] - [#54776]) ([rfxtrx docs])
+- Improve myq error handling for opening/closing cover ([@ehendrix23] - [#54724]) ([myq docs])
+- Update SolarEdge to use new state classes ([@frenck] - [#54731]) ([solaredge docs])
+- Use AQI, PM1, PM25, PM10 device classes in Airly ([@bieniu] - [#54742]) ([airly docs])
+- Use new device classes in GIOS integration ([@bieniu] - [#54743]) ([gios docs])
+- Adjust yeelight homekit model ([@bdraco] - [#54783]) ([yeelight docs])
+- Update sense_energy to version 0.9.2 ([@crkochan] - [#54787]) ([sense docs]) ([emulated_kasa docs])
+- Bump dessant/lock-threads from 2.1.1 to 2.1.2 (@dependabot - [#54791])
+- Remove STATE_CLASS_TOTAL and last_reset from sensor ([@emontnemery] - [#54755]) ([sensor docs])
+- Add Gas device class to DSMR Reader ([@frenck] - [#54748]) ([dsmr_reader docs])
+- Tibber data coordinator ([@Danielhiversen] - [#53619]) ([tibber docs])
+- Add select platform for Xiaomi Miio fans ([@bieniu] - [#54702]) ([xiaomi_miio docs]) (breaking-change)
+- Bump async-upnp-client to 0.20.0, adapt to breaking changes ([@bdraco] - [#54782]) ([upnp docs]) ([dlna_dmr docs]) ([ssdp docs])
+- Remove unused last_reset from Toon ([@emontnemery] - [#54798]) ([toon docs])
+- Remove last_reset and update state class for Atome energy ([@emontnemery] - [#54801]) ([atome docs])
+- Remove distro from updater requirements ([@ludeeus] - [#54804]) ([updater docs])
+- Ensure device entry in Renault integration ([@epenet] - [#54797]) ([renault docs])
+- Adjust modbus constants names ([@janiversen] - [#54792]) ([modbus docs])
+- Remove last_reset attribute from fritz sensors ([@emontnemery] - [#54806]) ([fritz docs])
+- Remove last_reset attribute and set state class to total_increasing for Shelly energy sensors ([@emontnemery] - [#54800]) ([shelly docs])
+- ConfigType and async_setup/setup type hint improvements ([@scop] - [#54739])
+- Remove `last_reset` attribute and set state class to `total_increasing` for Ovo cost and energy sensors ([@emontnemery] - [#54807]) ([ovo_energy docs])
+- Remove `last_reset` attribute and set state class to `total_increasing` for powerwall energy sensors ([@emontnemery] - [#54808]) ([powerwall docs])
+- Remove `last_reset` attribute and set state class to `total_increasing` for PVOutput energy sensors ([@emontnemery] - [#54809]) ([pvoutput docs])
+- Remove `last_reset` attribute and set state class to `total_increasing` for rainforest energy sensors ([@emontnemery] - [#54810]) ([rainforest_eagle docs])
+- Remove last_reset attribute from devolo energy sensors ([@emontnemery] - [#54803]) ([devolo_home_control docs])
+- Remove last_reset attribute from sma energy sensors ([@emontnemery] - [#54814]) ([sma docs])
+- Remove last_reset attribute and set state class to total_increasing for tibber energy sensors ([@emontnemery] - [#54799]) ([tibber docs])
+- Remove last_reset attribute from kostal_plenticore energy sensors ([@emontnemery] - [#54817]) ([kostal_plenticore docs])
+- Remove `last_reset` attribute and set state class to `total_increasing` for zwave_js energy sensors ([@emontnemery] - [#54818]) ([zwave_js docs])
+- Activate mypy for Panasonic_viera ([@janiversen] - [#54547]) ([panasonic_viera docs])
+- Remove deprecated Xiaomi Miio fan speeds ([@SmaginPV] - [#54182]) ([xiaomi_miio docs]) (breaking-change)
+- Remove last_reset attribute and set state class to total_increasing for Integration sensors ([@Danielhiversen] - [#54815]) ([integration docs])
+- Remove `last_reset` attribute and set state class to `total_increasing` for spider energy sensors ([@emontnemery] - [#54822]) ([spider docs])
+- Treat Huawei LTE error code 100006 as unsupported functionality ([@scop] - [#54253]) ([huawei_lte docs])
+- Remove `last_reset` attribute and set state class to `total_increasing` for sense energy sensors ([@emontnemery] - [#54825]) ([sense docs])
+- Remove last_reset attribute from wemo energy sensors ([@emontnemery] - [#54821]) ([wemo docs])
+- Remove last_reset attribute from keba energy sensors ([@emontnemery] - [#54828]) ([keba docs])
+- Remove `last_reset` attribute and set state class to `total_increasing` for fronius energy sensors ([@emontnemery] - [#54830]) ([fronius docs])
+- Remove `last_reset` attribute and set state class to `total_increasing` for saj energy sensors ([@emontnemery] - [#54813]) ([saj docs])
+- Remove `last_reset` attribute and set state class to `total_increasing` for mysensors energy sensors ([@emontnemery] - [#54827]) ([mysensors docs])
+- Remove `last_reset` attribute and set state class to `total_increasing` for smartthings energy sensors ([@emontnemery] - [#54824]) ([smartthings docs])
+- Only show zwave_js command classes that are on the node ([@raman325] - [#54794]) ([zwave_js docs])
+- Remove `last_reset` attribute from and set state class to `total_increasing` for enphase_envoy energy sensors ([@emontnemery] - [#54831]) ([enphase_envoy docs])
+- Fix integration sensors sometimes not getting device_class or unit_of_measurement ([@thomasloven] - [#54802]) ([integration docs])
+- Exclude global scope IPv6 when setting up zeroconf interfaces ([@bdraco] - [#54632]) ([zeroconf docs])
+- Remove last_reset attribute from tasmota energy sensors ([@emontnemery] - [#54836]) ([tasmota docs])
+- Make yeelight discovery async ([@bdraco] - [#54711]) ([yeelight docs])
+- Remove unnecessary signal during zwave_js.reset_meter service call ([@raman325] - [#54837]) ([zwave_js docs])
+- Bump yeelight quality scale to platinum with switch to async local push ([@bdraco] - [#54589]) ([yeelight docs])
+- Add new network apis to reduce code duplication ([@bdraco] - [#54832]) ([zeroconf docs]) ([ssdp docs]) ([network docs])
+- Add energy validation ([@balloob] - [#54567]) ([recorder docs]) ([energy docs])
+- Deprecate last_reset options in MQTT sensor ([@emontnemery] - [#54840]) ([mqtt docs])
+- Mill data coordinator ([@Danielhiversen] - [#53603]) ([mill docs])
+- Remove stale references to last_reset ([@emontnemery] - [#54838]) ([mysensors docs]) ([dsmr docs]) ([kostal_plenticore docs])
+- Bump frontend to 20210818.0 ([@balloob] - [#54851]) ([frontend docs])
+- Drop tado codeowner ([@bdraco] - [#54849]) ([tado docs])
+- Update PULL_REQUEST_TEMPLATE.md ([@squishykid] - [#54762])
+- Improve MyQ code quality through creation of MyQ entity ([@ehendrix23] - [#54728]) ([myq docs])
+- Rework goalzero for EntityDescription ([@tkdrob] - [#54786]) ([goalzero docs])
+- Always mock SubscriptionRegistry & DiscoveryResponder for wemo tests ([@esev] - [#53967]) ([wemo docs])
+- Bump pywemo to 0.6.7 ([@esev] - [#54862]) ([wemo docs])
+- Add binary sensor platform to Renault integration ([@epenet] - [#54750]) ([renault docs]) (new-platform)
+- Check for duplicate entity name/address in modbus entities ([@janiversen] - [#54669]) ([modbus docs])
+- Add support for Swedish smart electricity meters to DSMR ([@emontnemery] - [#54630]) ([dsmr docs])
+- Minor cleanup of SensorEntity ([@emontnemery] - [#54624]) ([sensor docs])
+- Add missing id to yeelights that were setup manually ([@bdraco] - [#54855]) ([yeelight docs])
+- Add config flow to Rainforest EAGLE-200 ([@balloob] - [#54846]) ([rainforest_eagle docs])
+- Yamaha Musiccast Media Browser feature ([@micha91] - [#54864]) ([yamaha_musiccast docs])
+- Add Rainforest Eagle tests and price ([@balloob] - [#54887]) ([rainforest_eagle docs])
+- Improve device action type hinting ([@scop] - [#54850])
+- Allow integrations to define trigger platforms with a subtype ([@raman325] - [#54861])
+- Compile missing statistics ([@emontnemery] - [#54690]) ([recorder docs])
+- Add P1 Monitor integration ([@klaasnicolaas] - [#54738]) ([p1_monitor docs]) (new-integration)
+- Add energy management support to Growatt server integration ([@maschel] - [#54174]) ([growatt_server docs])
+- Support group entities in zwave_js service calls ([@raman325] - [#54903]) ([zwave_js docs])
+- Clean up AsusWRT if check ([@ollo69] - [#54896]) ([asuswrt docs])
+- Fix Lyric cool mode ([@muchtall] - [#54856]) ([lyric docs])
+- Update nmap_tracker to use the network integration ([@bdraco] - [#54877]) ([nmap_tracker docs])
+- Fjäråskupan kitchen fan ([@elupus] - [#53140]) ([fjaraskupan docs]) (new-integration)
+- Add growatt total state_class for storage ([@JasperPlant] - [#54913]) ([growatt_server docs])
+- Fix image_processing selectors ([@tkdrob] - [#54915]) ([image_processing docs])
+- Add `switch` platform for Xiaomi Miio fans ([@bieniu] - [#54834]) ([xiaomi_miio docs]) (breaking-change)
+- Improve DSMR shutdown ([@emontnemery] - [#54922]) ([dsmr docs])
+- Warn if unit_of_measurement is set on instances of SensorEntityDescription ([@emontnemery] - [#54867]) ([sensor docs])
+- Ask for host because EAGLE mdns doesn't work in HA OS ([@balloob] - [#54905]) ([rainforest_eagle docs])
+- Add HomeKit and DHCP to DISCOVERY_SOURCES in config_entries ([@bdraco] - [#54923])
+- Make log rollover at startup ([@janiversen] - [#54865])
+- Set quality level of modbus to gold ([@janiversen] - [#54926]) ([modbus docs])
+- Add support for area ID in zwave_js service calls ([@raman325] - [#54940]) ([zwave_js docs])
+- Enable basic type checking for asuswrt ([@emontnemery] - [#54929]) ([asuswrt docs])
+- Enable basic type checking for aemet ([@emontnemery] - [#54925]) ([aemet docs])
+- Remove deprecated async_setup_platforms() for xiaomi_miio ([@rytilahti] - [#54930]) ([xiaomi_miio docs]) (breaking-change)
+- Add fjäråskupan binary_sensor ([@elupus] - [#54920]) ([fjaraskupan docs]) (new-platform)
+- Bump zwave-js-server-python to 0.29.0 ([@raman325] - [#54931]) ([zwave_js docs])
+- Add support for USB discovery ([@bdraco] - [#54904]) ([default_config docs]) ([usb docs]) (new-integration)
+- Add zwave_js.value_updated automation trigger ([@raman325] - [#54897]) ([zwave_js docs])
+- Fix Google Calendar auth user code expire time comparison ([@slovdahl] - [#54893]) ([google docs])
+- Improve device condition type hinting ([@scop] - [#54906])
+- Use entity descriptions for zwave_js sensors ([@raman325] - [#53744]) ([zwave_js docs])
+- Fix Watson TTS to use correct API ([@GuyKh] - [#54916]) ([watson_tts docs])
+- Extract smappee switch energy attributes into sensors ([@bsmappee] - [#54329]) ([smappee docs]) (breaking-change)
+- Use a static collection of forwarded attributes ([@samueltardieu] - [#54870]) ([group docs])
+- Normalize the display name of yeelight devices ([@bdraco] - [#54883]) ([yeelight docs])
+- Handle case where location_name is set to "" for zeroconf ([@bdraco] - [#54880]) ([zeroconf docs])
+- Make yeelight aware of the network integration ([@bdraco] - [#54854]) ([yeelight docs])
+- Add support for USB discovery to ZHA ([@bdraco] - [#54935]) ([zha docs])
+- Remove Configuration CC as choice in zwave_js value device condition ([@raman325] - [#54962]) ([zwave_js docs]) (breaking-change)
+- Add zwave_js device triggers for any zwave value ([@raman325] - [#54958]) ([zwave_js docs])
+- Improve Command Class choices for zwave_js device triggers and conditions ([@raman325] - [#54970]) ([zwave_js docs])
+- Replace *args and **kwargs type hint collections with value types ([@scop] - [#54955]) ([netatmo docs]) ([rainmachine docs]) ([simplisafe docs]) ([switcher_kis docs]) ([guardian docs]) ([zwave_js docs])
+- Add fjäråskupan light entity ([@elupus] - [#54918]) ([fjaraskupan docs]) (new-platform)
+- Update pylint to 2.10.1 ([@cdce8p] - [#54963])
+- Add fjäråskupan sensor ([@elupus] - [#54921]) ([fjaraskupan docs]) (new-platform)
+- Enable basic type checking for adguard ([@emontnemery] - [#54924]) ([adguard docs])
+- Enable basic type checking for analytics ([@emontnemery] - [#54928]) ([analytics docs])
+- Enable basic type checking for atag ([@emontnemery] - [#54933]) ([atag docs])
+- Remove unused string in P1 Monitor ([@klaasnicolaas] - [#54911]) ([p1_monitor docs])
+- Various type hint related improvements ([@scop] - [#54971]) ([http docs]) ([hassio docs]) ([actiontec docs])
+- Minor refactoring of keba integration ([@carstenschroeder] - [#54976]) ([keba docs])
+- Move get_serial_by_id and human_readable_device_name to usb ([@bdraco] - [#54968]) ([zha docs]) ([usb docs])
+- Gracefully handle udev not available via OSError when setting up usb ([@bdraco] - [#54967]) ([usb docs])
+- Add lazy_error_count to modbus ([@janiversen] - [#54412]) ([modbus docs])
+- Add support for USB discovery to zwave_js ([@bdraco] - [#54938]) ([zwave_js docs])
+- Bump sqlalchemy to 1.4.23 ([@bdraco] - [#54980]) ([recorder docs]) ([sql docs])
+- Add `number` platform for Xiaomi Miio fan ([@bieniu] - [#54977]) ([xiaomi_miio docs]) (breaking-change)
+- Set unique id to amcrest serial number ([@brianegge] - [#54675]) ([amcrest docs])
+- Use DataUpdateCoordinator for wemo ([@esev] - [#54866]) ([wemo docs])
+- Activate mypy for homematicip_cloud ([@janiversen] - [#54950]) ([homematicip_cloud docs])
+- Use EntityDescription - buienradar ([@cdce8p] - [#54317]) ([buienradar docs])
+- Use EntityDescription - nzbget ([@cdce8p] - [#54427]) ([nzbget docs])
+- Use EntityDescription - trafikverket_weatherstation ([@cdce8p] - [#54430]) ([trafikverket_weatherstation docs])
+- Use EntityDescription - starline ([@cdce8p] - [#54431]) ([starline docs])
+- Use EntityDescription - envirophat ([@cdce8p] - [#54944]) ([envirophat docs])
+- Fix nmap_tracker typing ([@bdraco] - [#54858]) ([nmap_tracker docs])
+- Fix recorder shutdown race and i/o in event loop ([@bdraco] - [#54979]) ([recorder docs])
+- Synology sensor name clarification ([@chemelli74] - [#54262]) ([synology_dsm docs])
+- VSCode switch to terminal.integrated.profiles ([@mib1185] - [#54301])
+- Remove ctalkington from directv codeowner ([@ctalkington] - [#54988]) ([directv docs])
+- Add known devices to USB Vendor / Product IDs ([@bdraco] - [#54986]) ([zha docs]) ([zwave_js docs])
+- Use EntityDescription - google_wifi ([@cdce8p] - [#54941]) ([google_wifi docs])
+- Switch periodic USB scanning to on-demand websocket when observer is not available ([@bdraco] - [#54953]) ([usb docs])
+- Upgrade PyTurboJPEG to 1.5.2 ([@frenck] - [#54992]) ([camera docs])
+- Bump python-yeelight to 0.7.3 ([@bdraco] - [#54982]) ([yeelight docs])
+- Fix manual setup when roomba is on different subnet ([@jorgror] - [#54639]) ([roomba docs])
+- Add missing BYN currency ([@frenck] - [#55001])
+- Fix incorrect power device class on energy sensors in Smappee ([@frenck] - [#54994]) ([smappee docs])
+- Upgrade apprise to 0.9.4 ([@frenck] - [#55002]) ([apprise docs])
+- Upgrade watchdog to 2.1.4 ([@frenck] - [#54993]) ([folder_watcher docs])
+- Skip trying the pyudev observer when using standalone docker for usb ([@bdraco] - [#54987]) ([usb docs])
+- Add support for logger info in fronius integration ([@nielstron] - [#54795]) ([fronius docs])
+- Remove base_test from modbus test harness ([@janiversen] - [#55018]) ([modbus docs])
+- Add state_class to relevant sensors in Danfoss Air ([@JonasPed] - [#54847]) ([danfoss_air docs])
+- Add Binary Sensor for WeMo Insight & Maker ([@esev] - [#55000]) ([wemo docs])
+- Add silver quality scale to goalzero ([@tkdrob] - [#53299]) ([goalzero docs])
+- Use EntityDescription - openuv ([@cdce8p] - [#55022]) ([openuv docs])
+- Improve device trigger type hinting ([@scop] - [#54907])
+- Fix P1 Monitor requirement in manifest ([@frenck] - [#55027]) ([p1_monitor docs])
+- Add support for bridge accessory unavailability ([@bdraco] - [#52207]) ([homekit_controller docs])
+- Use EntityDescription - ring ([@cdce8p] - [#55023]) ([ring docs])
+- Add zigbee connection for wemo bridge lights ([@esev] - [#53813]) ([wemo docs])
+- Fix validation for zwave_js device trigger and condition ([@raman325] - [#54974]) ([zwave_js docs])
+- Clean up unused ipp logger ([@tkdrob] - [#55039]) ([ipp docs])
+- Complete config flow tests for sense ([@tkdrob] - [#55040]) ([sense docs])
+- Enable basic type checking for almond ([@emontnemery] - [#54927]) ([almond docs])
+- Remove deprecated YAML configuration from Epson ([@pszafer] - [#55045]) ([epson docs]) (breaking-change)
+- Alpine 3.14 ([@pvizeli] - [#55049])
+- Growatt server integration add TLX support ([@JasperPlant] - [#54844]) ([growatt_server docs])
+- Add device class for volatile organic compounds ([@Jc2k] - [#55050]) ([sensor docs])
+- Fix DSMR startup logic ([@emontnemery] - [#55051])
+- Prefer discovered usb device over add-on config in zwave_js ([@MartinHjelmare] - [#55056]) ([zwave_js docs])
+- Please mypy. ([@janiversen] - [#55069]) ([smarty docs])
+- Enable basic type checking for azure_event_hub ([@emontnemery] - [#55047]) ([azure_event_hub docs])
+- Pass session to forecast constructor ([@klaasnicolaas] - [#55075]) ([forecast_solar docs])
+- Add support for white to light groups ([@emontnemery] - [#55082]) ([group docs])
+- Use EntityDescription - rainmachine ([@cdce8p] - [#55021]) ([rainmachine docs])
+- Update pylint to 2.10.2 ([@cdce8p] - [#55089])
+- Restore last_triggered state in scripts ([@frenck] - [#55071]) ([script docs])
+- Use EntityDescription - ecobee ([@cdce8p] - [#55088]) ([ecobee docs])
+- Use EntityDescription - wirelesstag ([@cdce8p] - [#55065]) ([wirelesstag docs])
+- Activate mypy for timer ([@janiversen] - [#55058]) ([timer docs])
+- Activate mypy for volumio ([@janiversen] - [#55054]) ([volumio docs])
+- Add volatile organic compounds to homekit_controller ([@Jc2k] - [#55093]) ([homekit_controller docs])
+- Use EntityDescription - travisci ([@cdce8p] - [#55038]) ([travisci docs])
+- Use EntityDescription - fido ([@cdce8p] - [#55037]) ([fido docs])
+- Update alarm control panel and deconz alarm event to reflect the finalized implementation in deCONZ ([@Kane610] - [#54936]) ([deconz docs])
+- Activate mypy for velbus ([@janiversen] - [#55055]) ([velbus docs])
+- Bump HAP-python to 4.1.0 ([@bdraco] - [#55005]) ([homekit docs])
+- Use EntityDescription - pushbullet ([@cdce8p] - [#54999]) ([pushbullet docs])
+- Use EntityDescription - deluge ([@cdce8p] - [#55085]) ([deluge docs])
+- Use EntityDescription - openevse ([@cdce8p] - [#55084]) ([openevse docs])
+- Activate mypy for tuya ([@janiversen] - [#55057]) ([tuya docs])
+- Use EntityDescription - foobot ([@cdce8p] - [#54996]) ([foobot docs])
+- Add state_class and device_class to Solarlog platform ([@Ernst79] - [#53946]) ([solarlog docs])
+- Update YouLess integration for long time measurements ([@gjong] - [#54767]) ([youless docs])
+- Use EntityDescription - bbox ([@cdce8p] - [#55064]) ([bbox docs])
+- Use EntityDescription - radarr ([@cdce8p] - [#54997]) ([radarr docs])
+- Use EntityDescription - miflora ([@cdce8p] - [#55020]) ([miflora docs])
+- Use EntityDescription - amcrest ([@cdce8p] - [#54998]) ([amcrest docs])
+- Use EntityDescription - startca ([@cdce8p] - [#55036]) ([startca docs])
+- Use EntityDescription - sensehat ([@cdce8p] - [#54995]) ([envirophat docs]) ([sensehat docs])
+- Use EntityDescription - magicseaweed ([@cdce8p] - [#54943]) ([magicseaweed docs])
+- Use EntityDescription - dovado ([@cdce8p] - [#54945]) ([dovado docs])
+- Use EntityDescription - zamg ([@cdce8p] - [#54942]) ([zamg docs])
+- Use EntityDescription - enocean ([@cdce8p] - [#55087]) ([enocean docs])
+- Bump pymyq to 3.1.3 ([@bdraco] - [#55099]) ([myq docs])
+- Fix TypeError in Xiaomi Miio fan platform ([@bieniu] - [#55091]) ([xiaomi_miio docs])
+- Activate mypy for smarttub ([@janiversen] - [#55070])
+- Activate mypy for wink ([@janiversen] - [#55077]) ([wink docs])
+- Use EntityDescription - volkszaehler ([@cdce8p] - [#55034]) ([volkszaehler docs])
+- Activate mypy for synology_srm ([@janiversen] - [#55059]) ([synology_srm docs])
+- Use EntityDescription - ombi ([@cdce8p] - [#55086]) ([ombi docs])
+- Use EntityDescription - thinkingcleaner ([@cdce8p] - [#55068]) ([thinkingcleaner docs])
+- Break out mock of pymodbus return from mock_modbus to new fixture ([@janiversen] - [#55063]) ([modbus docs])
+- Add `sensor` platform for Tractive integration ([@bieniu] - [#54143]) ([tractive docs]) (new-platform)
+- Add multi device support back to honeywell ([@rdfurman] - [#54003]) ([honeywell docs])
+- Add support for Google Assistant's LocatorTrait for vacuum cleaners ([@giannello] - [#55015]) ([google_assistant docs])
+- Bump httpx to 0.19.0 ([@bdraco] - [#55106])
+- Fix updating device path from discovery in zha ([@bdraco] - [#55124]) ([zha docs])
+- Bump aioesphomeapi to 7.0.0 ([@jesserockz] - [#55129]) ([esphome docs])
+- Fix race that allowed multiple config flows with the same unique id ([@bdraco] - [#55131])
+- Mark eagle entities as unavailable if connection with meter losts ([@balloob] - [#55102]) ([rainforest_eagle docs])
+- Validate requirements format in hassfest ([@balloob] - [#55094]) ([gc100 docs])
+- Guard for unparsable date time ([@balloob] - [#55108]) ([hue docs])
+- Bump Forecast Solar to v2.1.0 ([@klaasnicolaas] - [#55121]) ([forecast_solar docs])
+- Pin google-api-core to avoid new version of grpcio ([@allenporter] - [#55115])
+- Use EntityDescription - Vallox ([@andre-richter] - [#54891]) ([vallox docs])
+- Use switch instead of toggle entity ([@cdce8p] - [#55111]) ([thinkingcleaner docs])
+- Use EntityDescription - rtorrent ([@cdce8p] - [#55067]) ([rtorrent docs])
+- Use EntityDescription - comed_hourly_pricing ([@cdce8p] - [#55066]) ([comed_hourly_pricing docs])
+- Use EntityDescription - broadlink ([@cdce8p] - [#55019]) ([broadlink docs])
+- Use EntityDescription - onewire ([@epenet] - [#55003]) ([onewire docs])
+- Ensure camera scaling always produces an image of at least the requested width and height ([@bdraco] - [#55033]) ([camera docs])
+- Change Solarlog Watt-peak to Watt ([@Ernst79] - [#55110]) ([solarlog docs]) (breaking-change)
+- Fix bug removing API key on Forecast Solar ([@klaasnicolaas] - [#55119]) ([forecast_solar docs])
+- Set statistics columns to double precision ([@emontnemery] - [#55053]) ([recorder docs])
+- Update base image for Alpine 3.14 ([@pvizeli] - [#55137])
+- Remove MQTT Fan legacy speeds ([@jbouwh] - [#54768]) ([mqtt docs]) (breaking-change)
+- Activate mypy for surepetcare ([@janiversen] - [#55079]) ([surepetcare docs])
+- Activate mypy for todoist ([@janiversen] - [#55096]) ([todoist docs])
+- Please mypy in gtfs and implement needed changes ([@janiversen] - [#54328]) ([gtfs docs])
+- Add deCONZ support for Sonoff SNZB-01 switches ([@JasperS2307] - [#54919]) ([deconz docs])
+- Provide unique IDs for Lutron Entities ([@cdheiser] - [#51395]) ([lutron docs])
+- Test KNX fan ([@farmio] - [#53621]) ([knx docs])
+- Fallback to try all known Plex servers if none marked present ([@jjlawren] - [#53643]) ([plex docs])
+- SMA: Add statistics support for power sensors ([@andre-richter] - [#54422]) ([sma docs])
+- Configurable default `hvac_mode` for KNX climate ([@farmio] - [#54289]) ([knx docs])
+- OVO Energy - Sensor Entity Descriptions ([@timmo001] - [#54952]) ([ovo_energy docs]) (breaking-change)
+- Implementation of new Vacation mode for MQTT-based alarm panels ([@posixx] - [#53561]) ([mqtt docs]) ([alarm_control_panel docs]) ([manual_mqtt docs])
+- Fix Tasmota MQTT discovery flow ([@emontnemery] - [#55140]) ([tasmota docs])
+- Update amcrest to use binary sensor entity description ([@flacjacket] - [#55092]) ([amcrest docs])
+- Convert template/vacuum to pytest with fixtures ([@janiversen] - [#54841]) ([template docs])
+- Revert "Please mypy in gtfs and implement needed changes (#54328)" ([@janiversen] - [#55148]) ([gtfs docs])
+- Fix min value for Xiaomi Miio volume entity ([@bieniu] - [#55139]) ([xiaomi_miio docs])
+- Convert number value to int in Xiaomi Miio ([@bieniu] - [#55145]) ([xiaomi_miio docs])
+- Fix statistics for sensors setting last_reset ([@emontnemery] - [#55136]) ([recorder docs]) ([history docs]) ([sensor docs]) ([energy docs])
+- Allow small dip in total_increasing sensor without detecting a reset ([@emontnemery] - [#55153]) ([sensor docs]) ([energy docs])
+- Adjust yeelight homekit model match ([@bdraco] - [#55159]) ([yeelight docs])
+- Handle missing mac address in syncthru ([@nielstron] - [#55154]) ([syncthru docs])
+- Deduplicate code in MQTT alarm_control_panel tests ([@emontnemery] - [#55149]) ([mqtt docs])
+- Improve Tasmota MQTT discovery flow ([@emontnemery] - [#55147]) ([tasmota docs])
+- Address late review of Fritz switch ([@AaronDavidSchneider] - [#54842]) ([fritz docs])
+- Move to aiogithubapi any async for the GitHub integration ([@ludeeus] - [#55143]) ([github docs])
+- Use a debouncer when updating ZHA group state ([@Adminiuga] - [#53263]) ([zha docs])
+- Remove temperature conversion - dht ([@cdce8p] - [#55161]) ([dht docs])
+- Remove temperature conversion - bme280 ([@cdce8p] - [#55162]) ([bme280 docs])
+- Remove temperature conversion - bme680 ([@cdce8p] - [#55163]) ([bme680 docs])
+- Remove temperature conversion - htu21d ([@cdce8p] - [#55165]) ([htu21d docs])
+- Add missing baseclass for rituals perfume genie entities ([@milanmeu] - [#55166]) ([rituals_perfume_genie docs])
+- Convert Nanoleaf yaml and discovery to config flow ([@milanmeu] - [#52199]) ([nanoleaf docs]) (breaking-change)
+- Update version for smart-meter-texas to 0.4.7 ([@meyerrj] - [#54493]) ([smart_meter_texas docs])
+- Fix Sonos missing group member race condition on startup ([@jjlawren] - [#55158]) ([sonos docs])
+- Update ZHA config entry radio detection ([@Adminiuga] - [#55128]) ([zha docs])
+- Add ability to configure OpenUV "protection window" UV indices ([@bachya] - [#54562]) ([openuv docs])
+- Remove unreachable code in OpenUV ([@bachya] - [#55181]) ([openuv docs])
+- Fix recorder test ([@balloob] - [#55169]) ([sensor docs])
+- Bump codecov/codecov-action from 2.0.2 to 2.0.3 (@dependabot - [#55194])
+- Add statistics for emoncms power and energy feeds ([@lukewaite] - [#55109]) ([emoncms docs])
+- Use EntityDescription - dht ([@cdce8p] - [#55183]) ([dht docs])
+- Remove temperature conversion - mhz19 ([@cdce8p] - [#55164]) ([mhz19 docs])
+- Activate mypy in gtfs (followup on reverted #54328) ([@janiversen] - [#55195]) ([gtfs docs])
+- Use EntityDescription - guardian ([@bachya] - [#55118]) ([guardian docs])
+- Use EntityDescription - htu21d ([@cdce8p] - [#55186]) ([htu21d docs])
+- Use EntityDescription - bme680 ([@cdce8p] - [#55185]) ([bme680 docs])
+- Use EntityDescription - bme280 ([@cdce8p] - [#55184]) ([bme280 docs])
+- Use EntityDescription - notion ([@bachya] - [#55120]) ([notion docs])
+- Use EntityDescription - airvisual ([@bachya] - [#55125]) ([airvisual docs])
+- Use EntityDescription - flunearyou ([@bachya] - [#55126]) ([flunearyou docs])
+- Updating IBM Watson SDK ([@rutkai] - [#54914]) ([watson_tts docs])
+- Add account type to Forecast.Solar integration ([@klaasnicolaas] - [#55175]) ([forecast_solar docs])
+- Remove temperature conversion - temper ([@cdce8p] - [#55188]) ([temper docs])
+- Fix rainforest eagle incorrectly fetch conncted first try ([@balloob] - [#55193]) ([rainforest_eagle docs])
+- Add configurable `state_class` to Modbus sensors ([@farmio] - [#54103]) ([modbus docs])
+- Refactor Jewish Calendar to use EntityDescription ([@yuvalabou] - [#54852]) ([jewish_calendar docs])
+- Remember state of MQTT availability topics when reconfiguring ([@emontnemery] - [#55199]) ([mqtt docs])
+- Add service to clear completed shoppinglist items ([@GrumpyMeow] - [#55032]) ([shopping_list docs])
+- Check for duplicate host/port and integration name in modbus ([@janiversen] - [#54664]) ([modbus docs])
+- Fix name - temper ([@cdce8p] - [#55189]) ([temper docs])
+- Extract attribute names out of vol.Optional when validating entity service schema ([@bnordli] - [#55157])
+- Generate statistics for all sensors with a supported state_class ([@emontnemery] - [#54882]) ([recorder docs]) ([sensor docs])
+- Warn if a sensor with state_class_total has a decreasing value ([@emontnemery] - [#55197]) ([sensor docs]) ([energy docs])
+- Add type annotations to amcrest integration ([@flacjacket] - [#54761]) ([amcrest docs])
+- Activate mypy for switchbot ([@janiversen] - [#55196]) ([switchbot docs])
+- Use EntityDescription - mhz19 ([@cdce8p] - [#55187]) ([mhz19 docs])
+- Tasmota - Cleanup tests involving legacy fan speed ([@jbouwh] - [#55202]) ([tasmota docs])
+- Utility meter, add STATE_CLASS_TOTAL_INCREASING ([@Danielhiversen] - [#54871]) ([utility_meter docs])
+- Clean up usage of EntityDescription in OpenUV ([@bachya] - [#55127]) ([openuv docs])
+- Cancel entity timers. ([@janiversen] - [#55141]) ([modbus docs])
+- Remove redundant str cast - sensor value conversion ([@cdce8p] - [#55204]) ([sensor docs])
+- Fix last_reset in utility_meter ([@emontnemery] - [#55209]) ([utility_meter docs])
+- Remove should poll property from Xiaomi Miio fan platform ([@bieniu] - [#55201]) ([xiaomi_miio docs])
+- ESPHome sensor use total_increasing state class ([@OttoWinter] - [#55208]) ([esphome docs])
+- Fix Fjäråskupan RSSI sensor unit ([@emontnemery] - [#55210]) ([fjaraskupan docs])
+- Prevent setting _attr_unit_of_measurement in subclasses of SensorEntity ([@emontnemery] - [#55211]) ([sensor docs])
+- Ignore unsupported MeasureType-s from Withings ([@denismilanovic] - [#55205]) ([withings docs])
+- Report average of position and tilt_position for cover groups ([@emontnemery] - [#52713]) ([group docs])
+- Remove temperature conversion - synology_dsm ([@cdce8p] - [#55214]) ([synology_dsm docs])
+- Finish EntityDescription implementation for RainMachine ([@bachya] - [#55180]) ([rainmachine docs])
+- Remove temperature conversion - sht31 ([@cdce8p] - [#55213]) ([sht31 docs])
+- Support device triggers in HomeKit ([@bdraco] - [#53869]) ([homekit docs])
+- Change logging to do rollover() instead of rotate() ([@janiversen] - [#55177])
+- Implement color_mode support for mysensors ([@emontnemery] - [#52068]) ([mysensors docs]) (breaking-change)
+- Address review of Nanoleaf Config Flow ([@milanmeu] - [#55215]) ([nanoleaf docs])
+- Sonos add bass & treble EQ option ([@Tigger2014] - [#53978]) ([sonos docs])
+- Add support for Xiaomi Miio pedestal fans ([@bieniu] - [#55114]) ([xiaomi_miio docs])
+- Support for EnergyStorageTrait for vacuum cleaners ([@giannello] - [#55134]) ([google_assistant docs])
+- Add tests for Rituals init, sensor and switch ([@milanmeu] - [#52406]) ([rituals_perfume_genie docs])
+- Honeywell Lyric - Entity Descriptions ([@timmo001] - [#54956]) ([lyric docs])
+- Add select platform to template integration ([@raman325] - [#54835]) ([template docs]) (new-platform)
+- Add number platform to template integration ([@raman325] - [#54789]) ([template docs]) (new-platform)
+- Bump frontend to 20210825.0 ([@balloob] - [#55221]) ([frontend docs])
+- Add an energy solar platform for solar forecasts ([@balloob] - [#54576]) ([energy docs]) ([forecast_solar docs])
+- Add missing convert to fan/light/switch modbus platform ([@janiversen] - [#55203]) ([modbus docs])
+- Add template functions to get area_id and area_name ([@raman325] - [#54248])
+- Add "cron patterns" to define utility_meter cycles ([@dgomes] - [#46795]) ([utility_meter docs])
+- Add Nanoleaf reauth flow ([@milanmeu] - [#55217]) ([nanoleaf docs])
+- Convert color temperature to visible color in lights ([@bdraco] - [#55219]) ([light docs])
+- Add services to bond to start and stop increase/decrease brightness ([@bdraco] - [#55006]) ([bond docs])
+
+{% enddetails %}
+
+[#39605]: https://github.com/home-assistant/core/pull/39605
+[#43513]: https://github.com/home-assistant/core/pull/43513
+[#46795]: https://github.com/home-assistant/core/pull/46795
+[#48261]: https://github.com/home-assistant/core/pull/48261
+[#49395]: https://github.com/home-assistant/core/pull/49395
+[#50071]: https://github.com/home-assistant/core/pull/50071
+[#51002]: https://github.com/home-assistant/core/pull/51002
+[#51160]: https://github.com/home-assistant/core/pull/51160
+[#51395]: https://github.com/home-assistant/core/pull/51395
+[#52068]: https://github.com/home-assistant/core/pull/52068
+[#52199]: https://github.com/home-assistant/core/pull/52199
+[#52207]: https://github.com/home-assistant/core/pull/52207
+[#52343]: https://github.com/home-assistant/core/pull/52343
+[#52352]: https://github.com/home-assistant/core/pull/52352
+[#52406]: https://github.com/home-assistant/core/pull/52406
+[#52713]: https://github.com/home-assistant/core/pull/52713
+[#52843]: https://github.com/home-assistant/core/pull/52843
+[#53018]: https://github.com/home-assistant/core/pull/53018
+[#53029]: https://github.com/home-assistant/core/pull/53029
+[#53140]: https://github.com/home-assistant/core/pull/53140
+[#53198]: https://github.com/home-assistant/core/pull/53198
+[#53263]: https://github.com/home-assistant/core/pull/53263
+[#53299]: https://github.com/home-assistant/core/pull/53299
+[#53361]: https://github.com/home-assistant/core/pull/53361
+[#53443]: https://github.com/home-assistant/core/pull/53443
+[#53463]: https://github.com/home-assistant/core/pull/53463
+[#53561]: https://github.com/home-assistant/core/pull/53561
+[#53583]: https://github.com/home-assistant/core/pull/53583
+[#53603]: https://github.com/home-assistant/core/pull/53603
+[#53619]: https://github.com/home-assistant/core/pull/53619
+[#53621]: https://github.com/home-assistant/core/pull/53621
+[#53633]: https://github.com/home-assistant/core/pull/53633
+[#53638]: https://github.com/home-assistant/core/pull/53638
+[#53642]: https://github.com/home-assistant/core/pull/53642
+[#53643]: https://github.com/home-assistant/core/pull/53643
+[#53644]: https://github.com/home-assistant/core/pull/53644
+[#53655]: https://github.com/home-assistant/core/pull/53655
+[#53666]: https://github.com/home-assistant/core/pull/53666
+[#53680]: https://github.com/home-assistant/core/pull/53680
+[#53685]: https://github.com/home-assistant/core/pull/53685
+[#53693]: https://github.com/home-assistant/core/pull/53693
+[#53699]: https://github.com/home-assistant/core/pull/53699
+[#53703]: https://github.com/home-assistant/core/pull/53703
+[#53705]: https://github.com/home-assistant/core/pull/53705
+[#53706]: https://github.com/home-assistant/core/pull/53706
+[#53714]: https://github.com/home-assistant/core/pull/53714
+[#53724]: https://github.com/home-assistant/core/pull/53724
+[#53725]: https://github.com/home-assistant/core/pull/53725
+[#53728]: https://github.com/home-assistant/core/pull/53728
+[#53740]: https://github.com/home-assistant/core/pull/53740
+[#53744]: https://github.com/home-assistant/core/pull/53744
+[#53750]: https://github.com/home-assistant/core/pull/53750
+[#53763]: https://github.com/home-assistant/core/pull/53763
+[#53764]: https://github.com/home-assistant/core/pull/53764
+[#53768]: https://github.com/home-assistant/core/pull/53768
+[#53780]: https://github.com/home-assistant/core/pull/53780
+[#53782]: https://github.com/home-assistant/core/pull/53782
+[#53783]: https://github.com/home-assistant/core/pull/53783
+[#53784]: https://github.com/home-assistant/core/pull/53784
+[#53786]: https://github.com/home-assistant/core/pull/53786
+[#53787]: https://github.com/home-assistant/core/pull/53787
+[#53805]: https://github.com/home-assistant/core/pull/53805
+[#53807]: https://github.com/home-assistant/core/pull/53807
+[#53813]: https://github.com/home-assistant/core/pull/53813
+[#53816]: https://github.com/home-assistant/core/pull/53816
+[#53820]: https://github.com/home-assistant/core/pull/53820
+[#53835]: https://github.com/home-assistant/core/pull/53835
+[#53836]: https://github.com/home-assistant/core/pull/53836
+[#53837]: https://github.com/home-assistant/core/pull/53837
+[#53840]: https://github.com/home-assistant/core/pull/53840
+[#53851]: https://github.com/home-assistant/core/pull/53851
+[#53863]: https://github.com/home-assistant/core/pull/53863
+[#53869]: https://github.com/home-assistant/core/pull/53869
+[#53881]: https://github.com/home-assistant/core/pull/53881
+[#53890]: https://github.com/home-assistant/core/pull/53890
+[#53891]: https://github.com/home-assistant/core/pull/53891
+[#53895]: https://github.com/home-assistant/core/pull/53895
+[#53898]: https://github.com/home-assistant/core/pull/53898
+[#53903]: https://github.com/home-assistant/core/pull/53903
+[#53909]: https://github.com/home-assistant/core/pull/53909
+[#53911]: https://github.com/home-assistant/core/pull/53911
+[#53915]: https://github.com/home-assistant/core/pull/53915
+[#53919]: https://github.com/home-assistant/core/pull/53919
+[#53920]: https://github.com/home-assistant/core/pull/53920
+[#53924]: https://github.com/home-assistant/core/pull/53924
+[#53928]: https://github.com/home-assistant/core/pull/53928
+[#53929]: https://github.com/home-assistant/core/pull/53929
+[#53931]: https://github.com/home-assistant/core/pull/53931
+[#53933]: https://github.com/home-assistant/core/pull/53933
+[#53934]: https://github.com/home-assistant/core/pull/53934
+[#53936]: https://github.com/home-assistant/core/pull/53936
+[#53938]: https://github.com/home-assistant/core/pull/53938
+[#53945]: https://github.com/home-assistant/core/pull/53945
+[#53946]: https://github.com/home-assistant/core/pull/53946
+[#53949]: https://github.com/home-assistant/core/pull/53949
+[#53950]: https://github.com/home-assistant/core/pull/53950
+[#53952]: https://github.com/home-assistant/core/pull/53952
+[#53954]: https://github.com/home-assistant/core/pull/53954
+[#53955]: https://github.com/home-assistant/core/pull/53955
+[#53956]: https://github.com/home-assistant/core/pull/53956
+[#53958]: https://github.com/home-assistant/core/pull/53958
+[#53967]: https://github.com/home-assistant/core/pull/53967
+[#53975]: https://github.com/home-assistant/core/pull/53975
+[#53978]: https://github.com/home-assistant/core/pull/53978
+[#53995]: https://github.com/home-assistant/core/pull/53995
+[#53996]: https://github.com/home-assistant/core/pull/53996
+[#54003]: https://github.com/home-assistant/core/pull/54003
+[#54006]: https://github.com/home-assistant/core/pull/54006
+[#54018]: https://github.com/home-assistant/core/pull/54018
+[#54019]: https://github.com/home-assistant/core/pull/54019
+[#54020]: https://github.com/home-assistant/core/pull/54020
+[#54040]: https://github.com/home-assistant/core/pull/54040
+[#54041]: https://github.com/home-assistant/core/pull/54041
+[#54042]: https://github.com/home-assistant/core/pull/54042
+[#54044]: https://github.com/home-assistant/core/pull/54044
+[#54051]: https://github.com/home-assistant/core/pull/54051
+[#54055]: https://github.com/home-assistant/core/pull/54055
+[#54074]: https://github.com/home-assistant/core/pull/54074
+[#54075]: https://github.com/home-assistant/core/pull/54075
+[#54080]: https://github.com/home-assistant/core/pull/54080
+[#54084]: https://github.com/home-assistant/core/pull/54084
+[#54087]: https://github.com/home-assistant/core/pull/54087
+[#54090]: https://github.com/home-assistant/core/pull/54090
+[#54096]: https://github.com/home-assistant/core/pull/54096
+[#54103]: https://github.com/home-assistant/core/pull/54103
+[#54109]: https://github.com/home-assistant/core/pull/54109
+[#54110]: https://github.com/home-assistant/core/pull/54110
+[#54111]: https://github.com/home-assistant/core/pull/54111
+[#54115]: https://github.com/home-assistant/core/pull/54115
+[#54116]: https://github.com/home-assistant/core/pull/54116
+[#54133]: https://github.com/home-assistant/core/pull/54133
+[#54137]: https://github.com/home-assistant/core/pull/54137
+[#54143]: https://github.com/home-assistant/core/pull/54143
+[#54149]: https://github.com/home-assistant/core/pull/54149
+[#54157]: https://github.com/home-assistant/core/pull/54157
+[#54174]: https://github.com/home-assistant/core/pull/54174
+[#54176]: https://github.com/home-assistant/core/pull/54176
+[#54179]: https://github.com/home-assistant/core/pull/54179
+[#54182]: https://github.com/home-assistant/core/pull/54182
+[#54185]: https://github.com/home-assistant/core/pull/54185
+[#54190]: https://github.com/home-assistant/core/pull/54190
+[#54198]: https://github.com/home-assistant/core/pull/54198
+[#54200]: https://github.com/home-assistant/core/pull/54200
+[#54223]: https://github.com/home-assistant/core/pull/54223
+[#54226]: https://github.com/home-assistant/core/pull/54226
+[#54227]: https://github.com/home-assistant/core/pull/54227
+[#54228]: https://github.com/home-assistant/core/pull/54228
+[#54229]: https://github.com/home-assistant/core/pull/54229
+[#54230]: https://github.com/home-assistant/core/pull/54230
+[#54231]: https://github.com/home-assistant/core/pull/54231
+[#54244]: https://github.com/home-assistant/core/pull/54244
+[#54248]: https://github.com/home-assistant/core/pull/54248
+[#54251]: https://github.com/home-assistant/core/pull/54251
+[#54253]: https://github.com/home-assistant/core/pull/54253
+[#54256]: https://github.com/home-assistant/core/pull/54256
+[#54257]: https://github.com/home-assistant/core/pull/54257
+[#54259]: https://github.com/home-assistant/core/pull/54259
+[#54262]: https://github.com/home-assistant/core/pull/54262
+[#54264]: https://github.com/home-assistant/core/pull/54264
+[#54269]: https://github.com/home-assistant/core/pull/54269
+[#54271]: https://github.com/home-assistant/core/pull/54271
+[#54276]: https://github.com/home-assistant/core/pull/54276
+[#54277]: https://github.com/home-assistant/core/pull/54277
+[#54284]: https://github.com/home-assistant/core/pull/54284
+[#54287]: https://github.com/home-assistant/core/pull/54287
+[#54289]: https://github.com/home-assistant/core/pull/54289
+[#54296]: https://github.com/home-assistant/core/pull/54296
+[#54297]: https://github.com/home-assistant/core/pull/54297
+[#54300]: https://github.com/home-assistant/core/pull/54300
+[#54301]: https://github.com/home-assistant/core/pull/54301
+[#54304]: https://github.com/home-assistant/core/pull/54304
+[#54305]: https://github.com/home-assistant/core/pull/54305
+[#54310]: https://github.com/home-assistant/core/pull/54310
+[#54314]: https://github.com/home-assistant/core/pull/54314
+[#54316]: https://github.com/home-assistant/core/pull/54316
+[#54317]: https://github.com/home-assistant/core/pull/54317
+[#54318]: https://github.com/home-assistant/core/pull/54318
+[#54319]: https://github.com/home-assistant/core/pull/54319
+[#54320]: https://github.com/home-assistant/core/pull/54320
+[#54321]: https://github.com/home-assistant/core/pull/54321
+[#54323]: https://github.com/home-assistant/core/pull/54323
+[#54325]: https://github.com/home-assistant/core/pull/54325
+[#54327]: https://github.com/home-assistant/core/pull/54327
+[#54328]: https://github.com/home-assistant/core/pull/54328
+[#54329]: https://github.com/home-assistant/core/pull/54329
+[#54336]: https://github.com/home-assistant/core/pull/54336
+[#54343]: https://github.com/home-assistant/core/pull/54343
+[#54359]: https://github.com/home-assistant/core/pull/54359
+[#54360]: https://github.com/home-assistant/core/pull/54360
+[#54362]: https://github.com/home-assistant/core/pull/54362
+[#54363]: https://github.com/home-assistant/core/pull/54363
+[#54366]: https://github.com/home-assistant/core/pull/54366
+[#54367]: https://github.com/home-assistant/core/pull/54367
+[#54369]: https://github.com/home-assistant/core/pull/54369
+[#54370]: https://github.com/home-assistant/core/pull/54370
+[#54371]: https://github.com/home-assistant/core/pull/54371
+[#54383]: https://github.com/home-assistant/core/pull/54383
+[#54387]: https://github.com/home-assistant/core/pull/54387
+[#54388]: https://github.com/home-assistant/core/pull/54388
+[#54390]: https://github.com/home-assistant/core/pull/54390
+[#54391]: https://github.com/home-assistant/core/pull/54391
+[#54392]: https://github.com/home-assistant/core/pull/54392
+[#54393]: https://github.com/home-assistant/core/pull/54393
+[#54396]: https://github.com/home-assistant/core/pull/54396
+[#54403]: https://github.com/home-assistant/core/pull/54403
+[#54408]: https://github.com/home-assistant/core/pull/54408
+[#54410]: https://github.com/home-assistant/core/pull/54410
+[#54412]: https://github.com/home-assistant/core/pull/54412
+[#54415]: https://github.com/home-assistant/core/pull/54415
+[#54416]: https://github.com/home-assistant/core/pull/54416
+[#54418]: https://github.com/home-assistant/core/pull/54418
+[#54420]: https://github.com/home-assistant/core/pull/54420
+[#54422]: https://github.com/home-assistant/core/pull/54422
+[#54425]: https://github.com/home-assistant/core/pull/54425
+[#54427]: https://github.com/home-assistant/core/pull/54427
+[#54428]: https://github.com/home-assistant/core/pull/54428
+[#54429]: https://github.com/home-assistant/core/pull/54429
+[#54430]: https://github.com/home-assistant/core/pull/54430
+[#54431]: https://github.com/home-assistant/core/pull/54431
+[#54432]: https://github.com/home-assistant/core/pull/54432
+[#54442]: https://github.com/home-assistant/core/pull/54442
+[#54449]: https://github.com/home-assistant/core/pull/54449
+[#54452]: https://github.com/home-assistant/core/pull/54452
+[#54456]: https://github.com/home-assistant/core/pull/54456
+[#54468]: https://github.com/home-assistant/core/pull/54468
+[#54469]: https://github.com/home-assistant/core/pull/54469
+[#54470]: https://github.com/home-assistant/core/pull/54470
+[#54471]: https://github.com/home-assistant/core/pull/54471
+[#54472]: https://github.com/home-assistant/core/pull/54472
+[#54474]: https://github.com/home-assistant/core/pull/54474
+[#54475]: https://github.com/home-assistant/core/pull/54475
+[#54476]: https://github.com/home-assistant/core/pull/54476
+[#54477]: https://github.com/home-assistant/core/pull/54477
+[#54478]: https://github.com/home-assistant/core/pull/54478
+[#54481]: https://github.com/home-assistant/core/pull/54481
+[#54482]: https://github.com/home-assistant/core/pull/54482
+[#54483]: https://github.com/home-assistant/core/pull/54483
+[#54489]: https://github.com/home-assistant/core/pull/54489
+[#54493]: https://github.com/home-assistant/core/pull/54493
+[#54496]: https://github.com/home-assistant/core/pull/54496
+[#54501]: https://github.com/home-assistant/core/pull/54501
+[#54503]: https://github.com/home-assistant/core/pull/54503
+[#54512]: https://github.com/home-assistant/core/pull/54512
+[#54513]: https://github.com/home-assistant/core/pull/54513
+[#54516]: https://github.com/home-assistant/core/pull/54516
+[#54522]: https://github.com/home-assistant/core/pull/54522
+[#54523]: https://github.com/home-assistant/core/pull/54523
+[#54532]: https://github.com/home-assistant/core/pull/54532
+[#54539]: https://github.com/home-assistant/core/pull/54539
+[#54540]: https://github.com/home-assistant/core/pull/54540
+[#54542]: https://github.com/home-assistant/core/pull/54542
+[#54543]: https://github.com/home-assistant/core/pull/54543
+[#54546]: https://github.com/home-assistant/core/pull/54546
+[#54547]: https://github.com/home-assistant/core/pull/54547
+[#54554]: https://github.com/home-assistant/core/pull/54554
+[#54560]: https://github.com/home-assistant/core/pull/54560
+[#54561]: https://github.com/home-assistant/core/pull/54561
+[#54562]: https://github.com/home-assistant/core/pull/54562
+[#54564]: https://github.com/home-assistant/core/pull/54564
+[#54567]: https://github.com/home-assistant/core/pull/54567
+[#54574]: https://github.com/home-assistant/core/pull/54574
+[#54575]: https://github.com/home-assistant/core/pull/54575
+[#54576]: https://github.com/home-assistant/core/pull/54576
+[#54577]: https://github.com/home-assistant/core/pull/54577
+[#54581]: https://github.com/home-assistant/core/pull/54581
+[#54583]: https://github.com/home-assistant/core/pull/54583
+[#54588]: https://github.com/home-assistant/core/pull/54588
+[#54589]: https://github.com/home-assistant/core/pull/54589
+[#54594]: https://github.com/home-assistant/core/pull/54594
+[#54596]: https://github.com/home-assistant/core/pull/54596
+[#54601]: https://github.com/home-assistant/core/pull/54601
+[#54603]: https://github.com/home-assistant/core/pull/54603
+[#54606]: https://github.com/home-assistant/core/pull/54606
+[#54607]: https://github.com/home-assistant/core/pull/54607
+[#54611]: https://github.com/home-assistant/core/pull/54611
+[#54613]: https://github.com/home-assistant/core/pull/54613
+[#54623]: https://github.com/home-assistant/core/pull/54623
+[#54624]: https://github.com/home-assistant/core/pull/54624
+[#54625]: https://github.com/home-assistant/core/pull/54625
+[#54630]: https://github.com/home-assistant/core/pull/54630
+[#54632]: https://github.com/home-assistant/core/pull/54632
+[#54637]: https://github.com/home-assistant/core/pull/54637
+[#54639]: https://github.com/home-assistant/core/pull/54639
+[#54644]: https://github.com/home-assistant/core/pull/54644
+[#54648]: https://github.com/home-assistant/core/pull/54648
+[#54649]: https://github.com/home-assistant/core/pull/54649
+[#54654]: https://github.com/home-assistant/core/pull/54654
+[#54661]: https://github.com/home-assistant/core/pull/54661
+[#54662]: https://github.com/home-assistant/core/pull/54662
+[#54664]: https://github.com/home-assistant/core/pull/54664
+[#54665]: https://github.com/home-assistant/core/pull/54665
+[#54666]: https://github.com/home-assistant/core/pull/54666
+[#54668]: https://github.com/home-assistant/core/pull/54668
+[#54669]: https://github.com/home-assistant/core/pull/54669
+[#54672]: https://github.com/home-assistant/core/pull/54672
+[#54673]: https://github.com/home-assistant/core/pull/54673
+[#54675]: https://github.com/home-assistant/core/pull/54675
+[#54677]: https://github.com/home-assistant/core/pull/54677
+[#54689]: https://github.com/home-assistant/core/pull/54689
+[#54690]: https://github.com/home-assistant/core/pull/54690
+[#54697]: https://github.com/home-assistant/core/pull/54697
+[#54698]: https://github.com/home-assistant/core/pull/54698
+[#54699]: https://github.com/home-assistant/core/pull/54699
+[#54700]: https://github.com/home-assistant/core/pull/54700
+[#54701]: https://github.com/home-assistant/core/pull/54701
+[#54702]: https://github.com/home-assistant/core/pull/54702
+[#54705]: https://github.com/home-assistant/core/pull/54705
+[#54709]: https://github.com/home-assistant/core/pull/54709
+[#54710]: https://github.com/home-assistant/core/pull/54710
+[#54711]: https://github.com/home-assistant/core/pull/54711
+[#54715]: https://github.com/home-assistant/core/pull/54715
+[#54717]: https://github.com/home-assistant/core/pull/54717
+[#54719]: https://github.com/home-assistant/core/pull/54719
+[#54720]: https://github.com/home-assistant/core/pull/54720
+[#54723]: https://github.com/home-assistant/core/pull/54723
+[#54724]: https://github.com/home-assistant/core/pull/54724
+[#54728]: https://github.com/home-assistant/core/pull/54728
+[#54729]: https://github.com/home-assistant/core/pull/54729
+[#54731]: https://github.com/home-assistant/core/pull/54731
+[#54732]: https://github.com/home-assistant/core/pull/54732
+[#54733]: https://github.com/home-assistant/core/pull/54733
+[#54738]: https://github.com/home-assistant/core/pull/54738
+[#54739]: https://github.com/home-assistant/core/pull/54739
+[#54741]: https://github.com/home-assistant/core/pull/54741
+[#54742]: https://github.com/home-assistant/core/pull/54742
+[#54743]: https://github.com/home-assistant/core/pull/54743
+[#54744]: https://github.com/home-assistant/core/pull/54744
+[#54746]: https://github.com/home-assistant/core/pull/54746
+[#54748]: https://github.com/home-assistant/core/pull/54748
+[#54749]: https://github.com/home-assistant/core/pull/54749
+[#54750]: https://github.com/home-assistant/core/pull/54750
+[#54751]: https://github.com/home-assistant/core/pull/54751
+[#54752]: https://github.com/home-assistant/core/pull/54752
+[#54753]: https://github.com/home-assistant/core/pull/54753
+[#54755]: https://github.com/home-assistant/core/pull/54755
+[#54758]: https://github.com/home-assistant/core/pull/54758
+[#54759]: https://github.com/home-assistant/core/pull/54759
+[#54761]: https://github.com/home-assistant/core/pull/54761
+[#54762]: https://github.com/home-assistant/core/pull/54762
+[#54764]: https://github.com/home-assistant/core/pull/54764
+[#54767]: https://github.com/home-assistant/core/pull/54767
+[#54768]: https://github.com/home-assistant/core/pull/54768
+[#54769]: https://github.com/home-assistant/core/pull/54769
+[#54773]: https://github.com/home-assistant/core/pull/54773
+[#54775]: https://github.com/home-assistant/core/pull/54775
+[#54776]: https://github.com/home-assistant/core/pull/54776
+[#54782]: https://github.com/home-assistant/core/pull/54782
+[#54783]: https://github.com/home-assistant/core/pull/54783
+[#54786]: https://github.com/home-assistant/core/pull/54786
+[#54787]: https://github.com/home-assistant/core/pull/54787
+[#54789]: https://github.com/home-assistant/core/pull/54789
+[#54791]: https://github.com/home-assistant/core/pull/54791
+[#54792]: https://github.com/home-assistant/core/pull/54792
+[#54794]: https://github.com/home-assistant/core/pull/54794
+[#54795]: https://github.com/home-assistant/core/pull/54795
+[#54797]: https://github.com/home-assistant/core/pull/54797
+[#54798]: https://github.com/home-assistant/core/pull/54798
+[#54799]: https://github.com/home-assistant/core/pull/54799
+[#54800]: https://github.com/home-assistant/core/pull/54800
+[#54801]: https://github.com/home-assistant/core/pull/54801
+[#54802]: https://github.com/home-assistant/core/pull/54802
+[#54803]: https://github.com/home-assistant/core/pull/54803
+[#54804]: https://github.com/home-assistant/core/pull/54804
+[#54806]: https://github.com/home-assistant/core/pull/54806
+[#54807]: https://github.com/home-assistant/core/pull/54807
+[#54808]: https://github.com/home-assistant/core/pull/54808
+[#54809]: https://github.com/home-assistant/core/pull/54809
+[#54810]: https://github.com/home-assistant/core/pull/54810
+[#54813]: https://github.com/home-assistant/core/pull/54813
+[#54814]: https://github.com/home-assistant/core/pull/54814
+[#54815]: https://github.com/home-assistant/core/pull/54815
+[#54817]: https://github.com/home-assistant/core/pull/54817
+[#54818]: https://github.com/home-assistant/core/pull/54818
+[#54821]: https://github.com/home-assistant/core/pull/54821
+[#54822]: https://github.com/home-assistant/core/pull/54822
+[#54824]: https://github.com/home-assistant/core/pull/54824
+[#54825]: https://github.com/home-assistant/core/pull/54825
+[#54827]: https://github.com/home-assistant/core/pull/54827
+[#54828]: https://github.com/home-assistant/core/pull/54828
+[#54830]: https://github.com/home-assistant/core/pull/54830
+[#54831]: https://github.com/home-assistant/core/pull/54831
+[#54832]: https://github.com/home-assistant/core/pull/54832
+[#54834]: https://github.com/home-assistant/core/pull/54834
+[#54835]: https://github.com/home-assistant/core/pull/54835
+[#54836]: https://github.com/home-assistant/core/pull/54836
+[#54837]: https://github.com/home-assistant/core/pull/54837
+[#54838]: https://github.com/home-assistant/core/pull/54838
+[#54840]: https://github.com/home-assistant/core/pull/54840
+[#54841]: https://github.com/home-assistant/core/pull/54841
+[#54842]: https://github.com/home-assistant/core/pull/54842
+[#54844]: https://github.com/home-assistant/core/pull/54844
+[#54846]: https://github.com/home-assistant/core/pull/54846
+[#54847]: https://github.com/home-assistant/core/pull/54847
+[#54849]: https://github.com/home-assistant/core/pull/54849
+[#54850]: https://github.com/home-assistant/core/pull/54850
+[#54851]: https://github.com/home-assistant/core/pull/54851
+[#54852]: https://github.com/home-assistant/core/pull/54852
+[#54854]: https://github.com/home-assistant/core/pull/54854
+[#54855]: https://github.com/home-assistant/core/pull/54855
+[#54856]: https://github.com/home-assistant/core/pull/54856
+[#54858]: https://github.com/home-assistant/core/pull/54858
+[#54861]: https://github.com/home-assistant/core/pull/54861
+[#54862]: https://github.com/home-assistant/core/pull/54862
+[#54864]: https://github.com/home-assistant/core/pull/54864
+[#54865]: https://github.com/home-assistant/core/pull/54865
+[#54866]: https://github.com/home-assistant/core/pull/54866
+[#54867]: https://github.com/home-assistant/core/pull/54867
+[#54870]: https://github.com/home-assistant/core/pull/54870
+[#54871]: https://github.com/home-assistant/core/pull/54871
+[#54877]: https://github.com/home-assistant/core/pull/54877
+[#54880]: https://github.com/home-assistant/core/pull/54880
+[#54882]: https://github.com/home-assistant/core/pull/54882
+[#54883]: https://github.com/home-assistant/core/pull/54883
+[#54887]: https://github.com/home-assistant/core/pull/54887
+[#54891]: https://github.com/home-assistant/core/pull/54891
+[#54893]: https://github.com/home-assistant/core/pull/54893
+[#54896]: https://github.com/home-assistant/core/pull/54896
+[#54897]: https://github.com/home-assistant/core/pull/54897
+[#54903]: https://github.com/home-assistant/core/pull/54903
+[#54904]: https://github.com/home-assistant/core/pull/54904
+[#54905]: https://github.com/home-assistant/core/pull/54905
+[#54906]: https://github.com/home-assistant/core/pull/54906
+[#54907]: https://github.com/home-assistant/core/pull/54907
+[#54911]: https://github.com/home-assistant/core/pull/54911
+[#54913]: https://github.com/home-assistant/core/pull/54913
+[#54914]: https://github.com/home-assistant/core/pull/54914
+[#54915]: https://github.com/home-assistant/core/pull/54915
+[#54916]: https://github.com/home-assistant/core/pull/54916
+[#54918]: https://github.com/home-assistant/core/pull/54918
+[#54919]: https://github.com/home-assistant/core/pull/54919
+[#54920]: https://github.com/home-assistant/core/pull/54920
+[#54921]: https://github.com/home-assistant/core/pull/54921
+[#54922]: https://github.com/home-assistant/core/pull/54922
+[#54923]: https://github.com/home-assistant/core/pull/54923
+[#54924]: https://github.com/home-assistant/core/pull/54924
+[#54925]: https://github.com/home-assistant/core/pull/54925
+[#54926]: https://github.com/home-assistant/core/pull/54926
+[#54927]: https://github.com/home-assistant/core/pull/54927
+[#54928]: https://github.com/home-assistant/core/pull/54928
+[#54929]: https://github.com/home-assistant/core/pull/54929
+[#54930]: https://github.com/home-assistant/core/pull/54930
+[#54931]: https://github.com/home-assistant/core/pull/54931
+[#54933]: https://github.com/home-assistant/core/pull/54933
+[#54935]: https://github.com/home-assistant/core/pull/54935
+[#54936]: https://github.com/home-assistant/core/pull/54936
+[#54938]: https://github.com/home-assistant/core/pull/54938
+[#54940]: https://github.com/home-assistant/core/pull/54940
+[#54941]: https://github.com/home-assistant/core/pull/54941
+[#54942]: https://github.com/home-assistant/core/pull/54942
+[#54943]: https://github.com/home-assistant/core/pull/54943
+[#54944]: https://github.com/home-assistant/core/pull/54944
+[#54945]: https://github.com/home-assistant/core/pull/54945
+[#54950]: https://github.com/home-assistant/core/pull/54950
+[#54952]: https://github.com/home-assistant/core/pull/54952
+[#54953]: https://github.com/home-assistant/core/pull/54953
+[#54955]: https://github.com/home-assistant/core/pull/54955
+[#54956]: https://github.com/home-assistant/core/pull/54956
+[#54958]: https://github.com/home-assistant/core/pull/54958
+[#54962]: https://github.com/home-assistant/core/pull/54962
+[#54963]: https://github.com/home-assistant/core/pull/54963
+[#54967]: https://github.com/home-assistant/core/pull/54967
+[#54968]: https://github.com/home-assistant/core/pull/54968
+[#54970]: https://github.com/home-assistant/core/pull/54970
+[#54971]: https://github.com/home-assistant/core/pull/54971
+[#54974]: https://github.com/home-assistant/core/pull/54974
+[#54976]: https://github.com/home-assistant/core/pull/54976
+[#54977]: https://github.com/home-assistant/core/pull/54977
+[#54979]: https://github.com/home-assistant/core/pull/54979
+[#54980]: https://github.com/home-assistant/core/pull/54980
+[#54982]: https://github.com/home-assistant/core/pull/54982
+[#54986]: https://github.com/home-assistant/core/pull/54986
+[#54987]: https://github.com/home-assistant/core/pull/54987
+[#54988]: https://github.com/home-assistant/core/pull/54988
+[#54992]: https://github.com/home-assistant/core/pull/54992
+[#54993]: https://github.com/home-assistant/core/pull/54993
+[#54994]: https://github.com/home-assistant/core/pull/54994
+[#54995]: https://github.com/home-assistant/core/pull/54995
+[#54996]: https://github.com/home-assistant/core/pull/54996
+[#54997]: https://github.com/home-assistant/core/pull/54997
+[#54998]: https://github.com/home-assistant/core/pull/54998
+[#54999]: https://github.com/home-assistant/core/pull/54999
+[#55000]: https://github.com/home-assistant/core/pull/55000
+[#55001]: https://github.com/home-assistant/core/pull/55001
+[#55002]: https://github.com/home-assistant/core/pull/55002
+[#55003]: https://github.com/home-assistant/core/pull/55003
+[#55005]: https://github.com/home-assistant/core/pull/55005
+[#55006]: https://github.com/home-assistant/core/pull/55006
+[#55015]: https://github.com/home-assistant/core/pull/55015
+[#55018]: https://github.com/home-assistant/core/pull/55018
+[#55019]: https://github.com/home-assistant/core/pull/55019
+[#55020]: https://github.com/home-assistant/core/pull/55020
+[#55021]: https://github.com/home-assistant/core/pull/55021
+[#55022]: https://github.com/home-assistant/core/pull/55022
+[#55023]: https://github.com/home-assistant/core/pull/55023
+[#55027]: https://github.com/home-assistant/core/pull/55027
+[#55032]: https://github.com/home-assistant/core/pull/55032
+[#55033]: https://github.com/home-assistant/core/pull/55033
+[#55034]: https://github.com/home-assistant/core/pull/55034
+[#55036]: https://github.com/home-assistant/core/pull/55036
+[#55037]: https://github.com/home-assistant/core/pull/55037
+[#55038]: https://github.com/home-assistant/core/pull/55038
+[#55039]: https://github.com/home-assistant/core/pull/55039
+[#55040]: https://github.com/home-assistant/core/pull/55040
+[#55045]: https://github.com/home-assistant/core/pull/55045
+[#55047]: https://github.com/home-assistant/core/pull/55047
+[#55049]: https://github.com/home-assistant/core/pull/55049
+[#55050]: https://github.com/home-assistant/core/pull/55050
+[#55051]: https://github.com/home-assistant/core/pull/55051
+[#55053]: https://github.com/home-assistant/core/pull/55053
+[#55054]: https://github.com/home-assistant/core/pull/55054
+[#55055]: https://github.com/home-assistant/core/pull/55055
+[#55056]: https://github.com/home-assistant/core/pull/55056
+[#55057]: https://github.com/home-assistant/core/pull/55057
+[#55058]: https://github.com/home-assistant/core/pull/55058
+[#55059]: https://github.com/home-assistant/core/pull/55059
+[#55063]: https://github.com/home-assistant/core/pull/55063
+[#55064]: https://github.com/home-assistant/core/pull/55064
+[#55065]: https://github.com/home-assistant/core/pull/55065
+[#55066]: https://github.com/home-assistant/core/pull/55066
+[#55067]: https://github.com/home-assistant/core/pull/55067
+[#55068]: https://github.com/home-assistant/core/pull/55068
+[#55069]: https://github.com/home-assistant/core/pull/55069
+[#55070]: https://github.com/home-assistant/core/pull/55070
+[#55071]: https://github.com/home-assistant/core/pull/55071
+[#55075]: https://github.com/home-assistant/core/pull/55075
+[#55077]: https://github.com/home-assistant/core/pull/55077
+[#55079]: https://github.com/home-assistant/core/pull/55079
+[#55082]: https://github.com/home-assistant/core/pull/55082
+[#55084]: https://github.com/home-assistant/core/pull/55084
+[#55085]: https://github.com/home-assistant/core/pull/55085
+[#55086]: https://github.com/home-assistant/core/pull/55086
+[#55087]: https://github.com/home-assistant/core/pull/55087
+[#55088]: https://github.com/home-assistant/core/pull/55088
+[#55089]: https://github.com/home-assistant/core/pull/55089
+[#55091]: https://github.com/home-assistant/core/pull/55091
+[#55092]: https://github.com/home-assistant/core/pull/55092
+[#55093]: https://github.com/home-assistant/core/pull/55093
+[#55094]: https://github.com/home-assistant/core/pull/55094
+[#55096]: https://github.com/home-assistant/core/pull/55096
+[#55099]: https://github.com/home-assistant/core/pull/55099
+[#55102]: https://github.com/home-assistant/core/pull/55102
+[#55106]: https://github.com/home-assistant/core/pull/55106
+[#55108]: https://github.com/home-assistant/core/pull/55108
+[#55109]: https://github.com/home-assistant/core/pull/55109
+[#55110]: https://github.com/home-assistant/core/pull/55110
+[#55111]: https://github.com/home-assistant/core/pull/55111
+[#55114]: https://github.com/home-assistant/core/pull/55114
+[#55115]: https://github.com/home-assistant/core/pull/55115
+[#55118]: https://github.com/home-assistant/core/pull/55118
+[#55119]: https://github.com/home-assistant/core/pull/55119
+[#55120]: https://github.com/home-assistant/core/pull/55120
+[#55121]: https://github.com/home-assistant/core/pull/55121
+[#55124]: https://github.com/home-assistant/core/pull/55124
+[#55125]: https://github.com/home-assistant/core/pull/55125
+[#55126]: https://github.com/home-assistant/core/pull/55126
+[#55127]: https://github.com/home-assistant/core/pull/55127
+[#55128]: https://github.com/home-assistant/core/pull/55128
+[#55129]: https://github.com/home-assistant/core/pull/55129
+[#55131]: https://github.com/home-assistant/core/pull/55131
+[#55134]: https://github.com/home-assistant/core/pull/55134
+[#55136]: https://github.com/home-assistant/core/pull/55136
+[#55137]: https://github.com/home-assistant/core/pull/55137
+[#55139]: https://github.com/home-assistant/core/pull/55139
+[#55140]: https://github.com/home-assistant/core/pull/55140
+[#55141]: https://github.com/home-assistant/core/pull/55141
+[#55143]: https://github.com/home-assistant/core/pull/55143
+[#55145]: https://github.com/home-assistant/core/pull/55145
+[#55147]: https://github.com/home-assistant/core/pull/55147
+[#55148]: https://github.com/home-assistant/core/pull/55148
+[#55149]: https://github.com/home-assistant/core/pull/55149
+[#55153]: https://github.com/home-assistant/core/pull/55153
+[#55154]: https://github.com/home-assistant/core/pull/55154
+[#55157]: https://github.com/home-assistant/core/pull/55157
+[#55158]: https://github.com/home-assistant/core/pull/55158
+[#55159]: https://github.com/home-assistant/core/pull/55159
+[#55161]: https://github.com/home-assistant/core/pull/55161
+[#55162]: https://github.com/home-assistant/core/pull/55162
+[#55163]: https://github.com/home-assistant/core/pull/55163
+[#55164]: https://github.com/home-assistant/core/pull/55164
+[#55165]: https://github.com/home-assistant/core/pull/55165
+[#55166]: https://github.com/home-assistant/core/pull/55166
+[#55169]: https://github.com/home-assistant/core/pull/55169
+[#55175]: https://github.com/home-assistant/core/pull/55175
+[#55177]: https://github.com/home-assistant/core/pull/55177
+[#55180]: https://github.com/home-assistant/core/pull/55180
+[#55181]: https://github.com/home-assistant/core/pull/55181
+[#55183]: https://github.com/home-assistant/core/pull/55183
+[#55184]: https://github.com/home-assistant/core/pull/55184
+[#55185]: https://github.com/home-assistant/core/pull/55185
+[#55186]: https://github.com/home-assistant/core/pull/55186
+[#55187]: https://github.com/home-assistant/core/pull/55187
+[#55188]: https://github.com/home-assistant/core/pull/55188
+[#55189]: https://github.com/home-assistant/core/pull/55189
+[#55193]: https://github.com/home-assistant/core/pull/55193
+[#55194]: https://github.com/home-assistant/core/pull/55194
+[#55195]: https://github.com/home-assistant/core/pull/55195
+[#55196]: https://github.com/home-assistant/core/pull/55196
+[#55197]: https://github.com/home-assistant/core/pull/55197
+[#55199]: https://github.com/home-assistant/core/pull/55199
+[#55201]: https://github.com/home-assistant/core/pull/55201
+[#55202]: https://github.com/home-assistant/core/pull/55202
+[#55203]: https://github.com/home-assistant/core/pull/55203
+[#55204]: https://github.com/home-assistant/core/pull/55204
+[#55205]: https://github.com/home-assistant/core/pull/55205
+[#55208]: https://github.com/home-assistant/core/pull/55208
+[#55209]: https://github.com/home-assistant/core/pull/55209
+[#55210]: https://github.com/home-assistant/core/pull/55210
+[#55211]: https://github.com/home-assistant/core/pull/55211
+[#55213]: https://github.com/home-assistant/core/pull/55213
+[#55214]: https://github.com/home-assistant/core/pull/55214
+[#55215]: https://github.com/home-assistant/core/pull/55215
+[#55217]: https://github.com/home-assistant/core/pull/55217
+[#55219]: https://github.com/home-assistant/core/pull/55219
+[#55221]: https://github.com/home-assistant/core/pull/55221
+[@AaronDavidSchneider]: https://github.com/AaronDavidSchneider
+[@Adminiuga]: https://github.com/Adminiuga
+[@Bert-R]: https://github.com/Bert-R
+[@Bre77]: https://github.com/Bre77
+[@DCSBL]: https://github.com/DCSBL
+[@Danielhiversen]: https://github.com/Danielhiversen
+[@Ernst79]: https://github.com/Ernst79
+[@GrumpyMeow]: https://github.com/GrumpyMeow
+[@GuyKh]: https://github.com/GuyKh
+[@Hyralex]: https://github.com/Hyralex
+[@JasperPlant]: https://github.com/JasperPlant
+[@JasperS2307]: https://github.com/JasperS2307
+[@Jc2k]: https://github.com/Jc2k
+[@JeffLIrion]: https://github.com/JeffLIrion
+[@JonasPed]: https://github.com/JonasPed
+[@Kane610]: https://github.com/Kane610
+[@LonePurpleWolf]: https://github.com/LonePurpleWolf
+[@MartinHjelmare]: https://github.com/MartinHjelmare
+[@OttoWinter]: https://github.com/OttoWinter
+[@Schmidsfeld]: https://github.com/Schmidsfeld
+[@Shutgun]: https://github.com/Shutgun
+[@SmaginPV]: https://github.com/SmaginPV
+[@StevenLooman]: https://github.com/StevenLooman
+[@TastyPi]: https://github.com/TastyPi
+[@TheJulianJES]: https://github.com/TheJulianJES
+[@Tigger2014]: https://github.com/Tigger2014
+[@TomBrien]: https://github.com/TomBrien
+[@ViViDboarder]: https://github.com/ViViDboarder
+[@adamjernst]: https://github.com/adamjernst
+[@allenporter]: https://github.com/allenporter
+[@andre-richter]: https://github.com/andre-richter
+[@bachya]: https://github.com/bachya
+[@balloob]: https://github.com/balloob
+[@bdraco]: https://github.com/bdraco
+[@bieniu]: https://github.com/bieniu
+[@bnordli]: https://github.com/bnordli
+[@bogdal]: https://github.com/bogdal
+[@bramkragten]: https://github.com/bramkragten
+[@brianegge]: https://github.com/brianegge
+[@bsmappee]: https://github.com/bsmappee
+[@carstenschroeder]: https://github.com/carstenschroeder
+[@cdce8p]: https://github.com/cdce8p
+[@cdheiser]: https://github.com/cdheiser
+[@cgtobi]: https://github.com/cgtobi
+[@chemelli74]: https://github.com/chemelli74
+[@cnico]: https://github.com/cnico
+[@cpw]: https://github.com/cpw
+[@crkochan]: https://github.com/crkochan
+[@ctalkington]: https://github.com/ctalkington
+[@danielperna84]: https://github.com/danielperna84
+[@deiger]: https://github.com/deiger
+[@denismilanovic]: https://github.com/denismilanovic
+[@dermotduffy]: https://github.com/dermotduffy
+[@dgomes]: https://github.com/dgomes
+[@ehendrix23]: https://github.com/ehendrix23
+[@elupus]: https://github.com/elupus
+[@emontnemery]: https://github.com/emontnemery
+[@epenet]: https://github.com/epenet
+[@esev]: https://github.com/esev
+[@farmio]: https://github.com/farmio
+[@firstof9]: https://github.com/firstof9
+[@flacjacket]: https://github.com/flacjacket
+[@frenck]: https://github.com/frenck
+[@gianklug]: https://github.com/gianklug
+[@giannello]: https://github.com/giannello
+[@gjong]: https://github.com/gjong
+[@janiversen]: https://github.com/janiversen
+[@janjurca]: https://github.com/janjurca
+[@jbouwh]: https://github.com/jbouwh
+[@jesserockz]: https://github.com/jesserockz
+[@jjlawren]: https://github.com/jjlawren
+[@jorgror]: https://github.com/jorgror
+[@jshank]: https://github.com/jshank
+[@klaasnicolaas]: https://github.com/klaasnicolaas
+[@ludeeus]: https://github.com/ludeeus
+[@lukewaite]: https://github.com/lukewaite
+[@maschel]: https://github.com/maschel
+[@mdz]: https://github.com/mdz
+[@meyerrj]: https://github.com/meyerrj
+[@mib1185]: https://github.com/mib1185
+[@micha91]: https://github.com/micha91
+[@milanmeu]: https://github.com/milanmeu
+[@mplemay]: https://github.com/mplemay
+[@muchtall]: https://github.com/muchtall
+[@nickovs]: https://github.com/nickovs
+[@nickstamat]: https://github.com/nickstamat
+[@nielstron]: https://github.com/nielstron
+[@ollo69]: https://github.com/ollo69
+[@oxan]: https://github.com/oxan
+[@pdcemulator]: https://github.com/pdcemulator
+[@posixx]: https://github.com/posixx
+[@ppetru]: https://github.com/ppetru
+[@pszafer]: https://github.com/pszafer
+[@pvizeli]: https://github.com/pvizeli
+[@r-t-s]: https://github.com/r-t-s
+[@rajlaud]: https://github.com/rajlaud
+[@raman325]: https://github.com/raman325
+[@rdfurman]: https://github.com/rdfurman
+[@rjulius23]: https://github.com/rjulius23
+[@rutkai]: https://github.com/rutkai
+[@rytilahti]: https://github.com/rytilahti
+[@samueltardieu]: https://github.com/samueltardieu
+[@scop]: https://github.com/scop
+[@serenewaffles]: https://github.com/serenewaffles
+[@slovdahl]: https://github.com/slovdahl
+[@squishykid]: https://github.com/squishykid
+[@starkillerOG]: https://github.com/starkillerOG
+[@thomasloven]: https://github.com/thomasloven
+[@timmo001]: https://github.com/timmo001
+[@tkdrob]: https://github.com/tkdrob
+[@yuvalabou]: https://github.com/yuvalabou
+[@zhulik]: https://github.com/zhulik
+[@zoeisnowooze]: https://github.com/zoeisnowooze
+[abode docs]: /integrations/abode/
+[actiontec docs]: /integrations/actiontec/
+[adax docs]: /integrations/adax/
+[adguard docs]: /integrations/adguard/
+[advantage_air docs]: /integrations/advantage_air/
+[aemet docs]: /integrations/aemet/
+[airly docs]: /integrations/airly/
+[airtouch4 docs]: /integrations/airtouch4/
+[airvisual docs]: /integrations/airvisual/
+[alarm_control_panel docs]: /integrations/alarm_control_panel/
+[alexa docs]: /integrations/alexa/
+[almond docs]: /integrations/almond/
+[ambient_station docs]: /integrations/ambient_station/
+[amcrest docs]: /integrations/amcrest/
+[analytics docs]: /integrations/analytics/
+[anthemav docs]: /integrations/anthemav/
+[api docs]: /integrations/api/
+[apprise docs]: /integrations/apprise/
+[arlo docs]: /integrations/arlo/
+[asuswrt docs]: /integrations/asuswrt/
+[atag docs]: /integrations/atag/
+[atome docs]: /integrations/atome/
+[august docs]: /integrations/august/
+[azure_event_hub docs]: /integrations/azure_event_hub/
+[bbox docs]: /integrations/bbox/
+[binary_sensor docs]: /integrations/binary_sensor/
+[bitcoin docs]: /integrations/bitcoin/
+[blink docs]: /integrations/blink/
+[bme280 docs]: /integrations/bme280/
+[bme680 docs]: /integrations/bme680/
+[bond docs]: /integrations/bond/
+[broadlink docs]: /integrations/broadlink/
+[buienradar docs]: /integrations/buienradar/
+[camera docs]: /integrations/camera/
+[cloudflare docs]: /integrations/cloudflare/
+[coinbase docs]: /integrations/coinbase/
+[comed_hourly_pricing docs]: /integrations/comed_hourly_pricing/
+[config docs]: /integrations/config/
+[danfoss_air docs]: /integrations/danfoss_air/
+[debugpy docs]: /integrations/debugpy/
+[deconz docs]: /integrations/deconz/
+[default_config docs]: /integrations/default_config/
+[deluge docs]: /integrations/deluge/
+[demo docs]: /integrations/demo/
+[device_automation docs]: /integrations/device_automation/
+[devolo_home_control docs]: /integrations/devolo_home_control/
+[dht docs]: /integrations/dht/
+[directv docs]: /integrations/directv/
+[dlna_dmr docs]: /integrations/dlna_dmr/
+[dovado docs]: /integrations/dovado/
+[dsmr docs]: /integrations/dsmr/
+[dsmr_reader docs]: /integrations/dsmr_reader/
+[ecobee docs]: /integrations/ecobee/
+[edl21 docs]: /integrations/edl21/
+[emoncms docs]: /integrations/emoncms/
+[emonitor docs]: /integrations/emonitor/
+[emulated_kasa docs]: /integrations/emulated_kasa/
+[energy docs]: /integrations/energy/
+[enocean docs]: /integrations/enocean/
+[enphase_envoy docs]: /integrations/enphase_envoy/
+[envirophat docs]: /integrations/envirophat/
+[epson docs]: /integrations/epson/
+[esphome docs]: /integrations/esphome/
+[fido docs]: /integrations/fido/
+[filter docs]: /integrations/filter/
+[fints docs]: /integrations/fints/
+[fjaraskupan docs]: /integrations/fjaraskupan/
+[flexit docs]: /integrations/flexit/
+[flipr docs]: /integrations/flipr/
+[flunearyou docs]: /integrations/flunearyou/
+[folder_watcher docs]: /integrations/folder_watcher/
+[foobot docs]: /integrations/foobot/
+[forecast_solar docs]: /integrations/forecast_solar/
+[fritz docs]: /integrations/fritz/
+[fritzbox docs]: /integrations/fritzbox/
+[fronius docs]: /integrations/fronius/
+[frontend docs]: /integrations/frontend/
+[gc100 docs]: /integrations/gc100/
+[gios docs]: /integrations/gios/
+[github docs]: /integrations/github/
+[goalzero docs]: /integrations/goalzero/
+[google docs]: /integrations/google/
+[google_assistant docs]: /integrations/google_assistant/
+[google_maps docs]: /integrations/google_maps/
+[google_pubsub docs]: /integrations/google_pubsub/
+[google_wifi docs]: /integrations/google_wifi/
+[group docs]: /integrations/group/
+[growatt_server docs]: /integrations/growatt_server/
+[gtfs docs]: /integrations/gtfs/
+[guardian docs]: /integrations/guardian/
+[hassio docs]: /integrations/hassio/
+[hdmi_cec docs]: /integrations/hdmi_cec/
+[history docs]: /integrations/history/
+[homeassistant docs]: /integrations/homeassistant/
+[homekit docs]: /integrations/homekit/
+[homekit_controller docs]: /integrations/homekit_controller/
+[homematic docs]: /integrations/homematic/
+[homematicip_cloud docs]: /integrations/homematicip_cloud/
+[honeywell docs]: /integrations/honeywell/
+[http docs]: /integrations/http/
+[htu21d docs]: /integrations/htu21d/
+[huawei_lte docs]: /integrations/huawei_lte/
+[hue docs]: /integrations/hue/
+[image_processing docs]: /integrations/image_processing/
+[integration docs]: /integrations/integration/
+[ios docs]: /integrations/ios/
+[ipp docs]: /integrations/ipp/
+[iqvia docs]: /integrations/iqvia/
+[jewish_calendar docs]: /integrations/jewish_calendar/
+[juicenet docs]: /integrations/juicenet/
+[keba docs]: /integrations/keba/
+[knx docs]: /integrations/knx/
+[kostal_plenticore docs]: /integrations/kostal_plenticore/
+[launch_library docs]: /integrations/launch_library/
+[light docs]: /integrations/light/
+[logi_circle docs]: /integrations/logi_circle/
+[lutron docs]: /integrations/lutron/
+[lyric docs]: /integrations/lyric/
+[magicseaweed docs]: /integrations/magicseaweed/
+[manual_mqtt docs]: /integrations/manual_mqtt/
+[marytts docs]: /integrations/marytts/
+[matrix docs]: /integrations/matrix/
+[melcloud docs]: /integrations/melcloud/
+[mhz19 docs]: /integrations/mhz19/
+[miflora docs]: /integrations/miflora/
+[mill docs]: /integrations/mill/
+[mitemp_bt docs]: /integrations/mitemp_bt/
+[modbus docs]: /integrations/modbus/
+[motioneye docs]: /integrations/motioneye/
+[mqtt docs]: /integrations/mqtt/
+[myq docs]: /integrations/myq/
+[mysensors docs]: /integrations/mysensors/
+[nam docs]: /integrations/nam/
+[nanoleaf docs]: /integrations/nanoleaf/
+[neato docs]: /integrations/neato/
+[nest docs]: /integrations/nest/
+[netatmo docs]: /integrations/netatmo/
+[netio docs]: /integrations/netio/
+[network docs]: /integrations/network/
+[nextbus docs]: /integrations/nextbus/
+[nmap_tracker docs]: /integrations/nmap_tracker/
+[norway_air docs]: /integrations/norway_air/
+[notion docs]: /integrations/notion/
+[number docs]: /integrations/number/
+[nut docs]: /integrations/nut/
+[nzbget docs]: /integrations/nzbget/
+[ombi docs]: /integrations/ombi/
+[onewire docs]: /integrations/onewire/
+[openevse docs]: /integrations/openevse/
+[openuv docs]: /integrations/openuv/
+[ovo_energy docs]: /integrations/ovo_energy/
+[p1_monitor docs]: /integrations/p1_monitor/
+[panasonic_viera docs]: /integrations/panasonic_viera/
+[philips_js docs]: /integrations/philips_js/
+[pi_hole docs]: /integrations/pi_hole/
+[pilight docs]: /integrations/pilight/
+[plex docs]: /integrations/plex/
+[point docs]: /integrations/point/
+[powerwall docs]: /integrations/powerwall/
+[prometheus docs]: /integrations/prometheus/
+[prosegur docs]: /integrations/prosegur/
+[proxmoxve docs]: /integrations/proxmoxve/
+[pushbullet docs]: /integrations/pushbullet/
+[pvoutput docs]: /integrations/pvoutput/
+[python_script docs]: /integrations/python_script/
+[qbittorrent docs]: /integrations/qbittorrent/
+[rachio docs]: /integrations/rachio/
+[radarr docs]: /integrations/radarr/
+[rainforest_eagle docs]: /integrations/rainforest_eagle/
+[rainmachine docs]: /integrations/rainmachine/
+[recorder docs]: /integrations/recorder/
+[reddit docs]: /integrations/reddit/
+[renault docs]: /integrations/renault/
+[rfxtrx docs]: /integrations/rfxtrx/
+[ring docs]: /integrations/ring/
+[rituals_perfume_genie docs]: /integrations/rituals_perfume_genie/
+[roomba docs]: /integrations/roomba/
+[rtorrent docs]: /integrations/rtorrent/
+[sabnzbd docs]: /integrations/sabnzbd/
+[saj docs]: /integrations/saj/
+[script docs]: /integrations/script/
+[select docs]: /integrations/select/
+[sense docs]: /integrations/sense/
+[sensehat docs]: /integrations/sensehat/
+[sensor docs]: /integrations/sensor/
+[sesame docs]: /integrations/sesame/
+[shelly docs]: /integrations/shelly/
+[shopping_list docs]: /integrations/shopping_list/
+[sht31 docs]: /integrations/sht31/
+[simplisafe docs]: /integrations/simplisafe/
+[siren docs]: /integrations/siren/
+[sma docs]: /integrations/sma/
+[smappee docs]: /integrations/smappee/
+[smart_meter_texas docs]: /integrations/smart_meter_texas/
+[smartthings docs]: /integrations/smartthings/
+[smarty docs]: /integrations/smarty/
+[sms docs]: /integrations/sms/
+[solaredge docs]: /integrations/solaredge/
+[solaredge_local docs]: /integrations/solaredge_local/
+[solarlog docs]: /integrations/solarlog/
+[solax docs]: /integrations/solax/
+[sonos docs]: /integrations/sonos/
+[speedtestdotnet docs]: /integrations/speedtestdotnet/
+[spider docs]: /integrations/spider/
+[sql docs]: /integrations/sql/
+[squeezebox docs]: /integrations/squeezebox/
+[ssdp docs]: /integrations/ssdp/
+[starline docs]: /integrations/starline/
+[startca docs]: /integrations/startca/
+[stream docs]: /integrations/stream/
+[surepetcare docs]: /integrations/surepetcare/
+[switchbot docs]: /integrations/switchbot/
+[switcher_kis docs]: /integrations/switcher_kis/
+[syncthru docs]: /integrations/syncthru/
+[synology_dsm docs]: /integrations/synology_dsm/
+[synology_srm docs]: /integrations/synology_srm/
+[system_bridge docs]: /integrations/system_bridge/
+[tado docs]: /integrations/tado/
+[tasmota docs]: /integrations/tasmota/
+[tautulli docs]: /integrations/tautulli/
+[temper docs]: /integrations/temper/
+[template docs]: /integrations/template/
+[thinkingcleaner docs]: /integrations/thinkingcleaner/
+[tibber docs]: /integrations/tibber/
+[timer docs]: /integrations/timer/
+[todoist docs]: /integrations/todoist/
+[toon docs]: /integrations/toon/
+[tplink docs]: /integrations/tplink/
+[traccar docs]: /integrations/traccar/
+[tractive docs]: /integrations/tractive/
+[tradfri docs]: /integrations/tradfri/
+[trafikverket_weatherstation docs]: /integrations/trafikverket_weatherstation/
+[transmission docs]: /integrations/transmission/
+[travisci docs]: /integrations/travisci/
+[tuya docs]: /integrations/tuya/
+[universal docs]: /integrations/universal/
+[upcloud docs]: /integrations/upcloud/
+[updater docs]: /integrations/updater/
+[upnp docs]: /integrations/upnp/
+[uptimerobot docs]: /integrations/uptimerobot/
+[usb docs]: /integrations/usb/
+[utility_meter docs]: /integrations/utility_meter/
+[vallox docs]: /integrations/vallox/
+[velbus docs]: /integrations/velbus/
+[version docs]: /integrations/version/
+[volkszaehler docs]: /integrations/volkszaehler/
+[volumio docs]: /integrations/volumio/
+[watson_tts docs]: /integrations/watson_tts/
+[webostv docs]: /integrations/webostv/
+[wemo docs]: /integrations/wemo/
+[wink docs]: /integrations/wink/
+[wirelesstag docs]: /integrations/wirelesstag/
+[withings docs]: /integrations/withings/
+[xiaomi_miio docs]: /integrations/xiaomi_miio/
+[yamaha docs]: /integrations/yamaha/
+[yamaha_musiccast docs]: /integrations/yamaha_musiccast/
+[yeelight docs]: /integrations/yeelight/
+[youless docs]: /integrations/youless/
+[zamg docs]: /integrations/zamg/
+[zeroconf docs]: /integrations/zeroconf/
+[zerproc docs]: /integrations/zerproc/
+[zha docs]: /integrations/zha/
+[zwave_js docs]: /integrations/zwave_js/