diff --git a/Gemfile b/Gemfile
index 909738d85e8..fd9f6665697 100644
--- a/Gemfile
+++ b/Gemfile
@@ -11,7 +11,7 @@ group :development do
# > 2.1.0 causes slowdowns https://github.com/sass/sassc-ruby/issues/189
gem 'sassc', '2.1.0'
gem 'rubocop', '1.64.1'
- gem 'ruby-lsp', '0.17.3'
+ gem 'ruby-lsp', '0.17.4'
gem 'rackup', '2.1.0'
end
diff --git a/Gemfile.lock b/Gemfile.lock
index cd20ad0bdbe..f8877262411 100644
--- a/Gemfile.lock
+++ b/Gemfile.lock
@@ -86,7 +86,7 @@ GEM
pathutil (0.16.2)
forwardable-extended (~> 2.6)
prism (0.30.0)
- public_suffix (5.1.0)
+ public_suffix (5.1.1)
racc (1.8.0)
rack (3.1.3)
rack-protection (4.0.0)
@@ -121,7 +121,7 @@ GEM
unicode-display_width (>= 2.4.0, < 3.0)
rubocop-ast (1.31.3)
parser (>= 3.3.1.0)
- ruby-lsp (0.17.3)
+ ruby-lsp (0.17.4)
language_server-protocol (~> 3.17.0)
prism (>= 0.29.0, < 0.31)
rbs (>= 3, < 4)
@@ -142,7 +142,7 @@ GEM
rack-protection (= 4.0.0)
rack-session (>= 2.0.0, < 3)
tilt (~> 2.0)
- sorbet-runtime (0.5.11435)
+ sorbet-runtime (0.5.11439)
stringex (2.8.6)
strscan (3.1.0)
terminal-table (3.0.2)
@@ -169,7 +169,7 @@ DEPENDENCIES
rackup (= 2.1.0)
rake (= 13.2.1)
rubocop (= 1.64.1)
- ruby-lsp (= 0.17.3)
+ ruby-lsp (= 0.17.4)
sass-globbing (= 1.1.5)
sassc (= 2.1.0)
sinatra (= 4.0.0)
diff --git a/_config.yml b/_config.yml
index 83377b6fbee..fa7a68b274f 100644
--- a/_config.yml
+++ b/_config.yml
@@ -108,8 +108,8 @@ social:
# Home Assistant release details
current_major_version: 2024
current_minor_version: 6
-current_patch_version: 3
-date_released: 2024-06-15
+current_patch_version: 4
+date_released: 2024-06-21
# Either # or the anchor link to latest release notes in the blog post.
# Must be prefixed with a # and have double quotes around it.
@@ -177,6 +177,12 @@ defaults:
values:
sitemap: false
+ - scope:
+ path: "blueprints/**/*.yaml"
+ values:
+ render_with_liquid: false
+ layout: none
+
# Support for files Jekyll will normally exclude
include:
- "_headers"
diff --git a/source/_docs/configuration.markdown b/source/_docs/configuration.markdown
index dbee90a3ba9..f93267df57b 100644
--- a/source/_docs/configuration.markdown
+++ b/source/_docs/configuration.markdown
@@ -29,36 +29,44 @@ Example of a configuration.yaml file, accessed using the File editor add-on on a
## Editing `configuration.yaml`
-How you edit your `configuration.yaml` file depends on your editor preferences and the [installation method](/installation/#advanced-installation-methods) you used to set up Home Assistant.
+How you edit your `configuration.yaml` file depends on your editor preferences and the [installation method](/installation/#advanced-installation-methods) you used to set up Home Assistant. Follow these steps:
+
+1. [Set up file access](#to-set-up-access-to-the-files-and-prepare-an-editor).
+2. [Locate the config directory](#to-find-the-configuration-directory).
+3. Edit your `configuration.yaml` file.
+4. Save your changes and [reload the configuration](#reloading-the-configuration-to-apply-changes) to apply the changes.
### To set up access to the files and prepare an editor
Before you can edit a file, you need to know how to access files in Home Assistant and setup an editor.
File access depends on your [installation method](/installation/#advanced-installation-methods). If you use {% term "Home Assistant Operating System" %} or {% term "Home Assistant Supervised" %}, you can use editor add-ons, for example, but not if you use {% term "Home Assistant Core" %} or {% term "Home Assistant Container" %}.
-1. To set up file access, follow the steps for your [installation method](/installation/#advanced-installation-methods):
+To set up file access, follow the steps for your [installation method](/installation/#advanced-installation-methods):
- - [Configure file access on the Operating System](/common-tasks/os/#configuring-access-to-files):
- - If you are unsure which option to choose, install the [file editor add-on](/common-tasks/os/#installing-and-using-the-file-editor-add-on).
- - Alternatively, use the [Studio Code Server add-on](/common-tasks/os/#installing-and-using-the-visual-studio-code-vsc-add-on). This editor offers live syntax checking and auto-fill of various Home Assistant entities. But it looks more complex than the file editor.
- - If you prefer to use a file editor on your computer, use the [Samba add-on](/common-tasks/os/#installing-and-using-the-samba-add-on).
- - [Configure file access on Supervised](/common-tasks/supervised/#configuring-access-to-files):
- - Using the [File editor add-on](/common-tasks/supervised/#installing-and-using-the-file-editor-add-on).
- - Using the [Studio Code Server add-on](/common-tasks/supervised/#installing-and-using-the-visual-studio-code-vsc-add-on).
- - Using the [Samba add-on](/common-tasks/supervised/#installing-and-using-the-samba-add-on).
+- [Configure file access on the Operating System](/common-tasks/os/#configuring-access-to-files):
+ - If you are unsure which option to choose, install the [file editor add-on](/common-tasks/os/#installing-and-using-the-file-editor-add-on).
+ - Alternatively, use the [Studio Code Server add-on](/common-tasks/os/#installing-and-using-the-visual-studio-code-vsc-add-on). This editor offers live syntax checking and auto-fill of various Home Assistant entities. But it looks more complex than the file editor.
+ - If you prefer to use a file editor on your computer, use the [Samba add-on](/common-tasks/os/#installing-and-using-the-samba-add-on).
+- [Configure file access on Supervised](/common-tasks/supervised/#configuring-access-to-files):
+ - Using the [File editor add-on](/common-tasks/supervised/#installing-and-using-the-file-editor-add-on).
+ - Using the [Studio Code Server add-on](/common-tasks/supervised/#installing-and-using-the-visual-studio-code-vsc-add-on).
+ - Using the [Samba add-on](/common-tasks/supervised/#installing-and-using-the-samba-add-on).
-2. To look up the path to your configuration directory, go to {% my system_health title="**Settings** > **System** > **Repairs**" %}.
+### To find the configuration directory
+
+1. To look up the path to your configuration directory, go to {% my system_health title="**Settings** > **System** > **Repairs**" %}.
- Select the three dots menu and select **System information**.

-3. Find out the location of the **Configuration directory**.
+2. Find out the location of the **Configuration directory**.

- Unless you changed the file structure, the default is as follows: -
- {% term "Home Assistant Operating System" %}: the `configuration.yaml` is in the `/config` folder of the installation.
- {% term "Home Assistant Container" %}: the `configuration.yaml` is in the config folder that you mounted in your container.
- {% term "Home Assistant Core" %}: the `configuration.yaml` is in the config folder passed to the `hass` command (default is `~/.homeassistant`).
+3. Once you located the config folder, you can edit your `configuration.yaml` file.
## Validating the configuration
diff --git a/source/_docs/frontend.markdown b/source/_docs/frontend.markdown
index 2b3cbcc678a..3320902fbb7 100644
--- a/source/_docs/frontend.markdown
+++ b/source/_docs/frontend.markdown
@@ -3,19 +3,52 @@ title: "Frontend of Home Assistant"
description: "Frontend of Home Assistant."
---
-The Home Assistant frontend allows users to browse and control the state of their house, manage their automations and configure integrations.
-The frontend is built with [Polymer](https://www.polymer-project.org/).
+The Home Assistant [frontend integration](/integrations/frontend/) provides the graphical user interface that allows you to browse and control the state of your house, manage automations, and configure integrations.
-
+Home Assistant comes with a [default dashboard](/dashboards/dashboards/#home-assistant-default-dashboards). But you can also create and customize your own dashboards.
- If you're looking to contribute to the frontend, please refer to the [Frontend Development documentation](/developers/frontend/).
+## Creating and styling your own dashboards
-
+To learn how to create and style your own dashboards, refer to the following topics:
-## Icons
+- [Dashboard introduction](/dashboards/)
+- [Types of dashboards](/dashboards/dashboards/)
+- [Views](/dashboards/views/)
+- [Dashboard cards](/dashboards/cards/)
+- [Badges](/dashboards/badges/)
+- [Themes](/integrations/frontend/)
+- [Icons](/docs/frontend/icons/)
-Home Assistant utilizes the community-driven [Material Design Icons](https://pictogrammers.com/library/mdi/) project for icons in the frontend. The [Icons section](/docs/frontend/icons/) has more information on how to use icons and suggest new ones.
+## Organizing and filtering data
+
+To learn how to organize and filter your data on an existing dashboard, refer to the following topics:
+
+- [Grouping](/docs/organizing/) into [areas](/docs/organizing/areas/), [floors](/docs/organizing/floors/), [labels](/docs/organizing/labels/), and [categories](/docs/organizing/categories/)
+- [Filtering](/docs/organizing/filtering)
+
+## User- or browser-dependent settings, general settings
+
+### User- or browser-dependent settings
+
+Some of the frontend settings depend on the user. Other settings can be set by client. This allows you for example to have different languages per user, and a different theme depending on the device that is used to display Home Assistant.
+
+To change these settings, in the bottom left, select your username to open your {% my profile title="**User profile**" %}.
+
+- To change general settings such as language, number and time format, go to the **User settings**.
+- To change browser dependent settings such as the theme, default dashboard, or whether or not to show the sidebar, change the **Browser settings**.
+
+### Themes
+
+Themes can be set per browser. In the {% my profile title="**User profile**" %}, you can define some theme settings, such as whether you want a light or dark theme. However, more detailed theme settings require YAML configuration. Refer to the documentation of the [frontend integration](/integrations/frontend/).
+
+### General settings
+
+Some of the settings, such as location and currency, were defined during the onboarding process. They can be changed under {% my general title="**Settings** > **System** > **General**" %}. Refer to the documentation on [setup basic information](/docs/configuration/basic/).
+
+## Apps for Android and iOS
+
+If you are looking for information on Home Assistant for Android or iOS, refer to the [documentation for the Companion Apps](https://companion.home-assistant.io/).
diff --git a/source/_docs/frontend/icons.markdown b/source/_docs/frontend/icons.markdown
index 7499aa6dc75..ed95d33b146 100644
--- a/source/_docs/frontend/icons.markdown
+++ b/source/_docs/frontend/icons.markdown
@@ -1,6 +1,15 @@
---
title: "Icons"
description: "Material Design Icons in the Home Assistant frontend"
+related:
+ - docs: /docs/frontend/
+ title: Frontend
+ - docs: /dashboards/cards/
+ title: Dashboard cards
+ - docs: /docs/configuration/customizing-devices/
+ title: Customizing entities
+ - docs: https://pictogrammers.com/library/mdi/
+ title: Material Design Icons
---
@@ -11,13 +20,13 @@ Home Assistant utilizes the community-driven [Material Design Icons](https://pic
## Default icons
-Every entity in Home Assistant has a default icon assigned to it. There are way too many to list out here, but you'll see them in your dashboard. You can [customize any of your entities](/docs/configuration/customizing-devices/#icon) to change the icons displayed to you.
+Every entity in Home Assistant has a default icon assigned to it. There are way too many to list out here, but you'll see them in your dashboard. You can [customize any of your entities](/docs/configuration/customizing-devices/) to change the icons displayed to you.
## Finding icons
### Icon picker
-The most common way you can find icons is by using the icon picker built right into Home Assistant. Select the "Icon" field when customizing an entity and start typing. The list will filter to icons that match your search criteria. You can also scroll through all available icons when the field is empty.
+The most common way you can find icons is by using the icon picker built right into Home Assistant. Select the **Icon** field when customizing an entity and start typing. The list will filter to icons that match your search criteria. You can also scroll through all available icons when the field is empty.
@@ -29,6 +38,8 @@ The most common way you can find icons is by using the icon picker built right i
+For more detailed steps on customizing entities, including their icon, refer to [customizing entities](/docs/configuration/customizing-devices/).
+
### Material design icons picker browser extension
The easiest way to browse and find icons outside of Home Assistant is with the official [Material Design Icons Picker](https://github.com/Pictogrammers/MaterialDesignIcons-Picker) browser extension. The extension is available for Chrome, Firefox, and Edge and is maintained by the MDI team.
@@ -71,7 +82,7 @@ If you have an idea for an icon that isn't currently in the library, but are not
If you want to contribute a new icon to the library, familiarize yourself with the [System icons guidelines](https://material.io/design/iconography/system-icons.html#design-principles) in the Material Design system. Then create your icon and [submit it to the Pictogrammers team for review](https://github.com/Templarian/MaterialDesign/issues/new?assignees=&labels=Icon+Request%2CContribution&template=2_contribution.yml).
-#### Tips for Creating New Icons
+#### Tips for creating new icons
- Really pay attention to [Material Design guidelines](https://material.io/design/iconography/system-icons.html#design-principles).
- Keep in mind that icons are meant to be contextual, not literal.
@@ -79,6 +90,6 @@ If you want to contribute a new icon to the library, familiarize yourself with t
- If you're unsure, open an issue on their GitHub. They're more than happy to help you!
- Not all icons make it into the library and that is okay!
-### Suggesting an Icon Alias
+### Suggesting an icon alias
Sometimes an icon exists, but you aren't able to find it with the terms you were searching for. If this has ever happened to you, please [open an issue with the Pictogrammers team to suggest new aliases](https://github.com/Templarian/MaterialDesign/issues/new?assignees=&labels=Alias&template=4_alias.yml) that can be added to existing icons.
diff --git a/source/_includes/asides/help_navigation.html b/source/_includes/asides/help_navigation.html
index 532719243d0..3c3fdc9c923 100644
--- a/source/_includes/asides/help_navigation.html
+++ b/source/_includes/asides/help_navigation.html
@@ -9,6 +9,9 @@
+
+ {% active_link /help/reporting_issues/ Reporting issues %}
+
Governance
diff --git a/source/_includes/common-tasks/specific_version.md b/source/_includes/common-tasks/specific_version.md
index 7af2f2a1052..fe9c4ab215e 100644
--- a/source/_includes/common-tasks/specific_version.md
+++ b/source/_includes/common-tasks/specific_version.md
@@ -4,6 +4,8 @@
{% if page.installation != "os" and page.installation != "supervised" %}
+To see which version your system is running, go to {% my info title="**Settings** > **About**" %}.
+
In the event that a Home Assistant Core version doesn't play well with your hardware setup, you can downgrade to a previous release. In this example `{{current_version}}` is used as the target version but you can choose the version you desire to run.
{% endif %}
diff --git a/source/_includes/installation/container.md b/source/_includes/installation/container.md
index 6dbf16734af..7963a76c9bb 100644
--- a/source/_includes/installation/container.md
+++ b/source/_includes/installation/container.md
@@ -96,7 +96,6 @@ In order to use Zigbee or other integrations that require access to devices, you
content: |
```yaml
- version: '3'
services:
homeassistant:
...
@@ -125,7 +124,6 @@ As jemalloc can cause issues on certain hardware, it can be disabled by passing
content: |
```yaml
- version: '3'
services:
homeassistant:
...
diff --git a/source/_includes/installation/container/compose.md b/source/_includes/installation/container/compose.md
index c4d1391c3f6..ed1903ba70d 100644
--- a/source/_includes/installation/container/compose.md
+++ b/source/_includes/installation/container/compose.md
@@ -1,5 +1,4 @@
```yaml
- version: '3'
services:
homeassistant:
container_name: homeassistant
diff --git a/source/_integrations/aladdin_connect.markdown b/source/_integrations/aladdin_connect.markdown
index e557c2f6380..3a9c957c5cf 100644
--- a/source/_integrations/aladdin_connect.markdown
+++ b/source/_integrations/aladdin_connect.markdown
@@ -24,3 +24,9 @@ Only doors that are owned by your Aladdin Connect account will be available. Doo
{% include integrations/config_flow.md %}
+
+## Troubleshooting
+If you see the below attached screen instead of the login page, please ensure that your
+{% term "`configuration.yaml`" %} file includes either a [`default_config:`](/integrations/default_config/) or [`cloud:`](/integrations/cloud/) section.
+
+
diff --git a/source/_integrations/androidtv.markdown b/source/_integrations/androidtv.markdown
index 34a7a92e31c..883ceeb9b47 100644
--- a/source/_integrations/androidtv.markdown
+++ b/source/_integrations/androidtv.markdown
@@ -40,7 +40,7 @@ For Fire TV devices, the instructions are as follows:
- From the main (Launcher) screen, select Settings.
- Select My Fire TV > About > Network.
-If Developer Options is missing from Settings then select My Fire TV and press the button seven times on About.
+If Developer Options is missing from Settings, then select My Fire TV and press the button seven times on About. Note that on some Fire TV devices, such as the Insignia F30 series, it is not possible to enable Developer Options until you have signed in to an Amazon account on the device.
{% include integrations/config_flow.md %}
diff --git a/source/_integrations/denonavr.markdown b/source/_integrations/denonavr.markdown
index 8c7c893d980..df62d531ab6 100644
--- a/source/_integrations/denonavr.markdown
+++ b/source/_integrations/denonavr.markdown
@@ -45,6 +45,7 @@ Known supported devices:
- Denon AVR-X3500H
- Denon AVR-X3600H
- Denon AVR-X3700H
+- Denon AVC-X3800H
- Denon AVR-X4100W
- Denon AVR-X4300H
- Denon AVR-X4400H
diff --git a/source/_integrations/edl21.markdown b/source/_integrations/edl21.markdown
index 728e847e564..93a579d4c09 100644
--- a/source/_integrations/edl21.markdown
+++ b/source/_integrations/edl21.markdown
@@ -44,7 +44,7 @@ For the efr SGM-C4 it is:
- entering pin using quicker flashes, wait for 3 seconds for next digit
- pin accepted
- flashing 7 times to get to InF=OFF
-- 5-second flash to switch to InF=OFF
+- 5-second flash to switch to InF=ON
You will now get more readings like current Power, Voltage, and phase angle. Some meters don´t have this, in that case only an overall reading is provided.
diff --git a/source/_integrations/environment_canada.markdown b/source/_integrations/environment_canada.markdown
index 5d36c0a378b..a4a8f7226f1 100644
--- a/source/_integrations/environment_canada.markdown
+++ b/source/_integrations/environment_canada.markdown
@@ -100,7 +100,7 @@ Although infrequent, there have been some outages and instabilities of the Envir
2022-10-05 12:25:08.619 ERROR (MainThread) [homeassistant.components.environment_canada] Timeout fetching environment_canada weather data
```
-The first course of action should be to check if there are known problems with the service. Look for recent messages on the [Environment Canada mailing list](https://lists.ec.gc.ca/pipermail/dd_info/) ([example message](https://lists.ec.gc.ca/pipermail/dd_info/2022-October/000542.html)). The next course of action is to post on the forum. The answers are usually already known by someone.
+The first course of action should be to check if there are known problems with the service. Look for recent messages on the [Environment Canada mailing list](https://comm.collab.science.gc.ca/mailman3/hyperkitty/list/dd_info@comm.collab.science.gc.ca/) ([example message](https://comm.collab.science.gc.ca/mailman3/hyperkitty/list/dd_info@comm.collab.science.gc.ca/thread/QJHBU7C5MWICGFHETGQ5752MUWR6OZ6G/)). The next course of action is to post on the forum. The answers are usually already known by someone.
### Sensor `unavailable` or `unknown`
diff --git a/source/_integrations/home_connect.markdown b/source/_integrations/home_connect.markdown
index 9bd0c1e78df..2059bc32a4f 100644
--- a/source/_integrations/home_connect.markdown
+++ b/source/_integrations/home_connect.markdown
@@ -42,6 +42,7 @@ Note that it depends on the appliance and on API permissions which of the featur
- Application ID: Home Assistant (or whatever name makes sense to you)
- OAuth Flow: Authorization Code Grant Flow
- Redirect URI: `https://my.home-assistant.io/redirect/oauth`
+- Go to `https://my.home-assistant.io/` and make sure that your Home Assistant URL is set there. For example: `http://homeassistant:8123/` or `http://homeassistant.local:8123`
*Important*:
- **Power on** all your appliances during the integration configuration process; otherwise appliance programs list will be empty.
diff --git a/source/_integrations/motion_blinds.markdown b/source/_integrations/motion_blinds.markdown
index d3ed8636fcb..1915faa3bd4 100644
--- a/source/_integrations/motion_blinds.markdown
+++ b/source/_integrations/motion_blinds.markdown
@@ -34,6 +34,7 @@ Additionally the following brands have been reported to also work with this inte
- [Inspired Shades](https://www.inspired-shades.com/)
- [iSmartWindow](https://www.ismartwindow.co.nz/)
- [Krispol](https://krispol.eu/en/drives/)
+- [Linx](https://linxautomation.com.au/)
- [Madeco](https://www.madeco.fr/)
- [Martec](https://www.martec.co.nz/)
- [Motionblinds](https://motionblinds.com/)
@@ -54,6 +55,9 @@ The following bridges are reported to work with this integration:
- D1554 Brel Home USB plug
- Brel HUB-03
- Acomax FX-I 620 Bridge Maxi
+- Linx Hub
+- Linx Hub Mini
+- Linx Hub USB
{% include integrations/config_flow.md %}
diff --git a/source/_integrations/openweathermap.markdown b/source/_integrations/openweathermap.markdown
index 28182b1a7fa..2629dc6a557 100644
--- a/source/_integrations/openweathermap.markdown
+++ b/source/_integrations/openweathermap.markdown
@@ -16,9 +16,12 @@ ha_platforms:
- sensor
- weather
ha_integration_type: integration
+related:
+ - docs: /common-tasks/general/#defining-a-custom-polling-interval
+ title: Defining a custom polling interval
---
-The OpenWeatherMap weather integrations uses [OpenWeatherMap](https://openweathermap.org/) as a source for current meteorological data for your location.
+The OpenWeatherMap weather integration uses [OpenWeatherMap](https://openweathermap.org/) as a source for current meteorological data for your location.
There is currently support for the following device types within Home Assistant:
diff --git a/source/_integrations/reolink.markdown b/source/_integrations/reolink.markdown
index 12671cf5801..352106e9f59 100644
--- a/source/_integrations/reolink.markdown
+++ b/source/_integrations/reolink.markdown
@@ -249,7 +249,7 @@ Recordings up to 1 month old can be viewed in Home Assistant.
## Tested models
-The following models have been tested and confirmed to work:
+The following models have been tested and confirmed to work with a direct link to Home Assistant:
- C1 Pro*
- C2 Pro*
@@ -289,15 +289,28 @@ The following models have been tested and confirmed to work:
- [Reolink Duo 2 WiFi](https://reolink.com/product/reolink-duo-wifi/)
- [Reolink Duo 3 PoE](https://reolink.com/product/reolink-duo-3-poe/)
- Reolink Duo Floodlight ([PoE](https://reolink.com/product/reolink-duo-floodlight-poe/) and [Wi-Fi](https://reolink.com/product/reolink-duo-floodlight-wifi/))
+- [Reolink Home Hub](https://reolink.com/product/reolink-home-hub/)
- Reolink TrackMix ([PoE](https://reolink.com/product/reolink-trackmix-poe/) and [Wi-Fi](https://reolink.com/product/reolink-trackmix-wifi/))
- Reolink Video Doorbell ([PoE](https://reolink.com/product/reolink-video-doorbell/) and [Wi-Fi](https://reolink.com/product/reolink-video-doorbell-wifi/))
*These models are discontinued and not sold anymore, they will continue to work with Home Assistant.
-Battery-powered cameras are not yet supported.
+### Tested battery-powered models
+
+Battery-powered Reolink cameras can be used with Home Assistant with the help of a [Reolink Home Hub](https://reolink.com/product/reolink-home-hub/). The Home Hub will act as a bridge between the battery-powered cameras and Home Assistant, conserving the battery life. All features of the battery-powered cameras will be available just like regular-powered cameras. Viewing the camera stream in Home Assistant will keep the battery camera awake during viewing, consuming battery life. Therefore, ensure you do not use the camera stream on a dashboard that is constantly being viewed, like a wall panel dashboard. You can check proper operation by ensuring that the "Sleep status" entity will go to "Sleeping" if the battery camera is not being actively used.
+
+The following battery-powered models have been tested and confirmed to work through the Reolink Home Hub:
+
+- [Argus Eco Ultra](https://reolink.com/product/argus-eco-ultra/)
+- [Argus Track](https://reolink.com/product/argus-track/)
+- [Reolink Doorbell Battery](https://reolink.com/roadmap/)
+
+Reolink provides [this larger list of battery camera models](https://support.reolink.com/hc/en-us/articles/32379509281561-Reolink-Home-Hub-Compatibility/) which are compatible with the Home Hub and should work with Home Assistant.
+
+### Models only compatible using a NVR/Home Hub
The following models are lacking the HTTP web server API and can, therefore, not work directly with this integration.
-However, these cameras can work with this integration through an NVR in which the NVR is connected to Home Assistant.
+However, these cameras can work with this integration through an NVR or Home Hub in which the NVR/Home Hub is connected to Home Assistant.
- E1 Pro
- E1
diff --git a/source/_integrations/smtp.markdown b/source/_integrations/smtp.markdown
index d89b6be3e19..b965856b631 100644
--- a/source/_integrations/smtp.markdown
+++ b/source/_integrations/smtp.markdown
@@ -105,7 +105,7 @@ A notify integration will be created using the name without spaces. In the above
mode: single
```
-The optional `target` field is used to specify recipient(s) for this specific service call. When `target` field is not used, this message will be sent to default recipient(s), in this example, morning@example.com.
+The optional `target` field is used to specify recipient(s) for this specific service call. When `target` field is not used, this message will be sent to default recipient(s), specified in the `recipient` part of the smtp notifier in `configuration.yaml`. Line breaks can be added in the body part of the email by using `\r\n`, for instance `message: "Rise and shine\r\n\r\nIt's a brand new day!"`
Another example attaching images stored locally in a script:
diff --git a/source/_integrations/tessie.markdown b/source/_integrations/tessie.markdown
index cae04d9e927..fad1bc5c545 100644
--- a/source/_integrations/tessie.markdown
+++ b/source/_integrations/tessie.markdown
@@ -39,7 +39,7 @@ The Tessie integration exposes various commands and sensors from the Tesla vehic
## Prerequisites
-You must have a [Tessie](https://my.tessie.com/) account and [access token](https://my.tessie.com/settings/api).
+You must have a [Tessie](https://my.tessie.com/) account, generate a [Tessie Access Token](https://my.tessie.com/settings/api) and grant Tessie access to your Tesla vehicle by generating a [Tesla Virtual Key](https://www.tesla.com/_ak/tessie.com).
{% include integrations/config_flow.md %}
diff --git a/source/_integrations/yalexs_ble.markdown b/source/_integrations/yalexs_ble.markdown
index 9f3e212e167..e8eeeac03ed 100644
--- a/source/_integrations/yalexs_ble.markdown
+++ b/source/_integrations/yalexs_ble.markdown
@@ -94,13 +94,13 @@ The iOS app will only save the offline key to your device's filesystem if Auto-U
The Android app will only save the offline key to your device's filesystem if Auto-Unlock has been enabled and used at least once. Auto-Unlock can be disabled once the key has been loaded.
-Root access is required to read the `key` and `slot` stored in `/data/data/com.august.luna/shared_prefs/PeripheralInfoCache.xml`
+Root access is required to copy the `ModelDatabase.db` from `/data/data/com.august.bennu/databases`. Once copied, you can use [DB Browser for SQLite](https://sqlitebrowser.org/) to open the `ModelDatabase.db`, navigate to the table `LockData` and find the column `offlineKeys`. There, you will find a JSON that includes the `key` and `slot` properties.
### Android - Yale Home
The Android app will only save the offline key to your device's filesystem if Auto-Unlock has been enabled and used at least once. Auto-Unlock can be disabled once the key has been loaded.
-Root access is required to copy the `ModelDatabase.sql` from `/data/data/com.assaabloy.yale/databases`. Once copied, you can use [DB Broser for SQLite](https://sqlitebrowser.org/) to open the `ModelDatabase.sql`, navigate to the table `LockData` and find the column `offlineKeys`.There, you will find a JSON that includes the `key` and `slot` properties.
+Root access is required to copy the `ModelDatabase.sql` from `/data/data/com.assaabloy.yale/databases`. Once copied, you can use [DB Browser for SQLite](https://sqlitebrowser.org/) to open the `ModelDatabase.sql`, navigate to the table `LockData` and find the column `offlineKeys`. There, you will find a JSON that includes the `key` and `slot` properties.
## Troubleshooting
diff --git a/source/_integrations/zha.markdown b/source/_integrations/zha.markdown
index 7d30aca1752..c01a3015295 100644
--- a/source/_integrations/zha.markdown
+++ b/source/_integrations/zha.markdown
@@ -222,6 +222,18 @@ Some devices can be auto-discovered, which can simplify the ZHA setup process. T
Additional devices in the [Known working Zigbee radio modules](#known-working-zigbee-radio-modules) list may be discoverable, however, only devices that have been confirmed discoverable are listed above.
+### OTA updates of Zigbee device firmware
+
+The ZHA integration has the ability to perform OTA (over-the-air) firmware updates of Zigbee devices. This feature is enabled by default. As it uses standard [Update](/integrations/update/) entities in Home Assistant, users will get a UI notification if and when an OTA firmware update is available for a specific device, with an option to initiate the update or ignore that specific update for the device.
+
+To see OTA updates for a device, it's required that it both supports OTA updates and that firmware images for the device are publicly provided by the manufacturer. For this reason, ZHA currently only includes OTA providers for a few manufacturers that provide these updates publicly. This includes IKEA, Inovelli, Ledvacnce/OSRAM, SALUS/Computime, Sonoff/iTead, and Third Reality.
+
+
+
+Before updating a device, you should search for any disadvantages or if you even need to install an available update. Some firmware updates can break features you might use (e.g. group binding for IKEA devices). Some updates might also require changes to ZHA. In rare cases, you can even brick devices by installing a firmware update.
+
+
+
## Configuration - YAML
For more advanced configuration, you can modify {% term "`configuration.yaml`" %} and restart Home Assistant
@@ -242,46 +254,26 @@ custom_quirks_path:
type: string
{% endconfiguration %}
-### OTA firmware updates
+### Advanced OTA configuration
-The ZHA {% term integration %} has the ability to automatically download and perform OTA (Over-The-Air) firmware updates of Zigbee devices if the OTA firmware provider source URL for updates is available. OTA firmware updating is set to disabled (`false`) in the configuration by default.
+The default configuration for OTA firmware updates is chosen by ZHA developers, so normal users should not need to change any configuration. Most of the config options listed in the zigpy section are just meant for development or advanced users.
-Online OTA providers for firmware updates are currently only available for IKEA, LEDVANCE/OSRAM, SALUS/Computime, and INOVELLI devices. Support for OTA updates from other manufacturers could be supported in the future if they publish their firmware images publicly.
+Further advanced configuration options are only provided in the [zigpy project's developers documentation](https://github.com/zigpy/zigpy).
-To enable OTA firmware updates for the ZHA {% term integration %} you need to add the following configuration to your {% term "`configuration.yaml`" %} and restart Home Assistant:
+However, if you want to disable OTA updates for a specific manufacturer, you can add the following lines to your `configuration.yaml` and restart Home Assistant.
```yaml
zha:
zigpy_config:
ota:
- ikea_provider: true # Auto update Trådfri devices
- ledvance_provider: true # Auto update LEDVANCE/OSRAM devices
- salus_provider: true # Auto update SALUS/Computime devices
- inovelli_provider: true # Auto update INOVELLI devices
- thirdreality_provider: true # Auto update 3REALITY devices
- #otau_directory: /path/to/your/ota/folder # Utilize .ota files to update everything else
+ ikea_provider: false # Disable OTA update downloads for Trådfri devices
+ inovelli_provider: false # Disable OTA update downloads for INOVELLI devices
+ ledvance_provider: false # Disable OTA update downloads for LEDVANCE/OSRAM devices
+ salus_provider: false # Disable OTA update downloads for SALUS/Computime devices
+ sonoff_provider: false # Disable OTA update downloads for Sonoff (ITead) devices
+ thirdreality_provider: false # Disable OTA update downloads for 3REALITY devices
```
-You can choose if the IKEA, LEDVANCE, SALUS, INOVELLI or THIRDREALITY provider should be set to enabled (`true`) or disabled (`false`) individually. After the OTA firmware upgrades are finished, you can set these to `false` again if you do not want ZHA to automatically download and perform OTA firmware upgrades in the future.
-
-Note that the `otau_directory` setting is optional and can be used for any firmware files you have downloaded yourself, for any device type and manufacturer. For example, Philips Hue firmwares manually downloaded from [here](https://github.com/Koenkk/zigbee-OTA/blob/master/index.json) and/or [here](https://github.com/dresden-elektronik/deconz-rest-plugin/wiki/OTA-Image-Types---Firmware-versions) added to the `otau_directory` can be flashed, although a manual `zha.issue_zigbee_cluster_command` command currently (as of 2021.3.3) must be issued against the IEEE of the Philips Hue device under Developer Tools->Services, e.g.:
-
-```yaml
-service: zha.issue_zigbee_cluster_command
-data:
- ieee: "xx:xx:xx:xx:xx:xx:xx:xx"
- endpoint_id: 1
- cluster_id: 25
- cluster_type: out
- command: 0
- command_type: client
- args:
- - 0
- - 100
-```
-
-Note: `cluster_id: 25` may also be `cluster_id: 0x0019`. The two are synonymous.
-
### Defining Zigbee channel to use
Tip! Before considering to change to an other Zigbee channel on an existing Zigbee network, it is highly recommended that you read through the two segments under the [troubleshooting](#troubleshooting) section below about "*Best practices to avoid pairing/connection difficulties*" and "*Zigbee interference avoidance and network range/coverage optimization*". These sections provide prerequisite information and advice on how to achieve the best possible Zigbee network in your environment.
@@ -425,16 +417,29 @@ In this theoretical example, a CC2652-based Zigbee coordinator has three CC2530
In practice, you will likely need to add a lot more Zigbee router devices than in this example in order to extend the coverage of the network to reach that many devices.
-## Binding and unbinding
+## Zigbee groups and binding devices
-ZHA supports binding and unbinding. Binding is an action in Zigbee which defines relations between two Zigbee devices, specific endpoints, and cluster id. It provides a mechanism for attaching an endpoint on one Zigbee node to one or more endpoints on another Zigbee node or Zigbee group (a group of Zigbee devices).
+ZHA supports Zigbee groups and binding devices to each other. These features can be used separately or combined. For example, binding a remote to a bulb or group has the benefit of faster response time and smoother control, as the remote directly controls the bound devices.
-Binding is a "target destination" in form of a device address or group ID, endpoint, and cluster. For example, binding a Zigbee device like a remote to a Zigbee lightbulb, switch or group of lightbulbs allows direct control of the "target" device (light, switch, shade) from the "remote" Zigbee device, bypassing ZHA. This means that the remote can control the lightbulb/group of lightbulbs even when the Zigbee coordinator is not available.
-Binding is only supported within the same cluster, for example, "output cluster id 6" (on/off cluster) of a remote, can be only bound to an "input cluster id 6" on the target device -- light, switch.
+### Zigbee group
-Note that not all devices support binding as it depends on the Zigbee implementation of the device itself. Also, by default ZHA binds remotes to the coordinator, so the coordinator can receive ZCL commands from the remotes and originate zha_events. However, some remotes, for example, the Philips RWL021 can only be bound to a single destination and it is not possible to make this switch to bind to other destinations like a device or groups unless you first unbind the remote from the coordinator. After you unbind the remote from the ZHA coordinator you can then bind it directly to any other Zigbee device or a group.
+A Zigbee group enables the grouping of multiple Zigbee lights, switches, and fans. This allows you to control those devices with only one command/entity.
-Binding a remote directly to a bulb or group has the benefit of faster response time and smoother control. This greatly improves user feedback experience functions like dimming as the remote then directly dims the lightbulb and thus does not have to make the software roundtrip via the ZHA coordinator.
+
+Note that while using a native Zigbee group instead of Home Assistant's [Group](/integrations/group/) integration can improve the visual responsiveness, the broadcast commands issued can flood the Zigbee network if issued repeatedly.
+
+
+To create a Zigbee Group, press the "Configure" button on the ZHA integration config page. At the top, choose "Groups" and select "Create Group". Set a group name and choose which devices to include in the group.
+
+The group should consist of products of the same device type (e.g. all lights, switches, or fans), and at least two devices must be added to a Zigbee group before a group entity is created.
+
+### Zigbee binding and unbinding
+
+Binding is an on-device feature for Zigbee devices. It provides a mechanism for attaching an endpoint of one Zigbee device to an endpoint of another Zigbee device or to a Zigbee group.
+
+For example, binding a "target destination" Zigbee device like a remote to a Zigbee light bulb, switch or group of light bulbs allows direct control of the "target" device (light, switch, shade) from the "remote" Zigbee device, bypassing ZHA. This means that the remote can control the light bulb or group even when ZHA is not active.
+
+Note that not all devices support binding. By default, ZHA binds remotes to the coordinator, so click events are forwarded to HA. As some remotes can only be bound to a single destination, you might need to unbind the remote from the coordinator before binding it to another device or group.
## Zigbee backup and restore in ZHA
diff --git a/source/_posts/2024-06-05-release-20246.markdown b/source/_posts/2024-06-05-release-20246.markdown
index b59967029d1..473c57862ac 100644
--- a/source/_posts/2024-06-05-release-20246.markdown
+++ b/source/_posts/2024-06-05-release-20246.markdown
@@ -68,6 +68,7 @@ Enjoy the release!
- [2024.6.1 - June 7](#202461---june-7)
- [2024.6.2 - June 11](#202462---june-11)
- [2024.6.3 - June 15](#202463---june-15)
+ - [2024.6.4 - June 21](#202464---june-21)
- [Need help? Join the community!](#need-help-join-the-community)
- [Backward-incompatible changes](#backward-incompatible-changes)
- [All changes](#all-changes)
@@ -800,6 +801,82 @@ every Friday.
[@starkillerOG]: https://github.com/starkillerOG
[@tronikos]: https://github.com/tronikos
+### 2024.6.4 - June 21
+
+- UniFi temp fix to handle runtime data ([@Kane610] - [#120031])
+- Fix for Synology DSM shared images ([@lodesmets] - [#117695])
+- Fix Jewish Calendar unique id migration ([@tsvi] - [#119683])
+- Fix model import in Spotify ([@jjlawren] - [#119747])
+- Add Kasa Dimmer to Matter TRANSITION_BLOCKLIST ([@dubstomp] - [#119751])
+- Bump py-canary to v0.5.4 ([@0bmay] - [#119793])
+- Pin tenacity to 8.3.0 ([@cdce8p] - [#119815])
+- Bump aiozoneinfo to 0.2.0 ([@bdraco] - [#119845])
+- Fix up ecobee windspeed unit ([@bjpetit] - [#119870])
+- Bump hdate to 0.10.9 ([@tsvi] - [#119887])
+- Bump weatherflow4py to 0.2.21 ([@jeeftor] - [#119889])
+- Bump babel to 2.15.0 ([@gjohansson-ST] - [#119006])
+- Bump python-holidays to 0.51 ([@gjohansson-ST] - [#119918])
+- Fix Onkyo zone volume ([@arturpragacz] - [#119949])
+- Bump plugwise to v0.37.4.1 ([@bouwew] - [#119963])
+- Always create a new HomeAssistant object when falling back to recovery mode ([@emontnemery] - [#119969])
+- Fix Hydrawise volume unit bug ([@thomaskistler] - [#119988])
+- Fix songpal crash for soundbars without sound modes ([@BestPig] - [#119999])
+- Bump env-canada to 0.6.3 ([@gwww] - [#120035])
+- Bump aioimaplib to 1.1.0 ([@jbouwh] - [#120045])
+- Update AEMET-OpenData to v0.5.2 ([@Noltari] - [#120065])
+- Bump intents to 2024.6.21 ([@synesthesiam] - [#120106])
+- Update pydrawise to 2024.6.4 ([@thomaskistler] - [#119868])
+
+[#117695]: https://github.com/home-assistant/core/pull/117695
+[#118400]: https://github.com/home-assistant/core/pull/118400
+[#119006]: https://github.com/home-assistant/core/pull/119006
+[#119096]: https://github.com/home-assistant/core/pull/119096
+[#119376]: https://github.com/home-assistant/core/pull/119376
+[#119683]: https://github.com/home-assistant/core/pull/119683
+[#119742]: https://github.com/home-assistant/core/pull/119742
+[#119747]: https://github.com/home-assistant/core/pull/119747
+[#119751]: https://github.com/home-assistant/core/pull/119751
+[#119793]: https://github.com/home-assistant/core/pull/119793
+[#119815]: https://github.com/home-assistant/core/pull/119815
+[#119845]: https://github.com/home-assistant/core/pull/119845
+[#119868]: https://github.com/home-assistant/core/pull/119868
+[#119870]: https://github.com/home-assistant/core/pull/119870
+[#119887]: https://github.com/home-assistant/core/pull/119887
+[#119889]: https://github.com/home-assistant/core/pull/119889
+[#119918]: https://github.com/home-assistant/core/pull/119918
+[#119949]: https://github.com/home-assistant/core/pull/119949
+[#119963]: https://github.com/home-assistant/core/pull/119963
+[#119969]: https://github.com/home-assistant/core/pull/119969
+[#119988]: https://github.com/home-assistant/core/pull/119988
+[#119999]: https://github.com/home-assistant/core/pull/119999
+[#120028]: https://github.com/home-assistant/core/pull/120028
+[#120031]: https://github.com/home-assistant/core/pull/120031
+[#120035]: https://github.com/home-assistant/core/pull/120035
+[#120045]: https://github.com/home-assistant/core/pull/120045
+[#120065]: https://github.com/home-assistant/core/pull/120065
+[#120106]: https://github.com/home-assistant/core/pull/120106
+[@0bmay]: https://github.com/0bmay
+[@BestPig]: https://github.com/BestPig
+[@Kane610]: https://github.com/Kane610
+[@Noltari]: https://github.com/Noltari
+[@arturpragacz]: https://github.com/arturpragacz
+[@bdraco]: https://github.com/bdraco
+[@bjpetit]: https://github.com/bjpetit
+[@bouwew]: https://github.com/bouwew
+[@cdce8p]: https://github.com/cdce8p
+[@dubstomp]: https://github.com/dubstomp
+[@emontnemery]: https://github.com/emontnemery
+[@frenck]: https://github.com/frenck
+[@gjohansson-ST]: https://github.com/gjohansson-ST
+[@gwww]: https://github.com/gwww
+[@jbouwh]: https://github.com/jbouwh
+[@jeeftor]: https://github.com/jeeftor
+[@jjlawren]: https://github.com/jjlawren
+[@lodesmets]: https://github.com/lodesmets
+[@synesthesiam]: https://github.com/synesthesiam
+[@thomaskistler]: https://github.com/thomaskistler
+[@tsvi]: https://github.com/tsvi
+
## Need help? Join the community!
Home Assistant has a great community of users who are all more than willing
diff --git a/source/blueprints/integrations/conversation_notify_agent_agenda.yaml b/source/blueprints/integrations/conversation_notify_agent_agenda.yaml
new file mode 100644
index 00000000000..0aab5d650c3
--- /dev/null
+++ b/source/blueprints/integrations/conversation_notify_agent_agenda.yaml
@@ -0,0 +1,151 @@
+## Copied on June 21, 2024 from allenporter: https://raw.githubusercontent.com/allenporter/home-assistant-config/f35038615cf022b989f65a640ff342195dddae5d/config/blueprints/automation/allenporter/notify_agent_agenda.yaml
+blueprint:
+ name: Conversation agent Agenda Notification
+ description:
+ Conversation agent generates a notification based on the upcoming calendar
+ agenda, location, and weather information.
+ domain: automation
+ input:
+ notify_time:
+ name: Notification time
+ description: Time the automation is triggered to send the notification.
+ selector:
+ time: {}
+ default: 07:00:00
+ notify_service:
+ name: Notify service name
+ description:
+ The name of the notify service where the notification should be
+ sent.
+ selector:
+ text: {}
+ default: notify.notify
+ notify_target:
+ name: Notify target
+ description: The target of the notify service.
+ selector:
+ text: {}
+ default:
+ calendar_entity:
+ name: Calendar
+ description: The calendar entity to use for finding upcoming calendar events.
+ selector:
+ entity:
+ multiple: false
+ filter:
+ - domain:
+ - calendar
+ calendar_duration:
+ name: Calendar Event duration
+ description: How many hours ahead to look for upcoming calendar events.
+ selector:
+ duration:
+ default:
+ hours: 18
+ weather_entity:
+ name: Weather Entity
+ description: The weather entity to use for upcoming weather forecast.
+ selector:
+ entity:
+ multiple: false
+ filter:
+ - domain:
+ - weather
+ zone_entity:
+ name: Home Zone Entity
+ description:
+ The zone entity to use to determine approximate location for understanding
+ typical weather.
+ selector:
+ entity:
+ multiple: false
+ filter:
+ - domain:
+ - zone
+ conversation_agent:
+ name: Conversation Agent
+ selector:
+ conversation_agent:
+ prompt:
+ name: Conversation Agent Prompt
+ selector:
+ text:
+ multiline: true
+ type: text
+ default: |-
+ Please generate text for a notification that will be sent to the users
+ smartphone with helpful information.
+
+ You are a helpful personal agent that generates text for the user:
+ - Your answers are helpful, friendly, warm, insightful.
+ - Your answers are not technical, and do not include Home Assistant internal details such as entities in responses.
+ - Your messages help the user prepare for their day, for example:
+ - Making note of unusual weather for the location and time of year (but not mundane details like "0% chance of precipitation")
+ - How much time remaining until their first meeting
+ - Anything that may be special or unique, such as celebrating a birthday
+
+trigger:
+ platform: time
+ at: !input notify_time
+
+action:
+ - variables:
+ weather_entity: !input weather_entity
+ calendar_entity: !input calendar_entity
+ zone_entity: !input zone_entity
+ calendar_duration: !input calendar_duration
+ prompt: !input prompt
+ - alias: Fetch Weather Forecast
+ service: weather.get_forecasts
+ data:
+ type: hourly
+ target:
+ entity_id:
+ - "{{ weather_entity }}"
+ response_variable: daily_forecast
+ - variables:
+ forecast_entity: "{{ daily_forecast[weather_entity] }}"
+ forecast: "{{ forecast_entity.forecast[0] }}"
+ - alias: Fetch Calendar Agenda
+ service: calendar.get_events
+ data:
+ duration: !input calendar_duration
+ target:
+ entity_id: !input calendar_entity
+ response_variable: events_response
+ - alias: "Conversation Agent Notification Text"
+ service: conversation.process
+ data:
+ text: |-
+ Time: {{ now().strftime("%A %B %d %H:%M %p") }}
+ {%- if weather_entity is defined %}
+ {%- set temperature_unit = state_attr(weather_entity, 'temperature_unit') -%}
+ Forecast: {{ forecast.condition }} ({{ forecast.temperature }}{{ temperature_unit }}, {{ forecast.precipitation }}% precipitation)
+ {%- endif %}
+
+ Calendar "{{ state_attr(calendar_entity, 'friendly_name') }}" events for the next {{ calendar_duration.hours }}:
+ {%- set agenda = (events_response | items | first)[1] %}
+ {%- if agenda.events %}
+ {%- for event in agenda.events %}
+ - Summary: {{ event.summary }}
+ Start-End: {% if event.start is defined %}{{ event.start }} to {{ event.end }}{% else %}All Day{% endif %}
+ {%- if event.description is defined %}
+ Description: {{ event.description }}
+ {% endif -%}
+ {%- if event.location is defined %}
+ Location: {{ event.location }}
+ {% endif -%}
+ {%- endfor %}
+ {%- else %}
+ - No upcoming events.
+ {%- endif %}
+
+ {{ prompt }}
+ agent_id: !input conversation_agent
+ response_variable: agent
+ - alias: "Send notification"
+ service: !input notify_service
+ data:
+ target: !input notify_target
+ title: "{{ now().strftime('%A') }} Agenda"
+ message: "{{ agent.response.speech.plain.speech }}"
\ No newline at end of file
diff --git a/source/changelogs/core-2024.6.markdown b/source/changelogs/core-2024.6.markdown
index f4aaef38ad1..e7b68b96522 100644
--- a/source/changelogs/core-2024.6.markdown
+++ b/source/changelogs/core-2024.6.markdown
@@ -1421,6 +1421,82 @@ For a summary in a more readable format:
[@starkillerOG]: https://github.com/starkillerOG
[@tronikos]: https://github.com/tronikos
+## Release 2024.6.4 - June 21
+
+- UniFi temp fix to handle runtime data ([@Kane610] - [#120031])
+- Fix for Synology DSM shared images ([@lodesmets] - [#117695])
+- Fix Jewish Calendar unique id migration ([@tsvi] - [#119683])
+- Fix model import in Spotify ([@jjlawren] - [#119747])
+- Add Kasa Dimmer to Matter TRANSITION_BLOCKLIST ([@dubstomp] - [#119751])
+- Bump py-canary to v0.5.4 ([@0bmay] - [#119793])
+- Pin tenacity to 8.3.0 ([@cdce8p] - [#119815])
+- Bump aiozoneinfo to 0.2.0 ([@bdraco] - [#119845])
+- Fix up ecobee windspeed unit ([@bjpetit] - [#119870])
+- Bump hdate to 0.10.9 ([@tsvi] - [#119887])
+- Bump weatherflow4py to 0.2.21 ([@jeeftor] - [#119889])
+- Bump babel to 2.15.0 ([@gjohansson-ST] - [#119006])
+- Bump python-holidays to 0.51 ([@gjohansson-ST] - [#119918])
+- Fix Onkyo zone volume ([@arturpragacz] - [#119949])
+- Bump plugwise to v0.37.4.1 ([@bouwew] - [#119963])
+- Always create a new HomeAssistant object when falling back to recovery mode ([@emontnemery] - [#119969])
+- Fix Hydrawise volume unit bug ([@thomaskistler] - [#119988])
+- Fix songpal crash for soundbars without sound modes ([@BestPig] - [#119999])
+- Bump env-canada to 0.6.3 ([@gwww] - [#120035])
+- Bump aioimaplib to 1.1.0 ([@jbouwh] - [#120045])
+- Update AEMET-OpenData to v0.5.2 ([@Noltari] - [#120065])
+- Bump intents to 2024.6.21 ([@synesthesiam] - [#120106])
+- Update pydrawise to 2024.6.4 ([@thomaskistler] - [#119868])
+
+[#117695]: https://github.com/home-assistant/core/pull/117695
+[#118400]: https://github.com/home-assistant/core/pull/118400
+[#119006]: https://github.com/home-assistant/core/pull/119006
+[#119096]: https://github.com/home-assistant/core/pull/119096
+[#119376]: https://github.com/home-assistant/core/pull/119376
+[#119683]: https://github.com/home-assistant/core/pull/119683
+[#119742]: https://github.com/home-assistant/core/pull/119742
+[#119747]: https://github.com/home-assistant/core/pull/119747
+[#119751]: https://github.com/home-assistant/core/pull/119751
+[#119793]: https://github.com/home-assistant/core/pull/119793
+[#119815]: https://github.com/home-assistant/core/pull/119815
+[#119845]: https://github.com/home-assistant/core/pull/119845
+[#119868]: https://github.com/home-assistant/core/pull/119868
+[#119870]: https://github.com/home-assistant/core/pull/119870
+[#119887]: https://github.com/home-assistant/core/pull/119887
+[#119889]: https://github.com/home-assistant/core/pull/119889
+[#119918]: https://github.com/home-assistant/core/pull/119918
+[#119949]: https://github.com/home-assistant/core/pull/119949
+[#119963]: https://github.com/home-assistant/core/pull/119963
+[#119969]: https://github.com/home-assistant/core/pull/119969
+[#119988]: https://github.com/home-assistant/core/pull/119988
+[#119999]: https://github.com/home-assistant/core/pull/119999
+[#120028]: https://github.com/home-assistant/core/pull/120028
+[#120031]: https://github.com/home-assistant/core/pull/120031
+[#120035]: https://github.com/home-assistant/core/pull/120035
+[#120045]: https://github.com/home-assistant/core/pull/120045
+[#120065]: https://github.com/home-assistant/core/pull/120065
+[#120106]: https://github.com/home-assistant/core/pull/120106
+[@0bmay]: https://github.com/0bmay
+[@BestPig]: https://github.com/BestPig
+[@Kane610]: https://github.com/Kane610
+[@Noltari]: https://github.com/Noltari
+[@arturpragacz]: https://github.com/arturpragacz
+[@bdraco]: https://github.com/bdraco
+[@bjpetit]: https://github.com/bjpetit
+[@bouwew]: https://github.com/bouwew
+[@cdce8p]: https://github.com/cdce8p
+[@dubstomp]: https://github.com/dubstomp
+[@emontnemery]: https://github.com/emontnemery
+[@frenck]: https://github.com/frenck
+[@gjohansson-ST]: https://github.com/gjohansson-ST
+[@gwww]: https://github.com/gwww
+[@jbouwh]: https://github.com/jbouwh
+[@jeeftor]: https://github.com/jeeftor
+[@jjlawren]: https://github.com/jjlawren
+[@lodesmets]: https://github.com/lodesmets
+[@synesthesiam]: https://github.com/synesthesiam
+[@thomaskistler]: https://github.com/thomaskistler
+[@tsvi]: https://github.com/tsvi
+
[#101731]: https://github.com/home-assistant/core/pull/101731
[#101786]: https://github.com/home-assistant/core/pull/101786
[#103844]: https://github.com/home-assistant/core/pull/103844
diff --git a/source/common-tasks/os.markdown b/source/common-tasks/os.markdown
index 229c107f940..91a9c8a0d83 100644
--- a/source/common-tasks/os.markdown
+++ b/source/common-tasks/os.markdown
@@ -83,7 +83,9 @@ You can manually define that the previous boot slot is used. This can be useful
{% include common-tasks/third-party-addons.md %}
{% include common-tasks/configuration_check.md %}
-## Home Assistant Versions
+## Home Assistant versions
+
+To see which version your system is running, go to {% my info title="**Settings** > **About**" %}.
{% include common-tasks/specific_version.md %}
{% include common-tasks/beta_version.md %}
diff --git a/source/common-tasks/supervised.markdown b/source/common-tasks/supervised.markdown
index f1032210cd4..74a9c6101fa 100644
--- a/source/common-tasks/supervised.markdown
+++ b/source/common-tasks/supervised.markdown
@@ -20,7 +20,9 @@ related:
{% include common-tasks/third-party-addons.md %}
{% include common-tasks/configuration_check.md %}
-## Home Assistant Versions
+## Home Assistant versions
+
+To see which version your system is running, go to {% my info title="**Settings** > **About**" %}.
{% include common-tasks/specific_version.md %}
{% include common-tasks/beta_version.md %}
diff --git a/source/help/reporting_issues.markdown b/source/help/reporting_issues.markdown
index c07e5c9f4ca..f37c8cc5784 100644
--- a/source/help/reporting_issues.markdown
+++ b/source/help/reporting_issues.markdown
@@ -2,6 +2,15 @@
title: "Reporting issues"
description: "Reporting issues about Home Assistant"
sidebar: false
+related:
+ - docs: /docs/configuration/
+ title: Configuration.yaml file
+ - docs: /docs/configuration/troubleshooting/
+ title: Enable debug logging
+ - url: https://community.home-assistant.io/
+ title: Forum
+ - docs: /help/
+ title: Bug trackers
---
If you have an installation, a setup or a configuration issue, please use our [Forum](https://community.home-assistant.io/) to get help. We have a big community which will help you if they can.
@@ -43,7 +52,7 @@ The information contained in the generated diagnostics file is redacted to avoid
### Problem-relevant `configuration.yaml` entries
-To exclude configuration issues and allow the developers to quickly test, and perhaps reproduce, your issue, add the relevant part of your `configuration.yaml` file. This file is located in your [configuration folder](/docs/configuration/).
+To exclude configuration issues and allow the developers to quickly test, and perhaps reproduce, your issue, add the relevant part of your {% term "`configuration.yaml`" %} file. This file is located in your [configuration folder](/docs/configuration/).
```yaml
sensor:
@@ -54,7 +63,7 @@ Make sure that you don't post your username, password, API key, access token or
### Traceback and log information (if applicable)
-If things go wrong, there will be a so-called traceback or an error message {% my logs title="in your log" %}. Please include this. It starts with **Traceback** and can contain information about where the error was triggered in the code.
+If things go wrong, there will be a so-called traceback or an error message in your logs under {% my logs title="**Settings** > **System** > **Logs**" %}. Please include this. It starts with **Traceback** and can contain information about where the error was triggered in the code.
```bash
Traceback (most recent call last):
@@ -65,6 +74,8 @@ In some cases, it is also necessary to [enable debug logging](/docs/configuratio
Enabling this will instruct Home Assistant to log a lot of fine-grained information about the integration. This is helpful for debugging and fixing the issue.
In contrast to the diagnostics information, debug logs are not automatically redacted. Make sure to include only the parts you think are relevant to the issue.
+Look at the `home-assistant.log` file in the [configuration folder](/docs/configuration/) and see if there are any errors related to your integration.
+
### Additional information
This section can contain additional details or other observation. Often the little things can help as well.
diff --git a/source/images/integrations/aladdin_connect/oauth-screenshot.png b/source/images/integrations/aladdin_connect/oauth-screenshot.png
new file mode 100644
index 00000000000..3d10dc62ba5
Binary files /dev/null and b/source/images/integrations/aladdin_connect/oauth-screenshot.png differ
diff --git a/source/voice_control/assist_daily_summary.markdown b/source/voice_control/assist_daily_summary.markdown
index b63a6c20e1f..07b25b9cdaf 100644
--- a/source/voice_control/assist_daily_summary.markdown
+++ b/source/voice_control/assist_daily_summary.markdown
@@ -82,7 +82,8 @@ We are using a blueprint (courtesy of [@allenporter]) that polls calendar events
1. To import the blueprint, select the button below:
- {% my blueprint_import badge blueprint_url="https://www.home-assistant.io/blueprints/blog/2023-07/notify_agent_agenda.yaml" %}
+ {% my blueprint_import badge blueprint_url="https://www.home-assistant.io/blueprints/integrations/conversation_notify_agent_agenda.yaml" %}
+
2. Select **Preview**, then select **Import blueprint**.
3. Select the blueprint **Conversation agent agenda notification** from the list.
4. Enter the values for each category.