diff --git a/CODEOWNERS b/CODEOWNERS index 5732fbb0b0d..e588a7e6614 100644 --- a/CODEOWNERS +++ b/CODEOWNERS @@ -117,7 +117,7 @@ source/_integrations/bluetooth_adapters.markdown @bdraco source/_integrations/bmw_connected_drive.markdown @gerard33 @rikroe source/_integrations/bond.markdown @bdraco @prystupa @joshs85 @marciogranzotto source/_integrations/bosch_shc.markdown @tschamm -source/_integrations/brandt.markdown @imicknl @vlebourl @tetienne @nyroDev @tronix117 @alexfp14 +source/_integrations/brandt.markdown @imicknl source/_integrations/braviatv.markdown @bieniu @Drafteed source/_integrations/brel_home.markdown @starkillerOG source/_integrations/bring.markdown @miaucl @tr4nt0r @@ -166,7 +166,7 @@ source/_integrations/coolmaster.markdown @OnFreund source/_integrations/counter.markdown @fabaff source/_integrations/cover.markdown @home-assistant/core source/_integrations/cover.template.markdown @home-assistant/core -source/_integrations/cozytouch.markdown @imicknl @vlebourl @tetienne @nyroDev @tronix117 @alexfp14 +source/_integrations/cozytouch.markdown @imicknl source/_integrations/cpuspeed.markdown @fabaff source/_integrations/cribl.markdown @Bre77 source/_integrations/crownstone.markdown @Crownstone @RicArch97 @@ -178,6 +178,7 @@ source/_integrations/datetime.markdown @home-assistant/core source/_integrations/deako.markdown @sebirdman @balake @deakolights source/_integrations/debugpy.markdown @frenck source/_integrations/deconz.markdown @Kane610 +source/_integrations/decorquip.markdown @starkillerOG source/_integrations/default_config.markdown @home-assistant/core source/_integrations/delijn.markdown @bollewolle @Emilv2 source/_integrations/delmarva.markdown @tronikos @@ -279,7 +280,7 @@ source/_integrations/fitbit.markdown @allenporter source/_integrations/fivem.markdown @Sander0542 source/_integrations/fjaraskupan.markdown @elupus source/_integrations/flexit_bacnet.markdown @lellky @piotrbulinski -source/_integrations/flexom.markdown @imicknl @vlebourl @tetienne @nyroDev @tronix117 @alexfp14 +source/_integrations/flexom.markdown @imicknl source/_integrations/flick_electric.markdown @ZephireNZ source/_integrations/flipr.markdown @cnico source/_integrations/flo.markdown @dmulcahey @@ -325,6 +326,7 @@ source/_integrations/google.markdown @allenporter source/_integrations/google_assistant.markdown @home-assistant/cloud source/_integrations/google_assistant_sdk.markdown @tronikos source/_integrations/google_cloud.markdown @lufton @tronikos +source/_integrations/google_drive.markdown @tronikos source/_integrations/google_generative_ai_conversation.markdown @tronikos source/_integrations/google_mail.markdown @tkdrob source/_integrations/google_photos.markdown @allenporter @@ -341,6 +343,7 @@ source/_integrations/guardian.markdown @bachya source/_integrations/habitica.markdown @tr4nt0r source/_integrations/hardware.markdown @home-assistant/core source/_integrations/harmony.markdown @ehendrix23 @bdraco @mkeesey @Aohzan +source/_integrations/harvey.markdown @Jordi1990 source/_integrations/hassio.markdown @home-assistant/supervisor source/_integrations/havana_shade.markdown @starkillerOG source/_integrations/hdmi_cec.markdown @inytar @@ -348,8 +351,8 @@ source/_integrations/heatmiser.markdown @andylockran source/_integrations/heiwa.markdown @cmroche source/_integrations/heos.markdown @andrewsayre source/_integrations/here_travel_time.markdown @eifinger -source/_integrations/hexaom.markdown @imicknl @vlebourl @tetienne @nyroDev @tronix117 @alexfp14 -source/_integrations/hi_kumo.markdown @imicknl @vlebourl @tetienne @nyroDev @tronix117 @alexfp14 +source/_integrations/hexaom.markdown @imicknl +source/_integrations/hi_kumo.markdown @imicknl source/_integrations/hikvision.markdown @mezz64 source/_integrations/hikvisioncam.markdown @fbradyirl source/_integrations/hisense_aehw4a1.markdown @bannhead @@ -366,6 +369,7 @@ source/_integrations/homeassistant_green.markdown @home-assistant/core source/_integrations/homeassistant_hardware.markdown @home-assistant/core source/_integrations/homeassistant_sky_connect.markdown @home-assistant/core source/_integrations/homeassistant_yellow.markdown @home-assistant/core +source/_integrations/homee.markdown @Taraman17 source/_integrations/homekit.markdown @bdraco source/_integrations/homekit_controller.markdown @Jc2k @bdraco source/_integrations/homematic.markdown @pvizeli @@ -389,9 +393,9 @@ source/_integrations/hyperion.markdown @dermotduffy source/_integrations/ialarm.markdown @RyuzakiKK source/_integrations/iammeter.markdown @lewei50 source/_integrations/iaqualink.markdown @flz -source/_integrations/ibeacon.markdown @bdraco source/_integrations/icloud.markdown @Quentame @nzapponi source/_integrations/idasen_desk.markdown @abmantis +source/_integrations/igloohome.markdown @keithle888 source/_integrations/ign_sismologia.markdown @exxamalte source/_integrations/image.markdown @home-assistant/core source/_integrations/image_processing.markdown @home-assistant/core @@ -470,6 +474,7 @@ source/_integrations/leaone.markdown @bdraco source/_integrations/led_ble.markdown @bdraco source/_integrations/legrand.markdown @cgtobi source/_integrations/lektrico.markdown @lektrico +source/_integrations/letpot.markdown @jpelgrom source/_integrations/leviton_z_wave.markdown @home-assistant/z-wave source/_integrations/lg_netcast.markdown @Drafteed @splinter98 source/_integrations/lg_thinq.markdown @LG-ThinQ-Integration @@ -506,6 +511,8 @@ source/_integrations/martec.markdown @starkillerOG source/_integrations/mastodon.markdown @fabaff @andrew-codechimp source/_integrations/matrix.markdown @PaarthShah source/_integrations/matter.markdown @home-assistant/matter +source/_integrations/mcp.markdown @allenporter +source/_integrations/mcp_server.markdown @allenporter source/_integrations/mealie.markdown @joostlek @andrew-codechimp source/_integrations/meater.markdown @Sotolotl @emontnemery source/_integrations/medcom_ble.markdown @elafargue @@ -566,7 +573,7 @@ source/_integrations/netgear.markdown @hacf-fr @Quentame @starkillerOG source/_integrations/netgear_lte.markdown @tkdrob source/_integrations/network.markdown @home-assistant/core source/_integrations/nexia.markdown @bdraco -source/_integrations/nexity.markdown @imicknl @vlebourl @tetienne @nyroDev @tronix117 @alexfp14 +source/_integrations/nexity.markdown @imicknl source/_integrations/nextbus.markdown @vividboarder source/_integrations/nextcloud.markdown @mib1185 source/_integrations/nextdns.markdown @bieniu @@ -578,7 +585,6 @@ source/_integrations/niko_home_control.markdown @VandeurenGlenn source/_integrations/nilu.markdown @hfurubotten source/_integrations/nina.markdown @DeerMaximum source/_integrations/nissan_leaf.markdown @filcole -source/_integrations/nmbs.markdown @thibmaek source/_integrations/noaa_tides.markdown @jdelaney72 source/_integrations/nobo_hub.markdown @echoromeo @oyvindwe source/_integrations/nordpool.markdown @gjohansson-ST @@ -605,9 +611,10 @@ source/_integrations/ombi.markdown @larssont source/_integrations/onboarding.markdown @home-assistant/core source/_integrations/oncue.markdown @bdraco @peterager source/_integrations/ondilo_ico.markdown @JeromeHXP +source/_integrations/onedrive.markdown @zweckj source/_integrations/onewire.markdown @garbled1 @epenet source/_integrations/onkyo.markdown @arturpragacz @eclair4151 -source/_integrations/onvif.markdown @hunterjm +source/_integrations/onvif.markdown @hunterjm @jterrace source/_integrations/open_meteo.markdown @frenck source/_integrations/openai_conversation.markdown @balloob source/_integrations/openerz.markdown @misialq @@ -626,7 +633,8 @@ source/_integrations/oru_opower.markdown @tronikos source/_integrations/osoenergy.markdown @osohotwateriot source/_integrations/otbr.markdown @home-assistant/core source/_integrations/ourgroceries.markdown @OnFreund -source/_integrations/overkiz.markdown @imicknl @vlebourl @tetienne @nyroDev @tronix117 @alexfp14 +source/_integrations/overkiz.markdown @imicknl +source/_integrations/overseerr.markdown @joostlek source/_integrations/ovo_energy.markdown @timmo001 source/_integrations/p1_monitor.markdown @klaasnicolaas source/_integrations/palazzetti.markdown @dotvav @@ -648,7 +656,7 @@ source/_integrations/ping.markdown @jpbede source/_integrations/piper.markdown @balloob @synesthesiam source/_integrations/plaato.markdown @JohNan source/_integrations/plex.markdown @jjlawren -source/_integrations/plugwise.markdown @CoMPaTech @bouwew @frenck +source/_integrations/plugwise.markdown @CoMPaTech @bouwew source/_integrations/plum_lightpad.markdown @ColinHarrington @prystupa source/_integrations/point.markdown @fredrike source/_integrations/poolsense.markdown @haemishkyd @@ -709,7 +717,7 @@ source/_integrations/reolink.markdown @starkillerOG source/_integrations/repairs.markdown @home-assistant/core source/_integrations/repetier.markdown @ShadowBr0ther source/_integrations/rest_command.markdown @jpbede -source/_integrations/rexel.markdown @imicknl @vlebourl @tetienne @nyroDev @tronix117 @alexfp14 +source/_integrations/rexel.markdown @imicknl source/_integrations/rflink.markdown @javicalle source/_integrations/rfxtrx.markdown @danielhiversen @elupus @RobBie1221 source/_integrations/rhasspy.markdown @balloob @synesthesiam @@ -718,7 +726,7 @@ source/_integrations/ring.markdown @sdb9696 source/_integrations/risco.markdown @OnFreund source/_integrations/rituals_perfume_genie.markdown @milanmeu @frenck source/_integrations/rmvtransport.markdown @cgtobi -source/_integrations/roborock.markdown @Lash-L +source/_integrations/roborock.markdown @Lash-L @allenporter source/_integrations/roku.markdown @ctalkington source/_integrations/romy.markdown @xeniter source/_integrations/roomba.markdown @pschmitt @cyr-ius @shenxn @Orhideous @@ -727,6 +735,7 @@ source/_integrations/rpi_power.markdown @shenxn @swetoast source/_integrations/rss_feed_template.markdown @home-assistant/core source/_integrations/ruckus_unleashed.markdown @lanrat @ms264556 @gabe565 source/_integrations/russound_rio.markdown @noahhusby +source/_integrations/russound_rnet.markdown @noahhusby source/_integrations/ruuvi_gateway.markdown @akx source/_integrations/ruuvitag_ble.markdown @akx source/_integrations/rympro.markdown @OnFreund @elad-bar @maorcc @@ -772,7 +781,7 @@ source/_integrations/simplefin.markdown @scottg489 @jeeftor source/_integrations/simplepush.markdown @engrbm87 source/_integrations/simplisafe.markdown @bachya source/_integrations/simply_automated.markdown @gwww -source/_integrations/simu.markdown @imicknl @vlebourl @tetienne @nyroDev @tronix117 @alexfp14 +source/_integrations/simu.markdown @imicknl source/_integrations/sinch.markdown @bendikrb source/_integrations/siren.markdown @home-assistant/core @raman325 source/_integrations/sisyphus.markdown @jkeljo @@ -784,7 +793,7 @@ source/_integrations/sleepiq.markdown @mfugate1 @kbickar source/_integrations/slide.markdown @ualex73 source/_integrations/slide_local.markdown @dontinelli source/_integrations/slimproto.markdown @marcelveldt -source/_integrations/sma.markdown @kellerza @rklomp +source/_integrations/sma.markdown @kellerza @rklomp @erwindouna source/_integrations/smappee.markdown @bsmappee source/_integrations/smart_blinds.markdown @starkillerOG source/_integrations/smart_home.markdown @starkillerOG @@ -802,9 +811,9 @@ source/_integrations/snooz.markdown @AustinBrunkhorst source/_integrations/solaredge.markdown @frenck @bdraco source/_integrations/solaredge_local.markdown @drobtravels @scheric source/_integrations/solarlog.markdown @Ernst79 @dontinelli -source/_integrations/solax.markdown @squishykid +source/_integrations/solax.markdown @squishykid @Darsstar source/_integrations/soma.markdown @ratsept @sebfortier2288 -source/_integrations/somfy.markdown @imicknl @vlebourl @tetienne @nyroDev @tronix117 @alexfp14 +source/_integrations/somfy.markdown @imicknl source/_integrations/sonarr.markdown @ctalkington source/_integrations/songpal.markdown @rytilahti @shenxn source/_integrations/sonos.markdown @jjlawren @peterager @@ -849,7 +858,7 @@ source/_integrations/synology_dsm.markdown @hacf-fr @Quentame @mib1185 source/_integrations/synology_srm.markdown @aerialls source/_integrations/system_bridge.markdown @timmo001 source/_integrations/systemmonitor.markdown @gjohansson-ST -source/_integrations/tado.markdown @chiefdragon @erwindouna +source/_integrations/tado.markdown @erwindouna source/_integrations/tag.markdown @balloob @dmulcahey source/_integrations/tailscale.markdown @frenck source/_integrations/tailwind.markdown @frenck @@ -899,11 +908,11 @@ source/_integrations/transmission.markdown @engrbm87 @JPHutchins source/_integrations/trend.markdown @jpbede source/_integrations/triggercmd.markdown @rvmey source/_integrations/tts.markdown @home-assistant/core -source/_integrations/tuya.markdown @Tuya @zlinoliver @frenck +source/_integrations/tuya.markdown @Tuya @zlinoliver source/_integrations/twentemilieu.markdown @frenck source/_integrations/twinkly.markdown @dr1rrb @Robbie1221 @Olen source/_integrations/twitch.markdown @joostlek -source/_integrations/ubiwizz.markdown @imicknl @vlebourl @tetienne @nyroDev @tronix117 @alexfp14 +source/_integrations/ubiwizz.markdown @imicknl source/_integrations/ukraine_alarm.markdown @PaulAnnekov source/_integrations/unifi.markdown @Kane610 source/_integrations/unifi_direct.markdown @tofuSCHNITZEL @@ -926,12 +935,12 @@ source/_integrations/vacuum.template.markdown @home-assistant/core source/_integrations/vallox.markdown @andre-richter @slovdahl @viiru- @yozik04 source/_integrations/valve.markdown @home-assistant/core source/_integrations/velbus.markdown @Cereal2nd @brefra -source/_integrations/velux.markdown @Julius2342 @DeerMaximum +source/_integrations/velux.markdown @Julius2342 @DeerMaximum @pawlizio source/_integrations/venstar.markdown @garbled1 @jhollowe source/_integrations/vermont_castings.markdown @jeeftor source/_integrations/versasense.markdown @imstevenxyz source/_integrations/version.markdown @ludeeus -source/_integrations/vesync.markdown @markperdue @webdjoe @thegardenmonkey @cdnninja +source/_integrations/vesync.markdown @markperdue @webdjoe @thegardenmonkey @cdnninja @iprak source/_integrations/vicare.markdown @CFenner source/_integrations/vilfo.markdown @ManneW source/_integrations/vivotek.markdown @HarlemSquirrel diff --git a/Gemfile b/Gemfile index 70754ef2bb1..1acd0c2a3f6 100644 --- a/Gemfile +++ b/Gemfile @@ -4,15 +4,15 @@ ruby '> 2.5.0' group :development do gem 'rake', '13.2.1' - gem 'jekyll', '4.4.0' + gem 'jekyll', '4.4.1' gem 'compass', '1.0.3' gem 'sass-globbing', '1.1.5' gem 'stringex', '2.8.6' # > 2.1.0 causes slowdowns https://github.com/sass/sassc-ruby/issues/189 gem 'sassc', '2.1.0' gem 'sass-embedded', '1.83.4' - gem 'rubocop', '1.71.0' - gem 'ruby-lsp', '0.23.7' + gem 'rubocop', '1.71.2' + gem 'ruby-lsp', '0.23.8' gem 'rackup', '2.2.1' end diff --git a/Gemfile.lock b/Gemfile.lock index db09ce29c3f..2f024225dd9 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -39,7 +39,7 @@ GEM http_parser.rb (0.8.0) i18n (1.14.7) concurrent-ruby (~> 1.0) - jekyll (4.4.0) + jekyll (4.4.1) addressable (~> 2.4) base64 (~> 0.2) colorator (~> 1.0) @@ -61,8 +61,8 @@ GEM jekyll-commonmark (1.4.0) commonmarker (~> 0.22) jekyll-paginate (1.1.0) - jekyll-sass-converter (3.0.0) - sass-embedded (~> 1.54) + jekyll-sass-converter (3.1.0) + sass-embedded (~> 1.75) jekyll-sitemap (1.4.0) jekyll (>= 3.7, < 5.0) jekyll-toc (0.19.0) @@ -98,7 +98,7 @@ GEM prism (1.3.0) public_suffix (6.0.1) racc (1.8.1) - rack (3.1.8) + rack (3.1.9) rack-protection (4.1.1) base64 (>= 0.1.0) logger (>= 1.6.0) @@ -118,19 +118,19 @@ GEM regexp_parser (2.10.0) rexml (3.4.0) rouge (4.5.1) - rubocop (1.71.0) + rubocop (1.71.2) json (~> 2.3) language_server-protocol (>= 3.17.0) parallel (~> 1.10) parser (>= 3.3.0.2) rainbow (>= 2.2.2, < 4.0) regexp_parser (>= 2.9.3, < 3.0) - rubocop-ast (>= 1.36.2, < 2.0) + rubocop-ast (>= 1.38.0, < 2.0) ruby-progressbar (~> 1.7) unicode-display_width (>= 2.4.0, < 4.0) rubocop-ast (1.38.0) parser (>= 3.3.1.0) - ruby-lsp (0.23.7) + ruby-lsp (0.23.8) language_server-protocol (~> 3.17.0) prism (>= 1.2, < 2.0) rbs (>= 3, < 4) @@ -156,7 +156,7 @@ GEM rack-protection (= 4.1.1) rack-session (>= 2.0.0, < 3) tilt (~> 2.0) - sorbet-runtime (0.5.11787) + sorbet-runtime (0.5.11801) stringex (2.8.6) terminal-table (3.0.2) unicode-display_width (>= 1.1.1, < 3) @@ -174,7 +174,7 @@ PLATFORMS DEPENDENCIES compass (= 1.0.3) - jekyll (= 4.4.0) + jekyll (= 4.4.1) jekyll-commonmark (= 1.4.0) jekyll-paginate (= 1.1.0) jekyll-sitemap (= 1.4.0) @@ -182,8 +182,8 @@ DEPENDENCIES nokogiri (= 1.18.2) rackup (= 2.2.1) rake (= 13.2.1) - rubocop (= 1.71.0) - ruby-lsp (= 0.23.7) + rubocop (= 1.71.2) + ruby-lsp (= 0.23.8) sass-embedded (= 1.83.4) sass-globbing (= 1.1.5) sassc (= 2.1.0) diff --git a/_config.yml b/_config.yml index 440c5d549db..726af9c9efb 100644 --- a/_config.yml +++ b/_config.yml @@ -107,9 +107,9 @@ social: # Home Assistant release details current_major_version: 2025 -current_minor_version: 1 -current_patch_version: 4 -date_released: 2025-01-24 +current_minor_version: 2 +current_patch_version: 0 +date_released: 2025-02-05 # 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/sass/homeassistant/aside/_buy_dialog.scss b/sass/homeassistant/aside/_buy_dialog.scss index b332365be81..5700b4f94dd 100644 --- a/sass/homeassistant/aside/_buy_dialog.scss +++ b/sass/homeassistant/aside/_buy_dialog.scss @@ -195,7 +195,6 @@ font-size: 10px; height: 14px; line-height: 1; - overflow: hidden; white-space: nowrap; } @@ -216,4 +215,4 @@ } } } -} \ No newline at end of file +} diff --git a/source/_data/products.yml b/source/_data/products.yml index b72fb446bdf..c110c712e8b 100644 --- a/source/_data/products.yml +++ b/source/_data/products.yml @@ -1,5 +1,3 @@ -# Flags rendered via https://flagpedia.net/ -# ship_from accepts ISO 3166 country code green: name: "Home Assistant Green" distributors: @@ -446,4 +444,9 @@ voice-pe: ship_from: UK ship_to: Europe url: https://shop.everythingsmart.io/products/home-assistant-voice-preview-edition - logo: /images/distributors/est.webp \ No newline at end of file + logo: /images/distributors/est.webp + - name: Pimoroni + ship_from: UK + ship_to: Europe + url: https://shop.pimoroni.com/products/home-assistant-voice + logo: /images/distributors/pimoroni.webp diff --git a/source/_docs/tools/hass.markdown b/source/_docs/tools/hass.markdown index ba270068b56..d3517c577e3 100644 --- a/source/_docs/tools/hass.markdown +++ b/source/_docs/tools/hass.markdown @@ -5,8 +5,9 @@ description: "Description of hass." The command-line part of Home Assistant is `hass`. +This tool is only available to users of the Home Assistant Core installation method. It is started from the command line on the computer running Home Assistant Core (accessed perhaps via SSH). -```bash +```text $ hass -h usage: hass [-h] [--version] [-c path_to_config_dir] [--safe-mode] [--debug] [--open-ui] [--skip-pip] [-v] [--log-rotate-days LOG_ROTATE_DAYS] diff --git a/source/_integrations/airthings.markdown b/source/_integrations/airthings.markdown index 6729d81763a..59730db89c7 100644 --- a/source/_integrations/airthings.markdown +++ b/source/_integrations/airthings.markdown @@ -30,7 +30,7 @@ Airthings API setup (needed to acquire the required ID and Secret for the Home A 1. Login [here](https://dashboard.airthings.com/integrations/api-integration) to find your credentials. 2. Select [Integrations](https://dashboard.airthings.com/integrations/api-integration) from the left side-bar. 3. Click on "Request API Client" in order to set up an API connection. -4. Name your API connection ie. "Home Assistant Integration". +4. Name your API connection (e.g., "Home Assistant"). Note: The name field has a character limit and longer names will be truncated. 5. Give the connection an accurate description. 6. Select a Resource Scope. 7. Select an access Type, i.e., Confidential. diff --git a/source/_integrations/airthings_ble.markdown b/source/_integrations/airthings_ble.markdown index afc98831f27..edff202e71d 100644 --- a/source/_integrations/airthings_ble.markdown +++ b/source/_integrations/airthings_ble.markdown @@ -40,6 +40,7 @@ This integration uses the last 6 digits of the serial number. - Wave Radon - Wave Mini - Wave Plus +- Wave Enhance ## Sensors diff --git a/source/_integrations/balboa.markdown b/source/_integrations/balboa.markdown index 64778abf60e..72e7dd5984c 100644 --- a/source/_integrations/balboa.markdown +++ b/source/_integrations/balboa.markdown @@ -21,6 +21,7 @@ ha_codeowners: - '@natekspencer' ha_config_flow: true ha_integration_type: integration +ha_dhcp: true --- The **Balboa Spa Client** {% term integration %} adds support for [Balboa](https://www.balboawatergroup.com/) Spa WiFi Modules to be used within Home Assistant. diff --git a/source/_integrations/bang_olufsen.markdown b/source/_integrations/bang_olufsen.markdown index e0eca6154f3..50f59deae51 100644 --- a/source/_integrations/bang_olufsen.markdown +++ b/source/_integrations/bang_olufsen.markdown @@ -2,16 +2,16 @@ title: Bang & Olufsen description: Instructions on how to integrate Bang & Olufsen devices into Home Assistant. ha_category: + - Event - Media Player - Multimedia - - Event ha_release: 2024.2 ha_iot_class: Local Push ha_domain: bang_olufsen ha_platforms: - diagnostics - - media_player - event + - media_player ha_codeowners: - '@mj23000' ha_config_flow: true diff --git a/source/_integrations/bluetooth.markdown b/source/_integrations/bluetooth.markdown index 64630462973..5e615a37e10 100644 --- a/source/_integrations/bluetooth.markdown +++ b/source/_integrations/bluetooth.markdown @@ -293,7 +293,13 @@ Bluetooth advertisement bundling reduces traffic between Home Assistant and the ### Improving connection times -The connection time and performance vary greatly based on the Bluetooth adapter and interference. The below adapters are listed from best-performing to worst-performing: +Connection time and performance vary greatly depending on the Bluetooth adapter and interference. + +{% warning %} +When switching to an adapter with better performance, disable the old, less performant adapters. The best signal and available connection slots are considered when making connections, and performance will be limited to the worst-performing adapter with the best signal to reach the remote device. +{% endwarning %} + +The below adapters are listed from best-performing to worst-performing: - [Ethernet-connected Bluetooth proxies](#remote-adapters-bluetooth-proxies) running ESPHome 2023.6.0 or later with [passive scanning](https://esphome.io/components/esp32_ble_tracker.html#configuration-variables) - [USB High performance adapter](#known-working-high-performance-adapters) with [passive scanning](#passive-scanning) diff --git a/source/_integrations/brandt.markdown b/source/_integrations/brandt.markdown index 27d629a104b..fb0fc4e9c3e 100644 --- a/source/_integrations/brandt.markdown +++ b/source/_integrations/brandt.markdown @@ -24,11 +24,6 @@ ha_supporting_integration: Overkiz ha_release: 2022.2 ha_codeowners: - '@imicknl' - - '@vlebourl' - - '@tetienne' - - '@nyroDev' - - '@tronix117' - - '@alexfp14' ha_config_flow: true ha_platforms: - alarm_control_panel diff --git a/source/_integrations/bticino.markdown b/source/_integrations/bticino.markdown index 36a08a851f0..77585f198f7 100644 --- a/source/_integrations/bticino.markdown +++ b/source/_integrations/bticino.markdown @@ -3,6 +3,7 @@ title: BTicino description: Connect and control your BTicino devices using the Netatmo integration ha_category: - Binary sensor + - Button - Camera - Climate - Cover @@ -24,6 +25,7 @@ ha_codeowners: ha_config_flow: true ha_platforms: - binary_sensor + - button - camera - climate - cover diff --git a/source/_integrations/bubendorff.markdown b/source/_integrations/bubendorff.markdown index 993fb43bdac..fc102ac0b13 100644 --- a/source/_integrations/bubendorff.markdown +++ b/source/_integrations/bubendorff.markdown @@ -3,6 +3,7 @@ title: Bubendorff description: Connect and control your Bubendorff devices using the Netatmo integration ha_category: - Binary sensor + - Button - Camera - Climate - Cover @@ -24,6 +25,7 @@ ha_codeowners: ha_config_flow: true ha_platforms: - binary_sensor + - button - camera - climate - cover diff --git a/source/_integrations/cloud.markdown b/source/_integrations/cloud.markdown index a3dc3111ea5..7bcc001f8ef 100644 --- a/source/_integrations/cloud.markdown +++ b/source/_integrations/cloud.markdown @@ -3,6 +3,8 @@ title: Home Assistant Cloud description: Enable the Home Assistant Cloud integration. ha_release: '0.60' ha_category: + - Backup + - Speech-to-text - Text-to-speech - Voice ha_iot_class: Cloud Push @@ -16,7 +18,7 @@ ha_platforms: ha_integration_type: system --- -The Home Assistant Cloud allows you to quickly integrate your local Home Assistant with various cloud services like Amazon Alexa and Google Assistant. [Learn more.](/cloud) +The Home Assistant Cloud allows you to quickly integrate your local Home Assistant with various cloud services like Amazon Alexa and Google Assistant. It also enables a secure remote connection, speech-to-text, text-to-speech, an offsite backup location, Webhooks support, and better WebRTC. [Learn more.](/cloud) ## Configuration @@ -29,7 +31,7 @@ cloud: Documentation of further configuration possibilities are located at [NabuCasa](https://www.nabucasa.com/config/) -Once activated, go to the configuration panel in Home Assistant and create an account and log in. If you are not seeing the **Settings** panel, make sure you have the following option enabled in your {% term "`configuration.yaml`" %} file. +Once activated, go to the configuration panel in Home Assistant, create an account, and log in. If you are not seeing the **Settings** panel, make sure you have the following option enabled in your {% term "`configuration.yaml`" %} file. ```yaml config: diff --git a/source/_integrations/command_line.markdown b/source/_integrations/command_line.markdown index ab738b8f315..7b76fce566c 100644 --- a/source/_integrations/command_line.markdown +++ b/source/_integrations/command_line.markdown @@ -22,6 +22,7 @@ ha_codeowners: related: - docs: /docs/configuration/ title: Configuration file +ha_quality_scale: legacy --- The **Command line** {% term integration %} offers functionality that issues specific commands to get data or to control a device. diff --git a/source/_integrations/cookidoo.markdown b/source/_integrations/cookidoo.markdown index 4ab4345ba45..7dc2e7c19fa 100644 --- a/source/_integrations/cookidoo.markdown +++ b/source/_integrations/cookidoo.markdown @@ -11,6 +11,9 @@ ha_codeowners: ha_domain: cookidoo ha_integration_type: service ha_platforms: + - button + - diagnostics + - sensor - todo related: - docs: /integrations/todo diff --git a/source/_integrations/cozytouch.markdown b/source/_integrations/cozytouch.markdown index cc92b45491e..29159385581 100644 --- a/source/_integrations/cozytouch.markdown +++ b/source/_integrations/cozytouch.markdown @@ -24,11 +24,6 @@ ha_supporting_integration: Overkiz ha_release: 2022.2 ha_codeowners: - '@imicknl' - - '@vlebourl' - - '@tetienne' - - '@nyroDev' - - '@tronix117' - - '@alexfp14' ha_config_flow: true ha_platforms: - alarm_control_panel diff --git a/source/_integrations/decorquip.markdown b/source/_integrations/decorquip.markdown index d805f0e9a24..23ec8bb3384 100644 --- a/source/_integrations/decorquip.markdown +++ b/source/_integrations/decorquip.markdown @@ -7,7 +7,7 @@ ha_domain: decorquip ha_integration_type: virtual ha_supporting_domain: motion_blinds ha_supporting_integration: Motionblinds -ha_release: 2025.2 +ha_release: 2020.12 ha_codeowners: - '@starkillerOG' ha_config_flow: true diff --git a/source/_integrations/discovergy.markdown b/source/_integrations/discovergy.markdown index d0b7bbbf5a7..98b92390a9b 100644 --- a/source/_integrations/discovergy.markdown +++ b/source/_integrations/discovergy.markdown @@ -14,6 +14,7 @@ ha_platforms: - diagnostics - sensor ha_integration_type: service +ha_quality_scale: silver --- The **inexogy** {% term integration %} allows users to integrate their [inexogy](https://inexogy.com/) smart meters into Home Assistant. diff --git a/source/_integrations/esera_onewire.markdown b/source/_integrations/esera_onewire.markdown index 5ede478d2e5..884e107f628 100644 --- a/source/_integrations/esera_onewire.markdown +++ b/source/_integrations/esera_onewire.markdown @@ -15,6 +15,7 @@ ha_config_flow: true ha_platforms: - binary_sensor - diagnostics + - select - sensor - switch ha_iot_class: Local Polling diff --git a/source/_integrations/flexom.markdown b/source/_integrations/flexom.markdown index 54f4abe1177..33c82c7c898 100644 --- a/source/_integrations/flexom.markdown +++ b/source/_integrations/flexom.markdown @@ -24,11 +24,6 @@ ha_supporting_integration: Overkiz ha_release: 2022.2 ha_codeowners: - '@imicknl' - - '@vlebourl' - - '@tetienne' - - '@nyroDev' - - '@tronix117' - - '@alexfp14' ha_config_flow: true ha_platforms: - alarm_control_panel diff --git a/source/_integrations/fujitsu_fglair.markdown b/source/_integrations/fujitsu_fglair.markdown index 76add58481b..3d7a76e06f2 100644 --- a/source/_integrations/fujitsu_fglair.markdown +++ b/source/_integrations/fujitsu_fglair.markdown @@ -46,4 +46,3 @@ This integration supports the following functionalities (if the devices support ## Outside temperature On units that support it, this integration will expose a temperature sensor that reports the outside temperature that the unit is sensing. - diff --git a/source/_integrations/fyta.markdown b/source/_integrations/fyta.markdown index 9556e0eeafc..19378fa5291 100644 --- a/source/_integrations/fyta.markdown +++ b/source/_integrations/fyta.markdown @@ -13,6 +13,7 @@ ha_domain: fyta ha_platforms: - binary_sensor - diagnostics + - image - sensor ha_integration_type: hub ha_quality_scale: platinum diff --git a/source/_integrations/google_generative_ai_conversation.markdown b/source/_integrations/google_generative_ai_conversation.markdown index 1c8e0b4ac14..8429aa2517c 100644 --- a/source/_integrations/google_generative_ai_conversation.markdown +++ b/source/_integrations/google_generative_ai_conversation.markdown @@ -41,7 +41,7 @@ The Google Generative AI API key is used to authenticate requests to the Google - Visit the [API Keys page](https://aistudio.google.com/app/apikey) to retrieve the API key you'll use to configure the integration. On the same page, you can see your plan: *free of charge* if the associated Google Cloud project doesn't have billing, or *pay-as-you-go* if the associated Google Cloud project has billing enabled. -Comparison of the plans is available [at this pricing page](https://ai.google.dev/pricing). The major differences include: the free of charge plan is rate limited, free prompts/responses are used for product improvement, and the free plan is not available in all [regions](https://ai.google.dev/gemini-api/docs/available-regions). +Comparison of the plans is available [at this pricing page](https://ai.google.dev/pricing). The major differences include: the free of charge plan is rate limited, and free prompts/responses are used for product improvement. {% include integrations/option_flow.md %} @@ -73,7 +73,7 @@ Safety settings: ## Talking to Super Mario -You can use an OpenAI Conversation integration to [talk to Super Mario and, if you want, have him control devices in your home](/voice_control/assist_create_open_ai_personality/). +You can use this integration to [talk to Super Mario and, if you want, have him control devices in your home](/voice_control/assist_create_open_ai_personality/). The tutorial is using OpenAI, but this could also be done with the Google Generative AI integration. diff --git a/source/_integrations/habitica.markdown b/source/_integrations/habitica.markdown index 1cb7649fa83..0ba104f2012 100644 --- a/source/_integrations/habitica.markdown +++ b/source/_integrations/habitica.markdown @@ -3,9 +3,9 @@ title: Habitica description: Instructions on enabling Habitica support for your Home Assistant ha_category: - Calendar + - Image - Sensor - To-do list - - Image ha_release: 0.78 ha_iot_class: Cloud Polling ha_domain: habitica @@ -14,10 +14,10 @@ ha_platforms: - button - calendar - diagnostics + - image - sensor - switch - todo - - image ha_codeowners: - '@tr4nt0r' ha_config_flow: true diff --git a/source/_integrations/harvey.markdown b/source/_integrations/harvey.markdown index 17c6f3266ba..6f794a63162 100644 --- a/source/_integrations/harvey.markdown +++ b/source/_integrations/harvey.markdown @@ -4,7 +4,7 @@ description: Integrate Harvey water softeners with Home Assistant using the Aqua ha_category: - Sensor ha_domain: harvey -ha_release: 2025.1 +ha_release: 2024.7 ha_integration_type: virtual ha_supporting_domain: aquacell ha_supporting_integration: AquaCell diff --git a/source/_integrations/heos.markdown b/source/_integrations/heos.markdown index b6f991a3927..f65dadcb4af 100644 --- a/source/_integrations/heos.markdown +++ b/source/_integrations/heos.markdown @@ -13,7 +13,7 @@ ha_ssdp: true ha_platforms: - diagnostics - media_player -ha_integration_type: integration +ha_integration_type: hub ha_quality_scale: silver --- diff --git a/source/_integrations/hexaom.markdown b/source/_integrations/hexaom.markdown index 03973151a48..25437cfe148 100644 --- a/source/_integrations/hexaom.markdown +++ b/source/_integrations/hexaom.markdown @@ -24,11 +24,6 @@ ha_supporting_integration: Overkiz ha_release: 2022.2 ha_codeowners: - '@imicknl' - - '@vlebourl' - - '@tetienne' - - '@nyroDev' - - '@tronix117' - - '@alexfp14' ha_config_flow: true ha_platforms: - alarm_control_panel diff --git a/source/_integrations/hi_kumo.markdown b/source/_integrations/hi_kumo.markdown index 61f5bec0c58..cb21484f899 100644 --- a/source/_integrations/hi_kumo.markdown +++ b/source/_integrations/hi_kumo.markdown @@ -24,11 +24,6 @@ ha_supporting_integration: Overkiz ha_release: 2022.2 ha_codeowners: - '@imicknl' - - '@vlebourl' - - '@tetienne' - - '@nyroDev' - - '@tronix117' - - '@alexfp14' ha_config_flow: true ha_platforms: - alarm_control_panel diff --git a/source/_integrations/home_plus_control.markdown b/source/_integrations/home_plus_control.markdown index e8d1d1c263c..876bf968739 100644 --- a/source/_integrations/home_plus_control.markdown +++ b/source/_integrations/home_plus_control.markdown @@ -3,6 +3,7 @@ title: Legrand Home+ Control description: Connect and control your Legrand Home+ Control devices using the Netatmo integration ha_category: - Binary sensor + - Button - Camera - Climate - Cover @@ -24,6 +25,7 @@ ha_codeowners: ha_config_flow: true ha_platforms: - binary_sensor + - button - camera - climate - cover diff --git a/source/_integrations/homee.markdown b/source/_integrations/homee.markdown index 7835cb73896..1a68929510a 100644 --- a/source/_integrations/homee.markdown +++ b/source/_integrations/homee.markdown @@ -13,6 +13,7 @@ ha_platforms: - cover - sensor ha_integration_type: hub +ha_quality_scale: bronze --- [Homee](https://hom.ee) is a smart home system, able to integrate various protocols such as Z-Wave, Zigbee, EnOcean, and more. The Homee {% term integration %} will let you use the {% term devices %} from your Homee in Home Assistant. diff --git a/source/_integrations/homematicip_cloud.markdown b/source/_integrations/homematicip_cloud.markdown index 0f6345c135e..f78d2a88f1d 100644 --- a/source/_integrations/homematicip_cloud.markdown +++ b/source/_integrations/homematicip_cloud.markdown @@ -22,6 +22,7 @@ ha_platforms: - button - climate - cover + - event - light - lock - sensor diff --git a/source/_integrations/ibeacon.markdown b/source/_integrations/ibeacon.markdown index 38e771d94e8..c984360909c 100644 --- a/source/_integrations/ibeacon.markdown +++ b/source/_integrations/ibeacon.markdown @@ -14,8 +14,6 @@ ha_platforms: ha_bluetooth: true ha_config_flow: true ha_integration_type: integration -ha_codeowners: - - '@bdraco' --- {% include integrations/config_flow.md %} diff --git a/source/_integrations/idasen_desk.markdown b/source/_integrations/idasen_desk.markdown index fd479a02247..4d938794280 100644 --- a/source/_integrations/idasen_desk.markdown +++ b/source/_integrations/idasen_desk.markdown @@ -15,6 +15,7 @@ ha_platforms: ha_integration_type: device ha_codeowners: - '@abmantis' +ha_quality_scale: bronze --- The IKEA IDÅSEN {% term integration %} allows you to connect your [IKEA Idåsen](https://www.ikea.com/us/en/cat/idasen-system-47424/) motorized desk to Home Assistant, making it possible to control the desk height and also monitor height changes from the physical controller. diff --git a/source/_integrations/igloohome.markdown b/source/_integrations/igloohome.markdown index b2edd90bbe3..e82d39cf611 100644 --- a/source/_integrations/igloohome.markdown +++ b/source/_integrations/igloohome.markdown @@ -11,7 +11,8 @@ ha_codeowners: ha_domain: igloohome ha_platforms: - sensor -ha_integration_type: device +ha_integration_type: integration +ha_quality_scale: bronze --- The **igloohome** {% term integration %} grants Home Assistant access to paired [smart access device\(s\)](https://www.igloohome.co/#products). The features of this integration includes: @@ -74,4 +75,4 @@ Some generic troubleshooting steps: ### Authentication problems - Verify that your [API credentials](https://access.igloocompany.co/api-access) are correctly filled in. -- Ensure your API credentials have not expired or been revoked. \ No newline at end of file +- Ensure your API credentials have not expired or been revoked. diff --git a/source/_integrations/incomfort.markdown b/source/_integrations/incomfort.markdown index e54b052180e..af3132936f9 100644 --- a/source/_integrations/incomfort.markdown +++ b/source/_integrations/incomfort.markdown @@ -14,6 +14,7 @@ ha_domain: incomfort ha_platforms: - binary_sensor - climate + - diagnostics - sensor - water_heater ha_integration_type: integration diff --git a/source/_integrations/iron_os.markdown b/source/_integrations/iron_os.markdown index eb2a862337e..b6ac0a69b78 100644 --- a/source/_integrations/iron_os.markdown +++ b/source/_integrations/iron_os.markdown @@ -19,6 +19,7 @@ ha_integration_type: integration ha_platforms: - binary_sensor - button + - diagnostics - number - select - sensor diff --git a/source/_integrations/ituran.markdown b/source/_integrations/ituran.markdown index fd4082856f0..3e9b635fb88 100644 --- a/source/_integrations/ituran.markdown +++ b/source/_integrations/ituran.markdown @@ -15,6 +15,7 @@ ha_platforms: - device_tracker - sensor ha_integration_type: hub +ha_quality_scale: silver --- The **Ituran** {% term integration %} allows you to retrieve information from your Ituran-equipped vehicle using the [Ituran APP service](https://www.ituran.co.il/ituranfront/comfort-services-2/ituran-app-comfort). It pulls information from the Ituran web service regarding the vehicle's location. diff --git a/source/_integrations/juicenet.markdown b/source/_integrations/juicenet.markdown index e4add243f45..b32fd2a348d 100644 --- a/source/_integrations/juicenet.markdown +++ b/source/_integrations/juicenet.markdown @@ -22,8 +22,13 @@ ha_integration_type: integration The `juicenet` platform pulls data from a [JuiceNet](https://evcharging.enelx.com/products/juicebox) charging station equipped with a Wi-Fi connection. It will access and make available all of the devices attached to your account. It also exposes a switch allowing you to charge your car now instead of waiting for the pre-set schedule. +{% important %} +This integration can no longer be set up as the required API token cannot be obtained. However, if you have it working, it may remain functional. +{% endimportant %} + {% include integrations/config_flow.md %} + ## Sensor The `juicenet` sensor platform allows you to get data from your [JuiceNet](https://evcharging.enelx.com/products/juicebox) charger. diff --git a/source/_integrations/lametric.markdown b/source/_integrations/lametric.markdown index ebd1264f5df..e7bc227dde9 100644 --- a/source/_integrations/lametric.markdown +++ b/source/_integrations/lametric.markdown @@ -278,4 +278,4 @@ Internal examples: `http://192.168.0.2:8123/auth/external/callback`, `http://hom ### The brightness doesn't go to 100% When the LaMetric is powered by a USB port on a computer, the brightness is limited. -To get the full brightness, use a proper USB charger. \ No newline at end of file +To get the full brightness, use a proper USB charger. diff --git a/source/_integrations/legrand.markdown b/source/_integrations/legrand.markdown index 13e13117fdf..db83c0dffda 100644 --- a/source/_integrations/legrand.markdown +++ b/source/_integrations/legrand.markdown @@ -3,6 +3,7 @@ title: Legrand description: Connect and control your Legrand devices using the Netatmo integration ha_category: - Binary sensor + - Button - Camera - Climate - Cover @@ -24,6 +25,7 @@ ha_codeowners: ha_config_flow: true ha_platforms: - binary_sensor + - button - camera - climate - cover diff --git a/source/_integrations/letpot.markdown b/source/_integrations/letpot.markdown index fd6c181dc73..80f565e98b5 100644 --- a/source/_integrations/letpot.markdown +++ b/source/_integrations/letpot.markdown @@ -10,10 +10,11 @@ ha_config_flow: true ha_codeowners: - '@jpelgrom' ha_domain: letpot -ha_integration_type: integration +ha_integration_type: hub ha_platforms: - switch - time +ha_quality_scale: bronze --- The **LetPot** {% term integration %} allows you to integrate your [LetPot](https://letpot.com/) hydroponic gardens/systems into Home Assistant. diff --git a/source/_integrations/litterrobot.markdown b/source/_integrations/litterrobot.markdown index db0b0da4e4c..497941341cf 100644 --- a/source/_integrations/litterrobot.markdown +++ b/source/_integrations/litterrobot.markdown @@ -26,6 +26,7 @@ ha_platforms: - update - vacuum ha_integration_type: hub +ha_quality_scale: bronze --- The Litter-Robot integration allows you to monitor and control your Wi-Fi-enabled, automatic, self-cleaning litter box and pet feeders. If you have pet profiles set up, you can also track your pet's weight. diff --git a/source/_integrations/mcp.markdown b/source/_integrations/mcp.markdown index da2cde1a3f6..daf088aca75 100644 --- a/source/_integrations/mcp.markdown +++ b/source/_integrations/mcp.markdown @@ -7,12 +7,13 @@ ha_release: 2025.2 ha_iot_class: Local Polling ha_config_flow: true ha_codeowners: - - 'allenporter' + - '@allenporter' ha_domain: mcp ha_integration_type: integration related: - docs: /integrations/conversation/ title: Conversation +ha_quality_scale: silver --- The [Model Context Protocol](https://modelcontextprotocol.io) is an open protocol that diff --git a/source/_integrations/mcp_server.markdown b/source/_integrations/mcp_server.markdown index 443137feef0..95d031b5e83 100644 --- a/source/_integrations/mcp_server.markdown +++ b/source/_integrations/mcp_server.markdown @@ -7,12 +7,13 @@ ha_release: 2025.2 ha_iot_class: Local Push ha_config_flow: true ha_codeowners: - - 'allenporter' + - '@allenporter' ha_domain: mcp_server -ha_integration_type: integration +ha_integration_type: service related: - docs: /integrations/conversation/ title: Conversation +ha_quality_scale: silver --- The [Model Context Protocol](https://modelcontextprotocol.io) is an open protocol that standardizes how applications provide context to LLMs. The **Model Context Protocol Server** (MCP) integration enables using Home Assistant to provide context for MCP LLM Client Applications. For example, you can expose your Google Tasks To-do list as a tool for Claude Desktop. diff --git a/source/_integrations/mill.markdown b/source/_integrations/mill.markdown index 94c33d1edb0..ca85c0eaa2e 100644 --- a/source/_integrations/mill.markdown +++ b/source/_integrations/mill.markdown @@ -11,8 +11,8 @@ ha_domain: mill ha_config_flow: true ha_platforms: - climate - - sensor - number + - sensor ha_integration_type: integration --- diff --git a/source/_integrations/minecraft_server.markdown b/source/_integrations/minecraft_server.markdown index b8ef784a926..eab24d9de11 100644 --- a/source/_integrations/minecraft_server.markdown +++ b/source/_integrations/minecraft_server.markdown @@ -19,9 +19,10 @@ ha_integration_type: integration [Minecraft](https://www.minecraft.net/en-us) is a sandbox video game developed by Mojang Studios. Minecraft servers allow players to play the game online or via a local area network with other players. The **Minecraft Server** integration lets you retrieve information from a Minecraft server within Home Assistant. Both **Java Edition** and **Bedrock Edition** servers are supported. -{% important %} -Minecraft Java Edition servers must be version 1.7 or newer, since older versions don't expose any information. -{% endimportant %} +## Prerequisites + +- Minecraft Java Edition servers must be version 1.7 or newer, since older versions don't expose any information. +- The `enable-status` and `enable-query` must be set to `true` in the Minecraft `server.properties`. {% include integrations/config_flow.md %} diff --git a/source/_integrations/monzo.markdown b/source/_integrations/monzo.markdown index 0534bc085b6..0690f319f7d 100644 --- a/source/_integrations/monzo.markdown +++ b/source/_integrations/monzo.markdown @@ -2,8 +2,8 @@ title: Monzo description: Instructions on how to integrate Monzo integration into Home Assistant. ha_category: - - Sensor - Finance + - Sensor ha_release: 2024.6 ha_iot_class: Cloud Polling ha_codeowners: diff --git a/source/_integrations/motionmount.md b/source/_integrations/motionmount.md index 444ab655316..31383b434bd 100644 --- a/source/_integrations/motionmount.md +++ b/source/_integrations/motionmount.md @@ -17,12 +17,96 @@ ha_platforms: ha_codeowners: - '@RJPoelstra' ha_domain: motionmount +ha_zeroconf: true --- -The Vogel's MotionMount integration allows you to control the position of your [TVM 7675 Pro](https://www.vogels.com/p/tvm-7675-pro-motorized-tv-wall-mount-black) Signature MotionMount. +The `motionmount` {% term integration %} allows you to control the position of your [TVM 7675 Pro](https://www.vogels.com/p/tvm-7675-pro-motorized-tv-wall-mount-black) SIGNATURE MotionMount from Vogel's. This integration uses the Ethernet (IP) connection of your MotionMount. It's not possible to connect using the RS-232 connection. It provides information about the current position of the mount and allows setting a new position. +A use case would be to position the TV based on whether anyone is actively watching. The MotionMount provides an HDMI connection to monitor whether the TV is turned on and in response move it to a preset position or the last known position. However, if you also use the TV for background music, you probably don't want the MotionMount to extend. By using a presence sensor to check whether anyone is actually in front of the TV, you can ensure the MotionMount only extends when the TV is actively being watched. + {% include integrations/config_flow.md %} + +{% configuration_basic %} +Host: + description: Hostname or IP address of the device, for example:`192.168.1.2`. +Port: + description: The TCP port of the device. Defaults to 23. Only change this when you're absolutely certain that it shouldn't be 23. +PIN: + description: The user level pincode, if configured on the device. +{% endconfiguration_basic %} + +## Removing the integration + +This integration follows standard integration removal. No extra steps are required. + +{% include integrations/remove_device_service.md %} + +## Data updates + +The MotionMount pushes new data to the integration. +The only exception is the presets. Changes to the presets are {% term polling polled %}, by default every 60 seconds. + +## Known limitations + +The integration does not provide the ability to configure the MotionMount. +All settings, including configuring presets, should be done via the MotionMount app. + +Only IP connections are supported. Connection via RS-232 or Bluetooth Low Energy is not supported. + +## Supported devices + +The following devices are supported: + +- TVM 7675 Pro (SIGNATURE MotionMount with Pro extension) + +## Unsupported devices + +The following devices are *not* supported: + +- TVM 7675 (SIGNATURE MotionMount without Pro extension) +- TVM 7355 (NEXT MotionMount) + +## Supported functionality + +### Entities + +#### Sensors + +- **Moving** + - **Description**: Indicates whether the MotionMount is moving. + +- **Error Status** + - **Description**: The error status of the MotionMount. + - None: There is no error. + - Motor: There is a problem communicating with the motor. + - Internal: There is an internal error. Refer to the MotionMount app for support. + +#### Numbers + +- **Extension** + - **Description**: The current extension of the MotionMount from the wall. + +- **Turn** + - **Description**: The current rotation of the MotionMount. + +#### Selects + +- **Presets** + - **Description**: If the MotionMount is at a preset location, this shows the corresponding preset. + Any preset can be selected to move the MotionMount to this preset position. + +## Troubleshooting + +### Can't connect to device + +1. Make sure the device is powered on. +2. Make sure the device is connected to the same network as Home Assistant. +3. Make sure the IP address of the MotionMount is configured correctly. + - In case of doubt, perform a network reset by holding the reset button for approx. 5 seconds. + - **Result**: The LED will start to blink slowly. This indicates that the network configuration is being reset to use DHCP. + - **Important**: Don't hold the reset button for too long (approx. 10 s). Holding the button for 10 s or longer starts a factory reset. A factory reset is indicated by the LED blinking fast. + diff --git a/source/_integrations/mqtt.markdown b/source/_integrations/mqtt.markdown index d7894cd04db..2282cd1a0a0 100644 --- a/source/_integrations/mqtt.markdown +++ b/source/_integrations/mqtt.markdown @@ -44,6 +44,7 @@ ha_platforms: - valve - water_heater ha_integration_type: integration +ha_quality_scale: platinum --- MQTT (aka MQ Telemetry Transport) is a machine-to-machine or "Internet of Things" connectivity protocol on top of TCP/IP. It allows extremely lightweight publish/subscribe messaging transport. @@ -793,7 +794,7 @@ support_url: 'osc_cmd_tpl': 'oscillation_command_template', 'osc_stat_t': 'oscillation_state_topic', 'osc_val_tpl': 'oscillation_value_template', - 'platform': 'p', + 'p': 'platform', 'pct_cmd_t': 'percentage_command_topic', 'pct_cmd_tpl': 'percentage_command_template', 'pct_stat_t': 'percentage_state_topic', diff --git a/source/_integrations/nexity.markdown b/source/_integrations/nexity.markdown index 58e47fe160d..f507a7bcb73 100644 --- a/source/_integrations/nexity.markdown +++ b/source/_integrations/nexity.markdown @@ -24,11 +24,6 @@ ha_supporting_integration: Overkiz ha_release: 2022.2 ha_codeowners: - '@imicknl' - - '@vlebourl' - - '@tetienne' - - '@nyroDev' - - '@tronix117' - - '@alexfp14' ha_config_flow: true ha_platforms: - alarm_control_panel diff --git a/source/_integrations/nmbs.markdown b/source/_integrations/nmbs.markdown index 45e095d32a1..a5c78dea0ee 100644 --- a/source/_integrations/nmbs.markdown +++ b/source/_integrations/nmbs.markdown @@ -6,8 +6,6 @@ ha_category: ha_config_flow: true ha_iot_class: Cloud Polling ha_release: 0.85 -ha_codeowners: - - '@thibmaek' ha_domain: nmbs ha_platforms: - sensor diff --git a/source/_integrations/onedrive.markdown b/source/_integrations/onedrive.markdown index 6583f93ea32..955ebd677e9 100644 --- a/source/_integrations/onedrive.markdown +++ b/source/_integrations/onedrive.markdown @@ -13,6 +13,7 @@ ha_integration_type: service related: - docs: /common-tasks/general/#backups title: Backups +ha_quality_scale: bronze --- This integration allows you to use [OneDrive](https://www.microsoft.com/en-us/microsoft-365/onedrive/online-cloud-storage) for [Home Assistant Backups](/common-tasks/general/#backups). diff --git a/source/_integrations/onewire.markdown b/source/_integrations/onewire.markdown index 87a9829c1e4..be33f9dfd27 100644 --- a/source/_integrations/onewire.markdown +++ b/source/_integrations/onewire.markdown @@ -17,6 +17,7 @@ ha_platforms: - sensor - switch ha_integration_type: hub +ha_zeroconf: true --- The Onewire integration supports sensors that use the 1-wire bus for communication. diff --git a/source/_integrations/onvif.markdown b/source/_integrations/onvif.markdown index e7b73a3013a..88d422f37aa 100644 --- a/source/_integrations/onvif.markdown +++ b/source/_integrations/onvif.markdown @@ -8,6 +8,7 @@ ha_iot_class: Local Push ha_domain: onvif ha_codeowners: - '@hunterjm' + - '@jterrace' ha_config_flow: true ha_platforms: - binary_sensor diff --git a/source/_integrations/overkiz.markdown b/source/_integrations/overkiz.markdown index 20e0a378ecf..6589d6cb1c2 100644 --- a/source/_integrations/overkiz.markdown +++ b/source/_integrations/overkiz.markdown @@ -22,11 +22,6 @@ ha_config_flow: true ha_iot_class: Local Polling ha_codeowners: - '@imicknl' - - '@vlebourl' - - '@tetienne' - - '@nyroDev' - - '@tronix117' - - '@alexfp14' ha_domain: overkiz ha_dhcp: true ha_zeroconf: true @@ -169,4 +164,4 @@ Please note that only a [limited set of devices is supported via HomeKit](https: This integration follows standard integration removal. No extra steps are required. -{% include integrations/remove_device_service.md %} \ No newline at end of file +{% include integrations/remove_device_service.md %} diff --git a/source/_integrations/overseerr.markdown b/source/_integrations/overseerr.markdown index a6ed047e6ac..f673fb85ba5 100644 --- a/source/_integrations/overseerr.markdown +++ b/source/_integrations/overseerr.markdown @@ -13,8 +13,10 @@ ha_codeowners: ha_domain: overseerr ha_integration_type: service ha_platforms: + - diagnostics - event - sensor +ha_quality_scale: platinum --- Overseerr is a service that allows you to manage media requests and to integrate these media requests with Plex, Radarr, and Sonarr. The **Overseerr** {% term integration %} allows you to integrate your [Overseerr](https://overseerr.dev/) instance. diff --git a/source/_integrations/palazzetti.markdown b/source/_integrations/palazzetti.markdown index 29cb2659bc7..98242083763 100644 --- a/source/_integrations/palazzetti.markdown +++ b/source/_integrations/palazzetti.markdown @@ -10,6 +10,7 @@ ha_codeowners: - '@dotvav' ha_domain: palazzetti ha_platforms: + - button - climate - diagnostics - number diff --git a/source/_integrations/pinecil.markdown b/source/_integrations/pinecil.markdown index b2fc10df268..8a598e0611c 100644 --- a/source/_integrations/pinecil.markdown +++ b/source/_integrations/pinecil.markdown @@ -3,9 +3,11 @@ title: Pinecil description: Connect and control your Pinecil devices using the IronOS integration ha_category: - Binary sensor + - Button - Number - Select - Sensor + - Switch - Update ha_release: 2024.8 ha_domain: pinecil @@ -17,9 +19,12 @@ ha_codeowners: ha_config_flow: true ha_platforms: - binary_sensor + - button + - diagnostics - number - select - sensor + - switch - update ha_iot_class: Local Polling --- diff --git a/source/_integrations/piper.markdown b/source/_integrations/piper.markdown index 42d413a1ca4..cfeec57cc98 100644 --- a/source/_integrations/piper.markdown +++ b/source/_integrations/piper.markdown @@ -13,6 +13,7 @@ ha_codeowners: - '@synesthesiam' ha_config_flow: true ha_platforms: + - assist_satellite - binary_sensor - conversation - number diff --git a/source/_integrations/qbus.markdown b/source/_integrations/qbus.markdown index db9744ff681..d59928d6b34 100644 --- a/source/_integrations/qbus.markdown +++ b/source/_integrations/qbus.markdown @@ -11,8 +11,9 @@ ha_codeowners: - '@thomasddn' ha_release: 2025.2 ha_domain: qbus -ha_integration_type: device +ha_integration_type: hub ha_config_flow: true +ha_quality_scale: bronze --- The **Qbus** {% term integration %} allows you to integrate your [Qbus Control](https://www.qbus.be) into Home Assistant. **Qbus** is a Belgian manufacturer of Home Automation systems. diff --git a/source/_integrations/refoss.markdown b/source/_integrations/refoss.markdown index 80f4eb10cbe..53d42619720 100644 --- a/source/_integrations/refoss.markdown +++ b/source/_integrations/refoss.markdown @@ -81,4 +81,4 @@ If the Refoss device isn't discovered by Home Assistant automatically, follow th 4. Check the logs for messages containing "Discovered devices" 5. If no devices are found, verify: - Network connectivity - - Device firmware version matches the supported versions listed above \ No newline at end of file + - Device firmware version matches the supported versions listed above diff --git a/source/_integrations/reolink.markdown b/source/_integrations/reolink.markdown index c9ca1720665..e140d7556a8 100644 --- a/source/_integrations/reolink.markdown +++ b/source/_integrations/reolink.markdown @@ -591,7 +591,7 @@ Prerequisites: ![Choose entity button](/images/integrations/reolink/rich_notification__chose_entity.png) ![Select Fluent camera](/images/integrations/reolink/rich_notification__select_fluent_camera.png) - Under **Filename**, fill in `/config/www/reolink_snapshot/last_snapshot_doorbell.jpg`. The first part `/config/www/` is absolutely necessary to allow your phone to access the saved image when it receives the notification. The reset of the folder and filename can be changed at will as long as you fill in the same filename under step 6. + Under **Filename**, fill in `/media/reolink_snapshot/last_snapshot_doorbell.jpg`. The first part `/media/` is absolutely necessary to allow your phone to access the saved image when it receives the notification. The reset of the folder and filename can be changed at will as long as you fill in the same filename under step 6.

Screenshot: take snapshot @@ -605,7 +605,7 @@ Prerequisites: Under **message**, type the text you want to receive in the notification. For instance, “Someone rang the doorbell”. If you want to give the notification a title, select the **title** option. For instance, if you have multiple cameras that send you notifications, select the camera name: `Doorbell`. - Select the **data** option and fill in `image: /local/reolink_snapshot/last_snapshot_doorbell.jpg`. Note that `/config/www/` of the filename of step 5 now needs to be changed to `/local/`. The rest of the filename needs to be the same as in step 5. + Select the **data** option and fill in `image: /media/local/reolink_snapshot/last_snapshot_doorbell.jpg`. Note that `/media/` of the filename of step 5 now needs to be changed to `/media/local/`. The rest of the filename needs to be the same as in step 5.

Screenshot: send notification @@ -625,6 +625,81 @@ Prerequisites: - Turn on (outdoor) lights near the camera to improve image clarity at night once the camera detects a person, vehicle, or animal. - Turn off notifications and recording when you get home (based on, e.g., geofencing) and turn it back on when you leave home. +- Auto-pause rich notifications for x time + +{% details "Auto-pause rich notifications tutorial" icon="mdi:cursor-hand" %} + +**Goal**: At the end of this tutorial, you will have a drop-down on your dashboard with different time choices to pause your notifications. When the time is up, the notifications will become active again. It will look like this: + +![Overview of end result](/images/integrations/reolink/auto_pause__overview.png) + +1. First, create the dropdown from **Settings** > **Devices & services** > **Helpers** > **+ Create Helper** > **Dropdown**. + - Decide how many time delay choices you want. + - Add them all to the dropdown like below. + - Your first entry needs to be "Notifications active" (or simular phrasing) for when the notifications are turned on. + - You can define as many time options as you want. And you can define any time interval you like, for example, 22 minutes, 2 hours. + + ![Dropdown](/images/integrations/reolink/auto_pause__dropdown.png) + +2. Next, also from the **Helpers** menu create a **Timer**. + - Leave the time duration all zeros. Select the **Restore state and time** box. + + ![Timer](/images/integrations/reolink/auto_pause__timer.png) + +3. Now you will create a new automation script. + - For the **When** select **+ Add Trigger** > **Entity** > **State** and choose your dropdown box for the entity and in the **From** choose your "Notifications active" or whatever you chose for the top item. + + ![Automation When dropdown](/images/integrations/reolink/auto_pause__automation_when.png) + +4. Add another trigger using **+ Add Trigger** > **Entity** > **State** and choose your timer for the entity and in the **To** choose "Idle". + - Now select the three dots {% icon "mdi:dots-vertical" %} menu of this trigger and press **Edit ID**. In the **Trigger ID** type "TIMER DONE". + + ![Automation When timer](/images/integrations/reolink/auto_pause__automation_when_timer.png) + +5. There is nothing in the **And if** section. For the **Then do** section choose **add building block** and use **Choose**. + - You will have as many options as you have times in your dropdown box plus one to reset the dropdown box. + - First, we make the option to reset the dropdown box. This needs to be the first option. + - Under **Option 1**, select **+ Add Condition** > **Other conditions** > **Triggered by**. + - Now check the box in front of "TIMER DONE". + + ![Automation Triggered by](/images/integrations/reolink/auto_pause__automation_triggered_by.png) + +6. Add an action under this **Option 1**, choose **Select** as your action and then choose **First**. + - Then enter your dropdown box as the entity. + - This will change your dropdown box back to the first item when the timer is done. + - This will allow your notification automation to run again. + + ![Automation Select first](/images/integrations/reolink/auto_pause__automation_select_first.png) + +7. Let’s code the first option to pause the notifications now. + - Under **Option 2**, select **+ Add Condition** > **Entity** > **State**. + - Your dropdown box goes in the **Entity** and for **State** choose your first time delay. + + ![Automation Choose](/images/integrations/reolink/auto_pause__automation_choose.png) + +8. For **+ Add Action**, choose **Helpers** > **Timer** > **Start** and enter your timer entity. + - Check the duration box and enter the time delay you used for your first time delay. Format is HH:MM:SS + + ![Automation Start timer](/images/integrations/reolink/auto_pause__automation_start_timer.png) + +9. The only thing left here is to duplicate Option 2 as many items as you have in your dropdown box. + - The only changes you will need to make for each new option is to choose the correct state (time amount) for the dropdown box and then change the amount of time in the timer. + - You can easliy duplicate by clicking the three dots {% icon "mdi:dots-vertical" %} menu at the far right of the option. + +10. Lastly, you need to apply this new feature. + - Go into your rich notifications automation, or for that matter any automation that you would like to have pause control over, and add a condition. + - Below is an example. In the **And if** press **+ Add condition** > **Entity** > **State** add select the dropdown box as the entity and "Notifications Active", the first item, as the state. + + ![Condition](/images/integrations/reolink/auto_pause__condition.png) + +11. Add the dropdown box and the timer onto your dashboard and you are all set. + - Here is what it looks like when it is running (holding notifications). + - You can end it early by just selecting the timer, then selecting finish. That ends the timer, it goes to idle, and the automation resets the dropdown box to active. + + ![Result when running](/images/integrations/reolink/auto_pause__result_when_running.png) + +{% enddetails %} + - When someone presses the doorbell, play ringtones on speakers (Echo Dot/Google Home/smart hubs) throughout the house. - Pause a TV and show a notification badge on the TV when the doorbell is pressed (only when the TV is already on). - Play the quick replay messages of a Reolink doorbell only when not home (geofencing) diff --git a/source/_integrations/rexel.markdown b/source/_integrations/rexel.markdown index 019c9c40a17..071d5ce28be 100644 --- a/source/_integrations/rexel.markdown +++ b/source/_integrations/rexel.markdown @@ -24,11 +24,6 @@ ha_supporting_integration: Overkiz ha_release: 2022.2 ha_codeowners: - '@imicknl' - - '@vlebourl' - - '@tetienne' - - '@nyroDev' - - '@tronix117' - - '@alexfp14' ha_config_flow: true ha_platforms: - alarm_control_panel diff --git a/source/_integrations/roborock.markdown b/source/_integrations/roborock.markdown index 04ac7cc8ae3..d71c45ee9b5 100644 --- a/source/_integrations/roborock.markdown +++ b/source/_integrations/roborock.markdown @@ -16,6 +16,7 @@ ha_release: 2023.5 ha_config_flow: true ha_codeowners: - '@Lash-L' + - '@allenporter' ha_domain: roborock ha_platforms: - binary_sensor diff --git a/source/_integrations/russound_rio.markdown b/source/_integrations/russound_rio.markdown index 480c8757c0a..dfe280966f8 100644 --- a/source/_integrations/russound_rio.markdown +++ b/source/_integrations/russound_rio.markdown @@ -14,6 +14,7 @@ ha_codeowners: ha_config_flow: true ha_integration_type: integration ha_quality_scale: silver +ha_zeroconf: true --- The Russound RIO {% term integration %} allows you to control Russound devices that make use of the RIO protocol. diff --git a/source/_integrations/russound_rnet.markdown b/source/_integrations/russound_rnet.markdown index 4693881c948..1030d639a95 100644 --- a/source/_integrations/russound_rnet.markdown +++ b/source/_integrations/russound_rnet.markdown @@ -13,6 +13,8 @@ related: - docs: /docs/configuration/ title: Configuration file ha_quality_scale: legacy +ha_codeowners: + - '@noahhusby' --- The `russound_rnet` {% term integration %} allows you to control Russound devices that make use of the RNET protocol. diff --git a/source/_integrations/simu.markdown b/source/_integrations/simu.markdown index d5467df41ba..34b089ad4d9 100644 --- a/source/_integrations/simu.markdown +++ b/source/_integrations/simu.markdown @@ -24,11 +24,6 @@ ha_supporting_integration: Overkiz ha_release: 2022.2 ha_codeowners: - '@imicknl' - - '@vlebourl' - - '@tetienne' - - '@nyroDev' - - '@tronix117' - - '@alexfp14' ha_config_flow: true ha_platforms: - alarm_control_panel diff --git a/source/_integrations/sma.markdown b/source/_integrations/sma.markdown index e648b37b953..98d48fadf94 100644 --- a/source/_integrations/sma.markdown +++ b/source/_integrations/sma.markdown @@ -9,8 +9,10 @@ ha_release: 0.36 ha_codeowners: - '@kellerza' - '@rklomp' + - '@erwindouna' ha_domain: sma ha_platforms: + - diagnostics - sensor ha_integration_type: integration --- diff --git a/source/_integrations/smarther.markdown b/source/_integrations/smarther.markdown index 36899b8a7e4..ce30e9f6b84 100644 --- a/source/_integrations/smarther.markdown +++ b/source/_integrations/smarther.markdown @@ -3,6 +3,7 @@ title: Smarther description: Connect and control your Smarther devices using the Netatmo integration ha_category: - Binary sensor + - Button - Camera - Climate - Cover @@ -24,6 +25,7 @@ ha_codeowners: ha_config_flow: true ha_platforms: - binary_sensor + - button - camera - climate - cover diff --git a/source/_integrations/smlight.markdown b/source/_integrations/smlight.markdown index 8d6673c5f8c..b1e47c660de 100644 --- a/source/_integrations/smlight.markdown +++ b/source/_integrations/smlight.markdown @@ -22,6 +22,7 @@ ha_platforms: ha_codeowners: - '@tl-sl' ha_integration_type: device +ha_dhcp: true --- The [SMLIGHT](https://smlight.tech) SLZB-06x Ethernet Zigbee coordinators diff --git a/source/_integrations/solax.markdown b/source/_integrations/solax.markdown index 6c2588f9c4f..f2f95abb628 100644 --- a/source/_integrations/solax.markdown +++ b/source/_integrations/solax.markdown @@ -8,6 +8,7 @@ ha_release: 0.94 ha_iot_class: Local Polling ha_codeowners: - '@squishykid' + - '@Darsstar' ha_domain: solax ha_platforms: - sensor diff --git a/source/_integrations/somfy.markdown b/source/_integrations/somfy.markdown index 9fdb2a342d4..e73709d063a 100644 --- a/source/_integrations/somfy.markdown +++ b/source/_integrations/somfy.markdown @@ -24,11 +24,6 @@ ha_supporting_integration: Overkiz ha_release: 2022.2 ha_codeowners: - '@imicknl' - - '@vlebourl' - - '@tetienne' - - '@nyroDev' - - '@tronix117' - - '@alexfp14' ha_config_flow: true ha_platforms: - alarm_control_panel diff --git a/source/_integrations/template.markdown b/source/_integrations/template.markdown index b69c87a2b32..ad065d8795d 100644 --- a/source/_integrations/template.markdown +++ b/source/_integrations/template.markdown @@ -156,7 +156,7 @@ variables: sensor: description: List of sensors required: true - type: map + type: list keys: state: description: "Defines a template to get the state of the sensor. If the sensor is numeric, i.e. it has a `state_class` or a `unit_of_measurement`, the state template must render to a number or to `none`. The state template must not render to a string, including `unknown` or `unavailable`. An `availability` template may be defined to suppress rendering of the state template." @@ -180,7 +180,7 @@ sensor: binary_sensor: description: List of binary sensors required: true - type: map + type: list keys: state: description: The sensor is `on` if the template evaluates as `True`, `yes`, `on`, `enable` or a positive number. Any other value will render it as `off`. The actual appearance in the frontend (`Open`/`Closed`, `Detected`/`Clear` etc) depends on the sensor’s device_class value diff --git a/source/_integrations/tesla_fleet.markdown b/source/_integrations/tesla_fleet.markdown index 1abc5e41243..d4f908e740e 100644 --- a/source/_integrations/tesla_fleet.markdown +++ b/source/_integrations/tesla_fleet.markdown @@ -361,4 +361,3 @@ which then can be used within the energy dashboard. - **Integration shows `a condition has not been met to process the request`** 1. Confirm that you've run all the steps from both the **Hosting a Public/Private Key Pair** and **Register your application as a Fleet API partner** sections above. - diff --git a/source/_integrations/teslemetry.markdown b/source/_integrations/teslemetry.markdown index bbda148ac5c..b6b0c7ec4f5 100644 --- a/source/_integrations/teslemetry.markdown +++ b/source/_integrations/teslemetry.markdown @@ -238,10 +238,6 @@ These are the entities available in the Teslemetry integration. Not all entities |Sensor|State|Yes| |Sensor|Vehicle|Yes| -## Vehicle sleep - -Constant API polling will prevent most Model S and Model X vehicles manufactured before 2021 from sleeping, so the Teslemetry integration will stop polling these vehicles for 15 minutes, after 15 minutes of inactivity. You can call the `homeassistant.update_entity` action to force polling the API, which will reset the timer. - ## Actions Teslemetry provides various custom actions to interact with the Tesla Fleet API directly. diff --git a/source/_integrations/tplink_tapo.markdown b/source/_integrations/tplink_tapo.markdown index 54b4fe6a931..961b1a71309 100644 --- a/source/_integrations/tplink_tapo.markdown +++ b/source/_integrations/tplink_tapo.markdown @@ -14,6 +14,7 @@ ha_category: - Sensor - Siren - Switch + - Vacuum ha_domain: tplink_tapo ha_release: 0.89 ha_integration_type: virtual @@ -37,6 +38,7 @@ ha_platforms: - sensor - siren - switch + - vacuum ha_iot_class: Local Polling ha_dhcp: true --- diff --git a/source/_integrations/tradfri.markdown b/source/_integrations/tradfri.markdown index 55802cdff94..bad806b3a3e 100644 --- a/source/_integrations/tradfri.markdown +++ b/source/_integrations/tradfri.markdown @@ -36,7 +36,7 @@ If you see an "Unable to connect" message, restart the gateway and try again. Do {% note %} There is currently no dedicated core integration for the Dirigera hub released in October 2022. -The Dirigera hub can, however, be integrated directly via the [HomeKit device](/integrations/homekit_controller/) integration. This configuration even provides events for motion sensors and buttons, which the original integration lacks. +The Dirigera hub can, however, be integrated directly via the [HomeKit device](/integrations/homekit_controller/) integration or the [Matter](/integrations/matter/#using-a-matter-bridge) integration. As of Hub version 2.615.8 (September 2024), there is support for the following device types via Matter Bridge: lights (including drivers), smart plugs/outlets, connected blinds, remotes, motion sensors, open/close sensors, air purifiers, and air quality sensors. {% endnote %} diff --git a/source/_integrations/trafikverket_weatherstation.markdown b/source/_integrations/trafikverket_weatherstation.markdown index 93e20a681ed..fc3a024a80f 100644 --- a/source/_integrations/trafikverket_weatherstation.markdown +++ b/source/_integrations/trafikverket_weatherstation.markdown @@ -10,6 +10,7 @@ ha_domain: trafikverket_weatherstation ha_codeowners: - '@gjohansson-ST' ha_platforms: + - diagnostics - sensor ha_integration_type: integration --- diff --git a/source/_integrations/tuya.markdown b/source/_integrations/tuya.markdown index 65dc17a3156..3e8ed785415 100644 --- a/source/_integrations/tuya.markdown +++ b/source/_integrations/tuya.markdown @@ -23,7 +23,6 @@ ha_domain: tuya ha_codeowners: - '@Tuya' - '@zlinoliver' - - '@frenck' ha_platforms: - alarm_control_panel - binary_sensor diff --git a/source/_integrations/twinkly.markdown b/source/_integrations/twinkly.markdown index a16863acd55..7dc0cc7d512 100644 --- a/source/_integrations/twinkly.markdown +++ b/source/_integrations/twinkly.markdown @@ -14,6 +14,7 @@ ha_codeowners: ha_platforms: - diagnostics - light + - select ha_dhcp: true ha_integration_type: integration --- diff --git a/source/_integrations/ubiwizz.markdown b/source/_integrations/ubiwizz.markdown index d5802580c0d..ecef13f6a75 100644 --- a/source/_integrations/ubiwizz.markdown +++ b/source/_integrations/ubiwizz.markdown @@ -24,11 +24,6 @@ ha_supporting_integration: Overkiz ha_release: 2022.2 ha_codeowners: - '@imicknl' - - '@vlebourl' - - '@tetienne' - - '@nyroDev' - - '@tronix117' - - '@alexfp14' ha_config_flow: true ha_platforms: - alarm_control_panel diff --git a/source/_integrations/ubus.markdown b/source/_integrations/ubus.markdown index c6f4a6c4dc8..4aa57c91a8e 100644 --- a/source/_integrations/ubus.markdown +++ b/source/_integrations/ubus.markdown @@ -15,7 +15,7 @@ related: ha_quality_scale: legacy --- -This is a presence detection scanner for [OpenWrt](https://openwrt.org/) using [ubus](https://wiki.openwrt.org/doc/techref/ubus). It scans for changes in `hostapd.*`, which will detect and report changes in devices connected to the access point on the router. +This is a presence detection scanner for [OpenWrt](https://openwrt.org/) using [ubus](https://openwrt.org/docs/techref/ubus). It scans for changes in `hostapd.*`, which will detect and report changes in devices connected to the access point on the router. Before this scanner can be used, you have to install the ubus RPC packages on OpenWrt (versions older than 18.06.x do not require the `uhttpd-mod-ubus` package): diff --git a/source/_integrations/velbus.markdown b/source/_integrations/velbus.markdown index b9cd185d2f6..2a5bd28a201 100644 --- a/source/_integrations/velbus.markdown +++ b/source/_integrations/velbus.markdown @@ -187,4 +187,3 @@ The Velbus integration and its entities can be removed by following these steps: {% include integrations/remove_device_service.md %} Note: Removing the integration will delete all Velbus devices and their history from Home Assistant. - diff --git a/source/_integrations/velux.markdown b/source/_integrations/velux.markdown index 5456babc746..2102cbd66ec 100644 --- a/source/_integrations/velux.markdown +++ b/source/_integrations/velux.markdown @@ -10,12 +10,14 @@ ha_iot_class: Local Polling ha_codeowners: - '@Julius2342' - '@DeerMaximum' + - '@pawlizio' ha_domain: velux ha_platforms: - cover - light - scene ha_integration_type: integration +ha_dhcp: true --- [Velux](https://www.velux.com/) {% term integration %} for Home Assistant allows you to connect to a Velux KLF 200 interface, to control [io-homecontrol](http://www.io-homecontrol.com) devices like windows and blinds. The module allows you to start scenes configured within KLF 200. diff --git a/source/_integrations/vesync.markdown b/source/_integrations/vesync.markdown index bb4b624e03b..9cf8b13d627 100644 --- a/source/_integrations/vesync.markdown +++ b/source/_integrations/vesync.markdown @@ -14,8 +14,10 @@ ha_codeowners: - '@webdjoe' - '@thegardenmonkey' - '@cdnninja' + - '@iprak' ha_domain: vesync ha_platforms: + - binary_sensor - diagnostics - fan - humidifier diff --git a/source/_integrations/whisper.markdown b/source/_integrations/whisper.markdown index e6b004997b2..f4340d6a2b0 100644 --- a/source/_integrations/whisper.markdown +++ b/source/_integrations/whisper.markdown @@ -13,6 +13,7 @@ ha_codeowners: - '@synesthesiam' ha_config_flow: true ha_platforms: + - assist_satellite - binary_sensor - conversation - number diff --git a/source/_posts/2025-02-05-release-20252.markdown b/source/_posts/2025-02-05-release-20252.markdown new file mode 100644 index 00000000000..13312c4641b --- /dev/null +++ b/source/_posts/2025-02-05-release-20252.markdown @@ -0,0 +1,631 @@ +--- +layout: post +title: "2025.2: Iterating on backups" +description: "Lot of backup features including using Google Drive and Microsoft OneDrive as backup locations! Voice can now broadcast messages and control your thermostat. And much more!" +date: 2025-02-05 00:00:00 +date_formatted: "February 5, 2025" +author: Franck Nijhof +author_twitter: frenck +comments: true +categories: + - Release-Notes + - Core +og_image: /images/blog/2025-02/social.jpg +--- + + + +Home Assistant 2025.2! ❤️ + +In the previous release, we [overhauled our backup system](/blog/2025/01/03/release-20251/#overhaul-of-the-backup-system), +and the response was overwhelming! Tons of suggestions and feature requests +came in, so this release is—once again—focused on backups. Based on this +community feedback, we’ve added loads of improvements, including the first +integrations to store your backups in **Google Drive** +and **Microsoft OneDrive**! + +This release also brings exciting new features to **Voice**! Home Assistant can +now call your **analog phone**, and when dinner is ready, you can **broadcast** +that message to all voice assistants in your home! But wait… there’s more! + +On **February 12, 2025**, we’re streaming live on YouTube all about Voice: +[**Voice - Chapter 9**](https://www.youtube.com/live/k6VvzDSI8RU)! 🎙 +Be sure to subscribe and hit the bell so you don’t miss it. 🛎 + +Before diving into the release notes, I also want to give a shoutout to our +friends at [**ESPHome**](https://esphome.io/) powering so much of the Home +Assistant ecosystem, including Home Assistant Voice PE! And +on **February 19th**, they’ll be hosting a +[**live release party for ESPHome 2025.2**](https://www.youtube.com/live/HtG3fjAO96c)! 🎉 + +Enjoy the release! + +../Frenck + +_PS: It is almost Valentine's day, did you set up some romantic scenes yet? 🌹_ + + + +- [Iterating on backups](#iterating-on-backups) + - [Unencrypted backups](#unencrypted-backups) + - [Ability to turn off encryption for specific locations](#ability-to-turn-off-encryption-for-specific-locations) + - [Downloading backups unencrypted](#downloading-backups-unencrypted) + - [Customize the time of your backups](#customize-the-time-of-your-backups) + - [Taking backups on an advanced schedule](#taking-backups-on-an-advanced-schedule) + - [Re-introduction of the backup toggle on update](#re-introduction-of-the-backup-toggle-on-update) + - [Backup on updating Home Assistant](#backup-on-updating-home-assistant) + - [Backup on updating add-ons](#backup-on-updating-add-ons) + - [Improved filenames for backups](#improved-filenames-for-backups) + - [New locations](#new-locations) +- [Voice](#voice) + - [Home Assistant will be able to call your analog phone to tell you a message](#home-assistant-will-be-able-to-call-your-analog-phone-to-tell-you-a-message) + - [New Broadcast intent](#new-broadcast-intent) + - [Setting Temperature on Thermostat](#setting-temperature-on-thermostat) + - [LLMs meet calendars](#llms-meet-calendars) + - [Shared history between the default conversation agent and its LLM-based fallback](#shared-history-between-the-default-conversation-agent-and-its-llm-based-fallback) + - [Model Context Protocol](#model-context-protocol) +- [Integrations](#integrations) + - [New integrations](#new-integrations) + - [Noteworthy improvements to existing integrations](#noteworthy-improvements-to-existing-integrations) + - [Now available to set up from the UI](#now-available-to-set-up-from-the-ui) +- [Other noteworthy changes](#other-noteworthy-changes) +- [Bluetooth config panel](#bluetooth-config-panel) +- [Preparing our graphs for the future](#preparing-our-graphs-for-the-future) +- [Need help? Join the community!](#need-help-join-the-community) +- [Backward-incompatible changes](#backward-incompatible-changes) +- [All changes](#all-changes) + +## Iterating on backups + +In the previous release, we [fully revamped the entire backup experience](/blog/2025/01/03/release-20251/#overhaul-of-the-backup-system) +and added many new features to make it easier to use. That release set the +stage for the next iterations and opened up the ability for integrations to +provide locations to store backups. + +We've received **a lot** of feedback on the new backup system, which is awesome! ❤️ +All the feedback helped us prioritize the most requested features, and other +improvements to the backup system. + +This release includes a lot of the most requested improvements and abilities. + +### Unencrypted backups + +The new backup system came with a lot of security improvements, including +encryption of backups. However, as it turns out, many users use these backups +to extract and restore single files or configurations, a use case in which +encryption made things more difficult. In this release we made two changes +to the backup system to address this. + +#### Ability to turn off encryption for specific locations + +While our default recommendation remains to encrypt backups, as of this +release, you can turn off encryption on a per location basis. This allows you +to store backups on you local NAS, for example, in an unencrypted format. + +Screenshot showing the option to turn off encryption for a specific backup location. + +Screenshot showing the backup locations, one location indicates that encryption has been turned off. + +There is one exception to this, which is [Home Assistant Cloud](/cloud). Backups +stored in Home Assistant Cloud will always be encrypted, and encryption cannot +be turned off. At Nabu Casa, we take your privacy and security very seriously, +and we never ever want to be able to access your data. + +#### Downloading backups unencrypted + +When downloading backups from the Home Assistant interface, you will now always +download the backup in an unencrypted format that can be extracted using your +favorite archive tool. + +This works for all backups, regardless of the encryption settings of the +location in which they are stored. For instance, if you download an encrypted +backup from Home Assistant Cloud through the Home Assistant interface, +it will decrypt the backup on the fly while you download it. + +### Customize the time of your backups + +The initial iteration of the backup system scheduled backups to run at 4:45 AM, +but this time wasn't ideal for everyone. Some, for example, turned off their +network storage during the night, meaning the backup would fail. + +This release, we added the ability to customize the time of your backups to your +liking. Additionally, if you choose to make weekly backups, you can now select +the days of the week you want the backup to run. + +Screenshot showing the backup configuration options, you can now set your own time and select which days to backup. + +### Taking backups on an advanced schedule + +The above backup time changes not flexible enough for you? Well, you are in luck! In this +release, we added an action (`backup.create_automatic`) that you can use +to trigger a backup, with your preferred settings, in an automation. + +Screenshot showing an automation in the automation editor that is using the new action to create an automated backup. + +This allows you to create automated backups on any schedule you like, or even +add conditions and actions around it. For example, you could make an automation +that triggers on a calendar, wakes up your network storage, waits till it is +online, and then starts a backup. + +### Re-introduction of the backup toggle on update + +If you run Home Assistant OS, you get updates for Home Assistant along with +all your add-ons. The update dialog used to have a toggle to create a backup +before updating, which was removed in the previous release. + +This change was made because this feature was considered redundant when running +regular automated backups. However, we’ve received a lot of feedback that many +people relied on these backups to ensure they had the latest data, for instance, +if they needed to roll back to a previous version of an add-on. We are +re-introducing this backup on update toggle in this release, but in a smarter +way. 🤓 + +#### Backup on updating Home Assistant + +When updating Home Assistant, the toggle is now turned off by default and +shows the last time you made a backup. This allows you to decide whether to make +a new backup before updating. + +Screenshot showing an Home Assistant Core update dialog, giving the option to make a backup before update. + +If you turn the switch on, a full automated backup is created and synced to +your configured locations, before the update is started. + +This full sync is done to ensure you have the most recent backup available in +case the update causes issues and you need to restore your system. In the rare +case a Home Assistant update fatally fails and you can’t access the backup page, +if you’ve configured a second backup location, you’ll be able to download it +from there. + +#### Backup on updating add-ons + +Things are slightly different when updating add-ons. The toggle exists here too, +and is disabled by default. However, when you enable it, only a backup of your +add-on and its data is created. That way you can keep around the previous +version of the add-on, so you can always roll back to it if needed. + +Screenshot showing an Home Assistant add-on update dialog, giving the option to make a backup before update. + +To prevent your system from filling up with old add-on backups, we only retain +one backup per add-on, automatically deleting the previous backup whenever +a new one is created. Add-on backups you created manually, of course, +remain untouched and will not be deleted automatically. + +### Improved filenames for backups + +One piece of feedback we’ve seen a lot, is that the filenames created by backups +can be a bit cryptic and hard to understand for humans. + +This feedback was fair, as the filename was a hash and originally not designed +to be human-readable. This method was not newly introduced in the last release, +but it was made more apparent with the new backup system and locations. + +So, in this release, we've improved the filenames of the backups stored on your +backup locations. The filename now includes the date and time the backup was +created, making it easier to understand and identify the backup you are looking +for, even outside of Home Assistant. + +### New locations + +This release also introduces new locations to store your backups. There are new +integrations for [Google Drive](/integrations/google_drive/) and +[Microsoft OneDrive](/integrations/onedrive/), and backup support was added to +the [Synology DSM](/integrations/synology_dsm) integration. + +Screenshot showing the backup configuration panel, with all possible backup integrations set up! + +## Voice + +Assist, our [private voice assistant](/voice_control/), is getting a few new +features in this release. If you don't have Assist set up yet, check out our +[Home Assistant Voice: Preview Edition](/voice-pe/) to get started. + +### Home Assistant will be able to call your analog phone to tell you a message + +Remember our tutorial on turning an analog phone into the +[world's most private voice assistant](/voice_control/worlds-most-private-voice-assistant/)? +Thanks to [Jamin](https://github.com/jaminh), we now have a way to call +your analog phone from Home Assistant! + +You can use [`assist_satellite.announce`](/integrations/assist_satellite#action-assist_satelliteannounce) +to have Home Assistant call your phone and play a message when someone picks up +the phone. + +If you use an LLM as the brains for your voice assistant, you can take this one +step further with the new [`assist_satellite.start_conversation`](/integrations/assist_satellite#action-assist_satellitestart_conversation) +action. Instead of playing an announcement, it starts a conversation between +Home Assistant and the user, with Home Assistant saying the first message. +Left the garage door open for 30 minutes? No problem, let Home Assistant call +and ask if they want to close it. + +_(Starting a conversation with the default conversation agent is a bit more work +and did not make it this release)._ + +### New Broadcast intent + +You can now broadcast messages to every other voice assistant in your home. +Try it by saying _"Broadcast it is time for dinner"_. +As always with new intents, support may vary +[depending on your language](https://home-assistant.github.io/intents/), +but our language leaders are working hard on making sure it will be supported +soon in your language! + +### Setting Temperature on Thermostat + +A few releases ago we introduced an intent to get the current temperature from +a climate device. As of this release, you can also set the target temperature +of your thermostat by voice. + +By saying _"Set the temperature to 19 degrees"_ this will smartly target the +area you are in (if you have a thermostat per area, such as thermostatic valves +on your radiators) or the floor you are in (if you only have a central unit). +You can also target specific devices by name if you prefer. + +### LLMs meet calendars + +Without complex custom tooling, LLM-based conversation agents previously could +not fetch events from your calendar. This release changes that. Out of the box, +LLM-based agents can now retrieve today’s and this week’s events from any of +your calendars. Don’t forget to +[expose your calendar entities](/voice_control/voice_remote_expose_devices/) +to enable this functionality. + +### Shared history between the default conversation agent and its LLM-based fallback + +In [2024.12](/blog/2024/12/04/release-202412/) we introduced a lovely feature +that allowed you to use our fast and local default conversation agent for most +queries while still being able to fall back to a much more powerful LLM-based +agent for more complex queries. + +This introduced some interesting behaviors. From a user perspective, it looked +like you were talking to the same assistant, whereas, in reality, nothing was +shared between the two agents. This led to some less-than-optimal scenarios, +such as this one: + +Screenshot of missing history in the conversation + +The first command is processed locally by our default agent, but the follow-up +request is processed by the LLM-based agent. Since no memory is shared, it does +not understand what device you want to turn off. + +Starting with this release, both agents now share the same command history, +helping address this issue. + +Screenshot of the new improved behavior + +### Model Context Protocol + +This release adds the [Model Context Protocol](https://modelcontextprotocol.io/introduction) +to Home Assistant thanks to [Allen][@allenporter]. Home Assistant can both be an +[MCP server](/integrations/mcp_server/) and an +[MCP client](/integrations/mcp/). From the MCP website: + +> MCP is an open protocol that standardizes how applications provide context to LLMs. Think of MCP like a USB-C port for AI applications. Just as USB-C provides a standardized way to connect your devices to various peripherals and accessories, MCP provides a standardized way to connect AI models to different data sources and tools. + +To give it a try yourself, [check out this client demo](https://gist.github.com/allenporter/b0e9946feb2ab60901c4f467ac1ba6f9). + +## Integrations + +Thanks to our community for keeping pace with the new {% term integrations %} +and improvements to existing ones! You’re all awesome 🥰 + +### New integrations + +We welcome the following new integrations in this release: + +- **[Google Drive]**, added by [@tronikos]
+ Add your Google Drive as a location to store your Home Assistant backups. +- **[Homee]**, added by [@Taraman17]
+ Integrate your [Homee smart home system] into Home Assistant. +- **[igloohome]**, added by [@keithle888]
+ Monitor the battery levels of your [igloo smart access device(s)]. +- **[LetPot]**, added by [@jpelgrom]
+ Monitor and control your [LetPot indoor garden]. +- **[OneDrive]**, added by [@zweckj]
+ Allows you to store your Home Assistant backups in your Microsoft OneDrive. +- **[Overseerr]**, added by [@joostlek]
+ Interact with your [Overseerr media requests] directly from Home Assistant. +- **[Model Context Protocol Server]**, added by [@allenporter]
+ Enables using Home Assistant to provide context for MCP LLM Client + Applications. For example, you can expose your Google Tasks to-do list as a + tool for [Claude Desktop]. +- **[Model Context Protocol]**, added by [@allenporter]
+ Enables using [MCP Servers] in Home Assistant to provide additional tools to + use with a conversation agent. +- **[Qbus]**, added by [@thomasddn]
+ Allows you to integrate your [Qbus Control] into Home Assistant. + +This release also has a new virtual integration. Virtual integrations are stubs +that are handled by other (existing) integrations to help with findability. +The following virtual integration have been added: + +- **[Decorquip Dream]**, provided by [Motionblinds] added by [@starkillerOG] + +[@allenporter]: https://github.com/allenporter +[@joostlek]: https://github.com/joostlek +[@jpelgrom]: https://github.com/jpelgrom +[@keithle888]: https://github.com/keithle888 +[@starkillerOG]: https://github.com/starkillerOG +[@Taraman17]: https://github.com/Taraman17 +[@thomasddn]: https://github.com/thomasddn +[@tronikos]: https://github.com/tronikos +[@zweckj]: https://github.com/zweckj +[Claude Desktop]: https://claude.ai/download +[Decorquip Dream]: /integrations/decorquip/ +[Google Drive]: /integrations/google_drive +[Homee smart home system]: https://hom.ee/ +[Homee]: /integrations/homee +[igloo smart access device(s)]: https://www.igloohome.co/#products +[igloohome]: /integrations/igloohome +[LetPot indoor garden]: https://letpot.com/ +[LetPot]: /integrations/letpot +[MCP Servers]: https://modelcontextprotocol.io/ +[Model Context Protocol Server]: /integrations/mcp_server +[Model Context Protocol]: /integrations/mcp +[Motionblinds]: /integrations/motion_blinds +[OneDrive]: /integrations/onedrive +[Overseerr media requests]: https://overseerr.dev/ +[Overseerr]: /integrations/overseerr +[Qbus Control]: https://www.qbus.be/ +[Qbus]: /integrations/qbus/ + +### Noteworthy improvements to existing integrations + +It is not just new {% term integrations %} that have been added; existing +integrations are also being constantly improved. Here are some of the noteworthy +changes to existing integrations: + +- A big shoutout to [@NoRi2909]! He has been reviewing and improving every single + piece of text we show anywhere in Home Assistant. Thank you for your hard work! +- Also, [@lboue]! This hero keeps extending the device support for the [Matter] + integration by adding support for more and more devices. Home Assistant is + close to reaching full Matter 1.4 device support! +- [@chemelli74] added support for the [Shelly BLU TRV] to the [Shelly] + integration. Nice! +- The [HomeWizard Energy] integration now supports the + [HomeWizard Plug-In Battery]. Awesome work [@DCSBL]! +- Thanks to [@iprak], the [Vesync] integration now supports humidifiers! +- [@rytilahti] added vacuum support to the [TP-Link Smart Home] integration. Sweet! +- The [Reolink] integration keeps evolving, [@starkillerOG] added support for baby crying detection as a sensor. Nice! +- The [Bang & Olufsen] integration now provides entities allowing you to react + to physical button presses on all Bang & Olufsen devices. Thanks [@mj23000]! + +[@chemelli74]: https://github.com/chemelli74 +[@DCSBL]: https://github.com/DCSBL +[@iprak]: https://github.com/iprak +[@lboue]: https://github.com/lboue +[@mj23000]: https://github.com/mj23000 +[@NoRi2909]: https://github.com/NoRi2909 +[@rytilahti]: https://github.com/rytilahti +[@starkillerOG]: https://github.com/starkillerOG +[Bang & Olufsen]: /integrations/bang_olufsen +[HomeWizard Energy]: /integrations/homewizard +[HomeWizard Plug-In Battery]: https://www.homewizard.com/nl/plug-in-battery/ +[Matter]: /integrations/matter +[Reolink]: /integrations/reolink +[Shelly BLU TRV]: https://www.shelly.com/products/shelly-blu-trv-single-pack +[Shelly]: /integrations/shelly +[TP-Link Smart Home]: /integrations/tplink +[Vesync]: /integrations/vesync + +### Now available to set up from the UI + +While most {% term integrations %} can be set up directly from the Home Assistant +user interface, some were only available using YAML configuration. We keep moving +more integrations to the UI, making them more accessible for everyone +to set up and use. + +The following integration is now available via the Home Assistant UI: + +- **[NMBS]**, done by [@silamon] +- **[Filter]**, done by [@gjohansson-ST] + +[@gjohansson-ST]: https://github.com/gjohansson-ST +[@silamon]: https://github.com/silamon +[Filter]: /integrations/filter +[NMBS]: /integrations/nmbs + +## Other noteworthy changes + +- When using the [Generic thermostat], setting a temperature that matches + one of the presets will automatically select that preset as active. + Thanks [@domingues]! +- [Time triggers] in automations can now be offset when using datetime input + helpers. Thanks [@Petro31]! + +[@domingues]: https://github.com/domingues +[@Petro31]: https://github.com/Petro31 +[Generic thermostat]: /integrations/generic_thermostat +[Time triggers]: /docs/automation/trigger/#time-trigger + +## Bluetooth config panel + +The [Bluetooth integration] now has its own configuration panel! 💙 + +The panel is accessible by going to **Settings** > **Device & services**. Find +and select the **Bluetooth** integration, and next select **Configure**. + +This new panel gives you access to the Bluetooth integration options and +insights into the connection slot allocations. More importantly, +it has an advertisement monitor! + +Selecting **Advertisement monitor** will open a new panel, where you can see +information about your Bluetooth devices, including the raw advertisement data +and how they are connected to your Home Assistant instance. This includes +which [Bluetooth proxy] it connects through! + +Screenshot of the new advertisement panel + +[Bluetooth integration]: /integrations/bluetooth +[Bluetooth proxy]: /integrations/bluetooth/#remote-adapters-bluetooth-proxies + +## Preparing our graphs for the future + +This release includes a major overhaul of every graph we display and show in +Home Assistant. We have entirely replaced the software library that renders +these graphs in the frontend. + +You can most definitely tell things have changed, but everything still looks +very similar. The latter was our goal for now, as we wanted the existing +experience to be familiar. + +However, this change is a preparation for the future. We have many plans and +ideas for our graphs, and this change was a necessary step to make those plans +possible. + +## Need help? Join the community! + +Home Assistant has a great community of users who are all more than willing +to help each other out. So, join us! + +Our very active [Discord chat server](/join-chat) is an excellent place to be +at, and don't forget to join our amazing [forums](https://community.home-assistant.io/). + +Found a bug or issue? Please report it in our [issue tracker](https://github.com/home-assistant/core/issues), +to get it fixed! Or, check [our help page](/help) for guidance for more +places you can go. + +Are you more into email? [Sign-up for our Building the Open Home Newsletter](/newsletter) +to get the latest news about features, things happening in our community and +other news about building an Open Home; straight into your inbox. + +## Backward-incompatible changes + +We do our best to avoid making changes to existing functionality that might +unexpectedly impact your Home Assistant installation. Unfortunately, sometimes, +it is inevitable. + +We always make sure to document these changes to make the transition as easy as +possible for you. This release has the following backward-incompatible changes: + +{% details "Ecovacs" %} + +The attributes on the vacuum entity for the lifespan of the main brush, side +brush, and filter have been deprecated and are now removed. These attributes +are superseded by dedicated sensor entities. + +([@gjohansson-ST] - [#134492]) ([documentation](/integrations/ecovacs)) + +[@gjohansson-ST]: https://github.com/gjohansson-ST +[#134492]: https://github.com/home-assistant/core/pull/134492 + +{% enddetails %} + +{% details "Home Connect" %} + +Some appliances might lose their power entity as the API does not report the +power setting. + +([@Diegorro98] - [#135930]) ([documentation](/integrations/home_connect)) + +[@Diegorro98]: https://github.com/Diegorro98 +[#135930]: https://github.com/home-assistant/core/pull/135930 + +{% enddetails %} + +{% details "IMGW-PIB" %} + +Some hydrology data is no longer available to Home Assistant users via IMGW-PIB +API and for this reason, the following entities are removed: + +- `flood alarm` binary sensor +- `flood alarm level` sensor +- `flood warning` binary sensor +- `flood warning level` sensor + +([@bieniu] - [#134668]) ([documentation](/integrations/imgw_pib)) + +[@bieniu]: https://github.com/bieniu +[#134668]: https://github.com/home-assistant/core/pull/134668 + +{% enddetails %} + +{% details "KNX" %} + +The "State Updater" option in the integration settings now works as intended. +Previously, the option wasn’t applied correctly. + +- When disabled: KNX will only read a `state_address` once when the connection + is established. +- When enabled: KNX will also read any `state_address` if no value has been + received for one hour. + +Please review your integration settings to ensure this option is configured +according to your preferences. + +([@farmio] - [#135611]) ([documentation](/integrations/knx)) + +[@farmio]: https://github.com/farmio +[#135611]: https://github.com/home-assistant/core/pull/135611 + +{% enddetails %} + +{% details "Litter-Robot" %} + +Remove extra_state_attributes from Litter-Robot vacuum entities. +These were previously migrated to sensors. + +([@natekspencer] - [#136196]) ([documentation](/integrations/litterrobot)) + +[@natekspencer]: https://github.com/natekspencer +[#136196]: https://github.com/home-assistant/core/pull/136196 + +{% enddetails %} + +{% details "MQTT" %} + +To change the MQTT broker settings, you need to start a reconfiguration. +When `CONFIGURE` is selected, MQTT shows a "MQTT settings" page with subscribe +and publish tools. The `Re-configure MQTT` button will be replaced with +an `MQTT options` page. + +The reconfiguration option will only be available from the MQTT integration +entry context menu. + +([@jbouwh] - [#133342]) ([documentation](/integrations/mqtt)) + +[@jbouwh]: https://github.com/jbouwh +[#133342]: https://github.com/home-assistant/core/pull/133342 + +{% enddetails %} + +{% details "Pentair ScreenLogic" %} + +Raw states derived from ScreenLogic enums are now lowercase instead of Title +Case. This change impacts: + +- pH/ORP dosing state sensor entities: + - `Dosing` -> `dosing` + - `Mixing` -> `mixing` + - `Monitoring` -> `monitoring` +- The `preset_mode` state attribute for ScreenLogic climate entities, where + raw states have also been underscored-spaced and had any punctuation removed. + - `Solar` -> `solar` + - `Solar Preferred` -> `solar_preferred` + - `Heater` -> `heater` + - `Don't Change` -> `dont_change` + +These changes support the addition of translation keys for text-based entity +states. You should update any references to the above states/preset_modes to +the new, lowercase versions. + +([@dieselrabbit] - [#133866]) ([documentation](/integrations/screenlogic)) + +[@dieselrabbit]: https://github.com/dieselrabbit +[#133866]: https://github.com/home-assistant/core/pull/133866 + +{% enddetails %} + +If you are a custom integration developer and want to learn about changes and +new features available for your integration: Be sure to follow our +[developer blog][devblog]. The following are the most notable for this release: + +- [Energy by distance units](https://developers.home-assistant.io/blog/2025/01/31/energy-distance-units/) +- [Relocate dhcp/ssdp/usb/zeroconf ServiceInfo models](https://developers.home-assistant.io/blog/2025/01/15/service-info) + +[devblog]: https://developers.home-assistant.io/blog/ + +## All changes + +Of course, there is a lot more in this release. You can find a list of +all changes made here: [Full changelog for Home Assistant Core 2025.2](/changelogs/core-2025.2) diff --git a/source/changelogs/core-2025.2.markdown b/source/changelogs/core-2025.2.markdown new file mode 100644 index 00000000000..98215ecdc7a --- /dev/null +++ b/source/changelogs/core-2025.2.markdown @@ -0,0 +1,2886 @@ +--- +title: Full changelog for Home Assistant Core 2025.2 +description: Detailed changelog for the Home Assistant Core 2025.2 release +replace_regex: \s\(\[?[a-z0-9\-\s_]+\]?\)$ +--- + +These are all the changes included in the Home Assistant Core 2025.2 release. + +For a summary in a more readable format: +[Release notes blog for this release](/blog/2025/02/05/release-20252/). + +- Add removal instructions to ElevenLabs ([@sorgfresser] - [#133895]) +- Bump version to 2025.2.0dev0 ([@frenck] - [#133893]) +- Mark missing IQS requirements for Idasen Desk as done ([@abmantis] - [#133910]) +- Revise codeowners for Overkiz ([@iMicknl] - [#133784]) +- Remove myself as codeowner from Plugwise ([@frenck] - [#133920]) +- Remove myself as codeowner from Tuya integration ([@frenck] - [#133921]) +- Prevent imports from tests in core codebase ([@frenck] - [#133928]) +- Make screenlogic state enums lowercase ([@dieselrabbit] - [#133866]) +- Bump velbusaio to 2024.12.3 ([@cereal2nd] - [#133939]) +- Update pyvesync version ([@cdnninja] - [#131433]) +- Add pip wheel build constraints to fix numpy builds ([@cdce8p] - [#133962]) +- Bump subarulink to 0.7.13 ([@G-Two] - [#133970]) +- Bump numpy to 2.2.1 ([@bdraco] - [#133844]) +- Add parallel updates to swiss public transport ([@miaucl] - [#133996]) +- Add clear shopping list button for Cookidoo ([@miaucl] - [#133583]) +- Add config flow data description to swiss public transport ([@miaucl] - [#133997]) +- Fulfill IQS rule docs-removal-instructions in ViCare integration ([@CFenner] - [#133982]) +- Update silver docs for swiss public transport ([@miaucl] - [#134001]) +- Bump Tesla Fleet API library ([@Bre77] - [#134019]) +- Bump python-google-nest-sdm to 7.0.0 ([@allenporter] - [#134016]) +- Tado update code owners ([@erwindouna] - [#133987]) +- Fix typo in get_command action description ([@NoRi2909] - [#134026]) +- Use correct uppercase for abbreviations ([@NoRi2909] - [#134028]) +- Fix Nest ConfigEntry typing ([@allenporter] - [#134021]) +- Replace "service" with "action" plus fixed descriptions ([@NoRi2909] - [#134053]) +- Bump pyipma to 3.0.8 ([@dgomes] - [#134055]) +- Remove mqtt publish templates after 6 months of deprecation ([@jbouwh] - [#134056]) +- Fix unifiprotect DeprecationWarnings in tests ([@cdce8p] - [#134060]) +- Suez_water: remove redundant log on refresh failure ([@jb101010-2] - [#134025]) +- Add state_class to EcoWittSensorTypes.DEGREE ([@tkunzfeld] - [#134004]) +- Roborock Add vacuum_goto service ([@RaHehl] - [#133994]) +- Revert "Add state_class to EcoWittSensorTypes.DEGREE" ([@frenck] - [#134079]) +- Add azure_data_explorer to microsoft brand ([@zweckj] - [#134088]) +- Bump pyheos to v0.8.0 ([@andrewsayre] - [#134069]) +- Remove Tile unique id migration ([@joostlek] - [#134106]) +- Extract Tile coordinator in separate file ([@joostlek] - [#134104]) +- Remove YAML import from Tile ([@joostlek] - [#134108]) +- Bump Tado to 0.18.5 ([@erwindouna] - [#133988]) +- Set PARALLEL_UPDATES for incomfort entity platforms ([@jbouwh] - [#134110]) +- Introduce base entity for Tile ([@joostlek] - [#134109]) +- Add unit test for sensors in swiss public transport ([@miaucl] - [#134115]) +- Migrate Tile to use entry.runtime_data ([@joostlek] - [#134107]) +- Remove deprecated yaml import for Russound RIO ([@noahhusby] - [#134072]) +- Bump aiorussound to 4.2.0 ([@noahhusby] - [#134117]) +- Converge stream av open methods, options, and error handling ([@allenporter] - [#134020]) +- Add mute support to Russound RIO ([@noahhusby] - [#134118]) +- Bump pysqueezebox to v0.11.1 ([@rajlaud] - [#134097]) +- Remove incorrect device check in LCN events ([@alengwenus] - [#134116]) +- Add Overseerr integration ([@joostlek] - [#133981]) +- Remove unused parameters from function calls in rainbird ([@allenporter] - [#134124]) +- Refactor Tile tests ([@joostlek] - [#134130]) +- Add Tile device tests ([@joostlek] - [#134138]) +- Add ClassVar annotation for singleton patterns ([@cdce8p] - [#134135]) +- Add Velbus binary sensor tests ([@cereal2nd] - [#134132]) +- Add Tile device tracker tests ([@joostlek] - [#134137]) +- Bump python-overseerr to 0.3.0 ([@joostlek] - [#134147]) +- Add versions to Tile device ([@joostlek] - [#134150]) +- Use x,y in roborock action call ([@gjohansson-ST] - [#134133]) +- Remove deprecated Mastodon yaml config import ([@andrew-codechimp] - [#134040]) +- Add quality_scale.yaml for KNX ([@farmio] - [#133937]) +- Suez_water: use meter id as unique_id ([@jb101010-2] - [#133959]) +- Bump pynecil to v3.0.0 ([@tr4nt0r] - [#134151]) +- Add binary sensor to Tile ([@joostlek] - [#134153]) +- Suez_water: clear quality scale ([@jb101010-2] - [#134027]) +- Add switch platform to IronOS integration ([@tr4nt0r] - [#133691]) +- Bump pynecil to v3.0.1 ([@tr4nt0r] - [#134174]) +- Add Velbus Button tests ([@cereal2nd] - [#134186]) +- Add button platform to IronOS integration ([@tr4nt0r] - [#133678]) +- Bump python-overseerr to 0.4.0 ([@joostlek] - [#134192]) +- Migrate Habitica integration to habiticalib ([@tr4nt0r] - [#131032]) +- Move coordinator to own file in Open-Meteo ([@gjohansson-ST] - [#134197]) +- Bump aioswitcher to 6.0.0 ([@thecode] - [#134185]) +- Fix method subtyping [elkm1] ([@cdce8p] - [#134210]) +- Fix method subtyping [knx] ([@cdce8p] - [#134211]) +- Fix method subtyping [recorder] ([@cdce8p] - [#134212]) +- Fix method subtyping [helpers] ([@cdce8p] - [#134213]) +- Add slot list service to ohme ([@dan-r] - [#134170]) +- Use config entry runtime data in Open-Meteo ([@gjohansson-ST] - [#134198]) +- Add reauth flow to Habitica integration ([@tr4nt0r] - [#131676]) +- Set Scrape sensor unavailable when errors ([@gjohansson-ST] - [#134143]) +- Bump habiticalib to v0.3.2 ([@tr4nt0r] - [#134244]) +- Remove unused translations from Russound RIO ([@noahhusby] - [#134246]) +- Remove deprecated yaml import from OTP integration ([@tr4nt0r] - [#134196]) +- Record LG WebOS TV Quality scale ([@joostlek] - [#133732]) +- Bump Python Matter server to 7.0.0 (Matter 1.4) ([@lboue] - [#132502]) +- Fix two descriptions of yeelight actions ([@NoRi2909] - [#134282]) +- Add battery sensor to ohme ([@dan-r] - [#134222]) +- Replace "service" with "action" ([@NoRi2909] - [#134279]) +- Replace unnecessary abbreviations in set_room_temperature action ([@NoRi2909] - [#134278]) +- Add discovery to Russound RIO ([@noahhusby] - [#134245]) +- Add parallel updates to camera platform in Trafikverket Camera ([@gjohansson-ST] - [#134298]) +- Use typed config entry in Trafikverket Camera ([@gjohansson-ST] - [#134299]) +- Use typed config entry everywhere in Trafikverket Ferry ([@gjohansson-ST] - [#134300]) +- Set parallel updates in Trafikverket Ferry ([@gjohansson-ST] - [#134301]) +- Use typed config entry everywhere in Trafikverket Weatherstation ([@gjohansson-ST] - [#134308]) +- Set parallel updates in Trafiverket Weatherstation ([@gjohansson-ST] - [#134309]) +- Explicitly set config entry in Trafikverket Weatherstation coordinator ([@gjohansson-ST] - [#134310]) +- Explicitly set config entry in Trafikverket Ferry coordinator ([@gjohansson-ST] - [#134305]) +- Use typed config entry everywhere in Trafikverket Train ([@gjohansson-ST] - [#134303]) +- Explicitly set config entry in Trafikverket Train coordinator ([@gjohansson-ST] - [#134304]) +- Set parallel updates in Trafikverket Train ([@gjohansson-ST] - [#134302]) +- Bump pyvesync to 2.1.15 ([@iprak] - [#134156]) +- Update description of the script toggle action ([@NoRi2909] - [#134093]) +- Full test coverage for Vodafone Station sensor platform ([@chemelli74] - [#133285]) +- Refactor and simplify config flow in generic camera ([@davet2001] - [#134330]) +- Bump aiorussound to 4.3.0 ([@noahhusby] - [#134242]) +- Add Bang & Olufsen button Event entities ([@mj23000] - [#127550]) +- Bump aiorussound to 4.4.0 ([@noahhusby] - [#134366]) +- Add Reolink baby crying binary sensor ([@starkillerOG] - [#134290]) +- Use text selectors for lamarzocco config flow ([@zweckj] - [#134368]) +- Remove leftover newline codes and periods from strings.json ([@NoRi2909] - [#134354]) +- Bump ohmepy to 1.2.3 ([@dan-r] - [#134348]) +- Change Reolink test switch entity ID ([@starkillerOG] - [#134339]) +- Ensure an entity platform is added in mqtt tests ([@jbouwh] - [#134331]) +- Use "restore from" in field descriptions of restore_partial action ([@NoRi2909] - [#134285]) +- Add placeholder url to Sensibo api description ([@gjohansson-ST] - [#134342]) +- Add velbus switch platform testcases ([@cereal2nd] - [#134207]) +- Add diagnostics to Trafikverket Weatherstation ([@gjohansson-ST] - [#134314]) +- Add integration for igloohome devices ([@keithle888] - [#130657]) +- Cleanup lamarzocco tests ([@zweckj] - [#134383]) +- Implement base entity class for Twinkly ([@sVnsation] - [#134382]) +- Add Velbus climate platform tests ([@cereal2nd] - [#134387]) +- Calculate number of discovery topics correctly ([@jbouwh] - [#134393]) +- Velbus select platform testcases ([@cereal2nd] - [#134394]) +- Move available property to base entity in Sensibo ([@gjohansson-ST] - [#134410]) +- Add mill number platform ([@Danielhiversen] - [#134044]) +- Add the Model Context Protocol Server integration ([@allenporter] - [#134122]) +- Add base entity to Mill ([@gjohansson-ST] - [#134415]) +- Update mypy-dev to 1.15.0a1 ([@cdce8p] - [#134416]) +- Add HEOS options flow for optional authentication ([@andrewsayre] - [#134105]) +- Add debug log and Optimize code ([@ashionky] - [#134328]) +- Add `current_humidity` state attribute to Google Nest climate entity ([@jbarreiros] - [#134426]) +- Add action translations to Sensibo ([@gjohansson-ST] - [#134420]) +- Add translations to all Sensibo errors ([@gjohansson-ST] - [#134422]) +- Remove habitipy references in Habitica integration ([@tr4nt0r] - [#134419]) +- Improve names and descriptions in neato.custom_cleaning action ([@NoRi2909] - [#134399]) +- Add mode selector to Twinkly ([@sVnsation] - [#134041]) +- Update types packages ([@cdce8p] - [#134433]) +- Add sw_version to apsystems ([@Thomas55555] - [#134441]) +- Improve action descriptions with some more detail from the docs ([@NoRi2909] - [#134120]) +- Add types package for pyserial ([@cdce8p] - [#134444]) +- Remove deprecated yaml import from pyLoad integration ([@tr4nt0r] - [#134200]) +- Improve pandora media_player typing ([@cdce8p] - [#134447]) +- Update pexpect to 4.9.0 ([@cdce8p] - [#134450]) +- Remove deprecated YAML import from MPD ([@noahhusby] - [#134459]) +- Add support for specifying hvac_onoff_register value on modbus ([@illia-piskurov] - [#128366]) +- Remove excessive newline codes from strings.json ([@NoRi2909] - [#134468]) +- Change Reolink person binary sensor icon ([@SparkyDan555] - [#134472]) +- Remove sneaked in IronOS submodule ([@frenck] - [#134477]) +- Use username as config entry title in Sensibo ([@gjohansson-ST] - [#134488]) +- Improve error strings in Sensibo ([@gjohansson-ST] - [#134487]) +- Remove worldclock config entry import ([@gjohansson-ST] - [#134491]) +- Remove deprecated attributes from ecovacs ([@gjohansson-ST] - [#134492]) +- Remove deprecated uptime sensor from qnap_qsw ([@gjohansson-ST] - [#134493]) +- Update pillow to 11.1.0 ([@cdce8p] - [#134469]) +- Bump psutil to 6.1.1 ([@gjohansson-ST] - [#134494]) +- Add types package for pexpect ([@cdce8p] - [#134461]) +- Use the latest version of the pyserial-asyncio-fast library ([@rrooggiieerr] - [#134501]) +- Push Overseerr updates via webhook ([@joostlek] - [#134187]) +- Bump python-overseerr to 0.5.0 ([@joostlek] - [#134522]) +- Add quality scale to Sensibo ([@gjohansson-ST] - [#134296]) +- Add switch platform to Ohme ([@dan-r] - [#134347]) +- Add coordinator to vesync ([@iprak] - [#134087]) +- Add get_tasks action to Habitica integration ([@tr4nt0r] - [#127687]) +- Add state_class to Airthings integration ([@LaStrada] - [#134503]) +- Refactor all Sensibo tests ([@gjohansson-ST] - [#134478]) +- Enable strict typing for pandora ([@cdce8p] - [#134536]) +- Velbus add init testcases ([@cereal2nd] - [#134533]) +- Add Homee integration to Core ([@Taraman17] - [#133738]) +- Fix description of google_assistant.request_sync action ([@NoRi2909] - [#134535]) +- Remove deprecated sensors in Habitica integration ([@tr4nt0r] - [#134320]) +- Add support for `xvoltage` sensor for Shelly Plus UNI ([@bieniu] - [#134261]) +- Move SiLabs firmware probing helper from ZHA into `homeassistant_hardware` ([@puddly] - [#131586]) +- Update quality scale for Sensibo ([@gjohansson-ST] - [#134551]) +- Add supported features property in Sensibo ([@gjohansson-ST] - [#134479]) +- Add HEOS Reauth Flow ([@andrewsayre] - [#134465]) +- Require at least bronze for new integrations ([@joostlek] - [#134537]) +- Improve habitica action descriptions ([@NoRi2909] - [#134563]) +- Add sleep switch for all Foscam cameras if more than 1 camera are configured ([@N3rdix] - [#126064]) +- Velbus diagnostics code cleanup ([@cereal2nd] - [#134553]) +- Add image platform to Habitica integration ([@tr4nt0r] - [#129009]) +- Add velbus light and sensor platform testcases ([@cereal2nd] - [#134485]) +- Clean up docstrings in Sensibo ([@gjohansson-ST] - [#134591]) +- Add velbus diagnostics tests ([@cereal2nd] - [#134621]) +- Bump ical to 8.3.0 ([@allenporter] - [#134617]) +- Fix typo 'devide_id', use uppercase for abbreviations ID and LED ([@NoRi2909] - [#134634]) +- Replace aioclient_mock in Sensibo tests ([@gjohansson-ST] - [#134543]) +- Fix description of device_id field of reconnect_client actions ([@NoRi2909] - [#134275]) +- Update guppy to 3.1.5 ([@frenck] - [#134646]) +- Add velbus cover platform testcases ([@cereal2nd] - [#134654]) +- Remove LG WebOS TV legacy uuid migration ([@thecode] - [#134671]) +- Prefer a local webhook for Overseerr ([@joostlek] - [#134667]) +- Add Overseerr service to get requests ([@joostlek] - [#134229]) +- Bump gcal_sync to 7.0.0 ([@allenporter] - [#134687]) +- Clean-up HEOS entity event setup ([@andrewsayre] - [#134683]) +- Add prompts to MCP server ([@allenporter] - [#134619]) +- Remove excessive newline codes from squeezebox strings ([@NoRi2909] - [#134682]) +- Fix wrong description of group.set action ([@NoRi2909] - [#134697]) +- Fix typos / grammar in description of create_task action ([@NoRi2909] - [#134705]) +- Fix typos / grammar in nasweb integration ([@NoRi2909] - [#134721]) +- Fix spelling of "MAC (address)" and "Gateway" name ([@NoRi2909] - [#134724]) +- Deprecate HEOS sign_in and sign_out actions ([@andrewsayre] - [#134616]) +- Add support for "Lumin Smart Light" LD-0003 ([@rpavlik] - [#133328]) +- Bump ruff to 0.8.6 ([@autinerd] - [#134745]) +- Bump aranet4 to 2.5.0 ([@luc-ass] - [#134752]) +- Fix spelling of "MAC (address)" and "Slide" name in slide_local ([@NoRi2909] - [#134747]) +- Use uppercase "Chime" for product name, fix "MAC address" ([@NoRi2909] - [#134748]) +- Small fixes in the strings file of the Vera integration ([@NoRi2909] - [#134780]) +- Add ATTR_MODEL to DeviceInfo for Aranet ([@luc-ass] - [#134307]) +- Add latest Nighthawk WiFi 7 routers to V2 models ([@lanthaler] - [#134765]) +- Remove unneeded vesync device base class ([@cdnninja] - [#134499]) +- Use uppercase "ID" in Home Connect strings ([@NoRi2909] - [#134783]) +- Fix spelling of "ID" in Roku integration ([@NoRi2909] - [#134779]) +- Update roborock to ensure every room has a name, falling back to a placeholder ([@allenporter] - [#134733]) +- Fix spelling of "ID", slightly reword action description ([@NoRi2909] - [#134817]) +- Pass config entry directly to coordinator in System monitor ([@gjohansson-ST] - [#134837]) +- Set single_config_entry in System monitor manifest ([@gjohansson-ST] - [#134838]) +- Add python_script to strict typing ([@gjohansson-ST] - [#134822]) +- Make ChunkAsyncStreamIterator an aiohttp helper ([@mib1185] - [#134843]) +- Add get device capabilities action call for Sensibo ([@gjohansson-ST] - [#134596]) +- Add horizontal swing to Sensibo ([@gjohansson-ST] - [#132117]) +- Bump pynecil to v4.0.1 ([@tr4nt0r] - [#134852]) +- Remove deprecated binary sensor battery charging from technove ([@gjohansson-ST] - [#134844]) +- Fix spelling of "set up", change "id" to uppercase ([@NoRi2909] - [#134888]) +- Use correct uppercase for "ID" and sentence-case otherwise ([@NoRi2909] - [#134815]) +- Add heat meter to Powerfox integration ([@klaasnicolaas] - [#134799]) +- Add Decorquip virtual motion blinds integration ([@starkillerOG] - [#134402]) +- Bump pymodbus version to 3.8.3 ([@wlcrs] - [#134809]) +- fix typo "looses" to "loses" in MQTT configuration message ([@GlennReilly] - [#134894]) +- Add extra prompt to assist pipeline and conversation ([@balloob] - [#124743]) +- Bump py-synologydsm-api to 2.6.0 ([@mib1185] - [#134914]) +- Handle discovering user configured Wyoming flow ([@balloob] - [#134916]) +- Bump pylutron-caseta to 0.23.0 ([@eclair4151] - [#134906]) +- Remove excessive newline code, fix "ID", enhance descriptions ([@NoRi2909] - [#134920]) +- Add device trackers to enabled_by_default fixture ([@zweckj] - [#134446]) +- Remove deprecated hdr switch from reolink ([@gjohansson-ST] - [#134924]) +- Remove deprecated config entry import from bluesound ([@gjohansson-ST] - [#134926]) +- Add support for extra_system_prompt to OpenAI ([@balloob] - [#134931]) +- Migrate to using aiohttp-asyncmdnsresolver for aiohttp resolver ([@bdraco] - [#134830]) +- Add device tracker test for Vodafone Station ([@chemelli74] - [#134334]) +- Fix spelling of "ID", slightly reword action descriptions ([@NoRi2909] - [#134778]) +- UnifiProtect Refactor light control methods to use new API ([@RaHehl] - [#134625]) +- add proxy view for unifiprotect to grab snapshot at specific time ([@EliSchleifer] - [#133546]) +- Update Shelly integration: Remove double "Error fetching ..." from error messages ([@davidrapan] - [#134950]) +- Bump renault-api to 0.2.9 ([@kelyaenn] - [#134858]) +- Bump zeroconf to 0.137.2 ([@bdraco] - [#134942]) +- Change "id" to uppercase for consistency ([@NoRi2909] - [#134971]) +- Use sentence case, capitalize "IP Secure" and "ID" ([@NoRi2909] - [#134966]) +- Simplify onewire config-flow ([@epenet] - [#134952]) +- Set parallel-updates and scan-interval explicitly in onewire ([@epenet] - [#134953]) +- Update roborock tests to only load the platform under test ([@allenporter] - [#134694]) +- Update HEOS Quality Scale docs-related items ([@andrewsayre] - [#134466]) +- Fix DSMR migration ([@emontnemery] - [#134990]) +- Simplify roborock coordinator ([@allenporter] - [#134700]) +- Add reconfigure to onewire ([@epenet] - [#134996]) +- Validate device id when adding or updating entity registry entry ([@emontnemery] - [#134982]) +- Set PARALLEL_UPDATES to 1 in onewire ([@epenet] - [#135006]) +- Use standard "entity_registry_enabled_by_default" fixture ([@chemelli74] - [#134962]) +- Add total cleaning count sensor to Roborock ([@Lash-L] - [#135015]) +- Add Controller state sensor to screenlogic ([@dieselrabbit] - [#133827]) +- Move OneWireConfigEntry type definition ([@epenet] - [#135004]) +- Improve logic for event polling duration in Overkiz ([@iMicknl] - [#133617]) +- Bump voluptuous openapi to 0.0.6 ([@allenporter] - [#134998]) +- Add data description translations to all tplink config flow steps ([@sdb9696] - [#135022]) +- Improve Huawei LTE suspend integration service description ([@NoRi2909] - [#135021]) +- Add new sensors to fyta ([@dontinelli] - [#135032]) +- Add weather warning sensor to IPMA ([@dgomes] - [#134054]) +- Bump dbus-fast to 2.28.0 ([@bdraco] - [#135049]) +- Fix climate react type ([@gjohansson-ST] - [#135030]) +- Improve type hints in onewire tests ([@epenet] - [#134993]) +- Delete KNX config storage when removing the integration ([@farmio] - [#135071]) +- Update pyheos to 0.9.0 ([@andrewsayre] - [#134947]) +- Add Reolink unexpected error translation ([@starkillerOG] - [#134807]) +- Cleanup LG webOS TV name ([@thecode] - [#135028]) +- Fix DSMR migration ([@emontnemery] - [#135068]) +- TotalConnect improved config flow and test before setup ([@austinmroczek] - [#133852]) +- Remove rounding from onewire sensors ([@epenet] - [#135095]) +- Add quality_scale file to onewire ([@epenet] - [#134951]) +- Add binary sensors to fyta ([@dontinelli] - [#134900]) +- Add satel integra switches and alarm control panels unique_id ([@david1024pl] - [#129636]) +- Update addition logger string in fan.py ([@farkasdi] - [#135098]) +- Add quality_scale.yaml to Minecraft Server ([@elmurato] - [#132551]) +- Add PARALLEL_UPDATES constant to tplink integration platforms ([@sdb9696] - [#135083]) +- Raise HomeAssistantError from tplink light effect service ([@sdb9696] - [#135081]) +- Refactor patching in onewire tests ([@epenet] - [#135070]) +- Split simple and recovery in onewire config-flow user tests ([@epenet] - [#135102]) +- Fix hvac_modes never empty in Sensibo ([@gjohansson-ST] - [#135029]) +- Improve onewire options flow tests ([@epenet] - [#135109]) +- Improve holidays config form and naming ([@bors-ltd] - [#133663]) +- Update enphase_envoy test_init to use str for unique_id and test for loaded config entry ([@catsmanac] - [#133810]) +- Add quality scale file to tplink integration ([@sdb9696] - [#135017]) +- Remove enphase_envoy config flow tests that make no sense ([@catsmanac] - [#133833]) +- Add suggested precision for Airthings BLE integration ([@LaStrada] - [#134985]) +- Add LetPot integration ([@jpelgrom] - [#134925]) +- Set PARALLEL_UPDATES in LG webOS TV ([@thecode] - [#135135]) +- Add DataUpdateCoordinator to bluesound integration ([@LouisChrist] - [#135125]) +- Use is in FlowResultType enum comparison in integration scaffold tests ([@jpelgrom] - [#135133]) +- Impove LG webOS TV tests quality ([@thecode] - [#135130]) +- Add support for Lutron Wood Tilt Blinds ([@eclair4151] - [#135057]) +- Render select entity unavailable when active feature is missing in Sensibo ([@gjohansson-ST] - [#135031]) +- Change minimum SQLite version to 3.40.1 ([@gjohansson-ST] - [#135042]) +- Make devices dynamic in Sensibo ([@gjohansson-ST] - [#134935]) +- Deprecate StarLine engine switch attributes ([@Anonym-tsk] - [#133958]) +- Bump zeroconf to 0.138.1 ([@bdraco] - [#135148]) +- Deprecate raw_value attribute in onewire entity ([@epenet] - [#135171]) +- Mark docs-installation-parameters and docs-removal-instructions for inexogy as done ([@jpbede] - [#135126]) +- Add outside temperature sensor to fujitsu_fglair ([@crevetor] - [#130717]) +- Move OneWire PLATFORM constant back to init ([@epenet] - [#135172]) +- Add and cleanup tplink translations ([@sdb9696] - [#135120]) +- Add uuid as unique_id to config entries for Cookidoo ([@miaucl] - [#134831]) +- Use snapshot_platform helper in onewire tests ([@epenet] - [#135176]) +- Set PARALLEL_UPDATES to 0 in onewire ([@epenet] - [#135178]) +- Add yue language support to Google Translate TTS ([@beginner2047] - [#134480]) +- Fix stale docstrings in tplink integration ([@sdb9696] - [#135183]) +- Update scaffold to use internal _PLATFORM constant ([@epenet] - [#135177]) +- Add select platform to onewire ([@epenet] - [#135181]) +- Add event entities to Overseerr ([@joostlek] - [#134975]) +- Update title and description for setup dialog of thethingsnetwork ([@NoRi2909] - [#134954]) +- add support for dimming/brightening X10 lamps ([@kereyroper] - [#130196]) +- No need to set unique_id in enphase_envoy reauth step ([@catsmanac] - [#133615]) +- Update module properties on module scan for LCN ([@alengwenus] - [#135018]) +- Use friendly names in add_to_playlist action, fix "ID" ([@NoRi2909] - [#134978]) +- Avoid unnecessary executor calls in onewire ([@epenet] - [#135187]) +- Allow to process kelvin as color_temp for mqtt basic light ([@jbouwh] - [#133953]) +- Allow unregistering LLM APIs ([@allenporter] - [#135162]) +- Make generated files appear as generated ([@KapJI] - [#134991]) +- Use typed config entry in tplink coordinator ([@sdb9696] - [#135182]) +- Refactor onewire hub ([@epenet] - [#135186]) +- Fix LG webOS TV init test coverage ([@thecode] - [#135194]) +- Allow to process kelvin as color_temp for mqtt json light ([@jbouwh] - [#133955]) +- Add streaming sensors to Teslemetry ([@Bre77] - [#132783]) +- Bump zeroconf to 0.139.0 ([@bdraco] - [#135213]) +- Use remove-prefix/suffix introduced in Python 3.9 ([@epenet] - [#135206]) +- Add exception-translations rule to quality_scale pytest validation ([@epenet] - [#131914]) +- Add support for Shelly BLU TRV ([@chemelli74] - [#128439]) +- Bump anyio to 4.8.0 ([@bdraco] - [#135224]) +- Refactor Vodafone Station tests ([@chemelli74] - [#134956]) +- Bump fnv-hash-fast to 1.1.0 ([@bdraco] - [#135237]) +- Expand Squeezebox auth test for config_flow to finish on create_entry ([@peteS-UK] - [#133612]) +- Remove per engine max bind vars ([@bdraco] - [#135153]) +- Make description of alarm_arm_vacation consistent ([@NoRi2909] - [#135257]) +- Improve formatting in core files ([@epenet] - [#135256]) +- Split long strings in components ([@epenet] - [#135263]) +- Combine short byte strings in xiaomi_ble tests ([@epenet] - [#135268]) +- Fix LG webOS TV media player test coverage ([@thecode] - [#135225]) +- Improve formatting in component test files ([@epenet] - [#135267]) +- Change 'entity_id' to UI-friendly 'Entity ID', fix spelling of "setpoint" ([@NoRi2909] - [#135234]) +- Combine short strings in components ([@epenet] - [#135265]) +- Split long strings in stream hls tests ([@epenet] - [#135271]) +- Velbus light platform code cleanup ([@cereal2nd] - [#134482]) +- Fix incorrect test in test_core_config ([@epenet] - [#135260]) +- Add model_id and serial_number to onewire device info ([@epenet] - [#135279]) +- Allow to process kelvin as color_temp for mqtt template light ([@jbouwh] - [#133957]) +- Improve formatting in component files ([@epenet] - [#135261]) +- Discover new devices at runtime in onewire ([@epenet] - [#135199]) +- Simplify vesync init loading ([@cdnninja] - [#135052]) +- Move LG webOS TV actions to entitiy services ([@thecode] - [#135285]) +- Adjust HomeWizard to use updated python-homewizard-energy library ([@DCSBL] - [#135046]) +- Smaller grammar fixes, replace 'entity_id' with UI-friendly 'ID' ([@NoRi2909] - [#135236]) +- Mark FGLAir entities unavailable if they are reporting to be offline ([@crevetor] - [#135202]) +- Bump pypalazzetti to 0.1.16 ([@dotvav] - [#135269]) +- Replace 'entity_id' with UI-friendly, localizable 'entity ID' ([@NoRi2909] - [#135232]) +- Add USB-PD Mode select entity to IronOS integration ([@tr4nt0r] - [#134901]) +- Grammar and consistency fixes in hdmi_cec strings ([@NoRi2909] - [#135292]) +- Bump aioshelly to version 12.3.1 ([@bieniu] - [#135299]) +- Use runtime_data in LG webOS TV ([@thecode] - [#135301]) +- Fix typos and inconsistent spelling of "tedee" brand name ([@NoRi2909] - [#135305]) +- Fix typos, replace duplicated strings with references ([@NoRi2909] - [#135303]) +- Don't store uv's lockfile in hassfest image ([@edenhaus] - [#135214]) +- Fix Habitica gems/hourglass sensors ([@tr4nt0r] - [#135323]) +- Use LOGGER from homewizard.const instead per-file loggers ([@DCSBL] - [#135320]) +- Bump habluetooth to 3.8.0 ([@bdraco] - [#135322]) +- Extract resolve announcement media ID for AssistSatelliteEntity ([@balloob] - [#134917]) +- Add bluetooth subscribe_advertisements WebSocket API ([@bdraco] - [#134291]) +- Fix spelling of "Log in", fix "outdated student" ([@NoRi2909] - [#135348]) +- Small fixes in setup flow strings, correct sentence-case ([@NoRi2909] - [#135349]) +- Add config flow to NMBS ([@silamon] - [#121548]) +- Fix backup formatting ([@joostlek] - [#135350]) +- Bump actions/upload-artifact from 4.5.0 to 4.6.0 (@dependabot - [#135255]) +- Bump docker/build-push-action from 6.10.0 to 6.11.0 (@dependabot - [#135254]) +- Remove code owner for nmbs ([@silamon] - [#135357]) +- Fix spelling of "Log in …" and "API key" in LOQED integration ([@NoRi2909] - [#135347]) +- Fix Tado config flow ([@erwindouna] - [#135353]) +- Add more typings to nmbs sensor ([@silamon] - [#135359]) +- Palazzetti Quality Scale update after doc improvement ([@dotvav] - [#135277]) +- Bump Teslemetry Stream ([@Bre77] - [#135344]) +- Enable slowly-changing, important diagnostics for connected devices by default ([@lanthaler] - [#134776]) +- Add reconfigure to LG webOS TV ([@thecode] - [#135360]) +- Add @jterrace to onvif integration owners ([@jterrace] - [#135398]) +- Switcher runner child lock support ([@YogevBokobza] - [#133270]) +- Make all three numbered lists consistent, using 1. 1. 1. for the syntax ([@NoRi2909] - [#135400]) +- Add additional Tapo ONVIF Person/Vehicle/Line/Tamper/Intrusion events ([@jterrace] - [#135399]) +- Reword action descriptions for better translations in Teslemetry ([@NoRi2909] - [#135370]) +- Add sensors for inventory items to Habitica ([@tr4nt0r] - [#135331]) +- Bump pyheos to 1.0.0 ([@andrewsayre] - [#135415]) +- Fix config entries typo s/entruis/entries/ ([@tronikos] - [#135431]) +- Fix translation string: numbering in list ([@WaterInTheLake] - [#135441]) +- Update translations and error messages in Bring! integration ([@tr4nt0r] - [#135455]) +- Fix strings for the Google integrations ([@tronikos] - [#135445]) +- Add current and voltage for plugs to switchbot_cloud ([@SeraphicRav] - [#135458]) +- Refactor upcloud to use config entry runtime data ([@scop] - [#135449]) +- Add bluetooth API to remove scanners that are no longer used ([@bdraco] - [#135408]) +- Ensure Shelly cleanups Bluetooth scanner data upon removal ([@bdraco] - [#135472]) +- Ensure ESPHome cleanups Bluetooth scanner data upon removal ([@bdraco] - [#135470]) +- Bump github/codeql-action from 3.28.0 to 3.28.1 (@dependabot - [#135492]) +- Bump uv to 0.5.18 ([@mib1185] - [#135454]) +- Add missing `total active returned energy` sensor for Shelly Mini PM Gen3 ([@bieniu] - [#135433]) +- Fix typing in zha update entity ([@emontnemery] - [#135500]) +- Add remain, running, schedule time sensors to LG ThinQ ([@LG-ThinQ-Integration] - [#131133]) +- Rework velbus services to deprecated the interface parameter ([@cereal2nd] - [#134816]) +- Change icon ID name in Lametric ([@joostlek] - [#135368]) +- Add hassio discovery to onewire ([@epenet] - [#135294]) +- Replace "Login …" with "Log in …" in two strings of Habitica integration ([@NoRi2909] - [#135383]) +- Add dhcp discovery to velux ([@pawlizio] - [#135138]) +- Replace "click" with "select" to fit for mobile app ([@NoRi2909] - [#135382]) +- Fix when live status is blank in Telsemetry ([@Bre77] - [#130408]) +- Add kV and MV unit conversion for voltages ([@lschloetterer] - [#135396]) +- TotalConnect update quality_scale with documentation updates ([@austinmroczek] - [#134049]) +- Fix grey dailies with weekly frequency and no weekdays selected in Habitica ([@tr4nt0r] - [#135419]) +- Move HomeWizard API initialisation to async_setup_entry ([@DCSBL] - [#135315]) +- Use proper sentence-case for all strings in azure_event_hub ([@NoRi2909] - [#135328]) +- Replace climate fan speed 'silent' with a button ([@dotvav] - [#135075]) +- Bump pypalazzetti to 0.1.19 ([@dotvav] - [#135465]) +- Refresh token before setting up weheat ([@jesperraemaekers] - [#135264]) +- Refactor config flow tests in generic camera ([@davet2001] - [#134385]) +- Small fixes in the strings file of the azure_data_explorer integration ([@NoRi2909] - [#135309]) +- Fix typos "Login" > "Log in" and "Setup" > "Set up" ([@NoRi2909] - [#135306]) +- Fix LG webOS TV trigger validation ([@thecode] - [#135312]) +- Update getmac to 0.9.5 ([@cdce8p] - [#135506]) +- Improve tests of energyzero integration ([@klaasnicolaas] - [#133452]) +- Refactor number/select to use common method in IronOS ([@tr4nt0r] - [#134173]) +- Revert "Make all three numbered lists consistent, using 1. 1. 1. for the syntax" ([@frenck] - [#135510]) +- Change Trafikverket Train to use station signatures ([@gjohansson-ST] - [#131416]) +- Expose raw PM2.5 in Airgradient ([@gentoo-root] - [#135457]) +- Bump go2rtc recommended version to 1.9.8 ([@edenhaus] - [#135523]) +- Removing unused API file form weheat ([@jesperraemaekers] - [#135518]) +- Palazzetti integration: Add support for additional fans ([@dotvav] - [#135377]) +- Bump velbusaio to 2025.1.0 ([@cereal2nd] - [#135525]) +- Deprecate sensors in Habitica integration ([@tr4nt0r] - [#134036]) +- Add zeroconf discovery to onewire ([@epenet] - [#135295]) +- Refactor the MQTT option and reconfigure flow ([@jbouwh] - [#133342]) +- Bump aioimaplib to 2.0.0 ([@jbouwh] - [#135448]) +- Add humidifier entity for Vesync devices ([@iprak] - [#134333]) +- Cleanup tplink test framework ([@sdb9696] - [#135205]) +- Bump smhi-pkg to 1.0.19 ([@gjohansson-ST] - [#135537]) +- Add option to allow to use setpoint instead of override for legacy incomfort RF gateway ([@jbouwh] - [#135143]) +- Register Airzone WebServer device ([@Noltari] - [#135538]) +- Add new integration Qbus ([@Qbus-iot] - [#127280]) +- Velbus update unique-config-entry quality score ([@cereal2nd] - [#135524]) +- Velbus unsubscribe to the status updates on removal ([@cereal2nd] - [#135530]) +- Add quality scale for weheat ([@jesperraemaekers] - [#135384]) +- Velbus add subdevices for din-rail modules ([@cereal2nd] - [#131371]) +- Add person component to strict type checking ([@IgnusG] - [#132754]) +- Add data_descriptions to inexogy config flow ([@jpbede] - [#135536]) +- Set PARALLEL_UPDATES for inexogy ([@jpbede] - [#135545]) +- Fix grammar issue in 'invalid_auth' string ([@NoRi2909] - [#135546]) +- Changed json.schemas.url for devcontainers ([@Master-Guy] - [#135281]) +- Improve improv via BLE log messages ([@emontnemery] - [#135575]) +- Fix deprecated enums ([@arturpragacz] - [#134824]) +- Bump habiticalib to v.0.3.3 ([@tr4nt0r] - [#135551]) +- Set PARALLEL_UPDATES for Weheat ([@jesperraemaekers] - [#135574]) +- Fix nmbs sensor unique_id ([@emontnemery] - [#135576]) +- Add iprak to to vesync code owners ([@iprak] - [#135562]) +- Use percent formatting in logging per guidelines ([@scop] - [#135550]) +- Set inexogy quality scale to silver ([@jpbede] - [#135547]) +- Migrate Velbus to have Entity name ([@cereal2nd] - [#135520]) +- Mark Velbus test coverage as done ([@cereal2nd] - [#135571]) +- Cleanup tedee callbacks ([@zweckj] - [#135577]) +- Bump Weheat to 2025.1.14 ([@jesperraemaekers] - [#135578]) +- Set MQTT quality scale to gold ([@jbouwh] - [#135579]) +- Bump ruff to 0.9.1 ([@joostlek] - [#135197]) +- Bump hass-nabucasa from 0.87.0 to 0.88.1 ([@klejejs] - [#135521]) +- Remove incorrect logging about Unknown device ([@iprak] - [#135585]) +- Unignore ruff rule ISC001 ([@joostlek] - [#135581]) +- Update tplink quality_scale.yaml ([@sdb9696] - [#135209]) +- Match the upstream alt id of the new Levoit air purifier ([@jiriappl] - [#135426]) +- Avoid core documentation url hosted elsewhere ([@joostlek] - [#130513]) +- Reverted async-dependency to todo for Weheat ([@jesperraemaekers] - [#135588]) +- Bump securetar to 2025.1.1 ([@emontnemery] - [#135582]) +- Add streaming binary sensors to Teslemetry ([@Bre77] - [#135248]) +- Add serial number to LaMetric ([@joostlek] - [#135591]) +- Skip fetching deactivated shopping lists in Bring integration ([@tr4nt0r] - [#135336]) +- Adding support for new Lutron RGB tape light ([@RBaragona] - [#130731]) +- Add vesync number platform ([@iprak] - [#135564]) +- Make mqtt integration exports explicit ([@jbouwh] - [#135595]) +- Add entity pictures to Habitica integration ([@tr4nt0r] - [#134179]) +- Rename onewire entity classes ([@epenet] - [#135601]) +- Drop Python 3.12 support ([@frenck] - [#135589]) +- Bump securetar to 2025.1.2 ([@emontnemery] - [#135614]) +- Add `PaddleSwitchPico` (Pico Paddle Remote) device trigger to Lutron Caseta ([@dustMason] - [#135615]) +- More UpCloud config entry refactors ([@scop] - [#135548]) +- Fix spotify typing for Python 3.13 ([@cdce8p] - [#135628]) +- Return OFF in hvac_action for Honeywell climate ([@mkmer] - [#135620]) +- Update mypy-dev to 1.15.0a2 ([@cdce8p] - [#135633]) +- Update Python version for mypy to 3.13 ([@cdce8p] - [#135636]) +- Fix spelling of EnOcean in strings file of the integration ([@NoRi2909] - [#135622]) +- Dynamic devices for Husqvarna Automower ([@Thomas55555] - [#133227]) +- Update buttons in Teslemetry ([@Bre77] - [#135631]) +- Reduce scan interval on SMLIGHT firmware updates ([@tl-sl] - [#135650]) +- Bump pysmlight v0.1.5 ([@tl-sl] - [#135647]) +- Bump homematicip to 1.1.6 ([@hahn-th] - [#135649]) +- Remove unused noqas ([@joostlek] - [#135583]) +- Set MQTT quality scale to platinum ([@jbouwh] - [#135612]) +- Bump aiolifx-themes to v0.6.2 ([@Djelibeybi] - [#135645]) +- Move ZeroconfServiceInfo to service_info helpers ([@epenet] - [#135653]) +- Fix descriptions of send_command action for consistency ([@NoRi2909] - [#135670]) +- Move DhcpServiceInfo to service_info helpers ([@epenet] - [#135658]) +- Improve logging of backup upload errors ([@MartinHjelmare] - [#135672]) +- Move SsdpServiceInfo to service_info helpers ([@epenet] - [#135661]) +- Bump python-otbr-api to 2.7.0 ([@puddly] - [#135638]) +- Add missing camera functions to pylint type hints plugin ([@edenhaus] - [#135676]) +- Move UsbServiceInfo to service_info helpers ([@epenet] - [#135663]) +- Call async_forward_setup_entry after the first refresh in SwitchBot Cloud ([@mckbrmn] - [#135625]) +- Use new ServiceInfo location in components (part 1) ([@epenet] - [#135682]) +- Use new ServiceInfo location in components (part 2) ([@epenet] - [#135685]) +- Use new ServiceInfo location in components (part 3) ([@epenet] - [#135687]) +- Use new ServiceInfo location in sonos ([@epenet] - [#135699]) +- Use new ServiceInfo location in tplink ([@epenet] - [#135700]) +- Use new ServiceInfo location in rainforest_raven ([@epenet] - [#135697]) +- Use new ServiceInfo location in rabbitair ([@epenet] - [#135696]) +- Use new ServiceInfo location in modem_callerid ([@epenet] - [#135695]) +- Use new ServiceInfo location in insteon ([@epenet] - [#135694]) +- Update tplink quality_scale.yaml ([@sdb9696] - [#135705]) +- Add WS command backup/can_decrypt_on_download ([@emontnemery] - [#135662]) +- Bump eheimdigital to 1.0.4 ([@autinerd] - [#135722]) +- Create switches for controlling policy-based routes ([@Ik-12] - [#134473]) +- Add dynamic child device handling to tplink integration ([@sdb9696] - [#135229]) +- Use new ServiceInfo location in wmspro ([@epenet] - [#135702]) +- Use SIP URI for VoIP device identifier ([@jaminh] - [#135603]) +- Slow down polling for Tesla Fleet ([@Bre77] - [#135747]) +- Ensure entity platform in bluetooth tests ([@gjohansson-ST] - [#135716]) +- Add receive backup tests ([@MartinHjelmare] - [#135680]) +- Reword action descriptions to match Home Assistant style ([@NoRi2909] - [#135733]) +- Palazzetti integration: Update integration quality scale ([@dotvav] - [#135752]) +- Ensure entity platform in light tests ([@gjohansson-ST] - [#135724]) +- Bump govee-ble to 0.41.0 ([@bdraco] - [#135750]) +- Reduce USB rescan cooldown from 1 minute to 10 seconds ([@puddly] - [#135712]) +- Use new ServiceInfo location in homeassistant_sky_connect ([@epenet] - [#135693]) +- Use new ServiceInfo location in zwave_js ([@epenet] - [#135704]) +- Return Chat IDs on Telegram Bot ([@tyron] - [#131274]) +- Support decrypting backups when downloading ([@emontnemery] - [#135728]) +- Fix rmtree in translation script on MacOS ([@srescio] - [#129352]) +- Avoid using the backup manager in restore tests ([@MartinHjelmare] - [#135757]) +- Add message_thread_id to telegram_text and telegram_command events ([@DrDonoso] - [#130738]) +- Enable RUF100 ([@joostlek] - [#135760]) +- Use new ServiceInfo location in apple_tv ([@epenet] - [#135688]) +- Bump securetar to 2025.1.3 ([@emontnemery] - [#135762]) +- Change AdGuard Home URL field validator to accept paths ([@maxcabrajac] - [#127957]) +- Add further ventilation-related sensors to ViCare ([@CFenner] - [#131496]) +- Use new ServiceInfo location in esphome ([@epenet] - [#135692]) +- Use new ServiceInfo location in dlna_dmr ([@epenet] - [#135691]) +- Enable RUF022 ([@joostlek] - [#135767]) +- Add temperature and humidity entities to area registry ([@balloob] - [#135423]) +- Fix Vicare patch ([@joostlek] - [#135773]) +- Improve backup decrypt exceptions ([@emontnemery] - [#135765]) +- Improve incomfort coordinator logging ([@jbouwh] - [#135777]) +- Move HomeWizard config options to class ([@DCSBL] - [#135778]) +- Bump youless-api to 2.2.0 ([@gjong] - [#135781]) +- Fix Bang & Olufsen event testing ([@mj23000] - [#135707]) +- Add button to move netatmo cover to preferred position ([@PoppyPop] - [#134722]) +- Add Bluetooth config entries for remote scanners ([@bdraco] - [#135543]) +- Add broadcast intent ([@balloob] - [#135337]) +- Implement a polling fallback for USB monitor ([@puddly] - [#130918]) +- Update aiolifx-themes to 0.6.4 ([@Djelibeybi] - [#135805]) +- Bump govee-ble to 0.42.0 ([@bdraco] - [#135801]) +- USB device add/remove callbacks ([@puddly] - [#131224]) +- Assign entity_category for incomfort entities ([@jbouwh] - [#135807]) +- Improve incomfort test coverage ([@jbouwh] - [#135806]) +- Ensure entity platform in core config tests ([@gjohansson-ST] - [#135729]) +- Remove misleading "Current" in NUT power sensor names ([@thecode] - [#135800]) +- Improve backup store in tests ([@emontnemery] - [#135798]) +- Fix service description to match HA style, fix casing ([@NoRi2909] - [#135797]) +- SMA add serial number in DeviceInfo ([@erwindouna] - [#135809]) +- Fix spelling of "API" and use consistent term "API token" ([@NoRi2909] - [#135795]) +- Bump eheimdigital to 1.0.5 ([@autinerd] - [#135802]) +- Bump SMA to 0.7.5 ([@erwindouna] - [#135799]) +- Several strings fixes in the emoncms integration ([@NoRi2909] - [#135792]) +- Ensure entity platform in media_player tests ([@gjohansson-ST] - [#135788]) +- Ensure entity platform in light tests ([@gjohansson-ST] - [#135787]) +- Ensure entity platform in vacuum tests ([@gjohansson-ST] - [#135786]) +- Bump `imgw_pib` to version 1.0.9 and remove hydrological detail entities ([@bieniu] - [#134668]) +- Enable more RUF rules ([@joostlek] - [#135770]) +- SMA update code owners ([@erwindouna] - [#135812]) +- New paint_theme service added to the LIFX integration ([@Djelibeybi] - [#135667]) +- Bump dbus-fast to 2.29.0 ([@bdraco] - [#135804]) +- Small cleanups to lifx services to reduce code ([@bdraco] - [#135817]) +- Bump zeroconf to 0.140.1 ([@bdraco] - [#135815]) +- Ensure entity platform in blackbird tests ([@gjohansson-ST] - [#135715]) +- Allow is_state_attr to check attributes for None ([@Petro31] - [#132879]) +- Ensure entity platform in alert tests ([@gjohansson-ST] - [#135714]) +- Ensure entity platform in universal tests ([@gjohansson-ST] - [#135727]) +- Ensure entity platform in mochad tests ([@gjohansson-ST] - [#135725]) +- Ensure entity platform in kira tests ([@gjohansson-ST] - [#135723]) +- Ensure entity platform in homeassistant tests ([@gjohansson-ST] - [#135721]) +- Use new syntax for TypeVar defaults ([@cdce8p] - [#135780]) +- Ensure entity platform in google_wifi tests ([@gjohansson-ST] - [#135720]) +- Ensure entity platform in google_assistant tests ([@gjohansson-ST] - [#135719]) +- Ensure entity platform in dsmr_reader tests ([@gjohansson-ST] - [#135718]) +- Use new ServiceInfo location in bosch_shc ([@epenet] - [#135689]) +- Add 'silent' to HTML5_SHOWNOTIFICATION_PARAMETERS ([@redge76] - [#135709]) +- Update quality scale docs-installation-parameters rule for IronOS integration ([@tr4nt0r] - [#133318]) +- Reduce duplicate code in the Bluetooth WebSocket API ([@bdraco] - [#135808]) +- Add BMW quality scale details ([@rikroe] - [#132017]) +- Improve BMW test quality ([@rikroe] - [#133704]) +- Add model option to speak action for ElevenLabs ([@sorgfresser] - [#133902]) +- Enable RUF021 ([@joostlek] - [#135832]) +- Add Energy History to Tesla Fleet ([@Bre77] - [#126878]) +- Set target value on LCN regulator lock ([@alengwenus] - [#133870]) +- Add media position & seek to Russound RIO ([@noahhusby] - [#134372]) +- Enable RUF023 ([@joostlek] - [#135830]) +- Enable RUF101 ([@joostlek] - [#135835]) +- Homee: fix cover if it has no up/down attribute ([@Taraman17] - [#135563]) +- Clarify action descriptions regarding Lost device sound and state ([@NoRi2909] - [#134277]) +- Plugwise test-code improvements ([@bouwew] - [#134193]) +- Add support for EvoHomeController in Overkiz ([@iMicknl] - [#133777]) +- Fix description of "x10_all_units_off" action ([@NoRi2909] - [#135000]) +- Log errors in opower ([@tronikos] - [#135497]) +- Add streaming to Teslemetry cover platform ([@Bre77] - [#135660]) +- Bump Weheat to 2025.1.15 ([@jesperraemaekers] - [#135626]) +- Update yolink "play on speaker hub" action to allow optional values (to match YoLink API) ([@mxr] - [#133099]) +- Add doorbell event to homematicip_cloud ([@hahn-th] - [#133269]) +- Fix several issues in a string of IHC integration ([@NoRi2909] - [#135618]) +- Add zeroconf dependency to devolo Home Network manifest ([@Shutgun] - [#135708]) +- Fix "set" / "sets" in action names and descriptions, spelling of "dB" ([@NoRi2909] - [#135659]) +- Add missing data_descriptions to strings.json for LCN ([@alengwenus] - [#135674]) +- Fix humidifier on off status update ([@iprak] - [#135743]) +- Fix flaky test in acmeda ([@epenet] - [#135846]) +- Remove call to get_serial_by_id in homeassistant_sky_connect ([@epenet] - [#135751]) +- Validate config entry when adding or updating entity registry entry ([@emontnemery] - [#135067]) +- Remove not needed name from config flow in SMHI ([@gjohansson-ST] - [#134841]) +- Add overload for async singleton call with HassKey ([@cdce8p] - [#134059]) +- Use new ServiceInfo location in devolo_home_network ([@epenet] - [#135690]) +- Bump aioesphomeapi to 28.0.1 ([@bdraco] - [#135869]) +- Use new ServiceInfo location in zha ([@epenet] - [#135703]) +- Bump fnv-hash-fast to 1.2.2 ([@bdraco] - [#135872]) +- Bump habluetooth to 3.9.0 ([@bdraco] - [#135877]) +- Bump bluetooth-data-tools to 1.22.0 ([@bdraco] - [#135879]) +- Bump ulid-transform to 1.2.0 ([@bdraco] - [#135882]) +- Bump dbus-fast to 2.30.2 ([@bdraco] - [#135874]) +- Add BThome hold press event ([@Ernst79] - [#135871]) +- Record IQS for Russound RNET ([@noahhusby] - [#134692]) +- Fix typo in Opower log message ([@tronikos] - [#135909]) +- Fix bmw_connected_drive tests ([@zweckj] - [#135911]) +- Use runtime_data in Opower ([@tronikos] - [#135910]) +- Set parallel-updates in Habitica quality scale record ([@tr4nt0r] - [#135901]) +- Bump Teslemetry Stream to 0.6.6 ([@Bre77] - [#135905]) +- Increase test coverage in Habitica integration ([@tr4nt0r] - [#135896]) +- Bump pylitterbot to 2024.0.0 ([@natekspencer] - [#135891]) +- Fix imgw_pib tests ([@zweckj] - [#135913]) +- Add reauth flow to LetPot integration ([@jpelgrom] - [#135734]) +- Increase test coverage for IMGW-PIB ([@bieniu] - [#135915]) +- Remove asserting name in tts test (no entity platform) ([@gjohansson-ST] - [#135726]) +- Set strict-typing in Habitica quality scale record ([@tr4nt0r] - [#135899]) +- Fix acmeda pytest usefixtures spelling ([@cdce8p] - [#135919]) +- Fix DeprecationWarnings in mcp_server ([@cdce8p] - [#135927]) +- Fix aiodns DeprecationWarning in tests ([@cdce8p] - [#135921]) +- Use HassKey for assist_pipeline singleton ([@cdce8p] - [#135875]) +- Fix inconsistently spelled occurrences of "ID" in telegram_bot integration ([@NoRi2909] - [#135928]) +- Bump bleak-retry-connector to 3.7.0 ([@bdraco] - [#135939]) +- Replace additional deprecated USBServiceInfo imports ([@cdce8p] - [#135953]) +- Fix unicode chars in zha tests ([@cdce8p] - [#135954]) +- Bump bluetooth-adapters to 0.21.0 ([@bdraco] - [#135957]) +- Fix duplicated "effect" in Speed field descriptions of flux_led ([@NoRi2909] - [#135948]) +- Add shared history for conversation agents ([@balloob] - [#135903]) +- Improve backup store in tests ([@emontnemery] - [#135974]) +- Vesync switch humidifier to property ([@cdnninja] - [#135949]) +- Improve remote Bluetooth scanner manufacturer data ([@bdraco] - [#135961]) +- Change 'device_id' to translatable 'device ID', fix typos in LCN ([@NoRi2909] - [#135978]) +- Add power switch only if it is available at Home Connect ([@Diegorro98] - [#135930]) +- Improve program related sensors at Home Connect ([@Diegorro98] - [#135929]) +- Fix grammar and plural handling in action descriptions ([@NoRi2909] - [#135654]) +- Set dependency-transparency and async-dependency in Habitica IQS ([@tr4nt0r] - [#135902]) +- Fix KNX default state updater option ([@farmio] - [#135611]) +- Add streaming to device tracker platform in Teslemetry ([@Bre77] - [#135962]) +- Further clarify the meaning of Sensibo's Climate React mode ([@NoRi2909] - [#135833]) +- Add type annotations to stiebel eltron component ([@ThyMYthOS] - [#135228]) +- Rework enigma2 tests ([@autinerd] - [#135475]) +- SMA add diagnostics ([@erwindouna] - [#135852]) +- Fix name and descriptions of actions in EZVIZ integration etc. ([@NoRi2909] - [#135858]) +- Move integration setup to coordinator `_async_setup` in Bring ([@tr4nt0r] - [#135711]) +- Remove unnecessary "title" keys to use default setup flow instead ([@NoRi2909] - [#135512]) +- Fix fan speed in auto mode in ViCare integration ([@CFenner] - [#134256]) +- Improve descriptions in list_notifications action, fix casing ([@NoRi2909] - [#135838]) +- Refactor SwitchBot Cloud make_device_data ([@mckbrmn] - [#135698]) +- Add re-authentication flow to incomfort integration ([@jbouwh] - [#135861]) +- Fix HEOS device information ([@andrewsayre] - [#135940]) +- Fix unset coordinator in Switchbot cloud ([@joostlek] - [#135985]) +- Add re-configure flow incomfort integration ([@jbouwh] - [#135887]) +- Cleanup incomfort translation strings ([@jbouwh] - [#135991]) +- Add diagnostics feature to incomfort integration ([@jbouwh] - [#136009]) +- Disable noisy diagnostic incomfort sensors by default ([@jbouwh] - [#135992]) +- Make strings of create_scene action UI- and translation-friendly ([@NoRi2909] - [#136004]) +- Add incomfort heater serialnr to device info ([@jbouwh] - [#136012]) +- Improve exception handling in Habitica integration ([@tr4nt0r] - [#135950]) +- Fix velbus via devices ([@cereal2nd] - [#135986]) +- Do not base power switch state on appliance's operation state at Home Connect ([@Diegorro98] - [#135932]) +- Bump pydrawise to 2025.1.0 ([@dknowles2] - [#135998]) +- Migrate tests from OpenAI to conversation integration ([@balloob] - [#135963]) +- Update numpy to 2.2.2 ([@cdce8p] - [#135982]) +- Correct translation key for data bits in rfxtrx ([@elupus] - [#135990]) +- Bumb python-homewizard-energy to 8.1.0 ([@DCSBL] - [#136016]) +- Set friendly name for PT2262 sensors to masked name ([@elupus] - [#135988]) +- Fix Slack file upload ([@jsuar] - [#135818]) +- Fix sentence-casing in PurpleAir integration strings ([@NoRi2909] - [#135981]) +- Implement cloudhooks for Overseerr ([@joostlek] - [#134680]) +- Ensure entity platform in camera tests ([@gjohansson-ST] - [#135918]) +- Ensure entity platform in cover tests ([@gjohansson-ST] - [#135917]) +- Add reconfigure flow to Trafikverket Train ([@gjohansson-ST] - [#136000]) +- Bump docker/build-push-action from 6.11.0 to 6.12.0 (@dependabot - [#135749]) +- Bump thermopro-ble to 0.10.1 ([@bdraco] - [#136041]) +- Bump habluetooth to 3.9.2 ([@bdraco] - [#136042]) +- Enable RUF032 ([@joostlek] - [#135836]) +- Use LLM fallback when local matching matches intent but not targets ([@balloob] - [#136045]) +- Add diagnostics platform to IronOS integration ([@tr4nt0r] - [#136040]) +- Add reconfiguration flow to Habitica ([@tr4nt0r] - [#136038]) +- Remove redundant device update code ([@arturpragacz] - [#134100]) +- Use new SsdpServiceInfo location in remaining components ([@epenet] - [#136053]) +- Fix casing of "client" and "ID" in transmission integration ([@NoRi2909] - [#136071]) +- Make the time for automated backups configurable ([@emontnemery] - [#135825]) +- Allow backup writer to update progress during restore ([@emontnemery] - [#135975]) +- Use new ServiceInfo location in component tests (part 1) ([@epenet] - [#136057]) +- Use new ServiceInfo location in component tests (part 2) ([@epenet] - [#136062]) +- Use new ServiceInfo location in component tests (part 3) ([@epenet] - [#136064]) +- Use new ServiceInfo location in component tests (part 4) ([@epenet] - [#136065]) +- Improve user interface strings in opentherm_gw ([@NoRi2909] - [#136078]) +- Use new ServiceInfo location in core tests ([@epenet] - [#136067]) +- Fix spelling of "ID" in hyperion user strings ([@NoRi2909] - [#136082]) +- Replace `targets` key with UI name 'Targets' in media_player.join action ([@NoRi2909] - [#136063]) +- Prevent pylint out-of-memory failures ([@PaulSD] - [#136020]) +- Use fixtures for Network component tests ([@abmantis] - [#135220]) +- Improve conversation typing ([@cdce8p] - [#136084]) +- Set configuration url to overseerr instance ([@joostlek] - [#136085]) +- Bump uv to 0.5.21 ([@edenhaus] - [#136086]) +- Update pylint to 3.3.3 and astroid to 3.3.8 ([@cdce8p] - [#136090]) +- Fix Overseerr event types translations ([@joostlek] - [#136096]) +- Add diagnostics to Overseerr ([@joostlek] - [#136094]) +- Enable Ruff B024 ([@autinerd] - [#136088]) +- Bump velbusaio to 2025.1.1 ([@cereal2nd] - [#136089]) +- Enable dynamic child devices for tplink module entities ([@sdb9696] - [#135822]) +- Bump aiowebostv to 0.5.0 ([@thecode] - [#136097]) +- Add integration_type to HEOS ([@andrewsayre] - [#136105]) +- Fix index in incomfort diagnostics generator ([@jbouwh] - [#136108]) +- Fix upload service response for google_photos ([@autinerd] - [#136106]) +- Add icon to overseerr ([@joostlek] - [#136110]) +- Bump ayla-iot-unofficial to 1.4.5 ([@thecode] - [#136099]) +- Bump python-overseerr to 0.6.0 ([@joostlek] - [#136104]) +- Raise exceptions in HEOS service actions ([@andrewsayre] - [#136049]) +- Enable Ruff B035 ([@autinerd] - [#135883]) +- Remove yaml config fixture from HEOS tests ([@andrewsayre] - [#136123]) +- Add additional entities for Shelly BLU TRV ([@bieniu] - [#135244]) +- Add scheduled envoy firmware checks to enphase_envoy coordinator ([@catsmanac] - [#136102]) +- Bump letpot to 0.3.0 ([@jpelgrom] - [#136133]) +- Add myself to Roborock codeowners ([@allenporter] - [#136134]) +- Add data descriptions for enphase_envoy config flows. ([@catsmanac] - [#136120]) +- Remove not needed warning in Z-Wave ([@cdnninja] - [#136006]) +- Bump actions/stale from 9.0.0 to 9.1.0 (@dependabot - [#136145]) +- Fix buttons in Teslemetry ([@Bre77] - [#136142]) +- Update HEOS tests to not patch internals ([@andrewsayre] - [#136136]) +- Add support for custom weekly backup schedule ([@emontnemery] - [#136079]) +- Bump Devialet to 1.5.7 ([@fwestenberg] - [#136114]) +- Prefer from...import...as over import...as in core tests ([@epenet] - [#136146]) +- Add value is not to Matter discovery schema logic ([@marcelveldt] - [#136157]) +- Clean up entity registry imports in Shelly tests ([@bieniu] - [#136159]) +- Adjust to recommended propcache.api import paths ([@scop] - [#136150]) +- Capitalize "Homematic" brand name and 2 more user string fixes ([@NoRi2909] - [#136113]) +- Fix typo in enphase_envoy data description ([@catsmanac] - [#136164]) +- Add support for Bot in SwitchBot Cloud ([@mckbrmn] - [#135606]) +- Add service backup.create_automatic ([@emontnemery] - [#136152]) +- Satellite announcement to track original media id ([@balloob] - [#136141]) +- Prepare backup store to read version 2 ([@emontnemery] - [#136149]) +- Gate update.install backup parameter by supported feature ([@emontnemery] - [#136169]) +- Homee sensor ([@Taraman17] - [#135447]) +- Add data_description to switchbot translations ([@huyuwei1996] - [#136148]) +- Bumb python-homewizard-energy to 8.1.1 ([@DCSBL] - [#136170]) +- Use HassKey for hassio component data ([@emontnemery] - [#136172]) +- Add more util aliases to import conventions ([@epenet] - [#136153]) +- Update HEOS tests to not interact directly with integration internals ([@andrewsayre] - [#136177]) +- Set PARALLEL_UPDATES for HEOS media_player ([@andrewsayre] - [#136178]) +- Voip migrate entities ([@balloob] - [#136140]) +- Fix casing and spelling in user-facing strings of homematicip_cloud ([@NoRi2909] - [#136188]) +- Add strings and state attrs for ZHA 3 Phase current ([@abmantis] - [#132871]) +- Fix sentence-casing in user-facing strings of nmap_tracker ([@NoRi2909] - [#136195]) +- Cleanup litterrobot switch entity ([@natekspencer] - [#136199]) +- Bump bleak-retry-connector to 3.8.0 ([@bdraco] - [#136203]) +- Add button to reset Litter-Robot 4 ([@natekspencer] - [#136191]) +- Remove excessive newlines from envisalink strings ([@NoRi2909] - [#136194]) +- Remove excessive newline codes from strings of nissan_leaf ([@NoRi2909] - [#136197]) +- Remove extra_state_attributes from Litter-Robot vacuum entities ([@natekspencer] - [#136196]) +- Bump habluetooth to 3.10.0 ([@bdraco] - [#136210]) +- Bump ollama to 0.4.7 ([@Diegorro98] - [#136212]) +- Bump bleak-esphome to 2.1.0 ([@bdraco] - [#136214]) +- Add Eve Thermo TRV Matter features ([@krakonos1602] - [#135635]) +- Fix recorder fixture typing ([@cdce8p] - [#136174]) +- Bump github/codeql-action from 3.28.1 to 3.28.2 (@dependabot - [#136225]) +- Add dhcp discovery to incomfort integration ([@jbouwh] - [#136027]) +- Use icon translations for enphase_envoy. ([@catsmanac] - [#136190]) +- Bump bluetooth-adapters to 0.21.1 ([@bdraco] - [#136220]) +- Bump habluetooth to 3.11.2 ([@bdraco] - [#136221]) +- Use kw_only attribute for remaining entity descriptions in litterrobot ([@natekspencer] - [#136202]) +- Make description of hdmi_cec.select_device action consistent ([@NoRi2909] - [#136228]) +- Add repeat feature to HEOS media player ([@andrewsayre] - [#136180]) +- Handle empty string `BatReplacementDescription` from Matter attribute value ([@lboue] - [#134457]) +- Fix passing value to pymodbus low level function ([@wlcrs] - [#135108]) +- Update LG webOS TV IQS ([@thecode] - [#135509]) +- Bump httpx to 0.28.1, httpcore to 1.0.7 along with required deps ([@bdraco] - [#133840]) +- Add quality_scale file to litterrobot ([@natekspencer] - [#135904]) +- Handle invalid auth in Overseerr ([@joostlek] - [#136243]) +- Replace field keys in descriptions with translatable friendly names ([@NoRi2909] - [#136230]) +- Bump PyViCare to 2.41.0 ([@CFenner] - [#136231]) +- Add reauth flow to Overseerr ([@joostlek] - [#136247]) +- Record IQS for Switchbot ([@huyuwei1996] - [#136058]) +- Add reconfigure flow to Overseerr ([@joostlek] - [#136248]) +- Clean up attributes of Overseerr event entity ([@joostlek] - [#136251]) +- Improve type hints in template helper ([@epenet] - [#136253]) +- Allow multiple Airzone entries with different System IDs ([@Noltari] - [#135397]) +- Indicate in WS API when scheduling additional automatic backup ([@emontnemery] - [#136155]) +- Bump ohmepy to 1.2.4 ([@dan-r] - [#136270]) +- Only add Overseerr event if we are push based ([@joostlek] - [#136258]) +- Set enphase_envoy CT Status flags entity_category to diagnostics. ([@catsmanac] - [#136241]) +- Provide beta release note for Shelly RPC devices ([@bieniu] - [#136154]) +- Bump python-linkplay to v0.1.3 ([@silamon] - [#136267]) +- Bump bleak-esphome to 2.1.1 ([@bdraco] - [#136277]) +- Remove myself from ibeacon codeowners ([@bdraco] - [#136280]) +- Move brightness icon map to icons.json ([@natekspencer] - [#136201]) +- Bump pyHomee to 1.2.3 ([@Taraman17] - [#136213]) +- Bump habluetooth to 3.12.0 ([@bdraco] - [#136281]) +- Cleanup litterrobot select entity ([@natekspencer] - [#136282]) +- Implement Coordinator for HEOS (initial plumbing) ([@andrewsayre] - [#136205]) +- Add number platform to ohme ([@dan-r] - [#136271]) +- Convert LitterRobotHub to a DataUpdateCoordinator ([@natekspencer] - [#136283]) +- Improve type hints in benchmark script ([@epenet] - [#136259]) +- ping: Suppress ProcessLookupError on timeout ([@tswsl1989] - [#134281]) +- Allow time triggers with offsets to use input_datetimes ([@Petro31] - [#131550]) +- Cleanup litterrobot sensor entity ([@natekspencer] - [#136287]) +- Bump incomfort-client to v0.6.7 ([@jbouwh] - [#136285]) +- Revert "Add Tuya based bluetooth lights" ([@rwalker777] - [#133386]) +- Add TP-Link Tapo pet detection to onvif parsers ([@jterrace] - [#136303]) +- Bump onvif-zeep-async to 3.2.5 ([@bdraco] - [#136299]) +- Avoid useless data conversion in sonos config flow ([@bdraco] - [#136294]) +- Bump zeroconf to 0.141.0 ([@bdraco] - [#136292]) +- Bump led-ble to 1.1.4 ([@bdraco] - [#136301]) +- Standardize DOMAIN usage in litterrobot tests ([@natekspencer] - [#136290]) +- Add time platform to ohme ([@dan-r] - [#136289]) +- Fix grammar of OSO auth and action descriptions ([@NoRi2909] - [#136312]) +- Bump github/codeql-action from 3.28.2 to 3.28.3 (@dependabot - [#136308]) +- Bump dawidd6/action-download-artifact from 7 to 8 (@dependabot - [#136309]) +- Bump actions/attest-build-provenance from 2.1.0 to 2.2.0 (@dependabot - [#136307]) +- Bump codecov/codecov-action from 5.1.2 to 5.2.0 (@dependabot - [#136306]) +- Fix handling of non-supported devices in led-ble ([@bdraco] - [#136300]) +- Add heat pump supply pressure sensor in ViCare integration ([@CFenner] - [#136265]) +- Auto select thermostat preset when selecting temperature ([@domingues] - [#134146]) +- Cleanup map references in lovelace ([@epenet] - [#136314]) +- Update Overseerr quality scale ([@joostlek] - [#136260]) +- Use HassKey in lovelace ([@epenet] - [#136313]) +- Add system_health the to Network component ([@abmantis] - [#135514]) +- Add parallel updates to Airgradient ([@joostlek] - [#136323]) +- Restructure the youless integration internals ([@gjong] - [#135842]) +- Add translated action exceptions to Airgradient ([@joostlek] - [#136322]) +- Bump aiowebostv to 0.6.0 ([@thecode] - [#136206]) +- Replace key names with translatable friendly names in zwave_js ([@NoRi2909] - [#136318]) +- Clean up remaining backup manager tests ([@MartinHjelmare] - [#136335]) +- Add reconfigure flow to Airgradient ([@joostlek] - [#136324]) +- Bump myuplink lib to 0.7.0 ([@astrandb] - [#136343]) +- Improve error handling for incomfort gateway ([@jbouwh] - [#136317]) +- Enable strict-typing in lovelace ([@epenet] - [#136327]) +- Fix sentence-casing in isy994 integration strings, reword "lock user code" ([@NoRi2909] - [#136316]) +- Move single-use lovelace function ([@epenet] - [#136336]) +- Use runtime_data in bosch_shc ([@epenet] - [#136356]) +- Use runtime_data in canary ([@epenet] - [#136357]) +- Several fixes in user-facing strings of Renson integration actions ([@NoRi2909] - [#136279]) +- Cleanup hass.data in cloudflare ([@epenet] - [#136358]) +- Bump pyenphase to 1.23.1 ([@catsmanac] - [#136200]) +- Properly parse AirNow API data in coordinator ([@firstof9] - [#136198]) +- Enable strict typing for incomfort integration ([@jbouwh] - [#136291]) +- Fix tplink deprecated entity cleanup ([@sdb9696] - [#136160]) +- Refactor modbus polling to prevent dupe updates and memory leak ([@bdraco] - [#136211]) +- Incorporate ControllerManager into HEOS Coordinator ([@andrewsayre] - [#136302]) +- Set Netgear device entities to unavailable when the device is not connected ([@lanthaler] - [#135362]) +- holiday: asynchronously generate the entity name ([@bors-ltd] - [#136354]) +- Migrate modbus to use HassKey ([@bdraco] - [#136379]) +- Don't translate state names in default agent responses ([@synesthesiam] - [#136382]) +- Allow LLMs to get calendar events from exposed calendars ([@balloob] - [#136304]) +- Use runtime_data in coinbase ([@epenet] - [#136381]) +- Use runtime_data in daikin ([@epenet] - [#136376]) +- Use runtime_data in comelit ([@epenet] - [#136384]) +- Use runtime_data in ccm15 ([@epenet] - [#136378]) +- Add translated action exceptions to LG webOS TV ([@thecode] - [#136397]) +- Bump github/codeql-action from 3.28.3 to 3.28.4 (@dependabot - [#136401]) +- Bump codecov/codecov-action from 5.2.0 to 5.3.0 (@dependabot - [#136402]) +- Remove deprecated 17track package sensor ([@gjohansson-ST] - [#136389]) +- Use runtime_data in coolmaster ([@epenet] - [#136405]) +- Bump aioharmony to 0.4.0 ([@bdraco] - [#136398]) +- Bump aioautomower to 2025.1.1 ([@Thomas55555] - [#136365]) +- Bump WSDiscovery to 2.1.2 ([@bdraco] - [#136363]) +- Move denonavr shared constants to central location ([@epenet] - [#136421]) +- Simplify update listener in denonavr ([@epenet] - [#136422]) +- Omit Peblar update entities for most white label devices ([@frenck] - [#136374]) +- Use runtime_data in denonavr ([@epenet] - [#136424]) +- Bump nhc to 0.3.9 ([@VandeurenGlenn] - [#136418]) +- Fix humidifier mode for Vesync ([@iprak] - [#135746]) +- Incorporate SourceManager into HEOS Coordinator ([@andrewsayre] - [#136377]) +- Rename incomfort exceptions classes to fix typo and assign correct translation domain ([@jbouwh] - [#136426]) +- Tado change to async and add Data Update Coordinator ([@erwindouna] - [#134175]) +- Add missing translations for LG webOS TV and fix names ([@thecode] - [#136438]) +- Refactor the Hydrawise config flow ([@dknowles2] - [#135886]) +- Move dormakaba_dkey coordinator to separate module ([@epenet] - [#136437]) +- Use runtime_data in directv ([@epenet] - [#136435]) +- Move dexcom coordinator to separate module ([@epenet] - [#136433]) +- Use runtime_data in dormakaba_dkey ([@epenet] - [#136440]) +- Use runtime_data in duotecno ([@epenet] - [#136444]) +- Use runtime_data in dexcom ([@epenet] - [#136441]) +- Bump aioharmony to 0.4.1 ([@bdraco] - [#136413]) +- Use runtime_data in dunehd ([@epenet] - [#136443]) +- Reorganize input sources in Onkyo options ([@arturpragacz] - [#133511]) +- Move dynalite service definitions to separate module ([@epenet] - [#136446]) +- Add more sensors to homee ([@Taraman17] - [#136445]) +- Bump aioacaia to 0.1.14 ([@zweckj] - [#136453]) +- Add PARALLEL_UPDATES constant to ring integration platforms ([@sdb9696] - [#136470]) +- Bump uiprotect to version 7.5.0 ([@RaHehl] - [#136475]) +- Fix sentence-casing in strings of Vizio integration ([@NoRi2909] - [#136465]) +- Make Spotify polling interval dynamic ([@joostlek] - [#136461]) +- Powerwall: Reuse authentication cookie ([@choumarin] - [#136147]) +- Bump async-upnp-client to 0.43.0 ([@StevenLooman] - [#136481]) +- Bump pydantic to 2.10.6 ([@bdraco] - [#136483]) +- Cleanup update_listener in deconz ([@epenet] - [#136416]) +- Move deconz function to util.py ([@epenet] - [#136414]) +- Fix httpx late import of trio doing blocking I/O in the event loop ([@bdraco] - [#136409]) +- Bump pysmlight to v0.1.6 ([@tl-sl] - [#136496]) +- Update tplink climate platform to use thermostat module ([@sdb9696] - [#136166]) +- Refactor EZVIZ config flow tests ([@joostlek] - [#136434]) +- Bump reolink_aio to 0.11.8 ([@starkillerOG] - [#136504]) +- Add TemperatureLevel feature from Matter TemperatureControl cluster ([@lboue] - [#134532]) +- Abort config flow is device is unsupported ([@tl-sl] - [#136505]) +- Fix Spotify flaky test ([@joostlek] - [#136529]) +- Incorporate GroupManager into HEOS Coordinator ([@andrewsayre] - [#136462]) +- Reduce boilerplate code to setup modbus platform entities ([@bdraco] - [#136491]) +- Bump AIOSomeComfort to 0.0.30 in Honeywell ([@mkmer] - [#136523]) +- Reuse fixtures in config flow tests for Whirlpool ([@abmantis] - [#136489]) +- Bump pyvesync to 2.1.16 ([@iprak] - [#136493]) +- Remove unneeded call active check in modbus ([@bdraco] - [#136487]) +- Updated igloohome-api dependency to 0.1.0 ([@keithle888] - [#136516]) +- Add heat pump heating rod sensors in ViCare integration ([@CFenner] - [#136467]) +- Add backup agent to Synology DSM ([@mib1185] - [#135227]) +- Add Darsstar as codeowner for solax integration ([@squishykid] - [#136528]) +- Fix wrong plural on tado.add_meter_reading action ([@NoRi2909] - [#136524]) +- Add restore backup tests ([@MartinHjelmare] - [#136538]) +- Bump ohmepy version to 1.2.6 ([@dan-r] - [#136547]) +- Move action implementation out of HEOS Coordinator ([@andrewsayre] - [#136539]) +- Bump opower to 0.8.8 ([@tronikos] - [#136555]) +- Homee cover-test ([@Taraman17] - [#136563]) +- Add select platform to Ohme ([@dan-r] - [#136536]) +- Bump pyHomee to 1.2.5 ([@Taraman17] - [#136567]) +- Make casing of "server" and action descriptions consistent ([@NoRi2909] - [#136561]) +- Use typed ConfigEntry throughout HEOS ([@andrewsayre] - [#136569]) +- Bump HEOS quality scale to silver ([@andrewsayre] - [#136533]) +- Don't cast type in HEOS services ([@andrewsayre] - [#136583]) +- Fix HEOS play media type playlist ([@andrewsayre] - [#136585]) +- Fix spelling of "Home Assistant" and "IDs" in xiaomi_aqara ([@NoRi2909] - [#136578]) +- Fix sentence-casing in action names, spelling of "IDs" ([@NoRi2909] - [#136576]) +- Fix optional argument in deconz test type definition ([@epenet] - [#136411]) +- Bump yt-dlp to 2025.01.26 ([@joostlek] - [#136581]) +- Fix LetPot reauthentication flow tests setting up config entry ([@jpelgrom] - [#136589]) +- Add Reolink privacy switch entity ([@starkillerOG] - [#136521]) +- Bump python-kasa to 0.10.0 ([@sdb9696] - [#136586]) +- Cleanup stale devices on incomfort integration startup ([@jbouwh] - [#136566]) +- Prevent errors when Reolink privacy mode is turned on ([@starkillerOG] - [#136506]) +- Bump SoCo to 0.30.8 - Sonos ([@PeteRager] - [#136601]) +- Optimize enphase_envoy test integration setup. ([@catsmanac] - [#136572]) +- Update mypy-dev to 1.16.0a1 ([@cdce8p] - [#136544]) +- Bump pyheos to v1.0.1 ([@andrewsayre] - [#136604]) +- Push more of the LLM conversation agent loop into ChatSession ([@allenporter] - [#136602]) +- Update hassio to use the backup integration to make backups before update ([@emontnemery] - [#136235]) +- Add diagnostic sensors for the active subscription of Cookidoo ([@miaucl] - [#136485]) +- Bump nest to python-nest-sdm to 7.1.0 ([@allenporter] - [#136611]) +- Use runtime_data in crownstone ([@epenet] - [#136406]) +- Add lovelace compatiblity code ([@epenet] - [#136617]) +- Use runtime_data in dynalite ([@epenet] - [#136448]) +- Use runtime_data in deconz ([@epenet] - [#136412]) +- Ask for permission to disable Reolink privacy mode during config flow ([@starkillerOG] - [#136511]) +- Add a Matter temperature sensor based on `Thermostat` device `LocalTemperature` attribute ([@lboue] - [#133888]) +- Add missing exclude_integrations in lovelace compatibility code ([@epenet] - [#136618]) +- Starlink's energy consumption & usage cumulation fix ([@davidrapan] - [#135889]) +- Add product IDs for new LIFX Ceiling lights ([@Djelibeybi] - [#136619]) +- Use runtime_data in ecobee ([@epenet] - [#136632]) +- Bump codecov/codecov-action from 5.3.0 to 5.3.1 (@dependabot - [#136614]) +- Bump docker/build-push-action from 6.12.0 to 6.13.0 (@dependabot - [#136612]) +- Bump github/codeql-action from 3.28.4 to 3.28.5 (@dependabot - [#136613]) +- Use typed coordinator and runtime_data in eafm ([@epenet] - [#136629]) +- Cleanup unnecessary type hint in assist_satellite ([@epenet] - [#136626]) +- Cleanup hass.data[DOMAIN] in application_credentials ([@epenet] - [#136625]) +- Use typed ConfigEntry in ring coordinator ([@sdb9696] - [#136457]) +- Fix test logic flaw in enphase_envoy test_select ([@catsmanac] - [#136570]) +- Change discovery schema for Matter Identify button to ignore type of None ([@marcelveldt] - [#136621]) +- Fix spelling of "Hub" and sentence-casing of "options" ([@NoRi2909] - [#136573]) +- Add config flow data descriptions to ring integration ([@sdb9696] - [#136464]) +- Twinkly RGBW color fixed ([@Splint77] - [#136593]) +- Replace "bosch_shc" with friendly name of integration ([@NoRi2909] - [#136410]) +- Bump securetar to 2025.1.4 ([@emontnemery] - [#136639]) +- Fix spelling of "Pi-hole" and "API" in user-facing strings ([@NoRi2909] - [#136645]) +- Bump aioshelly to 12.3.2 ([@bieniu] - [#136486]) +- Bump voip-utils to 0.3.0 ([@synesthesiam] - [#136648]) +- Catch and convert MatterError when sending device commands ([@marcelveldt] - [#136635]) +- Add single target constraint to async_match_targets ([@synesthesiam] - [#136643]) +- Add LLM ActionTool ([@Shulyaka] - [#136591]) +- Add the Model Context Protocol integration ([@allenporter] - [#135058]) +- Add HassClimateSetTemperature ([@synesthesiam] - [#136484]) +- Make static modbus entity values classvar defaults ([@bdraco] - [#136488]) +- Add support for tplink siren turn on parameters ([@sdb9696] - [#136642]) +- Log the error when the WebSocket receives a error message ([@bdraco] - [#136492]) +- Bump pyfritzhome to 0.6.14 ([@mib1185] - [#136661]) +- Update flux-led to 1.1.3 ([@cdce8p] - [#136666]) +- Add Bluetooth WebSocket API to subscribe to connection allocations ([@bdraco] - [#136215]) +- Merge Whirlpool tests into a parameterized test ([@abmantis] - [#136490]) +- Increase LaCrosse View polling interval to 60 seconds ([@IceBotYT] - [#136680]) +- Bump aioesphomeapi to 29.0.0 and bleak-esphome to 2.2.0 ([@bdraco] - [#136684]) +- ChatSession: Split native content out of message class ([@balloob] - [#136668]) +- Add power/energy sensor for Matter draft electrical measurement cluster ([@dext0r] - [#132920]) +- Standardize `helpers.xxx_registry` imports ([@epenet] - [#136688]) +- Use runtime_data in ecoforest ([@epenet] - [#136689]) +- Update roborock tests to patch client before test setup ([@allenporter] - [#136587]) +- Use runtime_data in electrasmart ([@epenet] - [#136696]) +- Update config flow tests for litterrobot ([@natekspencer] - [#136658]) +- Use runtime_data in econet ([@epenet] - [#136691]) +- Bump actions/setup-python from 5.3.0 to 5.4.0 (@dependabot - [#136685]) +- Use runtime_data in ezviz ([@epenet] - [#136702]) +- Add translations for youless sensors ([@gjong] - [#136349]) +- Use runtime_data in electric_kiwi ([@epenet] - [#136699]) +- Cleanup use of hass.data in edl21 ([@epenet] - [#136694]) +- Improve type hints in econet ([@epenet] - [#136693]) +- Use runtime_data in evil_genius_labs ([@epenet] - [#136704]) +- Correct labels in EnOcean config flow ([@CFenner] - [#136338]) +- Use runtime_data in eufylife_ble ([@epenet] - [#136705]) +- Update nest config flow to create pub/sub topics ([@allenporter] - [#136609]) +- Support integrated ventilation on heating devices in ViCare integration ([@CFenner] - [#130356]) +- Use runtime_data in epson ([@epenet] - [#136706]) +- Use runtime_data in epion ([@epenet] - [#136708]) +- Introduce `unique_id` to BackupAgent ([@mib1185] - [#136651]) +- Use runtime_data in epic_games_store ([@epenet] - [#136709]) +- Initial implementation for tplink tapo vacuums ([@rytilahti] - [#131965]) +- Bump github/codeql-action from 3.28.5 to 3.28.6 (@dependabot - [#136686]) +- Update tplink coordinators to update hub-attached children ([@sdb9696] - [#135586]) +- Bump bring-api to 1.0.0 ([@tr4nt0r] - [#136657]) +- Bump nice-go to 1.0.1 ([@IceBotYT] - [#136649]) +- Remove unused function in hassio/update ([@arturpragacz] - [#136701]) +- Tag backups created when updating addon with supervisor.addon_update ([@emontnemery] - [#136690]) +- Fix deadlock in WS command backup/can_decrypt_on_download ([@emontnemery] - [#136707]) +- Add test for myuplink DeviceInfo ([@astrandb] - [#136360]) +- Use HassKey in diagnostics ([@epenet] - [#136627]) +- Add HEOS diagnostics ([@andrewsayre] - [#136663]) +- Cleanup ecobee YAML configuration import ([@epenet] - [#136633]) +- Fix spelling of "Ring" and sentence-casing of "integration" ([@NoRi2909] - [#136652]) +- Fix spelling errors in user-facing strings of OctoPrint integration ([@NoRi2909] - [#136644]) +- Raise exceptions in HEOS custom actions ([@andrewsayre] - [#136546]) +- Fix total coffees sensor for lamarzocco ([@zweckj] - [#135283]) +- Use runtime_data in drop_connect ([@epenet] - [#136442]) +- Include error reason in backup events ([@emontnemery] - [#136697]) +- Bump ohmepy to 1.2.8 ([@dan-r] - [#136719]) +- Add support for KNX UI to create BinarySensor entities ([@farmio] - [#136703]) +- Fix LG webOS TV external arc volume set action ([@thecode] - [#136717]) +- Use runtime_data in devialet ([@epenet] - [#136432]) +- Adjust Matter discovery logic to disallow the primary value(s) to be None ([@marcelveldt] - [#136712]) +- Standardize util imports ([@epenet] - [#136723]) +- Migrate usb to use aiousbwatcher ([@bdraco] - [#136676]) +- Add OneDrive as backup provider ([@zweckj] - [#135121]) +- Add SPF sensor for heat pumps in ViCare integration ([@CFenner] - [#136233]) +- Add sensor for Matter OperationalState cluster / CurrentPhase attribute ([@lboue] - [#129757]) +- Add authentication support to MotionMount integration ([@RJPoelstra] - [#126487]) +- Fix Telegram webhook registration if deregistration previously failed ([@rsiv] - [#133398]) +- Parameterize enphase_envoy number tests. ([@catsmanac] - [#136631]) +- Fix all occurrences of "PIN" in MotionMount user strings ([@NoRi2909] - [#136734]) +- Bump python-roborock to 2.9.7 ([@allenporter] - [#136727]) +- Add SmartTowerFan to VeSync Integration ([@cdnninja] - [#136596]) +- Add climate platform to eheimdigital ([@autinerd] - [#135878]) +- Add more tests to vesync ([@iprak] - [#135681]) +- Add config entry load/unload tests for LetPot ([@jpelgrom] - [#136736]) +- Add streaming to Teslemetry number platform ([@Bre77] - [#136048]) +- Add streaming to Teslemetry lock platform ([@Bre77] - [#136037]) +- Mark tplink quality_scale platinum ([@sdb9696] - [#136456]) +- Register service actions in async_setup of AVM Fritz!Box tools ([@mib1185] - [#136380]) +- Add support for HomeWizard Plug-In Battery and v2 API ([@joostlek] - [#136733]) +- Standardize homeassistant imports in full-CI tests ([@epenet] - [#136735]) +- Standardize homeassistant imports in full-CI components ([@epenet] - [#136731]) +- Standardize homeassistant imports in core and base platforms ([@epenet] - [#136730]) +- Add pair/unpair buttons for tplink ([@rytilahti] - [#135847]) +- Let platforms decide entity creation in litterrobot ([@natekspencer] - [#136738]) +- Bump yeelight to 0.7.16 ([@bdraco] - [#136679]) +- Fix LG webOS TV actions not returning responses ([@thecode] - [#136743]) +- Capitalize "Velbus", replace "service calls" with "actions" ([@NoRi2909] - [#136744]) +- Bump habluetooth to 3.13.0 ([@bdraco] - [#136749]) +- Update xknx to 3.5.0 ([@richardpolzer] - [#136759]) +- Add volt/power/power_factor strings and state attrs for ZHA 3 phase meters ([@abmantis] - [#133969]) +- Bump AIOSomecomfort to 0.0.32 ([@mkmer] - [#136751]) +- Add swing support for KNX climate entities ([@richardpolzer] - [#136752]) +- Add translations for ZHA pilot wire mode and device mode ([@piitaya] - [#136753]) +- Abort Bluetooth options flow if local adapters do not support passive scans ([@bdraco] - [#136748]) +- Bump homematicip to 1.1.7 ([@hahn-th] - [#136767]) +- Add Bluetooth WebSocket API to subscribe to scanner details ([@bdraco] - [#136750]) +- Bump hassil to 2.2.0 ([@synesthesiam] - [#136787]) +- Bumb python-homewizard-energy to 8.3.0 ([@DCSBL] - [#136765]) +- Bump aiowebostv to 0.6.1 ([@thecode] - [#136784]) +- Bump ZHA to 0.0.46 ([@TheJulianJES] - [#136785]) +- Explicitly pass in the config_entry in Feedreader coordinator init ([@mib1185] - [#136777]) +- Explicitly pass in the config_entry in PEGELONLINE coordinator init ([@mib1185] - [#136773]) +- Explicitly pass in the config_entry in AVM Fritz!SmartHome coordinator init ([@mib1185] - [#136769]) +- Bump peco to 0.1.2 ([@IceBotYT] - [#136732]) +- Explicitly pass in the config_entry in Tankerkoenig coordinator init ([@mib1185] - [#136780]) +- Explicitly pass in the config_entry in Proximity coordinator init ([@mib1185] - [#136775]) +- Add more vacuum features for tplink ([@rytilahti] - [#136580]) +- Explicitly pass in the config_entry in Synology DSM coordinator init ([@mib1185] - [#136772]) +- Explicitly pass in the config_entry in Nextcloud coordinator init ([@mib1185] - [#136774]) +- Add VoIP announce ([@synesthesiam] - [#136781]) +- Bump habluetooth to 3.14.0 ([@bdraco] - [#136791]) +- Fix typing errors in HEOS tests ([@andrewsayre] - [#136795]) +- Add UI to create KNX BinarySensor entities ([@farmio] - [#136786]) +- Redact stored authentication token in HomeWizard diagnostics ([@DCSBL] - [#136766]) +- Reload template blueprints when reloading templates ([@Petro31] - [#136794]) +- Bump intents to 2025.1.28 ([@synesthesiam] - [#136782]) +- Add power protection entities for tplink ([@rytilahti] - [#132267]) +- Add Google Drive integration for backup ([@tronikos] - [#134576]) +- Enable strict typing for HEOS ([@andrewsayre] - [#136797]) +- Standardize homeassistant imports in component tests (m-z) ([@epenet] - [#136807]) +- Use runtime_data in environment_canada ([@epenet] - [#136805]) +- Use runtime_data in elmax ([@epenet] - [#136803]) +- Fix percentage_charged in Teslemetry ([@Bre77] - [#136798]) +- Add remaining Matter Operational State sensor discovery schemas ([@marcelveldt] - [#136741]) +- Use runtime_data in energenie_power_sockets ([@epenet] - [#136801]) +- Use ConfigEntry.runtime_data in AVM Fritz!Box tools ([@mib1185] - [#136386]) +- Standardize homeassistant imports in component tests (a-l) ([@epenet] - [#136806]) +- Rename environment_canada entities ([@epenet] - [#136817]) +- Add config flow to filter helper ([@gjohansson-ST] - [#121522]) +- Simplify device_info access in environment_canada ([@epenet] - [#136816]) +- Bump aiohasupervisor to version 0.2.2b6 ([@emontnemery] - [#136814]) +- Stop building wheels for 3.12 ([@edenhaus] - [#136811]) +- Add last restart sensor to HomeWizard ([@DCSBL] - [#136763]) +- Use translations for fan_speed in tplink vacuum entity ([@sdb9696] - [#136718]) +- Bump pyiskra to 0.1.15 ([@iskrakranj] - [#136810]) +- vesync: report current humidity ([@oandrew] - [#136799]) +- Add binary sensor platform to VeSync ([@cdnninja] - [#134221]) +- Add diagnostics for Cookidoo integration ([@miaucl] - [#136770]) +- Use the new hybrid Hydrawise client ([@dknowles2] - [#136522]) +- Bump deebot-client to 11.1.0b1 ([@edenhaus] - [#136818]) +- Improve type hints in environment_canada sensors ([@epenet] - [#136813]) +- Standardize homeassistant imports in component (e-f) ([@epenet] - [#136824]) +- Standardize homeassistant imports in component (c-d) ([@epenet] - [#136823]) +- Standardize homeassistant imports in component (a-b) ([@epenet] - [#136821]) +- Improve type hints in environment_canada camera and weather ([@epenet] - [#136819]) +- Correct the behavior of the Charge switch in Tessie/Teslemetry/Tesla Fleet ([@Bre77] - [#136562]) +- Standardize homeassistant imports in component (l-m) ([@epenet] - [#136827]) +- Standardize homeassistant imports in component (i-k) ([@epenet] - [#136826]) +- Standardize homeassistant imports in component (g-h) ([@epenet] - [#136825]) +- Update quality scale for litterrobot ([@natekspencer] - [#136764]) +- Standardize homeassistant imports in component (t-u) ([@epenet] - [#136833]) +- Add image entity for fyta ([@dontinelli] - [#135105]) +- Standardize homeassistant imports in component (n-p) ([@epenet] - [#136830]) +- Standardize homeassistant imports in component (q-r) ([@epenet] - [#136831]) +- Standardize homeassistant imports in component (s) ([@epenet] - [#136832]) +- Standardize homeassistant imports in component (v-z) ([@epenet] - [#136834]) +- Add backup endpoints to the onboarding integration ([@emontnemery] - [#136051]) +- Rename HomeWizard last restart sensor to Uptime ([@DCSBL] - [#136829]) +- Fix command latency in AVM Fritz!SmartHome ([@mib1185] - [#136739]) +- Bump qbusmqttapi to 1.2.4 ([@thomasddn] - [#136835]) +- Update photovoltaic related labels in ViCare ([@CFenner] - [#136430]) +- Standardize remaining homeassistant imports ([@epenet] - [#136836]) +- IQS completion of documentation for Plugwise ([@CoMPaTech] - [#134051]) +- Add support for per-backup agent encryption flag ([@emontnemery] - [#136622]) +- Add select platform discovery schemas for the Matter LaundryWasherControls cluster ([@lboue] - [#136261]) +- Take exclude vias in unique ids for nmbs ([@silamon] - [#136590]) +- Fix spelling of "API" for consistency in Home Assistant UI ([@NoRi2909] - [#136842]) +- Add consumables for tplink tapo vacuums ([@rytilahti] - [#136510]) +- Add cleaning statistics for tplink ([@rytilahti] - [#135784]) +- Adjust deprecation in water heater ([@epenet] - [#136577]) +- Migrate Google Gen AI to ChatSession ([@balloob] - [#136779]) +- Persist backup restore status after core restart ([@emontnemery] - [#136838]) +- Check for fullcolorsupport in fritzbox light ([@flabbamann] - [#136850]) +- Add DHCP discovery to balboa ([@natekspencer] - [#136762]) +- Fix spelling of "API" for consistency in Home Assistant UI ([@NoRi2909] - [#136843]) +- Update frontend to 20250129.0 ([@bramkragten] - [#136852]) +- Tweak Matter discovery to ignore empty lists ([@marcelveldt] - [#136854]) +- Ease understanding of integration failures ([@tomer-w] - [#134475]) +- Interrupt _CipherBackupStreamer workers ([@emontnemery] - [#136845]) +- Use runtime_data in control4 ([@epenet] - [#136403]) +- Simplify Whirlpool auth flows ([@abmantis] - [#136856]) +- Add ability to cache Roborock maps instead of always reloading ([@Lash-L] - [#112047]) +- Update whirlpool-sixth-sense to 0.18.12 ([@abmantis] - [#136851]) +- Add support for per-backup agent encryption flag to hassio ([@emontnemery] - [#136828]) +- Persist hassio backup restore status after core restart ([@emontnemery] - [#136857]) +- Cancel call if user does not pick up ([@synesthesiam] - [#136858]) +- Handle locked account error in Whirlpool ([@abmantis] - [#136861]) +- Fix incorrect Bluetooth source address when restoring data from D-Bus ([@bdraco] - [#136862]) +- Bump backup store to version 1.3 ([@emontnemery] - [#136870]) +- Add start_conversation service to Assist Satellite ([@balloob] - [#134921]) +- Fix loading of SMLIGHT integration when no internet is available ([@tl-sl] - [#136497]) +- Bump ZHA to 0.0.47 ([@TheJulianJES] - [#136883]) +- Bump nest to 7.1.1 ([@allenporter] - [#136888]) +- Poll supervisor job state when creating or restoring a backup ([@emontnemery] - [#136891]) +- Add missing discovery string from onewire ([@epenet] - [#136892]) +- Ignore dangling symlinks when restoring backup ([@emontnemery] - [#136893]) +- Fix handling of renamed backup files in the core writer ([@emontnemery] - [#136898]) +- Don't blow up when a backup doesn't exist on supervisor ([@emontnemery] - [#136907]) +- Fix onedrive does not fail on delete not found ([@zweckj] - [#136910]) +- Convert valve position to int for Shelly BLU TRV ([@bieniu] - [#136912]) +- Don't log errors when raising a backup exception in Google Drive ([@tronikos] - [#136916]) +- Show name of the backup agents in issue ([@joostlek] - [#136925]) +- Fix Sonos importing deprecating constant ([@joostlek] - [#136926]) +- Create Xbox signed session in executor ([@joostlek] - [#136927]) +- Pick onedrive owner from a more reliable source ([@zweckj] - [#136929]) +- Fix backup related translations in Synology DSM ([@mib1185] - [#136931]) +- Fix KeyError for Shelly virtual number component ([@bieniu] - [#136932]) +- Update frontend to 20250130.0 ([@bramkragten] - [#136937]) +- Ensure Reolink can start when privacy mode is enabled ([@starkillerOG] - [#136514]) +- Refactor eheimdigital platform async_setup_entry ([@autinerd] - [#136745]) +- Bump total-connect-client to 2025.1.4 ([@austinmroczek] - [#136793]) +- Fixes to the user-facing strings of energenie_power_sockets ([@NoRi2909] - [#136844]) +- Bump jellyfin-apiclient-python to 1.10.0 ([@RunC0deRun] - [#136872]) +- Suppress color_temp warning if color_temp_kelvin is provided ([@Djelibeybi] - [#136884]) +- Persist roborock maps to disk only on shutdown ([@allenporter] - [#136889]) +- Include the redirect URL in the Google Drive instructions ([@tronikos] - [#136906]) +- Bump opower to 0.8.9 ([@tronikos] - [#136911]) +- Make backup file names more user friendly ([@emontnemery] - [#136928]) +- Bump zeroconf to 0.142.0 ([@bdraco] - [#136940]) +- Bump aiohttp-asyncmdnsresolver to 0.0.2 ([@bdraco] - [#136942]) +- Update knx-frontend to 2025.1.30.194235 ([@farmio] - [#136954]) +- Consume extra system prompt in first pipeline ([@synesthesiam] - [#136958]) +- Bump habluetooth to 3.15.0 ([@bdraco] - [#136973]) +- Delete old addon update backups when updating addon ([@emontnemery] - [#136977]) +- Retry backup uploads in onedrive ([@zweckj] - [#136980]) +- Fix missing duration translation for Swiss public transport integration ([@miaucl] - [#136982]) +- Call backup listener during setup in onedrive ([@zweckj] - [#136990]) +- Bumb python-homewizard-energy to 8.3.2 ([@DCSBL] - [#136995]) +- Use device name as entity name in Eheim digital climate ([@joostlek] - [#136997]) +- Remove the unparsed config flow error from Swiss public transport ([@miaucl] - [#136998]) +- Make sure we load the backup integration before frontend ([@emontnemery] - [#137010]) +- Revert previous PR and remove URL from error message instead ([@NoRi2909] - [#137018]) +- Make supervisor backup file names more user friendly ([@emontnemery] - [#137020]) +- Bump habluetooth to 3.17.0 ([@bdraco] - [#137022]) +- Update frontend to 20250131.0 ([@bramkragten] - [#137024]) +- Bump bleak-esphome to 2.6.0 ([@bdraco] - [#137025]) +- Bump SQLAlchemy to 2.0.37 ([@bdraco] - [#137028]) +- Bump deebot-client to 11.1.0b2 ([@edenhaus] - [#137030]) +- Shorten the integration name for `incomfort` ([@jbouwh] - [#136930]) +- Update Overseerr string to mention CSRF ([@joostlek] - [#137001]) +- Use readable backup names for onedrive ([@zweckj] - [#137031]) +- Bump bthome-ble to 3.11.0 ([@Ernst79] - [#137032]) +- Bump zeroconf to 0.143.0 ([@bdraco] - [#137035]) +- Bump bthome-ble to 3.12.3 ([@bdraco] - [#137036]) +- Bump aiohttp-asyncmdnsresolver to 0.0.3 ([@bdraco] - [#137040]) +- Bump habluetooth to 3.17.1 ([@bdraco] - [#137045]) +- Bump aioimaplib to version 2.0.1 ([@jbouwh] - [#137049]) +- Raise HomeAssistantError from camera snapshot service ([@natekspencer] - [#137051]) +- Allow ignored govee-ble devices to be set up from the user flow ([@bdraco] - [#137052]) +- Allow ignored switchbot devices to be set up from the user flow ([@bdraco] - [#137056]) +- For consistency use suggested_filename in Google Drive ([@tronikos] - [#137061]) +- Bump habluetooth to 3.20.1 ([@bdraco] - [#137063]) +- Load `hassio` before `backup` at frontend stage ([@jpbede] - [#137067]) +- Bump lacrosse-view to 1.0.4 ([@IceBotYT] - [#137058]) +- Update RestrictedPython to 8.0 ([@cdce8p] - [#137075]) +- Set via_device for remote Bluetooth adapters to link to the parent device ([@bdraco] - [#137091]) +- Allow ignored airthings_ble devices to be set up from the user flow ([@bdraco] - [#137102]) +- Allow ignored yale_ble devices to be set up from the user flow ([@bdraco] - [#137103]) +- Allow ignored thermopro devices to be set up from the user flow ([@bdraco] - [#137104]) +- Allow ignored bthome devices to be set up from the user flow ([@bdraco] - [#137105]) +- Allow ignored inkbird devices to be set up from the user flow ([@bdraco] - [#137106]) +- Allow ignored mopeka devices to be set up from the user flow ([@bdraco] - [#137107]) +- Allow ignored oralb devices to be set up from the user flow ([@bdraco] - [#137109]) +- Fix Homekit camera profiles schema ([@shmuelzon] - [#137110]) +- Allow ignored qingping devices to be set up from the user flow ([@bdraco] - [#137111]) +- Allow ignored sensorpush devices to be set up from the user flow ([@bdraco] - [#137113]) +- Allow ignored xiaomi_ble devices to be set up from the user flow ([@bdraco] - [#137115]) +- Allow ignored Aranet devices to be set up from the user flow ([@thecode] - [#137121]) +- Allow ignored tilt_ble devices to be set up from user flow ([@apt-itude] - [#137123]) +- Remove entity state from mcp-server prompt ([@allenporter] - [#137126]) +- Bump habluetooth to 3.21.0 ([@bdraco] - [#137129]) +- Add missing brackets to ESPHome configuration URLs with IPv6 addresses ([@bdraco] - [#137132]) +- Bump deebot-client to 12.0.0b0 ([@edenhaus] - [#137137]) +- Allow manual smlight user setup to override discovery ([@tl-sl] - [#137136]) +- Bump dbus-fast to 2.30.4 ([@bdraco] - [#137151]) +- Bump bluetooth-data-tools to 1.23.3 ([@bdraco] - [#137147]) +- Bump habiticalib to v0.3.4 ([@tr4nt0r] - [#137148]) +- Bump monarchmoney to 0.4.4 ([@jeeftor] - [#137168]) +- Fix mqtt reconfigure does not use broker entry password when it is not changed ([@jbouwh] - [#137169]) +- Bump python-kasa to 0.10.1 ([@sdb9696] - [#137173]) +- Bump dbus-fast to 2.31.0 ([@bdraco] - [#137180]) +- Bump aiodhcpwatcher to 1.0.3 ([@bdraco] - [#137188]) +- Bump bleak-esphome to 2.7.0 ([@bdraco] - [#137199]) +- Switch to using IP Addresses for connecting to smlight devices ([@tl-sl] - [#137204]) +- Bump dbus-fast to 2.23.0 ([@bdraco] - [#137205]) +- Simplify config entry title for SMLIGHT ([@tl-sl] - [#137206]) +- Bump todist-api-python to 2.1.7 ([@boralyl] - [#136549]) +- Don't blow up when a backup doesn't exist on Synology DSM ([@mib1185] - [#136913]) +- Migrate OneDrive to onedrive_personal_sdk library ([@zweckj] - [#137064]) +- Humidifier turn display off for sleep mode ([@iprak] - [#137133]) +- Fixes in user-facing strings of Tado integration ([@NoRi2909] - [#137158]) +- Bump pypck to 0.8.5 ([@alengwenus] - [#137176]) +- Vesync bump pyvesync library ([@cdnninja] - [#137208]) +- Check for errors when restoring backups using supervisor ([@emontnemery] - [#137217]) +- Check for errors when creating backups using supervisor ([@emontnemery] - [#137220]) +- Fix retrieving PIN when no pin is set on mount in motionmount integration ([@RJPoelstra] - [#137230]) +- Fix minor issues in Homee ([@Taraman17] - [#137239]) +- Bump python-roborock to 2.11.1 ([@regevbr] - [#137244]) +- Bump onedrive-personal-sdk to 0.0.2 ([@zweckj] - [#137252]) +- Allow ignored idasen_desk devices to be set up from the user flow ([@abmantis] - [#137253]) +- Improve shutdown of _CipherBackupStreamer ([@emontnemery] - [#137257]) +- Remove v2 API support for HomeWizard P1 Meter ([@DCSBL] - [#137261]) +- Update frontend to 20250203.0 ([@bramkragten] - [#137263]) +- Bump pymill to 0.12.3 ([@Danielhiversen] - [#137264]) +- Bump tesla-fleet-api to 0.9.2 ([@Bre77] - [#137295]) +- Fix data update coordinator garbage collection ([@epenet] - [#137299]) +- Report progress while creating supervisor backup ([@emontnemery] - [#137301]) +- Bump onedrive-personal-sdk to 0.0.3 ([@zweckj] - [#137309]) +- Add view to download support package to Cloud component ([@abmantis] - [#135856]) +- Improve backup file naming in Synology DSM backup agent ([@mib1185] - [#137278]) +- Include extra metadata in backup WS API ([@emontnemery] - [#137296]) +- Bump tololib to 1.2.2 ([@MatthiasLohr] - [#137303]) +- Allow ignored screenlogic devices to be set up from the user flow ([@dieselrabbit] - [#137315]) +- Minor adjustments of hassio backup tests ([@emontnemery] - [#137324]) +- Bump onedrive-personal-sdk to 0.0.4 ([@zweckj] - [#137330]) +- Improve error handling when supervisor backups are deleted ([@emontnemery] - [#137331]) +- Don't show active user initiated data entry config flows ([@jbouwh] - [#137334]) +- Fix HomeWizard reconfigure flow throwing error for v2-API devices ([@DCSBL] - [#137337]) +- Copy area from remote parent device when creating Bluetooth devices ([@bdraco] - [#137340]) +- Update frontend to 20250204.0 ([@bramkragten] - [#137342]) +- Bump uiprotect to 7.5.1 ([@bdraco] - [#137343]) +- Fix incorrect UPB service entity type ([@gwww] - [#137346]) +- Polish tplink vacuum sensors ([@rytilahti] - [#137355]) +- Bump aranet4 to 2.5.1 ([@thecode] - [#137359]) +- Bump deebot-client to 12.0.0 ([@edenhaus] - [#137361]) +- Fix Tado missing await ([@thecode] - [#137364]) +- Bump pysmlight to v0.1.7 ([@tl-sl] - [#137390]) +- Report progress while restoring supervisor backup ([@emontnemery] - [#137313]) +- Fix memory leak when unloading DataUpdateCoordinator ([@bdraco] - [#137338]) +- Update led-ble to 1.1.5 ([@cdce8p] - [#137347]) +- Fix sqlalchemy deprecation warning that `declarative_base` has moved ([@jpbede] - [#137360]) +- Bump led-ble to 1.1.6 ([@bdraco] - [#137369]) +- Allow ignored Bluetooth adapters to be set up from the user flow ([@bdraco] - [#137373]) +- Bump Tesla Fleet API to v0.9.8 ([@Bre77] - [#137379]) +- Handle powerwall at zero percent in Tesla Fleet and Tessie ([@Bre77] - [#137393]) +- Simplify llm calendar tool ([@balloob] - [#137402]) +- Allow creating backup if at least one agent is available ([@emontnemery] - [#137409]) +- Adjust logic for per-backup agent encryption ([@emontnemery] - [#137420]) +- Adjust backup filename scheme ([@emontnemery] - [#137424]) +- Bump onedrive to 0.0.8 ([@zweckj] - [#137423]) +- Bump reolink_aio to 0.11.9 ([@starkillerOG] - [#137430]) +- Bump aiohasupervisor to version 0.3.0 ([@emontnemery] - [#137437]) +- Update frontend to 20250205.0 ([@bramkragten] - [#137441]) +- Update bluetooth dependencies ([@cdce8p] - [#137353]) +- Update bluetooth-data-tools to 1.23.4 ([@cdce8p] - [#137374]) +- Bump hassil and intents ([@synesthesiam] - [#137440]) +- Bump dbus-fast to 2.33.0 ([@bdraco] - [#137446]) + +[#112047]: https://github.com/home-assistant/core/pull/112047 +[#121522]: https://github.com/home-assistant/core/pull/121522 +[#121548]: https://github.com/home-assistant/core/pull/121548 +[#124743]: https://github.com/home-assistant/core/pull/124743 +[#126064]: https://github.com/home-assistant/core/pull/126064 +[#126487]: https://github.com/home-assistant/core/pull/126487 +[#126878]: https://github.com/home-assistant/core/pull/126878 +[#127280]: https://github.com/home-assistant/core/pull/127280 +[#127550]: https://github.com/home-assistant/core/pull/127550 +[#127687]: https://github.com/home-assistant/core/pull/127687 +[#127957]: https://github.com/home-assistant/core/pull/127957 +[#128366]: https://github.com/home-assistant/core/pull/128366 +[#128439]: https://github.com/home-assistant/core/pull/128439 +[#129009]: https://github.com/home-assistant/core/pull/129009 +[#129352]: https://github.com/home-assistant/core/pull/129352 +[#129636]: https://github.com/home-assistant/core/pull/129636 +[#129757]: https://github.com/home-assistant/core/pull/129757 +[#130196]: https://github.com/home-assistant/core/pull/130196 +[#130356]: https://github.com/home-assistant/core/pull/130356 +[#130408]: https://github.com/home-assistant/core/pull/130408 +[#130513]: https://github.com/home-assistant/core/pull/130513 +[#130657]: https://github.com/home-assistant/core/pull/130657 +[#130717]: https://github.com/home-assistant/core/pull/130717 +[#130731]: https://github.com/home-assistant/core/pull/130731 +[#130738]: https://github.com/home-assistant/core/pull/130738 +[#130918]: https://github.com/home-assistant/core/pull/130918 +[#131032]: https://github.com/home-assistant/core/pull/131032 +[#131133]: https://github.com/home-assistant/core/pull/131133 +[#131224]: https://github.com/home-assistant/core/pull/131224 +[#131274]: https://github.com/home-assistant/core/pull/131274 +[#131371]: https://github.com/home-assistant/core/pull/131371 +[#131416]: https://github.com/home-assistant/core/pull/131416 +[#131433]: https://github.com/home-assistant/core/pull/131433 +[#131496]: https://github.com/home-assistant/core/pull/131496 +[#131550]: https://github.com/home-assistant/core/pull/131550 +[#131586]: https://github.com/home-assistant/core/pull/131586 +[#131676]: https://github.com/home-assistant/core/pull/131676 +[#131914]: https://github.com/home-assistant/core/pull/131914 +[#131965]: https://github.com/home-assistant/core/pull/131965 +[#132017]: https://github.com/home-assistant/core/pull/132017 +[#132117]: https://github.com/home-assistant/core/pull/132117 +[#132267]: https://github.com/home-assistant/core/pull/132267 +[#132502]: https://github.com/home-assistant/core/pull/132502 +[#132551]: https://github.com/home-assistant/core/pull/132551 +[#132754]: https://github.com/home-assistant/core/pull/132754 +[#132783]: https://github.com/home-assistant/core/pull/132783 +[#132871]: https://github.com/home-assistant/core/pull/132871 +[#132879]: https://github.com/home-assistant/core/pull/132879 +[#132920]: https://github.com/home-assistant/core/pull/132920 +[#133099]: https://github.com/home-assistant/core/pull/133099 +[#133227]: https://github.com/home-assistant/core/pull/133227 +[#133269]: https://github.com/home-assistant/core/pull/133269 +[#133270]: https://github.com/home-assistant/core/pull/133270 +[#133285]: https://github.com/home-assistant/core/pull/133285 +[#133318]: https://github.com/home-assistant/core/pull/133318 +[#133328]: https://github.com/home-assistant/core/pull/133328 +[#133342]: https://github.com/home-assistant/core/pull/133342 +[#133386]: https://github.com/home-assistant/core/pull/133386 +[#133398]: https://github.com/home-assistant/core/pull/133398 +[#133452]: https://github.com/home-assistant/core/pull/133452 +[#133511]: https://github.com/home-assistant/core/pull/133511 +[#133546]: https://github.com/home-assistant/core/pull/133546 +[#133583]: https://github.com/home-assistant/core/pull/133583 +[#133612]: https://github.com/home-assistant/core/pull/133612 +[#133615]: https://github.com/home-assistant/core/pull/133615 +[#133617]: https://github.com/home-assistant/core/pull/133617 +[#133663]: https://github.com/home-assistant/core/pull/133663 +[#133678]: https://github.com/home-assistant/core/pull/133678 +[#133691]: https://github.com/home-assistant/core/pull/133691 +[#133704]: https://github.com/home-assistant/core/pull/133704 +[#133732]: https://github.com/home-assistant/core/pull/133732 +[#133738]: https://github.com/home-assistant/core/pull/133738 +[#133777]: https://github.com/home-assistant/core/pull/133777 +[#133784]: https://github.com/home-assistant/core/pull/133784 +[#133810]: https://github.com/home-assistant/core/pull/133810 +[#133827]: https://github.com/home-assistant/core/pull/133827 +[#133833]: https://github.com/home-assistant/core/pull/133833 +[#133840]: https://github.com/home-assistant/core/pull/133840 +[#133844]: https://github.com/home-assistant/core/pull/133844 +[#133852]: https://github.com/home-assistant/core/pull/133852 +[#133866]: https://github.com/home-assistant/core/pull/133866 +[#133870]: https://github.com/home-assistant/core/pull/133870 +[#133888]: https://github.com/home-assistant/core/pull/133888 +[#133893]: https://github.com/home-assistant/core/pull/133893 +[#133895]: https://github.com/home-assistant/core/pull/133895 +[#133902]: https://github.com/home-assistant/core/pull/133902 +[#133910]: https://github.com/home-assistant/core/pull/133910 +[#133920]: https://github.com/home-assistant/core/pull/133920 +[#133921]: https://github.com/home-assistant/core/pull/133921 +[#133928]: https://github.com/home-assistant/core/pull/133928 +[#133937]: https://github.com/home-assistant/core/pull/133937 +[#133939]: https://github.com/home-assistant/core/pull/133939 +[#133953]: https://github.com/home-assistant/core/pull/133953 +[#133955]: https://github.com/home-assistant/core/pull/133955 +[#133957]: https://github.com/home-assistant/core/pull/133957 +[#133958]: https://github.com/home-assistant/core/pull/133958 +[#133959]: https://github.com/home-assistant/core/pull/133959 +[#133962]: https://github.com/home-assistant/core/pull/133962 +[#133969]: https://github.com/home-assistant/core/pull/133969 +[#133970]: https://github.com/home-assistant/core/pull/133970 +[#133981]: https://github.com/home-assistant/core/pull/133981 +[#133982]: https://github.com/home-assistant/core/pull/133982 +[#133987]: https://github.com/home-assistant/core/pull/133987 +[#133988]: https://github.com/home-assistant/core/pull/133988 +[#133994]: https://github.com/home-assistant/core/pull/133994 +[#133996]: https://github.com/home-assistant/core/pull/133996 +[#133997]: https://github.com/home-assistant/core/pull/133997 +[#134001]: https://github.com/home-assistant/core/pull/134001 +[#134004]: https://github.com/home-assistant/core/pull/134004 +[#134016]: https://github.com/home-assistant/core/pull/134016 +[#134019]: https://github.com/home-assistant/core/pull/134019 +[#134020]: https://github.com/home-assistant/core/pull/134020 +[#134021]: https://github.com/home-assistant/core/pull/134021 +[#134025]: https://github.com/home-assistant/core/pull/134025 +[#134026]: https://github.com/home-assistant/core/pull/134026 +[#134027]: https://github.com/home-assistant/core/pull/134027 +[#134028]: https://github.com/home-assistant/core/pull/134028 +[#134036]: https://github.com/home-assistant/core/pull/134036 +[#134040]: https://github.com/home-assistant/core/pull/134040 +[#134041]: https://github.com/home-assistant/core/pull/134041 +[#134044]: https://github.com/home-assistant/core/pull/134044 +[#134049]: https://github.com/home-assistant/core/pull/134049 +[#134051]: https://github.com/home-assistant/core/pull/134051 +[#134053]: https://github.com/home-assistant/core/pull/134053 +[#134054]: https://github.com/home-assistant/core/pull/134054 +[#134055]: https://github.com/home-assistant/core/pull/134055 +[#134056]: https://github.com/home-assistant/core/pull/134056 +[#134059]: https://github.com/home-assistant/core/pull/134059 +[#134060]: https://github.com/home-assistant/core/pull/134060 +[#134069]: https://github.com/home-assistant/core/pull/134069 +[#134072]: https://github.com/home-assistant/core/pull/134072 +[#134079]: https://github.com/home-assistant/core/pull/134079 +[#134087]: https://github.com/home-assistant/core/pull/134087 +[#134088]: https://github.com/home-assistant/core/pull/134088 +[#134093]: https://github.com/home-assistant/core/pull/134093 +[#134097]: https://github.com/home-assistant/core/pull/134097 +[#134100]: https://github.com/home-assistant/core/pull/134100 +[#134104]: https://github.com/home-assistant/core/pull/134104 +[#134105]: https://github.com/home-assistant/core/pull/134105 +[#134106]: https://github.com/home-assistant/core/pull/134106 +[#134107]: https://github.com/home-assistant/core/pull/134107 +[#134108]: https://github.com/home-assistant/core/pull/134108 +[#134109]: https://github.com/home-assistant/core/pull/134109 +[#134110]: https://github.com/home-assistant/core/pull/134110 +[#134115]: https://github.com/home-assistant/core/pull/134115 +[#134116]: https://github.com/home-assistant/core/pull/134116 +[#134117]: https://github.com/home-assistant/core/pull/134117 +[#134118]: https://github.com/home-assistant/core/pull/134118 +[#134120]: https://github.com/home-assistant/core/pull/134120 +[#134122]: https://github.com/home-assistant/core/pull/134122 +[#134124]: https://github.com/home-assistant/core/pull/134124 +[#134130]: https://github.com/home-assistant/core/pull/134130 +[#134132]: https://github.com/home-assistant/core/pull/134132 +[#134133]: https://github.com/home-assistant/core/pull/134133 +[#134135]: https://github.com/home-assistant/core/pull/134135 +[#134137]: https://github.com/home-assistant/core/pull/134137 +[#134138]: https://github.com/home-assistant/core/pull/134138 +[#134143]: https://github.com/home-assistant/core/pull/134143 +[#134146]: https://github.com/home-assistant/core/pull/134146 +[#134147]: https://github.com/home-assistant/core/pull/134147 +[#134150]: https://github.com/home-assistant/core/pull/134150 +[#134151]: https://github.com/home-assistant/core/pull/134151 +[#134153]: https://github.com/home-assistant/core/pull/134153 +[#134156]: https://github.com/home-assistant/core/pull/134156 +[#134170]: https://github.com/home-assistant/core/pull/134170 +[#134173]: https://github.com/home-assistant/core/pull/134173 +[#134174]: https://github.com/home-assistant/core/pull/134174 +[#134175]: https://github.com/home-assistant/core/pull/134175 +[#134179]: https://github.com/home-assistant/core/pull/134179 +[#134185]: https://github.com/home-assistant/core/pull/134185 +[#134186]: https://github.com/home-assistant/core/pull/134186 +[#134187]: https://github.com/home-assistant/core/pull/134187 +[#134192]: https://github.com/home-assistant/core/pull/134192 +[#134193]: https://github.com/home-assistant/core/pull/134193 +[#134196]: https://github.com/home-assistant/core/pull/134196 +[#134197]: https://github.com/home-assistant/core/pull/134197 +[#134198]: https://github.com/home-assistant/core/pull/134198 +[#134200]: https://github.com/home-assistant/core/pull/134200 +[#134207]: https://github.com/home-assistant/core/pull/134207 +[#134210]: https://github.com/home-assistant/core/pull/134210 +[#134211]: https://github.com/home-assistant/core/pull/134211 +[#134212]: https://github.com/home-assistant/core/pull/134212 +[#134213]: https://github.com/home-assistant/core/pull/134213 +[#134221]: https://github.com/home-assistant/core/pull/134221 +[#134222]: https://github.com/home-assistant/core/pull/134222 +[#134229]: https://github.com/home-assistant/core/pull/134229 +[#134242]: https://github.com/home-assistant/core/pull/134242 +[#134244]: https://github.com/home-assistant/core/pull/134244 +[#134245]: https://github.com/home-assistant/core/pull/134245 +[#134246]: https://github.com/home-assistant/core/pull/134246 +[#134256]: https://github.com/home-assistant/core/pull/134256 +[#134261]: https://github.com/home-assistant/core/pull/134261 +[#134275]: https://github.com/home-assistant/core/pull/134275 +[#134277]: https://github.com/home-assistant/core/pull/134277 +[#134278]: https://github.com/home-assistant/core/pull/134278 +[#134279]: https://github.com/home-assistant/core/pull/134279 +[#134281]: https://github.com/home-assistant/core/pull/134281 +[#134282]: https://github.com/home-assistant/core/pull/134282 +[#134285]: https://github.com/home-assistant/core/pull/134285 +[#134290]: https://github.com/home-assistant/core/pull/134290 +[#134291]: https://github.com/home-assistant/core/pull/134291 +[#134296]: https://github.com/home-assistant/core/pull/134296 +[#134298]: https://github.com/home-assistant/core/pull/134298 +[#134299]: https://github.com/home-assistant/core/pull/134299 +[#134300]: https://github.com/home-assistant/core/pull/134300 +[#134301]: https://github.com/home-assistant/core/pull/134301 +[#134302]: https://github.com/home-assistant/core/pull/134302 +[#134303]: https://github.com/home-assistant/core/pull/134303 +[#134304]: https://github.com/home-assistant/core/pull/134304 +[#134305]: https://github.com/home-assistant/core/pull/134305 +[#134307]: https://github.com/home-assistant/core/pull/134307 +[#134308]: https://github.com/home-assistant/core/pull/134308 +[#134309]: https://github.com/home-assistant/core/pull/134309 +[#134310]: https://github.com/home-assistant/core/pull/134310 +[#134314]: https://github.com/home-assistant/core/pull/134314 +[#134320]: https://github.com/home-assistant/core/pull/134320 +[#134328]: https://github.com/home-assistant/core/pull/134328 +[#134330]: https://github.com/home-assistant/core/pull/134330 +[#134331]: https://github.com/home-assistant/core/pull/134331 +[#134333]: https://github.com/home-assistant/core/pull/134333 +[#134334]: https://github.com/home-assistant/core/pull/134334 +[#134339]: https://github.com/home-assistant/core/pull/134339 +[#134342]: https://github.com/home-assistant/core/pull/134342 +[#134347]: https://github.com/home-assistant/core/pull/134347 +[#134348]: https://github.com/home-assistant/core/pull/134348 +[#134354]: https://github.com/home-assistant/core/pull/134354 +[#134366]: https://github.com/home-assistant/core/pull/134366 +[#134368]: https://github.com/home-assistant/core/pull/134368 +[#134372]: https://github.com/home-assistant/core/pull/134372 +[#134382]: https://github.com/home-assistant/core/pull/134382 +[#134383]: https://github.com/home-assistant/core/pull/134383 +[#134385]: https://github.com/home-assistant/core/pull/134385 +[#134387]: https://github.com/home-assistant/core/pull/134387 +[#134393]: https://github.com/home-assistant/core/pull/134393 +[#134394]: https://github.com/home-assistant/core/pull/134394 +[#134399]: https://github.com/home-assistant/core/pull/134399 +[#134402]: https://github.com/home-assistant/core/pull/134402 +[#134410]: https://github.com/home-assistant/core/pull/134410 +[#134415]: https://github.com/home-assistant/core/pull/134415 +[#134416]: https://github.com/home-assistant/core/pull/134416 +[#134419]: https://github.com/home-assistant/core/pull/134419 +[#134420]: https://github.com/home-assistant/core/pull/134420 +[#134422]: https://github.com/home-assistant/core/pull/134422 +[#134426]: https://github.com/home-assistant/core/pull/134426 +[#134433]: https://github.com/home-assistant/core/pull/134433 +[#134441]: https://github.com/home-assistant/core/pull/134441 +[#134444]: https://github.com/home-assistant/core/pull/134444 +[#134446]: https://github.com/home-assistant/core/pull/134446 +[#134447]: https://github.com/home-assistant/core/pull/134447 +[#134450]: https://github.com/home-assistant/core/pull/134450 +[#134457]: https://github.com/home-assistant/core/pull/134457 +[#134459]: https://github.com/home-assistant/core/pull/134459 +[#134461]: https://github.com/home-assistant/core/pull/134461 +[#134465]: https://github.com/home-assistant/core/pull/134465 +[#134466]: https://github.com/home-assistant/core/pull/134466 +[#134468]: https://github.com/home-assistant/core/pull/134468 +[#134469]: https://github.com/home-assistant/core/pull/134469 +[#134472]: https://github.com/home-assistant/core/pull/134472 +[#134473]: https://github.com/home-assistant/core/pull/134473 +[#134475]: https://github.com/home-assistant/core/pull/134475 +[#134477]: https://github.com/home-assistant/core/pull/134477 +[#134478]: https://github.com/home-assistant/core/pull/134478 +[#134479]: https://github.com/home-assistant/core/pull/134479 +[#134480]: https://github.com/home-assistant/core/pull/134480 +[#134482]: https://github.com/home-assistant/core/pull/134482 +[#134485]: https://github.com/home-assistant/core/pull/134485 +[#134487]: https://github.com/home-assistant/core/pull/134487 +[#134488]: https://github.com/home-assistant/core/pull/134488 +[#134491]: https://github.com/home-assistant/core/pull/134491 +[#134492]: https://github.com/home-assistant/core/pull/134492 +[#134493]: https://github.com/home-assistant/core/pull/134493 +[#134494]: https://github.com/home-assistant/core/pull/134494 +[#134499]: https://github.com/home-assistant/core/pull/134499 +[#134501]: https://github.com/home-assistant/core/pull/134501 +[#134503]: https://github.com/home-assistant/core/pull/134503 +[#134522]: https://github.com/home-assistant/core/pull/134522 +[#134532]: https://github.com/home-assistant/core/pull/134532 +[#134533]: https://github.com/home-assistant/core/pull/134533 +[#134535]: https://github.com/home-assistant/core/pull/134535 +[#134536]: https://github.com/home-assistant/core/pull/134536 +[#134537]: https://github.com/home-assistant/core/pull/134537 +[#134543]: https://github.com/home-assistant/core/pull/134543 +[#134551]: https://github.com/home-assistant/core/pull/134551 +[#134553]: https://github.com/home-assistant/core/pull/134553 +[#134563]: https://github.com/home-assistant/core/pull/134563 +[#134576]: https://github.com/home-assistant/core/pull/134576 +[#134591]: https://github.com/home-assistant/core/pull/134591 +[#134596]: https://github.com/home-assistant/core/pull/134596 +[#134616]: https://github.com/home-assistant/core/pull/134616 +[#134617]: https://github.com/home-assistant/core/pull/134617 +[#134619]: https://github.com/home-assistant/core/pull/134619 +[#134621]: https://github.com/home-assistant/core/pull/134621 +[#134625]: https://github.com/home-assistant/core/pull/134625 +[#134634]: https://github.com/home-assistant/core/pull/134634 +[#134646]: https://github.com/home-assistant/core/pull/134646 +[#134654]: https://github.com/home-assistant/core/pull/134654 +[#134667]: https://github.com/home-assistant/core/pull/134667 +[#134668]: https://github.com/home-assistant/core/pull/134668 +[#134671]: https://github.com/home-assistant/core/pull/134671 +[#134680]: https://github.com/home-assistant/core/pull/134680 +[#134682]: https://github.com/home-assistant/core/pull/134682 +[#134683]: https://github.com/home-assistant/core/pull/134683 +[#134687]: https://github.com/home-assistant/core/pull/134687 +[#134692]: https://github.com/home-assistant/core/pull/134692 +[#134694]: https://github.com/home-assistant/core/pull/134694 +[#134697]: https://github.com/home-assistant/core/pull/134697 +[#134700]: https://github.com/home-assistant/core/pull/134700 +[#134705]: https://github.com/home-assistant/core/pull/134705 +[#134721]: https://github.com/home-assistant/core/pull/134721 +[#134722]: https://github.com/home-assistant/core/pull/134722 +[#134724]: https://github.com/home-assistant/core/pull/134724 +[#134733]: https://github.com/home-assistant/core/pull/134733 +[#134745]: https://github.com/home-assistant/core/pull/134745 +[#134747]: https://github.com/home-assistant/core/pull/134747 +[#134748]: https://github.com/home-assistant/core/pull/134748 +[#134752]: https://github.com/home-assistant/core/pull/134752 +[#134765]: https://github.com/home-assistant/core/pull/134765 +[#134776]: https://github.com/home-assistant/core/pull/134776 +[#134778]: https://github.com/home-assistant/core/pull/134778 +[#134779]: https://github.com/home-assistant/core/pull/134779 +[#134780]: https://github.com/home-assistant/core/pull/134780 +[#134783]: https://github.com/home-assistant/core/pull/134783 +[#134799]: https://github.com/home-assistant/core/pull/134799 +[#134807]: https://github.com/home-assistant/core/pull/134807 +[#134809]: https://github.com/home-assistant/core/pull/134809 +[#134815]: https://github.com/home-assistant/core/pull/134815 +[#134816]: https://github.com/home-assistant/core/pull/134816 +[#134817]: https://github.com/home-assistant/core/pull/134817 +[#134822]: https://github.com/home-assistant/core/pull/134822 +[#134824]: https://github.com/home-assistant/core/pull/134824 +[#134830]: https://github.com/home-assistant/core/pull/134830 +[#134831]: https://github.com/home-assistant/core/pull/134831 +[#134837]: https://github.com/home-assistant/core/pull/134837 +[#134838]: https://github.com/home-assistant/core/pull/134838 +[#134841]: https://github.com/home-assistant/core/pull/134841 +[#134843]: https://github.com/home-assistant/core/pull/134843 +[#134844]: https://github.com/home-assistant/core/pull/134844 +[#134852]: https://github.com/home-assistant/core/pull/134852 +[#134858]: https://github.com/home-assistant/core/pull/134858 +[#134888]: https://github.com/home-assistant/core/pull/134888 +[#134894]: https://github.com/home-assistant/core/pull/134894 +[#134900]: https://github.com/home-assistant/core/pull/134900 +[#134901]: https://github.com/home-assistant/core/pull/134901 +[#134906]: https://github.com/home-assistant/core/pull/134906 +[#134914]: https://github.com/home-assistant/core/pull/134914 +[#134916]: https://github.com/home-assistant/core/pull/134916 +[#134917]: https://github.com/home-assistant/core/pull/134917 +[#134920]: https://github.com/home-assistant/core/pull/134920 +[#134921]: https://github.com/home-assistant/core/pull/134921 +[#134924]: https://github.com/home-assistant/core/pull/134924 +[#134925]: https://github.com/home-assistant/core/pull/134925 +[#134926]: https://github.com/home-assistant/core/pull/134926 +[#134931]: https://github.com/home-assistant/core/pull/134931 +[#134935]: https://github.com/home-assistant/core/pull/134935 +[#134942]: https://github.com/home-assistant/core/pull/134942 +[#134947]: https://github.com/home-assistant/core/pull/134947 +[#134950]: https://github.com/home-assistant/core/pull/134950 +[#134951]: https://github.com/home-assistant/core/pull/134951 +[#134952]: https://github.com/home-assistant/core/pull/134952 +[#134953]: https://github.com/home-assistant/core/pull/134953 +[#134954]: https://github.com/home-assistant/core/pull/134954 +[#134956]: https://github.com/home-assistant/core/pull/134956 +[#134962]: https://github.com/home-assistant/core/pull/134962 +[#134966]: https://github.com/home-assistant/core/pull/134966 +[#134971]: https://github.com/home-assistant/core/pull/134971 +[#134975]: https://github.com/home-assistant/core/pull/134975 +[#134978]: https://github.com/home-assistant/core/pull/134978 +[#134982]: https://github.com/home-assistant/core/pull/134982 +[#134985]: https://github.com/home-assistant/core/pull/134985 +[#134990]: https://github.com/home-assistant/core/pull/134990 +[#134991]: https://github.com/home-assistant/core/pull/134991 +[#134993]: https://github.com/home-assistant/core/pull/134993 +[#134996]: https://github.com/home-assistant/core/pull/134996 +[#134998]: https://github.com/home-assistant/core/pull/134998 +[#135000]: https://github.com/home-assistant/core/pull/135000 +[#135004]: https://github.com/home-assistant/core/pull/135004 +[#135006]: https://github.com/home-assistant/core/pull/135006 +[#135015]: https://github.com/home-assistant/core/pull/135015 +[#135017]: https://github.com/home-assistant/core/pull/135017 +[#135018]: https://github.com/home-assistant/core/pull/135018 +[#135021]: https://github.com/home-assistant/core/pull/135021 +[#135022]: https://github.com/home-assistant/core/pull/135022 +[#135028]: https://github.com/home-assistant/core/pull/135028 +[#135029]: https://github.com/home-assistant/core/pull/135029 +[#135030]: https://github.com/home-assistant/core/pull/135030 +[#135031]: https://github.com/home-assistant/core/pull/135031 +[#135032]: https://github.com/home-assistant/core/pull/135032 +[#135042]: https://github.com/home-assistant/core/pull/135042 +[#135046]: https://github.com/home-assistant/core/pull/135046 +[#135049]: https://github.com/home-assistant/core/pull/135049 +[#135052]: https://github.com/home-assistant/core/pull/135052 +[#135057]: https://github.com/home-assistant/core/pull/135057 +[#135058]: https://github.com/home-assistant/core/pull/135058 +[#135067]: https://github.com/home-assistant/core/pull/135067 +[#135068]: https://github.com/home-assistant/core/pull/135068 +[#135070]: https://github.com/home-assistant/core/pull/135070 +[#135071]: https://github.com/home-assistant/core/pull/135071 +[#135075]: https://github.com/home-assistant/core/pull/135075 +[#135081]: https://github.com/home-assistant/core/pull/135081 +[#135083]: https://github.com/home-assistant/core/pull/135083 +[#135095]: https://github.com/home-assistant/core/pull/135095 +[#135098]: https://github.com/home-assistant/core/pull/135098 +[#135102]: https://github.com/home-assistant/core/pull/135102 +[#135105]: https://github.com/home-assistant/core/pull/135105 +[#135108]: https://github.com/home-assistant/core/pull/135108 +[#135109]: https://github.com/home-assistant/core/pull/135109 +[#135120]: https://github.com/home-assistant/core/pull/135120 +[#135121]: https://github.com/home-assistant/core/pull/135121 +[#135125]: https://github.com/home-assistant/core/pull/135125 +[#135126]: https://github.com/home-assistant/core/pull/135126 +[#135130]: https://github.com/home-assistant/core/pull/135130 +[#135133]: https://github.com/home-assistant/core/pull/135133 +[#135135]: https://github.com/home-assistant/core/pull/135135 +[#135138]: https://github.com/home-assistant/core/pull/135138 +[#135143]: https://github.com/home-assistant/core/pull/135143 +[#135148]: https://github.com/home-assistant/core/pull/135148 +[#135153]: https://github.com/home-assistant/core/pull/135153 +[#135162]: https://github.com/home-assistant/core/pull/135162 +[#135171]: https://github.com/home-assistant/core/pull/135171 +[#135172]: https://github.com/home-assistant/core/pull/135172 +[#135176]: https://github.com/home-assistant/core/pull/135176 +[#135177]: https://github.com/home-assistant/core/pull/135177 +[#135178]: https://github.com/home-assistant/core/pull/135178 +[#135181]: https://github.com/home-assistant/core/pull/135181 +[#135182]: https://github.com/home-assistant/core/pull/135182 +[#135183]: https://github.com/home-assistant/core/pull/135183 +[#135186]: https://github.com/home-assistant/core/pull/135186 +[#135187]: https://github.com/home-assistant/core/pull/135187 +[#135194]: https://github.com/home-assistant/core/pull/135194 +[#135197]: https://github.com/home-assistant/core/pull/135197 +[#135199]: https://github.com/home-assistant/core/pull/135199 +[#135202]: https://github.com/home-assistant/core/pull/135202 +[#135205]: https://github.com/home-assistant/core/pull/135205 +[#135206]: https://github.com/home-assistant/core/pull/135206 +[#135209]: https://github.com/home-assistant/core/pull/135209 +[#135213]: https://github.com/home-assistant/core/pull/135213 +[#135214]: https://github.com/home-assistant/core/pull/135214 +[#135220]: https://github.com/home-assistant/core/pull/135220 +[#135224]: https://github.com/home-assistant/core/pull/135224 +[#135225]: https://github.com/home-assistant/core/pull/135225 +[#135227]: https://github.com/home-assistant/core/pull/135227 +[#135228]: https://github.com/home-assistant/core/pull/135228 +[#135229]: https://github.com/home-assistant/core/pull/135229 +[#135232]: https://github.com/home-assistant/core/pull/135232 +[#135234]: https://github.com/home-assistant/core/pull/135234 +[#135236]: https://github.com/home-assistant/core/pull/135236 +[#135237]: https://github.com/home-assistant/core/pull/135237 +[#135244]: https://github.com/home-assistant/core/pull/135244 +[#135248]: https://github.com/home-assistant/core/pull/135248 +[#135254]: https://github.com/home-assistant/core/pull/135254 +[#135255]: https://github.com/home-assistant/core/pull/135255 +[#135256]: https://github.com/home-assistant/core/pull/135256 +[#135257]: https://github.com/home-assistant/core/pull/135257 +[#135260]: https://github.com/home-assistant/core/pull/135260 +[#135261]: https://github.com/home-assistant/core/pull/135261 +[#135263]: https://github.com/home-assistant/core/pull/135263 +[#135264]: https://github.com/home-assistant/core/pull/135264 +[#135265]: https://github.com/home-assistant/core/pull/135265 +[#135267]: https://github.com/home-assistant/core/pull/135267 +[#135268]: https://github.com/home-assistant/core/pull/135268 +[#135269]: https://github.com/home-assistant/core/pull/135269 +[#135271]: https://github.com/home-assistant/core/pull/135271 +[#135277]: https://github.com/home-assistant/core/pull/135277 +[#135279]: https://github.com/home-assistant/core/pull/135279 +[#135281]: https://github.com/home-assistant/core/pull/135281 +[#135283]: https://github.com/home-assistant/core/pull/135283 +[#135285]: https://github.com/home-assistant/core/pull/135285 +[#135292]: https://github.com/home-assistant/core/pull/135292 +[#135294]: https://github.com/home-assistant/core/pull/135294 +[#135295]: https://github.com/home-assistant/core/pull/135295 +[#135299]: https://github.com/home-assistant/core/pull/135299 +[#135301]: https://github.com/home-assistant/core/pull/135301 +[#135303]: https://github.com/home-assistant/core/pull/135303 +[#135305]: https://github.com/home-assistant/core/pull/135305 +[#135306]: https://github.com/home-assistant/core/pull/135306 +[#135309]: https://github.com/home-assistant/core/pull/135309 +[#135312]: https://github.com/home-assistant/core/pull/135312 +[#135315]: https://github.com/home-assistant/core/pull/135315 +[#135320]: https://github.com/home-assistant/core/pull/135320 +[#135322]: https://github.com/home-assistant/core/pull/135322 +[#135323]: https://github.com/home-assistant/core/pull/135323 +[#135328]: https://github.com/home-assistant/core/pull/135328 +[#135331]: https://github.com/home-assistant/core/pull/135331 +[#135336]: https://github.com/home-assistant/core/pull/135336 +[#135337]: https://github.com/home-assistant/core/pull/135337 +[#135344]: https://github.com/home-assistant/core/pull/135344 +[#135347]: https://github.com/home-assistant/core/pull/135347 +[#135348]: https://github.com/home-assistant/core/pull/135348 +[#135349]: https://github.com/home-assistant/core/pull/135349 +[#135350]: https://github.com/home-assistant/core/pull/135350 +[#135353]: https://github.com/home-assistant/core/pull/135353 +[#135357]: https://github.com/home-assistant/core/pull/135357 +[#135359]: https://github.com/home-assistant/core/pull/135359 +[#135360]: https://github.com/home-assistant/core/pull/135360 +[#135362]: https://github.com/home-assistant/core/pull/135362 +[#135368]: https://github.com/home-assistant/core/pull/135368 +[#135370]: https://github.com/home-assistant/core/pull/135370 +[#135377]: https://github.com/home-assistant/core/pull/135377 +[#135382]: https://github.com/home-assistant/core/pull/135382 +[#135383]: https://github.com/home-assistant/core/pull/135383 +[#135384]: https://github.com/home-assistant/core/pull/135384 +[#135396]: https://github.com/home-assistant/core/pull/135396 +[#135397]: https://github.com/home-assistant/core/pull/135397 +[#135398]: https://github.com/home-assistant/core/pull/135398 +[#135399]: https://github.com/home-assistant/core/pull/135399 +[#135400]: https://github.com/home-assistant/core/pull/135400 +[#135408]: https://github.com/home-assistant/core/pull/135408 +[#135415]: https://github.com/home-assistant/core/pull/135415 +[#135419]: https://github.com/home-assistant/core/pull/135419 +[#135423]: https://github.com/home-assistant/core/pull/135423 +[#135426]: https://github.com/home-assistant/core/pull/135426 +[#135431]: https://github.com/home-assistant/core/pull/135431 +[#135433]: https://github.com/home-assistant/core/pull/135433 +[#135441]: https://github.com/home-assistant/core/pull/135441 +[#135445]: https://github.com/home-assistant/core/pull/135445 +[#135447]: https://github.com/home-assistant/core/pull/135447 +[#135448]: https://github.com/home-assistant/core/pull/135448 +[#135449]: https://github.com/home-assistant/core/pull/135449 +[#135454]: https://github.com/home-assistant/core/pull/135454 +[#135455]: https://github.com/home-assistant/core/pull/135455 +[#135457]: https://github.com/home-assistant/core/pull/135457 +[#135458]: https://github.com/home-assistant/core/pull/135458 +[#135465]: https://github.com/home-assistant/core/pull/135465 +[#135470]: https://github.com/home-assistant/core/pull/135470 +[#135472]: https://github.com/home-assistant/core/pull/135472 +[#135475]: https://github.com/home-assistant/core/pull/135475 +[#135492]: https://github.com/home-assistant/core/pull/135492 +[#135497]: https://github.com/home-assistant/core/pull/135497 +[#135500]: https://github.com/home-assistant/core/pull/135500 +[#135506]: https://github.com/home-assistant/core/pull/135506 +[#135509]: https://github.com/home-assistant/core/pull/135509 +[#135510]: https://github.com/home-assistant/core/pull/135510 +[#135512]: https://github.com/home-assistant/core/pull/135512 +[#135514]: https://github.com/home-assistant/core/pull/135514 +[#135518]: https://github.com/home-assistant/core/pull/135518 +[#135520]: https://github.com/home-assistant/core/pull/135520 +[#135521]: https://github.com/home-assistant/core/pull/135521 +[#135523]: https://github.com/home-assistant/core/pull/135523 +[#135524]: https://github.com/home-assistant/core/pull/135524 +[#135525]: https://github.com/home-assistant/core/pull/135525 +[#135530]: https://github.com/home-assistant/core/pull/135530 +[#135536]: https://github.com/home-assistant/core/pull/135536 +[#135537]: https://github.com/home-assistant/core/pull/135537 +[#135538]: https://github.com/home-assistant/core/pull/135538 +[#135543]: https://github.com/home-assistant/core/pull/135543 +[#135545]: https://github.com/home-assistant/core/pull/135545 +[#135546]: https://github.com/home-assistant/core/pull/135546 +[#135547]: https://github.com/home-assistant/core/pull/135547 +[#135548]: https://github.com/home-assistant/core/pull/135548 +[#135550]: https://github.com/home-assistant/core/pull/135550 +[#135551]: https://github.com/home-assistant/core/pull/135551 +[#135562]: https://github.com/home-assistant/core/pull/135562 +[#135563]: https://github.com/home-assistant/core/pull/135563 +[#135564]: https://github.com/home-assistant/core/pull/135564 +[#135571]: https://github.com/home-assistant/core/pull/135571 +[#135574]: https://github.com/home-assistant/core/pull/135574 +[#135575]: https://github.com/home-assistant/core/pull/135575 +[#135576]: https://github.com/home-assistant/core/pull/135576 +[#135577]: https://github.com/home-assistant/core/pull/135577 +[#135578]: https://github.com/home-assistant/core/pull/135578 +[#135579]: https://github.com/home-assistant/core/pull/135579 +[#135581]: https://github.com/home-assistant/core/pull/135581 +[#135582]: https://github.com/home-assistant/core/pull/135582 +[#135583]: https://github.com/home-assistant/core/pull/135583 +[#135585]: https://github.com/home-assistant/core/pull/135585 +[#135586]: https://github.com/home-assistant/core/pull/135586 +[#135588]: https://github.com/home-assistant/core/pull/135588 +[#135589]: https://github.com/home-assistant/core/pull/135589 +[#135591]: https://github.com/home-assistant/core/pull/135591 +[#135595]: https://github.com/home-assistant/core/pull/135595 +[#135601]: https://github.com/home-assistant/core/pull/135601 +[#135603]: https://github.com/home-assistant/core/pull/135603 +[#135606]: https://github.com/home-assistant/core/pull/135606 +[#135611]: https://github.com/home-assistant/core/pull/135611 +[#135612]: https://github.com/home-assistant/core/pull/135612 +[#135614]: https://github.com/home-assistant/core/pull/135614 +[#135615]: https://github.com/home-assistant/core/pull/135615 +[#135618]: https://github.com/home-assistant/core/pull/135618 +[#135620]: https://github.com/home-assistant/core/pull/135620 +[#135622]: https://github.com/home-assistant/core/pull/135622 +[#135625]: https://github.com/home-assistant/core/pull/135625 +[#135626]: https://github.com/home-assistant/core/pull/135626 +[#135628]: https://github.com/home-assistant/core/pull/135628 +[#135631]: https://github.com/home-assistant/core/pull/135631 +[#135633]: https://github.com/home-assistant/core/pull/135633 +[#135635]: https://github.com/home-assistant/core/pull/135635 +[#135636]: https://github.com/home-assistant/core/pull/135636 +[#135638]: https://github.com/home-assistant/core/pull/135638 +[#135645]: https://github.com/home-assistant/core/pull/135645 +[#135647]: https://github.com/home-assistant/core/pull/135647 +[#135649]: https://github.com/home-assistant/core/pull/135649 +[#135650]: https://github.com/home-assistant/core/pull/135650 +[#135653]: https://github.com/home-assistant/core/pull/135653 +[#135654]: https://github.com/home-assistant/core/pull/135654 +[#135658]: https://github.com/home-assistant/core/pull/135658 +[#135659]: https://github.com/home-assistant/core/pull/135659 +[#135660]: https://github.com/home-assistant/core/pull/135660 +[#135661]: https://github.com/home-assistant/core/pull/135661 +[#135662]: https://github.com/home-assistant/core/pull/135662 +[#135663]: https://github.com/home-assistant/core/pull/135663 +[#135667]: https://github.com/home-assistant/core/pull/135667 +[#135670]: https://github.com/home-assistant/core/pull/135670 +[#135672]: https://github.com/home-assistant/core/pull/135672 +[#135674]: https://github.com/home-assistant/core/pull/135674 +[#135676]: https://github.com/home-assistant/core/pull/135676 +[#135680]: https://github.com/home-assistant/core/pull/135680 +[#135681]: https://github.com/home-assistant/core/pull/135681 +[#135682]: https://github.com/home-assistant/core/pull/135682 +[#135685]: https://github.com/home-assistant/core/pull/135685 +[#135687]: https://github.com/home-assistant/core/pull/135687 +[#135688]: https://github.com/home-assistant/core/pull/135688 +[#135689]: https://github.com/home-assistant/core/pull/135689 +[#135690]: https://github.com/home-assistant/core/pull/135690 +[#135691]: https://github.com/home-assistant/core/pull/135691 +[#135692]: https://github.com/home-assistant/core/pull/135692 +[#135693]: https://github.com/home-assistant/core/pull/135693 +[#135694]: https://github.com/home-assistant/core/pull/135694 +[#135695]: https://github.com/home-assistant/core/pull/135695 +[#135696]: https://github.com/home-assistant/core/pull/135696 +[#135697]: https://github.com/home-assistant/core/pull/135697 +[#135698]: https://github.com/home-assistant/core/pull/135698 +[#135699]: https://github.com/home-assistant/core/pull/135699 +[#135700]: https://github.com/home-assistant/core/pull/135700 +[#135702]: https://github.com/home-assistant/core/pull/135702 +[#135703]: https://github.com/home-assistant/core/pull/135703 +[#135704]: https://github.com/home-assistant/core/pull/135704 +[#135705]: https://github.com/home-assistant/core/pull/135705 +[#135707]: https://github.com/home-assistant/core/pull/135707 +[#135708]: https://github.com/home-assistant/core/pull/135708 +[#135709]: https://github.com/home-assistant/core/pull/135709 +[#135711]: https://github.com/home-assistant/core/pull/135711 +[#135712]: https://github.com/home-assistant/core/pull/135712 +[#135714]: https://github.com/home-assistant/core/pull/135714 +[#135715]: https://github.com/home-assistant/core/pull/135715 +[#135716]: https://github.com/home-assistant/core/pull/135716 +[#135718]: https://github.com/home-assistant/core/pull/135718 +[#135719]: https://github.com/home-assistant/core/pull/135719 +[#135720]: https://github.com/home-assistant/core/pull/135720 +[#135721]: https://github.com/home-assistant/core/pull/135721 +[#135722]: https://github.com/home-assistant/core/pull/135722 +[#135723]: https://github.com/home-assistant/core/pull/135723 +[#135724]: https://github.com/home-assistant/core/pull/135724 +[#135725]: https://github.com/home-assistant/core/pull/135725 +[#135726]: https://github.com/home-assistant/core/pull/135726 +[#135727]: https://github.com/home-assistant/core/pull/135727 +[#135728]: https://github.com/home-assistant/core/pull/135728 +[#135729]: https://github.com/home-assistant/core/pull/135729 +[#135733]: https://github.com/home-assistant/core/pull/135733 +[#135734]: https://github.com/home-assistant/core/pull/135734 +[#135743]: https://github.com/home-assistant/core/pull/135743 +[#135746]: https://github.com/home-assistant/core/pull/135746 +[#135747]: https://github.com/home-assistant/core/pull/135747 +[#135749]: https://github.com/home-assistant/core/pull/135749 +[#135750]: https://github.com/home-assistant/core/pull/135750 +[#135751]: https://github.com/home-assistant/core/pull/135751 +[#135752]: https://github.com/home-assistant/core/pull/135752 +[#135757]: https://github.com/home-assistant/core/pull/135757 +[#135760]: https://github.com/home-assistant/core/pull/135760 +[#135762]: https://github.com/home-assistant/core/pull/135762 +[#135765]: https://github.com/home-assistant/core/pull/135765 +[#135767]: https://github.com/home-assistant/core/pull/135767 +[#135770]: https://github.com/home-assistant/core/pull/135770 +[#135773]: https://github.com/home-assistant/core/pull/135773 +[#135777]: https://github.com/home-assistant/core/pull/135777 +[#135778]: https://github.com/home-assistant/core/pull/135778 +[#135780]: https://github.com/home-assistant/core/pull/135780 +[#135781]: https://github.com/home-assistant/core/pull/135781 +[#135784]: https://github.com/home-assistant/core/pull/135784 +[#135786]: https://github.com/home-assistant/core/pull/135786 +[#135787]: https://github.com/home-assistant/core/pull/135787 +[#135788]: https://github.com/home-assistant/core/pull/135788 +[#135792]: https://github.com/home-assistant/core/pull/135792 +[#135795]: https://github.com/home-assistant/core/pull/135795 +[#135797]: https://github.com/home-assistant/core/pull/135797 +[#135798]: https://github.com/home-assistant/core/pull/135798 +[#135799]: https://github.com/home-assistant/core/pull/135799 +[#135800]: https://github.com/home-assistant/core/pull/135800 +[#135801]: https://github.com/home-assistant/core/pull/135801 +[#135802]: https://github.com/home-assistant/core/pull/135802 +[#135804]: https://github.com/home-assistant/core/pull/135804 +[#135805]: https://github.com/home-assistant/core/pull/135805 +[#135806]: https://github.com/home-assistant/core/pull/135806 +[#135807]: https://github.com/home-assistant/core/pull/135807 +[#135808]: https://github.com/home-assistant/core/pull/135808 +[#135809]: https://github.com/home-assistant/core/pull/135809 +[#135812]: https://github.com/home-assistant/core/pull/135812 +[#135815]: https://github.com/home-assistant/core/pull/135815 +[#135817]: https://github.com/home-assistant/core/pull/135817 +[#135818]: https://github.com/home-assistant/core/pull/135818 +[#135822]: https://github.com/home-assistant/core/pull/135822 +[#135825]: https://github.com/home-assistant/core/pull/135825 +[#135830]: https://github.com/home-assistant/core/pull/135830 +[#135832]: https://github.com/home-assistant/core/pull/135832 +[#135833]: https://github.com/home-assistant/core/pull/135833 +[#135835]: https://github.com/home-assistant/core/pull/135835 +[#135836]: https://github.com/home-assistant/core/pull/135836 +[#135838]: https://github.com/home-assistant/core/pull/135838 +[#135842]: https://github.com/home-assistant/core/pull/135842 +[#135846]: https://github.com/home-assistant/core/pull/135846 +[#135847]: https://github.com/home-assistant/core/pull/135847 +[#135852]: https://github.com/home-assistant/core/pull/135852 +[#135856]: https://github.com/home-assistant/core/pull/135856 +[#135858]: https://github.com/home-assistant/core/pull/135858 +[#135861]: https://github.com/home-assistant/core/pull/135861 +[#135869]: https://github.com/home-assistant/core/pull/135869 +[#135871]: https://github.com/home-assistant/core/pull/135871 +[#135872]: https://github.com/home-assistant/core/pull/135872 +[#135874]: https://github.com/home-assistant/core/pull/135874 +[#135875]: https://github.com/home-assistant/core/pull/135875 +[#135877]: https://github.com/home-assistant/core/pull/135877 +[#135878]: https://github.com/home-assistant/core/pull/135878 +[#135879]: https://github.com/home-assistant/core/pull/135879 +[#135882]: https://github.com/home-assistant/core/pull/135882 +[#135883]: https://github.com/home-assistant/core/pull/135883 +[#135886]: https://github.com/home-assistant/core/pull/135886 +[#135887]: https://github.com/home-assistant/core/pull/135887 +[#135889]: https://github.com/home-assistant/core/pull/135889 +[#135891]: https://github.com/home-assistant/core/pull/135891 +[#135896]: https://github.com/home-assistant/core/pull/135896 +[#135899]: https://github.com/home-assistant/core/pull/135899 +[#135901]: https://github.com/home-assistant/core/pull/135901 +[#135902]: https://github.com/home-assistant/core/pull/135902 +[#135903]: https://github.com/home-assistant/core/pull/135903 +[#135904]: https://github.com/home-assistant/core/pull/135904 +[#135905]: https://github.com/home-assistant/core/pull/135905 +[#135909]: https://github.com/home-assistant/core/pull/135909 +[#135910]: https://github.com/home-assistant/core/pull/135910 +[#135911]: https://github.com/home-assistant/core/pull/135911 +[#135913]: https://github.com/home-assistant/core/pull/135913 +[#135915]: https://github.com/home-assistant/core/pull/135915 +[#135917]: https://github.com/home-assistant/core/pull/135917 +[#135918]: https://github.com/home-assistant/core/pull/135918 +[#135919]: https://github.com/home-assistant/core/pull/135919 +[#135921]: https://github.com/home-assistant/core/pull/135921 +[#135927]: https://github.com/home-assistant/core/pull/135927 +[#135928]: https://github.com/home-assistant/core/pull/135928 +[#135929]: https://github.com/home-assistant/core/pull/135929 +[#135930]: https://github.com/home-assistant/core/pull/135930 +[#135932]: https://github.com/home-assistant/core/pull/135932 +[#135939]: https://github.com/home-assistant/core/pull/135939 +[#135940]: https://github.com/home-assistant/core/pull/135940 +[#135948]: https://github.com/home-assistant/core/pull/135948 +[#135949]: https://github.com/home-assistant/core/pull/135949 +[#135950]: https://github.com/home-assistant/core/pull/135950 +[#135953]: https://github.com/home-assistant/core/pull/135953 +[#135954]: https://github.com/home-assistant/core/pull/135954 +[#135957]: https://github.com/home-assistant/core/pull/135957 +[#135961]: https://github.com/home-assistant/core/pull/135961 +[#135962]: https://github.com/home-assistant/core/pull/135962 +[#135963]: https://github.com/home-assistant/core/pull/135963 +[#135974]: https://github.com/home-assistant/core/pull/135974 +[#135975]: https://github.com/home-assistant/core/pull/135975 +[#135978]: https://github.com/home-assistant/core/pull/135978 +[#135981]: https://github.com/home-assistant/core/pull/135981 +[#135982]: https://github.com/home-assistant/core/pull/135982 +[#135985]: https://github.com/home-assistant/core/pull/135985 +[#135986]: https://github.com/home-assistant/core/pull/135986 +[#135988]: https://github.com/home-assistant/core/pull/135988 +[#135990]: https://github.com/home-assistant/core/pull/135990 +[#135991]: https://github.com/home-assistant/core/pull/135991 +[#135992]: https://github.com/home-assistant/core/pull/135992 +[#135998]: https://github.com/home-assistant/core/pull/135998 +[#136000]: https://github.com/home-assistant/core/pull/136000 +[#136004]: https://github.com/home-assistant/core/pull/136004 +[#136006]: https://github.com/home-assistant/core/pull/136006 +[#136009]: https://github.com/home-assistant/core/pull/136009 +[#136012]: https://github.com/home-assistant/core/pull/136012 +[#136016]: https://github.com/home-assistant/core/pull/136016 +[#136020]: https://github.com/home-assistant/core/pull/136020 +[#136027]: https://github.com/home-assistant/core/pull/136027 +[#136037]: https://github.com/home-assistant/core/pull/136037 +[#136038]: https://github.com/home-assistant/core/pull/136038 +[#136040]: https://github.com/home-assistant/core/pull/136040 +[#136041]: https://github.com/home-assistant/core/pull/136041 +[#136042]: https://github.com/home-assistant/core/pull/136042 +[#136045]: https://github.com/home-assistant/core/pull/136045 +[#136048]: https://github.com/home-assistant/core/pull/136048 +[#136049]: https://github.com/home-assistant/core/pull/136049 +[#136051]: https://github.com/home-assistant/core/pull/136051 +[#136053]: https://github.com/home-assistant/core/pull/136053 +[#136057]: https://github.com/home-assistant/core/pull/136057 +[#136058]: https://github.com/home-assistant/core/pull/136058 +[#136062]: https://github.com/home-assistant/core/pull/136062 +[#136063]: https://github.com/home-assistant/core/pull/136063 +[#136064]: https://github.com/home-assistant/core/pull/136064 +[#136065]: https://github.com/home-assistant/core/pull/136065 +[#136067]: https://github.com/home-assistant/core/pull/136067 +[#136071]: https://github.com/home-assistant/core/pull/136071 +[#136078]: https://github.com/home-assistant/core/pull/136078 +[#136079]: https://github.com/home-assistant/core/pull/136079 +[#136082]: https://github.com/home-assistant/core/pull/136082 +[#136084]: https://github.com/home-assistant/core/pull/136084 +[#136085]: https://github.com/home-assistant/core/pull/136085 +[#136086]: https://github.com/home-assistant/core/pull/136086 +[#136088]: https://github.com/home-assistant/core/pull/136088 +[#136089]: https://github.com/home-assistant/core/pull/136089 +[#136090]: https://github.com/home-assistant/core/pull/136090 +[#136094]: https://github.com/home-assistant/core/pull/136094 +[#136096]: https://github.com/home-assistant/core/pull/136096 +[#136097]: https://github.com/home-assistant/core/pull/136097 +[#136099]: https://github.com/home-assistant/core/pull/136099 +[#136102]: https://github.com/home-assistant/core/pull/136102 +[#136104]: https://github.com/home-assistant/core/pull/136104 +[#136105]: https://github.com/home-assistant/core/pull/136105 +[#136106]: https://github.com/home-assistant/core/pull/136106 +[#136108]: https://github.com/home-assistant/core/pull/136108 +[#136110]: https://github.com/home-assistant/core/pull/136110 +[#136113]: https://github.com/home-assistant/core/pull/136113 +[#136114]: https://github.com/home-assistant/core/pull/136114 +[#136120]: https://github.com/home-assistant/core/pull/136120 +[#136123]: https://github.com/home-assistant/core/pull/136123 +[#136133]: https://github.com/home-assistant/core/pull/136133 +[#136134]: https://github.com/home-assistant/core/pull/136134 +[#136136]: https://github.com/home-assistant/core/pull/136136 +[#136140]: https://github.com/home-assistant/core/pull/136140 +[#136141]: https://github.com/home-assistant/core/pull/136141 +[#136142]: https://github.com/home-assistant/core/pull/136142 +[#136145]: https://github.com/home-assistant/core/pull/136145 +[#136146]: https://github.com/home-assistant/core/pull/136146 +[#136147]: https://github.com/home-assistant/core/pull/136147 +[#136148]: https://github.com/home-assistant/core/pull/136148 +[#136149]: https://github.com/home-assistant/core/pull/136149 +[#136150]: https://github.com/home-assistant/core/pull/136150 +[#136152]: https://github.com/home-assistant/core/pull/136152 +[#136153]: https://github.com/home-assistant/core/pull/136153 +[#136154]: https://github.com/home-assistant/core/pull/136154 +[#136155]: https://github.com/home-assistant/core/pull/136155 +[#136157]: https://github.com/home-assistant/core/pull/136157 +[#136159]: https://github.com/home-assistant/core/pull/136159 +[#136160]: https://github.com/home-assistant/core/pull/136160 +[#136164]: https://github.com/home-assistant/core/pull/136164 +[#136166]: https://github.com/home-assistant/core/pull/136166 +[#136169]: https://github.com/home-assistant/core/pull/136169 +[#136170]: https://github.com/home-assistant/core/pull/136170 +[#136172]: https://github.com/home-assistant/core/pull/136172 +[#136174]: https://github.com/home-assistant/core/pull/136174 +[#136177]: https://github.com/home-assistant/core/pull/136177 +[#136178]: https://github.com/home-assistant/core/pull/136178 +[#136180]: https://github.com/home-assistant/core/pull/136180 +[#136188]: https://github.com/home-assistant/core/pull/136188 +[#136190]: https://github.com/home-assistant/core/pull/136190 +[#136191]: https://github.com/home-assistant/core/pull/136191 +[#136194]: https://github.com/home-assistant/core/pull/136194 +[#136195]: https://github.com/home-assistant/core/pull/136195 +[#136196]: https://github.com/home-assistant/core/pull/136196 +[#136197]: https://github.com/home-assistant/core/pull/136197 +[#136198]: https://github.com/home-assistant/core/pull/136198 +[#136199]: https://github.com/home-assistant/core/pull/136199 +[#136200]: https://github.com/home-assistant/core/pull/136200 +[#136201]: https://github.com/home-assistant/core/pull/136201 +[#136202]: https://github.com/home-assistant/core/pull/136202 +[#136203]: https://github.com/home-assistant/core/pull/136203 +[#136205]: https://github.com/home-assistant/core/pull/136205 +[#136206]: https://github.com/home-assistant/core/pull/136206 +[#136210]: https://github.com/home-assistant/core/pull/136210 +[#136211]: https://github.com/home-assistant/core/pull/136211 +[#136212]: https://github.com/home-assistant/core/pull/136212 +[#136213]: https://github.com/home-assistant/core/pull/136213 +[#136214]: https://github.com/home-assistant/core/pull/136214 +[#136215]: https://github.com/home-assistant/core/pull/136215 +[#136220]: https://github.com/home-assistant/core/pull/136220 +[#136221]: https://github.com/home-assistant/core/pull/136221 +[#136225]: https://github.com/home-assistant/core/pull/136225 +[#136228]: https://github.com/home-assistant/core/pull/136228 +[#136230]: https://github.com/home-assistant/core/pull/136230 +[#136231]: https://github.com/home-assistant/core/pull/136231 +[#136233]: https://github.com/home-assistant/core/pull/136233 +[#136235]: https://github.com/home-assistant/core/pull/136235 +[#136241]: https://github.com/home-assistant/core/pull/136241 +[#136243]: https://github.com/home-assistant/core/pull/136243 +[#136247]: https://github.com/home-assistant/core/pull/136247 +[#136248]: https://github.com/home-assistant/core/pull/136248 +[#136251]: https://github.com/home-assistant/core/pull/136251 +[#136253]: https://github.com/home-assistant/core/pull/136253 +[#136258]: https://github.com/home-assistant/core/pull/136258 +[#136259]: https://github.com/home-assistant/core/pull/136259 +[#136260]: https://github.com/home-assistant/core/pull/136260 +[#136261]: https://github.com/home-assistant/core/pull/136261 +[#136265]: https://github.com/home-assistant/core/pull/136265 +[#136267]: https://github.com/home-assistant/core/pull/136267 +[#136270]: https://github.com/home-assistant/core/pull/136270 +[#136271]: https://github.com/home-assistant/core/pull/136271 +[#136277]: https://github.com/home-assistant/core/pull/136277 +[#136279]: https://github.com/home-assistant/core/pull/136279 +[#136280]: https://github.com/home-assistant/core/pull/136280 +[#136281]: https://github.com/home-assistant/core/pull/136281 +[#136282]: https://github.com/home-assistant/core/pull/136282 +[#136283]: https://github.com/home-assistant/core/pull/136283 +[#136285]: https://github.com/home-assistant/core/pull/136285 +[#136287]: https://github.com/home-assistant/core/pull/136287 +[#136289]: https://github.com/home-assistant/core/pull/136289 +[#136290]: https://github.com/home-assistant/core/pull/136290 +[#136291]: https://github.com/home-assistant/core/pull/136291 +[#136292]: https://github.com/home-assistant/core/pull/136292 +[#136294]: https://github.com/home-assistant/core/pull/136294 +[#136299]: https://github.com/home-assistant/core/pull/136299 +[#136300]: https://github.com/home-assistant/core/pull/136300 +[#136301]: https://github.com/home-assistant/core/pull/136301 +[#136302]: https://github.com/home-assistant/core/pull/136302 +[#136303]: https://github.com/home-assistant/core/pull/136303 +[#136304]: https://github.com/home-assistant/core/pull/136304 +[#136306]: https://github.com/home-assistant/core/pull/136306 +[#136307]: https://github.com/home-assistant/core/pull/136307 +[#136308]: https://github.com/home-assistant/core/pull/136308 +[#136309]: https://github.com/home-assistant/core/pull/136309 +[#136312]: https://github.com/home-assistant/core/pull/136312 +[#136313]: https://github.com/home-assistant/core/pull/136313 +[#136314]: https://github.com/home-assistant/core/pull/136314 +[#136316]: https://github.com/home-assistant/core/pull/136316 +[#136317]: https://github.com/home-assistant/core/pull/136317 +[#136318]: https://github.com/home-assistant/core/pull/136318 +[#136322]: https://github.com/home-assistant/core/pull/136322 +[#136323]: https://github.com/home-assistant/core/pull/136323 +[#136324]: https://github.com/home-assistant/core/pull/136324 +[#136327]: https://github.com/home-assistant/core/pull/136327 +[#136335]: https://github.com/home-assistant/core/pull/136335 +[#136336]: https://github.com/home-assistant/core/pull/136336 +[#136338]: https://github.com/home-assistant/core/pull/136338 +[#136343]: https://github.com/home-assistant/core/pull/136343 +[#136349]: https://github.com/home-assistant/core/pull/136349 +[#136354]: https://github.com/home-assistant/core/pull/136354 +[#136356]: https://github.com/home-assistant/core/pull/136356 +[#136357]: https://github.com/home-assistant/core/pull/136357 +[#136358]: https://github.com/home-assistant/core/pull/136358 +[#136360]: https://github.com/home-assistant/core/pull/136360 +[#136363]: https://github.com/home-assistant/core/pull/136363 +[#136365]: https://github.com/home-assistant/core/pull/136365 +[#136374]: https://github.com/home-assistant/core/pull/136374 +[#136376]: https://github.com/home-assistant/core/pull/136376 +[#136377]: https://github.com/home-assistant/core/pull/136377 +[#136378]: https://github.com/home-assistant/core/pull/136378 +[#136379]: https://github.com/home-assistant/core/pull/136379 +[#136380]: https://github.com/home-assistant/core/pull/136380 +[#136381]: https://github.com/home-assistant/core/pull/136381 +[#136382]: https://github.com/home-assistant/core/pull/136382 +[#136384]: https://github.com/home-assistant/core/pull/136384 +[#136386]: https://github.com/home-assistant/core/pull/136386 +[#136389]: https://github.com/home-assistant/core/pull/136389 +[#136397]: https://github.com/home-assistant/core/pull/136397 +[#136398]: https://github.com/home-assistant/core/pull/136398 +[#136401]: https://github.com/home-assistant/core/pull/136401 +[#136402]: https://github.com/home-assistant/core/pull/136402 +[#136403]: https://github.com/home-assistant/core/pull/136403 +[#136405]: https://github.com/home-assistant/core/pull/136405 +[#136406]: https://github.com/home-assistant/core/pull/136406 +[#136409]: https://github.com/home-assistant/core/pull/136409 +[#136410]: https://github.com/home-assistant/core/pull/136410 +[#136411]: https://github.com/home-assistant/core/pull/136411 +[#136412]: https://github.com/home-assistant/core/pull/136412 +[#136413]: https://github.com/home-assistant/core/pull/136413 +[#136414]: https://github.com/home-assistant/core/pull/136414 +[#136416]: https://github.com/home-assistant/core/pull/136416 +[#136418]: https://github.com/home-assistant/core/pull/136418 +[#136421]: https://github.com/home-assistant/core/pull/136421 +[#136422]: https://github.com/home-assistant/core/pull/136422 +[#136424]: https://github.com/home-assistant/core/pull/136424 +[#136426]: https://github.com/home-assistant/core/pull/136426 +[#136430]: https://github.com/home-assistant/core/pull/136430 +[#136432]: https://github.com/home-assistant/core/pull/136432 +[#136433]: https://github.com/home-assistant/core/pull/136433 +[#136434]: https://github.com/home-assistant/core/pull/136434 +[#136435]: https://github.com/home-assistant/core/pull/136435 +[#136437]: https://github.com/home-assistant/core/pull/136437 +[#136438]: https://github.com/home-assistant/core/pull/136438 +[#136440]: https://github.com/home-assistant/core/pull/136440 +[#136441]: https://github.com/home-assistant/core/pull/136441 +[#136442]: https://github.com/home-assistant/core/pull/136442 +[#136443]: https://github.com/home-assistant/core/pull/136443 +[#136444]: https://github.com/home-assistant/core/pull/136444 +[#136445]: https://github.com/home-assistant/core/pull/136445 +[#136446]: https://github.com/home-assistant/core/pull/136446 +[#136448]: https://github.com/home-assistant/core/pull/136448 +[#136453]: https://github.com/home-assistant/core/pull/136453 +[#136456]: https://github.com/home-assistant/core/pull/136456 +[#136457]: https://github.com/home-assistant/core/pull/136457 +[#136461]: https://github.com/home-assistant/core/pull/136461 +[#136462]: https://github.com/home-assistant/core/pull/136462 +[#136464]: https://github.com/home-assistant/core/pull/136464 +[#136465]: https://github.com/home-assistant/core/pull/136465 +[#136467]: https://github.com/home-assistant/core/pull/136467 +[#136470]: https://github.com/home-assistant/core/pull/136470 +[#136475]: https://github.com/home-assistant/core/pull/136475 +[#136481]: https://github.com/home-assistant/core/pull/136481 +[#136483]: https://github.com/home-assistant/core/pull/136483 +[#136484]: https://github.com/home-assistant/core/pull/136484 +[#136485]: https://github.com/home-assistant/core/pull/136485 +[#136486]: https://github.com/home-assistant/core/pull/136486 +[#136487]: https://github.com/home-assistant/core/pull/136487 +[#136488]: https://github.com/home-assistant/core/pull/136488 +[#136489]: https://github.com/home-assistant/core/pull/136489 +[#136490]: https://github.com/home-assistant/core/pull/136490 +[#136491]: https://github.com/home-assistant/core/pull/136491 +[#136492]: https://github.com/home-assistant/core/pull/136492 +[#136493]: https://github.com/home-assistant/core/pull/136493 +[#136496]: https://github.com/home-assistant/core/pull/136496 +[#136497]: https://github.com/home-assistant/core/pull/136497 +[#136504]: https://github.com/home-assistant/core/pull/136504 +[#136505]: https://github.com/home-assistant/core/pull/136505 +[#136506]: https://github.com/home-assistant/core/pull/136506 +[#136510]: https://github.com/home-assistant/core/pull/136510 +[#136511]: https://github.com/home-assistant/core/pull/136511 +[#136514]: https://github.com/home-assistant/core/pull/136514 +[#136516]: https://github.com/home-assistant/core/pull/136516 +[#136521]: https://github.com/home-assistant/core/pull/136521 +[#136522]: https://github.com/home-assistant/core/pull/136522 +[#136523]: https://github.com/home-assistant/core/pull/136523 +[#136524]: https://github.com/home-assistant/core/pull/136524 +[#136528]: https://github.com/home-assistant/core/pull/136528 +[#136529]: https://github.com/home-assistant/core/pull/136529 +[#136533]: https://github.com/home-assistant/core/pull/136533 +[#136536]: https://github.com/home-assistant/core/pull/136536 +[#136538]: https://github.com/home-assistant/core/pull/136538 +[#136539]: https://github.com/home-assistant/core/pull/136539 +[#136544]: https://github.com/home-assistant/core/pull/136544 +[#136546]: https://github.com/home-assistant/core/pull/136546 +[#136547]: https://github.com/home-assistant/core/pull/136547 +[#136549]: https://github.com/home-assistant/core/pull/136549 +[#136555]: https://github.com/home-assistant/core/pull/136555 +[#136561]: https://github.com/home-assistant/core/pull/136561 +[#136562]: https://github.com/home-assistant/core/pull/136562 +[#136563]: https://github.com/home-assistant/core/pull/136563 +[#136566]: https://github.com/home-assistant/core/pull/136566 +[#136567]: https://github.com/home-assistant/core/pull/136567 +[#136569]: https://github.com/home-assistant/core/pull/136569 +[#136570]: https://github.com/home-assistant/core/pull/136570 +[#136572]: https://github.com/home-assistant/core/pull/136572 +[#136573]: https://github.com/home-assistant/core/pull/136573 +[#136576]: https://github.com/home-assistant/core/pull/136576 +[#136577]: https://github.com/home-assistant/core/pull/136577 +[#136578]: https://github.com/home-assistant/core/pull/136578 +[#136580]: https://github.com/home-assistant/core/pull/136580 +[#136581]: https://github.com/home-assistant/core/pull/136581 +[#136583]: https://github.com/home-assistant/core/pull/136583 +[#136585]: https://github.com/home-assistant/core/pull/136585 +[#136586]: https://github.com/home-assistant/core/pull/136586 +[#136587]: https://github.com/home-assistant/core/pull/136587 +[#136589]: https://github.com/home-assistant/core/pull/136589 +[#136590]: https://github.com/home-assistant/core/pull/136590 +[#136591]: https://github.com/home-assistant/core/pull/136591 +[#136593]: https://github.com/home-assistant/core/pull/136593 +[#136596]: https://github.com/home-assistant/core/pull/136596 +[#136601]: https://github.com/home-assistant/core/pull/136601 +[#136602]: https://github.com/home-assistant/core/pull/136602 +[#136604]: https://github.com/home-assistant/core/pull/136604 +[#136609]: https://github.com/home-assistant/core/pull/136609 +[#136611]: https://github.com/home-assistant/core/pull/136611 +[#136612]: https://github.com/home-assistant/core/pull/136612 +[#136613]: https://github.com/home-assistant/core/pull/136613 +[#136614]: https://github.com/home-assistant/core/pull/136614 +[#136617]: https://github.com/home-assistant/core/pull/136617 +[#136618]: https://github.com/home-assistant/core/pull/136618 +[#136619]: https://github.com/home-assistant/core/pull/136619 +[#136621]: https://github.com/home-assistant/core/pull/136621 +[#136622]: https://github.com/home-assistant/core/pull/136622 +[#136625]: https://github.com/home-assistant/core/pull/136625 +[#136626]: https://github.com/home-assistant/core/pull/136626 +[#136627]: https://github.com/home-assistant/core/pull/136627 +[#136629]: https://github.com/home-assistant/core/pull/136629 +[#136631]: https://github.com/home-assistant/core/pull/136631 +[#136632]: https://github.com/home-assistant/core/pull/136632 +[#136633]: https://github.com/home-assistant/core/pull/136633 +[#136635]: https://github.com/home-assistant/core/pull/136635 +[#136639]: https://github.com/home-assistant/core/pull/136639 +[#136642]: https://github.com/home-assistant/core/pull/136642 +[#136643]: https://github.com/home-assistant/core/pull/136643 +[#136644]: https://github.com/home-assistant/core/pull/136644 +[#136645]: https://github.com/home-assistant/core/pull/136645 +[#136648]: https://github.com/home-assistant/core/pull/136648 +[#136649]: https://github.com/home-assistant/core/pull/136649 +[#136651]: https://github.com/home-assistant/core/pull/136651 +[#136652]: https://github.com/home-assistant/core/pull/136652 +[#136657]: https://github.com/home-assistant/core/pull/136657 +[#136658]: https://github.com/home-assistant/core/pull/136658 +[#136661]: https://github.com/home-assistant/core/pull/136661 +[#136663]: https://github.com/home-assistant/core/pull/136663 +[#136666]: https://github.com/home-assistant/core/pull/136666 +[#136668]: https://github.com/home-assistant/core/pull/136668 +[#136676]: https://github.com/home-assistant/core/pull/136676 +[#136679]: https://github.com/home-assistant/core/pull/136679 +[#136680]: https://github.com/home-assistant/core/pull/136680 +[#136684]: https://github.com/home-assistant/core/pull/136684 +[#136685]: https://github.com/home-assistant/core/pull/136685 +[#136686]: https://github.com/home-assistant/core/pull/136686 +[#136688]: https://github.com/home-assistant/core/pull/136688 +[#136689]: https://github.com/home-assistant/core/pull/136689 +[#136690]: https://github.com/home-assistant/core/pull/136690 +[#136691]: https://github.com/home-assistant/core/pull/136691 +[#136693]: https://github.com/home-assistant/core/pull/136693 +[#136694]: https://github.com/home-assistant/core/pull/136694 +[#136696]: https://github.com/home-assistant/core/pull/136696 +[#136697]: https://github.com/home-assistant/core/pull/136697 +[#136699]: https://github.com/home-assistant/core/pull/136699 +[#136701]: https://github.com/home-assistant/core/pull/136701 +[#136702]: https://github.com/home-assistant/core/pull/136702 +[#136703]: https://github.com/home-assistant/core/pull/136703 +[#136704]: https://github.com/home-assistant/core/pull/136704 +[#136705]: https://github.com/home-assistant/core/pull/136705 +[#136706]: https://github.com/home-assistant/core/pull/136706 +[#136707]: https://github.com/home-assistant/core/pull/136707 +[#136708]: https://github.com/home-assistant/core/pull/136708 +[#136709]: https://github.com/home-assistant/core/pull/136709 +[#136712]: https://github.com/home-assistant/core/pull/136712 +[#136717]: https://github.com/home-assistant/core/pull/136717 +[#136718]: https://github.com/home-assistant/core/pull/136718 +[#136719]: https://github.com/home-assistant/core/pull/136719 +[#136723]: https://github.com/home-assistant/core/pull/136723 +[#136727]: https://github.com/home-assistant/core/pull/136727 +[#136730]: https://github.com/home-assistant/core/pull/136730 +[#136731]: https://github.com/home-assistant/core/pull/136731 +[#136732]: https://github.com/home-assistant/core/pull/136732 +[#136733]: https://github.com/home-assistant/core/pull/136733 +[#136734]: https://github.com/home-assistant/core/pull/136734 +[#136735]: https://github.com/home-assistant/core/pull/136735 +[#136736]: https://github.com/home-assistant/core/pull/136736 +[#136738]: https://github.com/home-assistant/core/pull/136738 +[#136739]: https://github.com/home-assistant/core/pull/136739 +[#136741]: https://github.com/home-assistant/core/pull/136741 +[#136743]: https://github.com/home-assistant/core/pull/136743 +[#136744]: https://github.com/home-assistant/core/pull/136744 +[#136745]: https://github.com/home-assistant/core/pull/136745 +[#136748]: https://github.com/home-assistant/core/pull/136748 +[#136749]: https://github.com/home-assistant/core/pull/136749 +[#136750]: https://github.com/home-assistant/core/pull/136750 +[#136751]: https://github.com/home-assistant/core/pull/136751 +[#136752]: https://github.com/home-assistant/core/pull/136752 +[#136753]: https://github.com/home-assistant/core/pull/136753 +[#136759]: https://github.com/home-assistant/core/pull/136759 +[#136762]: https://github.com/home-assistant/core/pull/136762 +[#136763]: https://github.com/home-assistant/core/pull/136763 +[#136764]: https://github.com/home-assistant/core/pull/136764 +[#136765]: https://github.com/home-assistant/core/pull/136765 +[#136766]: https://github.com/home-assistant/core/pull/136766 +[#136767]: https://github.com/home-assistant/core/pull/136767 +[#136769]: https://github.com/home-assistant/core/pull/136769 +[#136770]: https://github.com/home-assistant/core/pull/136770 +[#136772]: https://github.com/home-assistant/core/pull/136772 +[#136773]: https://github.com/home-assistant/core/pull/136773 +[#136774]: https://github.com/home-assistant/core/pull/136774 +[#136775]: https://github.com/home-assistant/core/pull/136775 +[#136777]: https://github.com/home-assistant/core/pull/136777 +[#136779]: https://github.com/home-assistant/core/pull/136779 +[#136780]: https://github.com/home-assistant/core/pull/136780 +[#136781]: https://github.com/home-assistant/core/pull/136781 +[#136782]: https://github.com/home-assistant/core/pull/136782 +[#136784]: https://github.com/home-assistant/core/pull/136784 +[#136785]: https://github.com/home-assistant/core/pull/136785 +[#136786]: https://github.com/home-assistant/core/pull/136786 +[#136787]: https://github.com/home-assistant/core/pull/136787 +[#136791]: https://github.com/home-assistant/core/pull/136791 +[#136793]: https://github.com/home-assistant/core/pull/136793 +[#136794]: https://github.com/home-assistant/core/pull/136794 +[#136795]: https://github.com/home-assistant/core/pull/136795 +[#136797]: https://github.com/home-assistant/core/pull/136797 +[#136798]: https://github.com/home-assistant/core/pull/136798 +[#136799]: https://github.com/home-assistant/core/pull/136799 +[#136801]: https://github.com/home-assistant/core/pull/136801 +[#136803]: https://github.com/home-assistant/core/pull/136803 +[#136805]: https://github.com/home-assistant/core/pull/136805 +[#136806]: https://github.com/home-assistant/core/pull/136806 +[#136807]: https://github.com/home-assistant/core/pull/136807 +[#136810]: https://github.com/home-assistant/core/pull/136810 +[#136811]: https://github.com/home-assistant/core/pull/136811 +[#136813]: https://github.com/home-assistant/core/pull/136813 +[#136814]: https://github.com/home-assistant/core/pull/136814 +[#136816]: https://github.com/home-assistant/core/pull/136816 +[#136817]: https://github.com/home-assistant/core/pull/136817 +[#136818]: https://github.com/home-assistant/core/pull/136818 +[#136819]: https://github.com/home-assistant/core/pull/136819 +[#136821]: https://github.com/home-assistant/core/pull/136821 +[#136823]: https://github.com/home-assistant/core/pull/136823 +[#136824]: https://github.com/home-assistant/core/pull/136824 +[#136825]: https://github.com/home-assistant/core/pull/136825 +[#136826]: https://github.com/home-assistant/core/pull/136826 +[#136827]: https://github.com/home-assistant/core/pull/136827 +[#136828]: https://github.com/home-assistant/core/pull/136828 +[#136829]: https://github.com/home-assistant/core/pull/136829 +[#136830]: https://github.com/home-assistant/core/pull/136830 +[#136831]: https://github.com/home-assistant/core/pull/136831 +[#136832]: https://github.com/home-assistant/core/pull/136832 +[#136833]: https://github.com/home-assistant/core/pull/136833 +[#136834]: https://github.com/home-assistant/core/pull/136834 +[#136835]: https://github.com/home-assistant/core/pull/136835 +[#136836]: https://github.com/home-assistant/core/pull/136836 +[#136838]: https://github.com/home-assistant/core/pull/136838 +[#136842]: https://github.com/home-assistant/core/pull/136842 +[#136843]: https://github.com/home-assistant/core/pull/136843 +[#136844]: https://github.com/home-assistant/core/pull/136844 +[#136845]: https://github.com/home-assistant/core/pull/136845 +[#136850]: https://github.com/home-assistant/core/pull/136850 +[#136851]: https://github.com/home-assistant/core/pull/136851 +[#136852]: https://github.com/home-assistant/core/pull/136852 +[#136854]: https://github.com/home-assistant/core/pull/136854 +[#136856]: https://github.com/home-assistant/core/pull/136856 +[#136857]: https://github.com/home-assistant/core/pull/136857 +[#136858]: https://github.com/home-assistant/core/pull/136858 +[#136861]: https://github.com/home-assistant/core/pull/136861 +[#136862]: https://github.com/home-assistant/core/pull/136862 +[#136870]: https://github.com/home-assistant/core/pull/136870 +[#136872]: https://github.com/home-assistant/core/pull/136872 +[#136883]: https://github.com/home-assistant/core/pull/136883 +[#136884]: https://github.com/home-assistant/core/pull/136884 +[#136888]: https://github.com/home-assistant/core/pull/136888 +[#136889]: https://github.com/home-assistant/core/pull/136889 +[#136891]: https://github.com/home-assistant/core/pull/136891 +[#136892]: https://github.com/home-assistant/core/pull/136892 +[#136893]: https://github.com/home-assistant/core/pull/136893 +[#136898]: https://github.com/home-assistant/core/pull/136898 +[#136906]: https://github.com/home-assistant/core/pull/136906 +[#136907]: https://github.com/home-assistant/core/pull/136907 +[#136910]: https://github.com/home-assistant/core/pull/136910 +[#136911]: https://github.com/home-assistant/core/pull/136911 +[#136912]: https://github.com/home-assistant/core/pull/136912 +[#136913]: https://github.com/home-assistant/core/pull/136913 +[#136916]: https://github.com/home-assistant/core/pull/136916 +[#136925]: https://github.com/home-assistant/core/pull/136925 +[#136926]: https://github.com/home-assistant/core/pull/136926 +[#136927]: https://github.com/home-assistant/core/pull/136927 +[#136928]: https://github.com/home-assistant/core/pull/136928 +[#136929]: https://github.com/home-assistant/core/pull/136929 +[#136930]: https://github.com/home-assistant/core/pull/136930 +[#136931]: https://github.com/home-assistant/core/pull/136931 +[#136932]: https://github.com/home-assistant/core/pull/136932 +[#136937]: https://github.com/home-assistant/core/pull/136937 +[#136940]: https://github.com/home-assistant/core/pull/136940 +[#136942]: https://github.com/home-assistant/core/pull/136942 +[#136954]: https://github.com/home-assistant/core/pull/136954 +[#136958]: https://github.com/home-assistant/core/pull/136958 +[#136973]: https://github.com/home-assistant/core/pull/136973 +[#136977]: https://github.com/home-assistant/core/pull/136977 +[#136980]: https://github.com/home-assistant/core/pull/136980 +[#136982]: https://github.com/home-assistant/core/pull/136982 +[#136990]: https://github.com/home-assistant/core/pull/136990 +[#136995]: https://github.com/home-assistant/core/pull/136995 +[#136997]: https://github.com/home-assistant/core/pull/136997 +[#136998]: https://github.com/home-assistant/core/pull/136998 +[#137001]: https://github.com/home-assistant/core/pull/137001 +[#137010]: https://github.com/home-assistant/core/pull/137010 +[#137018]: https://github.com/home-assistant/core/pull/137018 +[#137020]: https://github.com/home-assistant/core/pull/137020 +[#137022]: https://github.com/home-assistant/core/pull/137022 +[#137024]: https://github.com/home-assistant/core/pull/137024 +[#137025]: https://github.com/home-assistant/core/pull/137025 +[#137028]: https://github.com/home-assistant/core/pull/137028 +[#137030]: https://github.com/home-assistant/core/pull/137030 +[#137031]: https://github.com/home-assistant/core/pull/137031 +[#137032]: https://github.com/home-assistant/core/pull/137032 +[#137035]: https://github.com/home-assistant/core/pull/137035 +[#137036]: https://github.com/home-assistant/core/pull/137036 +[#137040]: https://github.com/home-assistant/core/pull/137040 +[#137045]: https://github.com/home-assistant/core/pull/137045 +[#137049]: https://github.com/home-assistant/core/pull/137049 +[#137051]: https://github.com/home-assistant/core/pull/137051 +[#137052]: https://github.com/home-assistant/core/pull/137052 +[#137056]: https://github.com/home-assistant/core/pull/137056 +[#137058]: https://github.com/home-assistant/core/pull/137058 +[#137061]: https://github.com/home-assistant/core/pull/137061 +[#137063]: https://github.com/home-assistant/core/pull/137063 +[#137064]: https://github.com/home-assistant/core/pull/137064 +[#137067]: https://github.com/home-assistant/core/pull/137067 +[#137075]: https://github.com/home-assistant/core/pull/137075 +[#137091]: https://github.com/home-assistant/core/pull/137091 +[#137102]: https://github.com/home-assistant/core/pull/137102 +[#137103]: https://github.com/home-assistant/core/pull/137103 +[#137104]: https://github.com/home-assistant/core/pull/137104 +[#137105]: https://github.com/home-assistant/core/pull/137105 +[#137106]: https://github.com/home-assistant/core/pull/137106 +[#137107]: https://github.com/home-assistant/core/pull/137107 +[#137109]: https://github.com/home-assistant/core/pull/137109 +[#137110]: https://github.com/home-assistant/core/pull/137110 +[#137111]: https://github.com/home-assistant/core/pull/137111 +[#137113]: https://github.com/home-assistant/core/pull/137113 +[#137115]: https://github.com/home-assistant/core/pull/137115 +[#137121]: https://github.com/home-assistant/core/pull/137121 +[#137123]: https://github.com/home-assistant/core/pull/137123 +[#137126]: https://github.com/home-assistant/core/pull/137126 +[#137129]: https://github.com/home-assistant/core/pull/137129 +[#137132]: https://github.com/home-assistant/core/pull/137132 +[#137133]: https://github.com/home-assistant/core/pull/137133 +[#137136]: https://github.com/home-assistant/core/pull/137136 +[#137137]: https://github.com/home-assistant/core/pull/137137 +[#137147]: https://github.com/home-assistant/core/pull/137147 +[#137148]: https://github.com/home-assistant/core/pull/137148 +[#137151]: https://github.com/home-assistant/core/pull/137151 +[#137158]: https://github.com/home-assistant/core/pull/137158 +[#137168]: https://github.com/home-assistant/core/pull/137168 +[#137169]: https://github.com/home-assistant/core/pull/137169 +[#137173]: https://github.com/home-assistant/core/pull/137173 +[#137176]: https://github.com/home-assistant/core/pull/137176 +[#137180]: https://github.com/home-assistant/core/pull/137180 +[#137188]: https://github.com/home-assistant/core/pull/137188 +[#137199]: https://github.com/home-assistant/core/pull/137199 +[#137204]: https://github.com/home-assistant/core/pull/137204 +[#137205]: https://github.com/home-assistant/core/pull/137205 +[#137206]: https://github.com/home-assistant/core/pull/137206 +[#137208]: https://github.com/home-assistant/core/pull/137208 +[#137217]: https://github.com/home-assistant/core/pull/137217 +[#137220]: https://github.com/home-assistant/core/pull/137220 +[#137230]: https://github.com/home-assistant/core/pull/137230 +[#137239]: https://github.com/home-assistant/core/pull/137239 +[#137244]: https://github.com/home-assistant/core/pull/137244 +[#137252]: https://github.com/home-assistant/core/pull/137252 +[#137253]: https://github.com/home-assistant/core/pull/137253 +[#137257]: https://github.com/home-assistant/core/pull/137257 +[#137261]: https://github.com/home-assistant/core/pull/137261 +[#137263]: https://github.com/home-assistant/core/pull/137263 +[#137264]: https://github.com/home-assistant/core/pull/137264 +[#137278]: https://github.com/home-assistant/core/pull/137278 +[#137295]: https://github.com/home-assistant/core/pull/137295 +[#137296]: https://github.com/home-assistant/core/pull/137296 +[#137299]: https://github.com/home-assistant/core/pull/137299 +[#137301]: https://github.com/home-assistant/core/pull/137301 +[#137303]: https://github.com/home-assistant/core/pull/137303 +[#137309]: https://github.com/home-assistant/core/pull/137309 +[#137313]: https://github.com/home-assistant/core/pull/137313 +[#137315]: https://github.com/home-assistant/core/pull/137315 +[#137324]: https://github.com/home-assistant/core/pull/137324 +[#137330]: https://github.com/home-assistant/core/pull/137330 +[#137331]: https://github.com/home-assistant/core/pull/137331 +[#137334]: https://github.com/home-assistant/core/pull/137334 +[#137337]: https://github.com/home-assistant/core/pull/137337 +[#137338]: https://github.com/home-assistant/core/pull/137338 +[#137340]: https://github.com/home-assistant/core/pull/137340 +[#137342]: https://github.com/home-assistant/core/pull/137342 +[#137343]: https://github.com/home-assistant/core/pull/137343 +[#137346]: https://github.com/home-assistant/core/pull/137346 +[#137347]: https://github.com/home-assistant/core/pull/137347 +[#137353]: https://github.com/home-assistant/core/pull/137353 +[#137355]: https://github.com/home-assistant/core/pull/137355 +[#137359]: https://github.com/home-assistant/core/pull/137359 +[#137360]: https://github.com/home-assistant/core/pull/137360 +[#137361]: https://github.com/home-assistant/core/pull/137361 +[#137364]: https://github.com/home-assistant/core/pull/137364 +[#137369]: https://github.com/home-assistant/core/pull/137369 +[#137373]: https://github.com/home-assistant/core/pull/137373 +[#137374]: https://github.com/home-assistant/core/pull/137374 +[#137379]: https://github.com/home-assistant/core/pull/137379 +[#137390]: https://github.com/home-assistant/core/pull/137390 +[#137393]: https://github.com/home-assistant/core/pull/137393 +[#137402]: https://github.com/home-assistant/core/pull/137402 +[#137409]: https://github.com/home-assistant/core/pull/137409 +[#137420]: https://github.com/home-assistant/core/pull/137420 +[#137423]: https://github.com/home-assistant/core/pull/137423 +[#137424]: https://github.com/home-assistant/core/pull/137424 +[#137430]: https://github.com/home-assistant/core/pull/137430 +[#137437]: https://github.com/home-assistant/core/pull/137437 +[#137440]: https://github.com/home-assistant/core/pull/137440 +[#137441]: https://github.com/home-assistant/core/pull/137441 +[#137446]: https://github.com/home-assistant/core/pull/137446 +[@Anonym-tsk]: https://github.com/Anonym-tsk +[@Bre77]: https://github.com/Bre77 +[@CFenner]: https://github.com/CFenner +[@CoMPaTech]: https://github.com/CoMPaTech +[@DCSBL]: https://github.com/DCSBL +[@Danielhiversen]: https://github.com/Danielhiversen +[@Diegorro98]: https://github.com/Diegorro98 +[@Djelibeybi]: https://github.com/Djelibeybi +[@DrDonoso]: https://github.com/DrDonoso +[@EliSchleifer]: https://github.com/EliSchleifer +[@Ernst79]: https://github.com/Ernst79 +[@G-Two]: https://github.com/G-Two +[@GlennReilly]: https://github.com/GlennReilly +[@IceBotYT]: https://github.com/IceBotYT +[@IgnusG]: https://github.com/IgnusG +[@Ik-12]: https://github.com/Ik-12 +[@KapJI]: https://github.com/KapJI +[@LG-ThinQ-Integration]: https://github.com/LG-ThinQ-Integration +[@LaStrada]: https://github.com/LaStrada +[@Lash-L]: https://github.com/Lash-L +[@LouisChrist]: https://github.com/LouisChrist +[@MartinHjelmare]: https://github.com/MartinHjelmare +[@Master-Guy]: https://github.com/Master-Guy +[@MatthiasLohr]: https://github.com/MatthiasLohr +[@N3rdix]: https://github.com/N3rdix +[@NoRi2909]: https://github.com/NoRi2909 +[@Noltari]: https://github.com/Noltari +[@PaulSD]: https://github.com/PaulSD +[@PeteRager]: https://github.com/PeteRager +[@Petro31]: https://github.com/Petro31 +[@PoppyPop]: https://github.com/PoppyPop +[@Qbus-iot]: https://github.com/Qbus-iot +[@RBaragona]: https://github.com/RBaragona +[@RJPoelstra]: https://github.com/RJPoelstra +[@RaHehl]: https://github.com/RaHehl +[@RunC0deRun]: https://github.com/RunC0deRun +[@SeraphicRav]: https://github.com/SeraphicRav +[@Shulyaka]: https://github.com/Shulyaka +[@Shutgun]: https://github.com/Shutgun +[@SparkyDan555]: https://github.com/SparkyDan555 +[@Splint77]: https://github.com/Splint77 +[@StevenLooman]: https://github.com/StevenLooman +[@Taraman17]: https://github.com/Taraman17 +[@TheJulianJES]: https://github.com/TheJulianJES +[@Thomas55555]: https://github.com/Thomas55555 +[@ThyMYthOS]: https://github.com/ThyMYthOS +[@VandeurenGlenn]: https://github.com/VandeurenGlenn +[@WaterInTheLake]: https://github.com/WaterInTheLake +[@YogevBokobza]: https://github.com/YogevBokobza +[@abmantis]: https://github.com/abmantis +[@alengwenus]: https://github.com/alengwenus +[@allenporter]: https://github.com/allenporter +[@andrew-codechimp]: https://github.com/andrew-codechimp +[@andrewsayre]: https://github.com/andrewsayre +[@apt-itude]: https://github.com/apt-itude +[@arturpragacz]: https://github.com/arturpragacz +[@ashionky]: https://github.com/ashionky +[@astrandb]: https://github.com/astrandb +[@austinmroczek]: https://github.com/austinmroczek +[@autinerd]: https://github.com/autinerd +[@balloob]: https://github.com/balloob +[@bdraco]: https://github.com/bdraco +[@beginner2047]: https://github.com/beginner2047 +[@bieniu]: https://github.com/bieniu +[@boralyl]: https://github.com/boralyl +[@bors-ltd]: https://github.com/bors-ltd +[@bouwew]: https://github.com/bouwew +[@bramkragten]: https://github.com/bramkragten +[@catsmanac]: https://github.com/catsmanac +[@cdce8p]: https://github.com/cdce8p +[@cdnninja]: https://github.com/cdnninja +[@cereal2nd]: https://github.com/cereal2nd +[@chemelli74]: https://github.com/chemelli74 +[@choumarin]: https://github.com/choumarin +[@crevetor]: https://github.com/crevetor +[@dan-r]: https://github.com/dan-r +[@davet2001]: https://github.com/davet2001 +[@david1024pl]: https://github.com/david1024pl +[@davidrapan]: https://github.com/davidrapan +[@dext0r]: https://github.com/dext0r +[@dgomes]: https://github.com/dgomes +[@dieselrabbit]: https://github.com/dieselrabbit +[@dknowles2]: https://github.com/dknowles2 +[@domingues]: https://github.com/domingues +[@dontinelli]: https://github.com/dontinelli +[@dotvav]: https://github.com/dotvav +[@dustMason]: https://github.com/dustMason +[@eclair4151]: https://github.com/eclair4151 +[@edenhaus]: https://github.com/edenhaus +[@elmurato]: https://github.com/elmurato +[@elupus]: https://github.com/elupus +[@emontnemery]: https://github.com/emontnemery +[@epenet]: https://github.com/epenet +[@erwindouna]: https://github.com/erwindouna +[@farkasdi]: https://github.com/farkasdi +[@farmio]: https://github.com/farmio +[@firstof9]: https://github.com/firstof9 +[@flabbamann]: https://github.com/flabbamann +[@frenck]: https://github.com/frenck +[@fwestenberg]: https://github.com/fwestenberg +[@gentoo-root]: https://github.com/gentoo-root +[@gjohansson-ST]: https://github.com/gjohansson-ST +[@gjong]: https://github.com/gjong +[@gwww]: https://github.com/gwww +[@hahn-th]: https://github.com/hahn-th +[@huyuwei1996]: https://github.com/huyuwei1996 +[@iMicknl]: https://github.com/iMicknl +[@illia-piskurov]: https://github.com/illia-piskurov +[@iprak]: https://github.com/iprak +[@iskrakranj]: https://github.com/iskrakranj +[@jaminh]: https://github.com/jaminh +[@jb101010-2]: https://github.com/jb101010-2 +[@jbarreiros]: https://github.com/jbarreiros +[@jbouwh]: https://github.com/jbouwh +[@jeeftor]: https://github.com/jeeftor +[@jesperraemaekers]: https://github.com/jesperraemaekers +[@jiriappl]: https://github.com/jiriappl +[@joostlek]: https://github.com/joostlek +[@jpbede]: https://github.com/jpbede +[@jpelgrom]: https://github.com/jpelgrom +[@jsuar]: https://github.com/jsuar +[@jterrace]: https://github.com/jterrace +[@keithle888]: https://github.com/keithle888 +[@kelyaenn]: https://github.com/kelyaenn +[@kereyroper]: https://github.com/kereyroper +[@klaasnicolaas]: https://github.com/klaasnicolaas +[@klejejs]: https://github.com/klejejs +[@krakonos1602]: https://github.com/krakonos1602 +[@lanthaler]: https://github.com/lanthaler +[@lboue]: https://github.com/lboue +[@lschloetterer]: https://github.com/lschloetterer +[@luc-ass]: https://github.com/luc-ass +[@marcelveldt]: https://github.com/marcelveldt +[@maxcabrajac]: https://github.com/maxcabrajac +[@mckbrmn]: https://github.com/mckbrmn +[@miaucl]: https://github.com/miaucl +[@mib1185]: https://github.com/mib1185 +[@mj23000]: https://github.com/mj23000 +[@mkmer]: https://github.com/mkmer +[@mxr]: https://github.com/mxr +[@natekspencer]: https://github.com/natekspencer +[@noahhusby]: https://github.com/noahhusby +[@oandrew]: https://github.com/oandrew +[@pawlizio]: https://github.com/pawlizio +[@peteS-UK]: https://github.com/peteS-UK +[@piitaya]: https://github.com/piitaya +[@puddly]: https://github.com/puddly +[@rajlaud]: https://github.com/rajlaud +[@redge76]: https://github.com/redge76 +[@regevbr]: https://github.com/regevbr +[@richardpolzer]: https://github.com/richardpolzer +[@rikroe]: https://github.com/rikroe +[@rpavlik]: https://github.com/rpavlik +[@rrooggiieerr]: https://github.com/rrooggiieerr +[@rsiv]: https://github.com/rsiv +[@rwalker777]: https://github.com/rwalker777 +[@rytilahti]: https://github.com/rytilahti +[@sVnsation]: https://github.com/sVnsation +[@scop]: https://github.com/scop +[@sdb9696]: https://github.com/sdb9696 +[@shmuelzon]: https://github.com/shmuelzon +[@silamon]: https://github.com/silamon +[@sorgfresser]: https://github.com/sorgfresser +[@squishykid]: https://github.com/squishykid +[@srescio]: https://github.com/srescio +[@starkillerOG]: https://github.com/starkillerOG +[@synesthesiam]: https://github.com/synesthesiam +[@thecode]: https://github.com/thecode +[@thomasddn]: https://github.com/thomasddn +[@tkunzfeld]: https://github.com/tkunzfeld +[@tl-sl]: https://github.com/tl-sl +[@tomer-w]: https://github.com/tomer-w +[@tr4nt0r]: https://github.com/tr4nt0r +[@tronikos]: https://github.com/tronikos +[@tswsl1989]: https://github.com/tswsl1989 +[@tyron]: https://github.com/tyron +[@wlcrs]: https://github.com/wlcrs +[@zweckj]: https://github.com/zweckj \ No newline at end of file diff --git a/source/green/index.html b/source/green/index.html index c312a430838..5bdabe5b96d 100644 --- a/source/green/index.html +++ b/source/green/index.html @@ -1010,7 +1010,6 @@ dark_header: true

You can add Home Assistant Connect ZBT-1 to control Zigbee and Thread* devices, set up Home Assistant Cloud for voice assistants, and integrate third-party USB accessories to support other smart standards, such as Z-Wave or Bluetooth. -
*Thread support is currently under development.

Voice Assistants > Add Assistant**. Give it a name and pick a conversation agent from your AI's option. In this example we are using Antropic and the agent picked is Claude. ![Add Claude agent to Assist](/images/assist/add-claude-to-assist.png) -3. Be mindful of your Text-to-speech and Speech-to-text configurations. These are not handled by the IA and should stay as you want them configured for Assist. - +3. Be mindful of your Text-to-speech and Speech-to-text configurations. These are not handled by the AI and should stay as you want them configured for Assist. 4. Configure the agent (gear icon next to the agent's name). - In the **Prompt template** field, enter a text that will prompt the AI to become the character. For example:: @@ -65,14 +63,12 @@ There are cloud agents provided by [Open AI](/integrations/openai_conversation/) - Once your Assist agent has been created, you can go to **Voice assistants** and the three dots menu of your personality, and define if you want Home Assistant's model to be the priority response, and therefore Assist would prefer to handling commands locally . ![Fallback toggle](/images/assist/fallback-assist-toggle.png) - - If you keep this option selected, if the intent can be answered by Home Assistant it will. It will not have the personality, but the response will be fast and efficient (since it doesn't require to go through the LLM). This is recommended in cases where you can accept not having the IA character reply sometimes and would rather your lights are turned on faster. + - If you keep this option selected, if the intent can be answered by Home Assistant it will. It will not have the personality, but the response will be fast and efficient (since it doesn't require to go through the LLM). This is recommended in cases where you can accept not having the AI character reply sometimes and would rather your lights are turned on faster. - If you deselect the option, all the intents will go through the agent. This is recommended when efficiency is not an issue and you need the agent never to break character (for example if your Assist personality is Santa Claus). - - 5. You can uncheck Recommended model settings, hit Submit and it will unblock extra customization. In the specific example of OpenAI, [here](/integrations/openai_conversation/#model) a brief summary of the other settings. 6. You can test the agent directly from the Voice assistants panel, selecting Start a conversation from the agent's menu. It will control your Home Assistant and reply exactly as it will do with any voice hardware. -7. In case you need troubleshooting with your LLM provider, check any specifics from your IA in our [integrations documentation](/integrations) +7. In case you need troubleshooting with your LLM provider, check any specifics from your AI in our [integrations documentation](/integrations) ## Tutorial: Setting up Assist with OpenAI diff --git a/source/voice_control/custom_sentences.markdown b/source/voice_control/custom_sentences.markdown index 3a0bf1875c8..8fab713ccd5 100644 --- a/source/voice_control/custom_sentences.markdown +++ b/source/voice_control/custom_sentences.markdown @@ -9,11 +9,13 @@ related: title: Sentence triggers - docs: /docs/automation/trigger/#sentence-wildcards title: Sentence wildcards + - docs: voice_control/custom_sentences_yaml + title: Customize responses - url: https://developers.home-assistant.io/docs/intent_builtin/ title: View existing intents --- -You may add your own sentences to the intent recognizer by either extending an [existing intent](https://developers.home-assistant.io/docs/intent_builtin/) or creating a new one. You may also [customize responses](#customizing-responses) for existing intents. +You may add your own sentences to the intent recognizer by either extending an [existing intent](https://developers.home-assistant.io/docs/intent_builtin/) or creating a new one. You may also [customize responses](/voice_control/custom_sentences_yaml#customizing-responses) for existing intents. ## Prerequisites