{% icon "mdi:comment-processing-outline" %} {% active_link /voice_control/ Assist up and running %}
diff --git a/source/_includes/common-tasks/data_disk.md b/source/_includes/common-tasks/data_disk.md
index ab6ddbcc311..0909abd5200 100644
--- a/source/_includes/common-tasks/data_disk.md
+++ b/source/_includes/common-tasks/data_disk.md
@@ -11,7 +11,7 @@ All data on the target disk will be overwritten!
{% endcaution %}
{% important %}
-The storage ca pacity of the external data disk must be larger than the storage capacity of the existing (boot) disk.
+The storage capacity of the external data disk must be larger than the storage capacity of the existing (boot) disk.
{% endimportant %}
{% important %}
diff --git a/source/_includes/custom/features.html b/source/_includes/custom/features.html
index 5a89e8f991b..f4d118a27e2 100644
--- a/source/_includes/custom/features.html
+++ b/source/_includes/custom/features.html
@@ -40,6 +40,43 @@
EXPLORE AUTOMATIONS
+
+
+ Home Assistant dashboards allow you to display information about your smart home. Dashboards are customizable and provide a powerful way to manage your home from your mobile or desktop.
+
+
+
+
Easily create and customize your dashboards with drag-and-drop.
+
Different card types to visualize your data and control your smart home devices.
+ Assist allows you to control Home Assistant using natural language. It is built on top of an open voice foundation and powered by knowledge provided by our community.
+
+
+
+
Customize your voice assistant and experiment with AI conversations.
+
Use Assist everywhere on your mobile phone, tablets, smartwatches, and even old-school telephones.
+
\ No newline at end of file
diff --git a/source/_includes/custom/news.html b/source/_includes/custom/news.html
new file mode 100644
index 00000000000..81983415327
--- /dev/null
+++ b/source/_includes/custom/news.html
@@ -0,0 +1,193 @@
+
+
+
+
+
+
+
{% icon "mdi:newspaper-variant-multiple" %} Recent Blog Posts
Trusted by home automation experts and more than a million households.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/source/_includes/custom/welcome.html b/source/_includes/custom/welcome.html
index b6e3a3ebe08..6c432c0dcb3 100644
--- a/source/_includes/custom/welcome.html
+++ b/source/_includes/custom/welcome.html
@@ -1,6 +1,6 @@
Awaken your home
- {{ site.description }}
+ Open source home automation that puts local control and privacy first. Powered by a worldwide community of tinkerers and DIY enthusiasts.
diff --git a/source/_integrations/acaia.markdown b/source/_integrations/acaia.markdown
index 6dfe4c8d934..c9aea0d6b65 100644
--- a/source/_integrations/acaia.markdown
+++ b/source/_integrations/acaia.markdown
@@ -12,6 +12,7 @@ ha_domain: acaia
ha_platforms:
- binary_sensor
- button
+ - diagnostics
- sensor
ha_bluetooth: true
ha_codeowners:
@@ -23,7 +24,7 @@ The **Acaia** {% term integration %} allows you to control [Acaia](https://acaia
If your machine is within Bluetooth range to your Home Assistant host and the [Bluetooth](/integrations/bluetooth) integration is fully loaded, the scale should be discovered automatically. If you are configuring the device manually, your scale needs to be turned on during setup.
-Once the integration is setup, Home Assistant will try to connect to your scale every 15 seconds. This means there is sometimes a small delay between you turning the scale on and Home Assistant connecting to it.
+Once the integration is set up, Home Assistant will try to connect to your scale every 15 seconds. This means there is sometimes a small delay between you turning the scale on and Home Assistant connecting to it.
{% include integrations/config_flow.md %}
@@ -54,8 +55,10 @@ Device:
The following devices have been tested successfully with this integration:
-- Lunar (manufactured after 2021)
+- Lunar
- Pyxis
+- Pearl
+- Pearl S
If you have successfully tested this integration with another Acaia model, please let us know by enhancing this documentation, or by opening an issue in GitHub.
diff --git a/source/_integrations/accuweather.markdown b/source/_integrations/accuweather.markdown
index 130a7a0937a..d774586dab4 100644
--- a/source/_integrations/accuweather.markdown
+++ b/source/_integrations/accuweather.markdown
@@ -9,7 +9,6 @@ ha_config_flow: true
ha_codeowners:
- '@bieniu'
ha_domain: accuweather
-ha_quality_scale: platinum
ha_platforms:
- diagnostics
- sensor
diff --git a/source/_integrations/acer_projector.markdown b/source/_integrations/acer_projector.markdown
index f156f91af45..b6aea80c832 100644
--- a/source/_integrations/acer_projector.markdown
+++ b/source/_integrations/acer_projector.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `acer_projector` switch platform allows you to control the state of RS232 connected projectors from [Acer](https://www.acer.com/).
diff --git a/source/_integrations/actiontec.markdown b/source/_integrations/actiontec.markdown
index a61d58fab6b..636ceb182a2 100644
--- a/source/_integrations/actiontec.markdown
+++ b/source/_integrations/actiontec.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The **Actiontec** {% term integration %} allows you to detect presence by looking at devices connected to an [Actiontec](https://www.actiontec.com/) device.
diff --git a/source/_integrations/ads.markdown b/source/_integrations/ads.markdown
index e552014bf00..ca35f9251f2 100644
--- a/source/_integrations/ads.markdown
+++ b/source/_integrations/ads.markdown
@@ -26,6 +26,7 @@ related:
title: Configuration file
ha_codeowners:
- '@mrpasztoradam'
+ha_quality_scale: legacy
---
The ADS (automation device specification) describes a device-independent and fieldbus independent interface for communication between [Beckhoff](https://www.beckhoff.com/) automation devices running [TwinCAT](https://www.beckhoff.com/en-en/products/automation/twincat/) and other devices implementing this interface.
diff --git a/source/_integrations/advantage_air.markdown b/source/_integrations/advantage_air.markdown
index 33079df8502..45ec2fb5538 100644
--- a/source/_integrations/advantage_air.markdown
+++ b/source/_integrations/advantage_air.markdown
@@ -16,7 +16,6 @@ ha_config_flow: true
ha_codeowners:
- '@Bre77'
ha_domain: advantage_air
-ha_quality_scale: platinum
ha_platforms:
- binary_sensor
- climate
diff --git a/source/_integrations/airgradient.markdown b/source/_integrations/airgradient.markdown
index a760e9b67e8..10e6e9eecff 100644
--- a/source/_integrations/airgradient.markdown
+++ b/source/_integrations/airgradient.markdown
@@ -27,7 +27,7 @@ ha_zeroconf: true
The AirGradient integration will fetch data from your [AirGradient devices](https://www.airgradient.com/).
{% important %}
-In order for the device to be set up or discovered by Home Assistant, the firmware version should be at least 3.1.1.
+In order for the device to be set up or discovered by Home Assistant, the [firmware](https://www.airgradient.com/documentation/firmwares) version should be at least 3.1.1.
{% endimportant %}
{% include integrations/config_flow.md %}
diff --git a/source/_integrations/airly.markdown b/source/_integrations/airly.markdown
index ec0aad26d7b..67d2cb3fa12 100644
--- a/source/_integrations/airly.markdown
+++ b/source/_integrations/airly.markdown
@@ -9,7 +9,6 @@ ha_config_flow: true
ha_codeowners:
- '@bieniu'
ha_domain: airly
-ha_quality_scale: platinum
ha_platforms:
- diagnostics
- sensor
diff --git a/source/_integrations/alpha_vantage.markdown b/source/_integrations/alpha_vantage.markdown
index 32dbeefc073..c659bc62981 100644
--- a/source/_integrations/alpha_vantage.markdown
+++ b/source/_integrations/alpha_vantage.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `alpha_vantage` sensor platform uses [Alpha Vantage](https://www.alphavantage.co) to monitor the stock market. This platform also provides detail about exchange rates.
diff --git a/source/_integrations/amazon_polly.markdown b/source/_integrations/amazon_polly.markdown
index 9e552cb010e..6c41f8b4847 100644
--- a/source/_integrations/amazon_polly.markdown
+++ b/source/_integrations/amazon_polly.markdown
@@ -14,6 +14,7 @@ ha_codeowners:
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `amazon_polly` text-to-speech platform that works with [Amazon Polly](https://aws.amazon.com/polly/) to create the spoken output.
diff --git a/source/_integrations/amcrest.markdown b/source/_integrations/amcrest.markdown
index 10008bb9b6f..7acef1bc7e0 100644
--- a/source/_integrations/amcrest.markdown
+++ b/source/_integrations/amcrest.markdown
@@ -20,6 +20,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `amcrest` camera platform allows you to integrate your [Amcrest](https://amcrest.com/) or Dahua IP camera or doorbell in Home Assistant.
diff --git a/source/_integrations/ampio.markdown b/source/_integrations/ampio.markdown
index 939bee08844..865f946effe 100644
--- a/source/_integrations/ampio.markdown
+++ b/source/_integrations/ampio.markdown
@@ -13,6 +13,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `ampio` air quality platform will query the open data API of [ampio.pl](http://smog.ampio.pl/) to monitor air quality sensor station.
diff --git a/source/_integrations/androidtv_remote.markdown b/source/_integrations/androidtv_remote.markdown
index 8d6d9c23af4..73f6de751d6 100644
--- a/source/_integrations/androidtv_remote.markdown
+++ b/source/_integrations/androidtv_remote.markdown
@@ -10,7 +10,6 @@ ha_config_flow: true
ha_codeowners:
- '@tronikos'
- '@Drafteed'
-ha_quality_scale: platinum
ha_domain: androidtv_remote
ha_zeroconf: true
ha_platforms:
diff --git a/source/_integrations/anel_pwrctrl.markdown b/source/_integrations/anel_pwrctrl.markdown
index 88ec2658284..c96c36803ae 100644
--- a/source/_integrations/anel_pwrctrl.markdown
+++ b/source/_integrations/anel_pwrctrl.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `anel_pwrctrl` switch platform allows you to control [ANEL PwrCtrl](https://en.anel.eu/index.htm?src=/produkte/produkte.htm) devices on firmware 6.x and older. [ANEL PwrCtrl](https://en.anel.eu/index.htm?src=/produkte/produkte.htm) devices on firmware 7.x are not supported.
diff --git a/source/_integrations/anthropic.markdown b/source/_integrations/anthropic.markdown
index ec06105b0c6..cdc18254cdf 100644
--- a/source/_integrations/anthropic.markdown
+++ b/source/_integrations/anthropic.markdown
@@ -29,7 +29,7 @@ The **Anthropic** {% term integrations %} adds a conversation agent powered by [
Controlling Home Assistant is done by providing the AI access to the Assist API of Home Assistant. You can control what devices and entities it can access from the {% my voice_assistants title="exposed entities page" %}. The AI can provide you information about your devices and control them.
-Legal note: Anthropic currently limits the API usage to organizations only, more info here: [Can I use the Claude API for individual use?](https://support.anthropic.com/en/articles/8987200-can-i-use-the-claude-api-for-individual-use)
+Legal note: Individuals and hobbyists are welcome to use the Anthropic API [for personal use](https://support.anthropic.com/en/articles/8987200-can-i-use-the-claude-api-for-individual-use), however, please note that the use of the API is subject to their [Commercial Terms of Service](https://www.anthropic.com/legal/commercial-terms), regardless of whether you are an individual or representing a company.
This integration does not integrate with [sentence triggers](/docs/automation/trigger/#sentence-trigger).
@@ -49,29 +49,23 @@ The Anthropic API key is used to authenticate requests to the Anthropic API. To
{% include integrations/config_flow.md %}
{% include integrations/option_flow.md %}
+
{% configuration_basic %}
Instructions:
description: Instructions for the AI on how it should respond to your requests. It is written using [Home Assistant Templating](/docs/configuration/templating/).
-
Control Home Assistant:
description: If the model is allowed to interact with Home Assistant. It can only control or provide information about entities that are [exposed](/voice_control/voice_remote_expose_devices/) to it.
-
Recommended settings:
description: If enabled, the recommended model and settings are chosen.
-
{% endconfiguration_basic %}
If you choose not to use the recommended settings, you can configure the following options:
{% configuration_basic %}
-
Model:
description: The model that will complete your prompt. See [models](https://docs.anthropic.com/en/docs/about-claude/models#model-names) for additional details and options.
-
Maximum Tokens to Return in Response:
description: The maximum number of tokens to generate before stopping. Note that our models may stop _before_ reaching this maximum. This parameter only specifies the absolute maximum number of tokens to generate. Different models have different maximum values for this parameter. See [models](https://docs.anthropic.com/en/docs/models-overview) for details.
-
Temperature:
description: Amount of randomness injected into the response. Use `temperature` closer to `0.0` for analytical / multiple choice, and closer to `1.0` for creative and generative tasks. Note that even with `temperature` of `0.0`, the results will not be fully deterministic.
-
{% endconfiguration_basic %}
diff --git a/source/_integrations/apache_kafka.markdown b/source/_integrations/apache_kafka.markdown
index 414750ec58e..6e669871933 100644
--- a/source/_integrations/apache_kafka.markdown
+++ b/source/_integrations/apache_kafka.markdown
@@ -9,6 +9,7 @@ ha_codeowners:
ha_domain: apache_kafka
ha_iot_class: Local Push
ha_integration_type: integration
+ha_quality_scale: legacy
---
The **Apache Kafka** {% term integration %} sends all state changes to a
diff --git a/source/_integrations/apcupsd.markdown b/source/_integrations/apcupsd.markdown
index 819e1e30254..090ae342cbd 100644
--- a/source/_integrations/apcupsd.markdown
+++ b/source/_integrations/apcupsd.markdown
@@ -16,7 +16,6 @@ ha_platforms:
- diagnostics
- sensor
ha_integration_type: integration
-ha_quality_scale: silver
---
[apcupsd](http://www.apcupsd.org/) status information can be integrated into Home Assistant when the Network Information Server (NIS) [is configured](http://www.apcupsd.org/manual/manual.html#nis-server-client-configuration-using-the-net-driver) on the APC device.
diff --git a/source/_integrations/apprise.markdown b/source/_integrations/apprise.markdown
index 0e008ec0515..ac57fb83a91 100644
--- a/source/_integrations/apprise.markdown
+++ b/source/_integrations/apprise.markdown
@@ -14,6 +14,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The [Apprise service](https://github.com/caronc/apprise/) is an all-in-one solution to open up Home Assistant to _just about_ every Notification platform (such as Amazon SNS, Discord, Telegram, Slack, MSTeams, Twilio, etc.)
diff --git a/source/_integrations/aprs.markdown b/source/_integrations/aprs.markdown
index 8ac6ebee773..f7c4f027703 100644
--- a/source/_integrations/aprs.markdown
+++ b/source/_integrations/aprs.markdown
@@ -14,6 +14,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `aprs` [(Automatic Packet Reporting System)](https://en.wikipedia.org/wiki/Automatic_Packet_Reporting_System) device tracker integration connects to the [APRS-IS](http://aprs-is.net/) network for tracking amateur radio devices.
diff --git a/source/_integrations/aqualogic.markdown b/source/_integrations/aqualogic.markdown
index ac195df9f6d..aa1f67e07e9 100644
--- a/source/_integrations/aqualogic.markdown
+++ b/source/_integrations/aqualogic.markdown
@@ -15,6 +15,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The AquaLogic integration provides connectivity to a Hayward/Goldline AquaLogic/ProLogic pool controller. Note that an RS-485 to Ethernet adapter connected to the pool controller is required.
diff --git a/source/_integrations/aquostv.markdown b/source/_integrations/aquostv.markdown
index 41bcd6a7403..9de90c11049 100644
--- a/source/_integrations/aquostv.markdown
+++ b/source/_integrations/aquostv.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `aquostv` platform allows you to control a [Sharp Aquos TV](https://global.sharp/aquos/index.html).
diff --git a/source/_integrations/arest.markdown b/source/_integrations/arest.markdown
index ccd6552d2d3..e3c69d04678 100644
--- a/source/_integrations/arest.markdown
+++ b/source/_integrations/arest.markdown
@@ -17,6 +17,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
There is currently support for the following device types within Home Assistant:
diff --git a/source/_integrations/arris_tg2492lg.markdown b/source/_integrations/arris_tg2492lg.markdown
index 709ccc15148..a56af77f0f3 100644
--- a/source/_integrations/arris_tg2492lg.markdown
+++ b/source/_integrations/arris_tg2492lg.markdown
@@ -14,6 +14,7 @@ ha_integration_type: hub
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
This platform allows you to detect presence by looking at connected devices to an Arris TG2492LG router.
diff --git a/source/_integrations/aruba.markdown b/source/_integrations/aruba.markdown
index e5a3bacc37d..a1142e5c21c 100644
--- a/source/_integrations/aruba.markdown
+++ b/source/_integrations/aruba.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
This platform allows you to detect presence by looking at connected devices to an [Aruba Instant](https://www.arubanetworks.com/products/networking/aruba-instant/) device.
diff --git a/source/_integrations/arwn.markdown b/source/_integrations/arwn.markdown
index 5641d2faa01..ac27a86bd36 100644
--- a/source/_integrations/arwn.markdown
+++ b/source/_integrations/arwn.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `arwn` sensor platform is a client for the [Ambient Radio Weather Network](https://github.com/sdague/arwn) project. This collects weather station data and makes it available in an MQTT subtree.
diff --git a/source/_integrations/aten_pe.markdown b/source/_integrations/aten_pe.markdown
index 71d508be66d..e674ee38cfb 100644
--- a/source/_integrations/aten_pe.markdown
+++ b/source/_integrations/aten_pe.markdown
@@ -14,6 +14,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `aten_pe` {% term integration %} lets you control [ATEN Rack PDUs](https://www.aten.com/eu/en/products/energy-intelligence-pduupsracks/rack-pdu/) from Home Assistant.
diff --git a/source/_integrations/atome.markdown b/source/_integrations/atome.markdown
index 952db5f788e..5c5943b2a58 100644
--- a/source/_integrations/atome.markdown
+++ b/source/_integrations/atome.markdown
@@ -15,6 +15,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `atome` sensor platform is retrieving the consumption of your home from the [Direct Energy Atome electric meter](https://total.direct-energie.com/particuliers/electricite/compteur-linky/atome).
diff --git a/source/_integrations/autarco.markdown b/source/_integrations/autarco.markdown
index 0afac9543c5..9cfea9390f1 100644
--- a/source/_integrations/autarco.markdown
+++ b/source/_integrations/autarco.markdown
@@ -22,6 +22,8 @@ Autarco is a Dutch company that provides solar panels, inverters and batteries.
{% include integrations/config_flow.md %}
+### Configuration parameters
+
{% configuration_basic %}
Email:
description: The email address of your Autarco account.
@@ -31,9 +33,14 @@ Password:
## Data updates
-The integration will poll the Autarco API every 5 minutes to update the data in Home Assistant.
+The integration will update its information by polling Autarco every
+5 minutes. This ensures the data in Home Assistant is up to date.
-## Sensors
+## Actions
+
+This integration does not provide additional actions.
+
+## Supported functionality
The Autarco platform mainly provides sensors that you can use in your [energy dashboard](/energy).
@@ -66,8 +73,16 @@ If you have a battery connected to your system, you can monitor the battery stat
- Charged energy this month (kWh)
- Charged energy total (kWh)
-## Remove integration
+## Known limitations
-This integration follows standard integration removal, no extra steps are required.
+The integration does not show data about your self-sufficiency or CO2 savings.
+
+## Troubleshooting
+
+There are no commonly known issues with this integration.
+
+## Removing the integration
+
+This integration follows standard integration removal. No extra steps are required.
{% include integrations/remove_device_service.md %}
diff --git a/source/_integrations/avea.markdown b/source/_integrations/avea.markdown
index d0d84e556e8..e188855ee70 100644
--- a/source/_integrations/avea.markdown
+++ b/source/_integrations/avea.markdown
@@ -14,6 +14,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
[Elgato Avea](https://www.evehome.com/en/news/elgato-avea-transform-your-home) is a Bluetooth light bulb that is no longer supported by the manufacturer. The `avea` integration allows you to control all your Avea bulbs with Home Assistant.
diff --git a/source/_integrations/avion.markdown b/source/_integrations/avion.markdown
index 5932e8c2a9b..3f5ccd02baa 100644
--- a/source/_integrations/avion.markdown
+++ b/source/_integrations/avion.markdown
@@ -9,6 +9,7 @@ ha_domain: avion
ha_platforms:
- light
ha_integration_type: integration
+ha_quality_scale: legacy
---
Support for the Avi-on Bluetooth dimmer switch [Avi-on](https://avi-on.com/).
diff --git a/source/_integrations/aws.markdown b/source/_integrations/aws.markdown
index d6b0df57f1b..ed1556f5ef9 100644
--- a/source/_integrations/aws.markdown
+++ b/source/_integrations/aws.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `aws` integration provides a single place to interact with [Amazon Web Services](https://aws.amazon.com/). Currently it provides a notification platform that can send a message to [AWS SQS](https://aws.amazon.com/sqs/), [AWS SNS](https://aws.amazon.com/sns/), or invoke [AWS Lambda](https://aws.amazon.com/lambda/) functions.
diff --git a/source/_integrations/axis.markdown b/source/_integrations/axis.markdown
index b17b1a1308a..a33b0195055 100644
--- a/source/_integrations/axis.markdown
+++ b/source/_integrations/axis.markdown
@@ -13,7 +13,6 @@ ha_codeowners:
- '@Kane610'
ha_domain: axis
ha_qa_scale: platinum
-ha_quality_scale: platinum
ha_zeroconf: true
ha_ssdp: true
ha_dhcp: true
diff --git a/source/_integrations/azure_service_bus.markdown b/source/_integrations/azure_service_bus.markdown
index 4d714089060..8505e44c63d 100644
--- a/source/_integrations/azure_service_bus.markdown
+++ b/source/_integrations/azure_service_bus.markdown
@@ -14,6 +14,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `Azure Service Bus` integration allows you to send messages to [Azure Service Bus](https://azure.microsoft.com/products/service-bus/) from within Home Assistant.
diff --git a/source/_integrations/baidu.markdown b/source/_integrations/baidu.markdown
index e938ec2f958..48831f3c78b 100644
--- a/source/_integrations/baidu.markdown
+++ b/source/_integrations/baidu.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `baidu` text-to-speech platform uses [Baidu TTS engine](https://cloud.baidu.com/product/speech/tts) to read a text with natural sounding voices.
diff --git a/source/_integrations/balboa.markdown b/source/_integrations/balboa.markdown
index 7543373ff1d..64778abf60e 100644
--- a/source/_integrations/balboa.markdown
+++ b/source/_integrations/balboa.markdown
@@ -44,16 +44,13 @@ Balboa Spa Client integration is not compatible with ControlMySpa™ cloud API u
{% configuration_basic %}
host:
description: "Hostname or IP address of your Balboa Spa Wifi Device, e.g., `192.168.1.58`."
- required: true
- type: string
{% endconfiguration_basic %}
{% include integrations/option_flow.md %}
+
{% configuration_basic %}
sync_time:
description: Sync the Spa's internal clock with Home Assistant daily
- type: boolean
- default: false
{% endconfiguration_basic %}
## Known limitations
diff --git a/source/_integrations/bang_olufsen.markdown b/source/_integrations/bang_olufsen.markdown
index 1466b1f0225..c4246b84bd8 100644
--- a/source/_integrations/bang_olufsen.markdown
+++ b/source/_integrations/bang_olufsen.markdown
@@ -8,10 +8,10 @@ ha_release: 2024.2
ha_iot_class: Local Push
ha_domain: bang_olufsen
ha_platforms:
- - media_player
- diagnostics
+ - media_player
ha_codeowners:
- - "@mj23000"
+ - '@mj23000'
ha_config_flow: true
ha_zeroconf: true
ha_integration_type: device
@@ -41,18 +41,52 @@ and any other [Mozart](https://support.bang-olufsen.com/hc/en-us/articles/247669
{% configuration_basic %}
IP Address:
description: The IP address of your device. Can be found by navigating to the device on the [Bang & Olufsen app](https://www.bang-olufsen.com/en/dk/story/apps) and selecting `Settings` → `About` → `IP address`.
- required: true
- type: string
Device model:
description: The model name of your Bang & Olufsen device. This is used to determine some capabilities of the device. If the device is not in the list yet, choose a product similar to yours.
- required: true
- type: string
{% endconfiguration_basic %}
## Data updates
The **Bang & Olufsen** integration uses the [Mozart API](https://bang-olufsen.github.io/mozart-open-api), which is a local REST API with a WebSocket notification channel for immediate state information for media metadata, playback progress, volume etc. The only exception to this is the repeat and shuffle controls which are polled every 30 seconds.
+## Supported features
+
+Currently, a single device with a `media_player` entity is created for each added physical device. For advanced automations, [events](#automations) are fired in Home Assistant.
+
+### Media player
+
+A number of features are available through the media player entity:
+
+- See current metadata, progress, volume, etc.
+- Control next/previous, play/pause, shuffle/repeat settings, volume, sound mode, audio and video sources, and more.
+- Play various media through [play_media actions](#play_media-actions).
+- Control multiroom audio through [Beolink](https://support.bang-olufsen.com/hc/en-us/articles/4411572883089-What-is-Beolink-Multiroom):
+ - Control with Home Assistant media_player grouping.
+ - Monitor current [Beolink state](#beolink) through media player properties.
+ - For more advanced usage, [custom Beolink services](#custom-actions) have been defined:
+ - Connect or expand to [ASE](https://support.bang-olufsen.com/hc/en-us/articles/24766979863441-Which-platform-is-my-Connected-Audio-product-based-on) products not available in Home Assistant.
+ - Expand sessions to all discovered devices.
+ - Connect to, expand to or unexpand devices.
+ - Set all connected Beolink devices to standby.
+
+## Limitations
+
+Currently, some features of the Mozart platform such as:
+
+- Creating timers and alarms
+- Retrieving detailed alarm and timer information
+
+And more advanced app-centric features such as:
+
+- Creating presets
+- Creating listening positions
+- Creating sound modes
+- Creating stereo pairs
+- Adjusting specific sound settings
+- Pairing remotes
+
+These features are not available through the API. Some may become available at a later point, but until then the [Bang & Olufsen App](https://www.bang-olufsen.com/en/dk/story/apps) can be used to configure these settings and features.
+
## Actions
### play_media actions
@@ -344,8 +378,8 @@ beolink:
The **Bang & Olufsen** integration supports [Home Assistant debug logs and diagnostics](/docs/configuration/troubleshooting/#debug-logs-and-diagnostics).
Where all received WebSocket events are provided through debug logs and the WebSocket connection state, config entry and media player state is provided through diagnostics.
-## Remove integration
+## Removing the integration
-This integration follows standard integration removal, no extra steps are required.
+This integration follows standard integration removal. No extra steps are required.
{% include integrations/remove_device_service.md %}
diff --git a/source/_integrations/bbox.markdown b/source/_integrations/bbox.markdown
index 4485298921c..7029b251693 100644
--- a/source/_integrations/bbox.markdown
+++ b/source/_integrations/bbox.markdown
@@ -15,6 +15,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `bbox` {% term integration %} uses the [Bbox Modem Router](https://www.bouyguestelecom.fr/offres-internet/bbox-fit) from the French Internet provider Bouygues Telecom. Sensors are mainly bandwidth measures.
diff --git a/source/_integrations/beewi_smartclim.markdown b/source/_integrations/beewi_smartclim.markdown
index 06543cbda56..3931ca57970 100644
--- a/source/_integrations/beewi_smartclim.markdown
+++ b/source/_integrations/beewi_smartclim.markdown
@@ -14,6 +14,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `beewi_smartclim` sensor platform allows one to monitor room or external temperature and humidity. The BeeWi SmartClim BLE is a Bluetooth Low Energy sensor device that monitors temperature from a room or a garden from your smartphone by using an APP. Use this integration to track these metrics from any location thanks to Home Assistant, as well as to create some automation scripts based on your room's temperature.
diff --git a/source/_integrations/bitcoin.markdown b/source/_integrations/bitcoin.markdown
index 3536899ceb5..7dab4df454c 100644
--- a/source/_integrations/bitcoin.markdown
+++ b/source/_integrations/bitcoin.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `bitcoin` sensor platform displays various details about the [Bitcoin](https://bitcoin.org) network.
diff --git a/source/_integrations/bizkaibus.markdown b/source/_integrations/bizkaibus.markdown
index e119e330ca4..f0a290f3a96 100644
--- a/source/_integrations/bizkaibus.markdown
+++ b/source/_integrations/bizkaibus.markdown
@@ -15,6 +15,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `bizkaibus` sensor will give you the time until the next bus in the selected stop.
diff --git a/source/_integrations/blackbird.markdown b/source/_integrations/blackbird.markdown
index 7dcf6021c17..e107a6609e6 100644
--- a/source/_integrations/blackbird.markdown
+++ b/source/_integrations/blackbird.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `blackbird` platform allows you to control [Monoprice Blackbird Matrix Switch](https://www.monoprice.com/product?p_id=21819) (8x8) using a serial or IP connection, this integration does not support the 4x4 matrix switch.
diff --git a/source/_integrations/blinksticklight.markdown b/source/_integrations/blinksticklight.markdown
index 106a3921654..50b5ab93838 100644
--- a/source/_integrations/blinksticklight.markdown
+++ b/source/_integrations/blinksticklight.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `blinkstick` platform lets you control your [Blinkstick](https://www.blinkstick.com/) lights from within Home Assistant.
diff --git a/source/_integrations/blockchain.markdown b/source/_integrations/blockchain.markdown
index 8e9a1cbf444..242cd92c61c 100644
--- a/source/_integrations/blockchain.markdown
+++ b/source/_integrations/blockchain.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `Blockchain` sensor platform displays Bitcoin wallet balances from [blockchain.com](https://blockchain.com).
diff --git a/source/_integrations/bluetooth.markdown b/source/_integrations/bluetooth.markdown
index b6202474808..05c9970fdfd 100644
--- a/source/_integrations/bluetooth.markdown
+++ b/source/_integrations/bluetooth.markdown
@@ -213,21 +213,24 @@ These adapters do not have a reset pin. If they stop responding, there is curren
- Alfa AWUS036EACS (RTL8821CU) - Frequent connection failures and drop outs
- BASEUS BR8651A01 BA04 - Advertisement drops out
- Belkin F8T003 ver 2. - Fails to setup and add successfully
-- Bluegiga BLED112 - No driver available yet for USB id 2458:0001
+- Bluegiga BLED112 - No driver available yet for USB ID `2458:0001`
- EDIMAX EW-7611ULB (RTL8723BU) - Frequent connection failures and drop outs
- EDUP EP-AC1661 (RTL8821CU) - Frequent connection failures and drop outs
-- eppfun AK3040G (ATS2851) - No driver available yet for USB id 10d7:b012
-- eppfun AK3040A (ATS2851) - No driver available yet for USB id 10d7:b012
+- eppfun AK3040G (ATS2851) - No driver available yet for USB ID `10d7:b012`
+- eppfun AK3040A (ATS2851) - No driver available yet for USB ID `10d7:b012`
- KOAMTAC KBD 401G (CSR8510A10) - Adapter is unstable and drops out
- TRIPP-LITE CU885A/U261-001-BT4 (CSR8510A10) - Adapter is unstable and drops out
- QUMOX Bluetooth 5.0 (Barrot 8041A02) - No working driver
-- UGREEEN CM591 (ATS2851) - No driver available yet for USB id 10d7:b012
+- UGREEEN CM591 (ATS2851) - No driver available yet for USB ID `10d7:b012`
+- UGREEEN CM749 (Barrot chipset) 📶 - No driver available yet for USB ID `33fa:0010`
- tp-link UB400 (CSR4) - Frequent connection failures with active connections
- tp-link UB500 (RTL8761BU) - Frequent connection failures with active connections
-- CSR 4.0 clones with USB id 0a12:0001 - Unrecoverable driver failure: These clones will usually show a message like `CSR: Unbranded CSR clone detected; adding workarounds and force-suspending once...` in the system log when they are plugged in.
+- CSR 4.0 clones with USB ID `0a12:0001` - Unrecoverable driver failure: These clones will usually show a message like `CSR: Unbranded CSR clone detected; adding workarounds and force-suspending once...` in the system log when they are plugged in.
- Multiple unbranded adapters labeled with CSR 4.0
- 5 CORE CSR 4.0
+📶 Denotes external antenna
+
## Multiple adapters
The Bluetooth integration employs automatic failover and connection path logic to achieve high availability.
diff --git a/source/_integrations/bluetooth_le_tracker.markdown b/source/_integrations/bluetooth_le_tracker.markdown
index 83cbd4e2994..bd6b2d3e4ca 100644
--- a/source/_integrations/bluetooth_le_tracker.markdown
+++ b/source/_integrations/bluetooth_le_tracker.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
This tracker discovers new devices on boot and in regular intervals and tracks Bluetooth low-energy devices periodically based on interval_seconds value. It is not required to pair the devices with each other.
diff --git a/source/_integrations/bluetooth_tracker.markdown b/source/_integrations/bluetooth_tracker.markdown
index 6134b1a0ae6..b8676ddfbf0 100644
--- a/source/_integrations/bluetooth_tracker.markdown
+++ b/source/_integrations/bluetooth_tracker.markdown
@@ -9,6 +9,7 @@ ha_domain: bluetooth_tracker
ha_platforms:
- device_tracker
ha_integration_type: integration
+ha_quality_scale: legacy
---
This tracker discovers new devices on boot and tracks Bluetooth devices periodically based on `interval_seconds` value. It is not required to pair the devices with each other! Devices discovered are stored with 'bt_' as the prefix for device MAC addresses in `known_devices.yaml`.
diff --git a/source/_integrations/bmw_connected_drive.markdown b/source/_integrations/bmw_connected_drive.markdown
index 921500be0ec..5be8b79f4ec 100644
--- a/source/_integrations/bmw_connected_drive.markdown
+++ b/source/_integrations/bmw_connected_drive.markdown
@@ -31,20 +31,79 @@ ha_platforms:
- sensor
- switch
ha_integration_type: integration
-ha_quality_scale: platinum
---
-The **BMW Connected Drive** {% term integration %} lets you retrieve data of your BMW vehicle from the BMW Connected Drive portal. You need to have a working BMW Connected Drive account and a Connected Drive enabled vehicle for this to work.
-
-The **BMW Connected Drive** {% term integration %} also works with (recent) Mini vehicles. You need to have a working Mini Connected account, and a Mini Connected enabled vehicle for this to work.
+The **BMW Connected Drive** {% term integration %} lets you retrieve data of your BMW or MINI vehicle from the MyBMW portal (previously BMW Connected Drive).
{% note %}
The {% term entities %} available in Home Assistant heavily depend on your vehicle's capabilities (model year, headunit, etc.). The integration will make sure all available car attributes are added as entities.
{% endnote %}
+## Prerequisites
+
+You need to have an active MyBMW account with a connected car. For MINI vehicles, you register with MINI Connected.
+
For compatibility with your BMW vehicle check the [bimmer_connected page](https://github.com/bimmerconnected/bimmer_connected) on GitHub.
-This integration provides the following platforms:
+{% include integrations/config_flow.md %}
+
+{% configuration_basic %}
+Username:
+ description: |
+ Username of your MyBMW/MINI Connected account.
+
+
+
+ **China**: Your username/phone number must be prefixed with `86`, i.e. `8612345678`.
+Password:
+ description: "Password of your MyBMW/MINI Connected account."
+Region:
+ description: "Region of your MyBMW/MINI Connected account."
+ options: china, north_america, rest_of_world
+Captcha token (second step, only for North America and Rest of World):
+ description: |
+ The **North America** and **Rest of World** regions require a captcha challenge to be solved, that means you need to verify that you are not a robot.
+
+ - After entering your login data, a second step will ask for a `Captcha token` and provide you with a **link** to a website.
+ - Open this link, solve the **"Are you a human?"** challenge and press **Submit**.
+ - Copy the resulting token into Home Assistant and continue.
+
+ No data of your Home Assistant instance is shared with any third party during this step.
+{% endconfiguration_basic %}
+
+{% include integrations/option_flow.md %}
+
+{% configuration_basic %}
+Read-only:
+ description: No execution of actions to the vehicle. You can only send POIs to the vehicle via `notify`.
+{% endconfiguration_basic %}
+
+## Data updates
+
+The integration will pull data from MyBMW/MINI servers at the following intervals:
+
+| Region | Interval |
+|---------------|------------|
+| China | 5 minutes |
+| North America | 10 minutes |
+| Rest of world | 5 minutes |
+
+{% note %}
+This will only refresh data from the BMW/MINI servers and **not** from your car. Updates from the car to the servers typically happen:
+
+- for **combustion engine** vehicles when the car is parked and the engine is shut off.
+- for **electric** vehicles when the car is parked and turned off or while the car is charging.
+
+While driving, the servers are not updated.
+{% endnote %}
+
+### Defining a custom polling interval
+
+{% include common-tasks/define_custom_polling.md %}
+
+## Available platforms
+
+This {% term integration %} provides the following {% term platforms %}:
- Binary sensors: Doors, windows, condition based services, check control messages, parking lights, door lock state, charging status (electric cars) and connections status (electric cars).
- Device tracker: The location of your car.
@@ -56,9 +115,10 @@ This integration provides the following platforms:
- [Switches](/integrations/bmw_connected_drive/#switches): Display and toggle settings on your car.
- [Numbers](/integrations/bmw_connected_drive/#numbers): Display and control numeric charging related settings for (PH)EVs.
-## Configuration
+{% warning %}
+Every platform except **binary sensors** and **sensors** can change the state of your vehicle. Once you change the state in Home Assistant, a command is sent to your car.
-Enable the `BMW Connected Drive` integration via **Settings** -> **Devices & Services**.
+
{% important %}
The `North America` and `Rest of world` regions require a captcha challenge to be solved, i.e. you need to verify that you are a human.
@@ -73,15 +133,9 @@ No data of your Home Assistant instance is shared with any third party during th
For `china`, it is mandatory to prefix your username/phone number with `86`, i.e. `8612345678`.
{% endnote %}
-After connecting to your account, you can set the following settings in the integration's options:
+### Notifications
-| Setting | Description |
-|---------|-------------|
-| Read-only | No execution of actions to the vehicle. Still possible to send messages and POIs via `notify` and to request a status update via `bmw_connected_drive.update_state`.
-
-## Notifications
-
-The `bmw_connected_drive` integration offers a notification action. Using this action you can send Points of Interest (POI) to your vehicle. In your vehicle you can select this POI and the navigation will automatically start using the POI as a destination.
+The **BMW Connected Drive** integration offers a notification action. Using this action you can send Points of Interest (POI) to your vehicle. In your vehicle, you can select this POI, and the navigation will automatically start using the POI as a destination.
The name of the action is `notify.bmw_connected_drive_`.
### Send a Point of Interest to your vehicle
@@ -101,31 +155,33 @@ actions:
country: Country # Optional
```
-## Lock
+### Lock
-The vehicle can be locked and unlocked via the lock integration that is created automatically for each vehicle. Before invoking, make sure it's safe to lock/unlock the vehicle in the current situation.
+The vehicle can be locked and unlocked via the lock integration that is created automatically for each vehicle.
-## Buttons
+{% note %}
+If your vehicle does not provide its current state (no sensor entities are created), you will not see the current lock state either. You still can lock/unlock the car.
+{% endnote %}
-The `bmw_connected_drive` integration offers several buttons to trigger actions in your car. The buttons are automatically created and can be pressed/executed from the UI or using the `button.press` action. Please see the [button documentation](/integrations/button/) for more information.
+### Buttons
-Using these buttons will impact the state of your vehicle. So use these with care!
+Buttons are used to trigger actions in your car. The buttons are automatically created and can be pressed/executed from the UI or using the `button.press` action. Please see the [button documentation](/integrations/button/) for more information.
-### Air conditioning
+#### Air conditioning
The air conditioning of the vehicle can be activated with the `button._activate_air_conditioning` button.
What exactly is started here depends on the type of vehicle. It might range from just ventilation over auxiliary heating to real air conditioning. If your vehicle is equipped with auxiliary heating, only trigger this action if the vehicle is parked in a location where it is safe to use it (e.g., not in an underground parking or closed garage).
-### Sound the horn
+#### Sound the horn
-The `button._sound_horn` button sounds the horn of the vehicle. This option is not available in some countries (among which the UK). Use this feature responsibly, as it might annoy your neighbors.
+The `button._sound_horn` button sounds the horn of the vehicle. This option is not available in some countries (among which the UK). Use this feature responsibly, as it might annoy your neighbors.
-### Flash the lights
+#### Flash the lights
The `button._light_flash` button flashes the lights of the vehicle.
-### Vehicle finder
+#### Vehicle finder
The `button._find_vehicle` button requests the vehicle to update the GPS location. This can be used for older vehicles which don't automatically send the updated GPS location.
@@ -138,32 +194,55 @@ If you do not want this, trigger the `vehicle_finder` action from your phone and
On some older cars (non i3/i8 series produced before 7/2014) this action will fail in getting your vehicles position, if the vehicle is more than 1.5 km away from the location of your Home Assistant instance. This is a limitation of the BMW API.
{% endnote %}
-## Selects
+### Selects
If you have a (PH)EV, you can control the charging process through Home Assistant. The selects are created automatically depending on your vehicle's capabilities and can be pressed/executed from the UI or using the `select.select_option` action. For more information, please see the [select documentation](/integrations/select/).
-Using these selects will impact the state of your vehicle. Use them with care!
-
- **Charging Mode**: Vehicle can be set to `IMMEDIATE_CHARGING` (charge as soon as plugged in) or `DELAYED_CHARGING` (charge only if within charging window). It can be used to start/stop charging if the charging window is set accordingly.
- **AC Charging Limit**: The maximum current a vehicle will charge with. Not available on all EVs.
-## Switches
+### Switches
If supported by your vehicle, you can display and toggle remote actions with start/stop functionality.
-Using these selects will impact the state of your vehicle, use them with care!
-
-- **Climate**: Toggle vehicle climatization. It is not possible to force it to heating/cooling, the vehicle will decide on its own. If turned on, it will run for 30 minutes (as if toggled via the MyBMW app).
+- **Climate**: Toggle vehicle climatization. It is not possible to force it to heat or cool; the vehicle will decide on its own. If turned on, it will run for 30 minutes (as if toggled via the MyBMW app).
- **Charging**: Toggle vehicle charging if plugged in. Only available on some electric vehicles.
-## Numbers
+### Numbers
If you have a (PH)EV, you can control the charging process through Home Assistant. The number entities are created automatically depending on your vehicle's capabilities and can be changed from the UI or using the `number.set_value` action. For more information, please see the [number documentation](/integrations/number/).
-Using these selects will impact the state of your vehicle, use them with care!
-
- **Target SoC**: Vehicle will charge until this battery level is reached. Not available on all EVs.
+## Troubleshooting
+
+{% details "Problem: Invalid authentication" %}
+
+This can happen during initial login or after some time. Please do the following steps:
+- Log in to your MyBMW **website** and verify your credentials (for example, ensure that username and password are correct).
+- If you cannot login on the website, please **deactivate** polling (see [Defining a custom polling interval](#defining-a-custom-polling-interval)) and wait for **at least 24 hours**.
+- Once you can login to the website, reconfigure/reauthenticate the integration via {% my integrations title="**Settings** > **Devices & services**" %}, click {% icon "mdi:dots-vertical" %} and select **Reconfigure**.
+- Activate polling again
+
+{% enddetails %}
+
+{% details "Problem: Captcha validation missing" %}
+
+Sometimes, your account can be force-logged-out. For **North America** and **Rest of World**, the recovery requires manual intervention.
+
+Home Assistant will show a repair issue to **reconfigure** the integration. Follow the steps to log in again.
+
+{% enddetails %}
+
+## Known limitations
+
+- The entities available to Home Assistant depend on your vehicle. Even inside the same model code (for example, U11 for BMW X1) you will see different entities, depending on your specific car's features.
+- Not all features, mostly related to charging control for (PH)EVs, are implemented. If you have a functionality in your MyBMW/MINI app that is not yet available, search for an existing feature request in the [`bimmer_connected` discussions](https://github.com/bimmerconnected/bimmer_connected/discussions) or create a new one.
+
+## Removing the integration
+
+{% include integrations/remove_device_service.md %}
+
## Disclaimer
This software is not affiliated with or endorsed by BMW Group.
diff --git a/source/_integrations/bond.markdown b/source/_integrations/bond.markdown
index 8b3c83b33fe..ee9284b22da 100644
--- a/source/_integrations/bond.markdown
+++ b/source/_integrations/bond.markdown
@@ -17,7 +17,6 @@ ha_codeowners:
- '@joshs85'
- '@marciogranzotto'
ha_config_flow: true
-ha_quality_scale: platinum
ha_zeroconf: true
ha_platforms:
- button
diff --git a/source/_integrations/brother.markdown b/source/_integrations/brother.markdown
index 4da9e143685..f3577dfbeac 100644
--- a/source/_integrations/brother.markdown
+++ b/source/_integrations/brother.markdown
@@ -9,7 +9,6 @@ ha_config_flow: true
ha_codeowners:
- '@bieniu'
ha_domain: brother
-ha_quality_scale: platinum
ha_zeroconf: true
ha_platforms:
- diagnostics
diff --git a/source/_integrations/bt_home_hub_5.markdown b/source/_integrations/bt_home_hub_5.markdown
index 1f8d6cc8c3a..ed67f5e032b 100644
--- a/source/_integrations/bt_home_hub_5.markdown
+++ b/source/_integrations/bt_home_hub_5.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
This platform offers presence detection by looking at connected devices to a [BT Home Hub 5](https://en.wikipedia.org/wiki/BT_Home_Hub) based router.
diff --git a/source/_integrations/bt_smarthub.markdown b/source/_integrations/bt_smarthub.markdown
index e68cf408993..46ecaffb4ab 100644
--- a/source/_integrations/bt_smarthub.markdown
+++ b/source/_integrations/bt_smarthub.markdown
@@ -14,6 +14,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
This platform offers presence detection by looking at connected devices to a [BT Smart Hub](https://en.wikipedia.org/wiki/BT_Smart_Hub) based router.
diff --git a/source/_integrations/cambridge_audio.markdown b/source/_integrations/cambridge_audio.markdown
index 67114c02251..a52567c4825 100644
--- a/source/_integrations/cambridge_audio.markdown
+++ b/source/_integrations/cambridge_audio.markdown
@@ -46,18 +46,16 @@ use a different protocol and are not currently supported.
{% configuration_basic %}
Host:
- description: The IP address of your device can be found by navigating to the device on the [StreamMagic app](https://www.cambridgeaudio.com/usa/en/products/streammagic) and selecting `Settings` → `IP address`.
- required: true
- type: string
+ description: The IP address of your device can be found by navigating to the device on the [StreamMagic app](https://www.cambridgeaudio.com/usa/en/products/streammagic) and selecting `Settings` → `IP address`.
{% endconfiguration_basic %}
## Data updates
Cambridge Audio devices push data directly to Home Assistant, enabling immediate updates for device state changes, media information, and playback status.
-## Remove integration
+## Removing the integration
-This integration follows standard integration removal, no extra steps are required.
+This integration follows standard integration removal. No extra steps are required.
{% include integrations/remove_device_service.md %}
diff --git a/source/_integrations/cast.markdown b/source/_integrations/cast.markdown
index 466ea28004e..447b11597d9 100644
--- a/source/_integrations/cast.markdown
+++ b/source/_integrations/cast.markdown
@@ -21,14 +21,14 @@ ha_integration_type: integration
Support for mDNS discovery in your local network is mandatory for automatic discovery. Make sure that your router has this feature enabled. If mDNS does not work in your network, the IP addresses of the Cast devices can be manually entered in the configuration as mentioned below.
{% include integrations/option_flow.md %}
+
{% configuration_basic %}
Known hosts:
description: "A comma-separated list of hostnames or IP-addresses of cast devices, use if mDNS discovery is not working"
Allowed UUIDs:
description: A comma-separated list of UUIDs of Cast devices to add to Home Assistant. **Use only if you don't want to add all available devices.** The device won't be added until discovered through either mDNS or if it's included in the list of known hosts. In order to find the UUID for your device use a mDNS browser or advanced users can use the following Python command (adjust friendly names as required) - `python3 -c "import pychromecast; print(pychromecast.get_listed_chromecasts(friendly_names=['Living Room TV', 'Bedroom TV', 'Office Chromecast']))"`. This option is only visible if advanced mode is enabled in your user profile.
Ignore CEC:
- description: A comma-separated list of Chromecasts that should ignore CEC data for determining the
- active input. [See the upstream documentation for more information](https://github.com/home-assistant-libs/pychromecast#ignoring-cec-data). This option is only visible if advanced mode is enabled in your user profile.
+ description: A comma-separated list of Chromecasts that should ignore CEC data for determining the active input. [See the upstream documentation for more information](https://github.com/home-assistant-libs/pychromecast#ignoring-cec-data). This option is only visible if advanced mode is enabled in your user profile.
{% endconfiguration_basic %}
## Home Assistant Cast
diff --git a/source/_integrations/ccm15.markdown b/source/_integrations/ccm15.markdown
index 2a8dc78990c..62197b91778 100644
--- a/source/_integrations/ccm15.markdown
+++ b/source/_integrations/ccm15.markdown
@@ -1,5 +1,5 @@
---
-title: Midea CCM15 AC Controller
+title: Midea ccm15 AC Controller
description: Instructions on how to integrate a Midea CCM15 module into Home Assistant.
ha_category:
- Climate
diff --git a/source/_integrations/chacon_dio.markdown b/source/_integrations/chacon_dio.markdown
index 0bbcbc645af..8f63f9b5a38 100644
--- a/source/_integrations/chacon_dio.markdown
+++ b/source/_integrations/chacon_dio.markdown
@@ -1,5 +1,5 @@
---
-title: Chacon Dio
+title: Chacon DiO
description: Instructions on how to integrate your Chacon Dio devices within Home Assistant.
ha_category:
- Cover
diff --git a/source/_integrations/channels.markdown b/source/_integrations/channels.markdown
index 042d63e63db..139960f106a 100644
--- a/source/_integrations/channels.markdown
+++ b/source/_integrations/channels.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The Channels platform allows you to control [Channels](https://getchannels.com/) from Home Assistant. Play, pause, seek, or skip commercials on an instance of Channels that is running on your network.
diff --git a/source/_integrations/cisco_ios.markdown b/source/_integrations/cisco_ios.markdown
index 65007d28d5f..c9d23e996ec 100644
--- a/source/_integrations/cisco_ios.markdown
+++ b/source/_integrations/cisco_ios.markdown
@@ -14,6 +14,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
This is a presence detection scanner for [Cisco IOS](https://www.cisco.com/) devices.
diff --git a/source/_integrations/cisco_mobility_express.markdown b/source/_integrations/cisco_mobility_express.markdown
index 54a9381afc9..1744d4d59e6 100644
--- a/source/_integrations/cisco_mobility_express.markdown
+++ b/source/_integrations/cisco_mobility_express.markdown
@@ -14,6 +14,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
This is a presence detection scanner for [Cisco](https://www.cisco.com) Mobility Express wireless controllers.
diff --git a/source/_integrations/cisco_webex_teams.markdown b/source/_integrations/cisco_webex_teams.markdown
index 08f8a50f808..a465d4d5062 100644
--- a/source/_integrations/cisco_webex_teams.markdown
+++ b/source/_integrations/cisco_webex_teams.markdown
@@ -14,18 +14,19 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
-The `cisco_webex_teams` notification platform allows you to deliver rich notifications from Home Assistant to [Cisco Webex Teams](https://www.webex.com/team-collaboration.html) (formerly known as Cisco Spark or Cisco Webex Teams).
+The `cisco_webex_teams` notification platform allows you to deliver rich notifications from Home Assistant to [Cisco Webex](https://www.webex.com/suite/messaging.html) (formerly known as Cisco Spark or Cisco Webex Teams).
To use this notification platform you will need an app (bot) token. To obtain a token visit [Cisco Webex for Developers](https://developer.webex.com/).
- Detailed instructions can be found in the section titled **Creating a Webex Bot** on the [Webex Teams bot documentation](https://developer.webex.com/docs/bots).
-You also need to specify the `room_id` that you wish to post messages into. The `room_id` can be found in one of two ways:
+You also need to specify the `room_id` that you wish to post messages into. The `room_id` can be found in one of three ways:
1. Logging in at [Cisco Webex for Developers](https://developer.webex.com/) and navigate to `Documentation`>`API Reference`>`Messages` and select List Messages, or
-2. Log into the web client at [teams.webex.com](https://teams.webex.com/),
+2. Log into the web client at [web.webex.com](https://web.webex.com/),
- select the room (or create a new room),
- then copying the room ID from the URL.
3. Within the Webex Client, press Control+Shift+K (Windows) or Command+Shift+K (macOS), which will automatically copy the space information to your clipboard, which you
diff --git a/source/_integrations/citybikes.markdown b/source/_integrations/citybikes.markdown
index ecf6e153b2c..8f03b23b4c0 100644
--- a/source/_integrations/citybikes.markdown
+++ b/source/_integrations/citybikes.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `citybikes` sensor platform monitors bike availability at bike sharing stations in a chosen area. The data is provided by [CityBikes](https://citybik.es/#about), which supports bike sharing systems all around the world.
diff --git a/source/_integrations/clementine.markdown b/source/_integrations/clementine.markdown
index f2681947033..401016b25b4 100644
--- a/source/_integrations/clementine.markdown
+++ b/source/_integrations/clementine.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `clementine` platform allows you to control a [Clementine Music Player](https://www.clementine-player.org).
diff --git a/source/_integrations/clickatell.markdown b/source/_integrations/clickatell.markdown
index 989357900ee..ca22c8ea71d 100644
--- a/source/_integrations/clickatell.markdown
+++ b/source/_integrations/clickatell.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `clickatell` platform uses [Clickatell](https://www.clickatell.com) to deliver SMS notifications from Home Assistant.
diff --git a/source/_integrations/clicksend.markdown b/source/_integrations/clicksend.markdown
index 32530ab156d..7497fd44334 100644
--- a/source/_integrations/clicksend.markdown
+++ b/source/_integrations/clicksend.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `clicksend` platform uses [ClickSend](https://clicksend.com) to deliver notifications from Home Assistant.
diff --git a/source/_integrations/clicksend_tts.markdown b/source/_integrations/clicksend_tts.markdown
index 8d75574c042..d960f5b95d2 100644
--- a/source/_integrations/clicksend_tts.markdown
+++ b/source/_integrations/clicksend_tts.markdown
@@ -9,6 +9,7 @@ ha_domain: clicksend_tts
ha_platforms:
- notify
ha_integration_type: integration
+ha_quality_scale: legacy
---
The `clicksend_tts` platform uses [ClickSend](https://clicksend.com) to deliver text-to-speech (TTS) notifications from Home Assistant.
diff --git a/source/_integrations/cmus.markdown b/source/_integrations/cmus.markdown
index 93388762eb3..99954043468 100644
--- a/source/_integrations/cmus.markdown
+++ b/source/_integrations/cmus.markdown
@@ -9,6 +9,7 @@ ha_domain: cmus
ha_platforms:
- media_player
ha_integration_type: integration
+ha_quality_scale: legacy
---
The `cmus` platform allows you to control a [cmus](https://cmus.github.io/) music player on a remote or local machine from Home Assistant.
diff --git a/source/_integrations/comed_hourly_pricing.markdown b/source/_integrations/comed_hourly_pricing.markdown
index 8f0e0351a1a..7819389de0b 100644
--- a/source/_integrations/comed_hourly_pricing.markdown
+++ b/source/_integrations/comed_hourly_pricing.markdown
@@ -9,6 +9,7 @@ ha_domain: comed_hourly_pricing
ha_platforms:
- sensor
ha_integration_type: integration
+ha_quality_scale: legacy
---
The ComEd Hourly Pricing program is an optional program available to ComEd electric subscribers which charges customers a variable rate for electricity supply based on current demand rather than a traditional fixed rate. Live prices are published [here](https://hourlypricing.comed.com/live-prices/) and also via an [API](https://hourlypricing.comed.com/hp-api/) which we can integrate as a sensor in Home Assistant.
diff --git a/source/_integrations/comelit.markdown b/source/_integrations/comelit.markdown
index 947bb6dc8b8..d4791c03906 100644
--- a/source/_integrations/comelit.markdown
+++ b/source/_integrations/comelit.markdown
@@ -26,7 +26,6 @@ ha_platforms:
- sensor
- switch
ha_integration_type: hub
-ha_quality_scale: silver
---
The Comelit SimpleHome integration allows you to control your [Comelit home automation devices](https://comelitgroup.it/installatore/offerta/domotica-e-smart-home).
diff --git a/source/_integrations/comfoconnect.markdown b/source/_integrations/comfoconnect.markdown
index 08318ce2fe8..9025273c54f 100644
--- a/source/_integrations/comfoconnect.markdown
+++ b/source/_integrations/comfoconnect.markdown
@@ -13,6 +13,7 @@ ha_platforms:
- fan
- sensor
ha_integration_type: integration
+ha_quality_scale: legacy
---
The `comfoconnect` integration lets you control Zehnder ComfoAir [Q350](https://products.zehnder-systems.com/en/product/zehnder-comfoair-q350-tr)/[Q450](https://products.zehnder-systems.com/en/product/zehnder-comfoair-q450-tr)/[Q600](https://products.zehnder-systems.com/en/product/zehnder-comfoair-q600-st)
diff --git a/source/_integrations/command_line.markdown b/source/_integrations/command_line.markdown
index 2bf9e7f01e8..ab738b8f315 100644
--- a/source/_integrations/command_line.markdown
+++ b/source/_integrations/command_line.markdown
@@ -290,6 +290,26 @@ command_line:
default: 30
{% endconfiguration %}
+{% note %}
+For sensors, while `value_template` is optional, if you set `json_attributes` because the output is a JSON, it is suggested to provide a template in the `value_template` field to provide a state to the sensor or the state will always be `unknown`. See [example](#usage-of-json-attributes-in-command-output) below.
+{% endnote %}
+
+## Troubleshooting
+
+As **Command line** {% term integration %} is a yaml only integration, turning on extended logging needs to be done by setting the logging information in your {% term "`configuration.yaml`" %} file.
+
+Entering this example in your configuration sets the default logging to info, and for `command_line` to debug. Once done, restart Home Assistant to enable.
+
+{% raw %}
+```yaml
+# Set logging
+logger:
+ default: info
+ logs:
+ homeassistant.components.command_line: debug
+```
+{% endraw%}
+
{% note %}
While `command` is accepting a template for `sensor` and `binary_sensor`, it's only the arguments that can be a template. This means the command name itself cannot be generated by a template, but it must be literally provided.
diff --git a/source/_integrations/compensation.markdown b/source/_integrations/compensation.markdown
index 94bf44ee218..ff3f4938810 100644
--- a/source/_integrations/compensation.markdown
+++ b/source/_integrations/compensation.markdown
@@ -12,6 +12,7 @@ ha_domain: compensation
ha_platforms:
- sensor
ha_integration_type: integration
+ha_quality_scale: legacy
---
The **Compensation** {% term integration %} consumes the {% term state %} from other {% term sensors %}. It exports the compensated value as state in a separate {% term entity %} and the following values as attributes: `entity_id` and `coefficients`. A single polynomial, linear by default, is fit to all data points provided.
diff --git a/source/_integrations/concord232.markdown b/source/_integrations/concord232.markdown
index 89d8b926d47..aea5e2dcd61 100644
--- a/source/_integrations/concord232.markdown
+++ b/source/_integrations/concord232.markdown
@@ -11,6 +11,7 @@ ha_platforms:
- alarm_control_panel
- binary_sensor
ha_integration_type: integration
+ha_quality_scale: legacy
---
The `concord232` platform provides integration with GE, Interlogix (and other brands) alarm panels that support the RS-232 Automation Control Panel interface module (or have it built in). Supported panels include Concord 4.
diff --git a/source/_integrations/cppm_tracker.markdown b/source/_integrations/cppm_tracker.markdown
index 4b33fe0f047..5c55c667499 100644
--- a/source/_integrations/cppm_tracker.markdown
+++ b/source/_integrations/cppm_tracker.markdown
@@ -9,6 +9,7 @@ ha_domain: cppm_tracker
ha_platforms:
- device_tracker
ha_integration_type: integration
+ha_quality_scale: legacy
---
This platform allows you to detect presence by looking at connected devices to [Aruba Clearpass](https://www.arubanetworks.com/products/security/network-access-control/).
diff --git a/source/_integrations/cups.markdown b/source/_integrations/cups.markdown
index 224a87d6c82..9439839d4d5 100644
--- a/source/_integrations/cups.markdown
+++ b/source/_integrations/cups.markdown
@@ -14,6 +14,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `cups` sensor platform uses the open source printing system [CUPS](https://www.cups.org/) to show details about your printers, including the ink levels. It can obtain the information using a CUPS server or by communicating directly with the printer with the Internet Printing Protocol.
diff --git a/source/_integrations/currencylayer.markdown b/source/_integrations/currencylayer.markdown
index bcdd1efd378..76b64fca151 100644
--- a/source/_integrations/currencylayer.markdown
+++ b/source/_integrations/currencylayer.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `currencylayer` sensor will show you the current exchange rate from [Currencylayer](https://currencylayer.com/) that provides real-time exchange rates for [170 currencies](https://currencylayer.com/currencies). The free account is limited to only USD as a base currency, allows 250 requests per month and updates daily.
diff --git a/source/_integrations/danfoss_air.markdown b/source/_integrations/danfoss_air.markdown
index 493ab27fc53..9c39088545c 100644
--- a/source/_integrations/danfoss_air.markdown
+++ b/source/_integrations/danfoss_air.markdown
@@ -14,6 +14,7 @@ ha_platforms:
- sensor
- switch
ha_integration_type: integration
+ha_quality_scale: legacy
---
The **Danfoss Air** {% term integration %} allows you to access information from your Danfoss Air HRV unit.
diff --git a/source/_integrations/datadog.markdown b/source/_integrations/datadog.markdown
index 3c263f77fd2..bcb770a41fc 100644
--- a/source/_integrations/datadog.markdown
+++ b/source/_integrations/datadog.markdown
@@ -10,6 +10,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The **Datadog** {% term integration %} sends all state changes to [Datadog](https://www.datadoghq.com/) using a [Datadog Agent](https://docs.datadoghq.com/guides/basic_agent_usage/).
diff --git a/source/_integrations/ddwrt.markdown b/source/_integrations/ddwrt.markdown
index 0db25a330ad..0544bd1c962 100644
--- a/source/_integrations/ddwrt.markdown
+++ b/source/_integrations/ddwrt.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `ddwrt` {% term integration %} offers presence detection by looking at connected devices to a [DD-WRT](https://dd-wrt.com/) based router.
diff --git a/source/_integrations/deako.markdown b/source/_integrations/deako.markdown
index 462290d0df2..22d47c3ae5e 100644
--- a/source/_integrations/deako.markdown
+++ b/source/_integrations/deako.markdown
@@ -1,10 +1,10 @@
---
-title: Deako Smart Lighting
+title: Deako
description: Instructions on how to integrate Deako Smart Lighting into Home Assistant.
ha_category:
- Switch
ha_iot_class: Local Polling
-ha_release: "2024.10"
+ha_release: '2024.10'
ha_domain: deako
ha_config_flow: true
ha_platforms:
@@ -33,4 +33,3 @@ Features not currently supported:
- Deako groups
- Deako scenes
-
diff --git a/source/_integrations/deconz.markdown b/source/_integrations/deconz.markdown
index 44005df3412..efda77ab5d9 100644
--- a/source/_integrations/deconz.markdown
+++ b/source/_integrations/deconz.markdown
@@ -16,7 +16,6 @@ ha_category:
ha_release: 0.61
ha_iot_class: Local Push
ha_config_flow: true
-ha_quality_scale: platinum
ha_codeowners:
- '@Kane610'
ha_domain: deconz
diff --git a/source/_integrations/decora.markdown b/source/_integrations/decora.markdown
index 2672db9bf95..e678ec742e6 100644
--- a/source/_integrations/decora.markdown
+++ b/source/_integrations/decora.markdown
@@ -9,6 +9,7 @@ ha_domain: decora
ha_platforms:
- light
ha_integration_type: integration
+ha_quality_scale: legacy
---
Support for the Decora Bluetooth dimmer switch [Leviton](https://www.leviton.com/en/products/residential/dimmers/automation-smart-home/decora-digital-with-bluetooth-dimmers#t=Products&sort=%40wcs_site_tree_rank%20ascending&layout=card).
diff --git a/source/_integrations/decora_wifi.markdown b/source/_integrations/decora_wifi.markdown
index 70a270c4014..ed78193941a 100644
--- a/source/_integrations/decora_wifi.markdown
+++ b/source/_integrations/decora_wifi.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
Support for [Leviton Decora Wi-Fi](https://www.leviton.com/products/residential/automation-smart-home/decora-smart-all/decora-smart-with-wifi-technology) dimmers/switches via the MyLeviton API.
diff --git a/source/_integrations/delijn.markdown b/source/_integrations/delijn.markdown
index 00e10c726f5..26f89ebfa90 100644
--- a/source/_integrations/delijn.markdown
+++ b/source/_integrations/delijn.markdown
@@ -16,6 +16,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `delijn` {% term integration %} will give you the departure time of the next bus, tram or subway at a specific stop of the De Lijn public transport network in Flanders (Belgium).
diff --git a/source/_integrations/denon.markdown b/source/_integrations/denon.markdown
index b935e08574f..912b74672f2 100644
--- a/source/_integrations/denon.markdown
+++ b/source/_integrations/denon.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `denon` {% term integration %} allows you to control a Denon Network Receiver from Home Assistant. It might be that your device is supported by the [Denon AVR] platform.
diff --git a/source/_integrations/denonavr.markdown b/source/_integrations/denonavr.markdown
index 4a11ba7d9fd..f3ed085c50c 100644
--- a/source/_integrations/denonavr.markdown
+++ b/source/_integrations/denonavr.markdown
@@ -134,14 +134,8 @@ zone3:
description: Specifies if zone 3 should be activated. Zones are displayed as additional media players with the same functionality as the Main Zone of the device supports. Some receivers do not support a second zone.
update_audyssey:
description: Specifies if Audyssey settings should be updated. This can take up to 10 seconds for some receivers.
- required: false
- default: false
- type: boolean
use_telnet:
description: Specifies if a telnet connection should be used to receive device status updates. Using telnet provides realtime updates (local push) for many values but each receiver is limited to a single connection. If you enable this setting, no other connection to your device can be made via telnet. This will be set to true for new installations of the integration but false for existing installs to prevent compatibility issues.
- required: false
- default: true
- type: boolean
{% endconfiguration_basic %}
A few notes:
diff --git a/source/_integrations/device_tracker.mqtt.markdown b/source/_integrations/device_tracker.mqtt.markdown
index 47346c4564f..b6f5ae80915 100644
--- a/source/_integrations/device_tracker.mqtt.markdown
+++ b/source/_integrations/device_tracker.mqtt.markdown
@@ -205,27 +205,27 @@ You can use the command line tool `mosquitto_pub` shipped with `mosquitto` or th
To create the device_tracker:
```bash
-mosquitto_pub -h 127.0.0.1 -t homeassistant/device_tracker/a4567d663eaf/config -m '{"state_topic": "a4567d663eaf/state", "name": "My Tracker", "payload_home": "home", "payload_not_home": "not_home"}'
+mosquitto_pub -h 127.0.0.1 -t homeassistant/device_tracker/a4567d663eaf/config -m '{"state_topic": "homeassistant/device_tracker/a4567d663eaf/state", "name": "My Tracker", "payload_home": "home", "payload_not_home": "not_home"}'
```
To set the state of the device tracker to "home":
```bash
-mosquitto_pub -h 127.0.0.1 -t a4567d663eaf/state -m 'home'
+mosquitto_pub -h 127.0.0.1 -t homeassistant/device_tracker/a4567d663eaf/state -m 'home'
```
To set the state of the device tracker to a named location:
```bash
-mosquitto_pub -h 127.0.0.1 -t a4567d663eaf/state -m 'location_name'
+mosquitto_pub -h 127.0.0.1 -t homeassistant/device_tracker/a4567d663eaf/state -m 'location_name'
```
If the device supports GPS coordinates then they can be sent to Home Assistant by specifying an attributes topic (i.e. "json_attributes_topic") in the configuration payload:
-- Attributes topic: `a4567d663eaf/attributes`
+- Attributes topic: `homeassistant/device_tracker/a4567d663eaf/attributes`
- Example attributes payload:
-Example message to be received at topic `a4567d663eaf/attributes`:
+Example message to be received at topic `homeassistant/device_tracker/a4567d663eaf/attributes`:
```json
{
@@ -238,7 +238,7 @@ Example message to be received at topic `a4567d663eaf/attributes`:
To create the device_tracker with GPS coordinates support:
```bash
-mosquitto_pub -h 127.0.0.1 -t homeassistant/device_tracker/a4567d663eaf/config -m '{"json_attributes_topic": "a4567d663eaf/attributes", "name": "My Tracker"}'
+mosquitto_pub -h 127.0.0.1 -t homeassistant/device_tracker/a4567d663eaf/config -m '{"json_attributes_topic": "homeassistant/device_tracker/a4567d663eaf/attributes", "name": "My Tracker"}'
```
{% note %}
@@ -250,7 +250,7 @@ Using `state_topic` is optional when using `json_attributes_topic` to determine
To set the state of the device tracker to specific coordinates:
```bash
-mosquitto_pub -h 127.0.0.1 -t a4567d663eaf/attributes -m '{"latitude": 32.87336, "longitude": -117.22743, "gps_accuracy": 1.2}'
+mosquitto_pub -h 127.0.0.1 -t homeassistant/device_tracker/a4567d663eaf/attributes -m '{"latitude": 32.87336, "longitude": -117.22743, "gps_accuracy": 1.2}'
```
diff --git a/source/_integrations/devolo_home_control.markdown b/source/_integrations/devolo_home_control.markdown
index d7559b6e678..7588b7735ad 100755
--- a/source/_integrations/devolo_home_control.markdown
+++ b/source/_integrations/devolo_home_control.markdown
@@ -16,7 +16,6 @@ ha_codeowners:
- '@2Fake'
- '@Shutgun'
ha_domain: devolo_home_control
-ha_quality_scale: gold
ha_platforms:
- binary_sensor
- climate
@@ -30,11 +29,15 @@ ha_zeroconf: true
ha_integration_type: hub
---
-devolo Home Control is a Z-Wave ecosystem with a Z-Wave to IP gateway in the center. The integration allows you to control devices connected to the gateway.
+[devolo](https://www.devolo.global) Home Control is a Z-Wave ecosystem with a [Z-Wave to IP gateway](https://www.devolo.de/devolo-home-control-zentrale) in the center. The {% term integration %} allows you to control devices connected to the gateway.
{% include integrations/config_flow.md %}
-## Switches
+Please do not change the URL provided in the advanced mode unless you know what you are doing.
+
+## Supported devices and functions
+
+### Switches
The integration provides support for the following Z-Wave devices:
@@ -46,7 +49,7 @@ The integration provides support for the following Z-Wave devices:
- Fibaro Wall Plug
- Fibaro Double Relay Switch
-## Binary sensors
+### Binary sensors
The integration provides support for the following Z-Wave devices:
@@ -65,28 +68,28 @@ The integration provides support for the following features:
- Overload alarm sensor of various switches
- Sensors I2 and I3 of devolo and Qubino flush mounted relays
-## Cover
+### Cover
The integration provides support for the following Z-Wave devices:
- devolo Shutter FM
- Qubino Flush Shutter
-## Climate
+### Climate
The integration provides support for the following Z-Wave devices:
- devolo Radiator Thermostat
- Danfoss Living Connect Z Radiator Thermostat
-## Lights
+### Lights
The integration provides support for the following Z-Wave devices:
- devolo Dimmer FM
- Qubino Flush Dimmer
-## Sensor
+### Sensor
The integration provides support for the following features:
@@ -94,8 +97,14 @@ The integration provides support for the following features:
- Consumptions of devolo and Qubino devices, that support it
- Voltage of devolo Metering Plug v2
-## Siren
+### Siren
The integration provides support for the following Z-Wave devices:
- devolo Siren
+
+## Removing the integration
+
+This integration follows standard integration removal. No extra steps are required.
+
+{% include integrations/remove_device_service.md %}
diff --git a/source/_integrations/devolo_home_network.markdown b/source/_integrations/devolo_home_network.markdown
index 30e26d925d6..a94ac4df5c9 100755
--- a/source/_integrations/devolo_home_network.markdown
+++ b/source/_integrations/devolo_home_network.markdown
@@ -16,7 +16,6 @@ ha_codeowners:
- '@2Fake'
- '@Shutgun'
ha_domain: devolo_home_network
-ha_quality_scale: platinum
ha_platforms:
- binary_sensor
- button
@@ -30,7 +29,7 @@ ha_zeroconf: true
ha_integration_type: device
---
-The **devolo Home Network** {% term integration %} integration allows you to monitor and control your [devolo](https://www.devolo.global) PLC network.
+The **devolo Home Network** {% term integration %} allows you to monitor and control your [devolo](https://www.devolo.global) PLC network. Depending on the device you add to Home Assistant, different use cases are possible. Roughly you can categorize the devices into Wi-Fi and non-Wi-Fi devices. Non-Wi-Fi devices are more or less limited in monitoring your PLC network. The Wi-Fi devices, however, can help with presence detection and remote control of your guest Wi-Fi. For details, please continue reading about the [entities](#entities) and look at the [supported devices](#supported-devolo-devices).
{% include integrations/config_flow.md %}
@@ -39,9 +38,9 @@ IP address:
description: "IP address of your devolo Home Network device. This can be found in the devolo Home Network App on the device dashboard."
{% endconfiguration_basic %}
-## Device types
+## Entities
-Currently the following device types within Home Assistant are supported.
+Currently, the following entities within Home Assistant are supported.
### Binary sensors
@@ -132,8 +131,89 @@ This integration only supports using the API the devolo Home Network App uses. T
The devolo Gigabridge is the only device that comes with a default password. However, it seems that in factory default the password works for the device website but not for the API. If you give the device a new password via the website, it is applied to both and the integration starts working. Even using the same password again works.
-## Removal
+## Example automations
-This integration follows standard integration removal, no extra steps are required.
+### Restart PLC device on loss of pairing
+
+PLC networks are sometimes flaky. To restore a network's state, it's sometimes a good idea to reboot the PLC device attached to the router if the number of PLC devices is lower than expected. If you apply this automation, keep in mind that devices might be expected on standby. In this example, the expected number of devices is 3.
+
+{% raw %}
+
+```yaml
+alias: "PLC Feeder Restart"
+description: "Restart device connected to the router if number of PLC devices is unexpected low"
+triggers:
+ - trigger: numeric_state
+ entity_id:
+ - sensor.devolo_001_connected_plc_devices # Replace with your device's sensor
+ for:
+ hours: 0
+ minutes: 10
+ seconds: 0
+ below: 3
+actions:
+ - action: button.press
+ target:
+ entity_id: button.devolo_001_restart_device # Replace with your device's button
+```
+
+{% endraw %}
+
+### Notify on data rate drop
+
+Noise on the electric wire can significant disturb PLC data rates. A notification close to a drop can help identify the action that lead to the drop. The following example takes 25% as threshold.
+
+{% raw %}
+
+```yaml
+alias: "PLC data rate"
+description: "PLC data rate dropped more than 25%"
+triggers:
+ - entity_id:
+ - sensor.devolo_001_plc_downlink_phy_rate_devolo_002 # Replace with your device's sensors
+ - sensor.devolo_001_plc_uplink_phy_rate_devolo_002
+ trigger: state
+conditions:
+ - condition: template
+ value_template: >-
+ # Checks if new value is less than 75% of previous value
+ {{ (trigger.to_state.state|float / trigger.from_state.state|float) < 0.75 }}
+actions:
+ - action: notify.mobile_app_pixel_4a
+ data:
+ message: >-
+ PLC data rate of {{ trigger.to_state.name }} dropped to {{
+ trigger.to_state.state }}
+ {{trigger.to_state.attributes.unit_of_measurement}}
+ title: PLC data rate dropped
+```
+
+{% endraw %}
+
+### Enable guest wifi on time basis
+
+You might want to expose your guest wifi only during the day but turn it off at night.
+
+{% raw %}
+
+```yaml
+alias: "Toggle guest Wi-Fi"
+description: "Turn Guest Wi-Fi on and off"
+triggers:
+ - trigger: time
+ at:
+ - "08:00:00"
+ - "17:00:00"
+actions:
+ - action: switch.toggle
+ target:
+ entity_id: switch.devolo_001_enable_guest_wifi # Replace with your device's switch
+```
+
+{% endraw %}
+
+## Removing the integration
+
+This integration follows standard integration removal. No extra steps are required.
{% include integrations/remove_device_service.md %}
diff --git a/source/_integrations/digital_ocean.markdown b/source/_integrations/digital_ocean.markdown
index 0a26ce8659e..1e5cc4b12e5 100644
--- a/source/_integrations/digital_ocean.markdown
+++ b/source/_integrations/digital_ocean.markdown
@@ -17,6 +17,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The **Digital Ocean** {% term integration %} allows you to access the information about your [Digital Ocean](https://www.digitalocean.com/) droplets from Home Assistant.
diff --git a/source/_integrations/directv.markdown b/source/_integrations/directv.markdown
index 9cc6838cf70..a1900f247c4 100644
--- a/source/_integrations/directv.markdown
+++ b/source/_integrations/directv.markdown
@@ -8,7 +8,6 @@ ha_release: 0.25
ha_iot_class: Local Polling
ha_domain: directv
ha_config_flow: true
-ha_quality_scale: silver
ha_ssdp: true
ha_platforms:
- media_player
diff --git a/source/_integrations/discogs.markdown b/source/_integrations/discogs.markdown
index b16da11b67c..4527be87037 100644
--- a/source/_integrations/discogs.markdown
+++ b/source/_integrations/discogs.markdown
@@ -14,6 +14,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `discogs` {% term integration %} allows you to see the current amount of records in your [Discogs](https://www.discogs.com) collection.
diff --git a/source/_integrations/dlib_face_detect.markdown b/source/_integrations/dlib_face_detect.markdown
index 7fb9c035e05..a50462bd2df 100644
--- a/source/_integrations/dlib_face_detect.markdown
+++ b/source/_integrations/dlib_face_detect.markdown
@@ -10,6 +10,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `dlib_face_detect` image processing {% term integration %} allows you to use the [Dlib](http://www.dlib.net/) through Home Assistant. This platform enables face detection from cameras, and can fire events with attributes.
diff --git a/source/_integrations/dlib_face_identify.markdown b/source/_integrations/dlib_face_identify.markdown
index 90eb68e062d..1b6ef3dc42d 100644
--- a/source/_integrations/dlib_face_identify.markdown
+++ b/source/_integrations/dlib_face_identify.markdown
@@ -10,6 +10,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `dlib_face_identify` image processing {% term integration %} allows you to use the [Dlib](http://www.dlib.net/) through Home Assistant. This platform allow you to identify persons on camera and fire an event with identify persons.
diff --git a/source/_integrations/dlna_dms.markdown b/source/_integrations/dlna_dms.markdown
index d6f1b7e278d..1a14af9f903 100644
--- a/source/_integrations/dlna_dms.markdown
+++ b/source/_integrations/dlna_dms.markdown
@@ -10,7 +10,6 @@ ha_codeowners:
- '@chishm'
ha_domain: dlna_dms
ha_ssdp: true
-ha_quality_scale: platinum
ha_integration_type: integration
---
diff --git a/source/_integrations/dominos.markdown b/source/_integrations/dominos.markdown
index f0e243642a4..40a3e77ac55 100644
--- a/source/_integrations/dominos.markdown
+++ b/source/_integrations/dominos.markdown
@@ -7,6 +7,7 @@ ha_iot_class: Cloud Polling
ha_release: 0.59
ha_domain: dominos
ha_integration_type: integration
+ha_quality_scale: legacy
---
The **Dominos Pizza** {% term integration %} allows you to order Dominos Pizza from within your Home Assistant scripts and automations.
diff --git a/source/_integrations/doods.markdown b/source/_integrations/doods.markdown
index b781c3b7c9c..807fdf49d2f 100644
--- a/source/_integrations/doods.markdown
+++ b/source/_integrations/doods.markdown
@@ -10,6 +10,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `doods` image processing {% term integration %} allows you to detect and recognize objects in a camera image using [DOODS](https://github.com/snowzach/doods/). The state of the entity is the number of objects detected and recognized objects are listed in the `summary` attribute along with quantity. The `matches` attribute provides the confidence `score` for recognition and the bounding `box` of the object for each detection category.
diff --git a/source/_integrations/dovado.markdown b/source/_integrations/dovado.markdown
index d26b55fd385..5a2bb9fe56e 100644
--- a/source/_integrations/dovado.markdown
+++ b/source/_integrations/dovado.markdown
@@ -15,6 +15,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The **Dovado** {% term integration %} manages communication with the [Dovado](https://www.dovado.com/) router.
diff --git a/source/_integrations/dsmr_reader.markdown b/source/_integrations/dsmr_reader.markdown
index e3d1be83de9..e91215d9fd2 100644
--- a/source/_integrations/dsmr_reader.markdown
+++ b/source/_integrations/dsmr_reader.markdown
@@ -17,7 +17,6 @@ ha_platforms:
- diagnostics
- sensor
ha_integration_type: integration
-ha_quality_scale: gold
---
The `dsmr_reader` sensor integration allows you to easily add all sensors that [DSMR Reader](https://dsmr-reader.readthedocs.io/en/latest/) (Dutch Smart Meter Requirements Reader) exposes to MQTT. It adds a separate sensor for every field in the MQTT topics which is named `sensor_dsmr_`.
diff --git a/source/_integrations/dublin_bus_transport.markdown b/source/_integrations/dublin_bus_transport.markdown
index 6dd238d25c8..2a6fc34fab3 100644
--- a/source/_integrations/dublin_bus_transport.markdown
+++ b/source/_integrations/dublin_bus_transport.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `dublin_bus_transport` {% term integration %} will give you the time until the next two departures from a Dublin bus stop using the RTPI information.
diff --git a/source/_integrations/duckdns.markdown b/source/_integrations/duckdns.markdown
index b9608a96eda..09e1d6baf3d 100644
--- a/source/_integrations/duckdns.markdown
+++ b/source/_integrations/duckdns.markdown
@@ -10,6 +10,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The DuckDNS {% term integration %} allows you to keep your DuckDNS subdomain always in sync with your public IP address. [DuckDNS](https://www.duckdns.org) is a free service that allows you to bind your own favorite subdomain under `duckdns.org` to the public IP address in use from your router, even though such address is dynamically allocated by your internet service provider and therefore changes over time.
diff --git a/source/_integrations/duotecno.markdown b/source/_integrations/duotecno.markdown
index 8a3c7e8792e..292e40c6928 100644
--- a/source/_integrations/duotecno.markdown
+++ b/source/_integrations/duotecno.markdown
@@ -19,7 +19,6 @@ ha_platforms:
- light
- switch
ha_integration_type: integration
-ha_quality_scale: silver
---
The **Duotecno** {% term integration %} can be used to control [Duotecno](https://www.duotecno.be/) nodes in Home Assistant.
diff --git a/source/_integrations/dweet.markdown b/source/_integrations/dweet.markdown
index 5f7b2bd7383..34149c3602c 100644
--- a/source/_integrations/dweet.markdown
+++ b/source/_integrations/dweet.markdown
@@ -13,6 +13,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `dweet` {% term integration %} makes it possible to transfer details collected with Home Assistant to [Dweet.io](https://dweet.io/) and visualize them with [freeboard.io](https://freeboard.io). Keep in mind that your information will be public!
diff --git a/source/_integrations/easyenergy.markdown b/source/_integrations/easyenergy.markdown
index ea7bfd8e1b6..6f9c111d98d 100644
--- a/source/_integrations/easyenergy.markdown
+++ b/source/_integrations/easyenergy.markdown
@@ -13,11 +13,10 @@ ha_domain: easyenergy
ha_platforms:
- diagnostics
- sensor
-ha_quality_scale: platinum
ha_integration_type: integration
---
-The easyEnergy integration integrates the [easyEnergy](https://www.easyenergy.com) API platform with Home Assistant.
+The **easyEnergy** {% term integration %} integrates the [easyEnergy](https://www.easyenergy.com) API platform with Home Assistant.
The integration makes it possible to retrieve the dynamic energy/gas prices
from easyEnergy in order to gain insight into the price trend of the day and
@@ -29,6 +28,18 @@ Companies that use the data from easyEnergy:
{% include integrations/config_flow.md %}
+## Use cases
+
+With the [energy dashboard](/energy) you can use the `current hour` price entity to calculate how much the electricity or gas has cost each hour based on the prices from easyEnergy. Or use one of the actions in combination with a [template sensor](#prices-sensor-with-response-data) to show the prices for the next 24 hours in a chart on your dashboard.
+
+## Data updates
+
+The integration will poll the easyEnergy API every 10 minutes to update the data in Home Assistant.
+
+## Known limitations
+
+The prices retrieved via the API are bare prices including VAT, however an energy company also charges other rates such as **energy tax** and **purchase costs**. The integration has no configuration option to add these values, but you could create a [template sensor](#all-in-price-sensor) for this.
+
## Sensors
The easyEnergy integration creates a number of sensor entities for both gas
@@ -74,12 +85,12 @@ The energy and gas prices are exposed using [actions](/docs/scripts/perform-acti
Fetches the hourly prices for gas.
-| Data attribute | Optional | Description | Example |
-| ---------------------- | -------- | ----------- | --------|
-| `config_entry` | no | Config entry to use. | 013713c172577bada2874a32dbe44feb
-| `incl_vat` | no | Defines whether the prices include or exclude VAT. Defaults to True | False
-| `start` | yes | Start time to get prices. Defaults to today 00:00:00 | 2023-01-01 00:00:00
-| `end` | yes | End time to get prices. Defaults to today 00:00:00 | 2023-01-01 00:00:00
+| Data attribute | Optional | Description | Example |
+| -------------- | -------- | ---------------------------------------------------- | -------------------------------- |
+| `config_entry` | no | Config entry ID to use. | 013713c172577bada2874a32dbe44feb |
+| `incl_vat` | no | Defines whether the prices include or exclude VAT. | False |
+| `start` | yes | Start time to get prices. Defaults to today 00:00:00 | 2023-01-01 00:00:00 |
+| `end` | yes | End time to get prices. Defaults to today 00:00:00 | 2023-01-01 00:00:00 |
#### Response data
@@ -104,12 +115,12 @@ The response data is a dictionary with the gas timestamps and prices as string a
Fetches the hourly prices for energy that you use (buy).
-| Data attribute | Optional | Description | Example |
-| ---------------------- | -------- | ----------- | --------|
-| `config_entry` | no | Config entry to use. | 013713c172577bada2874a32dbe44feb
-| `incl_vat` | no | Defines whether the prices include or exclude VAT. Defaults to True | False
-| `start` | yes | Start time to get prices. Defaults to today 00:00:00 | 2023-01-01 00:00:00
-| `end` | yes | End time to get prices. Defaults to today 00:00:00 | 2023-01-01 00:00:00
+| Data attribute | Optional | Description | Example |
+| -------------- | -------- | ---------------------------------------------------- | -------------------------------- |
+| `config_entry` | no | Config entry ID to use. | 013713c172577bada2874a32dbe44feb |
+| `incl_vat` | no | Defines whether the prices include or exclude VAT. | False |
+| `start` | yes | Start time to get prices. Defaults to today 00:00:00 | 2023-01-01 00:00:00 |
+| `end` | yes | End time to get prices. Defaults to today 00:00:00 | 2023-01-01 00:00:00 |
#### Response data
@@ -134,11 +145,11 @@ The response data is a dictionary with the energy timestamps as strings and pric
Fetches the hourly prices for energy that you return (sell).
-| Data attribute | Optional | Description | Example |
-| ---------------------- | -------- | ----------- | --------|
-| `config_entry` | no | Config entry to use. | 013713c172577bada2874a32dbe44feb
-| `start` | yes | Start time to get prices. Defaults to today 00:00:00 | 2023-01-01 00:00:00
-| `end` | yes | End time to get prices from. Defaults to today 00:00:00 | 2023-01-01 00:00:00
+| Data attribute | Optional | Description | Example |
+| -------------- | -------- | ------------------------------------------------------- | -------------------------------- |
+| `config_entry` | no | Config entry ID to use. | 013713c172577bada2874a32dbe44feb |
+| `start` | yes | Start time to get prices. Defaults to today 00:00:00 | 2023-01-01 00:00:00 |
+| `end` | yes | End time to get prices from. Defaults to today 00:00:00 | 2023-01-01 00:00:00 |
#### Response data
@@ -159,9 +170,13 @@ The response data is a dictionary with the energy timestamps as strings and pric
}
```
-### Add response to template sensor
+## Templates
-You can use the response data in a template sensor that is updated every hour:
+Create template sensors to display the prices in a chart or to calculate the all-in hour price.
+
+### Prices sensor with response data
+
+To use the response data from the actions, you can create a template sensor that updates every hour.
{% raw %}
@@ -172,16 +187,45 @@ template:
seconds: "*"
actions:
- action: easyenergy.get_energy_usage_prices
- response_variable: response
+ response_variable: prices
data:
- config_entry: "013713c172577bada2874a32dbe44feb"
+ config_entry: 013713c172577bada2874a32dbe44feb
incl_vat: true
sensor:
- name: Energy prices
device_class: timestamp
state: "{{ now() }}"
attributes:
- prices: "{{ response.prices }}"
+ prices: "{{ prices }}"
```
{% endraw %}
+
+### All-in price sensor
+
+To calculate the all-in hour price, you can create a template sensor that calculates the price based on the current price, energy tax, and purchase costs.
+
+{% raw %}
+
+```yaml
+template:
+ - sensor:
+ - name: easyEnergy all-in current price
+ unique_id: allin_current_price
+ icon: mdi:cash
+ unit_of_measurement: "€/kWh"
+ state_class: measurement
+ state: >
+ {% set energy_tax = PUT_HERE_THE_PRICE %}
+ {% set purch_costs = PUT_HERE_THE_PRICE %}
+ {% set current_price = states('sensor.easyenergy_today_energy_usage_current_hour_price') | float(0) %}
+ {{ (current_price + energy_tax + purch_costs) | round(2) }}
+```
+
+{% endraw %}
+
+## Removing the integration
+
+This integration follows standard integration removal steps. If you also use the template sensors, you need to remove them manually.
+
+{% include integrations/remove_device_service.md %}
\ No newline at end of file
diff --git a/source/_integrations/ebox.markdown b/source/_integrations/ebox.markdown
index ef48ce54940..311c880726e 100644
--- a/source/_integrations/ebox.markdown
+++ b/source/_integrations/ebox.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
Integrate your [EBox](https://client.ebox.ca/) account information into Home Assistant.
diff --git a/source/_integrations/ebusd.markdown b/source/_integrations/ebusd.markdown
index 4b9441d9b37..8a88b9f7916 100644
--- a/source/_integrations/ebusd.markdown
+++ b/source/_integrations/ebusd.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
Integration between the [ebusd](https://github.com/john30/ebusd/) daemon (used for communication with the eBUS heating systems), and Home Assistant. The ebusd integrations uses the sensor integration.
diff --git a/source/_integrations/ecoal_boiler.markdown b/source/_integrations/ecoal_boiler.markdown
index de4682478f3..3c8bbeb1ca3 100644
--- a/source/_integrations/ecoal_boiler.markdown
+++ b/source/_integrations/ecoal_boiler.markdown
@@ -13,6 +13,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `ecoal_boiler` {% term integration %} is the base for pumps and sensors managed by [esterownik.pl eCoal boiler controller](https://esterownik.pl/nasze-produkty/ecoal).
diff --git a/source/_integrations/ecobee.markdown b/source/_integrations/ecobee.markdown
index 32e5a1ebade..d7baa7c6a61 100644
--- a/source/_integrations/ecobee.markdown
+++ b/source/_integrations/ecobee.markdown
@@ -268,4 +268,3 @@ Set which sensors are active on a termostat for a specific climate program.
| `entity_id` | no | ecobee thermostat on which to set the active sensors. |
| `preset_mode` | yes | Name of the climate program to set the sensors active on (defaults to currently active program). |
| `sensors` | no | Sensors to set as participating for climate. This is the device ID of the sensor/thermostat. These can be found in the available_sensors attribute. |
-
diff --git a/source/_integrations/eddystone_temperature.markdown b/source/_integrations/eddystone_temperature.markdown
index debbb1d6028..f3f51484d37 100644
--- a/source/_integrations/eddystone_temperature.markdown
+++ b/source/_integrations/eddystone_temperature.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `eddystone_temperature` sensor {% term integration %} reads temperature information from Bluetooth LE advertisements transmitted by [Eddystone](https://en.wikipedia.org/wiki/Eddystone_(Google)) beacons. Your beacons must be configured to transmit UID frames (for identification) and TLM frames (for temperature).
diff --git a/source/_integrations/edimax.markdown b/source/_integrations/edimax.markdown
index c24ef5d03bc..818c7a2116b 100644
--- a/source/_integrations/edimax.markdown
+++ b/source/_integrations/edimax.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
This `edimax` switch {% term integration %} allows you to control the state of your [Edimax](https://www.edimax.com/edimax/merchandise/merchandise_list/data/edimax/global/home_automation_smart_plug/) switches.
diff --git a/source/_integrations/edl21.markdown b/source/_integrations/edl21.markdown
index 9808e8b6c00..b00a3604e41 100644
--- a/source/_integrations/edl21.markdown
+++ b/source/_integrations/edl21.markdown
@@ -54,3 +54,17 @@ To use this integration with a remote transceiver you could use [ser2net](https:
Example `ser2net.conf` configuration file:
> 2001:raw:0:/dev/ttyUSB0:9600 8DATABITS NONE 1STOPBIT
+
+Example `ser2net.yaml` (`ser2net` version 4.3.3) configuration entry:
+
+```yaml
+connection: &con2001
+ enable: on
+ accepter: tcp,2001
+ options:
+ telnet-brk-on-sync: false
+ kickolduser: true
+ connector: serialdev,/dev/ttyUSB0,9600n81,local
+```
+
+Use `socket://:2001` when adding the Smart Meter and asked for a "USB device path".
diff --git a/source/_integrations/egardia.markdown b/source/_integrations/egardia.markdown
index dc1881a8b7d..f107363fadc 100644
--- a/source/_integrations/egardia.markdown
+++ b/source/_integrations/egardia.markdown
@@ -17,6 +17,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The **Egardia** {% term integration %} enables the ability to control an [Egardia](https://egardia.com/)/[Woonveilig](https://woonveilig.nl) control panel. These alarm panels are known under different brand names across the world, including Woonveilig in the Netherlands. This was tested on the WL-1716, GATE-01, GATE-02 and GATE-03 versions of the Egardia/Woonveilig platform. Not only will you integrate your alarm control panel, supported sensors (door contacts at this moment) will be added automatically.
diff --git a/source/_integrations/elgato.markdown b/source/_integrations/elgato.markdown
index f3bf6ab82d1..e03f86ab174 100644
--- a/source/_integrations/elgato.markdown
+++ b/source/_integrations/elgato.markdown
@@ -8,7 +8,6 @@ ha_iot_class: Local Polling
ha_config_flow: true
ha_codeowners:
- '@frenck'
-ha_quality_scale: platinum
ha_domain: elgato
ha_zeroconf: true
ha_platforms:
diff --git a/source/_integrations/eliqonline.markdown b/source/_integrations/eliqonline.markdown
index cf42185de81..1a1110f4b98 100644
--- a/source/_integrations/eliqonline.markdown
+++ b/source/_integrations/eliqonline.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
Integrate your [ELIQ Online](https://eliq.io/) smart meter information into Home Assistant. To get an [access token](https://my.eliq.io/user/settings/api) and the [Channel ID](https://my.eliq.io/user/settings/locations), log in to your account.
diff --git a/source/_integrations/elv.markdown b/source/_integrations/elv.markdown
index 5f57213f348..8d751091b56 100644
--- a/source/_integrations/elv.markdown
+++ b/source/_integrations/elv.markdown
@@ -14,6 +14,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `pca` switch {% term integration %} allows you to control the state of your [ELV PCA 301 smart switch](https://www.elv.de/funkschaltsteckdose-fuer-energiekostenmonitor-pca-301.html). You need an 868 MHz interface like the [JeeLink](https://www.digitalsmarties.net/products/jeelink) flashed with the [pca-hex firmware](https://github.com/mhop/fhem-mirror/blob/master/fhem/FHEM/firmware/JeeLink_PCA301.hex).
diff --git a/source/_integrations/emby.markdown b/source/_integrations/emby.markdown
index 10421af4317..00af58a5812 100644
--- a/source/_integrations/emby.markdown
+++ b/source/_integrations/emby.markdown
@@ -14,6 +14,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The **Emby** {% term integration %} allows you to control a [Emby](https://emby.media/) multimedia system from Home Assistant.
diff --git a/source/_integrations/emoncms_history.markdown b/source/_integrations/emoncms_history.markdown
index c94094e6e21..1289aa42437 100644
--- a/source/_integrations/emoncms_history.markdown
+++ b/source/_integrations/emoncms_history.markdown
@@ -10,6 +10,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `emoncms_history` {% term integration %} makes it possible to transfer (write) details collected with Home Assistant to [Emoncms.org](https://emoncms.org/) or your local running Emoncms instance. It will send the data to a specific input node on Emoncms with the entity IDs as a key. Afterwards you can create feeds and dashboards in Emoncms with the collected data.
diff --git a/source/_integrations/energyzero.markdown b/source/_integrations/energyzero.markdown
index d9d3a12a116..457d389a488 100644
--- a/source/_integrations/energyzero.markdown
+++ b/source/_integrations/energyzero.markdown
@@ -12,11 +12,10 @@ ha_domain: energyzero
ha_platforms:
- diagnostics
- sensor
-ha_quality_scale: platinum
ha_integration_type: integration
---
-The EnergyZero integration integrates the [EnergyZero](https://www.energyzero.nl/) API platform with Home Assistant.
+The **EnergyZero** {% term integration %} integrates the [EnergyZero](https://www.energyzero.nl/) API platform with Home Assistant.
The integration makes it possible to retrieve the dynamic energy/gas prices
from EnergyZero in order to gain insight into the price trend of the day and
@@ -33,6 +32,18 @@ Partners who are a reseller from EnergyZero:
{% include integrations/config_flow.md %}
+## Use cases
+
+With the [energy dashboard](/energy) you can use the `current hour` price entity to calculate how much the electricity or gas has cost each hour based on the prices from EnergyZero. Or use one of the actions in combination with a [template sensor](#prices-sensor-with-response-data) to show the prices for the next 24 hours in a chart on your dashboard.
+
+## Data updates
+
+The integration will poll the EnergyZero API every 10 minutes to update the data in Home Assistant.
+
+## Known limitations
+
+The prices retrieved via the API are bare prices including VAT, however an energy company also charges other rates such as **energy tax** and **purchase costs**. The integration has no configuration option to add these values, but you could create a [template sensor](#all-in-price-sensor) for this.
+
## Sensors
The EnergyZero integration creates a number of sensor entities for both gas and electricity prices.
@@ -65,12 +76,12 @@ Fetches the gas prices. The `config_entry` value be found using the **Actions**
| Data attribute | Optional | Description | Example |
| -------------- | -------- | ---------------------------------------------------- | -------------------------------- |
-| `config_entry` | no | Config entry to use. | 1b4a46c6cba0677bbfb5a8c53e8618b0 |
+| `config_entry` | no | Config entry ID to use. | 1b4a46c6cba0677bbfb5a8c53e8618b0 |
| `incl_vat` | no | Defines whether the prices include or exclude VAT. | false |
| `start` | yes | Start time to get prices. Defaults to today 00:00:00 | 2023-01-01 00:00:00 |
| `end` | yes | End time to get prices. Defaults to today 00:00:00 | 2023-01-01 00:00:00 |
-### Response data
+#### Response data
The response data is a dictionary with the gas timestamps and prices as string and float values.
@@ -98,14 +109,14 @@ The response data is a dictionary with the gas timestamps and prices as string a
Fetches the energy prices. The `config_entry` value be found using the **Actions** tab in the **Developer Tools**, selecting the desired entity and then switching to YAML.
-| Data attribute | Optional | Description | Example |
-| -------------- | -------- | ------------------------------------------------------------------------------------------------------------- | -------------------------------- |
-| `config_entry` | no | Config entry to use. Can be found using the **Actions** tab in the **Developer Tools** and switching to YAML. | 1b4a46c6cba0677bbfb5a8c53e8618b0 |
-| `incl_vat` | no | Defines whether the prices include or exclude VAT. | false |
-| `start` | yes | Start time to get prices. Defaults to today 00:00:00 | 2023-01-01 00:00:00 |
-| `end` | yes | End time to get prices. Defaults to today 00:00:00 | 2023-01-01 00:00:00 |
+| Data attribute | Optional | Description | Example |
+| -------------- | -------- | ---------------------------------------------------- | -------------------------------- |
+| `config_entry` | no | Config entry ID to use. | 1b4a46c6cba0677bbfb5a8c53e8618b0 |
+| `incl_vat` | no | Defines whether the prices include or exclude VAT. | false |
+| `start` | yes | Start time to get prices. Defaults to today 00:00:00 | 2023-01-01 00:00:00 |
+| `end` | yes | End time to get prices. Defaults to today 00:00:00 | 2023-01-01 00:00:00 |
-### Response data
+#### Response data
The response data is a dictionary with the energy timestamps and prices as string and float values.
@@ -128,9 +139,13 @@ The response data is a dictionary with the energy timestamps and prices as strin
{% endraw %}
-### Add response to sensor
+## Templates
-The response data can be added to a template sensor:
+Create template sensors to display the prices in a chart or to calculate the all-in hour price.
+
+### Prices sensor with response data
+
+To use the response data from the actions, you can create a template sensor that updates every hour.
{% raw %}
@@ -144,7 +159,7 @@ template:
response_variable: prices
data:
config_entry: 1b4a46c6cba0677bbfb5a8c53e8618b0
- incl_vat: false
+ incl_vat: true
sensor:
- name: Energy prices
device_class: timestamp
@@ -154,3 +169,32 @@ template:
```
{% endraw %}
+
+### All-in price sensor
+
+To calculate the all-in hour price, you can create a template sensor that calculates the price based on the current price, energy tax, and purchase costs.
+
+{% raw %}
+
+```yaml
+template:
+ - sensor:
+ - name: EnergyZero all-in current price
+ unique_id: allin_current_price
+ icon: mdi:cash
+ unit_of_measurement: "€/kWh"
+ state_class: measurement
+ state: >
+ {% set energy_tax = PUT_HERE_THE_PRICE %}
+ {% set purch_costs = PUT_HERE_THE_PRICE %}
+ {% set current_price = states('sensor.energyzero_today_energy_current_hour_price') | float(0) %}
+ {{ (current_price + energy_tax + purch_costs) | round(2) }}
+```
+
+{% endraw %}
+
+## Removing the integration
+
+This integration follows standard integration removal steps. If you also use the template sensors, you need to remove them manually.
+
+{% include integrations/remove_device_service.md %}
diff --git a/source/_integrations/enphase_envoy.markdown b/source/_integrations/enphase_envoy.markdown
index 42ce8b4b916..f6cf96847ee 100644
--- a/source/_integrations/enphase_envoy.markdown
+++ b/source/_integrations/enphase_envoy.markdown
@@ -23,19 +23,64 @@ ha_platforms:
ha_integration_type: integration
---
-An integration for the [Enphase Envoy](https://enphase.com/en-us/products-and-services/envoy-and-combiner) solar energy gateway. This integration works with older models that only have production metrics (ie. Envoy-C) and newer models that offer both production and consumption metrics (ie. Envoy-S).
+The **Enphase Envoy** {% term integration %} is used to integrate with the [Enphase IQ Gateway](https://enphase.com/en-us/products-and-services/envoy-and-combiner), a communication device for [Enphase](https://enphase.com/homeowners) solar inverters and batteries. In this documentation, as well as in integration entity names, the Enphase IQ Gateway is commonly referred to as `Envoy`, a name from the conception times of this integration and retained for its compact format.
+
+## Supported devices
+
+This integration works with:
+
+- Older and newer Envoy models that only have production metrics (such as Envoy-R (LCD), Envoy-S (not metered))
+- Newer Envoy models that offer both production and consumption metrics (such as Envoy-S Metered equipped with CT).
+- Various Enphase IQ Combiner products that have an embedded Envoy, it will show-up in the same way as the stand-alone one.
+
+## Unsupported devices
+
+This integration does not work with:
+
+- Older Envoy models running firmware before 3.9 which lack a REST API.
## Prerequisites
-- The Envoy must be configured and commissioned.
-- The Envoy must be on your local network with IPV4 connectivity from Home Assistant.
-- Envoy firmware version 3.9 or newer.
-- With Envoy firmware 7 and greater
+- The Envoy must be configured and commissioned.
+- The Envoy must be on your local network with IPV4 connectivity from Home Assistant.
+- Envoy firmware version 3.9 or newer.
+- With Envoy firmware 7 and greater
- an Enlighten cloud username and password.
- Home Assistant 2023.9 or newer.
{% include integrations/config_flow.md %}
+### Required Manual input
+
+The configuration of an individual Envoy requires you to enter the following information:
+
+{% configuration_basic %}
+
+Host:
+ description: "The name or IP address of the Envoy to configure. Will be pre-filled if the Envoy was auto-discovered"
+Username:
+ description: "For firmware version 7.0 and later, enter your Enlighten cloud username For firmware before 7.0, enter username *installer* without a password."
+Password:
+ description: "For firmware version 7.0 and later, enter your Enlighten cloud password For firmware before 7.0, with username *installer*, leave blank."
+{% endconfiguration_basic %}
+
+{% include integrations/option_flow.md %}
+
+Options to enable/disable are listed below. Neither of these are set by default nor need to be set for proper functioning of the integration. Setting these options is only required in described circumstances.
+
+{% configuration_basic %}
+Collect test fixture data in diagnostics report:
+ description: "No/Yes When new features are requested or firmware is upgraded, it can happen that existing test fixtures no longer cover all test cases and new ones are needed. You may be requested to provide data for such test fixtures. If so, and you are willing to provide the data, setting this option enables the collection of test data as part of the [diagnostics report](#fixtures)."
+Always use a new connection when requesting data from the Envoy:
+ description: "No/Yes Some older Envoy firmware may exhibit connection issues when using the default keep-alive connection and report failures. When set, this option disables the use of keep-alive and builds a new connection at each data request. This makes the communication more reliable for these firmware versions. Reported for the Envoy-R, but may apply to other older firmware versions as well."
+{% endconfiguration_basic %}
+
+## Removing the integration
+
+This integration follows standard integration removal. No extra steps are required.
+
+{% include integrations/remove_device_service.md %}
+
## Capabilities
This integration will offer various sensors depending on the configuration of your Enphase system. Sensors are available for the following:
@@ -111,9 +156,13 @@ When the mode entity is set to standard, you can simply set the state of the rel
When the relay mode is set to battery level, the relays will turn on and off based on the remaining battery level of your Encharge batteries. Two number entities are available to control the cutoff and restore levels for the relays. When the battery level drops below the cutoff level, the relays will turn off. When the battery level rises above the restore level, the relays will turn back on.
-## Polling interval
+## Data updates
-The default polling interval is 60 seconds. To customize the polling interval, refer to [defining a custom polling interval](/common-tasks/general/#defining-a-custom-polling-interval). Specify one single entity from the envoy device as target of the action using the `+ choose entity` button. Updating one entity will update all entities of the Envoy and the related devices like the inverters; there is no need to specify multiple or all entities or add (all) inverter entities. When using multiple Envoys, add one entity for each envoy as targets or create separate custom polling intervals with a single entity as needed.
+The integration collects data by default every 60 seconds. To customize the collection interval, refer to [defining a custom polling interval](/common-tasks/general/#defining-a-custom-polling-interval). Specify one single entity from the envoy device as target of the action using the `+ choose entity` button. Updating one entity will update all entities of the Envoy and the related devices like the inverters; there is no need to specify multiple or all entities or add (all) inverter entities. When using multiple Envoys, add one entity for each envoy as targets or create separate custom polling intervals with a single entity as needed.
+
+Envoy installations without installed CT, collect individual solar inverter data every 5 minutes. This collection does not occur for each inverter at the same time in the 5-minute period. Shortening the collection interval will at best show updates for individual inverters quicker, but not yield more granular data.
+
+With installed CT, data granularity increases and shortening the collection interval can provide more details. The Envoy, however, has no unlimited resources and shortening the collection interval may result in dropped connections, Envoy freeze or restarts. It will require some step-wise tuning for each individual situation.
## Credentials or device IP address update
@@ -135,33 +184,121 @@ This integration provides several values suitable for the energy dashboard:
[^5]: Only applies when using Envoy S Metered / IQ Gateway Metered / IQ Combiner with installed and configured storage / battery CT.
-## Configure
+## Actions
-The integration provides a `configure` menu to configure the following options:
+Available actions are: `switch.turn_on`, `switch.turn_off`, `switch.toggle`, [`number.set_value`](#action-numberset_value), [`select.select`](#action-selectselect)
-- Collect test fixture data in [diagnostics report](#diagnostics) - No/Yes
-- Always use a new connection when requesting data from the Envoy - No/Yes
- - Some older Envoy firmware may exhibit connection issues when using the, by default enabled, keep-alive connection and report failures. When set, this option disables the use of keep-alive and builds a new connection at each data request. This makes the communication more reliable for these firmware versions. Reported for the Envoy-R but may apply to other older firmware versions as well.
+### Action `switch.turn_on`/`switch.turn_off`/`switch.toggle`
-## Debug logs and diagnostics
+These actions turn on, off or toggle
-This integration provides debug logs and diagnostics reports as described in the [Home Assistant troubleshooting pages](/docs/configuration/troubleshooting/#debug-logs-and-diagnostics).
+- the Enpower device switches `grid_enabled`, `charge_from_grid`
+- the [Enpower load shedding relays](#enpower-load-shedding-relays) switch.
-### Debug log
+| Data attribute | Optional | Description |
+| - | - | - |
+| `entity_id` | no | Name(s) of entities. For example, `switch.enpower_12345678901001_grid_enabled`. |
-When experiencing issues during the use of the integration, enable the debug log for the Envoy / IQ Gateway. This will add details on the data collection to the Home Assistant log file. Leave the debug log enabled long enough to capture the occurrence of the issue. If the issue is intermittent, this may take a while and it may grow the log file quite a bit.
+Example:
-If you're expecting features to show but they are not shown, reload the integration while debug logging is enabled.
-When this integration is loaded, it will scan the Envoy / IQ Gateway for available features and configure these as needed. Following this initial scan, only data for the found features is collected. Performing a reload with debug enabled results in the debug log containing the initial full scan to assist with analyzing any missing features. Some features are disabled by default, and you need to enable them if you want them to show. Verify this before starting a debug session.
+```yaml
+action: switch.toggle
+target:
+ entity_id:
+ - switch.enpower_12345678901001_grid_enabled
+data: {}
-The debug log will show all communication with the Envoy / IQ Gateway. Lines starting with entities are log entries for the integration:
+action: switch.turn_on
+data: {}
+target:
+ entity_id:
+ - switch.no2
+ - switch.nc2
+```
+
+### Action `number.set_value`
+
+This action changes the setting for the Enpower `Reserve battery level`.
+
+| Data attribute | Optional | Description |
+| - | - | - |
+| `entity_id` | no | Name(s) of entities, e.g., `number.enpower_12345678901001_reserve_battery_level`. |
+| `value` | no | The target value between 0 and 100 to set Enpower reserve battery level to. |
+
+Example:
+
+```yaml
+action: number.set_value
+target:
+ entity_id: number.enpower_12345678901001_reserve_battery_level
+data:
+ value: "25"
+```
+
+### Action `select.select`
+
+This action changes the:
+
+- Relays relay_mode, grid_action, micro_grid_action or generator_action
+- Battery storage mode
+
+| Data attribute | Optional | Description |
+| - | - | - |
+| `entity_id` | no | Name(s) of entities. For example, `select.nc2_generator_action`. |
+| `option` | no | For relay modes: `powered`, `not_powered`, `schedule`, `none`. For storage modes: `backup`, `self_consumption`, `savings` |
+
+Example:
+
+```yaml
+action: select.select_option
+target:
+ entity_id:
+ - select.nc2_generator_action
+data:
+ option: not_powered
+
+action: select.select_option
+target:
+ entity_id:
+ - select.enpower_12345678901001_storage_mode
+data:
+ option: backup
+```
+
+{% note %}
+Technically `select.first`, `select.last`, `select.previous`, `select.next` are available as well, but as there's no logical sequence in the values to select, their use is not advocated.
+{% endnote %}
+
+## Know issues and limitations
+
+- [Envoy firmware](https://enphase.com/installers/resources/documentation/communication?&f[0]=document%3A217) versions come with changing behavior, features and issues. Firmware is pushed to the Envoy by Enphase, while 'not always communicated in detail upfront'. This may result in sudden changes in the Envoy behavior and is always accompanied by an outage while Envoy is being updated.
+- As of Envoy firmware 8.2.4225, the Envoy no longer supports setting battery modes, enabling/disabling charging from the grid, or changing reserve battery level through the local REST API used by HA. Until a resolution is found, you will need to use the Enphase APP to control these.
+
+## Troubleshooting
+
+- The Envoy should not be both on your local LAN and local Wi-Fi at the same time. This may cause auto-discovery to switch back and forth between the interfaces resulting in brief outages every 30 minutes. If you experience these frequent brief outages, make sure only 1 interface is used.
+
+### Debug logs and diagnostics
+
+This integration provides debug log and {% term diagnostics %} report as described in the [Home Assistant troubleshooting pages](/docs/configuration/troubleshooting/#debug-logs-and-diagnostics).
+
+#### Debug log
+
+When experiencing issues during the use of the integration, enable the debug log for the Envoy. Then restart the integration. This will add details on the data collection to the Home Assistant log file. Leave the debug log enabled long enough to capture the occurrence of the issue. If the issue is intermittent, this may take a while and it may grow the log file quite a bit.
+
+If you're expecting features to show but they are not shown, make sure to reload the integration while debug logging is enabled.
+When this integration is loaded, it will scan the Envoy for available features and configure these as needed. Following this initial scan, only data for the found features is collected. Performing a reload with debug enabled results in the debug log containing the initial full scan to assist with analyzing any missing features. Some features are disabled by default, and you need to enable them if you want them to show. Verify this before starting a debug session.
+
+Once the issue occurred, stop the debug logging again (_download of debug log file will start automatically_). When reporting the issue, include the debug log file as well as a [{% term diagnostics %}](#diagnostics) file.
+
+The debug log will show all communication with the Envoy / IQ Gateway. Lines starting with below examples are log entries for the integration:
```txt
2024-03-07 11:20:11.897 DEBUG (MainThread) [homeassistant.components.enphase_envoy
-2024-03-07 11:20:11.898 DEBUG (MainThread) [pyenphase.envoy
+2024-03-07 11:20:11.898 DEBUG (MainThread) [pyenphase
```
-Below a typical data request / reply sequence in the log file. These lines will contain the data details received from the Envoy / IQ Gateway.
+Below a typical data request / reply sequence in the log file. These lines will contain the data details received from the Envoy.
```txt
... [pyenphase.envoy] Requesting https://192.168.1.2/ivp/meters with timeout ...
@@ -174,16 +311,12 @@ The end of a collection cycle is marked by:
... [homeassistant.components.enphase_envoy.coordinator] Finished fetching Envoy 123456 data in 1.234 seconds (success: True)
```
-### Diagnostics
+#### Diagnostics
-The diagnostics file is a JSON file and includes a `data` section with the details for this integration. The file can be viewed with any text editor[^4]. The data section has up to 6 major subsections which reflect how the integration is set up and data is used.
-
-When new features are requested or firmware is upgraded, it can happen that existing test fixtures no longer cover all test cases and new ones are needed. It may happen, you are requested to provide data for such test fixtures. The diagnostics report can provide the needed information to build such test fixtures. By default, the diagnostics report does not include this data. To include the test fixture data, enable this option in the integration [configure](#configure) menu. When this option is enabled, the creation of the diagnostic report may take longer as it will perform a scan of the Envoy. When done creating the report, clear the option to prevent this delay the next time a diagnostic report is created. The option has no impact on the integration's performance, only on the time it takes to create the report.
+The {% term diagnostics %} data file is a JSON file and includes a `data` section with the details for this integration. The file can be viewed with any text editor. The data section has up to 6 major subsections which reflect how the integration is set up and data is used. Include the file when reporting issues.
Below the 6 subsections, each collapsed.
-[^4]: Use of a JSON-aware viewer is not required but makes inspecting the file easier.
-
```JSON
"data": {
"config_entry": { ...
@@ -202,26 +335,28 @@ Below the 6 subsections, each collapsed.
}
```
-#### Config entry
+##### Config entry
Shows the integration configuration created when the integration was added.
-#### Envoy properties
+##### Envoy properties
Shows the conclusions of the initial data scan and what features were identified, including the detected firmware version in the Envoy.
-#### Raw data
+##### Raw data
Shows the data collected from the Envoy during the last data scan when the diagnostic report was created. If in doubt about data shown in the dashboards, consult this section to find the raw data sent by the Envoy. The integration is not modifying this data, it's just providing the data to the entities.
-#### Envoy model data
+##### Envoy model data
Shows the data of the Envoy extracted from the raw_data into Envoy class data used by the Home Assistant integration. This is a subset of the full raw dataset.
-#### Envoy entities by device
+##### Envoy entities by device
Shows all entities created by the integration based on the findings of the initial scan, grouped by device. Entity state based on the last data collection cycle is included. State values here come from the Envoy model data and are the values visible in the dashboards.
-#### Fixtures
+##### Fixtures
-The data to build test fixtures from. This section is only available when the option to provide this is enabled in the integration [configuration](#configure). Information is collected from the envoy in a scan for known and needed endpoints. Data is collected to enable the developers to build test fixtures from it.
+The data to build test fixtures from. This section is only available when the option to Collect test fixture data is enabled in the integration [options](#options).
+
+___
diff --git a/source/_integrations/entur_public_transport.markdown b/source/_integrations/entur_public_transport.markdown
index 6af51bcf8fb..29d3b226048 100644
--- a/source/_integrations/entur_public_transport.markdown
+++ b/source/_integrations/entur_public_transport.markdown
@@ -11,6 +11,7 @@ ha_domain: entur_public_transport
ha_platforms:
- sensor
ha_integration_type: integration
+ha_quality_scale: legacy
---
The `entur_public_transport` {% term integration %} gives real-time departure information for the next departures from any bus stop, car ferry quay, train station, airport and person ferries quay in Norway.
diff --git a/source/_integrations/envisalink.markdown b/source/_integrations/envisalink.markdown
index a61edf68fda..5cd3fa0e007 100644
--- a/source/_integrations/envisalink.markdown
+++ b/source/_integrations/envisalink.markdown
@@ -17,6 +17,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The **Envisalink** {% term integration %} will allow Home Assistant users who own either a DSC or Honeywell alarm panel to leverage their alarm system and its sensors to provide Home Assistant with rich information about their homes. Connectivity between Home Assistant and the alarm panel is accomplished through a device produced by Eyez On, known as the Envisalink. The Envisalink evl3 and evl4 boards provide a TCP/IP interface to the alarm panel, where it emulates an alarm keypad. This board also exposes a raw TCP/IP based API, upon which this integration is built. Currently, the Envisalink version 4 is the latest model. This integration supports both the evl3 and the evl4.
diff --git a/source/_integrations/ephember.markdown b/source/_integrations/ephember.markdown
index 1fc0ecf3dfc..a7879d02686 100644
--- a/source/_integrations/ephember.markdown
+++ b/source/_integrations/ephember.markdown
@@ -14,6 +14,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `ephember` {% term integration %} lets you control [EPH Controls](https://emberapp.ephcontrols.com/) thermostats. The module only works if you have a Wi-Fi gateway to control your EPH system and an account on the EMBER app.
diff --git a/source/_integrations/eq3btsmart.markdown b/source/_integrations/eq3btsmart.markdown
index c9b709fadfd..fc094043bf3 100644
--- a/source/_integrations/eq3btsmart.markdown
+++ b/source/_integrations/eq3btsmart.markdown
@@ -11,7 +11,6 @@ ha_codeowners:
- '@dbuezas'
ha_domain: eq3btsmart
ha_integration_type: device
-ha_quality_scale: silver
ha_platforms:
- binary_sensor
- climate
diff --git a/source/_integrations/esphome.markdown b/source/_integrations/esphome.markdown
index 7f03d5d0081..a4caee5af55 100644
--- a/source/_integrations/esphome.markdown
+++ b/source/_integrations/esphome.markdown
@@ -41,7 +41,6 @@ ha_platforms:
- valve
ha_integration_type: device
ha_dhcp: true
-ha_quality_scale: platinum
works_with:
- local
---
diff --git a/source/_integrations/etherscan.markdown b/source/_integrations/etherscan.markdown
index c2508c08830..f7a7f8b458a 100644
--- a/source/_integrations/etherscan.markdown
+++ b/source/_integrations/etherscan.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `Etherscan` sensor platform displays Ether and ERC-20 token balances from [Etherscan.io](https://etherscan.io).
diff --git a/source/_integrations/eufy.markdown b/source/_integrations/eufy.markdown
index a669473fdf3..5f5008e817d 100644
--- a/source/_integrations/eufy.markdown
+++ b/source/_integrations/eufy.markdown
@@ -15,6 +15,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The **EufyHome** {% term integration %} is the main integration to integrate [eufy](https://eufy.com/) devices sold under the EufyHome product line with Home Assistant.
diff --git a/source/_integrations/everlights.markdown b/source/_integrations/everlights.markdown
index 03593152169..3888dc592dc 100644
--- a/source/_integrations/everlights.markdown
+++ b/source/_integrations/everlights.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
[EverLights](https://myeverlights.com/) are permanent Christmas lights installed on a home's gutters or flashing. This integration can change all LEDs in a zone to a single color or activate a pattern that was previously saved to the control box.
diff --git a/source/_integrations/evohome.markdown b/source/_integrations/evohome.markdown
index b60952716d6..82a91316958 100644
--- a/source/_integrations/evohome.markdown
+++ b/source/_integrations/evohome.markdown
@@ -17,6 +17,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The **Evohome** {% term integration %} links Home Assistant with all _non-US_ [Honeywell Total Connect Comfort (TCC)](https://international.mytotalconnectcomfort.com/Account/Login) CH/DHW systems, such as:
diff --git a/source/_integrations/facebook.markdown b/source/_integrations/facebook.markdown
index a1411180d03..c95710f36b2 100644
--- a/source/_integrations/facebook.markdown
+++ b/source/_integrations/facebook.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `facebook` notification {% term integration %} enables sending notifications via Facebook Messenger, powered by [Facebook](https://facebook.com).
diff --git a/source/_integrations/fail2ban.markdown b/source/_integrations/fail2ban.markdown
index 4247d387d0e..dcf2ceaf7b5 100644
--- a/source/_integrations/fail2ban.markdown
+++ b/source/_integrations/fail2ban.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `fail2ban` {% term integration %} allows for IPs banned by [fail2ban](https://www.fail2ban.org/wiki/index.php/Main_Page) to be displayed in the Home Assistant frontend.
diff --git a/source/_integrations/familyhub.markdown b/source/_integrations/familyhub.markdown
index 6f9be8dc1d6..91d9c86a1c1 100644
--- a/source/_integrations/familyhub.markdown
+++ b/source/_integrations/familyhub.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `familyhub` {% term integration %} allows you to get images of the inside of your [Samsung Family Hub refrigerator](https://www.samsung.com/us/explore/family-hub-refrigerator/connected-hub/) in Home Assistant.
diff --git a/source/_integrations/fastdotcom.markdown b/source/_integrations/fastdotcom.markdown
index 5af3793a629..eba9e112c08 100644
--- a/source/_integrations/fastdotcom.markdown
+++ b/source/_integrations/fastdotcom.markdown
@@ -15,7 +15,6 @@ ha_platforms:
- diagnostics
- sensor
ha_integration_type: integration
-ha_quality_scale: gold
---
The `fastdotcom` integration uses the [Fast.com](https://fast.com/) web service to measure network bandwidth performance.
diff --git a/source/_integrations/ffmpeg_motion.markdown b/source/_integrations/ffmpeg_motion.markdown
index b730843e5c4..57dafc8470b 100644
--- a/source/_integrations/ffmpeg_motion.markdown
+++ b/source/_integrations/ffmpeg_motion.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `ffmpeg` {% term integration %} allows you to use any video feed with [FFmpeg](https://www.ffmpeg.org/) for motion sensors in Home Assistant.
diff --git a/source/_integrations/ffmpeg_noise.markdown b/source/_integrations/ffmpeg_noise.markdown
index 61e3937182f..9b1c34c248e 100644
--- a/source/_integrations/ffmpeg_noise.markdown
+++ b/source/_integrations/ffmpeg_noise.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `ffmpeg` {% term integration %} allows you to use any video or audio feed with [FFmpeg](https://www.ffmpeg.org/) for various sensors in Home Assistant.
diff --git a/source/_integrations/fido.markdown b/source/_integrations/fido.markdown
index c34ac37454d..f8737692ccd 100644
--- a/source/_integrations/fido.markdown
+++ b/source/_integrations/fido.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
Integrate your [Fido](https://www.fido.ca/) account information into Home Assistant.
diff --git a/source/_integrations/fints.markdown b/source/_integrations/fints.markdown
index defd7b76f6b..61f7d9fe7a2 100644
--- a/source/_integrations/fints.markdown
+++ b/source/_integrations/fints.markdown
@@ -12,6 +12,7 @@ ha_integration_type: service
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
With the FinTS {% term integration %}, you can fetch your account information from your bank. This only works with banks that support the FinTS (aka. HBCI) standard. The FinTS standard used by many German banks. So if you do not have a German bank account, this will most likely not work for you. To find out if your bank supports FinTS, check the bank's website or call their hotline.
diff --git a/source/_integrations/firmata.markdown b/source/_integrations/firmata.markdown
index 2623c318ba1..897255376cc 100644
--- a/source/_integrations/firmata.markdown
+++ b/source/_integrations/firmata.markdown
@@ -18,6 +18,7 @@ ha_platforms:
- sensor
- switch
ha_integration_type: integration
+ha_quality_scale: legacy
---
[Firmata](https://github.com/firmata/protocol) can be used to add analog and digital inputs and outputs to Home Assistant. This allows for buttons, switches, motion detectors, relay control, sensors, potentiometers, dimmers, etc. The integration can currently connect to a Firmata board via serial or serial over USB.
diff --git a/source/_integrations/fixer.markdown b/source/_integrations/fixer.markdown
index f22e524fd2a..ee248cd8ae1 100644
--- a/source/_integrations/fixer.markdown
+++ b/source/_integrations/fixer.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `fixer` {% term integration %} will show you the current exchange rate from [Fixer.io](https://fixer.io/) which is using data from the [European Central Bank (ECB)](https://www.ecb.europa.eu).
diff --git a/source/_integrations/fleetgo.markdown b/source/_integrations/fleetgo.markdown
index f0b4927444b..ad405bf696b 100644
--- a/source/_integrations/fleetgo.markdown
+++ b/source/_integrations/fleetgo.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `fleetgo` device tracker {% term integration %} allows you to integrate your vehicles equipped with [FleetGO](https://fleetgo.com) hardware into Home Assistant. It allows you to see certain details about your vehicle, but also shows your vehicle on the map.
diff --git a/source/_integrations/flexit.markdown b/source/_integrations/flexit.markdown
index b54a78ff613..e8eda43bc9c 100644
--- a/source/_integrations/flexit.markdown
+++ b/source/_integrations/flexit.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
Integrates [Flexit](https://www.flexit.no/en/) Air Conditioning unit into Home Assistant.
diff --git a/source/_integrations/flic.markdown b/source/_integrations/flic.markdown
index 82ff8df1064..c879f70328c 100644
--- a/source/_integrations/flic.markdown
+++ b/source/_integrations/flic.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `flic` {% term integration %} allows you to receive click events from [flic](https://flic.io) smart buttons.
diff --git a/source/_integrations/flock.markdown b/source/_integrations/flock.markdown
index 61f5eceec16..2f341077c92 100644
--- a/source/_integrations/flock.markdown
+++ b/source/_integrations/flock.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `flock` integration uses [Flock.com](https://flock.com) to deliver notifications from Home Assistant.
diff --git a/source/_integrations/folder.markdown b/source/_integrations/folder.markdown
index f47e4a52f80..aab216184b6 100644
--- a/source/_integrations/folder.markdown
+++ b/source/_integrations/folder.markdown
@@ -10,6 +10,7 @@ ha_domain: folder
ha_platforms:
- sensor
ha_integration_type: integration
+ha_quality_scale: legacy
---
Sensor for monitoring the contents of a folder. Note that folder paths must be added to [allowlist_external_dirs](/integrations/homeassistant/#allowlist_external_dirs). Optionally a [wildcard filter](https://docs.python.org/3.6/library/fnmatch.html) can be applied to the files considered within the folder. The state of the sensor is the size in MB of files within the folder that meet the filter criteria.
diff --git a/source/_integrations/foobot.markdown b/source/_integrations/foobot.markdown
index 3e4b97074d2..0480bd92cfa 100644
--- a/source/_integrations/foobot.markdown
+++ b/source/_integrations/foobot.markdown
@@ -9,6 +9,7 @@ ha_domain: foobot
ha_platforms:
- sensor
ha_integration_type: integration
+ha_quality_scale: legacy
---
The `foobot` sensor platform will fetch air quality data from your or yours [Foobot device(s)](https://foobot.io/features/).
diff --git a/source/_integrations/forecast_solar.markdown b/source/_integrations/forecast_solar.markdown
index 46760e298dc..f71147b63c6 100644
--- a/source/_integrations/forecast_solar.markdown
+++ b/source/_integrations/forecast_solar.markdown
@@ -13,7 +13,6 @@ ha_domain: forecast_solar
ha_platforms:
- diagnostics
- sensor
-ha_quality_scale: platinum
ha_integration_type: service
---
diff --git a/source/_integrations/fortios.markdown b/source/_integrations/fortios.markdown
index acfd719c029..80892caa96e 100644
--- a/source/_integrations/fortios.markdown
+++ b/source/_integrations/fortios.markdown
@@ -14,6 +14,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The FortiOS presence detection enables Home Assistant to track devices with a MAC address connected to a FortiGate from [Fortinet](https://www.fortinet.com).
diff --git a/source/_integrations/foursquare.markdown b/source/_integrations/foursquare.markdown
index 44815abbb94..6d439df5f22 100644
--- a/source/_integrations/foursquare.markdown
+++ b/source/_integrations/foursquare.markdown
@@ -10,6 +10,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `foursquare` {% term integration %} accepts pushes from the Foursquare [Real-Time API](https://developer.foursquare.com/overview/realtime) and an action to check users in on Swarm.
diff --git a/source/_integrations/free_mobile.markdown b/source/_integrations/free_mobile.markdown
index 06a91868b52..650be14218f 100644
--- a/source/_integrations/free_mobile.markdown
+++ b/source/_integrations/free_mobile.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `free_mobile` {% term integration %} uses the French mobile operator [Free Mobile](http://mobile.free.fr/) to send SMS to your own cell phone.
diff --git a/source/_integrations/freedns.markdown b/source/_integrations/freedns.markdown
index f6f77adab2e..0d1cb7b5646 100644
--- a/source/_integrations/freedns.markdown
+++ b/source/_integrations/freedns.markdown
@@ -7,6 +7,7 @@ ha_iot_class: Cloud Push
ha_release: 0.67
ha_domain: freedns
ha_integration_type: integration
+ha_quality_scale: legacy
---
With the `freedns` {% term integration %} you can keep your [FreeDNS](https://freedns.afraid.org) record up to date.
diff --git a/source/_integrations/fritzbox.markdown b/source/_integrations/fritzbox.markdown
index 89a13a01ca8..5b0eca10213 100644
--- a/source/_integrations/fritzbox.markdown
+++ b/source/_integrations/fritzbox.markdown
@@ -26,7 +26,6 @@ ha_codeowners:
- '@mib1185'
- '@flabbamann'
ha_integration_type: hub
-ha_quality_scale: gold
---
The AVM FRITZ!SmartHome integration for Home Assistant allows you to integrate [AVM Smart Home](https://en.avm.de/products/smart-home/) (_former AVM FRITZ!DECT_) devices like plugs, thermostats or shutter drivers as also trigger so called smart home templates (_contains settings for Smart Home devices of the same type_).
@@ -63,17 +62,11 @@ If you still want to use the predefined user, please note that as of FRITZ!OS 7.
{% configuration_basic %}
Host:
- description: "The hostname or IP address of your FRITZ!Box router."
- required: true
- type: string
+ description: "The hostname or IP address of your FRITZ!Box router."
Username:
- description: "Name of the user to connect Home Assistant to your FRITZ!Box (_see [prerequisites](#prerequisites)_)"
- required: true
- type: string
+ description: "Name of the user to connect Home Assistant to your FRITZ!Box (_see [prerequisites](#prerequisites)_)"
Password:
- description: "Password for the user to connect Home Assistant to your FRITZ!Box (_see [prerequisites](#prerequisites)_)"
- required: true
- type: string
+ description: "Password for the user to connect Home Assistant to your FRITZ!Box (_see [prerequisites](#prerequisites)_)"
{% endconfiguration_basic %}
## Data fetching and limitations
diff --git a/source/_integrations/fronius.markdown b/source/_integrations/fronius.markdown
index 8993c07473c..edd4aaf32a5 100644
--- a/source/_integrations/fronius.markdown
+++ b/source/_integrations/fronius.markdown
@@ -13,20 +13,51 @@ ha_iot_class: Local Polling
ha_platforms:
- diagnostics
- sensor
-ha_quality_scale: platinum
ha_dhcp: true
ha_integration_type: integration
---
The Fronius integration polls a [Fronius](https://www.fronius.com/) solar inverter or datalogger for details of a Fronius SolarNet setup and integrate it in your Home Assistant installation.
+## Supported devices
+
+The integration supports all inverters with integrated Datamanager or external "Datalogger Web" providing the Fronius SolarAPI (JSON) interface of version `v0` or `v1`. This includes among others:
+
+- Agilo
+- Eco
+- Galvo
+- Gen24
+- IG Plus
+- Primo
+- Symo
+- Symo Hybrid
+- Tauro
+
+Devices connected to those inverters or dataloggers are supported as well.
+
+- Energy meter (Fronius Smart Meter or S0 meter connected to the inverter)
+- Ohmpilot
+- Storage
+
## Prerequisites
You should either set a static IP or assign a static DHCP lease for the Fronius device, or alternatively access it through the local DNS name if your network is configured accordingly.
-For Gen24 devices (delivered with Firmware >= 1.14.1) make sure to activate "Solar API" in the inverters web interface.
+
+{% note %}
+For Gen24 devices (delivered with Firmware >= 1.14.1) make sure to activate "Solar API" in the inverters web interface. For older devices, Solar API should be enabled by default.
+{% endnote %}
+
+## Configuration
{% include integrations/config_flow.md %}
+{% configuration_basic %}
+Host:
+ description: "The host name or the IP address of the device."
+ required: true
+ type: string
+{% endconfiguration_basic %}
+
## Monitored data
Each device adds a set of sensors to Home Assistant.
@@ -35,14 +66,16 @@ Each device adds a set of sensors to Home Assistant.
- Logger information
- General information about the Fronius Datalogger. Not available on "Gen24" devices. Updated every hour.
+ General information about the Fronius Datalogger. Not available on "Gen24" devices.
+ Updated every hour.
- Serial number, software and hardware platforms
- Current price of energy consumed and returned to grid and the CO₂ factor as set in the Dataloggers settings
- Power flow
- Cumulative data of the SolarNet system. Updated every 10 seconds.
+ Cumulative data of the SolarNet system.
+ Updated every 10 seconds.
- Energy produced on the current day, year and total produced energy
- Power fed to the grid (if positive) or consumed from the grid (if negative)
@@ -54,31 +87,34 @@ Each device adds a set of sensors to Home Assistant.
- Inverter
- Energy produced on the current day, year and total produced energy, power, current, voltage, frequency and status for an individual inverter. Updated every minute.
+ The energy produced on the current day, year (not for Gen24 devices), and total produced energy, power, current, voltage, frequency, and status for an individual inverter.
+ Updated every minute.
- Meter
- Detailed information about power, current and voltage, if supported split among the phases. Updated every minute.
+ Detailed information about power, current, and voltage, if supported, split among the phases.
+ Updated every minute.
- Ohmpilot
- Detailed information about energy, power, and temperature of your Ohmpilots. Updated every minute.
+ Detailed information about energy, power, and temperature of your Ohmpilots.
+ Updated every minute.
- Storage
- Detailed information about current, voltage, state, cycle count, capacity and more about installed batteries. Updated every minute.
+ Detailed information about current, voltage, state, cycle count, capacity and more about installed batteries.
+ Updated every minute.
-Note that some data (like photovoltaic production) is only provided by the Fronius device when non-zero.
-When the integration is added at night, there might be no sensors added providing photovoltaic related data. Entities will be added on sunrise, when the Fronius devices begin to provide more data.
-
-When an endpoint is not responding correctly the update interval will increase to 10 minutes (3 minutes for power flow) until valid data is received again. This reduces the amount of requests to Fronius devices using night mode (shutdown when no PV power is produced).
+When an endpoint is not responding correctly the update interval will increase to 10 minutes (3 minutes for power flow) until valid data is received again. This reduces the number of requests to Fronius devices using night mode (shutdown when no PV power is produced).
## Energy dashboard
+Recommended [energy dashboard](/docs/energy/) configuration:
+
- For _"Solar production"_:
- If no battery is connected to an inverter: Add each inverters `Energy total` entity.
- - If a battery is connected to an inverter: Use [Riemann sum](/integrations/integration/) over `Power photovoltaics` entity (from your `SolarNet` device).
-- _"Battery systems"_ energy values aren't supported directly by the API. Use [Riemann sum](/integrations/integration/) to integrate `Power battery charge` and `Power battery discharge` into energy values (kWh).
+ - If a battery is connected to an inverter: Use [Riemann sum](/integrations/integration/) over `SolarNet Power photovoltaics` entity.
+- _"Battery systems"_ energy values aren't supported directly by the Solar API. Use [Riemann sum](/integrations/integration/) to integrate `SolarNet Power battery charge` and `SolarNet Power battery discharge` into energy values (kWh).
- For _"Devices"_ use the Ohmpilots `Energy consumed` entity.
The energy meter integrated with Fronius devices can be installed (and configured) in two different installation positions: _"feed in path"_ (grid interconnection point) or _"consumption path"_.
@@ -94,9 +130,73 @@ Recommended energy dashboard configuration for meter location in feed in path:
Recommended energy dashboard configuration for meter location in consumption path:
-- Use [Riemann sum](/integrations/integration/) to integrate `Power grid import` and `Power grid export` entities into energy values (kWh).
-- Use these energy entities for `Grid consumption` and `Return to grid` in the energy dashboard configuration.
+1. Use [Riemann sum](/integrations/integration/) to integrate `SolarNet Power grid import` and `SolarNet Power grid export` entities into energy values (Wh or kWh).
+2. Use these energy entities for `Grid consumption` and `Return to grid` in the energy dashboard configuration.
+
+## Example automation
+
+The following {% term automation %} toggles a switch when the solar production crosses certain thresholds:
+
+```yaml
+description: "Turn on switch when PV power is above 1000 W and turn it off below 50 W."
+mode: single
+triggers:
+ - trigger: state
+ entity_id:
+ - sensor.solarnet_power_photovoltaics
+conditions: []
+actions:
+ - choose:
+ - conditions:
+ - condition: numeric_state
+ entity_id: sensor.solarnet_power_photovoltaics
+ above: 1000
+ sequence:
+ - action: switch.turn_on
+ metadata: {}
+ data: {}
+ target:
+ entity_id: switch.swtest
+ - conditions:
+ - condition: numeric_state
+ entity_id: sensor.solarnet_power_photovoltaics
+ below: 50
+ sequence:
+ - action: switch.turn_off
+ metadata: {}
+ data: {}
+ target:
+ entity_id: switch.swtest
+
+```
## Note
Fronius often provides firmware updates for the datamanager interfaces and the devices in their system, it's recommended to check and apply them regularly. This integration relies on functionality present in rather recent firmware.
+
+## Known limitations
+
+The Solar API used by this integration is read-only. It does not provide any means to control the Fronius devices. Most Fronius devices however do support Modbus TCP directly, so the [Modbus integration](/integrations/modbus/) could be leveraged to control the devices from Home Assistant. Details about Modbus Registers can be found in the devices documentation or at the [Fronius website](https://www.fronius.com/).
+
+## Troubleshooting
+
+### Can’t setup the device
+
+- Make sure the device is not in a power-saving mode when currently not producing energy.
+- Make sure the device is connected to the network and is reachable from the Home Assistant instance.
+- Check the device's settings to ensure that the **Solar API** is enabled.
+
+### Some devices are missing after setup or restart of Home Assistant
+
+- Make sure inverters are not in a power-saving mode when currently not producing energy - or wait until they start producing energy.
+
+### Some entities are missing after setup
+
+Some data, like photovoltaic production, is only provided by the Fronius device when non-zero.
+When the integration is added at night, there might be no entities added providing photovoltaic related data. Entities will be added on sunrise, when the Fronius devices begin to provide more data.
+
+## Remove integration
+
+This integration can be removed by following these steps:
+
+{% include integrations/remove_device_service.md %}
diff --git a/source/_integrations/fujitsu_fglair.markdown b/source/_integrations/fujitsu_fglair.markdown
index b3a6628b751..cda9465c0a0 100644
--- a/source/_integrations/fujitsu_fglair.markdown
+++ b/source/_integrations/fujitsu_fglair.markdown
@@ -1,5 +1,5 @@
---
-title: Fujitsu FGLair
+title: FGLair
description: Control your Fujitsu heat pump or air conditioner that uses the FGLair app
ha_category:
- Climate
@@ -11,7 +11,7 @@ ha_codeowners:
ha_config_flow: true
ha_platforms:
- climate
-ha_iot_class: "Cloud Polling"
+ha_iot_class: Cloud Polling
---
The {{ page.title }} {% term integration %} provides support for Fujitsu heat pumps and air conditioners that use the FGLair app.
@@ -33,4 +33,3 @@ This integration supports the following functionalities (if the devices support
- [`turn on/off`](/integrations/climate#action-climateturn_on)
- [`fan mode`](/integrations/climate#action-climateset_fan_mode)
- [`swing mode`](/integrations/climate#action-climateset_swing_mode)
-
diff --git a/source/_integrations/fully_kiosk.markdown b/source/_integrations/fully_kiosk.markdown
index 306a8fbcaca..fa104caf7ef 100644
--- a/source/_integrations/fully_kiosk.markdown
+++ b/source/_integrations/fully_kiosk.markdown
@@ -26,6 +26,7 @@ ha_platforms:
- switch
ha_integration_type: integration
ha_dhcp: true
+ha_quality_scale: bronze
---
[Fully Kiosk Browser](https://www.fully-kiosk.com) is a powerful kiosk browser for Android devices. It provides a number of features for monitoring and controlling your Android device. This integration gives you access to control your device and view the status in Home Assistant.
@@ -158,8 +159,8 @@ target:
device_id: a674c90eca95eca91f6020415de07713
```
-## Remove integration
+## Removing the integration
-This integration follows standard integration removal, no extra steps are required.
+This integration follows standard integration removal. No extra steps are required.
{% include integrations/remove_device_service.md %}
diff --git a/source/_integrations/futurenow.markdown b/source/_integrations/futurenow.markdown
index e2b50ac041b..44b90123e74 100644
--- a/source/_integrations/futurenow.markdown
+++ b/source/_integrations/futurenow.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `futurenow` light {% term integration %} allows you to use [P5](https://www.p5.hu/) FutureNow relay/dimmer units as lights. Currently supported units:
diff --git a/source/_integrations/fyta.markdown b/source/_integrations/fyta.markdown
index daca58a61d9..aafecc51471 100644
--- a/source/_integrations/fyta.markdown
+++ b/source/_integrations/fyta.markdown
@@ -13,7 +13,6 @@ ha_platforms:
- diagnostics
- sensor
ha_integration_type: hub
-ha_quality_scale: platinum
---
The **FYTA** {% term integration %} uses the open API of [FYTA](https://www.fyta.de) to obtain the data from your plant sensors and integrate these into Home Assistant.
@@ -32,9 +31,9 @@ To setup the integration you need the following information:
{% configuration_basic %}
Email:
- description: "The email address used to access the FYTA account."
+ description: "The email address used to access the FYTA account."
Password:
- description: "The password used to access the FYTA account."
+ description: "The password used to access the FYTA account."
{% endconfiguration_basic %}
## Configuration options
@@ -42,6 +41,7 @@ Password:
The integration has no additional configuration options.
## Supported functionality
+
### Sensors
The following sensors are currently available per plant:
@@ -49,17 +49,33 @@ The following sensors are currently available per plant:
| name | Unit | Description |
|-----------------------|--------|:-------------------------------------------|
| scientific_name | | Scientific name of the plant |
-| plant_status | | FYTA-Status (number 1 to 5) |
-| temperature_status | | FYTA-Status (number 1 to 5) |
-| light_status | | FYTA-Status (number 1 to 5) |
-| moisture_status | | FYTA-Status (number 1 to 5) |
-| salinity_status | | FYTA-Status (number 1 to 5) |
+| plant_status | | FYTA-Status (cf. scale below) |
+| temperature_status | | FYTA-Status (cf. scale below) |
+| light_status | | FYTA-Status (cf. scale below) |
+| moisture_status | | FYTA-Status (cf. scale below) |
+| salinity_status | | FYTA-Status (cf. scale below) |
| temperature | °C | Temperature measured by sensor |
| light | μmol/h | Light measured by sensor (hourly photosynthetically active radiation PAR)|
| moisture | % | Moisture measured by sensor |
| salinity | mS/cm | Salinity measured by sensor (measured as conductivity)|
| battery_level | % | Battery level of the sensor |
+The plant status may have one of the following states:
+
+- Plant deleted
+- Plant good status
+- Plant bad status
+- Plant no sensor
+
+For plant measurements, the following status scale is applied:
+
+- No Data
+- Too Low
+- Low
+- Perfect
+- High
+- Too High
+
## Data updates
The integration fetches data from the device every 4 minutes.
diff --git a/source/_integrations/garadget.markdown b/source/_integrations/garadget.markdown
index a8b8c86e954..7578cf44eda 100644
--- a/source/_integrations/garadget.markdown
+++ b/source/_integrations/garadget.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `garadget` cover {% term integration %} lets you control [Garadget](https://www.garadget.com/) garage door futurizers through Home Assistant.
diff --git a/source/_integrations/garages_amsterdam.markdown b/source/_integrations/garages_amsterdam.markdown
index 5cc9d4970ad..f2bf5a60294 100644
--- a/source/_integrations/garages_amsterdam.markdown
+++ b/source/_integrations/garages_amsterdam.markdown
@@ -46,7 +46,7 @@ Some parking garages don't have long-term parking spaces, in which case the 2 sp
Each parking garage also has a binary sensor, which indicates whether there are problems in the data provision from the API. When it indicates `ok` everything is fine. If the state changes to `problem`, the upstream data might not be up to date or reliable and will remain in this state until new data is coming in.
-## Remove integration
+## Removing the integration
You can remove each parking garage instance by following the default removal process.
diff --git a/source/_integrations/gc100.markdown b/source/_integrations/gc100.markdown
index cb7107f8fd3..0edaa6b021b 100644
--- a/source/_integrations/gc100.markdown
+++ b/source/_integrations/gc100.markdown
@@ -15,6 +15,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The Global Caché GC-100 can be integrated into Home Assistant. GC-100 is a TCP-controllable
diff --git a/source/_integrations/gdacs.markdown b/source/_integrations/gdacs.markdown
index 1f10169fd0e..d2c35497ac8 100644
--- a/source/_integrations/gdacs.markdown
+++ b/source/_integrations/gdacs.markdown
@@ -6,7 +6,6 @@ ha_category:
ha_iot_class: Cloud Polling
ha_release: 0.106
ha_config_flow: true
-ha_quality_scale: platinum
ha_codeowners:
- '@exxamalte'
ha_domain: gdacs
diff --git a/source/_integrations/geniushub.markdown b/source/_integrations/geniushub.markdown
index 58d1c8413ae..54b689569ed 100644
--- a/source/_integrations/geniushub.markdown
+++ b/source/_integrations/geniushub.markdown
@@ -26,6 +26,17 @@ The `geniushub` integration links Home Assistant with your Genius Hub CH/DHW sys
It uses the [geniushub](https://pypi.org/project/geniushub-client/) client library, which provides data compatible with the v1 API that _may not_ exactly match that of the official Web App.
+## Prerequisites
+
+You can configure the integration either via the cloud API or the local API.
+
+- **Cloud API**: requires a **hub token** obtained from [my.geniushub.co.uk](https://my.geniushub.co.uk/).
+- **Local API**: requires your **username** and **password** as used with [geniushub.co.uk/app](https://www.geniushub.co.uk/).
+
+The local API is unofficial, but is faster and has more features, while the cloud API is slower.
+
+{% include integrations/config_flow.md %}
+
### Zones
Each zone controlled by your Genius Hub will be exposed as either a:
@@ -177,71 +188,3 @@ value_template: "{{ state_attr('climate.genius_zone_12', 'status').occupied }}"
```
{% endraw %}
-
-## Configuration
-
-To set up this integration, add one of the following to your{% term "`configuration.yaml`" %}on.yaml`" %} file.
-
-If required, you can switch between one Option and the other and, as the `unique_id` remains consistent, state history will be preserved. This assumes that the correct MAC address is provided for Option 2, below. If a wrong MAC address was provided for Option 1, then the MAC address can be overridden for Option 1 to maintain these links within the entity registry.
-
-### Option 1: hub hostname/address with user credentials
-
-This is the recommended option.
-
-- Requires your **username** & **password**, as used with [geniushub.co.uk/app](https://www.geniushub.co.uk/app).
-- Uses the v3 API - unofficial, but there are additional features (e.g., battery levels).
-- Polls the hub directly (so is faster, say ~1s response time).
-- You have the option of specifying a MAC address (not recommended, see above).
-
-The hub does not have to be in the same subnet as your Home Assistant instance.
-
-### Option 2: hub token only
-
-This option is recommended only if Option 1 does not work. The MAC address should match that written on the back of the Hub.
-
-- Requires a **hub token** obtained from [my.geniushub.co.uk](https://my.geniushub.co.uk/).
-- Uses the v1 API - which is well-documented.
-- Polls Heat Genius' own servers (so is slower, say ~5-10s response time).
-- You should use the Hub's MAC address (although any valid MAC will do).
-
-```yaml
-# Example configuration.yaml entry, using a Hub Token
-geniushub:
- token: GENIUS_HUB_TOKEN
- mac: GENIUS_HUB_MAC
-```
-
-```yaml
-# Example configuration.yaml entry, directly polling the Hub
-geniushub:
- host: IP_ADDRESS
- username: GENIUS_HUB_USERNAME
- password: GENIUS_HUB_PASSWORD
-```
-
-{% configuration %}
-token:
- description: The Hub Token of the Genius Hub.
- required: true
- type: string
-mac:
- description: The MAC address of the Hub's ethernet port.
- required: false
- type: string
-host:
- description: The hostname/IP address of the Genius Hub.
- required: true
- type: string
-username:
- description: Your Genius Hub username.
- required: false
- type: string
-password:
- description: Your Genius Hub password.
- required: false
- type: string
-{% endconfiguration %}
-
-Note: `username` and `password` are only required when `host` is used (instead of `token`).
-
-Note: `mac` is required if `token` is used (instead of `host`) and is optional otherwise.
diff --git a/source/_integrations/geo_rss_events.markdown b/source/_integrations/geo_rss_events.markdown
index 568a53dc25c..2f7484fa9d0 100644
--- a/source/_integrations/geo_rss_events.markdown
+++ b/source/_integrations/geo_rss_events.markdown
@@ -14,6 +14,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `geo_rss_events` {% term integration %} retrieves events from a GeoRSS feed and shows information of those events filtered by distance to Home Assistant's location and grouped by category.
diff --git a/source/_integrations/geonetnz_quakes.markdown b/source/_integrations/geonetnz_quakes.markdown
index 5935be1b5b2..b74ceb23c9a 100644
--- a/source/_integrations/geonetnz_quakes.markdown
+++ b/source/_integrations/geonetnz_quakes.markdown
@@ -6,7 +6,6 @@ ha_category:
ha_iot_class: Cloud Polling
ha_release: 0.98
ha_config_flow: true
-ha_quality_scale: platinum
ha_codeowners:
- '@exxamalte'
ha_domain: geonetnz_quakes
diff --git a/source/_integrations/gios.markdown b/source/_integrations/gios.markdown
index 77da90c8aa5..789f8f9720a 100644
--- a/source/_integrations/gios.markdown
+++ b/source/_integrations/gios.markdown
@@ -9,7 +9,6 @@ ha_config_flow: true
ha_codeowners:
- '@bieniu'
ha_domain: gios
-ha_quality_scale: platinum
ha_platforms:
- diagnostics
- sensor
diff --git a/source/_integrations/gitlab_ci.markdown b/source/_integrations/gitlab_ci.markdown
index 6aa38468993..57d4488f1fe 100644
--- a/source/_integrations/gitlab_ci.markdown
+++ b/source/_integrations/gitlab_ci.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `gitlab_ci` sensor {% term integration %} integrates results reported by CI/CD Pipeline Jobs in [GitLab](https://gitlab.com/).
diff --git a/source/_integrations/gitter.markdown b/source/_integrations/gitter.markdown
index daddc2ffe97..e807712c673 100644
--- a/source/_integrations/gitter.markdown
+++ b/source/_integrations/gitter.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
This `gitter` {% term integration %} allows one to monitor a [Gitter.im](https://gitter.im) chatroom for unread messages.
diff --git a/source/_integrations/go2rtc.markdown b/source/_integrations/go2rtc.markdown
index 780d7970c58..6adfe996883 100644
--- a/source/_integrations/go2rtc.markdown
+++ b/source/_integrations/go2rtc.markdown
@@ -11,6 +11,7 @@ ha_domain: go2rtc
ha_integration_type: system
related:
- docs: /installation/
+ha_quality_scale: legacy
---
go2rtc is an open source project providing a camera streaming application that supports formats such as RTSP, WebRTC, HomeKit, FFmpeg, RTMP. The **go2rtc** {% term integration %} connects to a go2rtc instance and provides a WebRTC proxy for all your cameras. To learn more about go2rtc, refer to the [project's GitHub page](https://github.com/AlexxIT/go2rtc/).
@@ -59,4 +60,3 @@ Use a self-hosted instance:
go2rtc:
url: http://my-go2rtc-instance:1984
```
-
diff --git a/source/_integrations/goalzero.markdown b/source/_integrations/goalzero.markdown
index 468dad832bd..5098b538ee7 100644
--- a/source/_integrations/goalzero.markdown
+++ b/source/_integrations/goalzero.markdown
@@ -8,7 +8,6 @@ ha_release: 0.116
ha_config_flow: true
ha_dhcp: true
ha_domain: goalzero
-ha_quality_scale: silver
ha_platforms:
- binary_sensor
- sensor
diff --git a/source/_integrations/google_assistant_sdk.markdown b/source/_integrations/google_assistant_sdk.markdown
index 3786f57c4cd..62a1fb1c1be 100644
--- a/source/_integrations/google_assistant_sdk.markdown
+++ b/source/_integrations/google_assistant_sdk.markdown
@@ -14,7 +14,6 @@ ha_integration_type: service
ha_platforms:
- diagnostics
- notify
-ha_quality_scale: platinum
google_dev_console_link: https://console.developers.google.com/apis/api/embeddedassistant.googleapis.com/overview
api: Google Assistant API
api_link: https://console.developers.google.com/apis/api/embeddedassistant.googleapis.com/overview
@@ -141,6 +140,7 @@ The easiest way to check if the integration is working is to check [My Google Ac
- If you see the issued commands in [My Google Activity](https://myactivity.google.com/myactivity), the integration is working fine. If the commands don't have the expected outcome, don't open an issue in the Home Assistant Core project or the [underlying library](https://github.com/tronikos/gassist_text). You should instead report the issue directly to Google [here](https://github.com/googlesamples/assistant-sdk-python/issues). Examples of known Google Assistant API issues:
- Media playback commands (other than play news, play podcast, play white noise, or play rain sounds) don't work.
- Routines don't work.
+ - Google Assistant automations that use `assistant.event.OkGoogle` as a starter cannot be triggered.
- Broadcast to specific rooms often doesn't work for non-English languages.
- Commands that need to verify your identity through voice match do not work.
diff --git a/source/_integrations/google_generative_ai_conversation.markdown b/source/_integrations/google_generative_ai_conversation.markdown
index 1a16625436b..390c218d922 100644
--- a/source/_integrations/google_generative_ai_conversation.markdown
+++ b/source/_integrations/google_generative_ai_conversation.markdown
@@ -10,7 +10,6 @@ ha_codeowners:
- '@tronikos'
ha_domain: google_generative_ai_conversation
ha_integration_type: service
-ha_quality_scale: platinum
ha_platforms:
- conversation
- diagnostics
@@ -45,41 +44,31 @@ On the same page, you can see your plan: *free of charge* if the associated Goog
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).
{% include integrations/option_flow.md %}
-{% configuration_basic %}
+{% configuration_basic %}
Instructions:
description: Instructions for the AI on how it should respond to your requests. It is written using [Home Assistant Templating](/docs/configuration/templating/).
-
Control Home Assistant:
description: If the model is allowed to interact with Home Assistant. It can only control or provide information about entities that are [exposed](/voice_control/voice_remote_expose_devices/) to it.
-
Recommended settings:
description: If enabled, the recommended model and settings are chosen.
-
{% endconfiguration_basic %}
If you choose to not use the recommended settings, you can configure the following options:
{% configuration_basic %}
-
Model:
description: Model used to generate response.
-
Temperature:
description: Creativity allowed in the responses. Higher values produce a more random and varied response. A temperature of zero will be deterministic.
-
Top P:
description: Probability threshold for top-p sampling.
-
Top K:
description: Number of top-scored tokens to consider during generation.
-
Maximum Tokens to Return in Response:
description: The maximum number of words or "tokens" that the AI model should generate.
-
Safety settings:
description: Thresholds for different [harmful categories](https://ai.google.dev/gemini-api/docs/safety-settings).
-
{% endconfiguration_basic %}
## Talking to Super Mario
diff --git a/source/_integrations/google_maps.markdown b/source/_integrations/google_maps.markdown
index 64409aa023a..b6e29a7f761 100644
--- a/source/_integrations/google_maps.markdown
+++ b/source/_integrations/google_maps.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `google_maps` {% term integration %} allows you to detect presence using the unofficial API of [Google Maps Location Sharing](https://myaccount.google.com/locationsharing).
diff --git a/source/_integrations/google_photos.markdown b/source/_integrations/google_photos.markdown
index c6342a2a6f8..517503fabc8 100644
--- a/source/_integrations/google_photos.markdown
+++ b/source/_integrations/google_photos.markdown
@@ -10,8 +10,6 @@ ha_domain: google_photos
ha_codeowners:
- '@allenporter'
ha_integration_type: integration
-ha_platforms:
- - media_source
related:
- docs: /integrations/media_source
title: Media source integration documentation
diff --git a/source/_integrations/google_pubsub.markdown b/source/_integrations/google_pubsub.markdown
index f0927a96002..12aa08a813e 100644
--- a/source/_integrations/google_pubsub.markdown
+++ b/source/_integrations/google_pubsub.markdown
@@ -10,6 +10,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `google_pubsub` {% term integration %} allows you to hook into the Home Assistant event bus and send events to [Google Cloud Pub/Sub](https://cloud.google.com/pubsub/docs/overview). The current [free tier](https://cloud.google.com/free/) of GCP should allow you to sync about 1 event every 2 seconds on average (2 million invocations per month).
diff --git a/source/_integrations/google_wifi.markdown b/source/_integrations/google_wifi.markdown
index 05c9dedbfff..0dd86cc5b69 100644
--- a/source/_integrations/google_wifi.markdown
+++ b/source/_integrations/google_wifi.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `google_wifi` sensor {% term integration %} is displaying the exposed status of a Google Wifi (or OnHub) router.
diff --git a/source/_integrations/graphite.markdown b/source/_integrations/graphite.markdown
index 68df583d119..1f9d8deee35 100644
--- a/source/_integrations/graphite.markdown
+++ b/source/_integrations/graphite.markdown
@@ -10,6 +10,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `graphite` {% term integration %} records all events and state changes and feeds the data to a [graphite](http://graphiteapp.org/) instance.
diff --git a/source/_integrations/greeneye_monitor.markdown b/source/_integrations/greeneye_monitor.markdown
index 68af3aba56c..94471667030 100644
--- a/source/_integrations/greeneye_monitor.markdown
+++ b/source/_integrations/greeneye_monitor.markdown
@@ -16,6 +16,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The [GreenEye Monitor (GEM)](https://www.brultech.com/greeneye/) {% term integration %} for Home Assistant allows you to create sensors for the various data channels of the GEM. Each current transformer (CT) channel, pulse counter, and temperature sensor appears in Home Assistant as a sensor, and can be used in automations.
diff --git a/source/_integrations/greenwave.markdown b/source/_integrations/greenwave.markdown
index 8cc60322e96..02176e0faf3 100644
--- a/source/_integrations/greenwave.markdown
+++ b/source/_integrations/greenwave.markdown
@@ -9,6 +9,7 @@ ha_domain: greenwave
ha_platforms:
- light
ha_integration_type: integration
+ha_quality_scale: legacy
---
This integration communicates with the Greenwave Reality (TCP Connected) Gateway to allow control of all lights and fixtures registered to the gateway. Bulbs and Fixtures can be created and modified inside the TCP Lighting App for Android and iOS.
diff --git a/source/_integrations/gstreamer.markdown b/source/_integrations/gstreamer.markdown
index a58632a6eb0..9f66b31fc5c 100644
--- a/source/_integrations/gstreamer.markdown
+++ b/source/_integrations/gstreamer.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `gstreamer` {% term integration %} allows you to play audio via a [gstreamer](https://gstreamer.freedesktop.org/) pipeline. Practically, this means you can play audio directly on the computer running Home Assistant. It is particularly suited for playing TTS. Advanced users can specify a pipeline to transform the audio stream and/or redirect it elsewhere.
diff --git a/source/_integrations/gtfs.markdown b/source/_integrations/gtfs.markdown
index 3f736aaaae2..3b36c30d29f 100644
--- a/source/_integrations/gtfs.markdown
+++ b/source/_integrations/gtfs.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `gtfs` {% term integration %} will give you the next departure time and associated data from your public transit station/stop. The data comes from your chosen public transit authority and is formatted as [General Transit Feed Specification](https://developers.google.com/transit/gtfs/) data, commonly known as GTFS.
diff --git a/source/_integrations/habitica.markdown b/source/_integrations/habitica.markdown
index e99d13b64df..b46f2b405d3 100644
--- a/source/_integrations/habitica.markdown
+++ b/source/_integrations/habitica.markdown
@@ -2,22 +2,21 @@
title: Habitica
description: Instructions on enabling Habitica support for your Home Assistant
ha_category:
- - To-do list
- - Sensor
- Calendar
+ - Sensor
+ - To-do list
ha_release: 0.78
ha_iot_class: Cloud Polling
ha_domain: habitica
ha_platforms:
- binary_sensor
- button
+ - calendar
+ - diagnostics
- sensor
- switch
- todo
- - calendar
ha_codeowners:
- - '@ASMfreaK'
- - '@leikoilja'
- '@tr4nt0r'
ha_config_flow: true
ha_integration_type: integration
@@ -56,9 +55,9 @@ The Habitica integration lets you automate task management, such as creating to-
{% configuration_basic %}
"Email or username":
- description: "Email or username (case-sensitive) to connect Home Assistant to your Habitica account"
+ description: "Email or username (case-sensitive) to connect Home Assistant to your Habitica account"
Password:
- description: "Password for the account to connect Home Assistant to Habitica"
+ description: "Password for the account to connect Home Assistant to Habitica"
{% endconfiguration_basic %}
### Advanced configuration
@@ -67,11 +66,11 @@ If you choose "**Login to other instances**" you will be presented the following
{% configuration_basic %}
"User ID":
- description: "User ID of your Habitica account (*see [prerequisites](#prerequisites-for-habitica-integration)*)"
+ description: "User ID of your Habitica account (*see [prerequisites](#prerequisites-for-habitica-integration)*)"
API Token:
- description: "API Token of the Habitica account (*see [prerequisites](#prerequisites-for-habitica-integration)*)"
+ description: "API Token of the Habitica account (*see [prerequisites](#prerequisites-for-habitica-integration)*)"
URL:
- description: "URL of the Habitica installation to connect to. Defaults to `https://habitica.com` (*see [prerequisites](#prerequisites-for-habitica-integration)*)"
+ description: "URL of the Habitica installation to connect to. Defaults to `https://habitica.com` (*see [prerequisites](#prerequisites-for-habitica-integration)*)"
Verify SSL certificate:
description: Enable SSL certificate verification for secure connections. Disable only if connecting to a Habitica instance using a self-signed certificate
{% endconfiguration_basic %}
diff --git a/source/_integrations/harman_kardon_avr.markdown b/source/_integrations/harman_kardon_avr.markdown
index eb899447eb6..6239d2f893d 100644
--- a/source/_integrations/harman_kardon_avr.markdown
+++ b/source/_integrations/harman_kardon_avr.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `harman_kardon_avr` platform allows you to control Harman Kardon Network Receivers from Home Assistant.
diff --git a/source/_integrations/haveibeenpwned.markdown b/source/_integrations/haveibeenpwned.markdown
index 564e64cb842..4ef25bd397d 100644
--- a/source/_integrations/haveibeenpwned.markdown
+++ b/source/_integrations/haveibeenpwned.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `haveibeenpwned` sensor {% term integration %} creates sensors that check for breached email accounts on [haveibeenpwned](https://haveibeenpwned.com).
diff --git a/source/_integrations/hddtemp.markdown b/source/_integrations/hddtemp.markdown
index 2468ae5f38b..7bef7fcd4ec 100644
--- a/source/_integrations/hddtemp.markdown
+++ b/source/_integrations/hddtemp.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `hddtemp` sensor {% term integration %} is using the data provided by [HDDTemp](https://savannah.nongnu.org/projects/hddtemp).
diff --git a/source/_integrations/hdmi_cec.markdown b/source/_integrations/hdmi_cec.markdown
index b069195b830..8f646f4ef80 100644
--- a/source/_integrations/hdmi_cec.markdown
+++ b/source/_integrations/hdmi_cec.markdown
@@ -12,6 +12,7 @@ ha_platforms:
ha_integration_type: integration
ha_codeowners:
- '@inytar'
+ha_quality_scale: legacy
---
The `hdmi_cec` integration provides actions that allow selecting the active device, powering on all devices, setting all devices to standby and creates switch entities for HDMI devices. Devices are defined in the configuration file by associating HDMI port number and a device name. Connected devices that provide further HDMI ports, such as sound-bars and AVRs are also supported. Devices are listed from the perspective of the CEC-enabled Home Assistant device. Any connected device can be listed, regardless of whether it supports CEC. Ideally the HDMI port number on your device will map correctly the CEC physical address. If it does not, use `cec-client` (part of the `libcec` package) to listen to traffic on the CEC bus and discover the correct numbers.
diff --git a/source/_integrations/heatmiser.markdown b/source/_integrations/heatmiser.markdown
index d4ca1763ac7..e5f964d3fe5 100644
--- a/source/_integrations/heatmiser.markdown
+++ b/source/_integrations/heatmiser.markdown
@@ -11,6 +11,7 @@ ha_domain: heatmiser
ha_platforms:
- climate
ha_integration_type: integration
+ha_quality_scale: legacy
---
The `heatmiser` climate platform lets you control [Heatmiser DT/DT-E/PRT/PRT-E](https://www.heatmisershop.co.uk/room-thermostats/) thermostats from Heatmiser. The module itself is currently set up to work over a RS232 -> RS485 converter, therefore it connects over IP.
diff --git a/source/_integrations/heos.markdown b/source/_integrations/heos.markdown
index 7760def5052..4955bf6cd81 100644
--- a/source/_integrations/heos.markdown
+++ b/source/_integrations/heos.markdown
@@ -15,46 +15,46 @@ ha_platforms:
ha_integration_type: integration
---
-The HEOS integration adds support for [HEOS](https://www.denon.com/en-gb/category/heos/) capable products, such as speakers, amps, and receivers (Denon and Marantz) into Home Assistant. Features currently include:
+The HEOS {% term integration %} is used to connect a [HEOS](https://www.denon.com/en-gb/category/heos/) System to Home Assistant. HEOS is a wireless audio ecosystem
+that allows you to stream music to HEOS Built-in products from [Denon](https://www.denon.com/en-us/category/heos/) and [Marantz](https://www.marantz.com/en/world-of-marantz/heos-built-in.html).
-- Each device is represented as a media player entity
-- View the currently playing media
-- Control play mode (play, pause, stop, next and previous), volume, mute and shuffle
-- Clear playlist
-- Select source from device physical inputs and HEOS favorites
-- Create HEOS groups
+Add this integration to automate playback and group configuration of HEOS-capable products. For example, when a scene is activated, set the volume and play a specific Playlist on your receiver.
+
+## Supported functionality
+
+- [Media Player](/integrations/media_player) {% term entities %} for each HEOS-capable product, including speakers, amps, and receivers (Denon and Marantz)
+- Viewing the currently playing media
+- Controlling play mode (e.g., play/pause), volume, mute, and shuffle
+- Playing HEOS favorites, playlists, quick selects, URLs
+- Setting the source to physical inputs (e.g., `AUX1`)
+- Grouping and ungrouping HEOS devices
+- Clearing playlists
+
+## Prerequisites
+
+1. One or more [HEOS-capable products](/integrations/heos#supported-devices).
+2. Optionally, a [HEOS Account](https://support.denon.com/app/answers/detail/a_id/17041) to access music services, playlists, and favorites.
{% include integrations/config_flow.md %}
{% note %}
-A connection to a single device enables control for all devices on the network. If you have multiple HEOS devices, enter the host of one that is connected to the LAN via wire or has the strongest wireless signal.
+Only a single instance of the integration is needed to access the entire HEOS system on the network. It will only connect to a single {% term host %}.
{% endnote %}
-## Actions
+{% configuration_basic %}
+Host:
+ description: "The hostname or IP address (e.g., \"192.168.1.2\") of your HEOS device. If you have more than one device, select, or enter a host, that is connected to the LAN via wire or has the strongest wireless signal."
+{% endconfiguration_basic %}
-### Action `heos.sign_in`
+## Removing the integration
-Use the sign-in action (go to **Developer Tools** > **Actions** and then run the `heos.sign_in` with your username and password. Use the "Fill example data" first, then change it with your data. Check the logs right after, there you should see if the sign-in was successful or not) to sign the connected controller into a HEOS account so that it can retrieve and play HEOS favorites and playlists. An error message is logged if sign-in is unsuccessful. Example action data payload:
+This integration follows standard integration removal. No extra steps are required.
-```yaml
-action: heos.sign_in
-data:
- username: "example@example.com"
- password: "password"
-```
+{% include integrations/remove_device_service.md %}
-| Data attribute | Optional | Description |
-| ---------------------- | -------- | ------------------------------------------ |
-| `username` | no | The username or email of the HEOS account. |
-| `password` | no | The password of the HEOS account. |
+## Playing media
-### Action `heos.sign_out`
-
-Use the sign-out action to sign the connected controller out of a HEOS account. An error message is logged if sign-out is unsuccessful. There are no parameters to this action.
-
-### Action `media_player.play_media`
-
-#### Play favorite
+### Play a favorite
You can play a HEOS favorite by number or name with the `media_player.play_media` action. Example action data payload:
@@ -70,9 +70,9 @@ data:
| ---------------------- | -------- | ------------------------------------------------------------------- |
| `entity_id` | yes | `entity_id` of the player(s) |
| `media_content_type` | no | Set to the value `favorite` |
-| `media_content_id` | no | (i.e., `1`) or name (i.e., `Thumbprint Radio`) of the HEOS favorite |
+| `media_content_id` | no | (e.g., `1`) or name (e.g., `Thumbprint Radio`) of the HEOS favorite |
-#### Play playlist
+### Play a playlist
You can play a HEOS playlist with the `media_player.play_media` action. Example action data payload:
@@ -90,7 +90,7 @@ data:
| `media_content_type` | no | Set to the value `playlist` |
| `media_content_id` | no | The name of the HEOS playlist |
-#### Play Quick Select
+### Play a Quick Select
You can play a HEOS Quick Select by number or name with the `media_player.play_media` action. Example action data payload:
@@ -106,11 +106,17 @@ data:
| ---------------------- | -------- | -------------------------------------------------------------------- |
| `entity_id` | yes | `entity_id` of the player(s) |
| `media_content_type` | no | Set to the value `quick_select` |
-| `media_content_id` | no | The quick select number (i.e., `1`) or name (i.e., `Quick Select 1`) |
+| `media_content_id` | no | The quick select number (e.g., `1`) or name (e.g., `Quick Select 1`) |
-#### Play URL
+### Play a URL
-You can play a URL through a HEOS media player using the `media_player.play_media` action. The HEOS player must be able to reach the URL. Example action data payload:
+You can play a URL through a HEOS media player using the `media_player.play_media` action. The HEOS player must be able to reach the URL.
+
+{% note %}
+The URL (`media_content_type`) must be 255 characters or fewer due to a limitation in the HEOS firmware.
+{% endnote %}
+
+Example action data payload:
```yaml
action: media_player.play_media
@@ -120,15 +126,23 @@ data:
media_content_id: "http://path.to/stream.mp3"
```
-| Data attribute | Optional | Description |
-| ---------------------- | -------- | -------------------------------------------- |
-| `entity_id` | yes | `entity_id` of the player(s) to play the URL |
-| `media_content_type` | no | Set to the value `url` |
-| `media_content_id` | no | The full URL to the stream |
+| Data attribute | Optional | Description |
+| ---------------------- | -------- | ------------------------------------------------ |
+| `entity_id` | yes | `entity_id` of the player(s) to play the URL |
+| `media_content_type` | no | Set to the value `url` |
+| `media_content_id` | no | The full URL to the stream (max 255 characters) |
-### Action `media_player.join`
+## Grouping players
-For grouping HEOS media players together for synchronous playback you can use the `media_player.join` action. With the example action data payload down below you'll expand playback of `media_player.office` to the `media_player.kitchen` and `media_player.bathroom` players. Please note that all of the media players need to be HEOS players.
+### Join
+
+To group HEOS media players together for synchronous playback, use the `media_player.join` action.
+
+{% note %}
+All `group_members` need to be HEOS media players.
+{% endnote %}
+
+The example action data payload below will expand playback of `media_player.office` to the `media_player.kitchen` and `media_player.bathroom` players:
```yaml
action: media_player.join
@@ -144,10 +158,9 @@ data:
| `entity_id` | yes | The media player entity whose playback will be expanded to the players specified in `group_members`. |
| `group_members` | no | The player entities which will be synced with the playback from `entity_id`. |
+### Unjoin
-### Action `media_player.unjoin`
-
-For removing a HEOS player from a group you can use the `media_player.unjoin` action.
+For removing a HEOS player from a group, use the `media_player.unjoin` action.
```yaml
action: media_player.unjoin
@@ -157,30 +170,79 @@ data:
| Data attribute | Optional | Description |
| ---------------------- | -------- | ------------------------------------------------ |
-| `entity_id` | yes | Unjoin this media player from any player groups. |
+| `entity_id` | yes | Remove this media player from any player groups. |
-## Notes
+## Actions
-- Receivers with multiple zones are represented as a single media player. They will be turned on when playback is started, but cannot be turned off by the integration at this time.
-- [Denon AVR](/integrations/denonar/) and HEOS media players can be combined into a [Universal Media Player](/integrations/universal/#denon-avr--heos)
+The HEOS integration makes various custom {% term actions %} available in addition to the standard [Media Player actions](/integrations/media_player#actions).
+
+### Action `heos.sign_in`
+
+Use the sign-in action to sign the connected device into a HEOS account so that it can retrieve and play HEOS favorites and playlists. An error message is logged if sign-in is unsuccessful.
+
+{% note %}
+The device the integration connects to authenticates independently of other devices and the HEOS mobile app. When you first set up the integration, or after a device firmware update, the device will most likely not be logged in.
+{% endnote %}
+
+To run, go to **Developer Tools** > **Actions** and then type in `heos.sign_in`. Then enter your HEOS account username and password, and click the Perform Action button. An error message is only logged if sign-in is unsuccessful.
+
+Example action data payload:
+
+```yaml
+action: heos.sign_in
+data:
+ username: "example@example.com"
+ password: "password"
+```
+
+| Data attribute | Optional | Description |
+| ---------------------- | -------- | ------------------------------------------ |
+| `username` | no | The username or email of the HEOS account. |
+| `password` | no | The password of the HEOS account. |
+
+### Action `heos.sign_out`
+
+Use the sign-out action to sign the connected device out of a HEOS account. An error message is logged if sign-out is unsuccessful. There are no parameters to this action Example action data payload:
+
+```yaml
+action: heos.sign_out
+data: {% raw %}{}{% endraw %}
+```
+
+## Supported devices
+
+Denon and Marantz do not currently publish an inventory of HEOS-enabled devices, however, many receiver and hi-fi products began including HEOS since 2013. Consult your product model to confirm support:
+
+- Denon [online manuals](https://www.denon.com/en-us/online-manuals.html) and [product archive](https://www.denon.com/en-us/support/product-archive/)
+- Marantz [online manuals](https://www.marantz.com/en-us/support/online-manuals.html) and [product archive](https://www.marantz.com/en-us/category/archive/)
+
+## Unsupported devices
+
+Denon and Marantz products before 2013 and non-network connected products (e.g., turntables and some CD players) do not support HEOS.
+
+## Data updates
+
+HEOS pushes data to Home Assistant via the local network when data and entity states change in real-time.
+
+## Known limitations
+
+- AVR receiver features, such as zone selection/control and power on/off, cannot be controlled through this integration. Use the [Universal Media Player](/integrations/universal/#denon-avr--heos) to combine AVR receiver functionality with this integration.
+- {% term TTS %} is not supported.
+- The maximum length of a URL that can be used in the `play_media` action is 255 characters due to a limitation in the HEOS firmware.
## Troubleshooting
-### Debugging
+### Missing favorites
-The HEOS integration will log additional information about commands, events, and other messages when the log level is set to `debug`. Add the relevant line below to the {% term "`configuration.yaml`" %} to enable debug logging:
+#### Symptom: "IP_ADDRESS is not logged in to a HEOS account and will be unable to retrieve HEOS favorites..."
-```yaml
-logger:
- default: info
- logs:
- homeassistant.components.heos: debug
- pyheos: debug
-```
+The message above is logged and the `source_list` attribute of the integration's media_player entities are empty. Attempting call the `media_player.play_media` action
+for `favorite` and `playlist` will fail.
-### Missing Favorites
+##### Description
-If the HEOS controller is not signed in to a HEOS account, HEOS favorites will not be populated in the media player source selection and the `media_player.play_media` action for `favorite` and `playlist` will fail. Additionally, the following warning will be logged at startup:
-> IP_ADDRESS is not logged in to a HEOS account and will be unable to retrieve HEOS favorites: Use the 'heos.sign_in' action to sign-in to a HEOS account
+The HEOS system is not logged in to a HEOS account. This occurs when the integration is first added, the HEOS account has changed (e.g. password reset), and sometimes after a firmware update.
-To resolve this issue, use the `heos.sign_in` action to sign the controller into an account as documented above. This only needs to be performed once, as the controller will remain signed in while the account credentials are valid.
+##### Resolution
+
+Use the [heos.sign_in action](/integrations/heos#action-heossign_in) to sign the HEOS system into a HEOS account. This only needs to be performed once, as the system will remain signed in while the account credentials are valid.
diff --git a/source/_integrations/hikvision.markdown b/source/_integrations/hikvision.markdown
index 017bb3a2cc3..d7ca99a3f5c 100644
--- a/source/_integrations/hikvision.markdown
+++ b/source/_integrations/hikvision.markdown
@@ -11,6 +11,7 @@ ha_domain: hikvision
ha_platforms:
- binary_sensor
ha_integration_type: integration
+ha_quality_scale: legacy
---
The Hikvision Binary Sensor is a platform that parses the event stream of a
diff --git a/source/_integrations/hikvisioncam.markdown b/source/_integrations/hikvisioncam.markdown
index dfd4e9552e1..b5118f17826 100644
--- a/source/_integrations/hikvisioncam.markdown
+++ b/source/_integrations/hikvisioncam.markdown
@@ -14,6 +14,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
This `hikvisioncam` switch {% term integration %} allows you to control your motion detection setting on your [Hikvision](https://www.hikvision.com/) camera.
diff --git a/source/_integrations/hitron_coda.markdown b/source/_integrations/hitron_coda.markdown
index 168befeb826..62b2c885336 100644
--- a/source/_integrations/hitron_coda.markdown
+++ b/source/_integrations/hitron_coda.markdown
@@ -9,6 +9,7 @@ ha_iot_class: Local Polling
ha_platforms:
- device_tracker
ha_integration_type: integration
+ha_quality_scale: legacy
---
This integration offers presence detection by examining devices connected to a [Rogers Hitron CODA](https://www.rogers.com/customer/support/article/wi-fi-password-hitron-coda4582-cgn3amr-cgnm3552-cgn3acr-cgn3)
diff --git a/source/_integrations/home_connect.markdown b/source/_integrations/home_connect.markdown
index b2a2be307f0..5964b8e5d8b 100644
--- a/source/_integrations/home_connect.markdown
+++ b/source/_integrations/home_connect.markdown
@@ -19,6 +19,7 @@ ha_codeowners:
ha_config_flow: true
ha_platforms:
- binary_sensor
+ - diagnostics
- light
- number
- select
diff --git a/source/_integrations/homematic.markdown b/source/_integrations/homematic.markdown
index dcbe79985e4..05b43edb06a 100644
--- a/source/_integrations/homematic.markdown
+++ b/source/_integrations/homematic.markdown
@@ -29,6 +29,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The [Homematic](https://www.eq-3.com/products/homematic.html) {% term integration %} provides bi-directional communication with your CCU/Homegear. It uses an XML-RPC connection to set values on devices and subscribes to receive events the devices and the CCU emit.
diff --git a/source/_integrations/homematicip_cloud.markdown b/source/_integrations/homematicip_cloud.markdown
index 78312b5084a..0f6345c135e 100644
--- a/source/_integrations/homematicip_cloud.markdown
+++ b/source/_integrations/homematicip_cloud.markdown
@@ -15,7 +15,6 @@ ha_category:
ha_iot_class: Cloud Push
ha_release: 0.66
ha_config_flow: true
-ha_quality_scale: silver
ha_domain: homematicip_cloud
ha_platforms:
- alarm_control_panel
diff --git a/source/_integrations/homewizard.markdown b/source/_integrations/homewizard.markdown
index 187ef1a3703..5b56947165a 100644
--- a/source/_integrations/homewizard.markdown
+++ b/source/_integrations/homewizard.markdown
@@ -20,6 +20,7 @@ ha_integration_type: integration
ha_quality_scale: platinum
works_with:
- local
+ha_dhcp: true
---
Integration for the [HomeWizard Energy](https://www.homewizard.com) platform. It can collect data locally from the HomeWizard Energy products and create them as sensors in Home Assistant. Use this integration to monitor your energy, gas and water usage to optimize your energy consumption. The information collected by this integration can be used by the [Energy dashboard](/home-energy-management).
@@ -44,7 +45,7 @@ You have to enable the local API to allow Home Assistant to communicate with you
{% configuration_basic %}
IP address:
- description: "The IP address of your device. You can find it in your router."
+ description: "The IP address of your device. You can find it in your router."
{% endconfiguration_basic %}
## Sensors
diff --git a/source/_integrations/horizon.markdown b/source/_integrations/horizon.markdown
index d6dbb0e74b4..3a4c371574c 100644
--- a/source/_integrations/horizon.markdown
+++ b/source/_integrations/horizon.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `horizon` {% term integration %} allows you to control a [Unitymedia](https://www.unitymedia.de) Horizon HD Recorder from Home Assistant.
diff --git a/source/_integrations/hp_ilo.markdown b/source/_integrations/hp_ilo.markdown
index 1dc830465ff..6c2587f9546 100644
--- a/source/_integrations/hp_ilo.markdown
+++ b/source/_integrations/hp_ilo.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `hp_ilo` {% term integration %} allows you to do an API call to the HP ILO (Integrated Lights-Out) sensor of your server, and use this data in Home Assistant sensors.
diff --git a/source/_integrations/hue.markdown b/source/_integrations/hue.markdown
index 99460bb2c5a..0c6924f16b4 100644
--- a/source/_integrations/hue.markdown
+++ b/source/_integrations/hue.markdown
@@ -8,7 +8,6 @@ ha_iot_class: Local Push
featured: true
ha_release: '0.60'
ha_config_flow: true
-ha_quality_scale: platinum
ha_codeowners:
- '@balloob'
- '@marcelveldt'
diff --git a/source/_integrations/husqvarna_automower.markdown b/source/_integrations/husqvarna_automower.markdown
index 7c15c308bec..c6df677ca77 100644
--- a/source/_integrations/husqvarna_automower.markdown
+++ b/source/_integrations/husqvarna_automower.markdown
@@ -78,11 +78,11 @@ Internal examples: `http://192.168.0.2:8123/auth/external/callback`, `http://hom
{% configuration_basic %}
Name:
- description: "Enter the name for the provided credentials. You can choose your favorite name."
+ description: "Enter the name for the provided credentials. You can choose your favorite name."
OAuth Client ID:
- description: "Enter the Application key from your Husqvarna developer application."
+ description: "Enter the Application key from your Husqvarna developer application."
OAuth Client Secret:
- description: "Enter the Application secret from your Husqvarna developer application."
+ description: "Enter the Application secret from your Husqvarna developer application."
{% endconfiguration_basic %}
## Troubleshooting
diff --git a/source/_integrations/hyperion.markdown b/source/_integrations/hyperion.markdown
index 98a6ff2689a..acf203addb5 100644
--- a/source/_integrations/hyperion.markdown
+++ b/source/_integrations/hyperion.markdown
@@ -8,7 +8,6 @@ ha_iot_class: Local Push
ha_domain: hyperion
ha_codeowners:
- '@dermotduffy'
-ha_quality_scale: platinum
ha_config_flow: true
ha_ssdp: true
ha_platforms:
diff --git a/source/_integrations/iammeter.markdown b/source/_integrations/iammeter.markdown
index 8333c07841f..e3b9bb3a00c 100644
--- a/source/_integrations/iammeter.markdown
+++ b/source/_integrations/iammeter.markdown
@@ -15,6 +15,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
[IAMMETER](https://www.iammeter.com/) provides both a bi-directional single-phase energy meter([WEM3080](https://www.iammeter.com/products/single-phase-meter)) and a bi-directional three-phase energy monitor ([WEM3080T](https://www.iammeter.com/products/three-phase-meter)). Both of them can be integrated into Home Assistant.
diff --git a/source/_integrations/icloud.markdown b/source/_integrations/icloud.markdown
index 57da0530859..49ac9f5c91b 100644
--- a/source/_integrations/icloud.markdown
+++ b/source/_integrations/icloud.markdown
@@ -44,7 +44,7 @@ You need to use an [app-specific password](https://support.apple.com/102654) to
## In case of troubleshooting
-Go into your Home Assistant configuration `.storage` folder and delete the `icloud` folder, then retry.
+Delete the integration's configuration (most likely in `/config/.storage/icloud`), then retry.
## Platforms
diff --git a/source/_integrations/idasen_desk.markdown b/source/_integrations/idasen_desk.markdown
index 1df4b341e0f..f31ab9e81bd 100644
--- a/source/_integrations/idasen_desk.markdown
+++ b/source/_integrations/idasen_desk.markdown
@@ -3,7 +3,6 @@ title: IKEA Idasen Desk
description: Control and monitor your IKEA Idåsen standing desk.
ha_iot_class: Local Push
ha_config_flow: true
-ha_quality_scale: silver
ha_release: '2023.10'
ha_category:
- Cover
@@ -45,8 +44,6 @@ This integration provides two buttons to connect and disconnect to/from the desk
## Sensors
{% configuration_basic %}
-
Height:
description: The current height of the desk, in meters.
-
{% endconfiguration_basic %}
diff --git a/source/_integrations/idteck_prox.markdown b/source/_integrations/idteck_prox.markdown
index 61054068cb5..aee6e42a41e 100644
--- a/source/_integrations/idteck_prox.markdown
+++ b/source/_integrations/idteck_prox.markdown
@@ -7,6 +7,7 @@ ha_release: 0.85
ha_iot_class: Local Push
ha_domain: idteck_prox
ha_integration_type: integration
+ha_quality_scale: legacy
---
[IDTECK](https://www.idteck.com/) makes ID systems used to control access and identify users. This integration works with [Proximity Readers](https://www.idteck.com/en/products/rfid-reader-__-card-%26-tag-__idteck-credential-format-(idc)) (RFID card readers). The device is connected to Home Assistant through a serial to ethernet converter (NPort).
diff --git a/source/_integrations/ifttt.markdown b/source/_integrations/ifttt.markdown
index 065c535ca09..f4d1addc39e 100644
--- a/source/_integrations/ifttt.markdown
+++ b/source/_integrations/ifttt.markdown
@@ -87,20 +87,12 @@ You can use **Developer Tools** to test your [Webhooks](https://ifttt.com/maker_
{% configuration_basic %}
event:
description: The name of the event to send.
- required: true
- type: string
value1:
description: Generic field to send data via the event.
- required: false
- type: string
value2:
description: Generic field to send data via the event.
- required: false
- type: string
value3:
description: Generic field to send data via the event.
- required: false
- type: string
{% endconfiguration_basic %}
When your screen looks like this, select the **Perform action** button.
diff --git a/source/_integrations/iglo.markdown b/source/_integrations/iglo.markdown
index 3dafc39cfe1..d552f380f38 100644
--- a/source/_integrations/iglo.markdown
+++ b/source/_integrations/iglo.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `iglo` {% term integration %} allows you to integrate your [iGlo Lights](https://www.youtube.com/watch?v=oHTS9ji_v-s) into Home Assistant.
diff --git a/source/_integrations/ign_sismologia.markdown b/source/_integrations/ign_sismologia.markdown
index 75bffc91fe5..2ac68c3ed38 100644
--- a/source/_integrations/ign_sismologia.markdown
+++ b/source/_integrations/ign_sismologia.markdown
@@ -14,6 +14,7 @@ ha_integration_type: service
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `ign_sismologia` {% term integration %} lets you integrate a GeoRSS feed provided by the
diff --git a/source/_integrations/ihc.markdown b/source/_integrations/ihc.markdown
index af836d265b9..945be31af28 100644
--- a/source/_integrations/ihc.markdown
+++ b/source/_integrations/ihc.markdown
@@ -19,6 +19,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
IHC Controller {% term integration %} for Home Assistant allows you to connect the LK IHC controller to Home Assistant. The controller is sold under other names in different countries - "ELKO Living system" in Sweden and Norway.
diff --git a/source/_integrations/imap.markdown b/source/_integrations/imap.markdown
index 513b32f376d..41352d3be0c 100644
--- a/source/_integrations/imap.markdown
+++ b/source/_integrations/imap.markdown
@@ -130,7 +130,6 @@ initial:
description: Returns `True` if this is the initial event for the last message received. When a message within the search scope is removed and the last message received has not been changed, then an `imap_content` event is generated and the `initial` property is set to `False`. Note that if no `Message-ID` header was set on the triggering email, the `initial` property will always be set to `True`.
uid:
description: Latest `uid` of the message.
-
{% endconfiguration_basic %}
The `event_type` for the custom event should be set to `imap_content`. The configuration below shows how you can use the event data in a template `sensor`.
diff --git a/source/_integrations/imgw_pib.markdown b/source/_integrations/imgw_pib.markdown
index 4f0d769b0f5..04ae3c4787c 100644
--- a/source/_integrations/imgw_pib.markdown
+++ b/source/_integrations/imgw_pib.markdown
@@ -14,7 +14,6 @@ ha_platforms:
- diagnostics
- sensor
ha_integration_type: integration
-ha_quality_scale: platinum
---
IMGW-PIB integration uses hydrological data from [Institute of Meteorology and Water Management - National Research Institute](https://hydro.imgw.pl) to present information about rivers and water reservoirs in Poland.
diff --git a/source/_integrations/influxdb.markdown b/source/_integrations/influxdb.markdown
index 84ae7803c0a..e099e09c796 100644
--- a/source/_integrations/influxdb.markdown
+++ b/source/_integrations/influxdb.markdown
@@ -15,6 +15,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `influxdb` {% term integration %} makes it possible to transfer all state changes to an external [InfluxDB](https://influxdb.com/) database. See the [official installation documentation](https://docs.influxdata.com/influxdb/v1.7/introduction/installation/) for how to set up an InfluxDB database.
diff --git a/source/_integrations/integration.markdown b/source/_integrations/integration.markdown
index 1c40f629d0a..d097abdaa4c 100644
--- a/source/_integrations/integration.markdown
+++ b/source/_integrations/integration.markdown
@@ -40,8 +40,7 @@ Metric prefix:
Integration time:
description: SI unit of time to integrate over.
Max sub-interval:
- description: Applies time-based integration if the source did not change for this duration. This implies that at least every `max sub-interval`, the integral is updated. If you don't want time-based updates, enter 0.
-
+ description: Applies time-based integration if the source did not change for this duration. This implies that at least every `max sub-interval`, the integral is updated. If you don't want time-based updates, enter `0`.
{% endconfiguration_basic %}
diff --git a/source/_integrations/intesishome.markdown b/source/_integrations/intesishome.markdown
index 410dcf70667..7377c2d250c 100644
--- a/source/_integrations/intesishome.markdown
+++ b/source/_integrations/intesishome.markdown
@@ -11,6 +11,7 @@ ha_domain: intesishome
ha_platforms:
- climate
ha_integration_type: integration
+ha_quality_scale: legacy
---
The `IntesisHome` climate platform lets you control [IntesisHome](https://www.intesishome.com), [Airconwithme](https://airconwithme.com) and [anywAIR](https://www.fujitsugeneral.com.au/anywair) devices. IntesisHome provides integrations with air conditioners, including Panasonic, Daikin, Fujitsu, Toshiba, LG and more.
diff --git a/source/_integrations/iperf3.markdown b/source/_integrations/iperf3.markdown
index 330adc4c408..9470c5747ae 100644
--- a/source/_integrations/iperf3.markdown
+++ b/source/_integrations/iperf3.markdown
@@ -15,6 +15,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `iperf3` sensor {% term integration %} allows you to measure network bandwidth performance against a private or public [Iperf3](https://software.es.net/iperf/index.html) server.
diff --git a/source/_integrations/irish_rail_transport.markdown b/source/_integrations/irish_rail_transport.markdown
index b407f7dcf7b..c5c70822561 100644
--- a/source/_integrations/irish_rail_transport.markdown
+++ b/source/_integrations/irish_rail_transport.markdown
@@ -14,6 +14,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `irish_rail_transport` sensor will give you the time until the next two departures (within 90 minutes) from an Irish Rail station using the RTPI information.
diff --git a/source/_integrations/iron_os.markdown b/source/_integrations/iron_os.markdown
index 449a13b685d..0fcd59a6f42 100644
--- a/source/_integrations/iron_os.markdown
+++ b/source/_integrations/iron_os.markdown
@@ -22,10 +22,24 @@ ha_platforms:
The **IronOS** {% term integration %} seamlessly connects Home Assistant with PINE64's Pinecil V2 soldering irons, allowing for remote monitoring and control. This integration provides real-time updates on temperature, power, and various other settings and diagnostic information.
+## About IronOS
+
+**IronOS** is an open-source firmware for smart soldering irons, offering advanced features like power negotiation, battery protection, and customizable settings. Originally developed for the TS100, it now supports a wide range of devices, including the Pinecil V2, the first model with BLE support. The firmware is feature-complete and available in 31 languages.
+
+## How you can use this integration
+
+The IronOS integration lets you monitor and control your smart soldering iron from Home Assistant and automate related tasks. For example, you can turn on a fume extractor automatically when the soldering iron enters soldering mode, and turn it off when the iron is laid down. You can also monitor the temperature of the tip and handle, as well as power draw and input voltage, directly on dashboards.
+
## Minimum requirements
- **Pinecil V2** requires IronOS v2.21 or higher to connect to Home Assistant. Please refer to the [Pinecil Wiki](https://wiki.pine64.org/wiki/Pinecil_Firmware#Overview) for update instructions.
+## Prerequisites
+
+The IronOS integration requires your device to be within Bluetooth range of Home Assistant, which must be equipped with a [Bluetooth adapter](/integrations/bluetooth/). If the device is out of range, an [ESPHome Bluetooth proxy](https://esphome.io/projects/?type=bluetooth) can be placed within range. In this case, a Bluetooth adapter on Home Assistant is not required.
+
+Home Assistant will detect nearby IronOS devices. Discovered devices will show up on {% my integrations title="Settings > Devices & services" %} in the discovered section.
+
{% include integrations/config_flow.md %}
## Number controls
@@ -52,7 +66,6 @@ The **IronOS** {% term integration %} seamlessly connects Home Assistant with PI
- **Uptime:** Tracks the total operating time of the soldering iron since its last power-on.
- **Hall effect strength:** (Optional) This feature requires the device to be [modified with a hall effect sensor](https://wiki.pine64.org/wiki/Pinecil_Hall_Effect_Sensor). If a neodymium magnet is attached to the stand, it enables proximity detection and can be utilized to calibrate when the iron enters sleep mode based on its proximity to the stand.
-
## Update
- **Firmware:** The update entity indicates if the firmware is up-to-date or if there is a newer IronOS version available for your device. For more information on how to update your device, please refer to the [IronOS documentation](https://ralim.github.io/IronOS/).
@@ -89,3 +102,82 @@ These settings are intended for technically experienced users and require carefu
- **Voltage divider:** Fine-tunes the measured voltage to account for variations in the voltage sense resistors between units.
- **Calibration offset:** Adjusts the calibration of the thermocouple measurements, which determine the temperature displayed for the tip.
+## Automations
+
+Get started with this automation example for IronOS with a ready-to-use blueprint!
+
+### Soldering fume extractor automation
+
+Automatically activate the fume extractor when soldering begins and deactivate it when the soldering iron is idle.
+
+{% my blueprint_import badge blueprint_url="https://community.home-assistant.io/t/ironos-soldering-fume-extractor-automation-pinecil-v2/802156" %}
+
+{% details "Example YAML configuration" %}
+
+{% raw %}
+
+```yaml
+triggers:
+ - trigger: state
+ entity_id: sensor.pinecil_operating_mode
+ to: soldering
+ id: start soldering
+ from:
+ - trigger: state
+ entity_id: sensor.pinecil_operating_mode
+ from: soldering
+ to: idle
+ id: stop soldering
+actions:
+ - if:
+ - condition: trigger
+ id:
+ - start soldering
+ then:
+ - action: switch.turn_on
+ target:
+ entity_id: switch.fume_extractor
+ - if:
+ - condition: trigger
+ id:
+ - stop soldering
+ then:
+ - action: switch.turn_off
+ target:
+ entity_id: switch.fume_extractor
+```
+
+{% endraw %}
+
+{% enddetails %}
+
+## Data updates
+
+This integration maintains an active Bluetooth connection while the device is powered on, refreshing the data every 5 seconds.
+
+### Known Limitations
+
+- IronOS does not support turning on, waking from sleep, or waking from idle mode via Bluetooth. These actions are restricted to ensure safety and prevent unintended operation of the device.
+- Updating the device from Home Assistant is not possible, as IronOS does not support over-the-air (OTA) updates.
+
+### Troubleshooting
+
+- **Error: `Characteristic f6d70xxx-5a10-4eba-aa55-33e27f9bc533 was not found!`**:
+
+ When using an ESPHome BLE Proxy, this error may occur because the maximum number of GATT characteristics cached is too small. IronOS exposes more than 60 characteristics on the Pinecil V2, which exceeds the default limit. To fix this, recompile the firmware of your ESPHome Bluetooth proxy with the following settings:
+
+ ```yaml
+ esp32:
+ board: ${board}
+ framework:
+ type: esp-idf
+ sdkconfig_options:
+ CONFIG_BT_GATTC_MAX_CACHE_CHAR: "100"
+ ```
+
+## Removing the integration
+
+This integration can be removed by following these steps:
+
+{% include integrations/remove_device_service.md %}
+4. Home Assistant will automatically rediscover the device. If you prefer not to see it, select Ignore.
diff --git a/source/_integrations/iskra.markdown b/source/_integrations/iskra.markdown
index f6729704524..3e4285751c9 100644
--- a/source/_integrations/iskra.markdown
+++ b/source/_integrations/iskra.markdown
@@ -1,5 +1,5 @@
---
-title: Iskra
+title: iskra
description: Instructions on how to connect your Iskra energy meters to Home Assistant.
ha_release: '2024.10'
ha_category:
diff --git a/source/_integrations/ista_ecotrend.markdown b/source/_integrations/ista_ecotrend.markdown
index 3bf3065aed8..f980b667e26 100644
--- a/source/_integrations/ista_ecotrend.markdown
+++ b/source/_integrations/ista_ecotrend.markdown
@@ -43,10 +43,10 @@ The integration currently supports only the German EcoTrend service.
{% include integrations/config_flow.md %}
{% configuration_basic %}
-"Email":
- description: "Enter the email address associated with your ista EcoTrend account to connect it to Home Assistant."
+Email:
+ description: "Enter the email address associated with your ista EcoTrend account to connect it to Home Assistant."
Password:
- description: "Enter the password for your ista EcoTrend account to enable the connection with Home Assistant."
+ description: "Enter the password for your ista EcoTrend account to enable the connection with Home Assistant."
{% endconfiguration_basic %}
## Sensors
diff --git a/source/_integrations/itach.markdown b/source/_integrations/itach.markdown
index c4510d279a5..1a276720bb6 100644
--- a/source/_integrations/itach.markdown
+++ b/source/_integrations/itach.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `itach` remote {% term integration %} allows you to control IR devices with a Global Caché iTach Device and GC-100 devices. The Global Cache IR API are similar across their product line. See API documentation links at the end of this page.
diff --git a/source/_integrations/itunes.markdown b/source/_integrations/itunes.markdown
index ecd960f3641..692fe14f56c 100644
--- a/source/_integrations/itunes.markdown
+++ b/source/_integrations/itunes.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `itunes` media player {% term integration %} allows you to control [iTunes](https://apple.com/itunes/) from Home Assistant. It uses a 3rd party server that you run on your Mac called [itunes-api](https://github.com/maddox/itunes-api). Play, pause or skip songs remotely on iTunes running on your Mac.
diff --git a/source/_integrations/jellyfin.markdown b/source/_integrations/jellyfin.markdown
index 0804c2b9cce..378ceed096a 100644
--- a/source/_integrations/jellyfin.markdown
+++ b/source/_integrations/jellyfin.markdown
@@ -64,5 +64,4 @@ Password:
{% configuration_basic %}
Audio Codec:
description: Sets the audio encoding codec to a Jellyfin API supported codec (aac, mp3, vorbis, wma)
- required: false
{% endconfiguration_basic %}
diff --git a/source/_integrations/jewish_calendar.markdown b/source/_integrations/jewish_calendar.markdown
index c646127e053..4fcfd3116d9 100644
--- a/source/_integrations/jewish_calendar.markdown
+++ b/source/_integrations/jewish_calendar.markdown
@@ -13,7 +13,6 @@ ha_platforms:
- sensor
ha_integration_type: integration
ha_config_flow: true
-ha_quality_scale: silver
---
The Jewish Calendar (`jewish_calendar`) {% term integration %} displays various information related to the Jewish Calendar as various sensors.
diff --git a/source/_integrations/joaoapps_join.markdown b/source/_integrations/joaoapps_join.markdown
index c78886e2dd7..e19fb9f72b8 100644
--- a/source/_integrations/joaoapps_join.markdown
+++ b/source/_integrations/joaoapps_join.markdown
@@ -13,6 +13,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `joaoapps_join` {% term integration %} exposes actions from
diff --git a/source/_integrations/kaiterra.markdown b/source/_integrations/kaiterra.markdown
index dd344225b7e..c64bf2746b8 100644
--- a/source/_integrations/kaiterra.markdown
+++ b/source/_integrations/kaiterra.markdown
@@ -15,6 +15,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `kaiterra` {% term integration %} allows you to view the readings from your Laser Egg or Sensedge device using the [Kaiterra REST API](https://dev.kaiterra.com/).
diff --git a/source/_integrations/kankun.markdown b/source/_integrations/kankun.markdown
index b022428eea8..b71a6d51384 100644
--- a/source/_integrations/kankun.markdown
+++ b/source/_integrations/kankun.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `kankun` switch {% term integration %} allows you to toggle customized Kankun SP3 Wi-Fi switches. Switches are
diff --git a/source/_integrations/keba.markdown b/source/_integrations/keba.markdown
index 585804b53d9..91125e15580 100644
--- a/source/_integrations/keba.markdown
+++ b/source/_integrations/keba.markdown
@@ -20,6 +20,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `keba` integrates your Keba charging station/BMW Wallbox into your Home Assistant instance using the UDP Smart Home Interface ([manual](https://www.ifix-solar.shop/wp-content/uploads/shop/Dokumente/KEBA/KeContact_P20_P30_UDP_ProgrGuide_en.pdf)). The fetching interval to the charging station is set to 5 seconds, same as in the official mobile app. In order to use the integration, enable the UDP Smart Home Interface by adjusting the DIP switches within the charging station according to the [installation manual](https://www.keba.com/file/downloads/e-mobility/KeContact_KCP20_30_ih_en.pdf).
diff --git a/source/_integrations/kef.markdown b/source/_integrations/kef.markdown
index f9d70a4ddf1..0b73ccdc060 100644
--- a/source/_integrations/kef.markdown
+++ b/source/_integrations/kef.markdown
@@ -14,6 +14,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `kef` {% term integration %} allows you to control the KEF LS50 Wireless and [KEF LSX](https://international.kef.com/products/lsx) speakers from Home Assistant.
@@ -78,7 +79,7 @@ supports_on:
description: LS50 Wireless with a serial number below LS50W13074K24L/R2G do not support turning on the speakers over the network. Set this to false if you have an older model.
default: true
required: false
- type: integer
+ type: boolean
{% endconfiguration %}
## Advanced - configuration example
diff --git a/source/_integrations/keyboard.markdown b/source/_integrations/keyboard.markdown
index 905c9a7e080..ebaaf8898d4 100644
--- a/source/_integrations/keyboard.markdown
+++ b/source/_integrations/keyboard.markdown
@@ -7,6 +7,7 @@ ha_release: pre 0.7
ha_domain: keyboard
ha_iot_class: Local Push
ha_integration_type: integration
+ha_quality_scale: legacy
---
The `keyboard` integration simulates key presses on the host machine. It currently offers the following Buttons as a Service (BaaS):
diff --git a/source/_integrations/keyboard_remote.markdown b/source/_integrations/keyboard_remote.markdown
index ed02e3db7ba..fc66409da8b 100644
--- a/source/_integrations/keyboard_remote.markdown
+++ b/source/_integrations/keyboard_remote.markdown
@@ -13,6 +13,7 @@ ha_integration_type: hub
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
Receive signals from a keyboard and use it as a remote control.
diff --git a/source/_integrations/keymitt_ble.markdown b/source/_integrations/keymitt_ble.markdown
index eba82277308..eacc4a1682b 100644
--- a/source/_integrations/keymitt_ble.markdown
+++ b/source/_integrations/keymitt_ble.markdown
@@ -53,9 +53,10 @@ The integration will automatically discover devices once the [Bluetooth](/integr
Due to the device going into deep sleep after extended periods of no activity, the response time can be up to a minute in extreme cases. On average it will be much quicker.
-{% configuration_basic %}
-"Failed to pair":
- description: Make sure your devices are powered on, in range, and in pairing mode. Pressing the button on the MicroBot Push to take it out of deep sleep may also be beneficial.
-"No unconfigured devices found":
- description: Make sure your devices are powered on, in range, and in pairing mode. Pressing the button on the MicroBot Push to take it out of deep sleep may also be beneficial.
-{% endconfiguration_basic %}
+{% details "Failed to pair" %}
+Make sure your devices are powered on, in range, and in pairing mode. Pressing the button on the MicroBot Push to take it out of deep sleep may also be beneficial.
+{% enddetails %}
+
+{% details "No unconfigured devices found" %}
+Make sure your devices are powered on, in range, and in pairing mode. Pressing the button on the MicroBot Push to take it out of deep sleep may also be beneficial.
+{% enddetails %}
diff --git a/source/_integrations/kira.markdown b/source/_integrations/kira.markdown
index 321651c244e..bd81ec198a0 100644
--- a/source/_integrations/kira.markdown
+++ b/source/_integrations/kira.markdown
@@ -12,6 +12,7 @@ ha_platforms:
- remote
- sensor
ha_integration_type: integration
+ha_quality_scale: legacy
---
The `kira` integration is the main integration to integrate Keene Electronics IR over IP [Kira](https://k2audio.co.uk/collections/ip-and-internet-control) modules with Home Assistant.
diff --git a/source/_integrations/kiwi.markdown b/source/_integrations/kiwi.markdown
index 1b05a02268d..7fd7eac56b7 100644
--- a/source/_integrations/kiwi.markdown
+++ b/source/_integrations/kiwi.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `KIWI` {% term integration %} allows you to open your KIWI Smart Locks and Smart Entry Devices.
diff --git a/source/_integrations/knx.markdown b/source/_integrations/knx.markdown
index 42081d3eea0..9f762782209 100644
--- a/source/_integrations/knx.markdown
+++ b/source/_integrations/knx.markdown
@@ -27,7 +27,6 @@ ha_codeowners:
- '@farmio'
- '@marvin-w'
ha_domain: knx
-ha_quality_scale: platinum
ha_platforms:
- binary_sensor
- button
diff --git a/source/_integrations/kwb.markdown b/source/_integrations/kwb.markdown
index 2f086ee072a..f6d6df615b1 100644
--- a/source/_integrations/kwb.markdown
+++ b/source/_integrations/kwb.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `kwb` {% term integration %} integrates the sensors of KWB Easyfire pellet central heating units with the Comfort3 controller (https://www.kwb.net/produkte/) into Home Assistant.
diff --git a/source/_integrations/lacrosse.markdown b/source/_integrations/lacrosse.markdown
index 48976ef6c57..035e3e8abf8 100644
--- a/source/_integrations/lacrosse.markdown
+++ b/source/_integrations/lacrosse.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `lacrosse` sensor {% term integration %} is using the data provided by a [Jeelink](https://www.digitalsmarties.net/products/jeelink) USB dongle or this [Arduino sketch](https://svn.fhem.de/trac/browser/trunk/fhem/contrib/arduino/36_LaCrosse-LaCrosseITPlusReader.zip).
diff --git a/source/_integrations/lamarzocco.markdown b/source/_integrations/lamarzocco.markdown
index 02ecc327245..0902dd1fa8b 100644
--- a/source/_integrations/lamarzocco.markdown
+++ b/source/_integrations/lamarzocco.markdown
@@ -47,16 +47,10 @@ By default, this integration will query your machine every 30 seconds for an upd
{% configuration_basic %}
Username:
description: "Your username you use to log into the La Marzocco app."
- required: true
- type: string
Password:
description: "Password you use to log into the La Marzocco app."
- required: true
- type: string
Host:
description: "IP address of your machine in your local network. If not set, no local connections will be used."
- required: false
- type: boolean
{% endconfiguration_basic %}
{% include integrations/option_flow.md %}
@@ -68,77 +62,81 @@ Use Bluetooth:
# Available platforms & entities
+{% icon "material-symbols:cloud-outline" title="La Marzocco Cloud" %} = La Marzocco Cloud
+ = Bluetooth
+{% icon "material-symbols:wifi" title="Local connection" %} = Local network
+
## Buttons
-| Button name | Description | Available for machines |
-|-------------|-------------| ---------------------- |
-| Start backflush | Starts the backflush process on your machine. You got 15 seconds to turn the paddle after activation. | all |
+| Button name | Description | Available for machines | Controllable through |
+|-------------|-------------| ---------------------- | -------------------- |
+| **Start backflush** | Starts the backflush process on your machine. You got 15 seconds to turn the paddle after activation. | `all` | {% icon "material-symbols:cloud-outline" title="La Marzocco Cloud" %} |
## Numbers
-| Number name | Description | Available for machines | Remarks |
-|-------------|-------------| ---------------------- | ------- |
-| Coffee target temperature | Temperature the coffee boiler is set to | GS3 AV, GS3 MP | - |
-| Steam target temperature | Temperature the steam boiler is set to | GS3 AV, GS3 MP | - |
-| Tea water duration | Dose hot water (in seconds) | GS3 AV, GS3 MP | - |
-| Dose | Doseage (in ticks) for each key | GS3 AV | GS3 has this multiple times, one for each physical key (1-4), and the entities are disabled by default |
-| Prebrew on time | Time prebrew wets the puck | Linea Micra, Linea Mini, GS3 AV | GS3 has this multiple times, one for each physical key (1-4), and the entities are disabled by default |
-| Prebrew off time | Time prebrew waits before turning on the pump | Linea Micra, Linea Mini, GS3 AV | GS3 has this multiple times, one for each physical key (1-4), and the entities are disabled by default |
-| Preinfusion time | Duration of preinfusion | Linea Micra, Linea Mini, GS3 AV | GS3 has this multiple times, one for each physical key (1-4), and the entities are disabled by default |
-| Smart standby time | Time until the machine will automatically stand by (if enabled) | all | - |
+| Number name | Description | Available for machines | Controllable through | Remarks |
+|-------------|-------------| ---------------------- |--------------------- | ------- |
+| **Coffee target temperature** | Temperature the coffee boiler is set to | `all` | {% icon "material-symbols:cloud-outline" title="La Marzocco Cloud" %} | - |
+| **Steam target temperature** | Temperature the steam boiler is set to | `GS3 AV`, `GS3 MP` | {% icon "material-symbols:cloud-outline" title="La Marzocco Cloud" %} | - |
+| **Tea water duration** | Dose hot water (in seconds) | `GS3 AV`, `GS3 MP` | {% icon "material-symbols:cloud-outline" title="La Marzocco Cloud" %} | - |
+| **Dose** | Doseage (in ticks) for each key | `GS3 AV` | {% icon "material-symbols:cloud-outline" title="La Marzocco Cloud" %} | `GS3` has this multiple times, one for each physical key (1-4), and the entities are disabled by default |
+| **Prebrew on time** | Time prebrew wets the puck | `Linea Micra`, `Linea Mini`, `GS3 AV` | {% icon "material-symbols:cloud-outline" title="La Marzocco Cloud" %} | `GS3` has this multiple times, one for each physical key (1-4), and the entities are disabled by default |
+| **Prebrew off time** | Time prebrew waits before turning on the pump | `Linea Micra`, `Linea Mini`, `GS3 AV` | {% icon "material-symbols:cloud-outline" title="La Marzocco Cloud" %} | `GS3` has this multiple times, one for each physical key (1-4), and the entities are disabled by default |
+| **Preinfusion time** | Duration of preinfusion | `Linea Micra`, `Linea Mini`, `GS3 AV` | {% icon "material-symbols:cloud-outline" title="La Marzocco Cloud" %} | `GS3` has this multiple times, one for each physical key (1-4), and the entities are disabled by default |
+| **Smart standby time** | Time until the machine will automatically stand by (if enabled) | `all` | {% icon "material-symbols:cloud-outline" title="La Marzocco Cloud" %} | - |
## Switches
-| Switch name | Description | Available for machines |
-|-------------|-------------| ---------------------- |
-| Main | Allows to turn machines on-/off | all |
-| Steam boiler | Allows to enable/disable the steam boiler | all |
-| Smart standby enabled | Whether smart standby is on (machine will automatically stand by after given time) | all |
+| Switch name | Description | Available for machines | Controllable through |
+|-------------|-------------| ---------------------- | -------------------- |
+| **Main** | Allows to turn machines on-/off | `all` | {% icon "material-symbols:cloud-outline" title="La Marzocco Cloud" %} |
+| **Steam boiler** | Allows to enable/disable the steam boiler | `all` | {% icon "material-symbols:cloud-outline" title="La Marzocco Cloud" %} |
+| **Smart standby enabled** | Whether smart standby is on (machine will automatically stand by after given time) | `all` | {% icon "material-symbols:cloud-outline" title="La Marzocco Cloud" %} |
## Binary sensors
-| Binary sensor name | Description | Available for machines | Remarks |
-|-------------|-------------| ---------------------- | ------- |
-| Water tank empty | Indicates whether the water tank needs a refill. | all | - |
-| Brewing active | Is on if you are in the process of making coffee. | all | Only available when the *Host* was set during component configuration. |
-| Backflush enabled | Is on if you started the backflushing process. | all | - |
+| Binary sensor name | Description | Available for machines | Retrievable from | Remarks |
+|------------------- |-------------| ---------------------- | ----------------- | ------- |
+| **Water tank empty** | Indicates whether the water tank needs a refill. | `all` | {% icon "material-symbols:cloud-outline" title="La Marzocco Cloud" %} {% icon "material-symbols:wifi" title="Local connection" %} | - |
+| **Brewing active** | Is on if you are in the process of making coffee. | `all` | {% icon "material-symbols:wifi" title="Local connection" %} | Only available when the `Host` was set during component configuration. |
+| **Backflush enabled** | Is on if you started the backflushing process. | `all` | {% icon "material-symbols:cloud-outline" title="La Marzocco Cloud" %} {% icon "material-symbols:wifi" title="Local connection" %} | - |
## Sensors
-| Sensor name | Description | Available for machines | Remarks |
-|-------------|-------------| ---------------------- | ------- |
-| Current coffee temperature | Current temperature of the coffee boiler | all | When the machine reaches temperature, this will be approximately 3 degrees higher than the `Coffee target temperature`, due to different measurement points. |
-| Current steam temperature| Current temperature of the steam boiler | Linea Micra, GS3 AV, GS3 MP | - |
-| Total coffees made | Counter for total coffees made| all | - |
-| Total flushes made | Counter for total flushes done | all | - |
-| Shot timer | Time the current brew is running | all | Only available when the *Host* was set during component configuration. |
+| Sensor name | Description | Available for machines | Retrievable from | Remarks |
+|-------------|-------------| ---------------------- | ---------------- | ------- |
+| **Current coffee temperature** | Current temperature of the coffee boiler | `all` | {% icon "material-symbols:cloud-outline" title="La Marzocco Cloud" %} {% icon "material-symbols:wifi" title="Local connection" %} | When the machine reaches temperature, this will be approximately 3 degrees higher than the `Coffee target temperature`, due to different measurement points. |
+| **Current steam temperature**| Current temperature of the steam boiler | `Linea Micra`, `GS3 AV`, `GS3 MP` | {% icon "material-symbols:cloud-outline" title="La Marzocco Cloud" %} {% icon "material-symbols:wifi" title="Local connection" %} | - |
+| **Total coffees made** | Counter for total coffees made| `all` | {% icon "material-symbols:cloud-outline" title="La Marzocco Cloud" %} | - |
+| **Total flushes made** | Counter for total flushes done | `all` | {% icon "material-symbols:cloud-outline" title="La Marzocco Cloud" %}| - |
+| **Shot timer** | Time the current brew is running | `all` | {% icon "material-symbols:wifi" title="Local connection" %} | Only available when the `Host` was set during component configuration. |
## Updates
-| Update name | Description | Available for machines |
-|-------------|-------------| ---------------------- |
-| Gateway firmware | Firmware status of the gateway | all |
-| Machine firmware | Firmware status of the machine | all |
+| Update name | Description | Available for machines | Retrievable from |
+|-------------|-------------| ---------------------- |---------------- |
+| **Gateway firmware** | Firmware status of the gateway | `all` | {% icon "material-symbols:cloud-outline" title="La Marzocco Cloud" %} |
+| **Machine firmware** | Firmware status of the machine | `all` | {% icon "material-symbols:cloud-outline" title="La Marzocco Cloud" %} |
## Selects
-| Select name | Description | Options | Available for machines |
-|-------------|-------------| ------------------------| ---------------------- |
-| Prebrew/-infusion mode | Whether to use prebrew, preinfusion, or neither | Disabled, Prebrew, Preinfusion | Linea Micra, Linea Mini, GS3 AV |
-| Steam level | The level your steam boiler should run at | 1,2,3 | Linea Micra |
-| Smart standby mode | The smart standby mode, that decides from which events the timer to standby will run. | Last brewing, Power on | all |
+| Select name | Description | Options | Available for machines | Controllable through |
+|-------------|-------------| --------| ---------------------- | -------------------- |
+| **Prebrew/-infusion mode** | Whether to use prebrew, preinfusion, or neither | `Disabled`, `Prebrew`, `Preinfusion` | `Linea Micra`, `Linea Mini`, `GS3 AV` | {% icon "material-symbols:cloud-outline" title="La Marzocco Cloud" %} |
+| **Steam level** | The level your steam boiler should run at | `1`,`2`,`3` | `Linea Micra` | {% icon "material-symbols:cloud-outline" title="La Marzocco Cloud" %} |
+| **Smart standby mode** | The smart standby mode, that decides from which events the timer to standby will run. | `Last brewing`, `Power on` | `all` | {% icon "material-symbols:cloud-outline" title="La Marzocco Cloud" %} |
## Supported devices
Currently, only devices from the **"Home"** range are supported:
-- Linea Mini
-- Linea Mini R
-- Linea Micra
-- GS3 AV
-- GS3 MP
+- `Linea Mini`
+- `Linea Mini R`
+- `Linea Micra`
+- `GS3 AV`
+- `GS3 MP`
## Possible use-cases
@@ -187,9 +185,9 @@ mode: single
- Only La Marzocco native app accounts are supported, social logins (Google, Apple & WeChat) are not supported
- Currently it is only possible to view the schedules configured in the La Marzocco Home app, but not to edit the schedules from Home Assistant. You can, of course, build Home Assistant native automations to reflect the same functionality in Home Assistant.
-## Remove integration
+## Removing the integration
-This integration follows standard integration removal, no extra steps are required.
+This integration follows standard integration removal. No extra steps are required.
{% include integrations/remove_device_service.md %}
diff --git a/source/_integrations/lametric.markdown b/source/_integrations/lametric.markdown
index cf052229617..4d08eafc75e 100644
--- a/source/_integrations/lametric.markdown
+++ b/source/_integrations/lametric.markdown
@@ -27,7 +27,6 @@ ha_integration_type: device
ha_config_flow: true
ha_ssdp: true
ha_dhcp: true
-ha_quality_scale: platinum
---
[LaMetric TIME](https://lametric.com/) is a smart clock that can be used to access applications, listen to web radio and display notifications.
diff --git a/source/_integrations/lannouncer.markdown b/source/_integrations/lannouncer.markdown
index 5a4b3382477..ccaf3c53164 100644
--- a/source/_integrations/lannouncer.markdown
+++ b/source/_integrations/lannouncer.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `lannouncer` notification {% term integration %} allows you to play spoken messages (TTS) or sounds on an Android device running [Lannouncer](https://play.google.com/store/apps/details?id=com.keybounce.lannouncer&hl=en_US). This can be useful when you have a wall mounted Android tablet, or an Android device that is permanently powered and turned on and want to use that to play notifications.
diff --git a/source/_integrations/laundrify.markdown b/source/_integrations/laundrify.markdown
index 593e412f9fb..338e6c3a182 100644
--- a/source/_integrations/laundrify.markdown
+++ b/source/_integrations/laundrify.markdown
@@ -40,8 +40,6 @@ Your code will expire within 60 minutes after activation. Make sure to configure
{% include integrations/config_flow.md %}
{% configuration_basic %}
-code:
+Code:
description: "Auth Code that can be obtained in the laundrify App (see above), e.g., `123-456`."
- required: true
- type: string
{% endconfiguration_basic %}
diff --git a/source/_integrations/lektrico.markdown b/source/_integrations/lektrico.markdown
index cfd8359c8ec..b8b5f346c3a 100644
--- a/source/_integrations/lektrico.markdown
+++ b/source/_integrations/lektrico.markdown
@@ -11,6 +11,7 @@ ha_codeowners:
ha_domain: lektrico
ha_zeroconf: true
ha_platforms:
+ - binary_sensor
- button
- number
- select
diff --git a/source/_integrations/lg_netcast.markdown b/source/_integrations/lg_netcast.markdown
index 88d1e6a680e..8eaae6d8d2c 100644
--- a/source/_integrations/lg_netcast.markdown
+++ b/source/_integrations/lg_netcast.markdown
@@ -13,7 +13,6 @@ ha_codeowners:
- '@Drafteed'
- '@splinter98'
ha_integration_type: device
-ha_config_flow: true
---
The `lg_netcast` platform allows you to control a LG Smart TV running NetCast 3.0 (LG Smart TV models released in 2012) and NetCast 4.0 (LG Smart TV models released in 2013). For the new LG WebOS TV's use the [webostv](/integrations/webostv#media-player) platform.
diff --git a/source/_integrations/lg_thinq.markdown b/source/_integrations/lg_thinq.markdown
index 4e456645cac..118c6e89400 100644
--- a/source/_integrations/lg_thinq.markdown
+++ b/source/_integrations/lg_thinq.markdown
@@ -3,23 +3,25 @@ title: LG ThinQ
description: Setup for LG ThinQ Integration.
ha_category:
- Hub
-ha_release: "2024.11"
+ha_release: '2024.11'
ha_iot_class: Cloud Push
ha_code_owners:
- '@LG-ThinQ-Integration'
ha_config_flow: true
ha_domain: lg_thinq
ha_platforms:
- - switch
- binary_sensor
- climate
- event
- fan
- number
- - sensor
- select
+ - sensor
+ - switch
- vacuum
ha_integration_type: integration
+ha_codeowners:
+ - '@LG-ThinQ-Integration'
---
The **LG ThinQ** integration allows you to connect LG ThinQ devices to Home Assistant. The features of this integration include:
diff --git a/source/_integrations/lifx_cloud.markdown b/source/_integrations/lifx_cloud.markdown
index cb587833428..ac58de11721 100644
--- a/source/_integrations/lifx_cloud.markdown
+++ b/source/_integrations/lifx_cloud.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `lifx_cloud` scene {% term integration %} allows you to activate the scenes that LIFX smartphone apps store in the LIFX cloud.
diff --git a/source/_integrations/lightwave.markdown b/source/_integrations/lightwave.markdown
index 56ba9dddc10..bd12fd656a7 100644
--- a/source/_integrations/lightwave.markdown
+++ b/source/_integrations/lightwave.markdown
@@ -17,6 +17,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `lightwave` {% term integration %} links Home Assistant with your Lightwave WiFi link for controlling Lightwave lights, switches and TRVs.
diff --git a/source/_integrations/limitlessled.markdown b/source/_integrations/limitlessled.markdown
index 93f61d4633a..9ce266003d2 100644
--- a/source/_integrations/limitlessled.markdown
+++ b/source/_integrations/limitlessled.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
`limitlessled` can control your LimitlessLED lights from within Home Assistant. The lights are also known as EasyBulb, AppLight, AppLamp, MiLight, LEDme, dekolight, or iLight.
diff --git a/source/_integrations/linksys_smart.markdown b/source/_integrations/linksys_smart.markdown
index 6a0495a2ed0..6f068ff1bbb 100644
--- a/source/_integrations/linksys_smart.markdown
+++ b/source/_integrations/linksys_smart.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `linksys_smart` {% term integration %} offers presence detection by looking at connected devices to a Linksys Smart Wi-Fi based router.
diff --git a/source/_integrations/linode.markdown b/source/_integrations/linode.markdown
index d3e9d820b9c..ba8bb80effc 100644
--- a/source/_integrations/linode.markdown
+++ b/source/_integrations/linode.markdown
@@ -15,6 +15,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `linode` {% term integration %} allows you to access the information about your [Linode](https://linode.com) systems from Home Assistant.
diff --git a/source/_integrations/linux_battery.markdown b/source/_integrations/linux_battery.markdown
index bf86f5a5311..3f91dbe28cb 100644
--- a/source/_integrations/linux_battery.markdown
+++ b/source/_integrations/linux_battery.markdown
@@ -14,6 +14,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `linux_battery` sensor {% term integration %} is using the information stored in `/sys/class/power_supply/` on your local Linux system to display details about the current state of your battery.
diff --git a/source/_integrations/lirc.markdown b/source/_integrations/lirc.markdown
index 97ed4511e90..cf28ba30e99 100644
--- a/source/_integrations/lirc.markdown
+++ b/source/_integrations/lirc.markdown
@@ -7,6 +7,7 @@ ha_release: 0.21
ha_iot_class: Local Push
ha_domain: lirc
ha_integration_type: integration
+ha_quality_scale: legacy
---
[LIRC](https://www.lirc.org/) integration for Home Assistant allows you to receive signals from an infrared remote control and control actions based on the buttons you press. You can use them to set scenes or trigger any other [automation](/docs/automation/).
diff --git a/source/_integrations/litejet.markdown b/source/_integrations/litejet.markdown
index a878d875e67..01f038fec08 100644
--- a/source/_integrations/litejet.markdown
+++ b/source/_integrations/litejet.markdown
@@ -17,7 +17,6 @@ ha_platforms:
ha_codeowners:
- '@joncar'
ha_integration_type: hub
-ha_quality_scale: platinum
---
LiteJet is a centralized lighting system that predates most home automation technology. All lights and wall switches are wired to a central panel. This central panel has a serial port interface that allows a computer to control the system via LiteJet's third party protocol. Home Assistant integrates the LiteJet 3rd party protocol and allows you to get the status and control the connected lights. This integration also supports the Centralite Elegance and Centralite Jetstream.
diff --git a/source/_integrations/llamalab_automate.markdown b/source/_integrations/llamalab_automate.markdown
index 29f51d8c7c3..78dd9a3b506 100644
--- a/source/_integrations/llamalab_automate.markdown
+++ b/source/_integrations/llamalab_automate.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `llamalab_automate` {% term integration %} uses Googles Cloud Messaging Services to push messages from Home Assistant to your Android device running the LlamaLab [Automate](https://llamalab.com/automate/) app. This can serve as an alternative to Tasker + AutoRemote.
diff --git a/source/_integrations/local_file.markdown b/source/_integrations/local_file.markdown
index 15592416fb9..95c0f32a2d9 100644
--- a/source/_integrations/local_file.markdown
+++ b/source/_integrations/local_file.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_config_flow: true
---
The **Local file** camera {% term integration %} allows you to integrate an image file from disk into Home Assistant as a camera. If the image is updated on the file system, the image displayed in Home Assistant will also be updated. The `local_file.update_file_path` action can be used to update the image using an automation.
diff --git a/source/_integrations/logentries.markdown b/source/_integrations/logentries.markdown
index 4eefbcb72a0..110fb73e7e0 100644
--- a/source/_integrations/logentries.markdown
+++ b/source/_integrations/logentries.markdown
@@ -10,6 +10,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `logentries` {% term integration %} makes it possible to log all state changes to [Logentries](https://logentries.com) using Logentries Webhook endpoint.
diff --git a/source/_integrations/london_air.markdown b/source/_integrations/london_air.markdown
index a002623bccf..a7c580b6761 100644
--- a/source/_integrations/london_air.markdown
+++ b/source/_integrations/london_air.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `london_air` {% term integration %} [queries](https://api.erg.kcl.ac.uk/AirQuality/Hourly/MonitoringIndex/GroupName=London/Json) the London air quality [data feed](https://www.londonair.org.uk/LondonAir/API/) provided by Kings College London. A single sensor will be added for each `location` ([local authority district or borough](https://en.wikipedia.org/wiki/List_of_London_boroughs)) specified in the configuration file. The state of each sensor is the overall air quality in that borough. Note that only 28 of the 32 boroughs have data available.
diff --git a/source/_integrations/london_underground.markdown b/source/_integrations/london_underground.markdown
index 7b288994046..f91ff1123d2 100644
--- a/source/_integrations/london_underground.markdown
+++ b/source/_integrations/london_underground.markdown
@@ -14,6 +14,7 @@ ha_codeowners:
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `london_underground` {% term integration %} will display the status of London underground lines, as well as the Overground and DLR.
diff --git a/source/_integrations/luci.markdown b/source/_integrations/luci.markdown
index 302503e9879..650c0abd0c7 100644
--- a/source/_integrations/luci.markdown
+++ b/source/_integrations/luci.markdown
@@ -11,6 +11,7 @@ ha_domain: luci
ha_platforms:
- device_tracker
ha_integration_type: integration
+ha_quality_scale: legacy
---
This is a presence detection scanner for OpenWrt using [luci](https://openwrt.org/docs/techref/luci).
diff --git a/source/_integrations/luftdaten.markdown b/source/_integrations/luftdaten.markdown
index 162947d9f30..74f0a913793 100644
--- a/source/_integrations/luftdaten.markdown
+++ b/source/_integrations/luftdaten.markdown
@@ -7,7 +7,6 @@ ha_category:
ha_release: 0.82
ha_iot_class: Cloud Polling
ha_config_flow: true
-ha_quality_scale: gold
ha_codeowners:
- '@fabaff'
- '@frenck'
diff --git a/source/_integrations/lw12wifi.markdown b/source/_integrations/lw12wifi.markdown
index 7630c262e42..b360bb41b33 100644
--- a/source/_integrations/lw12wifi.markdown
+++ b/source/_integrations/lw12wifi.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `lw12wifi` light {% term integration %} supports Lagute LW-12 Wifi LED controller.
diff --git a/source/_integrations/lyric.markdown b/source/_integrations/lyric.markdown
index d0d88d8d942..c3eeceb5de3 100644
--- a/source/_integrations/lyric.markdown
+++ b/source/_integrations/lyric.markdown
@@ -10,7 +10,6 @@ ha_config_flow: true
ha_codeowners:
- '@timmo001'
ha_domain: lyric
-ha_quality_scale: silver
ha_platforms:
- climate
- sensor
diff --git a/source/_integrations/manual_mqtt.markdown b/source/_integrations/manual_mqtt.markdown
index f64d45304bc..1c9e884aeca 100644
--- a/source/_integrations/manual_mqtt.markdown
+++ b/source/_integrations/manual_mqtt.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `mqtt` {% term integration %} extends the [manual alarm](/integrations/manual) by adding support for MQTT control of the alarm by a remote device. It can be used to create external keypads which simply change the state of the manual alarm in Home Assistant.
diff --git a/source/_integrations/marytts.markdown b/source/_integrations/marytts.markdown
index 6b2034515ea..e475bc99cb6 100644
--- a/source/_integrations/marytts.markdown
+++ b/source/_integrations/marytts.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `marytts` text-to-speech {% term integration %} uses [MaryTTS](https://marytts.github.io/) text-to-speech engine to read a text with natural sounding voices.
diff --git a/source/_integrations/mastodon.markdown b/source/_integrations/mastodon.markdown
index 25e6aa615bb..2d69ed5232f 100644
--- a/source/_integrations/mastodon.markdown
+++ b/source/_integrations/mastodon.markdown
@@ -115,7 +115,7 @@ For more on how to use notifications in your automations, please see the [gettin
The integration only allows reading the status of the authenticated account and posting to that account. It does not provide functionality to get the stream, favorite, bookmark, or boost posts of that account.
-## Remove integration
+## Removing the integration
This integration follows standard integration removal, once the integration is removed you can remove the application registration (assuming it was only used by this integration) from your Mastodon account by going to **Preferences** in the Mastodon web interface, then to **Development** and deleting the application you created for Home Assistant.
diff --git a/source/_integrations/matrix.markdown b/source/_integrations/matrix.markdown
index c90b07e88c4..82e14a85595 100644
--- a/source/_integrations/matrix.markdown
+++ b/source/_integrations/matrix.markdown
@@ -15,6 +15,7 @@ ha_codeowners:
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
This {% term integration %} allows you to send messages to matrix rooms, as well as to react to messages in matrix rooms. Reacting to commands is accomplished by firing an event when one of the configured commands is triggered.
diff --git a/source/_integrations/matter.markdown b/source/_integrations/matter.markdown
index 5daa68ebd99..80b2394d3a2 100644
--- a/source/_integrations/matter.markdown
+++ b/source/_integrations/matter.markdown
@@ -339,6 +339,10 @@ The CSA operates a Distributed Compliance Ledger (DCL) which provides metadata f
Notification of an OTA update for a Matter device
+{% note %}
+The Home Assistant Matter updates currently do not work for Thread devices on a Thread network with (any) Apple border routers. Typically you'll see "Target node did not process the update file" error instead. The Apple border routers do not forward the necessary mDNS packets which allow to discover the update provider on Home Assistant end. The Apple Home ecosystem might offer updates from their end as an alternative (e.g. for Eve devices).
+{% endnote %}
+
## Automate on a button press
You have a device that takes button presses as inputs (such as a Tuo Smart Button, VTM31SN dimmer by Inovelli, or the Matter Pushbutton Module by Innovation Matters) and now want to trigger an automation based on that button press. To learn how to create an automation triggered by a button press, refer to this [tutorial](/integrations/event/#automating-on-a-button-press).
diff --git a/source/_integrations/maxcube.markdown b/source/_integrations/maxcube.markdown
index 75f4b7b4daf..7eacc835c30 100644
--- a/source/_integrations/maxcube.markdown
+++ b/source/_integrations/maxcube.markdown
@@ -14,6 +14,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
[eQ-3 MAX!](https://www.eq-3.com/products/homematic/detail/max-cube-lan-gateway.html) integration for Home Assistant allows you to connect eQ-3 MAX! components via the eQ-3 MAX! Cube. The components connects to the eQ-3 MAX! Cube via TCP and automatically makes all supported integrations available in Home Assistant. The name for each device is created by concatenating the MAX! room and device names.
diff --git a/source/_integrations/mealie.markdown b/source/_integrations/mealie.markdown
index e98daa8f88c..a945f5a41fe 100644
--- a/source/_integrations/mealie.markdown
+++ b/source/_integrations/mealie.markdown
@@ -164,7 +164,7 @@ template:
{% enddetails %}
-## Remove integration
+## Removing the integration
This integration follows standard integration removal, once the integration is removed you can remove the API token (assuming it was only used by this integration) by going to your Account in the Mealie web interface, then to **Manage Your API Tokens** and deleting the token you created for Home Assistant.
diff --git a/source/_integrations/mediaroom.markdown b/source/_integrations/mediaroom.markdown
index e97a707895a..f4028df6034 100644
--- a/source/_integrations/mediaroom.markdown
+++ b/source/_integrations/mediaroom.markdown
@@ -14,6 +14,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `mediaroom` {% term integration %} allows you to control a [Mediaroom](https://en.wikipedia.org/wiki/Ericsson_Mediaroom) Set-Top Box (STB) from Home Assistant.
diff --git a/source/_integrations/melissa.markdown b/source/_integrations/melissa.markdown
index e700e5fd810..ddd1bf43d45 100644
--- a/source/_integrations/melissa.markdown
+++ b/source/_integrations/melissa.markdown
@@ -15,6 +15,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `melissa` {% term integration %} is the main integration to connect to a [Melissa Climate](https://seemelissa.com/) A/C control.
diff --git a/source/_integrations/meraki.markdown b/source/_integrations/meraki.markdown
index 1617eb1aaf2..9aeca1e8b0a 100644
--- a/source/_integrations/meraki.markdown
+++ b/source/_integrations/meraki.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
Use your Meraki AP as device tracker. Note that Meraki will see all devices, not only connected to the network.
diff --git a/source/_integrations/message_bird.markdown b/source/_integrations/message_bird.markdown
index a55308738d4..77a7fddbdaa 100644
--- a/source/_integrations/message_bird.markdown
+++ b/source/_integrations/message_bird.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `MessageBird` notification {% term integration %} sends notifications as SMS messages using [MessageBird](https://www.messagebird.com/) to your mobile phone.
diff --git a/source/_integrations/meteoalarm.markdown b/source/_integrations/meteoalarm.markdown
index 547c1a0af31..141c9ed7190 100644
--- a/source/_integrations/meteoalarm.markdown
+++ b/source/_integrations/meteoalarm.markdown
@@ -11,6 +11,7 @@ ha_domain: meteoalarm
ha_platforms:
- binary_sensor
ha_integration_type: integration
+ha_quality_scale: legacy
---
The `MeteoAlarm` platform allows one to watch for weather alerts in Europe from [MeteoAlarm](https://www.meteoalarm.org) (EUMETNET). To use this binary sensor, you need the country and the province name from [MeteoAlarm](https://feeds.meteoalarm.org). Please note that it is crucial to write the country name exactly as it appears in the URL starting with https://feeds.meteoalarm.org/feeds/meteoalarm-legacy-atom-, including any hyphens used in the name. Failure to do so may result in errors or incorrect data.
diff --git a/source/_integrations/mfi.markdown b/source/_integrations/mfi.markdown
index c243201875f..681e66fec81 100644
--- a/source/_integrations/mfi.markdown
+++ b/source/_integrations/mfi.markdown
@@ -15,6 +15,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
There is currently support for the following device types within Home Assistant:
diff --git a/source/_integrations/microsoft.markdown b/source/_integrations/microsoft.markdown
index 7fe4206ca97..97d0d433112 100644
--- a/source/_integrations/microsoft.markdown
+++ b/source/_integrations/microsoft.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `microsoft` text-to-speech {% term integration %} uses the [TTS engine of the Microsoft Speech Service](https://learn.microsoft.com/azure/cognitive-services/speech-service/text-to-speech) to read a text with natural sounding voices. This integration uses an API that is part of the Cognitive Services offering and is known as the Microsoft Speech API. For this integration to work, you need a free API key. You can use your [Azure subscription](https://azure.microsoft.com) to create an [Azure Speech resource](https://portal.azure.com/#create/Microsoft.CognitiveServicesSpeechServices).
diff --git a/source/_integrations/microsoft_face.markdown b/source/_integrations/microsoft_face.markdown
index 4cd04cf7263..d928c26a785 100644
--- a/source/_integrations/microsoft_face.markdown
+++ b/source/_integrations/microsoft_face.markdown
@@ -7,6 +7,7 @@ ha_iot_class: Cloud Push
ha_release: 0.37
ha_domain: microsoft_face
ha_integration_type: integration
+ha_quality_scale: legacy
---
The `microsoft_face` integration {% term integration %} is the main integration for Microsoft
diff --git a/source/_integrations/microsoft_face_detect.markdown b/source/_integrations/microsoft_face_detect.markdown
index c4c4963e5e8..0d01c6c428d 100644
--- a/source/_integrations/microsoft_face_detect.markdown
+++ b/source/_integrations/microsoft_face_detect.markdown
@@ -10,6 +10,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `microsoft_face_detect` image processing {% term integration %} allows you to use the
diff --git a/source/_integrations/microsoft_face_identify.markdown b/source/_integrations/microsoft_face_identify.markdown
index e344c07eab0..2df47729fb7 100644
--- a/source/_integrations/microsoft_face_identify.markdown
+++ b/source/_integrations/microsoft_face_identify.markdown
@@ -10,6 +10,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `microsoft_face_identify` image processing {% term integration %} lets you use
diff --git a/source/_integrations/min_max.markdown b/source/_integrations/min_max.markdown
index 43a830e968b..08a35b72ddf 100644
--- a/source/_integrations/min_max.markdown
+++ b/source/_integrations/min_max.markdown
@@ -24,6 +24,7 @@ The sensor provided by this integration will always show you the lowest/highest/
If the source sensor provides an unknown state, it will be ignored in the calculation except for sum where it will set the state to unknown. If the unit of measurement of the sensors differs, the Min/Max sensor will go to an error state where the value is `UNKNOWN` and unit of measurement is `ERR`.
{% include integrations/config_flow.md %}
+
{% configuration_basic %}
Name:
description: The name the sensor should have. You can change it again later.
diff --git a/source/_integrations/minecraft_server.markdown b/source/_integrations/minecraft_server.markdown
index 51636ae5569..b8ef784a926 100644
--- a/source/_integrations/minecraft_server.markdown
+++ b/source/_integrations/minecraft_server.markdown
@@ -6,7 +6,6 @@ ha_category:
- Binary sensor
- Sensor
ha_iot_class: Local Polling
-ha_quality_scale: platinum
ha_config_flow: true
ha_codeowners:
- '@elmurato'
diff --git a/source/_integrations/minio.markdown b/source/_integrations/minio.markdown
index ecdc07c0920..aeb0f47dd20 100644
--- a/source/_integrations/minio.markdown
+++ b/source/_integrations/minio.markdown
@@ -9,6 +9,7 @@ ha_codeowners:
- '@tkislan'
ha_domain: minio
ha_integration_type: integration
+ha_quality_scale: legacy
---
This integration adds interaction with [Minio](https://min.io).
diff --git a/source/_integrations/mochad.markdown b/source/_integrations/mochad.markdown
index 5fafc926e4e..44ec9d17b1e 100644
--- a/source/_integrations/mochad.markdown
+++ b/source/_integrations/mochad.markdown
@@ -15,6 +15,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `mochad` {% term integration %} is the main integration to integrate all X10 platforms being controlled by [mochad](https://sourceforge.net/projects/mochad/). Besides this integration you will have to setup your X10 devices separately.
diff --git a/source/_integrations/modbus.markdown b/source/_integrations/modbus.markdown
index cc87c29be80..4506ebdcce1 100644
--- a/source/_integrations/modbus.markdown
+++ b/source/_integrations/modbus.markdown
@@ -14,7 +14,6 @@ ha_platforms:
- light
- sensor
- switch
-ha_quality_scale: silver
ha_integration_type: integration
related:
- docs: /docs/configuration/
diff --git a/source/_integrations/motion_blinds.markdown b/source/_integrations/motion_blinds.markdown
index 8c12591a52a..86d2d18fb71 100644
--- a/source/_integrations/motion_blinds.markdown
+++ b/source/_integrations/motion_blinds.markdown
@@ -95,6 +95,10 @@ In the Brel Home app on Android go to the `me` page (home screen 4th tab), tap 5
In the official Bloc Blinds app go to settings (three bars > gear icon), go to the `About` page, Tap five time on the bloc blinds icon in the middle and a pop-up with the key will be shown.
+### 3 Day Blinds app
+
+In the 3 Day Blinds app go to the home screen, go to settings (three bars in the upper left corner > gear icon), select `About` from the bottom, quickly tap the 3 Day Blinds icon in the center of the screen 5 times and a pop-up with the key will be shown.
+
### Connector app
To get the API key ([iOS app](https://apps.apple.com/us/app/connector/id1344058317), [Android app](https://play.google.com/store/apps/details?id=com.smarthome.app.connector)), follow these steps:
diff --git a/source/_integrations/motioneye.markdown b/source/_integrations/motioneye.markdown
index 512fb2cbc09..f3d00f908b7 100644
--- a/source/_integrations/motioneye.markdown
+++ b/source/_integrations/motioneye.markdown
@@ -27,24 +27,14 @@ and visualization of multiple types of cameras.
{% configuration_basic %}
url:
description: The URL of the motionEye server itself -- **not** the URL for the camera stream(s) that it makes available.
- required: true
- type: string
admin_username:
description: The username of the motionEye administrative account, used for changing camera settings.
- required: true
- type: string
admin_password:
description: The password of the motionEye administrative account.
- required: true
- type: string
surveillance_username:
description: The username of the motionEye surveillance user, used to authenticate video streams.
- required: true
- type: string
surveillance_password:
description: The password of the motionEye surveillance account.
- required: true
- type: string
{% endconfiguration_basic %}
{% include integrations/option_flow.md %}
diff --git a/source/_integrations/mqtt.markdown b/source/_integrations/mqtt.markdown
index 38148009e8e..d4934d0088a 100644
--- a/source/_integrations/mqtt.markdown
+++ b/source/_integrations/mqtt.markdown
@@ -44,7 +44,6 @@ 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.
@@ -956,7 +955,7 @@ support_url:
{% enddetails %}
-### Discovery messages en availability
+### Discovery messages and availability
When MQTT discovery is set up, and a device or service sends a discovery message,
an MQTT entity, tag, or device automation will be set up directly after receiving the message.
@@ -1352,6 +1351,12 @@ The following software has built-in support for MQTT discovery:
- [Zehnder Comfoair RS232 MQTT](https://github.com/adorobis/hacomfoairmqtt)
- [Zigbee2MQTT](https://github.com/koenkk/zigbee2mqtt)
+The following software also supports consuming MQTT discovery information that is intended for Home Assistant.
+Compatibility and features will vary, and not all devices may work.
+
+- [Domoticz](https://wiki.domoticz.com/MQTT#Add_hardware_.22MQTT_Auto_Discovery_Client_Gateway.22)
+- [openHAB](https://www.openhab.org/addons/bindings/mqtt.homeassistant/)
+
## Manual configured MQTT items
For most integrations, it is also possible to manually set up MQTT items in {% term "`configuration.yaml`" %}. Read more [about configuration in YAML](/docs/configuration/yaml).
diff --git a/source/_integrations/mqtt_eventstream.markdown b/source/_integrations/mqtt_eventstream.markdown
index f950960043d..18bab0e7c13 100644
--- a/source/_integrations/mqtt_eventstream.markdown
+++ b/source/_integrations/mqtt_eventstream.markdown
@@ -10,6 +10,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `mqtt_eventstream` {% term integration %} connects two Home Assistant instances via MQTT.
diff --git a/source/_integrations/mqtt_json.markdown b/source/_integrations/mqtt_json.markdown
index facd9bc3f1e..8e211bae914 100644
--- a/source/_integrations/mqtt_json.markdown
+++ b/source/_integrations/mqtt_json.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `mqtt_json` device tracker {% term integration %} allows you to detect presence by monitoring an MQTT topic for new locations. To use this platform, you specify a unique topic for each device.
diff --git a/source/_integrations/mqtt_room.markdown b/source/_integrations/mqtt_room.markdown
index cc1192d776b..d5353c3d212 100644
--- a/source/_integrations/mqtt_room.markdown
+++ b/source/_integrations/mqtt_room.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `mqtt_room` sensor {% term integration %} allows you to detect the indoor location of devices using MQTT clients.
diff --git a/source/_integrations/mqtt_statestream.markdown b/source/_integrations/mqtt_statestream.markdown
index deb62c44dd3..cf4a6fb5d5f 100644
--- a/source/_integrations/mqtt_statestream.markdown
+++ b/source/_integrations/mqtt_statestream.markdown
@@ -10,6 +10,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `mqtt_statestream` {% term integration %} publishes state changes in Home Assistant to individual MQTT topics. [The MQTT integration](/integrations/mqtt/) is a prerequisite for MQTT Statestream to work.
diff --git a/source/_integrations/msteams.markdown b/source/_integrations/msteams.markdown
index 876e7d0e86d..32d78837099 100644
--- a/source/_integrations/msteams.markdown
+++ b/source/_integrations/msteams.markdown
@@ -11,6 +11,7 @@ ha_domain: msteams
ha_platforms:
- notify
ha_integration_type: integration
+ha_quality_scale: legacy
---
The `Microsoft Teams` platform allows you to send notifications from Home Assistant to a team channel in [Microsoft Teams](https://www.microsoft.com/microsoft-teams/group-chat-software).
diff --git a/source/_integrations/mvglive.markdown b/source/_integrations/mvglive.markdown
index 238518005fb..60673f209c3 100644
--- a/source/_integrations/mvglive.markdown
+++ b/source/_integrations/mvglive.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `mvglive` {% term integration %} will give you the departure time of the next bus, tram, subway, or train at the next station or stop in the Munich public transport network. Additional details such as the line number and destination are present in the attributes.
diff --git a/source/_integrations/mycroft.markdown b/source/_integrations/mycroft.markdown
index 14f819206cd..68f2b23a279 100644
--- a/source/_integrations/mycroft.markdown
+++ b/source/_integrations/mycroft.markdown
@@ -13,6 +13,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
[Mycroft](https://mycroft.ai) is an open source voice assistant that allows you to send notifications and more to Mycroft from Home Assistant.
diff --git a/source/_integrations/mythicbeastsdns.markdown b/source/_integrations/mythicbeastsdns.markdown
index 2e8a8c8991e..b518e4ccca1 100644
--- a/source/_integrations/mythicbeastsdns.markdown
+++ b/source/_integrations/mythicbeastsdns.markdown
@@ -10,6 +10,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
With the `mythicbeastsdns` {% term integration %} you can automatically update your dynamic DNS entry at [Mythic Beasts](https://www.mythic-beasts.com/).
diff --git a/source/_integrations/myuplink.markdown b/source/_integrations/myuplink.markdown
index 2a9264eb45c..3eee099cf57 100644
--- a/source/_integrations/myuplink.markdown
+++ b/source/_integrations/myuplink.markdown
@@ -24,20 +24,27 @@ ha_platforms:
- switch
- update
ha_integration_type: integration
+related:
+ - url: https://myuplink.com/
+ title: myUplink web portal
---
-The myUplink integration lets you get information about the devices supporting myUplink using the [official cloud API](https://dev.myuplink.com).
+The **myUplink** {% term integration %} lets you get information about and control heat-pump devices supporting myUplink using the [official cloud API](https://dev.myuplink.com).
-Depending on the type of devices in your system, one or more entities are added to Home Assistant. Currently, there is support for reading sensor states. There is also support for switch, select and number entities if suitable data points are discovered in the system. Note that you may need a valid subscription with MyUplink to control your equipment with switch, select, and number entities.
+The integration will connect to your account and download all available data from the API. The downloaded information will be used to create devices and entities in Home Assistant. There can be from a few entities up to many hundreds depending on the type of equipment. The integration will make the best effort to map the data-points in the API to sensors, switches, number, and select entities.
+
+{% note %}
+You may need a valid subscription with myUplink to control your equipment with switch, select, and number entities.
+{% endnote %}
## Prerequisites
1. Visit [https://myuplink.com/register](https://myuplink.com/register) and sign up for a user account.
2. Go to [**Applications**](https://dev.myuplink.com/apps), and register a new App:
-- **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`
+- **Application Name**: Home Assistant (or whatever name makes sense to you)
+- **Description**: A brief description of how you'll use this application (e.g., "Home Assistant integration for controlling my heat pump")
+- **Callback URL**: `https://my.home-assistant.io/redirect/oauth`
{% details "I have manually disabled My Home Assistant" %}
@@ -55,3 +62,59 @@ Internal examples: `http://192.168.0.2:8123/auth/external/callback`, `http://hom
{% include integrations/config_flow.md %}
The integration configuration will require the **Client ID** and **Client Secret** created above. See [Application Credentials](/integrations/application_credentials) for more details.
+
+## Supported heat-pump systems
+
+The integration supports all heat-pump devices that can be connected to the myUplink cloud service. See [Works with myUplink](https://myuplink.com/legal/works-with/en).
+However, the representation in Home Assistant depends on how and to what extent the manufacturer has implemented the service.
+
+## Use cases
+
+Common use cases include:
+
+- **System Monitoring**: Display the current operation state of the pump (heating house, pool, or hot water)
+- **Smart Notifications**: Get alerts when the water temperature is low in the heater tank
+- **Automation**: Adjust the temperature curve offset during holiday mode
+- **Analytics**: View long-term statistics and graphs for the relevant sensors
+
+## Example
+
+Automation that will send a notification to a smartphone when the hot water reserve is getting low. Note that actual entity name varies between models of heat pumps. You will have to adapt the yaml code to your own installation.
+
+```yaml
+automation:
+ alias: Notify on low hot water reserve
+ triggers:
+ - trigger: numeric_state
+ entity_id:
+ - sensor.your_pump_hot_water_charging_bt6
+ below: 42
+ actions:
+ - action: notify.mobile_app_your_device
+ metadata: {}
+ data:
+ message: Hot water reserve is getting low.
+ title: Water heater
+ mode: single
+```
+
+## Data updates
+
+The integration will poll the API for data every 60 seconds. This polling interval is designed to work within the rate limits of myUplink APIs while providing timely updates.
+
+## Known limitations
+
+- The integration makes the best effort to map data-points from the API to relevant entities in Home Assistant. However, some sensors may not appear for certain heat-pump models, or in other cases, numerous irrelevant entities might be created. Please create an issue on GitHub and include a diagnostic download file from your installation if you believe that the mapping can be improved.
+- Entity names are available in English and cannot be automatically translated by Home Assistant. The reason is that the names are defined by the API and can be changed by updates of the API or the firmware in the appliance. However, most entity names are self-explanatory, e.g., "Room temperature (BT50)".
+
+## Troubleshooting
+
+{% details "Can't log in to myUplink API" %}
+Make sure that you have entered the application credentials correctly. A common problem is that leading or trailing spaces are included in the entered credential strings. You may have to delete the application credentials from Home Assistant and install the integration again to get everything right.
+{% enddetails %}
+
+## Removing the integration
+
+After removing the integration, go to the myUplink [developer site](https://dev.myuplink.com/apps) and remove the credentials unless you will use them again.
+
+{% include integrations/remove_device_service.md %}
diff --git a/source/_integrations/nad.markdown b/source/_integrations/nad.markdown
index fc2de741441..4f9159d2134 100644
--- a/source/_integrations/nad.markdown
+++ b/source/_integrations/nad.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `nad` {% term integration %} allows you to control an [NAD receiver](https://nadelectronics.com/) through RS232, TCP and Telnet from Home Assistant.
diff --git a/source/_integrations/nam.markdown b/source/_integrations/nam.markdown
index fcce7ede591..31ac3af9705 100644
--- a/source/_integrations/nam.markdown
+++ b/source/_integrations/nam.markdown
@@ -13,7 +13,6 @@ ha_platforms:
- button
- diagnostics
- sensor
-ha_quality_scale: platinum
ha_zeroconf: true
ha_integration_type: device
---
diff --git a/source/_integrations/namecheapdns.markdown b/source/_integrations/namecheapdns.markdown
index 19a8f3cb10d..1aff59df1cd 100644
--- a/source/_integrations/namecheapdns.markdown
+++ b/source/_integrations/namecheapdns.markdown
@@ -10,6 +10,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
With the `namecheapdns` {% term integration %} you can automatically update your dynamic DNS entry hosted by Namecheap's [FreeDNS](https://www.namecheap.com/store/domains/freedns/) service.
diff --git a/source/_integrations/nasweb.markdown b/source/_integrations/nasweb.markdown
index 190f5de9a6d..3b3c9f01bed 100644
--- a/source/_integrations/nasweb.markdown
+++ b/source/_integrations/nasweb.markdown
@@ -3,7 +3,7 @@ title: NASweb
description: Integrate NASweb devices
ha_category:
- Switch
-ha_release: '2024.11'
+ha_release: '2024.12'
ha_codeowners:
- '@nasWebio'
ha_iot_class: Local Push
@@ -14,7 +14,6 @@ ha_platforms:
ha_integration_type: hub
---
-
The **NASweb** {% term integration %} brings the device's smart home features into **Home Assistant**, converting them into {% term entities %} that users can monitor, control, and incorporate into {% term scripts %} and {% term automations %}.
NASweb combines the functions of a control panel and the ability to manage building automation. The device monitors the flow of information from sensors and programmable switches and stores settings, definitions, and configured actions. [More information.](https://www.chomtech.pl/produkt/naswebio-multisystemowy-sterownik-automatyki-budynkowej/)
diff --git a/source/_integrations/neato.markdown b/source/_integrations/neato.markdown
index 67a425d239d..1a9790d5140 100644
--- a/source/_integrations/neato.markdown
+++ b/source/_integrations/neato.markdown
@@ -10,8 +10,6 @@ ha_category:
ha_iot_class: Cloud Polling
ha_release: 0.33
ha_config_flow: true
-ha_codeowners:
- - '@Santobert'
ha_domain: neato
ha_platforms:
- button
diff --git a/source/_integrations/nederlandse_spoorwegen.markdown b/source/_integrations/nederlandse_spoorwegen.markdown
index fa36062d9f0..398d8d98eb1 100644
--- a/source/_integrations/nederlandse_spoorwegen.markdown
+++ b/source/_integrations/nederlandse_spoorwegen.markdown
@@ -14,6 +14,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
This {% term integration %} will provide you with time table information of the [Nederlandse Spoorwegen](https://www.ns.nl/) train service in the Netherlands.
diff --git a/source/_integrations/ness_alarm.markdown b/source/_integrations/ness_alarm.markdown
index bfbcbbc44c5..aba79b59b17 100644
--- a/source/_integrations/ness_alarm.markdown
+++ b/source/_integrations/ness_alarm.markdown
@@ -16,6 +16,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `ness_alarm` {% term integration %} will allow Home Assistant users who own a Ness D8x/D16x alarm system to leverage their alarm system and its sensors to provide Home Assistant with information about their homes. Connectivity between Home Assistant and the alarm is accomplished through a IP232 module that must be connected to the alarm.
diff --git a/source/_integrations/nest.markdown b/source/_integrations/nest.markdown
index 9df10322418..43938fcad71 100644
--- a/source/_integrations/nest.markdown
+++ b/source/_integrations/nest.markdown
@@ -15,7 +15,6 @@ ha_config_flow: true
ha_codeowners:
- '@allenporter'
ha_domain: nest
-ha_quality_scale: platinum
ha_dhcp: true
ha_platforms:
- camera
diff --git a/source/_integrations/netdata.markdown b/source/_integrations/netdata.markdown
index 28b329a1ff0..8ee9abfd352 100644
--- a/source/_integrations/netdata.markdown
+++ b/source/_integrations/netdata.markdown
@@ -14,6 +14,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `netdata` sensor {% term integration %} allows you to display information collected by [Netdata](https://www.netdata.cloud/).
diff --git a/source/_integrations/netgear.markdown b/source/_integrations/netgear.markdown
index d494f47f273..0393458b150 100644
--- a/source/_integrations/netgear.markdown
+++ b/source/_integrations/netgear.markdown
@@ -29,12 +29,14 @@ Attached devices are only tracked on NETGEAR devices set to the router mode, oth
{% include integrations/config_flow.md %}
{% include integrations/option_flow.md %}
+
{% configuration_basic %}
Consider_home:
description: "The consider home time is the number of seconds to wait till marking someone as not home after not being seen. This parameter is most useful for households with Apple iOS devices that go into sleep mode while still at home to conserve battery life. iPhones will occasionally drop off the network and then re-appear. This option helps prevent false alarms in presence detection."
{% endconfiguration_basic %}
## Router entities
+
The NETGEAR router will have the following entities.
Note that not all routers support all features, if a router does not support a feature, the corresponding entity will have the unavailable status even when the entity is disabled.
diff --git a/source/_integrations/netio.markdown b/source/_integrations/netio.markdown
index ca5d58c164c..08ba156c85e 100644
--- a/source/_integrations/netio.markdown
+++ b/source/_integrations/netio.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `netio` switch {% term integration %} allows you to control your [Netio](https://www.netio-products.com/en/overview/) Netio4, Netio4 All, and Netio 230B. These are smart outlets controllable through Ethernet and/or Wi-Fi that reports consumptions (Netio4all). This integration requires Telnet to be enabled on the Netio device.
diff --git a/source/_integrations/neurio_energy.markdown b/source/_integrations/neurio_energy.markdown
index 311f95668d7..7ad192938df 100644
--- a/source/_integrations/neurio_energy.markdown
+++ b/source/_integrations/neurio_energy.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
Integrate your [Neurio](https://neur.io/) meter information into Home Assistant. To get an API key and secret, login to your [Neurio account](https://my.neur.io/#settings/applications/register) and register an application. Note the Homepage URL and Callback URL are optional.
diff --git a/source/_integrations/nextdns.markdown b/source/_integrations/nextdns.markdown
index 0f2e26d1e9a..cdecebee2db 100644
--- a/source/_integrations/nextdns.markdown
+++ b/source/_integrations/nextdns.markdown
@@ -16,7 +16,6 @@ ha_platforms:
- sensor
- switch
ha_integration_type: service
-ha_quality_scale: platinum
---
NextDNS is a DNS service that protects from all kinds of security threats, blocks ADS and trackers on websites and in apps, and provides a safe and supervised Internet for kids — on all devices and on all networks. The NextDNS integration allows you to monitor NextDNS statistics and control its configuration.
diff --git a/source/_integrations/nightscout.markdown b/source/_integrations/nightscout.markdown
index d67e5233e18..b9fd6fcc00e 100644
--- a/source/_integrations/nightscout.markdown
+++ b/source/_integrations/nightscout.markdown
@@ -9,7 +9,6 @@ ha_config_flow: true
ha_codeowners:
- '@marciogranzotto'
ha_domain: nightscout
-ha_quality_scale: platinum
ha_platforms:
- sensor
ha_integration_type: integration
diff --git a/source/_integrations/niko_home_control.markdown b/source/_integrations/niko_home_control.markdown
index f3b9cd7fbf6..b7672d48476 100644
--- a/source/_integrations/niko_home_control.markdown
+++ b/source/_integrations/niko_home_control.markdown
@@ -13,6 +13,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `niko_home_control` {% term integration %} allows you to integrate your [Niko Home Control](https://www.niko.eu/enus/products/niko-home-control) into Home Assistant.
diff --git a/source/_integrations/nilu.markdown b/source/_integrations/nilu.markdown
index c55ce4d4672..8ebc106b7ad 100644
--- a/source/_integrations/nilu.markdown
+++ b/source/_integrations/nilu.markdown
@@ -14,6 +14,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `nilu` air quality {% term integration %} shows measurements of current air quality from NILU (Norsk Institutt for luftforskning/Norwegian Institute for Air Research) sensor stations within Norway. Makes data from the open API at [luftkvalitet.info](https://www.luftkvalitet.info) and [nilu.no](https://nilu.no/) available in Home Assistant.
diff --git a/source/_integrations/nissan_leaf.markdown b/source/_integrations/nissan_leaf.markdown
index 9628acf1717..e238a077013 100644
--- a/source/_integrations/nissan_leaf.markdown
+++ b/source/_integrations/nissan_leaf.markdown
@@ -17,6 +17,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `nissan_leaf` {% term integration %} offers integration with the [NissanConnect EV](https://www.nissan.co.uk/dashboard.html) cloud service. NissanConnect EV was previously known as Nissan Carwings.
diff --git a/source/_integrations/nmap_tracker.markdown b/source/_integrations/nmap_tracker.markdown
index 249202270a9..82073194858 100644
--- a/source/_integrations/nmap_tracker.markdown
+++ b/source/_integrations/nmap_tracker.markdown
@@ -32,21 +32,12 @@ An example of how the Nmap scanner can be customized:
{% configuration_basic %}
Network addresses to scan:
description: Network range to scan using [CIDR notation](https://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing). In the example above it will scan addresses from `192.168.1.1` to `192.168.1.254`.
- required: true
- type: string
Minimum number of minutes between scans of active devices:
description: Frequency of the scans. The lower the number, the quicker it will detect devices connected and disconnected usually at the cost of the devices battery life. The example above will scan every minute.
- required: true
- type: integer
Network addresses to exclude from scanning:
description: A comma-separated list of IP addresses not to scan. The above example will skip `192.168.1.8`.
- required: false
- type: string
Raw configurable scan options for Nmap:
description: Nmap command line parameters which can be used to configure how Nmap scans the network. For more details see [Nmap reference guide](https://nmap.org/book/man.html).
- required: false
- type: string
- default: -F T4 --min-rate 10 --host-timeout 5s
{% endconfiguration_basic %}
See the [device tracker integration page](/integrations/device_tracker/) for instructions how to configure the people to be tracked.
diff --git a/source/_integrations/nmbs.markdown b/source/_integrations/nmbs.markdown
index 2e7f69a32e1..3ffa65e4feb 100644
--- a/source/_integrations/nmbs.markdown
+++ b/source/_integrations/nmbs.markdown
@@ -14,6 +14,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `nmbs` {% term integration %} will create sensors for monitoring travel time and information between 2 stations.
diff --git a/source/_integrations/no_ip.markdown b/source/_integrations/no_ip.markdown
index 7a04f498ebf..2de76820b8d 100644
--- a/source/_integrations/no_ip.markdown
+++ b/source/_integrations/no_ip.markdown
@@ -10,6 +10,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
With the `no_ip` {% term integration %} you can keep your current IP address in sync with your [NO-IP.com](https://www.noip.com) hostname or domain.
diff --git a/source/_integrations/noaa_tides.markdown b/source/_integrations/noaa_tides.markdown
index 2df28c52e01..713f3eda5de 100644
--- a/source/_integrations/noaa_tides.markdown
+++ b/source/_integrations/noaa_tides.markdown
@@ -11,6 +11,7 @@ ha_codeowners:
ha_platforms:
- sensor
ha_integration_type: integration
+ha_quality_scale: legacy
---
The `noaa_tides` sensor {% term integration %} uses details from [NOAA Tides and Currents](https://tidesandcurrents.noaa.gov/api/) to provide information about the prediction for the tides for any location in the United States.
diff --git a/source/_integrations/nordpool.markdown b/source/_integrations/nordpool.markdown
index aed449a442c..b0e4013f321 100644
--- a/source/_integrations/nordpool.markdown
+++ b/source/_integrations/nordpool.markdown
@@ -43,7 +43,15 @@ All prices are displayed as `[Currency]/kWh`.
Data is polled from the **Nord Pool** API on an hourly basis, exactly on the hour, to ensure the price sensors are displaying the correct price.
-If polling cannot happen because of no connectivity or a malfunctioning API, there will be three retries before finally giving up.
+If polling cannot happen because of no connectivity or a malfunctioning API, there is no retry; the next periodic update will try again.
+
+## Troubleshooting
+
+This service is reliant on an internet connection and that the **Nord Pool** API is available. Here are the things you can try before raising an issue:
+
+- Check that internet is available from your Home Assistant instance.
+- Check that the **Nord Pool** API is available by clicking [here](https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices). You should get a JSON back with the title `Unauthorized`.
+- Use `curl` in a terminal on your Home Assistant instance using the same URL as previously opened in the browser. `curl https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices`
## Sensors
diff --git a/source/_integrations/norway_air.markdown b/source/_integrations/norway_air.markdown
index 7c1ed2c040b..30c5e282bd9 100644
--- a/source/_integrations/norway_air.markdown
+++ b/source/_integrations/norway_air.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `norway_air` {% term integration %} [queries](https://luftkvalitet.miljostatus.no/) the Norway air quality [data feed](https://api.met.no/weatherapi/airqualityforecast/0.1/documentation) provided by the Norwegian Meteorological Institute.
diff --git a/source/_integrations/notify_events.markdown b/source/_integrations/notify_events.markdown
index 478f017528b..77d8d9dc123 100644
--- a/source/_integrations/notify_events.markdown
+++ b/source/_integrations/notify_events.markdown
@@ -15,6 +15,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
## Description
diff --git a/source/_integrations/nsw_fuel_station.markdown b/source/_integrations/nsw_fuel_station.markdown
index 6071c5ff867..e1f1adb173d 100644
--- a/source/_integrations/nsw_fuel_station.markdown
+++ b/source/_integrations/nsw_fuel_station.markdown
@@ -11,6 +11,7 @@ ha_domain: nsw_fuel_station
ha_platforms:
- sensor
ha_integration_type: integration
+ha_quality_scale: legacy
---
The `nsw_fuel_station` sensor platform uses the [NSW Fuel Check App](https://www.fuelcheck.nsw.gov.au/app) data as a source for current fuel price data.
diff --git a/source/_integrations/nsw_rural_fire_service_feed.markdown b/source/_integrations/nsw_rural_fire_service_feed.markdown
index fd77fae7699..c15d49fdcf9 100644
--- a/source/_integrations/nsw_rural_fire_service_feed.markdown
+++ b/source/_integrations/nsw_rural_fire_service_feed.markdown
@@ -14,6 +14,7 @@ ha_integration_type: service
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `nsw_rural_fire_service_feed` platform lets you integrate a GeoJSON feed provided by the [NSW Rural Fire Service](https://www.rfs.nsw.gov.au/fire-information/fires-near-me) with information about bush fires, grass fires, hazard reductions and more. It retrieves incidents from a feed and shows information of those incidents filtered by distance to Home Assistant's location.
diff --git a/source/_integrations/nuki.markdown b/source/_integrations/nuki.markdown
index 6fe076ddda8..9c3169df3a7 100644
--- a/source/_integrations/nuki.markdown
+++ b/source/_integrations/nuki.markdown
@@ -29,14 +29,14 @@ For faster updates, the callback function of the Nuki bridge can be used. This r
{% include integrations/config_flow.md %}
{% configuration_basic %}
- Host:
- description: Hostname or IP address of your Nuki bridge, e.g., `192.168.1.25`.
- Port:
- description: Port of the Nuki bridge HTTP API, default is `8080`.
- Token:
- description: Token to authenticate against the Nuki bridge HTTP API.
- Use an encrypted token for authentication:
- description: Use an encrypted token for API calls to the bridge. This should only be deactivated if you experience issues with the API (authentication, etc). The default is `True`.
+Host:
+ description: Hostname or IP address of your Nuki bridge, e.g., `192.168.1.25`.
+Port:
+ description: Port of the Nuki bridge HTTP API, default is `8080`.
+Token:
+ description: Token to authenticate against the Nuki bridge HTTP API.
+Use an encrypted token for authentication:
+ description: Use an encrypted token for API calls to the bridge. This should only be deactivated if you experience issues with the API (authentication, etc). The default is `True`.
{% endconfiguration_basic %}
## Actions
diff --git a/source/_integrations/numato.markdown b/source/_integrations/numato.markdown
index 768eb939b4c..577881831f5 100644
--- a/source/_integrations/numato.markdown
+++ b/source/_integrations/numato.markdown
@@ -16,6 +16,7 @@ ha_platforms:
- sensor
- switch
ha_integration_type: hub
+ha_quality_scale: legacy
---
The `numato` integration is the base for all related GPIO platforms of the
diff --git a/source/_integrations/nws.markdown b/source/_integrations/nws.markdown
index e2a23b861f7..4b69415896b 100644
--- a/source/_integrations/nws.markdown
+++ b/source/_integrations/nws.markdown
@@ -9,7 +9,6 @@ ha_codeowners:
- '@MatthewFlamm'
- '@kamiyo'
ha_domain: nws
-ha_quality_scale: platinum
ha_config_flow: true
ha_platforms:
- diagnostics
diff --git a/source/_integrations/nx584.markdown b/source/_integrations/nx584.markdown
index 5727b406635..a15b82be381 100644
--- a/source/_integrations/nx584.markdown
+++ b/source/_integrations/nx584.markdown
@@ -14,6 +14,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `nx584` {% term integration %} provides integration with GE, Caddx, Interlogix (and other brands) alarm panels that support the NX584 interface module (or have it built in). Supported panels include NX4/6/8/8E. Actual integration is done through [pynx584](https://github.com/kk7ds/pynx584) which is required for this to work.
diff --git a/source/_integrations/oasa_telematics.markdown b/source/_integrations/oasa_telematics.markdown
index ed14ed07b56..f95f827da1f 100644
--- a/source/_integrations/oasa_telematics.markdown
+++ b/source/_integrations/oasa_telematics.markdown
@@ -13,6 +13,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `oasa_telematics` {% term integration %} will provide you with bus and trolley arrival times for Greek public transport for Athens, using real-time data from [OASA Telematics](http://telematics.oasa.gr/en/).
diff --git a/source/_integrations/octoprint.markdown b/source/_integrations/octoprint.markdown
index abbe2801372..03893304c7c 100644
--- a/source/_integrations/octoprint.markdown
+++ b/source/_integrations/octoprint.markdown
@@ -29,35 +29,20 @@ ha_integration_type: integration
{% configuration_basic %}
username:
description: Username for the server.
- required: true
- type: string
host:
- description: Address of the server, e.g., 192.168.1.32.
- required: true
- type: string
+ description: Address of the server, e.g., `192.168.1.32`.
port:
description: Port of the server.
- required: false
- type: string
- default: 80
path:
description: URL path of the server
- required: false
- type: string
- default: /
ssl:
description: Whether to use SSL or not when communicating.
- required: false
- type: boolean
- default: false
verify ssl:
description: Should the SSL certificate be validated.
- required: false
- type: boolean
- default: false
{% endconfiguration_basic %}
### API key
+
For the integration to work, please check that in Octoprint, the [Discovery Plugin](https://docs.octoprint.org/en/master/bundledplugins/discovery.html) is enabled and in the **Settings** -> **Printer Notifications** menu that **Enable popups** is checked.
The Octoprint integration will attempt to register itself via the [Application Keys Plugin](https://docs.octoprint.org/en/master/bundledplugins/appkeys.html). After submitting the configuration UI in Home Assistant, log in to Octoprint as the user whose credentials you just entered in Home Assistant, and select **Allow** on the prompt.
diff --git a/source/_integrations/oem.markdown b/source/_integrations/oem.markdown
index 7fdb80b31b2..ba56027cdf2 100644
--- a/source/_integrations/oem.markdown
+++ b/source/_integrations/oem.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
This {% term integration %} supports the ESP8266 based "WiFi MQTT Relay / Thermostat" sold by [OpenEnergyMonitor](https://web.archive.org/web/20220426080315/https://shop.openenergymonitor.com/wifi-mqtt-relay-thermostat/) (archived page, no longer for sale). The underlying [library](https://oemthermostat.readthedocs.io/) only supports this single relay variant of the [original device](https://harizanov.com/2014/12/wifi-iot-3-channel-relay-board-with-mqtt-and-http-api-using-esp8266/).
diff --git a/source/_integrations/ohmconnect.markdown b/source/_integrations/ohmconnect.markdown
index 7c19ee1a973..4dd7ed339f0 100644
--- a/source/_integrations/ohmconnect.markdown
+++ b/source/_integrations/ohmconnect.markdown
@@ -14,6 +14,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `ohmconnect` {% term integration %} will show you the current [OhmConnect](https://www.ohmconnect.com/) status for the given OhmConnect ID.
diff --git a/source/_integrations/ollama.markdown b/source/_integrations/ollama.markdown
index ca226ba54fe..d2ad23caf3b 100644
--- a/source/_integrations/ollama.markdown
+++ b/source/_integrations/ollama.markdown
@@ -32,27 +32,22 @@ This integration requires an external Ollama server, which is available for macO
{% include integrations/config_flow.md %}
{% include integrations/option_flow.md %}
+
{% configuration_basic %}
URL:
description: The URL of the external Ollama server, such as `http://localhost:11434`.
-
Model:
description: Name of the [Ollama model](https://ollama.com/library) to use, such as `mistral` or `llama2:13b`. Models will be automatically downloaded during setup.
-
Instructions:
description: Instructions for the AI on how it should respond to your requests. It is written using [Home Assistant Templating](/docs/configuration/templating/).
-
Control Home Assistant:
description: If the model is allowed to interact with Home Assistant. It can only control or provide information about entities that are [exposed](/voice_control/voice_remote_expose_devices/) to it. This feature is considered experimental and see [Controlling Home Assistant](#controlling-home-assistant) below for details on model limitations.
-
Context window size:
description: "The context window size is the number of tokens the model can take as input. Home Assistant defaults to 8k, which is larger than the default value in Ollama Server (2k), and you may adjust it based on the maximum context size of the specific model used. A larger value will better support larger homes with more entities, and smaller values may lower Ollama server RAM usage."
Max history messages:
description: Maximum number of messages to keep for each conversation (0 = no limit). Limiting this value will cause older messages in a conversation to be dropped.
-
Keep alive:
description: Duration in seconds for the Ollama host to keep the model in memory after receiving a message (-1 = no limit, 0 = no retention). Default value is -1.
-
{% endconfiguration_basic %}
## Controlling Home Assistant
diff --git a/source/_integrations/ombi.markdown b/source/_integrations/ombi.markdown
index 30f3c0dea9a..df3819b9594 100644
--- a/source/_integrations/ombi.markdown
+++ b/source/_integrations/ombi.markdown
@@ -14,6 +14,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The Ombi integration monitors data from your [Ombi](https://ombi.io) instance.
diff --git a/source/_integrations/onewire.markdown b/source/_integrations/onewire.markdown
index 59a94e19b87..fa7b5a3ee13 100644
--- a/source/_integrations/onewire.markdown
+++ b/source/_integrations/onewire.markdown
@@ -10,7 +10,6 @@ ha_codeowners:
- '@garbled1'
- '@epenet'
ha_domain: onewire
-ha_quality_scale: gold
ha_platforms:
- binary_sensor
- diagnostics
@@ -134,8 +133,8 @@ UPDATE states SET entity_id='sensor._humidity' WHERE entity_id LIKE
Remember to replace `` with the actual name of the sensor, as seen in the `SELECT` query.
-## Remove integration
+## Removing the integration
-This integration follows standard integration removal, no extra steps are required.
+This integration follows standard integration removal. No extra steps are required.
{% include integrations/remove_device_service.md %}
diff --git a/source/_integrations/onkyo.markdown b/source/_integrations/onkyo.markdown
index 7356985af33..3d9cffd7e09 100644
--- a/source/_integrations/onkyo.markdown
+++ b/source/_integrations/onkyo.markdown
@@ -12,9 +12,6 @@ ha_iot_class: Local Push
ha_platforms:
- media_player
ha_release: 0.17
-related:
- - docs: /docs/configuration/
- title: Configuration file
---
The `onkyo` {% term integration %} allows you to control [Onkyo](https://www.onkyo.com) and [Integra](http://www.integrahometheater.com) (from 2011 onward) and also [Pioneer](https://www.pioneerelectronics.com) (from 2016 onward) receivers using Home Assistant.
@@ -25,13 +22,10 @@ Please be aware that you need to enable "Network Standby" for this integration t
{% configuration_basic %}
Host:
description: Hostname or IP address of the device, for example:`192.168.1.2`.
- type: string
Volume Resolution:
description: Number of steps it takes for the receiver to go from the lowest to the highest possible volume. Possible values are 50, 80, 100, 200. For older Onkyo receivers, this typically is 80; newer Onkyo receivers use 200.
- type: integer
Input sources:
description: List of input sources supported by the receiver.
- type: list
{% endconfiguration_basic %}
The above settings can also be adjusted later. To do this, click the three-dot menu on the integration entry and select **Reconfigure**.
@@ -41,17 +35,16 @@ The above settings can also be adjusted later. To do this, click the three-dot m
{% configuration_basic %}
Max Volume:
description: Maximum volume limit as a percentage. Often the maximum volume of the receiver is far too loud. Setting this will set Home Assistant's 100% volume to be this setting on the amp, i.e., if you set this to 50%, when you set Home Assistant to be 100%, then your receiver will be set to 50% of its maximum volume.
- default: 100
- type: integer
Input sources:
description: Mappings of input sources to their names.
- type: list
{% endconfiguration_basic %}
-### Zones
+## Zones
If your receiver has a second or third zone available, they are displayed as additional media players with functionality similar to the main zone.
+## Actions
+
### Action `onkyo_select_hdmi_output`
Changes HDMI output of your receiver
@@ -103,3 +96,7 @@ script:
media_content_type: "radio"
media_content_id: "1"
```
+
+## Supported devices
+
+Network receivers from Onkyo and Integra are supported starting with models from the year 2011. Pioneer network receivers are supported starting with models from 2016.
diff --git a/source/_integrations/openai_conversation.markdown b/source/_integrations/openai_conversation.markdown
index 870f232c947..977e8458891 100644
--- a/source/_integrations/openai_conversation.markdown
+++ b/source/_integrations/openai_conversation.markdown
@@ -43,34 +43,27 @@ The OpenAI key is used to authenticate requests to the OpenAI API. To generate a
- Visit the [API Keys page](https://platform.openai.com/account/api-keys) to retrieve the API key you'll use to configure the integration.
{% include integrations/option_flow.md %}
+
{% configuration_basic %}
Instructions:
description: Instructions for the AI on how it should respond to your requests. It is written using [Home Assistant Templating](/docs/configuration/templating/).
-
Control Home Assistant:
description: If the model is allowed to interact with Home Assistant. It can only control or provide information about entities that are [exposed](/voice_control/voice_remote_expose_devices/) to it.
-
Recommended settings:
description: If enabled, the recommended model and settings are chosen.
-
{% endconfiguration_basic %}
If you choose to not use the recommended settings, you can configure the following options:
{% configuration_basic %}
-
Model:
description: The GPT language model is used for text generation. You can find more details on the available models in the [OpenAI GPT-3.5 Turbo Documentation](https://platform.openai.com/docs/models/gpt-3-5-turbo), [OpenAI GPT-4 Turbo and GPT-4 Documentation](https://platform.openai.com/docs/models/gpt-4-turbo-and-gpt-4), or [GPT-4o Documentation](https://platform.openai.com/docs/models/gpt-4o). The default is "gpt-4o".
-
Maximum Tokens to Return in Response:
description: The maximum number of words or "tokens" that the AI model should generate in its completion of the prompt. For more information, see the [OpenAI Completion Documentation](https://platform.openai.com/docs/guides/completion/introduction).
-
Temperature:
description: A value that determines the level of creativity and risk-taking the model should use when generating text. A higher temperature means the model is more likely to generate unexpected results, while a lower temperature results in more deterministic results. See the [OpenAI Completion Documentation](https://platform.openai.com/docs/guides/completion/introduction) for more information.
-
Top P:
description: An alternative to temperature, top_p determines the proportion of the most likely word choices the model should consider when generating text. A higher top_p means the model will only consider the most likely words, while a lower top_p means a wider range of words, including less likely ones, will be considered. For more information, see the [OpenAI Completion API Reference](https://platform.openai.com/docs/api-reference/completions/create#completions/create-top_p).
-
{% endconfiguration_basic %}
## Talking to Super Mario over the phone
diff --git a/source/_integrations/openalpr_cloud.markdown b/source/_integrations/openalpr_cloud.markdown
index c0ea55d94e0..95d9c47e746 100644
--- a/source/_integrations/openalpr_cloud.markdown
+++ b/source/_integrations/openalpr_cloud.markdown
@@ -10,6 +10,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The [OpenALPR](https://www.openalpr.com/) {% term integration %} for Home Assistant allows you
diff --git a/source/_integrations/openerz.markdown b/source/_integrations/openerz.markdown
index b573774b85d..369931302f2 100644
--- a/source/_integrations/openerz.markdown
+++ b/source/_integrations/openerz.markdown
@@ -14,6 +14,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
This `openerz` sensor {% term integration %} uses [OpenERZ](http://openerz.metaodi.ch/) API to access data from Entsorgung und Recycling Zürich (ERZ). It reports the next pickup date for the specified zip and waste type.
diff --git a/source/_integrations/openevse.markdown b/source/_integrations/openevse.markdown
index 20283d33203..bf824fb2c4d 100644
--- a/source/_integrations/openevse.markdown
+++ b/source/_integrations/openevse.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
This `openevse` sensor {% term integration %} pulls data from an [OpenEVSE](https://www.openevse.com/) Charging station equipped with an ESP8266-based Wi-Fi connection.
diff --git a/source/_integrations/openhardwaremonitor.markdown b/source/_integrations/openhardwaremonitor.markdown
index a47fd7e4cdb..7be2b96a9c0 100644
--- a/source/_integrations/openhardwaremonitor.markdown
+++ b/source/_integrations/openhardwaremonitor.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `openhardwaremonitor` {% term integration %} uses your [Open Hardware Monitor](https://openhardwaremonitor.org/) installation as a source for sensors that will display system information.
diff --git a/source/_integrations/opensensemap.markdown b/source/_integrations/opensensemap.markdown
index 21d1d5dddfa..1ec8f24e38f 100644
--- a/source/_integrations/opensensemap.markdown
+++ b/source/_integrations/opensensemap.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `opensensemap` air quality {% term integration %} will query the open data API of [openSenseMap.org](https://opensensemap.org/) to monitor air quality sensor station.
diff --git a/source/_integrations/opentherm_gw.markdown b/source/_integrations/opentherm_gw.markdown
index f4c2949651e..edfa553cf45 100644
--- a/source/_integrations/opentherm_gw.markdown
+++ b/source/_integrations/opentherm_gw.markdown
@@ -40,7 +40,7 @@ The following configuration options are available:
name:
description: "The friendly name used for the OpenTherm Gateway and its entities. This is used to generate the display name of the created device and all related entities. Examples: `Thermostat`, `Living Room`"
path or url:
- description: "Path to the OpenTherm Gateway device as supported by [PySerial](https://pythonhosted.org/pyserial/url_handlers.html). This is usually either a path to a serial device in `/dev/` if the gateway is connected via serial or USB, or a URL in the form of `socket://[IP address]:[port]` if it is connected over the network. Examples: `/dev/ttyUSB0`, `socket://192.168.0.250:7686`"
+ description: "Path to the OpenTherm Gateway device as supported by [PySerial](https://pythonhosted.org/pyserial/url_handlers.html). This is usually either a path to a serial device in `/dev/` if the gateway is connected via serial or USB, or a URL in the form of `socket://[IP address]:[port]` if it is connected over the network. Examples: `/dev/ttyUSB0`, `socket://192.168.0.250:25238`"
id:
description: "The `gateway_id` for this OpenTherm Gateway. This is used to identify this specific gateway in action and to generate the entity IDs for the entities related to this gateway. The entered value will be slugified, i.e. all spaces and special characters will be converted to underscores and any accents will be removed from their characters. The default value is the slugified version of the `name` given above. Examples: `thermostat`, `living_room`"
{% endconfiguration_basic %}
diff --git a/source/_integrations/opnsense.markdown b/source/_integrations/opnsense.markdown
index 381548a3e38..2160ed84605 100644
--- a/source/_integrations/opnsense.markdown
+++ b/source/_integrations/opnsense.markdown
@@ -12,6 +12,7 @@ ha_iot_class: Local Polling
ha_platforms:
- device_tracker
ha_integration_type: integration
+ha_quality_scale: legacy
---
[OPNsense](https://opnsense.org/) is an open source FreeBSD based firewall
diff --git a/source/_integrations/opple.markdown b/source/_integrations/opple.markdown
index 66c82a47b84..ad28bd70cc6 100644
--- a/source/_integrations/opple.markdown
+++ b/source/_integrations/opple.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `opple` light {% term integration %} allows you to control the state of your Opple smart light.
diff --git a/source/_integrations/oru.markdown b/source/_integrations/oru.markdown
index ed60f03fa58..43750e04d50 100644
--- a/source/_integrations/oru.markdown
+++ b/source/_integrations/oru.markdown
@@ -14,6 +14,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
[Orange and Rockland Utility](https://oru.com) is an energy provider in NY and NJ, USA.
diff --git a/source/_integrations/orvibo.markdown b/source/_integrations/orvibo.markdown
index 4b8c1f691fc..f4ab0b4f18d 100644
--- a/source/_integrations/orvibo.markdown
+++ b/source/_integrations/orvibo.markdown
@@ -9,6 +9,7 @@ ha_domain: orvibo
ha_platforms:
- switch
ha_integration_type: integration
+ha_quality_scale: legacy
---
{% caution %}
diff --git a/source/_integrations/osramlightify.markdown b/source/_integrations/osramlightify.markdown
index cc07e1ad148..6bd8357cf02 100644
--- a/source/_integrations/osramlightify.markdown
+++ b/source/_integrations/osramlightify.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `osramlightify` {% term integration %} allows you to integrate your [Osram Lightify](https://www.osram.com/cb/lightify/index.jsp) into Home Assistant.
diff --git a/source/_integrations/p1_monitor.markdown b/source/_integrations/p1_monitor.markdown
index 0a919f355e4..4d97db613b5 100644
--- a/source/_integrations/p1_monitor.markdown
+++ b/source/_integrations/p1_monitor.markdown
@@ -12,7 +12,6 @@ ha_domain: p1_monitor
ha_platforms:
- diagnostics
- sensor
-ha_quality_scale: platinum
ha_integration_type: integration
---
@@ -80,8 +79,8 @@ You can use the rates set in P1 Monitor for your calculations in Home Assistant.
- Energy Consumption Price Low/High
- Energy Production Price Low/High
-## Remove integration
+## Removing the integration
-This integration follows standard integration removal, no extra steps are required.
+This integration follows standard integration removal. No extra steps are required.
{% include integrations/remove_device_service.md %}
diff --git a/source/_integrations/palazzetti.markdown b/source/_integrations/palazzetti.markdown
index c9851ee13fb..a91900395cf 100644
--- a/source/_integrations/palazzetti.markdown
+++ b/source/_integrations/palazzetti.markdown
@@ -11,6 +11,8 @@ ha_codeowners:
ha_domain: palazzetti
ha_platforms:
- climate
+ - diagnostics
+ - sensor
ha_integration_type: device
ha_dhcp: true
---
diff --git a/source/_integrations/panasonic_bluray.markdown b/source/_integrations/panasonic_bluray.markdown
index e6e870c8223..2624d33705d 100644
--- a/source/_integrations/panasonic_bluray.markdown
+++ b/source/_integrations/panasonic_bluray.markdown
@@ -9,6 +9,7 @@ ha_domain: panasonic_bluray
ha_platforms:
- media_player
ha_integration_type: integration
+ha_quality_scale: legacy
---
The `panasonic_bluray` platform allows you to control a Panasonic Blu-Ray player. Note that the device must be on the same subnet as Home Assistant; connections from a different subnet will return an error.
diff --git a/source/_integrations/pandora.markdown b/source/_integrations/pandora.markdown
index 6c20dae36be..02165cd8637 100644
--- a/source/_integrations/pandora.markdown
+++ b/source/_integrations/pandora.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
If you have a Pandora account, you can control it from Home Assistant with this media player.
diff --git a/source/_integrations/panel_custom.markdown b/source/_integrations/panel_custom.markdown
index 94dc7967bfe..1fd51a47480 100644
--- a/source/_integrations/panel_custom.markdown
+++ b/source/_integrations/panel_custom.markdown
@@ -8,7 +8,7 @@ ha_quality_scale: internal
ha_codeowners:
- '@home-assistant/frontend'
ha_domain: panel_custom
-ha_integration_type: integration
+ha_integration_type: system
related:
- docs: /docs/configuration/
title: Configuration file
diff --git a/source/_integrations/pegel_online.markdown b/source/_integrations/pegel_online.markdown
index 112c4cf0791..9eba1c356d8 100644
--- a/source/_integrations/pegel_online.markdown
+++ b/source/_integrations/pegel_online.markdown
@@ -30,18 +30,18 @@ Select the area, where you want to search for available water measuring stations
{% configuration_basic %}
Latitude:
- description: "The latitude of the center of the search area (_automatically filled by the location picker_)."
+ description: "The latitude of the center of the search area (_automatically filled by the location picker_)."
Longitude:
- description: "The longitude of the center of the search area (_automatically filled by the location picker_)."
+ description: "The longitude of the center of the search area (_automatically filled by the location picker_)."
Radius:
- description: "Search radius (_in km_)"
+ description: "Search radius (_in km_)"
{% endconfiguration_basic %}
### Step 2 - Station selection
{% configuration_basic %}
Station:
- description: "Select the measurement station you want to add."
+ description: "Select the measurement station you want to add."
{% endconfiguration_basic %}
## Sensors
diff --git a/source/_integrations/pencom.markdown b/source/_integrations/pencom.markdown
index ba1b0c3fcb5..d73cd9659ce 100644
--- a/source/_integrations/pencom.markdown
+++ b/source/_integrations/pencom.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
[Pencom Design](https://www.pencomdesign.com/) is a manufacturer of computer-controlled relay, I/O and custom boards for commercial and industrial applications. This interface to [Pencom's Relay Control Boards](https://www.pencomdesign.com/relay-boards) is designed to work over an ethernet to serial adapter (NPort). Each switch (relay) can be turned on/off, and the state of the relay can be read.
diff --git a/source/_integrations/picotts.markdown b/source/_integrations/picotts.markdown
index 998fc48e769..5e628ea3d2c 100644
--- a/source/_integrations/picotts.markdown
+++ b/source/_integrations/picotts.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `picotts` text-to-speech {% term integration %} uses [Pico TTS library](https://github.com/naggety/picotts) to read out text with natural sounding voices.
diff --git a/source/_integrations/pilight.markdown b/source/_integrations/pilight.markdown
index 69937333391..3be951ddab0 100644
--- a/source/_integrations/pilight.markdown
+++ b/source/_integrations/pilight.markdown
@@ -18,6 +18,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
[Pilight](https://www.pilight.org/) is a modular and open source solution to communicate with 433 MHz devices and runs on various small form factor computers. A lot of common [protocols](https://manual.pilight.org/protocols/) are already available.
diff --git a/source/_integrations/pioneer.markdown b/source/_integrations/pioneer.markdown
index 44f9ce2398a..441f7d81059 100644
--- a/source/_integrations/pioneer.markdown
+++ b/source/_integrations/pioneer.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `pioneer` {% term integration %} allows you to control Pioneer Network Receivers. Please note, however, that the more recent Pioneer models work with [Onkyo](/integrations/onkyo) platform instead.
diff --git a/source/_integrations/piper.markdown b/source/_integrations/piper.markdown
index c5b5997631f..42d413a1ca4 100644
--- a/source/_integrations/piper.markdown
+++ b/source/_integrations/piper.markdown
@@ -14,6 +14,7 @@ ha_codeowners:
ha_config_flow: true
ha_platforms:
- binary_sensor
+ - conversation
- number
- select
- stt
diff --git a/source/_integrations/pjlink.markdown b/source/_integrations/pjlink.markdown
index 7f99441de15..3bddc1c0185 100644
--- a/source/_integrations/pjlink.markdown
+++ b/source/_integrations/pjlink.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `pjlink` {% term integration %} allows you to control from Home Assistant, projectors with support for the [PJLink protocol](https://pjlink.jbmia.or.jp/english/index.html).
diff --git a/source/_integrations/plant.markdown b/source/_integrations/plant.markdown
index 253db87e2e4..42d45da4212 100644
--- a/source/_integrations/plant.markdown
+++ b/source/_integrations/plant.markdown
@@ -122,7 +122,7 @@ If the sensor data is within the min/max values the status will be `ok`, if not
The main sources of the data will usually be a [MiFlora sensor](/integrations/miflora) or a [MQTT sensor](/integrations/sensor.mqtt/) receiving the data from a [PlantGateway](https://github.com/ChristianKuehnel/plantgateway).
-If you want to get the date via a PlantGateway, this is a typical configuration for the MQTT sensors:
+If you want to get the data via a PlantGateway, this is a typical configuration for the MQTT sensors:
{% raw %}
diff --git a/source/_integrations/plugwise.markdown b/source/_integrations/plugwise.markdown
index 67cf83cabca..b72b652da89 100644
--- a/source/_integrations/plugwise.markdown
+++ b/source/_integrations/plugwise.markdown
@@ -44,11 +44,26 @@ Platforms available - depending on your Smile and setup include:
- `switch` (for Plugs connected to Adam, or Circles and Stealths connected to a Stretch)
-The password can be found on the bottom of your Smile or Stretch, the ID, it should consist of 8 characters. To find your IP address use the Plugwise App:
+## Pre-requisites
- - Open the Plugwise App and choose the 'Settings'-icon (☰) and choose 'HTML-interface'.
- - Go to the (lower) 'Settings'-icon (☰) and choose 'Preferences'.
- - Choose 'System' then 'Networking' and your IP address will be shown.
+The Plugwise Smile(s) in your network will be automatically discovered and shown on the integrations dashboard. All you need is the Smile ID as its password, which is an 8-character string printed on the sticker on the bottom of your Smile. Repeat this for each individual Smile.
+
+{% include integrations/config_flow.md %}
+
+{% configuration_basic %}
+Host:
+ description: "The hostname or IP address of your Smile. For example: `192.168.1.25`. You can find it in your router or in the Plugwise app using the **Settings** icon (☰) -> **System** -> **Network**. If you are looking for a different device in the Plugwise App, on the main screen first select **Gateways** -> the Smile of your choice, and then follow the previous instruction. Normally, the Smile(s) are automatically discovered, and you don't have to provide the hostname or IP address."
+Username:
+ description: "Username to log in to the Smile. This should be just `smile` - or `stretch` for a Stretch."
+Password:
+ description: "This is the password (i.e. Smile ID) printed on the sticker on the back of your Smile (i.e. Adam, Smile-T, or P1) and should be 8 characters long."
+{% endconfiguration_basic %}
+
+### Further configuration
+
+For a thermostat, the active schedule can be deactivated or reactivated via the climate card. Please note, that when no schedule is active, one must first be activated in the Plugwise App. Once that has been done, the Plugwise Integration can manage future operations.
+
+Auto means the schedule is active, and Heat means it's not active. The active thermostat schedule can be changed via the connected thermostat select entity. Please note that only schedules with two or more schedule points will be shown as select options.
## Entities
@@ -58,17 +73,21 @@ For example, if you have an Adam setup with a Lisa named 'Living' and a Tom name
Under each device there will be entities shown like binary_sensors, sensors, etc. depending on the capabilities of the device: for instance centralized measurements such as 'power' for a P1, 'outdoor_temperature' on Anna or Adam will be assigned to your gateway device. Heating/cooling device measurements such as 'boiler_temperature' will be assigned to the OpenTherm/OnOff device.
-## Configuration
+## Data updates
-The Plugwise Smile(s) present in your network will be automatically detected via Zeroconf discovery and will be shown on the Integrations-page. To set up an integration, click the "CONFIGURATION" button on the discovered integration and you will be presented with a dialog requesting your Smile password. After you click submit, you will have the opportunity to select the area(s) where individual Smile appliances are located. The username `smile` is shown as a default, when configuring your Stretch change this to `stretch` accordingly.
+The interval which the integration fetches data from the Smile depends on the device:
-Repeat the above procedure for each Smile gateway (i.e., if you have an Adam setup and a P1 DSMR you'll have to add two integrations).
+- Power entities, such as the P1, will be refreshed every 10 seconds.
+- Climate entities will be refreshed every 60 seconds.
+- Stretch entities will be refreshed every 60 seconds.
-Please note: when you have an Anna and an Adam, make sure to only configure the Adam integration. You can press the "IGNORE" button on the Anna integration to remove this integration. In case you need to rediscover the Anna integration, make sure to click the "STOP IGNORING" button on the Plugwise integration first, available via "show ignored integrations".
+## Removing the integration
-For a thermostat, the active schedule can be deactivated or reactivated via the climate card. Please note, that when no schedule is active, one must first be activated in the Plugwise App. Once that has been done the Plugwise Integration can manage future operations.
+This integration follows standard integration removal. No extra steps are required within Home Assistant or on your Plugwise devices.
-Auto means the schedule is active, Heat means it's not active. The active thermostat schedule can be changed via the connected thermostat select-entity. Please note: that only schedules that have two or more schedule points will be shown as select options.
+{% include integrations/remove_device_service.md %}
+
+This will also remove all connected Adam devices (such as Anna, Tom or Lisa) or connected Adam/Stretch plugs.
### Actions
diff --git a/source/_integrations/pocketcasts.markdown b/source/_integrations/pocketcasts.markdown
index 769c8336915..72d9df336bd 100644
--- a/source/_integrations/pocketcasts.markdown
+++ b/source/_integrations/pocketcasts.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `pocketcasts` sensor {% term integration %} lets you monitor how many unplayed episodes you have of your favorite podcasts at [Pocket Casts](https://play.pocketcasts.com/). This integration requires a [Pocket Casts + Plus](https://www.pocketcasts.com/plus/) subscription to work!
diff --git a/source/_integrations/point.markdown b/source/_integrations/point.markdown
index 5e2a4d603e3..0a8d5745d0b 100644
--- a/source/_integrations/point.markdown
+++ b/source/_integrations/point.markdown
@@ -9,7 +9,6 @@ ha_category:
ha_release: 0.83
ha_config_flow: true
ha_iot_class: Cloud Polling
-ha_quality_scale: silver
ha_codeowners:
- '@fredrike'
ha_domain: point
diff --git a/source/_integrations/proliphix.markdown b/source/_integrations/proliphix.markdown
index ea652055267..85050320d2b 100644
--- a/source/_integrations/proliphix.markdown
+++ b/source/_integrations/proliphix.markdown
@@ -9,6 +9,7 @@ ha_domain: proliphix
ha_platforms:
- climate
ha_integration_type: integration
+ha_quality_scale: legacy
---
The `proliphix` climate platform let you control Proliphix thermostats from Home Assistant.
diff --git a/source/_integrations/prometheus.markdown b/source/_integrations/prometheus.markdown
index 9558608a81a..cb160e81480 100644
--- a/source/_integrations/prometheus.markdown
+++ b/source/_integrations/prometheus.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `prometheus` {% term integration %} exposes metrics in a format which [Prometheus](https://prometheus.io/) can read.
diff --git a/source/_integrations/prowl.markdown b/source/_integrations/prowl.markdown
index 0bf3550ab76..fc535cf5605 100644
--- a/source/_integrations/prowl.markdown
+++ b/source/_integrations/prowl.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `prowl` {% term integration %} uses [Prowl](https://www.prowlapp.com/) to deliver push notifications from Home Assistant to your iOS device.
diff --git a/source/_integrations/proxmoxve.markdown b/source/_integrations/proxmoxve.markdown
index e32646a7988..3128058d357 100644
--- a/source/_integrations/proxmoxve.markdown
+++ b/source/_integrations/proxmoxve.markdown
@@ -15,6 +15,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
[Proxmox VE](https://www.proxmox.com/en/) is an open-source server virtualization environment. This integration allows you to poll various data from your instance.
diff --git a/source/_integrations/proxy.markdown b/source/_integrations/proxy.markdown
index 72671279396..46fc2bed324 100644
--- a/source/_integrations/proxy.markdown
+++ b/source/_integrations/proxy.markdown
@@ -11,6 +11,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `proxy` camera {% term integration %} allows you to pass another camera's output through post-processing routines and generate a new camera with the post-processed output.
diff --git a/source/_integrations/pulseaudio_loopback.markdown b/source/_integrations/pulseaudio_loopback.markdown
index e897cd07564..746597933c5 100644
--- a/source/_integrations/pulseaudio_loopback.markdown
+++ b/source/_integrations/pulseaudio_loopback.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The goal behind this switch is to allow a very flexible whole home audio system based upon [PulseAudio](https://www.freedesktop.org/wiki/Software/PulseAudio/).
diff --git a/source/_integrations/pure_energie.markdown b/source/_integrations/pure_energie.markdown
index 8b4460b632b..64c46e444ec 100644
--- a/source/_integrations/pure_energie.markdown
+++ b/source/_integrations/pure_energie.markdown
@@ -12,7 +12,6 @@ ha_domain: pure_energie
ha_platforms:
- diagnostics
- sensor
-ha_quality_scale: platinum
ha_zeroconf: true
ha_integration_type: integration
---
diff --git a/source/_integrations/push.markdown b/source/_integrations/push.markdown
index 3727115fef5..9c3650a20b9 100644
--- a/source/_integrations/push.markdown
+++ b/source/_integrations/push.markdown
@@ -14,6 +14,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `push` camera {% term integration %} allows you to integrate images sent over HTTP POST to Home Assistant as a camera. External applications/daemons/scripts are therefore able to "stream" images through Home Assistant.
diff --git a/source/_integrations/pushsafer.markdown b/source/_integrations/pushsafer.markdown
index e92328848de..a7cb450aa2d 100644
--- a/source/_integrations/pushsafer.markdown
+++ b/source/_integrations/pushsafer.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The [Pushsafer service](https://www.pushsafer.com/) is a platform for the notify integration. This allows you to send messages to the user using Pushsafer.
diff --git a/source/_integrations/pvoutput.markdown b/source/_integrations/pvoutput.markdown
index b26b2b846d6..cb9bae32d13 100644
--- a/source/_integrations/pvoutput.markdown
+++ b/source/_integrations/pvoutput.markdown
@@ -12,7 +12,6 @@ ha_domain: pvoutput
ha_platforms:
- diagnostics
- sensor
-ha_quality_scale: platinum
ha_integration_type: device
---
diff --git a/source/_integrations/pvpc_hourly_pricing.markdown b/source/_integrations/pvpc_hourly_pricing.markdown
index 5bbba6b8aca..e284f32d45d 100644
--- a/source/_integrations/pvpc_hourly_pricing.markdown
+++ b/source/_integrations/pvpc_hourly_pricing.markdown
@@ -5,7 +5,6 @@ ha_category:
- Energy
ha_release: '0.108'
ha_iot_class: Cloud Polling
-ha_quality_scale: platinum
ha_config_flow: true
ha_codeowners:
- '@azogue'
diff --git a/source/_integrations/pyload.markdown b/source/_integrations/pyload.markdown
index 3940f1a6796..0d8532ddda5 100644
--- a/source/_integrations/pyload.markdown
+++ b/source/_integrations/pyload.markdown
@@ -14,7 +14,6 @@ ha_platforms:
- sensor
- switch
ha_integration_type: service
-ha_quality_scale: platinum
ha_config_flow: true
---
diff --git a/source/_integrations/qld_bushfire.markdown b/source/_integrations/qld_bushfire.markdown
index d9e6675eebd..283ff0ee2af 100644
--- a/source/_integrations/qld_bushfire.markdown
+++ b/source/_integrations/qld_bushfire.markdown
@@ -14,6 +14,7 @@ ha_integration_type: service
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `qld_bushfire` platform lets you integrate a
diff --git a/source/_integrations/qrcode.markdown b/source/_integrations/qrcode.markdown
index 41f0377a6b0..629974158fa 100644
--- a/source/_integrations/qrcode.markdown
+++ b/source/_integrations/qrcode.markdown
@@ -10,6 +10,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `qrcode` image processing {% term integration %} enables QR code recognition from cameras.
diff --git a/source/_integrations/quantum_gateway.markdown b/source/_integrations/quantum_gateway.markdown
index 0ad06392196..20e45566cc2 100644
--- a/source/_integrations/quantum_gateway.markdown
+++ b/source/_integrations/quantum_gateway.markdown
@@ -14,6 +14,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `quantum_gateway` device tracker platform offers presence detection by looking at devices connected to a Verizon Fios gateway.
diff --git a/source/_integrations/qvr_pro.markdown b/source/_integrations/qvr_pro.markdown
index 5af0a812251..ba51e77c168 100644
--- a/source/_integrations/qvr_pro.markdown
+++ b/source/_integrations/qvr_pro.markdown
@@ -14,6 +14,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
[QVR Pro](https://www.qnap.com/en/software/qvr-pro) allows you to create
diff --git a/source/_integrations/qwikswitch.markdown b/source/_integrations/qwikswitch.markdown
index 80bc692e920..45afef6946b 100644
--- a/source/_integrations/qwikswitch.markdown
+++ b/source/_integrations/qwikswitch.markdown
@@ -21,6 +21,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `qwikswitch` integration is the main integration to integrate various [QwikSwitch](https://www.qwikswitch.co.za/) devices with Home Assistant. The integration requires the QSUSB Modem device and connects to the QS Mobile application.
diff --git a/source/_integrations/rabbitair.markdown b/source/_integrations/rabbitair.markdown
index 3f449eabcbe..df444f3d367 100644
--- a/source/_integrations/rabbitair.markdown
+++ b/source/_integrations/rabbitair.markdown
@@ -49,11 +49,7 @@ In some cases the access token may not be available right away, then you will se
{% configuration_basic %}
host:
- description: "Hostname or IP address of the device."
- required: true
- type: string
+ description: Hostname or IP address of the device.
access_token:
- description: "Access Token that can be obtained in the Rabbit Air app."
- required: true
- type: string
+ description: Access Token that can be obtained in the Rabbit Air app.
{% endconfiguration_basic %}
diff --git a/source/_integrations/rainbird.markdown b/source/_integrations/rainbird.markdown
index cd059a09bfd..80c893ab763 100644
--- a/source/_integrations/rainbird.markdown
+++ b/source/_integrations/rainbird.markdown
@@ -48,10 +48,9 @@ irrigations schedules on a calendar.
{% configuration_basic %}
Host:
- description: "The IP address of your Rain Bird device. You can find the IP address under the
- device in the Rain Bird app under **Controller Settings** -> **Network Info**."
+ description: "The IP address of your Rain Bird device. You can find the IP address under the device in the Rain Bird app under **Controller Settings** -> **Network Info**."
Password:
- description: "The password used to authenticate the Rain Bird device."
+ description: "The password used to authenticate the Rain Bird device."
{% endconfiguration_basic %}
## Configuration options
diff --git a/source/_integrations/raincloud.markdown b/source/_integrations/raincloud.markdown
index ee8231dda60..792afecba5e 100644
--- a/source/_integrations/raincloud.markdown
+++ b/source/_integrations/raincloud.markdown
@@ -19,6 +19,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `raincloud` {% term integration %} allows you to integrate your [Melnor RainCloud](https://wifiaquatimer.com) sprinkler system in Home Assistant.
diff --git a/source/_integrations/raspyrfm.markdown b/source/_integrations/raspyrfm.markdown
index 670564b865d..75734f934bf 100644
--- a/source/_integrations/raspyrfm.markdown
+++ b/source/_integrations/raspyrfm.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `raspyrfm` {% term integration %} adds support for cheap RC 433 MHz outlets via one of the supported gateways.
diff --git a/source/_integrations/rdw.markdown b/source/_integrations/rdw.markdown
index 5669f9c7f17..943da5a464d 100644
--- a/source/_integrations/rdw.markdown
+++ b/source/_integrations/rdw.markdown
@@ -8,7 +8,6 @@ ha_category:
ha_release: 2021.12
ha_iot_class: Cloud Polling
ha_config_flow: true
-ha_quality_scale: platinum
ha_codeowners:
- '@frenck'
- '@joostlek'
diff --git a/source/_integrations/recswitch.markdown b/source/_integrations/recswitch.markdown
index 5a20e078701..dce615cc767 100644
--- a/source/_integrations/recswitch.markdown
+++ b/source/_integrations/recswitch.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `recswitch` switch {% term integration %} allows you to control the Ankuoo REC Switch devices.
diff --git a/source/_integrations/reddit.markdown b/source/_integrations/reddit.markdown
index 051c52ee433..ac414eb151c 100644
--- a/source/_integrations/reddit.markdown
+++ b/source/_integrations/reddit.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The Reddit sensor integrates data from [Reddit](https://reddit.com/) to monitor your favorite subreddits.
diff --git a/source/_integrations/rejseplanen.markdown b/source/_integrations/rejseplanen.markdown
index 4495b2351ca..c2840a721c2 100644
--- a/source/_integrations/rejseplanen.markdown
+++ b/source/_integrations/rejseplanen.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `rejseplanen` {% term integration %} will provide you with travel details for Danish public transport, using timetable data from [Rejseplanen](https://www.rejseplanen.dk/).
diff --git a/source/_integrations/remember_the_milk.markdown b/source/_integrations/remember_the_milk.markdown
index 87f83606a1a..2c2447e5a0e 100644
--- a/source/_integrations/remember_the_milk.markdown
+++ b/source/_integrations/remember_the_milk.markdown
@@ -10,6 +10,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `remember_the_milk` integration allows you to create tasks in [Remember The Milk (RTM)](https://www.rememberthemilk.com) from Home Assistant. You can use this if you want Home Assistant to send you a task that you should not forget, e.g., water the plants. The integration allows you to have several RTM accounts in parallel.
diff --git a/source/_integrations/remote_rpi_gpio.markdown b/source/_integrations/remote_rpi_gpio.markdown
index e10e735d52b..2a6113ad0e3 100644
--- a/source/_integrations/remote_rpi_gpio.markdown
+++ b/source/_integrations/remote_rpi_gpio.markdown
@@ -15,6 +15,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `remote_rpi_gpio` {% term integration %} is the base for all related GPIO platforms in Home Assistant. For the platform configurations, please check their corresponding sections.
diff --git a/source/_integrations/renault.markdown b/source/_integrations/renault.markdown
index ef88a243516..8767de587f8 100644
--- a/source/_integrations/renault.markdown
+++ b/source/_integrations/renault.markdown
@@ -13,7 +13,6 @@ ha_config_flow: true
ha_codeowners:
- '@epenet'
ha_domain: renault
-ha_quality_scale: platinum
ha_platforms:
- binary_sensor
- button
@@ -38,13 +37,13 @@ This integration provides the following platforms:
{% configuration_basic %}
Locale:
- description: "The country code (e.g., 'fr_FR', 'en_GB') used to connect to the Renault servers. This should match your MyRenault account's locale setting."
+ description: "The country code (e.g., `fr_FR`, `en_GB`) used to connect to the Renault servers. This should match your MyRenault account's locale setting."
Username:
- description: "The username used to connect to the Renault servers."
+ description: "The username used to connect to the Renault servers."
Password:
- description: "The password used to connect to the Renault servers."
+ description: "The password used to connect to the Renault servers."
Kamereon account id:
- description: "The Kamereon account ID that your vehicles are assigned to. If there is only one account available it will be automatically selected."
+ description: "The Kamereon account ID that your vehicles are assigned to. If there is only one account available it will be automatically selected."
{% endconfiguration_basic %}
All vehicles linked to the account should then get added as devices, with sensors added as linked entity.
@@ -133,8 +132,8 @@ Notes:
duration: 15
```
-## Remove integration
+## Removing the integration
-This integration follows standard integration removal, no extra steps are required.
+This integration follows standard integration removal. No extra steps are required.
{% include integrations/remove_device_service.md %}
diff --git a/source/_integrations/reolink.markdown b/source/_integrations/reolink.markdown
index 47c7e70d1f8..6c57f21e9b9 100644
--- a/source/_integrations/reolink.markdown
+++ b/source/_integrations/reolink.markdown
@@ -2,8 +2,8 @@
title: Reolink
description: Instructions on how to integrate Reolink devices (NVR/cameras) into Home Assistant.
ha_category:
- - Doorbell
- Camera
+ - Doorbell
- Media source
- Update
ha_iot_class: Local Push
@@ -43,22 +43,18 @@ A brand new Reolink camera needs to be connected to the network and initialized.
- The password used for the Reolink device can only contain characters `a-z, A-Z, 0-9 or @$*~_-+=!?.,:;'()[]`. Other special characters will cause encoding issues in the video streams used by this integration and are, therefore, not allowed. When using an incompatible special character in the password, the integration will prompt you to change the password.
{% include integrations/config_flow.md %}
+
{% configuration_basic %}
Host:
- description: "The hostname or IP address of your Reolink device. For example: '192.168.1.25'. You can find it in your router or in the Reolink app under **Settings** -> **Device** (top icon) -> **Networkinformation** -> **IP-address**. Normally, the Reolink device is automatically discovered, and you do not need to provide this."
- required: false
- type: string
+ description: "The hostname or IP address of your Reolink device. For example: '192.168.1.25'. You can find it in your router or in the Reolink app under **Settings** -> **Device** (top icon) -> **Networkinformation** -> **IP-address**. Normally, the Reolink device is automatically discovered, and you do not need to provide this."
Username:
- description: "Username to log in to the Reolink device itself. Not the Reolink cloud account."
- required: true
- type: string
+ description: "Username to log in to the Reolink device itself. Not the Reolink cloud account."
Password:
- description: "Password to log in to the Reolink device itself. Not the Reolink cloud account."
- required: true
- type: string
+ description: "Password to log in to the Reolink device itself. Not the Reolink cloud account."
{% endconfiguration_basic %}
{% include integrations/option_flow.md %}
+
{% configuration_basic %}
Protocol:
description: Switch between RTSP, RTMP, or FLV streaming protocol. RTSP supports 4K streams (h265 encoding) while RTMP and FLV do not. FLV is the least demanding on the camera.
@@ -342,6 +338,8 @@ The following models have been tested and confirmed to work with a direct link t
- [RLN16-410 NVR](https://reolink.com/product/rln16-410/)
- [RLN36 NVR](https://reolink.com/product/rln36/)
- [RLN12W NVR](https://reolink.com/product/rln12w/)
+- [NVS8 NVR](https://reolink.com/product/nvs8/) (Retail version of RLN8)
+- [NVS16 NVR](https://reolink.com/product/nvs16/) (Retail version of RLN16)
- [Reolink Chime](https://reolink.com/product/reolink-chime/) (when connected to a doorbell)
- [Reolink Duo WiFi](https://reolink.com/product/reolink-duo-wifi-v1/)
- [Reolink Duo 2 WiFi](https://reolink.com/product/reolink-duo-wifi/)
@@ -365,6 +363,8 @@ The following hubs/NVRs have been tested and confirmed to work with battery-powe
- [RLN8-410 NVR](https://reolink.com/product/rln8-410/) (only the latest hardware version N7MB01, older versions might receive the required firmware update later)
- [RLN16-410 NVR](https://reolink.com/product/rln16-410/) (only the latest hardware version N6MB01, older versions might receive the required firmware update later)
- [RLN36 NVR](https://reolink.com/product/rln36/)
+- [NVS8 NVR](https://reolink.com/product/nvs8/) (Retail version of RLN8)
+- [NVS16 NVR](https://reolink.com/product/nvs16/) (Retail version of RLN16)
The following battery-powered models have been tested and confirmed to work through the Reolink Home Hub/NVR:
@@ -384,6 +384,18 @@ However, these cameras can work with this integration through an NVR or Home Hub
- E1 Pro
- E1
- Reolink Lumus
+- B400*
+- B500*
+- B500W*
+- B800*
+- B800W*
+- B1200*
+- D400*
+- D500*
+- D800*
+- D1200*
+
+*These models are only sold as a kit which includes a NVR.
### Incompatible models
diff --git a/source/_integrations/repetier.markdown b/source/_integrations/repetier.markdown
index 2d4ca749e93..c4f01547697 100644
--- a/source/_integrations/repetier.markdown
+++ b/source/_integrations/repetier.markdown
@@ -12,6 +12,7 @@ ha_domain: repetier
ha_platforms:
- sensor
ha_integration_type: integration
+ha_quality_scale: legacy
---
[Repetier-Server](https://www.repetier-server.com/) is a 3D printer/CNC server, able to control multiple devices on the same server.
diff --git a/source/_integrations/rflink.markdown b/source/_integrations/rflink.markdown
index b643536161d..40cf86afd0c 100644
--- a/source/_integrations/rflink.markdown
+++ b/source/_integrations/rflink.markdown
@@ -2,9 +2,9 @@
title: RFLink
description: Instructions on how to integrate RFLink gateway into Home Assistant.
ha_category:
- - Hub
- - Cover
- Binary sensor
+ - Cover
+ - Hub
- Light
- Sensor
- Switch
@@ -23,6 +23,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `rflink` {% term integration %} supports devices that use [RFLink gateway firmware](https://www.rflink.nl/download.php), for example, the [Nodo RFLink Gateway](https://www.nodo-shop.nl/21-rflink-). RFLink Gateway is an Arduino Mega firmware that allows two-way communication with a multitude of RF wireless devices using cheap hardware (Arduino + transceiver).
@@ -950,5 +951,3 @@ switch:
conrad_00785c_0a:
name: Motion sensor kitchen
```
-
-
diff --git a/source/_integrations/ring.markdown b/source/_integrations/ring.markdown
index 8ac2b8c5545..d9d265dd9ab 100644
--- a/source/_integrations/ring.markdown
+++ b/source/_integrations/ring.markdown
@@ -15,7 +15,6 @@ ha_release: 0.42
ha_iot_class: Cloud Polling
ha_config_flow: true
ha_domain: ring
-ha_quality_scale: silver
ha_dhcp: true
ha_platforms:
- binary_sensor
diff --git a/source/_integrations/ripple.markdown b/source/_integrations/ripple.markdown
index 01ff6c2a169..b971589fffc 100644
--- a/source/_integrations/ripple.markdown
+++ b/source/_integrations/ripple.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `ripple` sensor {% term integration %} displays Ripple wallet balances from [Ripple.com](https://ripple.com).
diff --git a/source/_integrations/risco.markdown b/source/_integrations/risco.markdown
index f2992d5cdef..c23371676ac 100644
--- a/source/_integrations/risco.markdown
+++ b/source/_integrations/risco.markdown
@@ -11,7 +11,6 @@ ha_config_flow: true
ha_codeowners:
- '@OnFreund'
ha_domain: risco
-ha_quality_scale: platinum
ha_platforms:
- alarm_control_panel
- binary_sensor
diff --git a/source/_integrations/rituals_perfume_genie.markdown b/source/_integrations/rituals_perfume_genie.markdown
index d5ac16b5233..1ef839e78b3 100644
--- a/source/_integrations/rituals_perfume_genie.markdown
+++ b/source/_integrations/rituals_perfume_genie.markdown
@@ -21,7 +21,6 @@ ha_platforms:
- select
- sensor
- switch
-ha_quality_scale: silver
ha_integration_type: integration
---
diff --git a/source/_integrations/rmvtransport.markdown b/source/_integrations/rmvtransport.markdown
index 3662ebea13b..41e9609b1ae 100644
--- a/source/_integrations/rmvtransport.markdown
+++ b/source/_integrations/rmvtransport.markdown
@@ -14,6 +14,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `rvmtransport` {% term integration %} will give you the departure time of the next bus, tram, subway or train at the next station or stop in the Rhein-Main area public transport network. Additional details such as the line number and destination are present in the attributes.
diff --git a/source/_integrations/rocketchat.markdown b/source/_integrations/rocketchat.markdown
index 169e8502dbf..e85833b821e 100644
--- a/source/_integrations/rocketchat.markdown
+++ b/source/_integrations/rocketchat.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `rocketchat` notify {% term integration %} allows you to send messages to your [Rocket.Chat](https://rocket.chat/) instance from Home Assistant.
diff --git a/source/_integrations/roku.markdown b/source/_integrations/roku.markdown
index d39d26881e5..ac3ad633792 100644
--- a/source/_integrations/roku.markdown
+++ b/source/_integrations/roku.markdown
@@ -12,7 +12,6 @@ ha_iot_class: Local Polling
ha_release: 0.86
ha_domain: roku
ha_config_flow: true
-ha_quality_scale: silver
ha_codeowners:
- '@ctalkington'
ha_ssdp: true
@@ -27,7 +26,7 @@ ha_platforms:
ha_integration_type: device
---
-The Roku integration allows you to control a [Roku](https://www.roku.com/) device.
+The Roku integration allows you to control a [Roku](https://www.roku.com/) media playback device. This integration only supports Roku media playback devices (such as sticks, streaming boxes, and televisions). All other smart home products (such as light bulbs and cameras) are part of a different ecosystem.
{% include integrations/config_flow.md %}
@@ -35,16 +34,50 @@ When adding the integration, you will be asked to provide a {% term host %}. Unl
If you are having issues connecting, you may have to adjust the settings on your Roku device to allow local control. The common setting is: `Settings / System / Advanced / Control by mobile apps / Network access`
-There is currently support for the following device types within Home Assistant:
+{% include integrations/option_flow.md %}
-- Media player
-- Remote
+{% configuration_basic %}
+Play Media Application ID:
+ description: The application ID to use when launching media playback. The default is `15985`. This application must support the PlayOnRoku API.
+{% endconfiguration_basic %}
-## Remote
+## Data updates
-The `roku` remote platform allows you to send remote control buttons to a Roku device. It is automatically set up when a Roku is configured.
+The Roku integration polls every 10 seconds to check the current state of media playback. The available applications and television channels are only fetched every 15 minutes.
-At the moment, the following buttons are supported:
+## Supported functionality
+
+### Entities
+
+The Roku integration provides the following entities.
+
+#### Binary sensor
+
+- **Headphones connected sensor**
+ - **Description**: The headphones connected sensor will tell if you if the device has headphones connected for private listening.
+ - **Available for devices**: All
+
+- **Supports AirPlay sensor**
+ - **Description**: The supports AirPlay sensor will tell if the device is capable of accepting AirPlay connections.
+ - **Available for devices**: All
+
+- **Supports Ethernet sensor**
+ - **Description**: The supports Ethernet sensor will tell if the device is capable of being connected via an Ethernet cable.
+ - **Available for devices**: All
+
+- **Supports find remote sensor**
+ - **Description**: The supports find remote sensor will tell if the device is capable of the find remote feature.
+ - **Available for devices**: All
+
+#### Media player
+
+The integration allows for media playback control including power and source control. It also supports the ability to select sources such as text-to-speech and Camera via "Browse Media".
+
+#### Remote
+
+The integration allows you to send remote control commands. It is automatically set up for all devices.
+
+The following commands are currently supported depending on device type and manufacturer support:
- back
- backspace
@@ -65,7 +98,7 @@ At the moment, the following buttons are supported:
- left
- literal
- play
-- power
+- power
- replay
- reverse
- right
@@ -76,7 +109,7 @@ At the moment, the following buttons are supported:
- volume_mute
- volume_up
-A typical action for pressing several buttons looks like this.
+##### Example
```yaml
action: remote.send_command
@@ -89,27 +122,36 @@ data:
- select
```
-## Media player
+#### Select
-When the Home Assistant Roku integration is enabled and a Roku device has been configured, in the Home Assistant UI the Roku media player will show a listing of the installed channels, or apps, under “source”. Select one and it will attempt to launch the channel on your Roku device.
+- **Application control**
+ - **Description**: The application select control allows changing the active application.
+ - **Available for devices**: All
-{% include integrations/option_flow.md %}
+- **Channel control**
+ - **Description**: The channel select control allows changing the active television channel.
+ - **Available for devices**: Only available for Roku TV devices.
-{% configuration_basic %}
-Play Media Application ID:
- description: The application ID to use when launching media playback. This application must support the PlayOnRoku API.
-{% endconfiguration_basic %}
+#### Sensor
-## Source Automation
+- **Active app sensor**
+ - **Description**: The active app sensor will tell you the name of the active application.
+ - **Available for devices**: All
-The `media_player.select_source` action may be used to launch specific applications/streaming channels on your Roku device.
+- **Active app ID sensor**
+ - **Description**: The active app ID sensor will tell you the ID of the active application.
+ - **Available for devices**: All
+
+### Source automation
+
+The `media_player.select_source` action may be used to launch specific applications on your Roku device.
| Data attribute | Optional | Description | Example |
| ---------------------- | -------- | ----------- | ------- |
| `entity_id` | no | Target a specific media player. |
| `source` | no | An application name or application ID. | Prime Video
-### Examples
+#### Examples
```yaml
actions:
@@ -131,13 +173,7 @@ actions:
source: 20197
```
-### Obtaining Application IDs
-
-The currently active application ID can be found in the `Active App ID` diagnostic sensor.
-
-Alternatively, you can make a manual HTTP request (GET) to `http://ROKU_IP:8060/query/apps`, in either your browser or terminal, to retrieve a complete list of installed applications in XML format.
-
-## TV Channel Tuning
+### TV channel tuning
The `media_player.play_media` action may be used to tune to specific channels on your Roku TV device with OTA antenna.
@@ -147,7 +183,7 @@ The `media_player.play_media` action may be used to tune to specific channels on
| `media_content_id` | no | A channel number. | 5.1
| `media_content_type` | no | A media type. | `channel`
-### Example
+#### Example
```yaml
actions:
@@ -159,11 +195,11 @@ actions:
media_content_type: channel
```
-## Play on Roku
+### Play on Roku
The `media_player.play_media` action may be used to send media URLs (primarily videos) for direct playback on your device.
-This feature makes use of the PlayOnRoku API. If you are using an older Roku OS (pre-11.5), the defaults of this integration should just work. Alternatively, you can configure a third-party application that supports the PlayOnRoku API via the `Play Media Roku Application ID` option.
+This feature makes use of the PlayOnRoku API. If you are using an older Roku OS (pre-11.5), the defaults of this integration should just work with the configuration defaults. Alternatively, you can configure a third-party application that supports the PlayOnRoku API via the `Play Media Roku Application ID` option.
The following third-party applications have been tested with this integration:
@@ -179,7 +215,7 @@ The following third-party applications have been tested with this integration:
| `extra.thumbnail` | yes | A thumbnail URL for the media. |
| `extra.artist_name` | yes | The name of the media artist. | Blender
-### Example
+#### Example
```yaml
actions:
- action: media_player.play_media
@@ -191,25 +227,11 @@ actions:
extra:
format: "mp4"
name: "Big Buck Bunny"
-```
+```
-## Camera Stream Integration
+### Content deeplinking
-The `camera.play_stream` action may be used to send camera streams (HLS) directly to your device. This feature requires the [`stream` integration](/integrations/stream) and makes use of the PlayOnRoku API.
-
-### Example
-```yaml
-actions:
- - action: camera.play_stream
- target:
- entity_id: camera.camera
- data:
- media_player: media_player.roku
-```
-
-## Content Deeplinking
-
-The `media_player.play_media` action may be used to deep-link to content within an application.
+The `media_player.play_media` action may be used to deep-link to content within a channel application using content IDs. See [Obtaining Content IDs](#obtaining-content-ids) to learn more about content IDs.
| Data attribute | Optional | Description | Example |
| ---------------------- | -------- | ----------- | ------- |
@@ -219,7 +241,7 @@ The `media_player.play_media` action may be used to deep-link to content within
| `extra.content_id` | no | A unique content identifier passed to app. | 8e06a8b7-d667-4e31-939d-f40a6dd78a88
| `extra.media_type` | no | A media type passed to app. Should be one of `movie`, `episode`, `season`, `series`, `shortFormVideo`, `special`, `live` | movie
-### Example
+#### Example
```yaml
actions:
@@ -234,7 +256,43 @@ actions:
media_type: movie
```
-### Obtaining Content IDs
+### Camera stream integration
+
+The `camera.play_stream` action may be used to send camera streams (HLS) directly to your device. This feature requires the [`stream` integration](/integrations/stream) and makes use of the PlayOnRoku API.
+
+#### Example
+
+```yaml
+actions:
+ - action: camera.play_stream
+ target:
+ entity_id: camera.camera
+ data:
+ media_player: media_player.roku
+```
+
+### Additional actions
+
+The integration exposes additional actions to control a Roku device.
+
+#### Action `roku.search`
+
+This action allows you to emulate opening the search screen and entering the search keyword.
+
+| Data attribute | Optional | Description | Example |
+| ---------------------- | -------- | ----------- | ------- |
+| `entity_id` | yes | The entities to search on. | media_player.roku
+| `keyword` | no | The keyword to search for. | Space Jam
+
+## Tips and tricks
+
+### Obtaining application IDs
+
+The currently active application ID can be found in the `Active App ID` diagnostic sensor.
+
+Alternatively, you can make a manual HTTP request (GET) to `http://ROKU_IP:8060/query/apps`, in either your browser or terminal, to retrieve a complete list of installed applications in XML format.
+
+### Obtaining content IDs
Content IDs are unique to each streaming service and vary in format but are often part of the video webpage URL. Here are some examples:
@@ -245,13 +303,14 @@ Content IDs are unique to each streaming service and vary in format but are ofte
| Spotify | 22297 | open.spotify.com/playlist/5xddIVAtLrZKtt4YGLM1SQ | spotify:playlist:5xddIVAtLrZKtt4YGLM1SQ | playlist
| YouTube | 837 | youtu.be/6ZMXE5PXPqU | 6ZMXE5PXPqU | live
-## Actions
+## Known limitations
-### Action `roku.search`
+Roku has been known to remove or restrict local control functionality as part of major Roku OS upgrades. As such devices may become less functional after an upgrade.
-This action allows you to emulate opening the search screen and entering the search keyword.
+Roku channels, such as YouTube, are maintained by third-parties and as such the availability of features like Content Deeplinking are subject to change without notice.
-| Data attribute | Optional | Description | Example |
-| ---------------------- | -------- | ----------- | ------- |
-| `entity_id` | yes | The entities to search on. | media_player.roku
-| `keyword` | no | The keyword to search for. | Space Jam
+## Removing the integration
+
+This integration can be removed by following these steps:
+
+{% include integrations/remove_device_service.md %}
diff --git a/source/_integrations/route53.markdown b/source/_integrations/route53.markdown
index 17516970a6a..a0db0779409 100644
--- a/source/_integrations/route53.markdown
+++ b/source/_integrations/route53.markdown
@@ -10,6 +10,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
With the `route53` {% term integration %} can you keep your AWS Route53 DNS records up to date.
diff --git a/source/_integrations/rpi_camera.markdown b/source/_integrations/rpi_camera.markdown
index 1b6e6c6ba67..23e065608d6 100644
--- a/source/_integrations/rpi_camera.markdown
+++ b/source/_integrations/rpi_camera.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `rpi_camera` {% term integration %} allows you to integrate the Raspberry Pi camera into Home Assistant. This integration uses the application [`raspistill`](https://www.raspberrypi.org/documentation/usage/camera/raspicam/raspistill.md) to store the image from camera.
diff --git a/source/_integrations/rtorrent.markdown b/source/_integrations/rtorrent.markdown
index a7484d2718f..d38e78f32bb 100644
--- a/source/_integrations/rtorrent.markdown
+++ b/source/_integrations/rtorrent.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `rtorrent` {% term integration %} allows you to monitor your downloads with [rTorrent](https://rakshasa.github.io/rtorrent/) from within Home Assistant and setup automations based on the information.
diff --git a/source/_integrations/russound_rio.markdown b/source/_integrations/russound_rio.markdown
index 3ce410b3bde..1cb435d0e43 100644
--- a/source/_integrations/russound_rio.markdown
+++ b/source/_integrations/russound_rio.markdown
@@ -6,7 +6,6 @@ ha_category:
ha_release: 0.49
ha_iot_class: Local Push
ha_domain: russound_rio
-ha_quality_scale: silver
ha_platforms:
- media_player
ha_codeowners:
@@ -17,7 +16,7 @@ ha_integration_type: integration
The `russound_rio` {% term integration %} allows you to control Russound devices that make use of the RIO protocol.
-The platform automatically discovers all enabled zones and sources. Each zone is added as a media player device with the enabled sources available as inputs. Media information is supported if the selected source reports it.
+The platform automatically discovers all enabled zones and sources. Each zone is added as a media player device with the enabled sources available as inputs. Media information is supported if the selected source reports it. The integration allows you to navigate presets, control volume of all zones, and play radio stations all from your Home Assistant dashboard.
## Supported devices
@@ -36,3 +35,27 @@ This integration allows you to connect the following controllers:
- Russound XStream-X5
{% include integrations/config_flow.md %}
+
+{% configuration_basic %}
+Host:
+ description: The IP address of your device can be found by navigating to the device on the [Russound app](https://www.russound.com/russound-app) and selecting `Settings`. If you are using a third-party RS232 to IP adapter, refer to the user manual about finding the IP address.
+Port:
+ description: The port of your device. This is `9621` on all devices except for the XZone4, which uses ports 9621-9624. The port may be different if a RS232 to IP adapter is used.
+{% endconfiguration_basic %}
+
+## Data updates
+
+Russound RIO devices push data directly to Home Assistant, enabling immediate updates for device state changes, media information, and playback status.
+
+## Removing the integration
+
+This integration follows standard integration removal. No extra steps are required.
+
+{% include integrations/remove_device_service.md %}
+
+## Troubleshooting
+
+### There is a delay on getting the current status
+
+Some older Russound devices have a slight delay before posting a new status to Home Assistant.
+This can be resolved by updating the unit to the latest firmware.
diff --git a/source/_integrations/russound_rnet.markdown b/source/_integrations/russound_rnet.markdown
index 889d93360f9..4693881c948 100644
--- a/source/_integrations/russound_rnet.markdown
+++ b/source/_integrations/russound_rnet.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `russound_rnet` {% term integration %} allows you to control Russound devices that make use of the RNET protocol.
diff --git a/source/_integrations/sabnzbd.markdown b/source/_integrations/sabnzbd.markdown
index 69e1e195518..d4a8abd5fbc 100644
--- a/source/_integrations/sabnzbd.markdown
+++ b/source/_integrations/sabnzbd.markdown
@@ -12,10 +12,10 @@ ha_codeowners:
- '@jpbede'
ha_domain: sabnzbd
ha_platforms:
- - sensor
- binary_sensor
- button
- number
+ - sensor
ha_integration_type: integration
---
diff --git a/source/_integrations/saj.markdown b/source/_integrations/saj.markdown
index d6270dd93f0..00505541dc9 100644
--- a/source/_integrations/saj.markdown
+++ b/source/_integrations/saj.markdown
@@ -14,6 +14,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `saj` {% term integration %} will poll a [SAJ](https://www.saj-electric.com/) solar inverter and present the values as sensors in Home Assistant.
diff --git a/source/_integrations/samsungtv.markdown b/source/_integrations/samsungtv.markdown
index 0603b7fe1f7..252f4129924 100644
--- a/source/_integrations/samsungtv.markdown
+++ b/source/_integrations/samsungtv.markdown
@@ -157,6 +157,7 @@ KEY_LEFT|NavigationLeft
KEY_RIGHT|NavigationRight
KEY_RETURN|NavigationReturn/Back
KEY_ENTER|NavigationEnter
+KEY_EXIT|NavigationExit
____________
**Media Keys**
diff --git a/source/_integrations/satel_integra.markdown b/source/_integrations/satel_integra.markdown
index 495e7e5fc2b..6b2267581d4 100644
--- a/source/_integrations/satel_integra.markdown
+++ b/source/_integrations/satel_integra.markdown
@@ -17,6 +17,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `satel_integra` {% term integration %} will allow Home Assistant users who own a Satel Integra alarm panel to leverage their alarm system and its sensors to provide Home Assistant with information about their homes. Connectivity between Home Assistant and the alarm is accomplished through a ETHM extension module that must be installed in the alarm. Compatible with ETHM-1 Plus module with firmware version > 2.00 (version 2.04 confirmed).
diff --git a/source/_integrations/schluter.markdown b/source/_integrations/schluter.markdown
index c97f59da451..67e9212cceb 100644
--- a/source/_integrations/schluter.markdown
+++ b/source/_integrations/schluter.markdown
@@ -14,6 +14,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `schluter` {% term integration %} allows you to integrate your [Schluter-DITRA-HEAT-E-WiFi](https://www.schluter.com/schluter-us/en_US/ditra-heat-wifi) electric floor heating thermostat in Home Assistant.
diff --git a/source/_integrations/script.markdown b/source/_integrations/script.markdown
index 33234489052..0990e2d37c1 100644
--- a/source/_integrations/script.markdown
+++ b/source/_integrations/script.markdown
@@ -77,7 +77,7 @@ fields:
description: The name of this script parameter field.
type: string
description:
- description: A description of this of this script parameter.
+ description: A description of this script parameter.
type: string
advanced:
description: Marks this field as an advanced parameter. This causes it only to be shown in the UI, when the user has advanced mode enabled.
diff --git a/source/_integrations/scsgate.markdown b/source/_integrations/scsgate.markdown
index 733c29caef4..07c0954a9ce 100644
--- a/source/_integrations/scsgate.markdown
+++ b/source/_integrations/scsgate.markdown
@@ -17,6 +17,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The SCSGate {% term integration %} support the [SCSGate](https://translate.google.com/translate?hl=en&sl=it&tl=en&u=http%3A%2F%2Fguidopic.altervista.org%2Feibscsgt%2Finterface.html) device. This a home-brew device allows to interact with the MyHome system from BTicino/Legrande.
diff --git a/source/_integrations/sendgrid.markdown b/source/_integrations/sendgrid.markdown
index 401d8eff45c..7b117f24445 100644
--- a/source/_integrations/sendgrid.markdown
+++ b/source/_integrations/sendgrid.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `sendgrid` notification {% term integration %} sends email notifications via [SendGrid](https://sendgrid.com/), a proven cloud-based email platform.
diff --git a/source/_integrations/sensibo.markdown b/source/_integrations/sensibo.markdown
index 9a32257153e..aaf80ebdbf0 100644
--- a/source/_integrations/sensibo.markdown
+++ b/source/_integrations/sensibo.markdown
@@ -31,7 +31,6 @@ ha_platforms:
ha_homekit: true
ha_dhcp: true
ha_integration_type: integration
-ha_quality_scale: platinum
---
Integrates [Sensibo](https://sensibo.com) devices into Home Assistant.
diff --git a/source/_integrations/serial_pm.markdown b/source/_integrations/serial_pm.markdown
index bc11162a1f8..c92645dbfd8 100644
--- a/source/_integrations/serial_pm.markdown
+++ b/source/_integrations/serial_pm.markdown
@@ -9,6 +9,7 @@ ha_domain: serial_pm
ha_platforms:
- sensor
ha_integration_type: integration
+ha_quality_scale: legacy
---
Particulate matter sensors measure the amount of very small particles in the air.
diff --git a/source/_integrations/sesame.markdown b/source/_integrations/sesame.markdown
index 6f001460dad..761b35bf2cd 100644
--- a/source/_integrations/sesame.markdown
+++ b/source/_integrations/sesame.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `sesame` {% term integration %} allows you to control your [Sesame](https://candyhouse.co/) smart locks made by CANDY HOUSE, Inc.
diff --git a/source/_integrations/seven_segments.markdown b/source/_integrations/seven_segments.markdown
index e50f76bc5a8..941c01c6d96 100644
--- a/source/_integrations/seven_segments.markdown
+++ b/source/_integrations/seven_segments.markdown
@@ -13,6 +13,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `seven_segments` image processing {% term integration %} allows you to read physical seven segments displays through Home Assistant. [`ssocr`](https://www.unix-ag.uni-kl.de/~auerswal/ssocr/) is used to extract the value shown on the display which is observed by a [camera](/integrations/camera/).
diff --git a/source/_integrations/sfr_box.markdown b/source/_integrations/sfr_box.markdown
index 2d4a948fc50..fffe3f5d198 100644
--- a/source/_integrations/sfr_box.markdown
+++ b/source/_integrations/sfr_box.markdown
@@ -33,8 +33,8 @@ The integration uses the REST API, which is known to be available on models `NB4
However, `NCC` models do not appear to expose this REST API, and are therefore unsupported by the integration.
-## Remove integration
+## Removing the integration
-This integration follows standard integration removal, no extra steps are required.
+This integration follows standard integration removal. No extra steps are required.
{% include integrations/remove_device_service.md %}
diff --git a/source/_integrations/shelly.markdown b/source/_integrations/shelly.markdown
index 7edc5df9009..6ada2d20a97 100644
--- a/source/_integrations/shelly.markdown
+++ b/source/_integrations/shelly.markdown
@@ -43,7 +43,6 @@ ha_platforms:
- update
- valve
ha_integration_type: device
-ha_quality_scale: platinum
---
Integrate [Shelly devices](https://shelly.com) into Home Assistant.
diff --git a/source/_integrations/shodan.markdown b/source/_integrations/shodan.markdown
index ddc35f12ef0..ae35327721f 100644
--- a/source/_integrations/shodan.markdown
+++ b/source/_integrations/shodan.markdown
@@ -14,6 +14,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `shodan` sensor {% term integration %} is displaying the total of result of a
diff --git a/source/_integrations/sigfox.markdown b/source/_integrations/sigfox.markdown
index 64363c90f4c..ebc9e3d4c6b 100644
--- a/source/_integrations/sigfox.markdown
+++ b/source/_integrations/sigfox.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
[SigFox](https://www.sigfox.com/) {% term integration %} adding a sensor for each Sigfox device registered with your account. The default name of sensors is `sigfox_{DEVICE_ID}` where `DEVICE_ID` is the devices Sigfox ID. The state of an added Sigfox sensor is the payload of the last message published by that device. Additionally, there are attributes for the latitude and longitude coordinates of the device, as well as the signal-to-noise ratio ([snr](https://en.wikipedia.org/wiki/Signal-to-noise_ratio)).
diff --git a/source/_integrations/sighthound.markdown b/source/_integrations/sighthound.markdown
index 2b907d54c34..be6d51d95fe 100644
--- a/source/_integrations/sighthound.markdown
+++ b/source/_integrations/sighthound.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
Detect people in camera images using [Sighthound Cloud](https://www.sighthound.com/products/cloud). The Sighthound Developer tier (free for non-commercial use) allows 5000 images to be processed per month. If you need more processing per month you will need to sign up for a production account (i.e., a Basic or Pro account).
diff --git a/source/_integrations/signal_messenger.markdown b/source/_integrations/signal_messenger.markdown
index 98980e3bfbb..18e099b955f 100644
--- a/source/_integrations/signal_messenger.markdown
+++ b/source/_integrations/signal_messenger.markdown
@@ -14,6 +14,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `signal_messenger` {% term integration %} uses the [Signal Messenger REST API](https://github.com/bbernhard/signal-cli-rest-api) to deliver notifications from Home Assistant to your Android or iOS device.
diff --git a/source/_integrations/sinch.markdown b/source/_integrations/sinch.markdown
index 3f7fdb34027..5843bb49917 100644
--- a/source/_integrations/sinch.markdown
+++ b/source/_integrations/sinch.markdown
@@ -14,6 +14,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `sinch` {% term integration %} uses [Sinch](https://www.sinch.com/products/apis/messaging/sms/) to deliver notifications from Home Assistant.
diff --git a/source/_integrations/sisyphus.markdown b/source/_integrations/sisyphus.markdown
index 68e3a2c2b81..82d188e241e 100644
--- a/source/_integrations/sisyphus.markdown
+++ b/source/_integrations/sisyphus.markdown
@@ -14,6 +14,7 @@ ha_platforms:
- light
- media_player
ha_integration_type: integration
+ha_quality_scale: legacy
---
The [Sisyphus](https://sisyphus-industries.com/) integration for Home Assistant allows you to observe and control your Sisyphus Kinetic Art Table.
diff --git a/source/_integrations/sky_hub.markdown b/source/_integrations/sky_hub.markdown
index b58858f785a..e5d4be1f893 100644
--- a/source/_integrations/sky_hub.markdown
+++ b/source/_integrations/sky_hub.markdown
@@ -14,6 +14,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `sky_hub` {% term integration %} offers presence detection by looking at connected devices to a [Sky Hub router](https://www.sky.com/shop/broadband-talk/sky-hub/) based router.
diff --git a/source/_integrations/sky_remote.markdown b/source/_integrations/sky_remote.markdown
index 4012afa8267..322e9a7ec90 100644
--- a/source/_integrations/sky_remote.markdown
+++ b/source/_integrations/sky_remote.markdown
@@ -1,5 +1,5 @@
---
-title: Sky Remote
+title: Sky Remote Control
description: The Sky Remote integration allows you to control a Sky box with Home Assistant.
ha_category:
- Remote
@@ -7,8 +7,8 @@ ha_release: 2024.12
ha_domain: sky_remote
ha_config_flow: true
ha_codeowners:
- - "@dunnmj"
- - "@saty9"
+ - '@dunnmj'
+ - '@saty9'
ha_iot_class: Assumed State
ha_platforms:
- remote
@@ -104,6 +104,3 @@ The following commands are supported:
- `dismiss` - Dismiss interactive content
- `search` - Opens SkyQ search interface
- `home` - Launches SkyQ homepage
-
-
-
diff --git a/source/_integrations/skybeacon.markdown b/source/_integrations/skybeacon.markdown
index 488d085c56c..fb8c4d29819 100644
--- a/source/_integrations/skybeacon.markdown
+++ b/source/_integrations/skybeacon.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `skybeacon` sensor {% term integration %} supports [CR2477](https://cnsky9.en.alibaba.com/)-powered [iBeacon](https://en.wikipedia.org/wiki/IBeacon)/eddystone sensors that come with temperature/sensor module.
diff --git a/source/_integrations/slide.markdown b/source/_integrations/slide.markdown
index e9c4d0a0ff2..46f748a8839 100644
--- a/source/_integrations/slide.markdown
+++ b/source/_integrations/slide.markdown
@@ -15,6 +15,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `slide` {% term integration %} allows you to integrate your [slide.store](https://slide.store/) devices in Home Assistant using the [official API](https://documenter.getpostman.com/view/6223391/S1Lu2pSf?version=latest).
diff --git a/source/_integrations/smarttub.markdown b/source/_integrations/smarttub.markdown
index 2ac8168aade..4a152efcc70 100644
--- a/source/_integrations/smarttub.markdown
+++ b/source/_integrations/smarttub.markdown
@@ -10,7 +10,6 @@ ha_category:
ha_release: 2021.3
ha_iot_class: Cloud Polling
ha_config_flow: true
-ha_quality_scale: platinum
ha_codeowners:
- '@mdz'
ha_domain: smarttub
diff --git a/source/_integrations/smtp.markdown b/source/_integrations/smtp.markdown
index c49f8af2827..997bf42f488 100644
--- a/source/_integrations/smtp.markdown
+++ b/source/_integrations/smtp.markdown
@@ -9,6 +9,7 @@ ha_domain: smtp
ha_platforms:
- notify
ha_integration_type: integration
+ha_quality_scale: legacy
---
The SMTP platform allows you to deliver notifications from Home Assistant to an email recipient.
diff --git a/source/_integrations/snips.markdown b/source/_integrations/snips.markdown
index 507a07860a0..e2df623689a 100644
--- a/source/_integrations/snips.markdown
+++ b/source/_integrations/snips.markdown
@@ -7,6 +7,7 @@ ha_release: 0.48
ha_domain: snips
ha_iot_class: Local Push
ha_integration_type: integration
+ha_quality_scale: legacy
---
{% warning %}
diff --git a/source/_integrations/snmp.markdown b/source/_integrations/snmp.markdown
index f3c91e57bc5..5a2c31b760f 100644
--- a/source/_integrations/snmp.markdown
+++ b/source/_integrations/snmp.markdown
@@ -16,6 +16,7 @@ ha_platforms:
ha_integration_type: integration
ha_codeowners:
- '@nmaggioni'
+ha_quality_scale: legacy
---
A lot of Wi-Fi access points and Wi-Fi routers support the Simple Network Management Protocol (SNMP). This is a standardized method for monitoring/managing network connected devices. SNMP uses a tree-like hierarchy where each node is an object. Many of these objects contain (live) lists of instances and metrics, like network interfaces, disks and Wi-Fi registrations.
diff --git a/source/_integrations/solaredge_local.markdown b/source/_integrations/solaredge_local.markdown
index 31ce73e4f7a..ec9b27cec88 100644
--- a/source/_integrations/solaredge_local.markdown
+++ b/source/_integrations/solaredge_local.markdown
@@ -16,6 +16,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `solaredge_local` {% term integration %} uses the local API available on some SolarEdge Inverters to allow you to get details from your SolarEdge solar power setup and integrate these into your Home Assistant installation.
diff --git a/source/_integrations/solarlog.markdown b/source/_integrations/solarlog.markdown
index 075813c32aa..4d8ba4bea89 100644
--- a/source/_integrations/solarlog.markdown
+++ b/source/_integrations/solarlog.markdown
@@ -15,6 +15,7 @@ ha_platforms:
- diagnostics
- sensor
ha_integration_type: integration
+ha_quality_scale: platinum
---
The **Solarlog** {% term integration %} uses the open JSON interface on [Solar-Log PV monitoring systems](https://www.solar-log.com/) to get details from your Solar-Log device and integrate these into your Home Assistant installation. With the integration you may monitor the solar power production and power consumption as tracked with your Solar-Log device.
@@ -42,13 +43,13 @@ To setup the integration you need the following information:
{% configuration_basic %}
Name:
- description: "The name for your Solar-Log device in Home Assistant. This will also be uses as prefix for the entity names."
+ description: "The name for your Solar-Log device in Home Assistant. This will also be uses as prefix for the entity names."
Host:
- description: "The URL or IP address of your Solar-Log."
+ description: "The URL or IP address of your Solar-Log."
User password available:
- description: "Check the box, if you have the password for the Solar-Log user to securely access [all data](#additional-data)."
+ description: "Check the box, if you have the password for the Solar-Log user to securely access [all data](#additional-data)."
Password:
- description: "Password for the Solar-Log user. Will only be asked for in a second step, if in the first step the checkbox has been selected."
+ description: "Password for the Solar-Log user. Will only be asked for in a second step, if in the first step the checkbox has been selected."
{% endconfiguration_basic %}
## Configuration options
diff --git a/source/_integrations/sonarr.markdown b/source/_integrations/sonarr.markdown
index b10542a3d84..b269ebc74e0 100644
--- a/source/_integrations/sonarr.markdown
+++ b/source/_integrations/sonarr.markdown
@@ -9,7 +9,6 @@ ha_domain: sonarr
ha_config_flow: true
ha_codeowners:
- '@ctalkington'
-ha_quality_scale: silver
ha_platforms:
- sensor
ha_integration_type: integration
diff --git a/source/_integrations/songpal.markdown b/source/_integrations/songpal.markdown
index 7347c594930..bcb1f72ea06 100644
--- a/source/_integrations/songpal.markdown
+++ b/source/_integrations/songpal.markdown
@@ -6,7 +6,6 @@ ha_category:
ha_iot_class: Local Push
ha_release: 0.65
ha_config_flow: true
-ha_quality_scale: gold
ha_codeowners:
- '@rytilahti'
- '@shenxn'
diff --git a/source/_integrations/sony_projector.markdown b/source/_integrations/sony_projector.markdown
index 1080e3cc90c..40a83fd4fc9 100644
--- a/source/_integrations/sony_projector.markdown
+++ b/source/_integrations/sony_projector.markdown
@@ -9,6 +9,7 @@ ha_domain: sony_projector
ha_platforms:
- switch
ha_integration_type: integration
+ha_quality_scale: legacy
---
The `sony_projector` switch platform allows you to control the state of SDCP compatible network-connected projectors from [Sony](https://www.sony.com/).
diff --git a/source/_integrations/spaceapi.markdown b/source/_integrations/spaceapi.markdown
index 6cee5f660f9..d694feae988 100644
--- a/source/_integrations/spaceapi.markdown
+++ b/source/_integrations/spaceapi.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `spaceapi` {% term integration %} allow Hackerspaces to expose information to web apps or any other application with the [SpaceAPI](https://spaceapi.io/).
diff --git a/source/_integrations/spc.markdown b/source/_integrations/spc.markdown
index fe376503614..b6f062abee1 100644
--- a/source/_integrations/spc.markdown
+++ b/source/_integrations/spc.markdown
@@ -15,6 +15,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
Home Assistant has support to integrate your [Vanderbilt SPC](https://www.spcsupportinfo.com/SPCConnectPro/) alarm panel and any connected motion, door, smoke and technical sensors.
diff --git a/source/_integrations/splunk.markdown b/source/_integrations/splunk.markdown
index ba2a75110b9..11ab25882a6 100644
--- a/source/_integrations/splunk.markdown
+++ b/source/_integrations/splunk.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `splunk` integration makes it possible to log all state changes to an external [Splunk](https://splunk.com/) database using Splunk's HTTP Event Collector (HEC) feature. You can either use this alone, or with the Home Assistant for Splunk [app](https://github.com/miniconfig/splunk-homeassistant). Since the HEC feature is new to Splunk, you will need to use at least version 6.3.
@@ -50,7 +51,7 @@ ssl:
verify_ssl:
description: Allows you do disable checking of the SSL certificate.
required: false
- default: false
+ default: true
type: boolean
name:
description: This parameter allows you to specify a friendly name to send to Splunk as the host, instead of using the name of the HEC.
diff --git a/source/_integrations/spotify.markdown b/source/_integrations/spotify.markdown
index 73d0e20c6ac..3c928749ef0 100644
--- a/source/_integrations/spotify.markdown
+++ b/source/_integrations/spotify.markdown
@@ -6,7 +6,6 @@ ha_category:
ha_release: 0.43
ha_iot_class: Cloud Polling
ha_config_flow: true
-ha_quality_scale: silver
ha_codeowners:
- '@frenck'
- '@joostlek'
diff --git a/source/_integrations/starlingbank.markdown b/source/_integrations/starlingbank.markdown
index f068d52e58e..221da11a477 100644
--- a/source/_integrations/starlingbank.markdown
+++ b/source/_integrations/starlingbank.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The Starling Bank sensor {% term integration %} allows you to monitor your account balance data as sensors in Home Assistant.
diff --git a/source/_integrations/starlink.markdown b/source/_integrations/starlink.markdown
index 5d9e7762437..3600e07a206 100644
--- a/source/_integrations/starlink.markdown
+++ b/source/_integrations/starlink.markdown
@@ -24,7 +24,6 @@ ha_platforms:
- switch
- time
ha_integration_type: integration
-ha_quality_scale: silver
---
The Starlink integration allows you to integrate your [Starlink](https://www.starlink.com/) into Home Assistant.
diff --git a/source/_integrations/startca.markdown b/source/_integrations/startca.markdown
index 0c911cecaf0..97790062df6 100644
--- a/source/_integrations/startca.markdown
+++ b/source/_integrations/startca.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
Integrate your [Start.ca](https://www.start.ca/) account information into Home Assistant.
diff --git a/source/_integrations/statistics.markdown b/source/_integrations/statistics.markdown
index b625227a149..421b506172c 100644
--- a/source/_integrations/statistics.markdown
+++ b/source/_integrations/statistics.markdown
@@ -15,7 +15,6 @@ ha_config_flow: true
ha_platforms:
- sensor
ha_integration_type: helper
-ha_config_flow: true
---
The `statistics` integration observes the state of a source sensor and provides aggregated statistical characteristics about its recent past. This integration can be useful in automation, for example, to trigger an action when the air humidity in the bathroom settles after a hot shower or when the number of brewed coffees over a day gets too high.
diff --git a/source/_integrations/statsd.markdown b/source/_integrations/statsd.markdown
index 007305b3445..79a2e46b691 100644
--- a/source/_integrations/statsd.markdown
+++ b/source/_integrations/statsd.markdown
@@ -10,6 +10,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `statsd` {% term integration %} makes it possible to transfer all state changes to an external [StatsD](https://github.com/etsy/statsd) instance.
diff --git a/source/_integrations/stiebel_eltron.markdown b/source/_integrations/stiebel_eltron.markdown
index e58d2a1af09..95b6078c2e6 100644
--- a/source/_integrations/stiebel_eltron.markdown
+++ b/source/_integrations/stiebel_eltron.markdown
@@ -14,6 +14,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `stiebel_eltron` {% term integration %} lets you control integral ventilation or heat pump units of [STIEBEL ELTRON](https://www.stiebel-eltron.com).
diff --git a/source/_integrations/suez_water.markdown b/source/_integrations/suez_water.markdown
index 15b4b09a748..8dd751463fe 100644
--- a/source/_integrations/suez_water.markdown
+++ b/source/_integrations/suez_water.markdown
@@ -39,3 +39,9 @@ Extra attributes of `Water usage yesterday` sensor:
- Highest monthly consumption
- Last year total consumption
- Current year total consumption
+
+## Remove integration
+
+This integration can be removed by following these steps:
+
+{% include integrations/remove_device_service.md %}
diff --git a/source/_integrations/supervisord.markdown b/source/_integrations/supervisord.markdown
index 9c13337418f..a3ed429fe14 100644
--- a/source/_integrations/supervisord.markdown
+++ b/source/_integrations/supervisord.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `supervisord` {% term integration %} allows you to track the states of [Supervisord](http://supervisord.org/).
diff --git a/source/_integrations/supla.markdown b/source/_integrations/supla.markdown
index e80c5bc3a13..9fe9e22f1bf 100644
--- a/source/_integrations/supla.markdown
+++ b/source/_integrations/supla.markdown
@@ -13,6 +13,7 @@ ha_platforms:
- cover
- switch
ha_integration_type: integration
+ha_quality_scale: legacy
---
The SUPLA integration allows you to use [SUPLA](https://supla.org/) devices in Home Assistant.
diff --git a/source/_integrations/swiss_hydrological_data.markdown b/source/_integrations/swiss_hydrological_data.markdown
index 9b5ab53ec15..82c950b5848 100644
--- a/source/_integrations/swiss_hydrological_data.markdown
+++ b/source/_integrations/swiss_hydrological_data.markdown
@@ -14,6 +14,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `swiss_hydrological_data` {% term integration %} will show you details (temperature, level, and discharge) of rivers and lakes in Switzerland.
diff --git a/source/_integrations/swiss_public_transport.markdown b/source/_integrations/swiss_public_transport.markdown
index e2835e1ae3b..8781bba9520 100644
--- a/source/_integrations/swiss_public_transport.markdown
+++ b/source/_integrations/swiss_public_transport.markdown
@@ -21,11 +21,11 @@ The [Swiss public transport API](https://transport.opendata.ch/) only allows 100
{% configuration_basic %}
Start station:
- description: "The departure station for the start of the connection (e.g., 'Zürich HB')"
+ description: "The departure station for the start of the connection (e.g., `Zürich HB`)"
End station:
- description: "The arrival station for the end of the connection (e.g., 'Geneva')"
+ description: "The arrival station for the end of the connection (e.g., `Geneva`)"
Via stations:
- description: "List of up to 5 via stations (e.g., 'Bern, Lausanne')"
+ description: "List of up to 5 via stations (e.g., `Bern`, `Lausanne`)"
{% endconfiguration_basic %}
Use the [Stationboard](https://transport.opendata.ch/examples/stationboard.html) to find exact station names.
@@ -95,8 +95,8 @@ Fetch the connections for a specific instance.
{% include common-tasks/define_custom_polling.md %}
-## Remove integration
+## Removing the integration
-This integration follows standard integration removal, no extra steps are required.
+This integration follows standard integration removal. No extra steps are required.
{% include integrations/remove_device_service.md %}
diff --git a/source/_integrations/swisscom.markdown b/source/_integrations/swisscom.markdown
index 7e6ac5557fb..3e898680e8e 100644
--- a/source/_integrations/swisscom.markdown
+++ b/source/_integrations/swisscom.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `swisscom` {% term integration %} offers presence detection by looking at connected devices to an [Internet-Box](https://www.swisscom.ch/en/residential/help/device/internet-router.html) router from [Swisscom](https://www.swisscom.ch) which is an Internet provider in Switzerland.
diff --git a/source/_integrations/switch.template.markdown b/source/_integrations/switch.template.markdown
index 307ca316240..e007966275a 100644
--- a/source/_integrations/switch.template.markdown
+++ b/source/_integrations/switch.template.markdown
@@ -255,7 +255,7 @@ switch:
### Change The Entity Picture
-This example shows how to change the entity picture based on the day/night cycle.
+This example shows how to change the entity picture based on the state of the garage door.
{% raw %}
diff --git a/source/_integrations/switch_as_x.markdown b/source/_integrations/switch_as_x.markdown
index cb8a0e6cd8f..269ff53526f 100644
--- a/source/_integrations/switch_as_x.markdown
+++ b/source/_integrations/switch_as_x.markdown
@@ -39,6 +39,7 @@ Using the **Change device type of a switch** helper integration, you can convert
entity types that best matches your use case.
{% include integrations/config_flow.md name="Switch as X" %}
+
{% configuration_basic %}
Switch entity:
description: The switch entity you want to convert into something else.
diff --git a/source/_integrations/switchbot.markdown b/source/_integrations/switchbot.markdown
index 60921459d41..9e6f2e2aa00 100644
--- a/source/_integrations/switchbot.markdown
+++ b/source/_integrations/switchbot.markdown
@@ -166,12 +166,13 @@ cover:
The SwitchBot integration will automatically discover devices once the [Bluetooth](/integrations/bluetooth) integration is enabled and functional.
-{% configuration_basic %}
-"Config flow could not be loaded":
- description: Possible custom integration conflict, using a different version of PySwitchbot; Try uninstalling the custom integration.
-"No unconfigured devices found":
- description: Make sure your devices are powered on and are in range.
-{% endconfiguration_basic %}
+{% details "Config flow could not be loaded" %}
+Possible custom integration conflict, using a different version of PySwitchbot; Try uninstalling the custom integration.
+{% enddetails %}
+
+{% details "No unconfigured devices found" %}
+Make sure your devices are powered on and are in range.
+{% enddetails %}
### Slow connection times
diff --git a/source/_integrations/switchbot_cloud.markdown b/source/_integrations/switchbot_cloud.markdown
index a6fbfc81e30..6ed774ad077 100644
--- a/source/_integrations/switchbot_cloud.markdown
+++ b/source/_integrations/switchbot_cloud.markdown
@@ -3,10 +3,10 @@ title: SwitchBot Cloud
description: Instructions on how to set up SwitchBot Devices.
ha_category:
- Hub
+ - Lock
- Plug
- Remote
- Sensor
- - Lock
- Switch
- Vacuum
ha_release: '2023.10'
diff --git a/source/_integrations/switcher_kis.markdown b/source/_integrations/switcher_kis.markdown
index 1b06004c33f..98859cf0a12 100644
--- a/source/_integrations/switcher_kis.markdown
+++ b/source/_integrations/switcher_kis.markdown
@@ -21,7 +21,6 @@ ha_platforms:
- sensor
- switch
ha_config_flow: true
-ha_quality_scale: platinum
ha_integration_type: integration
---
diff --git a/source/_integrations/switchmate.markdown b/source/_integrations/switchmate.markdown
index 3ac095cabfc..67eecbce6de 100644
--- a/source/_integrations/switchmate.markdown
+++ b/source/_integrations/switchmate.markdown
@@ -12,6 +12,7 @@ ha_domain: switchmate
ha_platforms:
- switch
ha_integration_type: integration
+ha_quality_scale: legacy
---
This `Switchmate` switch platform allows you to control Switchmate [devices]( https://www.mysimplysmarthome.com/products/switchmate-switches/).
diff --git a/source/_integrations/syncthing.markdown b/source/_integrations/syncthing.markdown
index 295560a1aa5..e06ed4aabc9 100644
--- a/source/_integrations/syncthing.markdown
+++ b/source/_integrations/syncthing.markdown
@@ -6,7 +6,6 @@ ha_category:
- Sensor
ha_release: 2021.6
ha_iot_class: Local Polling
-ha_quality_scale: silver
ha_config_flow: true
ha_codeowners:
- '@zhulik'
diff --git a/source/_integrations/synology_chat.markdown b/source/_integrations/synology_chat.markdown
index bb0a16bddcb..fda6d0dbb5d 100644
--- a/source/_integrations/synology_chat.markdown
+++ b/source/_integrations/synology_chat.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `synology_chat` notification {% term integration %} allows you to deliver notifications to your [Synology Chat](https://www.synology.com/en-us/dsm/feature/chat) install as a Synology Chat bot.
diff --git a/source/_integrations/synology_srm.markdown b/source/_integrations/synology_srm.markdown
index 86812afc83f..4573a28ac4b 100644
--- a/source/_integrations/synology_srm.markdown
+++ b/source/_integrations/synology_srm.markdown
@@ -14,6 +14,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
This {% term integration %} allows you to detect presence by looking at connected devices to a [Synology SRM](https://www.synology.com/srm) router.
diff --git a/source/_integrations/syslog.markdown b/source/_integrations/syslog.markdown
index 253c2564a4e..b453edfc478 100644
--- a/source/_integrations/syslog.markdown
+++ b/source/_integrations/syslog.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `syslog` {% term integration %} allows you to deliver notifications from Home Assistant to the local syslog.
diff --git a/source/_integrations/system_bridge.markdown b/source/_integrations/system_bridge.markdown
index 1b4e131a427..9b5ccaf49c2 100644
--- a/source/_integrations/system_bridge.markdown
+++ b/source/_integrations/system_bridge.markdown
@@ -11,7 +11,6 @@ ha_config_flow: true
ha_codeowners:
- '@timmo001'
ha_domain: system_bridge
-ha_quality_scale: silver
ha_platforms:
- binary_sensor
- media_player
diff --git a/source/_integrations/tailscale.markdown b/source/_integrations/tailscale.markdown
index 870078a3ba7..ce1babde93d 100644
--- a/source/_integrations/tailscale.markdown
+++ b/source/_integrations/tailscale.markdown
@@ -15,7 +15,6 @@ ha_platforms:
- binary_sensor
- diagnostics
- sensor
-ha_quality_scale: platinum
ha_integration_type: hub
---
diff --git a/source/_integrations/tailwind.markdown b/source/_integrations/tailwind.markdown
index cfba164ecfc..d9f297e6ad2 100644
--- a/source/_integrations/tailwind.markdown
+++ b/source/_integrations/tailwind.markdown
@@ -17,7 +17,6 @@ ha_platforms:
- diagnostics
- number
ha_integration_type: device
-ha_quality_scale: platinum
ha_dhcp: true
---
diff --git a/source/_integrations/tank_utility.markdown b/source/_integrations/tank_utility.markdown
index 47925d4186f..57d5f4e1d0c 100644
--- a/source/_integrations/tank_utility.markdown
+++ b/source/_integrations/tank_utility.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
Add [Tank Utility](https://www.tankutility.com/) propane tank monitors to Home Assistant.
diff --git a/source/_integrations/tankerkoenig.markdown b/source/_integrations/tankerkoenig.markdown
index a13e991a25f..8c3a7c2709e 100755
--- a/source/_integrations/tankerkoenig.markdown
+++ b/source/_integrations/tankerkoenig.markdown
@@ -17,7 +17,6 @@ ha_platforms:
- sensor
ha_config_flow: true
ha_integration_type: integration
-ha_quality_scale: platinum
---
The `tankerkoenig` platform allows you to monitor the fuel prices with [tankerkoenig.de](https://www.tankerkoenig.de/) from within Home Assistant and setup automations based on the information.
diff --git a/source/_integrations/tapsaff.markdown b/source/_integrations/tapsaff.markdown
index 0b7ece0c31b..9379c401a3c 100644
--- a/source/_integrations/tapsaff.markdown
+++ b/source/_integrations/tapsaff.markdown
@@ -14,6 +14,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `tapsaff` binary sensor {% term integration %} provides the 'Taps Aff' status for a given location within the UK using [Taps Aff](https://www.taps-aff.co.uk/).
diff --git a/source/_integrations/tcp.markdown b/source/_integrations/tcp.markdown
index 750b573618d..9e05b366df8 100644
--- a/source/_integrations/tcp.markdown
+++ b/source/_integrations/tcp.markdown
@@ -14,6 +14,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The TCP {% term integration %} allows the integration of some services for which a specific Home Assistant integration does not exist. If the service communicates over a TCP socket with a simple request/reply mechanism then the chances are that this integration will allow integration with it.
diff --git a/source/_integrations/technove.markdown b/source/_integrations/technove.markdown
index f524bae9633..ff82a975bec 100644
--- a/source/_integrations/technove.markdown
+++ b/source/_integrations/technove.markdown
@@ -17,7 +17,6 @@ ha_platforms:
- sensor
- switch
ha_integration_type: device
-ha_quality_scale: platinum
---
The TechnoVE integration provides connectivity with TechnoVE Smart Charging Station through the station local API.
diff --git a/source/_integrations/ted5000.markdown b/source/_integrations/ted5000.markdown
index 8a2a8a4e0bf..8c6e290e518 100644
--- a/source/_integrations/ted5000.markdown
+++ b/source/_integrations/ted5000.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `ted 5000` monitors electricity consumption/production by connecting to the [TED](https://www.theenergydetective.com/) gateway, itself connected to one or several Measuring Transmitting Units (MTU). The platform creates up to two sensors per MTU, one for Wattage the other for Voltage.
diff --git a/source/_integrations/tedee.markdown b/source/_integrations/tedee.markdown
index 3b88f58cc55..0c254a7385b 100644
--- a/source/_integrations/tedee.markdown
+++ b/source/_integrations/tedee.markdown
@@ -40,12 +40,8 @@ The integration will try to configure webhooks to receive near-real-time push up
{% configuration_basic %}
Host:
description: "The IP address of your bridge. You can find it in your router or in the Tedee app under **Bridge Settings** -> **Local API**."
- required: false
- type: string
Local Access Token:
description: "The local access token for your bridge. You can find it in the Tedee app under **Bridge Settings** -> **Local API**."
- required: false
- type: string
{% endconfiguration_basic %}
## Supported devices
@@ -110,9 +106,9 @@ This integration only supports functionality that is available locally. This mea
- Updates
- Key pads
-## Remove integration
+## Removing the integration
-This integration follows standard integration removal, no extra steps are required.
+This integration follows standard integration removal. No extra steps are required.
{% include integrations/remove_device_service.md %}
diff --git a/source/_integrations/telegram.markdown b/source/_integrations/telegram.markdown
index 53030077bcd..715d39c560b 100644
--- a/source/_integrations/telegram.markdown
+++ b/source/_integrations/telegram.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `telegram` {% term integration %} uses [Telegram](https://www.telegram.org) to deliver notifications from Home Assistant to your Telegram application(s).
diff --git a/source/_integrations/telegram_bot.markdown b/source/_integrations/telegram_bot.markdown
index 329ee348122..3c66303649f 100644
--- a/source/_integrations/telegram_bot.markdown
+++ b/source/_integrations/telegram_bot.markdown
@@ -7,6 +7,7 @@ ha_release: 0.42
ha_iot_class: Cloud Push
ha_domain: telegram_bot
ha_integration_type: integration
+ha_quality_scale: legacy
---
Use Telegram on your mobile or desktop device to send and receive messages or commands to/from your Home Assistant.
diff --git a/source/_integrations/tellduslive.markdown b/source/_integrations/tellduslive.markdown
index d25ec1648c6..648223416c6 100644
--- a/source/_integrations/tellduslive.markdown
+++ b/source/_integrations/tellduslive.markdown
@@ -11,7 +11,6 @@ ha_category:
ha_release: 0.11
ha_config_flow: true
ha_iot_class: Cloud Polling
-ha_quality_scale: silver
ha_codeowners:
- '@fredrike'
ha_domain: tellduslive
diff --git a/source/_integrations/tellstick.markdown b/source/_integrations/tellstick.markdown
index 7b2303e9fbd..b2378a1484b 100644
--- a/source/_integrations/tellstick.markdown
+++ b/source/_integrations/tellstick.markdown
@@ -19,6 +19,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `tellstick` {% term integration %} integrates [TellStick][tellstick-gateway] devices into Home Assistant. This integration allows users to add switches, lights, and sensors which are communicating with 433 MHz. There are a number of vendors (Capidi Elro, Intertechno, Nexa, Proove, Sartano, and Viking) who are selling products that work with TellStick. For more details, please check the TellStick [protocol list](http://developer.telldus.com/wiki/TellStick_conf).
diff --git a/source/_integrations/telnet.markdown b/source/_integrations/telnet.markdown
index ddbd13a1a5f..2440d7b88ab 100644
--- a/source/_integrations/telnet.markdown
+++ b/source/_integrations/telnet.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `telnet` switch {% term integration %} allows you to control devices with telnet commands.
diff --git a/source/_integrations/temper.markdown b/source/_integrations/temper.markdown
index 4efd31c9263..fdb12ddf43a 100644
--- a/source/_integrations/temper.markdown
+++ b/source/_integrations/temper.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
This `temper` sensor {% term integration %} allows you to get the current temperature from a TEMPer device.
diff --git a/source/_integrations/template.markdown b/source/_integrations/template.markdown
index 4d11c34ddcb..a4fed8e1ece 100644
--- a/source/_integrations/template.markdown
+++ b/source/_integrations/template.markdown
@@ -14,7 +14,6 @@ ha_iot_class: Local Push
ha_quality_scale: internal
ha_codeowners:
- '@PhracturedBlue'
- - '@tetienne'
- '@home-assistant/core'
ha_domain: template
ha_platforms:
@@ -126,6 +125,8 @@ template:
{% endraw %}
+### Configuration reference
+
{% configuration %}
trigger:
description: Define an automation trigger to update the entities. Optional. If omitted will update based on referenced entities. [See trigger documentation](/docs/automation/trigger).
diff --git a/source/_integrations/tensorflow.markdown b/source/_integrations/tensorflow.markdown
index 53294479cd7..ee4969ef617 100644
--- a/source/_integrations/tensorflow.markdown
+++ b/source/_integrations/tensorflow.markdown
@@ -10,6 +10,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The TensorFlow image processing {% term integration %} allows you to detect and recognize objects in a camera image using [TensorFlow](https://www.tensorflow.org/). The state of the entity is the number of objects detected, and recognized objects are listed in the `summary` attribute along with quantity. The `matches` attribute provides the confidence `score` for recognition and the bounding `box` of the object for each detection category.
diff --git a/source/_integrations/tesla_fleet.markdown b/source/_integrations/tesla_fleet.markdown
index 65f08a5816b..21dd41eb390 100644
--- a/source/_integrations/tesla_fleet.markdown
+++ b/source/_integrations/tesla_fleet.markdown
@@ -33,7 +33,6 @@ ha_platforms:
- select
- sensor
- switch
-ha_quality_scale: gold
ha_integration_type: integration
---
diff --git a/source/_integrations/teslemetry.markdown b/source/_integrations/teslemetry.markdown
index 364d5070d77..49e74f1b850 100644
--- a/source/_integrations/teslemetry.markdown
+++ b/source/_integrations/teslemetry.markdown
@@ -21,7 +21,6 @@ ha_config_flow: true
ha_codeowners:
- '@Bre77'
ha_domain: teslemetry
-ha_quality_scale: platinum
ha_platforms:
- binary_sensor
- button
diff --git a/source/_integrations/tessie.markdown b/source/_integrations/tessie.markdown
index 913ca0c17f8..2400b087c46 100644
--- a/source/_integrations/tessie.markdown
+++ b/source/_integrations/tessie.markdown
@@ -34,7 +34,6 @@ ha_platforms:
- switch
- update
ha_integration_type: integration
-ha_quality_scale: platinum
---
The Tessie integration exposes various commands and sensors from the Tesla vehicles and energy products connected to your [Tessie](https://tessie.com/) subscription.
diff --git a/source/_integrations/tfiac.markdown b/source/_integrations/tfiac.markdown
index 60e8b51135a..1cbdb909758 100644
--- a/source/_integrations/tfiac.markdown
+++ b/source/_integrations/tfiac.markdown
@@ -15,6 +15,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `tfiac` {% term integration %} integrates several vendors air conditioning systems, that uses the Tfiac mobile app, into Home Assistant. App currently available at [Play Store](https://play.google.com/store/apps/details?id=com.tcl.export) and [App Store](https://itunes.apple.com/app/tfiac/id1059938398).
diff --git a/source/_integrations/thermoworks_smoke.markdown b/source/_integrations/thermoworks_smoke.markdown
index 1b5488a96b4..05c72b52188 100644
--- a/source/_integrations/thermoworks_smoke.markdown
+++ b/source/_integrations/thermoworks_smoke.markdown
@@ -9,6 +9,7 @@ ha_domain: thermoworks_smoke
ha_platforms:
- sensor
ha_integration_type: integration
+ha_quality_scale: legacy
---
The `thermoworks_smoke` sensor platform pulls data for your [ThermoWorks Smoke Thermometer](https://www.thermoworks.com/Smoke).
diff --git a/source/_integrations/thingspeak.markdown b/source/_integrations/thingspeak.markdown
index e8171cbf885..875578b5a7f 100644
--- a/source/_integrations/thingspeak.markdown
+++ b/source/_integrations/thingspeak.markdown
@@ -7,6 +7,7 @@ ha_iot_class: Cloud Push
ha_release: 0.32
ha_domain: thingspeak
ha_integration_type: integration
+ha_quality_scale: legacy
---
The `thingspeak` integrations makes Home Assistant communicate with the [ThingSpeak API](https://thingspeak.com/).
diff --git a/source/_integrations/thinkingcleaner.markdown b/source/_integrations/thinkingcleaner.markdown
index e008060e9d3..385583b42d4 100644
--- a/source/_integrations/thinkingcleaner.markdown
+++ b/source/_integrations/thinkingcleaner.markdown
@@ -11,6 +11,7 @@ ha_platforms:
- sensor
- switch
ha_integration_type: integration
+ha_quality_scale: legacy
---
There is currently support for the following device types within Home Assistant:
diff --git a/source/_integrations/thomson.markdown b/source/_integrations/thomson.markdown
index d7009388d8f..5b08f356cc6 100644
--- a/source/_integrations/thomson.markdown
+++ b/source/_integrations/thomson.markdown
@@ -9,6 +9,7 @@ ha_iot_class: Local Polling
ha_platforms:
- device_tracker
ha_integration_type: integration
+ha_quality_scale: legacy
---
Thomson produced networking equipment (under the brand name SpeedTouch) till 2010 and was then renamed to Technicolor.
diff --git a/source/_integrations/threshold.markdown b/source/_integrations/threshold.markdown
index 28d12c9a9b0..3c4c2d0325c 100644
--- a/source/_integrations/threshold.markdown
+++ b/source/_integrations/threshold.markdown
@@ -20,6 +20,7 @@ The threshold integration observes the state of another sensor. If the value is
If the sensor is configured with no hysteresis and the sensor value is equal to the threshold, the sensor is turned off since it is not upper or lower with respect to the threshold.
{% include integrations/config_flow.md %}
+
{% configuration_basic %}
Name:
description: The name the sensor should have. You can change it again later.
@@ -108,7 +109,9 @@ sensor:
name: temperature derivative
time_window: 00:05:00
binary_sensor:
- - platform: threshold # will switch state not at 0°C/min but 0.1°C/min or -0.1°C/min depending on the current state of the sensor, respectively
+ - platform: threshold # will switch state not at 0°C/min but
+ # will switch on when value rises above 0.1°C/min
+ # will switch off when value sinks below -0.1°C/min
entity_id: sensor.temperature_derivative
upper: 0
hysteresis: 0.1 # sensor
diff --git a/source/_integrations/tibber.markdown b/source/_integrations/tibber.markdown
index fa01b4d7fdf..91b245cb05a 100644
--- a/source/_integrations/tibber.markdown
+++ b/source/_integrations/tibber.markdown
@@ -7,7 +7,6 @@ ha_category:
- Sensor
ha_release: 0.8
ha_iot_class: Cloud Polling
-ha_quality_scale: silver
ha_codeowners:
- '@danielhiversen'
ha_domain: tibber
diff --git a/source/_integrations/tikteck.markdown b/source/_integrations/tikteck.markdown
index 1234327ea0b..1775063f54c 100644
--- a/source/_integrations/tikteck.markdown
+++ b/source/_integrations/tikteck.markdown
@@ -9,6 +9,7 @@ ha_domain: tikteck
ha_platforms:
- light
ha_integration_type: integration
+ha_quality_scale: legacy
---
Support for the Bluetooth smart bulb from [Tikteck](https://www.tikteck.com/). To enable these lights, add the following lines to your {% term "`configuration.yaml`" %} file:
diff --git a/source/_integrations/tmb.markdown b/source/_integrations/tmb.markdown
index 1b70653784d..f1cce9dbfe7 100644
--- a/source/_integrations/tmb.markdown
+++ b/source/_integrations/tmb.markdown
@@ -11,6 +11,7 @@ ha_domain: tmb
ha_platforms:
- sensor
ha_integration_type: integration
+ha_quality_scale: legacy
---
This sensor will provide you the remaining time, in minutes, for the next bus in a specific stop by using the [iBus service](https://www.tmb.cat/en/barcelona/tmb-ibus).
diff --git a/source/_integrations/tod.markdown b/source/_integrations/tod.markdown
index 57e458ef019..29ea8a9cb03 100644
--- a/source/_integrations/tod.markdown
+++ b/source/_integrations/tod.markdown
@@ -17,6 +17,7 @@ ha_integration_type: helper
The Times of the Day integration provides a binary sensor that gets its values by checking if the current time is within defined time ranges.
{% include integrations/config_flow.md %}
+
{% configuration_basic %}
Name:
description: The name the binary sensor should have. This can be changed later.
diff --git a/source/_integrations/tomato.markdown b/source/_integrations/tomato.markdown
index 300986e4005..693798a28cd 100644
--- a/source/_integrations/tomato.markdown
+++ b/source/_integrations/tomato.markdown
@@ -9,6 +9,7 @@ ha_iot_class: Local Polling
ha_platforms:
- device_tracker
ha_integration_type: integration
+ha_quality_scale: legacy
---
The `tomato` device tracker integration allows one to tracker devices which are
diff --git a/source/_integrations/torque.markdown b/source/_integrations/torque.markdown
index f446f1db1b6..5b0458cd855 100644
--- a/source/_integrations/torque.markdown
+++ b/source/_integrations/torque.markdown
@@ -9,6 +9,7 @@ ha_domain: torque
ha_platforms:
- sensor
ha_integration_type: integration
+ha_quality_scale: legacy
---
The `torque` platform will allow you to monitor [Torque](https://torque-bhp.com/) data relayed from a Bluetooth OBD2 stick via the Torque mobile application.
diff --git a/source/_integrations/touchline.markdown b/source/_integrations/touchline.markdown
index 0f2dc45df46..3155f5b3b5f 100644
--- a/source/_integrations/touchline.markdown
+++ b/source/_integrations/touchline.markdown
@@ -9,6 +9,7 @@ ha_domain: touchline
ha_platforms:
- climate
ha_integration_type: integration
+ha_quality_scale: legacy
---
The `touchline` climate platform let you control [ROTH Touchline](https://www.roth-uk.com/en/roth-touchline.htm) floor heating thermostats from Roth.
diff --git a/source/_integrations/tplink.markdown b/source/_integrations/tplink.markdown
index 3fd0f30ba83..7dd35bdeea7 100644
--- a/source/_integrations/tplink.markdown
+++ b/source/_integrations/tplink.markdown
@@ -34,7 +34,6 @@ ha_platforms:
- siren
- switch
ha_dhcp: true
-ha_quality_scale: platinum
ha_integration_type: integration
---
@@ -189,3 +188,9 @@ data:
spread: 1
direction: 1
```
+
+## Removing the integration
+
+This integration follows standard integration removal. No extra steps are required.
+
+{% include integrations/remove_device_service.md %}
diff --git a/source/_integrations/tplink_lte.markdown b/source/_integrations/tplink_lte.markdown
index 89e99f6d3c9..727b70e9081 100644
--- a/source/_integrations/tplink_lte.markdown
+++ b/source/_integrations/tplink_lte.markdown
@@ -10,6 +10,7 @@ ha_domain: tplink_lte
ha_platforms:
- notify
ha_integration_type: integration
+ha_quality_scale: legacy
---
The TP-Link LTE integration for Home Assistant makes it possible to send SMS's from the TP-Link LTE router. Phone numbers have to be pre-defined as part of the YAML configuration, and each phone number will turn up as additional notify action in Home Assistant. The integration adds a new notify action for each adds a notification action to Home Assistant that can be used to send SMSs provides a notification action that will send an SMS. Tested only with TL-MR6400 v4.
diff --git a/source/_integrations/traccar_server.markdown b/source/_integrations/traccar_server.markdown
index 83c70210b64..a1428ef7cd1 100644
--- a/source/_integrations/traccar_server.markdown
+++ b/source/_integrations/traccar_server.markdown
@@ -40,7 +40,6 @@ Examples:
All events will also have the following data:
{% configuration_basic %}
-
Device ID:
description: (`device_traccar_id`) This will be the device ID that the event is related to.
Device name:
@@ -51,7 +50,6 @@ Server time:
description: (`serverTime`) This will be the time the event was received by the Traccar Server.
Attributes:
description: (`attributes`) This will be a dictionary of attributes related to the event.
-
{% endconfiguration_basic %}
{% details "Example" %}
diff --git a/source/_integrations/transport_nsw.markdown b/source/_integrations/transport_nsw.markdown
index 399165b7f57..035ce938c29 100644
--- a/source/_integrations/transport_nsw.markdown
+++ b/source/_integrations/transport_nsw.markdown
@@ -9,6 +9,7 @@ ha_domain: transport_nsw
ha_platforms:
- sensor
ha_integration_type: integration
+ha_quality_scale: legacy
---
The `transport_nsw` sensor will give you the time until the next departure from a Transport NSW stop for bus, train, light rail or ferry.
diff --git a/source/_integrations/travisci.markdown b/source/_integrations/travisci.markdown
index 7886cb21906..3ca2c80d6f0 100644
--- a/source/_integrations/travisci.markdown
+++ b/source/_integrations/travisci.markdown
@@ -9,6 +9,7 @@ ha_domain: travisci
ha_platforms:
- sensor
ha_integration_type: integration
+ha_quality_scale: legacy
---
With this sensor platform, you will be able to integrate the test build results reported by [Travis-CI](https://travis-ci.org/) working within Home Assistant.
diff --git a/source/_integrations/trend.markdown b/source/_integrations/trend.markdown
index dca6ef56421..9a942f0c78b 100644
--- a/source/_integrations/trend.markdown
+++ b/source/_integrations/trend.markdown
@@ -24,6 +24,7 @@ Thus it can take some time to show an accurate state. It can be useful
as part of automations, where you want to base an action on a trend.
{% include integrations/config_flow.md %}
+
{% configuration_basic %}
Name:
description: The name the sensor should have. You can change it again later.
diff --git a/source/_integrations/twentemilieu.markdown b/source/_integrations/twentemilieu.markdown
index b233d5351ff..7f7ee6468db 100644
--- a/source/_integrations/twentemilieu.markdown
+++ b/source/_integrations/twentemilieu.markdown
@@ -15,26 +15,126 @@ ha_platforms:
- calendar
- diagnostics
- sensor
-ha_quality_scale: platinum
ha_integration_type: service
---
-The Twente Milieu integration allows you to track the next scheduled waste
-pickups by Twente Milieu for each of the different waste types.
+The Twente Milieu {% term integration %} enables you to monitor the upcoming
+waste collection schedules provided by
+[Twente Milieu](https://www.twentemilieu.nl/) for various waste categories.
+This integration helps you stay informed about the next pickup dates for
+different types of waste, ensuring you never miss a collection day.
{% include integrations/config_flow.md %}
-## Calendar
+### Configuration parameters
+
+{% configuration_basic %}
+Postal code:
+ description: The postal code of the address, for example "7500AA".
+House number:
+ description: The house number of the address.
+House letter/additional:
+ description: The house letter or additional information of the address.
+{% endconfiguration_basic %}
+
+## Use cases
+
+The integration provides sensors for the next waste pickup dates. You can use
+this information to create automations, for example, to remind you to put out
+the waste bins the night before the pickup.
+
+Besides the sensors, the integration also provides a calendar to Home Assistant.
+Meaning you can view all upcoming waste pickups in the calendar dashboard.
+
+## Supported functionality
+
+### Calendar
The integration provides a calendar to Home Assistant. You can view
all upcoming waste pickups in the calender dashboard.
-## Sensors
+### Sensors
-This integration provides sensors for the following waste pickup dates from Twente Milieu:
+This integration provides sensors for the following waste pickup dates from
+Twente Milieu:
- Next plastic waste pickup date.
- Next organic waste pickup date.
- Next paper waste pickup date.
- Next non-recyclable waste pickup date.
- Next Christmas Tree pickup date.
+
+## Data updates
+
+The integration will update its information by polling Twente Milieu every
+hour. This ensures the data in Home Assistant is up to date.
+
+## Actions
+
+This integration does not provide additional actions.
+
+## Examples
+
+The following examples show how to use the Twente Milieu integration in Home
+Assistant automations.
+
+### Send notification the evening before the garbage pickup day
+
+The following example sends a notification to your mobile device the evening
+before the garbage pickup day. This ensures your bins are out on time.
+
+```yaml
+automation:
+ - alias: "Reminder to put out the bin"
+ triggers:
+ - trigger: calendar
+ event: start
+ entity_id: calendar.twente_milieu
+ offset: "-6:00:00"
+
+ actions:
+ - action: notify.mobile_app_your_device
+ data:
+ title: "Garbage day!"
+ message: >
+ Reminder: Tomorrow is {{ trigger.calendar_event.summary }} pickup
+ day. Don't forget to put out the bin!
+```
+
+### Send notification at the end of day to haul in the empty bin again
+
+The following example sends a notification to your mobile device at the end of
+the day to remind you to haul in the empty bin again.
+
+```yaml
+automation:
+ - alias: "Reminder to haul in the bin"
+ triggers:
+ - trigger: calendar
+ event: end
+ entity_id: calendar.twente_milieu
+ offset: "-4:00:00"
+
+ actions:
+ - action: notify.mobile_app_your_device
+ data:
+ title: "Haul in the bin!"
+ message: >
+ Reminder Garbage has been picked up today. Don't forget to haul in
+ the bin!
+```
+
+## Known limitations
+
+There are no known limitations for this integration.
+
+## Troubleshooting
+
+There are no commonly known issues with this integration.
+
+## Removing the integration
+
+This integration follows standard integration removal. No extra steps are
+required.
+
+{% include integrations/remove_device_service.md %}
diff --git a/source/_integrations/twilio_call.markdown b/source/_integrations/twilio_call.markdown
index d39677cfacd..301cf597e37 100644
--- a/source/_integrations/twilio_call.markdown
+++ b/source/_integrations/twilio_call.markdown
@@ -9,6 +9,7 @@ ha_iot_class: Cloud Push
ha_platforms:
- notify
ha_integration_type: integration
+ha_quality_scale: legacy
---
The `twilio_call` notification platform enables sending notifications via Voice, powered by [Twilio](https://twilio.com).
diff --git a/source/_integrations/twilio_sms.markdown b/source/_integrations/twilio_sms.markdown
index 5850f113425..90d511e6fb4 100644
--- a/source/_integrations/twilio_sms.markdown
+++ b/source/_integrations/twilio_sms.markdown
@@ -9,6 +9,7 @@ ha_iot_class: Cloud Push
ha_platforms:
- notify
ha_integration_type: integration
+ha_quality_scale: legacy
---
The `twilio_sms` notification platform enables sending notifications via SMS, powered by [Twilio](https://twilio.com).
diff --git a/source/_integrations/twitter.markdown b/source/_integrations/twitter.markdown
index 485759ba514..dfb1a4a8e21 100644
--- a/source/_integrations/twitter.markdown
+++ b/source/_integrations/twitter.markdown
@@ -9,6 +9,7 @@ ha_iot_class: Cloud Push
ha_platforms:
- notify
ha_integration_type: integration
+ha_quality_scale: legacy
---
The `twitter` notification platform uses [X](https://twitter.com) to deliver notifications from Home Assistant.
diff --git a/source/_integrations/ubus.markdown b/source/_integrations/ubus.markdown
index 523308d0c41..c6f4a6c4dc8 100644
--- a/source/_integrations/ubus.markdown
+++ b/source/_integrations/ubus.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+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.
diff --git a/source/_integrations/uk_transport.markdown b/source/_integrations/uk_transport.markdown
index d9470de17c2..b8cea3a02bf 100644
--- a/source/_integrations/uk_transport.markdown
+++ b/source/_integrations/uk_transport.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `uk_transport` {% term integration %} will display the time in minutes until the next departure in a specified direction from of a configured train station or bus stop. The sensor uses [transportAPI](https://www.transportapi.com/) to query live departure data and requires a developer application ID and key which can be obtained [here](https://developer.transportapi.com/). The [free tier](https://www.transportapi.com/blog/2022/08/introducing-the-home-use-plan-for-transportapi/) allows 30 requests a day, which is sufficient for a single sensor refreshing every 48 minutes.
diff --git a/source/_integrations/unifi.markdown b/source/_integrations/unifi.markdown
index 35899099119..49c417ca237 100644
--- a/source/_integrations/unifi.markdown
+++ b/source/_integrations/unifi.markdown
@@ -11,7 +11,6 @@ ha_category:
ha_release: 0.81
ha_iot_class: Local Push
ha_config_flow: true
-ha_quality_scale: platinum
ha_codeowners:
- '@Kane610'
ha_domain: unifi
diff --git a/source/_integrations/unifi_direct.markdown b/source/_integrations/unifi_direct.markdown
index 2decfc3e17c..018d62e1d4e 100644
--- a/source/_integrations/unifi_direct.markdown
+++ b/source/_integrations/unifi_direct.markdown
@@ -14,6 +14,7 @@ ha_codeowners:
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
This {% term integration %} allows you to detect presence by looking at devices connected to a [UniFi AP](https://www.ui.com/products/#unifi). This device tracker differs from [Ubiquiti UniFi](/integrations/unifi) because it doesn't require the UniFi Network application.
diff --git a/source/_integrations/unifiled.markdown b/source/_integrations/unifiled.markdown
index 9141fede2f0..402a7646ba0 100644
--- a/source/_integrations/unifiled.markdown
+++ b/source/_integrations/unifiled.markdown
@@ -14,6 +14,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
[UniFi LED](https://unifi-led.ui.com/) by [Ubiquiti Networks, inc.](https://www.ui.com/) is a system of controller managed LED light panels and dimmers.
diff --git a/source/_integrations/unifiprotect.markdown b/source/_integrations/unifiprotect.markdown
index f6d04e2d0f8..f5d55f5d14b 100644
--- a/source/_integrations/unifiprotect.markdown
+++ b/source/_integrations/unifiprotect.markdown
@@ -37,6 +37,8 @@ ha_platforms:
- switch
- text
ha_integration_type: hub
+ha_codeowners:
+ - '@RaHehl'
---
The **UniFi Protect** {% term integration %} adds support for retrieving camera feeds and sensor data from a [UniFi Protect application](https://ui.com/camera-security) by [Ubiquiti Networks, inc.](https://www.ui.com/) that is running on a UniFi OS Console.
@@ -70,13 +72,13 @@ It is recommended you use the Administrator or a user with full read/write acces
but it is not required. The entities that are created will automatically adjust based on the permissions of the user you
use has.
-1. Login to your _Local Portal_ on your UniFi OS device, and click on _Users_. **Note**: This **must** be done from
- the UniFi OS by accessing it directly by IP address (i.e. _Local Portal_), not via `unifi.ui.com` or within the
- UniFi Protect app.
-2. Go to **Admins** from the left hand side menu or [IP address]/admins/users e.g. 192.168.1.1/admins/users.
-3. Click on **Add New Admin**.
-4. Select **Full Management** for the role. Uncheck **Allow Remote Access** and fill out the fields for your user.
-5. Click **Add** in the bottom right.
+1. Login to your _Local Portal_ on your UniFi OS device, and click on _Users_.
+**Note**: This **must** be done from the UniFi OS by accessing it directly by IP address (e.g. _192.168.1.1_), not via `unifi.ui.com` or within the UniFi Protect app.
+2. Go to **Admins & Users** from the left hand side menu and select the **Admins** tab or go to [IP address]/admins/ (e.g. _192.168.1.1/admins/_).
+3. Click on **+** in the top right corner and select **Add Admin**.
+4. Select **Restrict to local access only** and enter a new _username_ and _password_.
+5. Select **Full Management** for the _Protect_ role.
+6. Click **Add** in the bottom right.

@@ -364,6 +366,8 @@ conditions:
- condition: template
value_template: >
{% raw %}{{
+ not trigger.event.data.old_state.attributes.get('restored', false) and
+ not trigger.event.data.old_state.state == 'unavailable' and
trigger.event.data.new_state is not none and
trigger.event.data.new_state.attributes.event_type == 'scanned' and
trigger.event.data.new_state.attributes.nfc_id in ['ABCDEF1234', 'OTHER_ALLOWED_ID']
@@ -386,8 +390,40 @@ When processing NFC scans, always validate the scanned ID. Unknown NFC cards als
- **Event Attributes**:
- **event_type**: Either `identified` or `not_identified`
- **event_id**: A unique ID that identifies the fingerprint event.
- - **ulp_id**: The fingerprint ID used to identify the person. If no fingerprint match is found, the `ulp_id` will be empty and the `event_type` will be `not_identified`.
-- **Description**: This event is triggered when a fingerprint is scanned by a compatible device. If the fingerprint is recognized, it provides a `ulp_id`, which represents the fingerprint ID. If the fingerprint is not recognized, the `event_type` will be set to `not_identified`, and no `ulp_id` will be provided.
+ - **ulp_id**: The ID used to identify the person. If no fingerprint match is found, the `ulp_id` will be empty and the `event_type` will be `not_identified`.
+- **Description**: This event is triggered when a fingerprint is scanned by a compatible device. If the fingerprint is recognized, it provides a `ulp_id`, which represents the a internal user ID. If the fingerprint is not recognized, the `event_type` will be set to `not_identified`, and no `ulp_id` will be provided.
+
+#### Example G4 Doorbell Fingerprint Identified Automation
+
+```yaml
+alias: G4 Doorbell Fingerprint Identified Automation
+description: Automation that triggers when a fingerprint is successfully identified on the G4 Doorbell Pro
+trigger:
+ - platform: event
+ event_type: state_changed
+ event_data:
+ entity_id: event.g4_doorbell_pro_poe_fingerprint # Replace with your doorbell entity
+condition:
+ - condition: template
+ value_template: >
+ {% raw %}{{
+ not trigger.event.data.old_state.attributes.get('restored', false) and
+ not trigger.event.data.old_state.state == 'unavailable' and
+ trigger.event.data.new_state is not none and
+ trigger.event.data.new_state.attributes.event_type == 'identified' and
+ (trigger.event.data.new_state.attributes.ulp_id|default('')) != '' and
+ trigger.event.data.new_state.attributes.ulp_id in ['ALLOWED_ID1', 'ALLOWED_ID2']
+ }}{% endraw %}
+action:
+ - service: notify.mobile_app_your_device # Replace with your notification target
+ data:
+ {% raw %}message: "Fingerprint identified with ID: {{ trigger.event.data.new_state.attributes.ulp_id }}"{% endraw %}
+ title: "Fingerprint Scan Notification"
+```
+
+**Warning:**
+
+Similar to NFC, an event is triggered when a fingerprint is recognized and not recognized. However, unlike NFC, at the time of implementation, no fingerprint ID is included in the event if the fingerprint is unknown.
#### Example G4 Doorbell Fingerprint Identified Automation
diff --git a/source/_integrations/upc_connect.markdown b/source/_integrations/upc_connect.markdown
index 3138140f85c..bf6d15e4883 100644
--- a/source/_integrations/upc_connect.markdown
+++ b/source/_integrations/upc_connect.markdown
@@ -15,6 +15,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `upc_connect` {% term integration %} offers presence detection by looking at connected devices to a [Connect Box](https://www.upc.ch/en/internet/learn-about-internet/) from [Liberty Global](https://www.libertyglobal.com) (also known as UPC Cablecom in Switzerland) which is an Internet provider in Switzerland, Austria, the Netherlands (under Ziggo) and Hungary (under Vodafone).
diff --git a/source/_integrations/uptimerobot.markdown b/source/_integrations/uptimerobot.markdown
index e69de52cd11..d7f4ede7d4f 100644
--- a/source/_integrations/uptimerobot.markdown
+++ b/source/_integrations/uptimerobot.markdown
@@ -14,7 +14,6 @@ ha_platforms:
- diagnostics
- sensor
- switch
-ha_quality_scale: platinum
ha_config_flow: true
ha_integration_type: integration
---
diff --git a/source/_integrations/usgs_earthquakes_feed.markdown b/source/_integrations/usgs_earthquakes_feed.markdown
index 2c09b6fd270..227c084a2b7 100644
--- a/source/_integrations/usgs_earthquakes_feed.markdown
+++ b/source/_integrations/usgs_earthquakes_feed.markdown
@@ -14,6 +14,7 @@ ha_integration_type: service
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `usgs_earthquakes_feed` platform lets you integrate a GeoJSON feed provided by the [U.S. Geological Survey](https://earthquake.usgs.gov/) with information about seismic events like earthquakes. It retrieves incidents from a feed and shows information of those incidents filtered by distance to Home Assistant's location.
diff --git a/source/_integrations/uvc.markdown b/source/_integrations/uvc.markdown
index 997db67b53e..a427d88592a 100644
--- a/source/_integrations/uvc.markdown
+++ b/source/_integrations/uvc.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `uvc` camera {% term integration %} allows you to integrate [UniFi Video Camera (UVC)](https://www.ui.com/products/#unifivideo) into Home Assistant.
diff --git a/source/_integrations/vallox.markdown b/source/_integrations/vallox.markdown
index d3bd0da0d9a..f48dfb3d6c6 100644
--- a/source/_integrations/vallox.markdown
+++ b/source/_integrations/vallox.markdown
@@ -99,4 +99,4 @@ Set the profile, and optionally a duration for the profile to be active.
| Data attribute | Optional | Description |
|----------------|---------:|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| `profile` | no | Profile to set, one of `home`, `away`, `boost`, `fireplace`, or `extra`. |
-| `duration` | yes | Duration to activate the profile for; in minutes. `Integer` between 1 and 65535. Only applies to `boost`, `fireplace` or `extra` profiles. 65535 sets the profile without a timeout. |
\ No newline at end of file
+| `duration` | yes | Duration to activate the profile for; in minutes. `Integer` between 1 and 65535. Only applies to `boost`, `fireplace` or `extra` profiles. 65535 sets the profile without a timeout. |
diff --git a/source/_integrations/vasttrafik.markdown b/source/_integrations/vasttrafik.markdown
index e95f839e5d2..70c26556e71 100644
--- a/source/_integrations/vasttrafik.markdown
+++ b/source/_integrations/vasttrafik.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `vasttrafik` {% term integration %} will provide you traveling details for the larger Göteborg area in Sweden from the [Västtrafik](https://vasttrafik.se/) public transportation service.
diff --git a/source/_integrations/velbus.markdown b/source/_integrations/velbus.markdown
index 1e1ff9fa19c..b53ec748bca 100644
--- a/source/_integrations/velbus.markdown
+++ b/source/_integrations/velbus.markdown
@@ -31,18 +31,24 @@ ha_integration_type: hub
The **Velbus** {% term integration %} is used to control [Velbus](https://www.velbus.eu/?lang=en) modules. It supports the Velbus USB, Velbus serial and a TCP/IP gateway.
-The pushbutton LEDs of input modules are disabled by default. These can be enabled from the `Devices` panel in the `Configuration` page of the web interface.
{% include integrations/config_flow.md %}
-The port string used in the user interface or the configuration file can have 2 formats:
+### Configuration parameters
-- For a serial device: `/dev/ttyUSB00`
-- For a TCP/IP device: `127.0.0.1:3678`
-- For the VMBSIG module: `tls://192.168.1.9:27015`
+The port string used in the user interface or the configuration file can have different formats depending on the type of connection:
+
+
+- For a serial or USB devices: `/dev/ttyUSB00`
+- For a TCP/IP devices: `127.0.0.1:3678`
+- For Signum devices without authentication: `tls://192.168.1.9:27015`
+- For Signum devices with authentication: `tls://password@192.168.1.9:27015`
+
+{% note %}
+The pushbutton LEDs of input modules are disabled by default. These can be enabled from the **Devices** panel in the **Configuration** page of the web interface.
+{% endnote %}
## Actions
-
- `velbus.sync clock`: Synchronize Velbus time to local clock.
- `velbus.scan`: Scan the bus for new devices.
- `velbus.set_memo_text`: Show memo text on Velbus display modules.
@@ -99,8 +105,11 @@ Use this action when you make changes to your configuration via velbuslink.
| `interface` | no | The port used to connect to the bus (the same one used during configuration). |
| `address` | no | The module address in decimal format, which is displayed on the device list on the integration page, if provided the service will only clear the cache for this model, without an address, the full velbuscache will be cleared. |
+
## VMB7IN and the Energy dashboard
+The VMB7IN sensor can be integrated with Home Assistant's Energy dashboard to track your utility consumption.
+
In some cases, the VMB7IN sensor does not report what the counter is counting. If the counter is related to an energy device, everything will work out of the box.
But if the VMB7IN sensor is a water or gas counter, you will need to specify this in your configuration.yaml file.
@@ -115,6 +124,7 @@ The device_class attribute can have 2 values:
- gas: if the counter represents a gas meter
- water: if the counter represents a water meter
+
## Example automation
The Velbus {% term integration %} allows you to link a Velbus button (i.e., a button of a [VMBGPOD](https://www.velbus.eu/products/view/?id=416302&lang=en) module) to a controllable {% term entity %} of Home Assistant.
@@ -165,3 +175,12 @@ The actual linking can be realized by two automation rules. One rule to control
entity_id: light.led_push_button_10
```
+
+## Removing the integration
+
+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/venstar.markdown b/source/_integrations/venstar.markdown
index f65443755f8..02b395010fc 100644
--- a/source/_integrations/venstar.markdown
+++ b/source/_integrations/venstar.markdown
@@ -79,24 +79,13 @@ If the local API is successfully enabled on the thermostat, you should see some
{% configuration_basic %}
host:
- description: Address of your thermostat, e.g., 192.168.1.32.
- required: true
- type: string
+ description: Address of your thermostat, e.g., `192.168.1.32`.
username:
description: Username for the thermostat.
- required: false
- type: string
password:
description: Password for the thermostat.
- required: false
- type: string
pin:
description: Pin for Lockscreen (required if lock screen enabled)
- required: false
- type: string
ssl:
description: Whether to use SSL or not when communicating.
- required: false
- type: boolean
- default: false
{% endconfiguration_basic %}
diff --git a/source/_integrations/versasense.markdown b/source/_integrations/versasense.markdown
index b9de6bcbfa6..e14615d9e18 100644
--- a/source/_integrations/versasense.markdown
+++ b/source/_integrations/versasense.markdown
@@ -18,6 +18,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The **VersaSense** {% term integration %} supports the VersaSense Edge Gateway. The gateway is able to control hubs and their peripherals (sensors and actuators) in the mesh network.
diff --git a/source/_integrations/version.markdown b/source/_integrations/version.markdown
index 2c150d61478..2a9b4782141 100644
--- a/source/_integrations/version.markdown
+++ b/source/_integrations/version.markdown
@@ -27,21 +27,16 @@ The **Version** {% term integration %} can display the current Home Assistant Co
With this {% term integration %} you can select various sources to get a version from.
{% configuration_basic %}
- "Local installation":
- description: This will get the version you are currently running.
-
- "Home Assistant Versions":
- description: This will use the same source that are used by the Supervisor to check for updates based on the channel and image you choose.
-
- "Home Assistant Website":
- description: This will check the website you are reading this on to find the latest version.
-
- "Docker Hub":
- description: This will check the latest tag published to Docker Hub based on the channel and image you choose.
-
- "Python Package Index (PyPI)":
- description: This will check PyPI for the latest published package.
-
+Local installation:
+ description: This will get the version you are currently running.
+Home Assistant Versions:
+ description: This will use the same source that are used by the Supervisor to check for updates based on the channel and image you choose.
+Home Assistant Website:
+ description: This will check the website you are reading this on to find the latest version.
+Docker Hub:
+ description: This will check the latest tag published to Docker Hub based on the channel and image you choose.
+Python Package Index (PyPI):
+ description: This will check PyPI for the latest published package.
{% endconfiguration_basic %}
## Entities
diff --git a/source/_integrations/vesync.markdown b/source/_integrations/vesync.markdown
index dda689e0de3..897a8b9d471 100644
--- a/source/_integrations/vesync.markdown
+++ b/source/_integrations/vesync.markdown
@@ -23,7 +23,7 @@ ha_platforms:
ha_integration_type: integration
---
-The `**VeSync** {% term integration %} enables you to control smart switches and outlets connected to the VeSync App.
+The **VeSync** {% term integration %} enables you to control smart switches and outlets connected to the VeSync App.
The devices must be added to the VeSync App before this {% term integration %} can discover them.
diff --git a/source/_integrations/viaggiatreno.markdown b/source/_integrations/viaggiatreno.markdown
index e96cacca720..f45960ac5bc 100644
--- a/source/_integrations/viaggiatreno.markdown
+++ b/source/_integrations/viaggiatreno.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The **Trenitalia ViaggiaTreno** {% term integration %} will give you information about configured train ids and stations using the public [ViaggiaTreno](http://viaggiatreno.it) API.
diff --git a/source/_integrations/vicare.markdown b/source/_integrations/vicare.markdown
index 7829114cf1a..f03288982d3 100644
--- a/source/_integrations/vicare.markdown
+++ b/source/_integrations/vicare.markdown
@@ -48,12 +48,18 @@ It may take up to an hour for your new client to become active and usable. Other
### API limits
-The Viessmann API is rate-limited. If you exceed one of the limits below, you will be blocked for 24 hours:
+The Viessmann API is rate-limited. In the "Basic" (free) tier of their API plans, if you exceed one of the limits below, you will be blocked for 24 hours:
- 120 calls for a time window of 10 minutes
- 1450 calls for a time window of 24 hours
-The {% term integration %} polls the API every 60 seconds and will work within these limits. However, any additional requests to the API, for example, by setting the temperature via the integration but also by interacting with the ViCare app, count into those limits.
+For the paid API plans this limit increases to 3000 calls in 24 hours. The {% term integration %} polls the API every 60 seconds and will work within these limits. However, any additional requests to the API, for example, by setting the temperature via the integration and interacting with the ViCare app, count into those limits.
+
+{% important %}
+For any Viessmann API plan except the most expensive "Advanced" tier, Viessmann imposes certain limits on which APIs are accessible for end-user consumption. Unfortunately, this also affects APIs useful for smart home integrations, like controlling thermostats (TRVs) and climate sensors, which are only available in the "Advanced" plan API tier. In case you set up the integration with a lower-tier plan, TRVs and other smart home entities will not become accessible in your Home Assistant installation.
+
+Please consider providing feedback to Viessmann as described in [their FAQ](https://developer.viessmann.com/start/faq.html) "Where can I give feedback on the API?" in case you consider this as a limitation for your use-case.
+{% endimportant %}
{% note %}
If you have multiple Viessmann devices in Home Assistant, the limit is shared between them, meaning the poll interval is increased, and the values are less frequently updated!
diff --git a/source/_integrations/vivotek.markdown b/source/_integrations/vivotek.markdown
index 95ff695e816..90c36f0c2fe 100644
--- a/source/_integrations/vivotek.markdown
+++ b/source/_integrations/vivotek.markdown
@@ -14,6 +14,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The **VIVOTEK** camera {% term integration %} allows you to integrate a VIVOTEK IP camera into Home Assistant.
diff --git a/source/_integrations/vizio.markdown b/source/_integrations/vizio.markdown
index a2a24363cc1..642d0c3b312 100644
--- a/source/_integrations/vizio.markdown
+++ b/source/_integrations/vizio.markdown
@@ -6,7 +6,6 @@ ha_category:
ha_release: 0.49
ha_iot_class: Local Polling
ha_config_flow: true
-ha_quality_scale: platinum
ha_codeowners:
- '@raman325'
ha_domain: vizio
diff --git a/source/_integrations/vlc.markdown b/source/_integrations/vlc.markdown
index ac1462f1452..c167bb2dc53 100644
--- a/source/_integrations/vlc.markdown
+++ b/source/_integrations/vlc.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `vlc` platform allows you to control [VLC media player](https://www.videolan.org/vlc/index.html).
diff --git a/source/_integrations/vodafone_station.markdown b/source/_integrations/vodafone_station.markdown
index 3d01b3f5fe8..58f91b42846 100644
--- a/source/_integrations/vodafone_station.markdown
+++ b/source/_integrations/vodafone_station.markdown
@@ -18,7 +18,6 @@ ha_platforms:
- diagnostics
- sensor
ha_integration_type: hub
-ha_quality_scale: silver
---
The **Vodafone Station** {% term integration %} allows you to control your [Vodafone Station](https://www.vodafone.it/privati/area-supporto/assistenza-dispositivi/vodafone-station.html) based router.
diff --git a/source/_integrations/voicerss.markdown b/source/_integrations/voicerss.markdown
index e445dad8bb3..15eefff7dbe 100644
--- a/source/_integrations/voicerss.markdown
+++ b/source/_integrations/voicerss.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The **VoiceRSS** text-to-speech {% term integration %} uses [VoiceRSS](http://www.voicerss.org/) text-to-speech engine to read a text with natural sounding voices.
diff --git a/source/_integrations/volkszaehler.markdown b/source/_integrations/volkszaehler.markdown
index 34b68270da1..ab04c4bd946 100644
--- a/source/_integrations/volkszaehler.markdown
+++ b/source/_integrations/volkszaehler.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The **Volkszaehler** {% term integration %} is consuming the system information provided by the [Volkszaehler](https://wiki.volkszaehler.org/) API.
diff --git a/source/_integrations/vulcan.markdown b/source/_integrations/vulcan.markdown
index 3d4a4183747..dfe9ac50c47 100644
--- a/source/_integrations/vulcan.markdown
+++ b/source/_integrations/vulcan.markdown
@@ -9,7 +9,6 @@ ha_domain: vulcan
ha_codeowners:
- '@Antoni-Czaplicki'
ha_config_flow: true
-ha_quality_scale: silver
ha_platforms:
- calendar
ha_integration_type: integration
diff --git a/source/_integrations/vultr.markdown b/source/_integrations/vultr.markdown
index 62f370a35b9..4c33f321c2a 100644
--- a/source/_integrations/vultr.markdown
+++ b/source/_integrations/vultr.markdown
@@ -17,6 +17,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The **Vultr** {% term integration %} allows you to access information about and interact with your [Vultr](https://www.vultr.com) subscriptions (Virtual Private Servers) from Home Assistant.
diff --git a/source/_integrations/w800rf32.markdown b/source/_integrations/w800rf32.markdown
index 6a339d39ff2..9fd78dc50d1 100644
--- a/source/_integrations/w800rf32.markdown
+++ b/source/_integrations/w800rf32.markdown
@@ -13,6 +13,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The **WGL Designs W800RF32** {% term integration %} supports W800RF32 devices by WGL Designs which
diff --git a/source/_integrations/waterfurnace.markdown b/source/_integrations/waterfurnace.markdown
index 36c5cba0f18..18cd624d811 100644
--- a/source/_integrations/waterfurnace.markdown
+++ b/source/_integrations/waterfurnace.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The **WaterFurnace** {% term integration %} communicates with the WaterFurnace Symphony website's WebSocket to show you many of the sensors in your system. While not an official API, this is the same backend the Symphony website is based on, and should be reasonably stable.
diff --git a/source/_integrations/watson_iot.markdown b/source/_integrations/watson_iot.markdown
index 580ec5b118e..a6c5ae0b801 100644
--- a/source/_integrations/watson_iot.markdown
+++ b/source/_integrations/watson_iot.markdown
@@ -10,6 +10,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The **IBM Watson IoT Platform** {% term integration %} enables you to link the devices in Home Assistant
diff --git a/source/_integrations/watson_tts.markdown b/source/_integrations/watson_tts.markdown
index 8cb595dd3e6..b43607851bd 100644
--- a/source/_integrations/watson_tts.markdown
+++ b/source/_integrations/watson_tts.markdown
@@ -14,6 +14,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `watson_tts` text-to-speech {% term integration %} that works with [IBM Watson Cloud](https://www.ibm.com/watson/services/text-to-speech/) to create the spoken output.
diff --git a/source/_integrations/webostv.markdown b/source/_integrations/webostv.markdown
index 25eca94ebe1..e901115ca20 100644
--- a/source/_integrations/webostv.markdown
+++ b/source/_integrations/webostv.markdown
@@ -15,7 +15,6 @@ ha_platforms:
- diagnostics
- media_player
- notify
-ha_quality_scale: platinum
ha_integration_type: integration
---
diff --git a/source/_integrations/whisper.markdown b/source/_integrations/whisper.markdown
index d60b91aa302..e6b004997b2 100644
--- a/source/_integrations/whisper.markdown
+++ b/source/_integrations/whisper.markdown
@@ -14,6 +14,7 @@ ha_codeowners:
ha_config_flow: true
ha_platforms:
- binary_sensor
+ - conversation
- number
- select
- stt
diff --git a/source/_integrations/wilight.markdown b/source/_integrations/wilight.markdown
index 4271a0abf16..a2de00c6010 100644
--- a/source/_integrations/wilight.markdown
+++ b/source/_integrations/wilight.markdown
@@ -13,7 +13,6 @@ ha_iot_class: Local Polling
ha_codeowners:
- '@leofig-rj'
ha_domain: wilight
-ha_quality_scale: silver
ha_ssdp: true
ha_platforms:
- cover
diff --git a/source/_integrations/wirelesstag.markdown b/source/_integrations/wirelesstag.markdown
index 2a11074631f..aea57cb51b2 100644
--- a/source/_integrations/wirelesstag.markdown
+++ b/source/_integrations/wirelesstag.markdown
@@ -19,6 +19,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The **Wireless Sensor Tags** {% term integration %} allows you to integrate your [wirelesstag.net](https://wirelesstag.net/) sensors tags in Home Assistant.
diff --git a/source/_integrations/withings.markdown b/source/_integrations/withings.markdown
index c1f7a9d37a3..4233856ed3e 100644
--- a/source/_integrations/withings.markdown
+++ b/source/_integrations/withings.markdown
@@ -16,7 +16,6 @@ ha_platforms:
- diagnostics
- sensor
ha_integration_type: integration
-ha_quality_scale: platinum
---
The **Withings** {% term integration %} consumes data from various health products produced by [Withings](https://www.withings.com).
@@ -26,7 +25,7 @@ The **Withings** {% term integration %} consumes data from various health produc
- Withings account
- Withings app installed
- Withings device setup in the app
-- [Withings developer account](#create-a-withings-developer-account) to get a *ClientID* and *Secret* to connect to be able to get the data from the Withings cloud API
+- [Withings developer account](#creating-a-withings-developer-account) to get a *ClientID* and *Secret* to connect to be able to get the data from the Withings cloud API
### Creating a Withings developer account
diff --git a/source/_integrations/wiz.markdown b/source/_integrations/wiz.markdown
index dcf913eb4b7..be2eece66f3 100644
--- a/source/_integrations/wiz.markdown
+++ b/source/_integrations/wiz.markdown
@@ -11,7 +11,6 @@ ha_iot_class: Local Push
ha_release: '2022.3'
ha_dhcp: true
ha_config_flow: true
-ha_quality_scale: platinum
ha_codeowners:
- '@sbidy'
ha_domain: wiz
diff --git a/source/_integrations/wled.markdown b/source/_integrations/wled.markdown
index 79636853b65..d9b808e0976 100644
--- a/source/_integrations/wled.markdown
+++ b/source/_integrations/wled.markdown
@@ -9,7 +9,6 @@ ha_category:
ha_release: 0.102
ha_iot_class: Local Push
ha_config_flow: true
-ha_quality_scale: platinum
ha_codeowners:
- '@frenck'
ha_domain: wled
@@ -155,6 +154,22 @@ data:
{% endraw %}
+It is recommended to select an effect that matches the capabilities of your WLED device (e.g., 1D, 2D, or Sound Reactive). You can refer to the [WLED effect list](https://kno.wled.ge/features/effects/) to explore available options. Once you identify compatible effects, you can randomize them based on their IDs.
+
+Below is an example of how to select a random effect with an ID between 1 and 117, excluding retired effects:
+
+{% raw %}
+
+```yaml
+action: light.turn_on
+target:
+ entity_id: light.wled
+data:
+ effect: "{{ state_attr('light.wled', 'effect_list')[1:118] | reject('equalto', 'RSVD') | list | random }}"
+```
+
+{% endraw %}
+
### Activating random palette
Activating a random palette is very similar to the above random effect,
diff --git a/source/_integrations/worldtidesinfo.markdown b/source/_integrations/worldtidesinfo.markdown
index 7b53e3a553c..94406414690 100644
--- a/source/_integrations/worldtidesinfo.markdown
+++ b/source/_integrations/worldtidesinfo.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `worldtidesinfo` {% term integration %} uses details from [World Tides](https://www.worldtides.info/) to provide information about the prediction for the tides for any location in the world.
diff --git a/source/_integrations/worxlandroid.markdown b/source/_integrations/worxlandroid.markdown
index 21c6b5a7a77..c783bbcc32e 100644
--- a/source/_integrations/worxlandroid.markdown
+++ b/source/_integrations/worxlandroid.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `worxlandroid` {% term integration %} allows you to get the current state, battery level and error status Worx Landroid WG796E.1 or WG797E.
diff --git a/source/_integrations/ws66i.markdown b/source/_integrations/ws66i.markdown
index 5ad20a83d8c..91fb8def2e1 100644
--- a/source/_integrations/ws66i.markdown
+++ b/source/_integrations/ws66i.markdown
@@ -6,7 +6,6 @@ ha_category:
ha_release: 2022.6
ha_config_flow: true
ha_iot_class: Local Polling
-ha_quality_scale: silver
ha_codeowners:
- '@ssaenger'
ha_domain: ws66i
diff --git a/source/_integrations/wsdot.markdown b/source/_integrations/wsdot.markdown
index 52871938780..26e0097916b 100644
--- a/source/_integrations/wsdot.markdown
+++ b/source/_integrations/wsdot.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The **Washington State Department of Transportation (WSDOT)** {% term integration %} will give you travel time information from the [Washington State Department of Transportation (WSDOT)](https://wsdot.com/).
diff --git a/source/_integrations/x10.markdown b/source/_integrations/x10.markdown
index f80404c9e1e..2c5386684f9 100644
--- a/source/_integrations/x10.markdown
+++ b/source/_integrations/x10.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `x10` light {% term integration %} allows you to control your X10 based lights with Home Assistant.
diff --git a/source/_integrations/xeoma.markdown b/source/_integrations/xeoma.markdown
index d29410551ca..82390738575 100644
--- a/source/_integrations/xeoma.markdown
+++ b/source/_integrations/xeoma.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `Xeoma` camera {% term integration %} allows you to view the video feeds from a [Xeoma](https://felenasoft.com/xeoma) video surveillance server.
diff --git a/source/_integrations/xiaomi.markdown b/source/_integrations/xiaomi.markdown
index a015dfffa38..8cd0372c240 100644
--- a/source/_integrations/xiaomi.markdown
+++ b/source/_integrations/xiaomi.markdown
@@ -14,6 +14,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: configuration.yaml file
+ha_quality_scale: legacy
---
This section shows you how to integrate a [Xiaomi router](http://miwifi.com) or a Xiaomi camera into Home Assistant.
diff --git a/source/_integrations/xiaomi_miio.markdown b/source/_integrations/xiaomi_miio.markdown
index 740023293eb..0126f3b30fa 100644
--- a/source/_integrations/xiaomi_miio.markdown
+++ b/source/_integrations/xiaomi_miio.markdown
@@ -1695,7 +1695,6 @@ Enter remote control mode, make one move, stop, and exit remote control mode.
### Sensors
{% configuration_basic %}
-
DnD Start*:
description: The timestamp when the next DnD (Do not disturb) period will start
DnD End*:
@@ -1732,7 +1731,6 @@ Water Box Attached**:
description: If the watter box is attached
Water Shortage\*\*:
description: If the water box is low on water
-
{% endconfiguration_basic %}
{% note %}
diff --git a/source/_integrations/xiaomi_tv.markdown b/source/_integrations/xiaomi_tv.markdown
index cdcb1a5f619..84e46756c64 100644
--- a/source/_integrations/xiaomi_tv.markdown
+++ b/source/_integrations/xiaomi_tv.markdown
@@ -14,6 +14,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `xiaomi_tv` {% term integration %} allows you to control a [Xiaomi TV](https://www.mi.com/global/mitv3s/65flat/).
diff --git a/source/_integrations/xmpp.markdown b/source/_integrations/xmpp.markdown
index a894bbbdd9b..355db8c5d79 100644
--- a/source/_integrations/xmpp.markdown
+++ b/source/_integrations/xmpp.markdown
@@ -15,6 +15,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `xmpp` notification {% term integration %} allows you to deliver notifications from Home Assistant to a [Jabber (XMPP)](https://xmpp.org/) account.
diff --git a/source/_integrations/xs1.markdown b/source/_integrations/xs1.markdown
index acac7ed0caa..0322ca93231 100644
--- a/source/_integrations/xs1.markdown
+++ b/source/_integrations/xs1.markdown
@@ -17,6 +17,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The [EZcontrol XS1](http://www.ezcontrol.de/content/view/36/28/) {% term integration %} for Home Assistant allows you to observe and control devices configured on the XS1 Gateway. Please have a look at the official documentation for using this gateway [Bedienungsanleitung v3.0.0.0](http://www.ezcontrol.de/support/downloads/XS1/xs1manual/Bedienungsanleitung_EZcontrol_XS1_3.0.0.0-2.pdf).
diff --git a/source/_integrations/yamaha.markdown b/source/_integrations/yamaha.markdown
index 7f257108725..8e119715959 100644
--- a/source/_integrations/yamaha.markdown
+++ b/source/_integrations/yamaha.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `yamaha` {% term integration %} allows you to control [Yamaha Network Receivers](https://usa.yamaha.com/products/audio-visual/av-receivers-amps/rx) from Home Assistant.
diff --git a/source/_integrations/yandex_transport.markdown b/source/_integrations/yandex_transport.markdown
index 68287db7050..4cd067aaa27 100644
--- a/source/_integrations/yandex_transport.markdown
+++ b/source/_integrations/yandex_transport.markdown
@@ -16,6 +16,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `yandex_tranport` {% term integration %} uses [Yandex Maps](https://maps.yandex.ru/) it will give you the time until the next departure time from a bus/tramway/etc stop.
diff --git a/source/_integrations/yandextts.markdown b/source/_integrations/yandextts.markdown
index 964742b394a..48e857d190e 100644
--- a/source/_integrations/yandextts.markdown
+++ b/source/_integrations/yandextts.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `yandextts` text-to-speech {% term integration %} uses [Yandex SpeechKit](https://tech.yandex.com/speechkit/) text-to-speech engine to read a text with natural sounding voices.
diff --git a/source/_integrations/yeelight.markdown b/source/_integrations/yeelight.markdown
index fb7caebfde6..1cd0c7baa19 100644
--- a/source/_integrations/yeelight.markdown
+++ b/source/_integrations/yeelight.markdown
@@ -17,7 +17,6 @@ ha_platforms:
- light
ha_homekit: true
ha_dhcp: true
-ha_quality_scale: platinum
ha_zeroconf: true
ha_integration_type: integration
---
diff --git a/source/_integrations/yeelightsunflower.markdown b/source/_integrations/yeelightsunflower.markdown
index 5ffbbad3af4..cc6b4331383 100644
--- a/source/_integrations/yeelightsunflower.markdown
+++ b/source/_integrations/yeelightsunflower.markdown
@@ -14,6 +14,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `yeelightsunflower` {% term integration %} allows you to control your Yeelight Sunflower light bulbs with Home Assistant.
diff --git a/source/_integrations/yi.markdown b/source/_integrations/yi.markdown
index b8225a874ee..063539c344b 100644
--- a/source/_integrations/yi.markdown
+++ b/source/_integrations/yi.markdown
@@ -11,6 +11,7 @@ ha_domain: yi
ha_platforms:
- camera
ha_integration_type: device
+ha_quality_scale: legacy
---
The `yi` camera platform allows you to utilize [Yi Home Cameras](https://www.yitechnology.com/) within Home Assistant. Specifically, this platform supports the line of Yi Home Cameras that are based on the Hi3518e Chipset. This includes:
diff --git a/source/_integrations/zabbix.markdown b/source/_integrations/zabbix.markdown
index 5a6b2bf3b3f..2cd7e7e8c16 100644
--- a/source/_integrations/zabbix.markdown
+++ b/source/_integrations/zabbix.markdown
@@ -13,6 +13,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The **Zabbix** {% term integration %} is the main {% term integration %} to connect to a [Zabbix](https://www.zabbix.com/) monitoring instance via the Zabbix API.
diff --git a/source/_integrations/zengge.markdown b/source/_integrations/zengge.markdown
index 38c72fbdfca..e981d34fd2a 100644
--- a/source/_integrations/zengge.markdown
+++ b/source/_integrations/zengge.markdown
@@ -14,6 +14,7 @@ ha_codeowners:
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `zengge` {% term integration %} allows you to integrate your [Zengge Bluetooth bulbs](http://www.zengge.com/) into Home Assistant.
diff --git a/source/_integrations/zestimate.markdown b/source/_integrations/zestimate.markdown
index d05697c03ba..f81d5bfe11c 100644
--- a/source/_integrations/zestimate.markdown
+++ b/source/_integrations/zestimate.markdown
@@ -9,6 +9,7 @@ ha_domain: zestimate
ha_platforms:
- sensor
ha_integration_type: integration
+ha_quality_scale: legacy
---
The `zestimate` sensor allows one to track the Zestimate® value of properties using the [Zillow API](https://www.zillow.com/howto/api/APIOverview.htm). According to Zillow's website, a Zestimate® home valuation is Zillow's estimated market value. It is not an appraisal. Use it as a starting point to determine a home's value. The Zestimate® is provided by [Zillow](https://www.zillow.com), a website primarily for listing homes to buy/sell/rent in the United States.
diff --git a/source/_integrations/zhong_hong.markdown b/source/_integrations/zhong_hong.markdown
index aedadb289af..226bde7bb28 100644
--- a/source/_integrations/zhong_hong.markdown
+++ b/source/_integrations/zhong_hong.markdown
@@ -9,6 +9,7 @@ ha_domain: zhong_hong
ha_platforms:
- climate
ha_integration_type: integration
+ha_quality_scale: legacy
---
The `zhong_hong` climate platform lets you control Zhonghong HVAC Gateway Controller thermostats through Home Assistant.
diff --git a/source/_integrations/ziggo_mediabox_xl.markdown b/source/_integrations/ziggo_mediabox_xl.markdown
index 79e303e6045..4049b20a506 100644
--- a/source/_integrations/ziggo_mediabox_xl.markdown
+++ b/source/_integrations/ziggo_mediabox_xl.markdown
@@ -12,6 +12,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The **Ziggo Mediabox XL** {% term integration %} allows you to control a [Ziggo](https://www.ziggo.nl/) Mediabox XL from Home Assistant.
diff --git a/source/_integrations/zodiac.markdown b/source/_integrations/zodiac.markdown
index f4d25ab7edd..7032a49cd1e 100644
--- a/source/_integrations/zodiac.markdown
+++ b/source/_integrations/zodiac.markdown
@@ -5,7 +5,6 @@ ha_category:
- Environment
ha_iot_class: Calculated
ha_release: 0.116
-ha_quality_scale: silver
ha_codeowners:
- '@JulienTant'
ha_domain: zodiac
diff --git a/source/_integrations/zoneminder.markdown b/source/_integrations/zoneminder.markdown
index 71e97fd596f..698e41c2ac3 100644
--- a/source/_integrations/zoneminder.markdown
+++ b/source/_integrations/zoneminder.markdown
@@ -22,6 +22,7 @@ ha_integration_type: integration
related:
- docs: /docs/configuration/
title: Configuration file
+ha_quality_scale: legacy
---
The `zoneminder` integration sets up Home Assistant with your [ZoneMinder](https://www.zoneminder.com) instance.
diff --git a/source/_integrations/zwave_js.markdown b/source/_integrations/zwave_js.markdown
index 9853c8710bb..a69b7b3e4e3 100644
--- a/source/_integrations/zwave_js.markdown
+++ b/source/_integrations/zwave_js.markdown
@@ -44,7 +44,6 @@ ha_platforms:
- update
ha_integration_type: hub
ha_zeroconf: true
-ha_quality_scale: platinum
---
The **Z-Wave** {% term integration %} allows you to control a Z-Wave network from Home Assistant via the [Z-Wave JS](https://zwave-js.github.io/node-zwave-js/#/) driver.
diff --git a/source/_integrations/zwave_me.markdown b/source/_integrations/zwave_me.markdown
index ad4d306c0d6..79f88938ce0 100644
--- a/source/_integrations/zwave_me.markdown
+++ b/source/_integrations/zwave_me.markdown
@@ -43,16 +43,10 @@ This integration allows you to control a Z-Wave network via the [Z-Wave.Me Z-Way
{% include integrations/config_flow.md %}
{% configuration_basic %}
-
URL:
description: The IP address with the port of the Z-Way server. The IP address can be prefixed with wss:// if HTTPS should be used instead of HTTP (when using find.z-wave.me remote access service or public IP with SSL).
- required: true
- type: string
API Token:
description: Z-Way API access token of the Z-Way server. To get the token go to the Z-Way user interface Smart Home UI > Menu > Settings > Users > Administrator > API token.
- required: true
- type: string
-
{% endconfiguration_basic %}
When connecting via find.z-wave.me remote access service you need to use a token with a global scope (log-in to Z-Way via [find.z-wave.me](https://find.z-wave.me) for this).
diff --git a/source/_posts/2024-12-01-the-month-of-what-the-heck.markdown b/source/_posts/2024-12-01-the-month-of-what-the-heck.markdown
new file mode 100644
index 00000000000..e1f432e743c
--- /dev/null
+++ b/source/_posts/2024-12-01-the-month-of-what-the-heck.markdown
@@ -0,0 +1,211 @@
+---
+title: The month of 'What the Heck?!' 2024
+description: "Ever felt that 'What the heck Home Assistant?!' moment? This month, we would like to learn about your 'what the heck?!' moments..."
+date: 2024-11-30 00:00:00
+date_formatted: "November 30, 2024"
+author: Franck Nijhof
+author_twitter: frenck
+categories: Announcements
+og_image: /images/blog/2024-12-01-the-month-of-what-the-heck/social.jpg
+---
+
+
+
+**TL;DR**: For all of December 🎄, we are opening up to share any issue, idea,
+suggestion, or annoyance you have with Home Assistant
+[on our community forums]!
+
+[on our community forums]: https://community.home-assistant.io/c/month-of-what-the-heck/61
+
+## Welcome to the month of “What the heck?!”: Third edition
+
+**It’s back!** 🎉 We are thrilled to announce the **third** edition of the month
+of “What the heck?!” (WTH for short). Every [two] [years], we take the time to
+pause, listen, and dive deep into the little things that maybe you go
+*“What the heck?!”* about Home Assistant.
+
+We’ve been [growing really hard for years now] with over a million
+Home Assistant-powered smart homes out there, and, as of this year, we are also
+[the \#1 open source project on GitHub]!
+
+A lot has happened since [the last edition two years ago]. Lots of effort went
+into making a [voice-controlled Home Assistant] a reality. We have implemented
+[new dashboards and cards] (with drag-and-drop!),
+[added organization capabilities] with labels and categories, and so [much]
+[more]! But did everything turn out the way it should? Did we miss things?
+Or, worse, did something start to annoy you?
+
+That is what this month is about! This year, we are kicking it off in the month
+of **December** as a nice closing activity for this year, and we can’t wait to
+hear from 👉 **YOU** 👈!
+
+[added organization capabilities]: /blog/2024/04/03/release-20244/#three-new-ways-to-organize
+[growing really hard for years now]: https://analytics.home-assistant.io/
+[more]: /blog/2023/11/01/release-202311/#there-is-a-lot-to-do
+[much]: /blog/2024/06/05/release-20246/#dipping-our-toes-in-the-world-of-ai-using-llms
+[new dashboards and cards]: /blog/2024/11/06/release-202411/#sections-dashboard-no-longer-experimental
+[the \#1 open source project on GitHub]: /blog/2024/11/18/event-wrapup-github-universe-24/#we-are-number-1
+[the last edition two years ago]: /blog/2022/09/30/the-month-of-what-the-heck/
+[two]: /blog/2020/08/18/the-month-of-what-the-heck/
+[voice-controlled Home Assistant]: /blog/2022/12/20/year-of-voice/
+[years]: /blog/2022/09/30/the-month-of-what-the-heck/
+
+### Lowering the barrier for sharing WTH?! moments
+
+We realize reporting bugs on our [GitHub] might be a steep hill and, for some,
+maybe even a bit scary. You need a GitHub account to report an issue following
+issue templates and forms, and the report itself needs to be written in a way
+that a developer can work with. Above all, we use our issue tracker to track
+actual issues and bugs, not small feature requests or annoyances.
+
+While this is a common and reasonable process to collect, track, and process
+bugs, our issue tracking-process might not be the ideal way to learn about your
+*“What the heck?!”* moments, small tweaks, and improvements that can make us
+all enjoy Home Assistant even more.
+
+Today, we have opened up a [Community Forum category] as a safe, lower-barrier
+place to talk about your Home Assistant “What the heck?!” moments.
+More importantly: discuss and vote on topics your fellow home automators have
+brought up.
+
+[Community Forum category]: https://community.home-assistant.io/c/month-of-what-the-heck/61
+[GitHub]: https://github.com/home-assistant/core/issues/new/choose
+
+## What are we looking for?
+
+Just as with previous editions, I sent out a related question on my socials
+earlier this week:
+
+> 🎅 𝘚𝘢𝘯𝘵𝘢 𝘮𝘪𝘨𝘩𝘵 𝘣𝘦 𝘭𝘪𝘴𝘵𝘦𝘯𝘪𝘯𝘨… If you could ask for one small Home Assistant
+> improvement this holiday season, what would it be?
+
+The answers to this question pretty much capture the goal behind this month:
+Finding those nice quality-of-life features and little annoyances, highlighting
+inconsistencies, suggestions for things that could be streamlined more, and even
+big-ticket items. All of those things would make Home Assistant even more
+awesome for everyone.
+
+I’ve received many responses on these social media posts on [X], [Mastodon],
+and [Bluesky]. Most of the responses there are **exactly** what we are looking
+for this month. I’ve picked a few from these platforms to show you what I mean:
+
+- “*Makes exposing entities to HomeKit the same as to Alexa & Google*” ([Peter Hardy-vanDoorn])
+- *"Polygon zones would be so very helpful instead of just the base circle"* ([KrispKiwi])
+- “*Edit a scene without activating it. I can only edit my sleep scene after everyone goes to sleep or in YAML.”* ([codebuild21])
+- *"The possibility of catching errors in automations and being able to take actions when they occur 🙂"* ([Sergio Mayoral])
+- *"Not Fancy! Better backup management, especially pruning options!"* ([Alex Alami])
+- *"Persist my prefered dashboard across my different devices/browsers."* ([Carlos Sánchez López])
+- *"Home Assistant voice hardware!"* ([Paulus Schoutsen]) 😆
+
+These are all great topics for the month of “What the heck?!”, I hope they inspire you for more topics to share 💖.
+
+[Alex Alami]: https://bsky.app/profile/aaposutry.bsky.social/post/3lby3xqhzzk2w
+[Bluesky]: https://bsky.app/profile/did:plc:ofidofdlypuxb2dlfdmbh3a3/post/3lbx2w2kh5a2p
+[Carlos Sánchez López]: https://bsky.app/profile/chayotejarocho.space/post/3lbx7yorfms2c
+[codebuild21]: https://bsky.app/profile/codebuild21.bsky.social/post/3lbx72g4l6s2n
+[KrispKiwi]: https://x.com/KrispKiwi/status/1861825026825265406
+[Mastodon]: https://fosstodon.org/@frenck/113556074335097996
+[Paulus Schoutsen]: https://bsky.app/profile/paulusschoutsen.nl/post/3lbx32dabes2s
+[Peter Hardy-vanDoorn]: https://x.com/peterjvandoorn/status/1861898354038292579
+[Sergio Mayoral]: https://x.com/sermayoral/status/1862109088139583917
+[X]: https://x.com/Frenck/status/1861823068735181154
+
+## Roadmap
+
+As you might be aware, we also create and publish a bigger, high level, roadmap
+for the greater direction of Home Assistant. A few weeks back, [Madelena]
+and [JLo] shared the [2024 Year-end update of our roadmap].
+
+This year’s month of “What the heck?!” is thus different in this regard, as in
+previous editions we didn’t have any roadmap in place. For this year’s WTH,
+the product team will also be watching for items that will help shape and
+prioritize our roadmap for the near future.
+
+As a matter of fact, many items on this year’s roadmap that we’ve worked on
+have their origins or have been shaped by topics from the previous WTH from
+2022. For example, the [ability to organize automations] and the ability to
+[drag-and-drop cards on your dashboards].
+
+[2024 Year-end update of our roadmap]: https://www.home-assistant.io/blog/2024/11/15/roadmap-2024h2/
+[ability to organize automations]: https://community.home-assistant.io/t/why-are-all-automations-in-one-big-list/467153?u=frenck
+[drag-and-drop cards on your dashboards]: https://community.home-assistant.io/t/wth-cant-we-drag-drop-in-the-dashboard/467205?u=frenck
+[JLo]: https://github.com/jlpouffier
+[Madelena]: https://github.com/madelena
+
+## Why December?
+
+In the previous editions, we had this month in October; this year, we decided to
+move it to December. We figured, the holiday season is perfect for this event. 🎄
+
+Many of us have a bit more time on our hands during the holidays, whether that’s
+tinkering with automations, exploring our new dashboards, contributing to our
+project, or simply enjoying engaging our active and vibrant community.
+
+## Start sharing your WTH!
+
+👆That title says it all really. Start sharing **your** “What the heck?!”
+moment, browse through all the WTH moments others brought up, and vote for the
+ones you feel the same about.
+
+We are excited about this month and looking forward to everything brought up!
+
+**[Join us on the forums!]**, or read the **[FAQ](#faq)** below.
+
+[Join us on the forums!]: https://community.home-assistant.io/c/month-of-what-the-heck/61
+
+
+
+So, when does Home Assistant trigger this moment for you?
+
+
+## FAQ
+
+- **_“Great! I have multiple things! Should I put all my stuff in a single
+ topic?!”_**
+
+ **No**, please create **multiple**, **smaller** topics. There is no limitation
+ on how many forum topics one can create for WTH. Each topic can be voted on,
+ picked up, and maybe even resolved. Also, having multiple things stacked in
+ a single forum topic makes resolving, discussing, and voting on them hard.
+
+
+
+- **_“Is everything reported going to be fixed/addressed?”_**
+
+ Sorry, but the answer here is **no**; there is no guarantee that it will
+ happen. The goal is to lower the barrier reporting things for one month.
+ Code contributors will definitely join the effort and address a few of the
+ listed things. Still, in the end, the number of submissions in WTH is,
+ in general, simply too much to address. However, we have picked up a lot of
+ items over the years (including bigger topics); it helps us shape our roadmap.
+
+
+
+- **_"I really want this new integration or add-on to be implemented, so I can
+ use my devices. Is this the right place for it?”_**
+
+ **No**, this event is **not** for requesting new add-ons or device/services
+ integrations. Please use the "[Feature Requests]" forum category instead.
+
+
+
+- **_“My WTH topic is one of the top-voted ones, so it is going to be
+ fixed/addressed, right?”_**
+
+ This is **not** a contest. Voting will help with visibility and give a sense
+ of the suggestion's impact. However, it might be difficult or too big to
+ implement. A topic with lots of votes is more likely to be noticed by a
+ contributor, but it is not guaranteed to be picked up.
+
+ Topics with a lot of engagement, of course, help us shape our future roadmap.
+
+
+
+- **_“I’ve found a bug and am comfortable with GitHub. Where should I report my
+ issue now?”_**
+
+ If you are comfortable using GitHub, please, by all means,
+ [file an issue report on GitHub] instead.
+
+[Feature Requests]: https://community.home-assistant.io/c/feature-requests/13
+[file an issue report on GitHub]: https://github.com/home-assistant/core/issues/new/choose
diff --git a/source/_posts/2024-12-04-release-202412.markdown b/source/_posts/2024-12-04-release-202412.markdown
new file mode 100644
index 00000000000..11142b6a76b
--- /dev/null
+++ b/source/_posts/2024-12-04-release-202412.markdown
@@ -0,0 +1,847 @@
+---
+layout: post
+title: "2024.12: Scene you in 2025! 🎄"
+description: "Holidays are coming, time for the last release of the year! View your scenes without immediately activating them. Let your voice assistant fall back to an LLM-based agent, and enjoy a faster voice experience. A revised Integration Quality Scale, new integrations, plus, we've upgraded to Python 3.13! See you in 2025!"
+date: 2024-12-04 00:00:00
+date_formatted: "December 4, 2024"
+author: Franck Nijhof
+author_twitter: frenck
+comments: true
+categories:
+ - Release-Notes
+ - Core
+og_image: /images/blog/2024-12/social.jpg
+---
+
+
+
+Home Assistant 2024.12! 🎄
+
+Holidays are coming, and it is time for the last release of the year! 🎉
+
+**2024** has been a crazy year for Home Assistant. Not just in terms of features
+like [drag-and-drop dashboards], [organization capabilities] like labels, and
+the countless improvements to our voice efforts. But also the founding of
+[the Open Home Foundation], and even more in the growth of our lovely community
+as we've risen up to become [the #1 open source project on GitHub]! ❤️
+
+However, the year ain't over yet! This month, we want to learn about all your
+_"What the heck?!"_ moments with Home Assistant. Tell us about any little
+annoyances, bugs, ideas, or suggestions. You can read all about it in
+[the WTH announcement blog], or join the conversation [on our WTH forums]!
+
+Honestly, **the biggest announcement of the year has yet to come though**... 🤫
+I'm pretty sure it is voice hardware related. 😉 So make sure you aren't
+missing [the live stream on 19 December]! 📺 You will not be disappointed! 🎁
+
+Before you check out everything in this release, I just want to close this
+year with a big thank you to every single person in our community, which
+includes you!
+
+**Thank you for using Home Assistant!** ❤️
+
+Happy holidays! And for the last time in 2024: Enjoy the release!
+
+../Frenck
+
+[drag-and-drop dashboards]: /blog/2024/11/06/release-202411/#sections-dashboard-no-longer-experimental
+[on our WTH forums]: https://community.home-assistant.io/c/month-of-what-the-heck/61
+[organization capabilities]: /blog/2024/04/03/release-20244/#three-new-ways-to-organize
+[the #1 open source project on GitHub]: /blog/2024/11/18/event-wrapup-github-universe-24/#we-are-number-1
+[the live stream on 19 December]: https://youtube.com/live/ZgoaoTpIhm8
+[the Open Home Foundation]: https://www.openhomefoundation.org/
+[the WTH announcement blog]: /blog/2024/11/30/the-month-of-what-the-heck/
+
+
+
+- [Improved scene editor experience](#improved-scene-editor-experience)
+- [Voice](#voice)
+ - [Let your voice assistant fall back to an LLM-based agent](#let-your-voice-assistant-fall-back-to-an-llm-based-agent)
+ - [Language leaders are accelerating the pace](#language-leaders-are-accelerating-the-pace)
+ - [A faster voice experience](#a-faster-voice-experience)
+- [Revised Integration Quality Scale](#revised-integration-quality-scale)
+- [Integrations](#integrations)
+ - [New integrations](#new-integrations)
+ - [Noteworthy improvements to existing integrations](#noteworthy-improvements-to-existing-integrations)
+- [Other noteworthy changes](#other-noteworthy-changes)
+- [Translations for units of measurement](#translations-for-units-of-measurement)
+- [We've upgraded to Python 3.13](#weve-upgraded-to-python-313)
+- [Patch releases](#patch-releases)
+ - [2024.12.1 - December 6](#2024121---december-6)
+ - [2024.12.2 - December 10](#2024122---december-10)
+ - [2024.12.3 - December 13](#2024123---december-13)
+- [Need help? Join the community!](#need-help-join-the-community)
+- [Backward-incompatible changes](#backward-incompatible-changes)
+- [All changes](#all-changes)
+
+## Improved scene editor experience
+
+{% term Scenes %} are a great way to set the mood in your home. They allow you
+to capture the state of your devices at a specific moment and restore it
+later, using a button on your dashboard, an automation, or even a voice command.
+
+One of the common frustrations with editing scenes in Home Assistant is that it
+would immediately activate and apply the scene if you opened the scene editor.
+Not the best experience if you are doing some midnight tinkering and
+accidentally activate a scene that turns on all the lights in the house,
+waking up everyone. 😅
+
+[@karwosts] & [@marcinbauer85] to the rescue! 🦸♂️ As of this release, the scene
+editor has two modes. A **review mode** and an **edit mode**.
+
+
+
+The “review mode” is how your scene will open, and it will show you the scene as
+it is currently set up, but it will not apply it. You can then switch to the
+"edit mode"; only then will the scene activate, allowing you to adjust the
+actual scenery and snapshot it again once you are happy with the changes.
+
+Additionally, if you prefer {% term YAML %}, you can edit scenes directly from
+the scene editor by selecting **“Edit in YAML”** from the three-dotted
+{% icon "mdi:dots-vertical" %} overflow menu in the top right corner.
+
+[@karwosts]: https://github.com/karwosts
+[@marcinbauer85]: https://github.com/marcinbauer85
+
+## Voice
+
+It has almost been two years since [we started our journey] into building our
+very own open source voice assistants, with the goal of letting users control
+Home Assistant in their own language.
+
+Today, we are getting even closer to the finish line. Not just with the features
+that ship in this release, but you might have heard about our voice hardware
+that is coming soon...
+
+With some help from Santa 🎅 and his elves, we have prepared a product launch
+YouTube live stream on 19 December 2024, at 20:00 GMT / 12:00 PT / 21:00 CET!
+
+
+
+Curious? Be sure to [join the live stream], hit like 👍, subscribe to our
+channel, and the little bell 🔔 to get notified when we go live! You really
+don't want to miss this one!
+
+But before we get there, let's dive into the features that ship in this release!
+
+[join the live stream]: https://www.youtube.com/watch?v=ZgoaoTpIhm8
+[we started our journey]: /blog/2022/12/20/year-of-voice/
+
+### Let your voice assistant fall back to an LLM-based agent
+
+[Exactly 6 months ago], we bridged the gap between our default conversation agent
+and the wonderful (and scary) world of [LLMs]. We allowed you to experiment and
+let an LLM-based conversation agent control your home instead of relying on our
+built-in sentences.
+
+This choice was an interesting first step. LLMs are generally much better at
+interpreting natural language and more knowledgeable about the world than our
+default agent. However, they are often slow and/or expensive. And let’s face it:
+Even if the demos are cool, 90% of the commands we say in our homes are simple:
+_“Turn this on”_ or _“Turn that off”_.
+
+Today, we're finally allowing users to **mix** these worlds. Starting from this
+release, you can set up a voice assistant that targets our fast,
+community-driven conversation agent first and only falls back to an LLM-based
+agent if no matches are found.
+
+
+
+This allows you to mix the pros of both worlds with almost none of the cons.
+
+Specific known commands will be processed locally and extremely fast, and the
+power of an LLM will only be used for more complex queries that Home Assistant
+does not natively understand.
+
+
+
+[Exactly 6 months ago]: /blog/2024/06/05/release-20246/
+[LLMs]: https://en.wikipedia.org/wiki/Language_model
+
+### Language leaders are accelerating the pace
+
+It is no secret: our voice hardware will be revealed on 19 December 2024.
+Language leaders have already got their hands on the device, and are working
+extremely hard to polish support for their language.
+
+The number of contributions to our [intents repository] (where we store the
+supported sentences) skyrocketed during the last month, which we all truly
+appreciate. More and more languages are becoming usable or even complete!
+You can follow the progress [here](https://home-assistant.github.io/intents/).
+
+We won’t list them all, but rest assured, someone is likely working hard to
+ensure your native language works seamlessly, so you can use it comfortably
+at home.
+
+[intents repository]: https://github.com/home-assistant/intents?tab=readme-ov-file
+
+### A faster voice experience
+
+Our default conversation agent was built from the ground up to match a sentence
+to its underlying intention extremely fast and on cheap hardware.
+
+Release after release, we added more use cases and sentences to Home Assistant,
+and our sentence-matching logic became slower and slower. In some languages,
+a non-matching sentence could take more than 15 seconds to process!
+
+This release adds a lot of love to this matching logic; we completely
+reengineered the way we match sentences. On top of that, language leaders spent
+some time reducing the complexity of their sentences. Some languages saw a 99%
+reduction in the number of possible combinations!
+
+The results speak for themselves:
+
+
+
+## Revised Integration Quality Scale
+
+The Integration Quality Scale (IQS) is a way we classify the "quality" of an
+integration. It gives users an idea of what to expect from an integration.
+You might have noticed our IQS indicator listed on
+[each integration documentation page].
+
+The scale was initially introduced in 2018 and aimed more at the technical
+side and code of an integration back then. Over the years, it didn't
+really evolve with the rest of Home Assistant and the general expectations of
+our community. It was time for a change!
+
+Over the last few months, we have worked with the community to revise and
+improve the scale. Involving not just our community developers but also
+documentation writers, user experience designers, and anyone interested
+in the community.
+
+As a result, the new Integration Quality Scale is not just focused on the code
+but even more on the overall user experience. It is now a more holistic view
+of the integration, and we hope it will help everyone make better decisions
+about what to use in their homes.
+
+
+
+We now have a total of 4 scaled tiers:
+
+- **🥉 [Bronze](/docs/quality_scale/#-bronze)**:
+ The new minimum set of requirements we've set for new integrations.
+- **🥈 [Silver](/docs/quality_scale/#-silver)**:
+ Ensuring reliability and robustness of integrations.
+- **🥇 [Gold](/docs/quality_scale/#-gold)**:
+ Ensuring a gold standard user experience, including documentation.
+- **🏆 [Platinum](/docs/quality_scale/#-platinum)**:
+ The epitome of quality, supreme code quality, and optimal performance.
+
+We also have four additional (non-scaled) special tiers:
+
+- **❓ [No score](/docs/quality_scale/#-no-score)**:
+ For integrations that are not yet scored against the new scale.
+- **🏠 [Internal](/docs/quality_scale/#-internal)**
+ For integrations Home Assistant itself uses, like the automation engine.
+- **💾 [Legacy](/docs/quality_scale/#-legacy)**
+ For older integrations that can't be set up through the UI.
+- **📦 [Custom](/docs/quality_scale/#-custom)**
+ For custom integrations, as we can't score those.
+
+You can read all about these tiers, what they have been designed for, and a
+summary of their characteristics on our dedicated
+[Integration Quality Scale page].
+
+We sincerely hope this new scale will not just help our users, but also our
+community developers to understand what is expected by providing a clear path
+to improving their integrations. To help with that, we have now
+[extensively documented every rule and requirement for each tier in our
+developer documentation].
+
+[each integration documentation page]: /integrations/homewizard
+[Integration Quality Scale page]: /docs/quality_scale/
+[extensively documented every rule and requirement for each tier in our developer documentation]: https://developers.home-assistant.io/docs/core/integration-quality-scale/#integration-quality-scale-rules
+
+## 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:
+
+- **[Acaia]**, added by [@zweckj]
+ Adds support for [Acaia coffee scales] to Home Assistant.
+- **[Music Assistant]**, added by [@jozefKruszynski]
+ The integration for [Music Assistant](https://music-assistant.io/) is making
+ its way into Home Assistant! 🎉
+- **[NASweb]**, added by [@nasWebio]
+ Brings in support for the NASweb automation system to Home Assistant.
+- **[Nord Pool]**, added by [@gjohansson-ST]
+ Pulls in latest energy prices from the Nord Pool energy market as sensors.
+- **[Sky Remote]**, added by [@dunnmj]
+ Control your [Sky] box using automations or from your Home Assistant
+ dashboards.
+
+[@dunnmj]: https://github.com/dunnmj
+[@gjohansson-ST]: https://github.com/gjohansson-ST
+[@jozefKruszynski]: https://github.com/jozefKruszynski
+[@nasWebio]: https://github.com/nasWebio
+[@zweckj]: https://github.com/zweckj
+[Acaia coffee scales]: https://acaia.co/
+[Acaia]: /integrations/acaia
+[Music Assistant]: /integrations/music_assistant
+[NASweb]: /integrations/nasweb
+[Nord Pool]: /integrations/nordpool
+[Sky Remote]: /integrations/sky_remote
+[Sky]: https://www.sky.com/
+
+### 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:
+
+- The [UniFi Protect integration] now has support for fingerprint and NFC
+ events. You can even automate on the specific fingerprint or NFC scanned!
+ Awesome, [@RaHehl]!
+- The [TP-Link integration] now supports the H200 hubs and adds more
+ energy-monitoring sensors for Tapo devices. It also exposes new entities like
+ a motion sensor switch, a child lock switch for thermostats, and the last
+ water leak alert timestamp.
+ Thanks to [@sdb9696], [@rytilahti], and [@ryenitcher]!
+- [@starKillerOG] added selector entities for bitrate, framerate, and vehicle
+ tone to the [Reolink integration]. Additionally, a tilt position sensor for
+ PTZ cameras has been added. Thanks!
+- [@fwestenberg] updated the [Stookwijzer integration], with some new sensors,
+ right on time for the winter season. Nice!
+- The [Habitica integration] now provides actions for quest handling, scoring
+ habits, and rewards. It also adds calendars for your to-do and daily reminders.
+ Nice, [@tr4nt0r]!
+- The [eQ-3 Bluetooth Smart integration] now provides several helpful switches
+ and sensors (like away mode, boost, battery). Thanks, [@EuleMitKeule]!
+- [@YogevBokobza] added Switcher Lights support to the [Switcher integration].
+ Thanks!
+
+[@sdb9696]: https://github.com/sdb9696
+[@EuleMitKeule]: https://github.com/EuleMitKeule
+[@fwestenberg]: https://github.com/fwestenberg
+[@RaHehl]: https://github.com/RaHehl
+[@ryenitcher]: https://github.com/ryenitcher
+[@rytilahti]: https://github.com/rytilahti
+[@starKillerOG]: https://github.com/starKillerOG
+[@tr4nt0r]: https://github.com/tr4nt0r
+[@YogevBokobza]: https://github.com/YogevBokobza
+[eQ-3 Bluetooth Smart integration]: /integrations/eq3btsmart
+[Habitica integration]: /integrations/habitica
+[Reolink integration]: /integrations/reolink
+[Stookwijzer integration]: /integrations/stookwijzer
+[Switcher integration]: /integrations/switcher_kis
+[TP-Link integration]: /integrations/tplink
+[UniFi Protect integration]: /integrations/unifiprotect
+
+## Other noteworthy changes
+
+There are many more improvements in this release; here are some of the other
+noteworthy changes this release:
+
+- [@jpbede] added a download snapshot button to the camera entity information
+ dialog. Super nice! Thanks!
+- The UI now displays durations using a timer format (like 03:26:00) in natural
+ language (3h 26min). Thanks [@piitaya]!
+- Support for new units of measurement has been added:
+ - Units for area sizes (and conversions between metric and US).
+ Thanks [@mikey0000]!
+ - [@jschlyter] has added support for MW, GW, TW, GWh, and TWh. Nice!
+ - µV has been added as a unit of electric potential. Thanks [@tr4nt0r]!
+ - Lastly, mL/s has been added as a unit of volume flow rate. Thanks [@zweckj]!
+- If you are editing an automation using YAML via our UI and you make a mistake…
+ you will now actually see the parsing error message in the UI. This is really
+ helpful! Thanks, [@karwosts]!
+
+[@jpbede]: https://github.com/jpbede
+[@jschlyter]: https://githubc.com/jschlyter
+[@karwosts]: https://github.com/karwosts
+[@mikey0000]: htttps://github.com/mikey0000
+[@piitaya]: https://github.com/piitaya
+[@tr4nt0r]: https://github.com/tr4nt0r
+[@zweckj]: https://github.com/zweckj
+
+## Translations for units of measurement
+
+Over the last few years, we have been working hard to make every little
+bit of Home Assistant accessible for everyone by providing translations
+for every part of the system. 🌐
+
+However, we still have some edge cases, where we are not able to provide
+translations for everything. One of those edge cases is the units of
+measurement. 📏
+
+Although units do not need translation (like `°C` or `kWh`) in most cases, many
+sensors in a home might use specific and non-standardized units. For example,
+a sensor that measures the number of “people” in a home or one that tells you
+how many “movies” are in your collection.
+
+So, suppose you now have a sensor with a custom measurement unit, like the
+amount of “movies” in your collection. In that case, integrations can now
+provide translations for those units. 🎉
+
+Several integrations have already added translations for their units, including
+[Jellyfin], [Lyrion Music Server], [Transmission], [Pi-hole], [QBitTorrent],
+[NextDNS], [Mastodon], and [Mealie]!
+
+[Jellyfin]: /integrations/jellyfin
+[Lyrion Music Server]: /integrations/squeezebox
+[Mastodon]: /integrations/mastodon
+[Mealie]: /integrations/mealie
+[NextDNS]: /integrations/nextdns
+[Pi-hole]: /integrations/pi_hole
+[QBitTorrent]: /integrations/qbittorrent
+[Transmission]: /integrations/transmission
+
+## We've upgraded to Python 3.13
+
+
+
+This release comes packaged with Python 3.13! 🐍
+
+Wondering what that means? Python is the programming language that powers Home
+Assistant behind the scenes.
+
+Why does it matter? Every new Python release brings improvements that we can
+tap into—better performance, fewer bugs, and a smoother developer experience
+for our contributors. Plus, Python 3.13 offers a speed boost to Home Assistant
+overall—what’s not to love? 🚀
+
+Running Home Assistant OS or using the Home Assistant Container? No sweat—we’ve
+got you covered. The upgrade to Python 3.13 is handled automatically. Just
+update Home Assistant as usual, and you’re good to go.
+
+Easy, right? 😎
+
+## Patch releases
+
+We will also release patch releases for Home Assistant 2024.12 in December.
+These patch releases only contain bug fixes. Our goal is to release a patch
+release every Friday.
+
+### 2024.12.1 - December 6
+
+- Bump elmax-api to 0.0.6.3 ([@albertogeniola] - [#131876])
+- Fix deprecated call to mimetypes.guess_type in CachingStaticResource ([@bdraco] - [#132299])
+- Bump tesla-fleet-api to 0.8.5 ([@Bre77] - [#132339])
+- Add missing UnitOfPower to sensor ([@robinostlund] - [#132352])
+- Removes references to croniter from utility_meter ([@dgomes] - [#132364])
+- Bump upb-lib to 0.5.9 ([@gwww] - [#132411])
+- Bump pydeako to 0.6.0 ([@Balake] - [#132432])
+- Bump aiohttp to 3.11.10 ([@bdraco] - [#132441])
+- Bump aioesphomeapi to 28.0.0 ([@bdraco] - [#132447])
+- Update exception handling for python3.13 for getpass.getuser() ([@allenporter] - [#132449])
+- Bump hass-nabucasa from 0.85.0 to 0.86.0 ([@ludeeus] - [#132456])
+- Fix nordpool dont have previous or next price ([@gjohansson-ST] - [#132457])
+- Bump deebot-client to 9.2.0 ([@edenhaus] - [#132467])
+- Point to the Ecovacs issue in the library for unspoorted devices ([@edenhaus] - [#132470])
+- Bump tplink python-kasa dependency to 0.8.1 ([@sdb9696] - [#132472])
+- Bump samsungtvws to 2.7.2 ([@epenet] - [#132474])
+- Update frontend to 20241127.5 ([@bramkragten] - [#132475])
+- Update frontend to 20241127.6 ([@bramkragten] - [#132494])
+- Fix google tasks due date timezone handling ([@allenporter] - [#132498])
+
+[#131876]: https://github.com/home-assistant/core/pull/131876
+[#132195]: https://github.com/home-assistant/core/pull/132195
+[#132299]: https://github.com/home-assistant/core/pull/132299
+[#132339]: https://github.com/home-assistant/core/pull/132339
+[#132352]: https://github.com/home-assistant/core/pull/132352
+[#132364]: https://github.com/home-assistant/core/pull/132364
+[#132411]: https://github.com/home-assistant/core/pull/132411
+[#132432]: https://github.com/home-assistant/core/pull/132432
+[#132441]: https://github.com/home-assistant/core/pull/132441
+[#132447]: https://github.com/home-assistant/core/pull/132447
+[#132449]: https://github.com/home-assistant/core/pull/132449
+[#132456]: https://github.com/home-assistant/core/pull/132456
+[#132457]: https://github.com/home-assistant/core/pull/132457
+[#132467]: https://github.com/home-assistant/core/pull/132467
+[#132470]: https://github.com/home-assistant/core/pull/132470
+[#132472]: https://github.com/home-assistant/core/pull/132472
+[#132474]: https://github.com/home-assistant/core/pull/132474
+[#132475]: https://github.com/home-assistant/core/pull/132475
+[#132494]: https://github.com/home-assistant/core/pull/132494
+[#132498]: https://github.com/home-assistant/core/pull/132498
+[@Balake]: https://github.com/Balake
+[@Bre77]: https://github.com/Bre77
+[@albertogeniola]: https://github.com/albertogeniola
+[@allenporter]: https://github.com/allenporter
+[@bdraco]: https://github.com/bdraco
+[@bramkragten]: https://github.com/bramkragten
+[@dgomes]: https://github.com/dgomes
+[@edenhaus]: https://github.com/edenhaus
+[@epenet]: https://github.com/epenet
+[@frenck]: https://github.com/frenck
+[@gjohansson-ST]: https://github.com/gjohansson-ST
+[@gwww]: https://github.com/gwww
+[@ludeeus]: https://github.com/ludeeus
+[@robinostlund]: https://github.com/robinostlund
+[@sdb9696]: https://github.com/sdb9696
+
+### 2024.12.2 - December 10
+
+- Enable additional entities on myUplink model SMO20 ([@astrandb] - [#131688])
+- Bump pydrawise to 2024.12.0 ([@dknowles2] - [#132015])
+- Fix API change for AC not supporting floats in SwitchBot Cloud ([@SeraphicRav] - [#132231])
+- Update pyrisco to 0.6.5 ([@agmckaybro] - [#132493])
+- Fix PyTado dependency ([@erwindouna] - [#132510])
+- Bump pycups to 2.0.4 ([@bdraco] - [#132514])
+- Update debugpy to 1.8.8 ([@frenck] - [#132519])
+- bump total_connect_client to 2023.12 ([@austinmroczek] - [#132531])
+- Bump aiounifi to v81 to fix partitioned cookies on python 3.13 ([@Kane610] - [#132540])
+- Update twentemilieu to 2.2.0 ([@frenck] - [#132554])
+- Bump yalexs-ble to 2.5.2 ([@bdraco] - [#132560])
+- Bump plugwise to v1.6.1 ([@bouwew] - [#131950])
+- Bump plugwise to v1.6.2 and adapt ([@bouwew] - [#132608])
+- Fix config flow in Husqvarna Automower ([@Thomas55555] - [#132615])
+- Bump ZHA dependencies ([@puddly] - [#132630])
+- Bump plugwise to v1.6.3 ([@bouwew] - [#132673])
+- Bump yt-dlp to 2024.12.06 ([@joostlek] - [#132684])
+- Revert "Bump pyezviz to 0.2.2.3" ([@srescio] - [#132715])
+- Bump intents to 2024.12.9 ([@synesthesiam] - [#132726])
+- Update frontend to 20241127.7 ([@bramkragten] - [#132729])
+- Bump reolink-aio to 0.11.5 ([@starkillerOG] - [#132757])
+- Catch Hydrawise authorization errors in the correct place ([@dknowles2] - [#132727])
+- Pass an application identifier to the Hydrawise API ([@dknowles2] - [#132779])
+- Bump deebot-client to 9.3.0 ([@edenhaus] - [#132834])
+- Bump aioacaia to 0.1.11 ([@zweckj] - [#132838])
+
+[#131688]: https://github.com/home-assistant/core/pull/131688
+[#131950]: https://github.com/home-assistant/core/pull/131950
+[#132015]: https://github.com/home-assistant/core/pull/132015
+[#132195]: https://github.com/home-assistant/core/pull/132195
+[#132231]: https://github.com/home-assistant/core/pull/132231
+[#132493]: https://github.com/home-assistant/core/pull/132493
+[#132509]: https://github.com/home-assistant/core/pull/132509
+[#132510]: https://github.com/home-assistant/core/pull/132510
+[#132514]: https://github.com/home-assistant/core/pull/132514
+[#132519]: https://github.com/home-assistant/core/pull/132519
+[#132531]: https://github.com/home-assistant/core/pull/132531
+[#132540]: https://github.com/home-assistant/core/pull/132540
+[#132554]: https://github.com/home-assistant/core/pull/132554
+[#132560]: https://github.com/home-assistant/core/pull/132560
+[#132608]: https://github.com/home-assistant/core/pull/132608
+[#132615]: https://github.com/home-assistant/core/pull/132615
+[#132630]: https://github.com/home-assistant/core/pull/132630
+[#132673]: https://github.com/home-assistant/core/pull/132673
+[#132684]: https://github.com/home-assistant/core/pull/132684
+[#132715]: https://github.com/home-assistant/core/pull/132715
+[#132726]: https://github.com/home-assistant/core/pull/132726
+[#132727]: https://github.com/home-assistant/core/pull/132727
+[#132729]: https://github.com/home-assistant/core/pull/132729
+[#132757]: https://github.com/home-assistant/core/pull/132757
+[#132779]: https://github.com/home-assistant/core/pull/132779
+[#132834]: https://github.com/home-assistant/core/pull/132834
+[#132838]: https://github.com/home-assistant/core/pull/132838
+[@Kane610]: https://github.com/Kane610
+[@SeraphicRav]: https://github.com/SeraphicRav
+[@Thomas55555]: https://github.com/Thomas55555
+[@agmckaybro]: https://github.com/agmckaybro
+[@astrandb]: https://github.com/astrandb
+[@austinmroczek]: https://github.com/austinmroczek
+[@bdraco]: https://github.com/bdraco
+[@bouwew]: https://github.com/bouwew
+[@bramkragten]: https://github.com/bramkragten
+[@dknowles2]: https://github.com/dknowles2
+[@edenhaus]: https://github.com/edenhaus
+[@erwindouna]: https://github.com/erwindouna
+[@frenck]: https://github.com/frenck
+[@joostlek]: https://github.com/joostlek
+[@puddly]: https://github.com/puddly
+[@srescio]: https://github.com/srescio
+[@starkillerOG]: https://github.com/starkillerOG
+[@synesthesiam]: https://github.com/synesthesiam
+[@zweckj]: https://github.com/zweckj
+
+### 2024.12.3 - December 13
+
+- Bump python-linkplay to v0.1.1 ([@silamon] - [#132091])
+- Bump pydaikin to 2.13.8 ([@weltall] - [#132759])
+- Fix pipeline conversation language ([@synesthesiam] - [#132896])
+- fix AndroidTV logging when disconnected ([@chemelli74] - [#132919])
+- Guard Vodafone Station updates against bad data ([@chemelli74] - [#132921])
+- Bump led-ble to 1.1.1 ([@bdraco] - [#132977])
+- Change warning to debug for VAD timeout ([@synesthesiam] - [#132987])
+- Fix LaMetric config flow for cloud import path ([@frenck] - [#133039])
+- Update frontend to 20241127.8 ([@bramkragten] - [#133066])
+- Bump pysuezV2 to 1.3.5 ([@jb101010-2] - [#133076])
+- Bugfix to use evohome's new hostname ([@zxdavb] - [#133085])
+- Bump py-aosmith to 1.0.12 ([@bdr99] - [#133100])
+- Bump deebot-client to 9.4.0 ([@edenhaus] - [#133114])
+- Bump aiowithings to 3.1.4 ([@joostlek] - [#133117])
+
+[#132091]: https://github.com/home-assistant/core/pull/132091
+[#132195]: https://github.com/home-assistant/core/pull/132195
+[#132509]: https://github.com/home-assistant/core/pull/132509
+[#132759]: https://github.com/home-assistant/core/pull/132759
+[#132846]: https://github.com/home-assistant/core/pull/132846
+[#132896]: https://github.com/home-assistant/core/pull/132896
+[#132919]: https://github.com/home-assistant/core/pull/132919
+[#132921]: https://github.com/home-assistant/core/pull/132921
+[#132977]: https://github.com/home-assistant/core/pull/132977
+[#132987]: https://github.com/home-assistant/core/pull/132987
+[#133039]: https://github.com/home-assistant/core/pull/133039
+[#133066]: https://github.com/home-assistant/core/pull/133066
+[#133076]: https://github.com/home-assistant/core/pull/133076
+[#133085]: https://github.com/home-assistant/core/pull/133085
+[#133100]: https://github.com/home-assistant/core/pull/133100
+[#133114]: https://github.com/home-assistant/core/pull/133114
+[#133117]: https://github.com/home-assistant/core/pull/133117
+[@bdr99]: https://github.com/bdr99
+[@bdraco]: https://github.com/bdraco
+[@bramkragten]: https://github.com/bramkragten
+[@chemelli74]: https://github.com/chemelli74
+[@edenhaus]: https://github.com/edenhaus
+[@frenck]: https://github.com/frenck
+[@jb101010-2]: https://github.com/jb101010-2
+[@joostlek]: https://github.com/joostlek
+[@silamon]: https://github.com/silamon
+[@synesthesiam]: https://github.com/synesthesiam
+[@weltall]: https://github.com/weltall
+[@zxdavb]: https://github.com/zxdavb
+
+## 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 "Brother Printer" %}
+
+The unit of measurement for pages changed from `p` to `pages`.
+
+This could potentially break use cases if it was used in templates where a state
+with a unit is used, such as `states('sensor.pages', with_unit=True)`.
+
+([@bieniu] - [#131275]) ([documentation](/integrations/brother))
+
+[@bieniu]: https://github.com/bieniu
+[#131275]: https://github.com/home-assistant/core/pull/131275
+
+{% enddetails %}
+
+{% details "Ecovacs" %}
+
+Ecovacs devices not recognized by the library will no longer use the fallback
+vacuum. Instead, the device will not be added to Home Assistant,
+and a warning log will created.
+
+([@edenhaus] - [#131525]) ([documentation](/integrations/ecovacs))
+
+[@edenhaus]: https://github.com/edenhaus
+[#131525]: https://github.com/home-assistant/core/pull/131525
+
+{% enddetails %}
+
+{% details "Glances" %}
+
+The previously deprecated Glances v2 API has been removed. Upgrade to v3 or
+higher to continue using the integration.
+
+([@gjohansson-ST] - [#131427]) ([documentation](/integrations/glances))
+
+[@gjohansson-ST]: https://github.com/gjohansson-ST
+[#131427]: https://github.com/home-assistant/core/pull/131427
+
+{% enddetails %}
+
+{% details "History Stats" %}
+
+After this change, `history_stats` in `time` or `ratio` mode will only count
+definitively known time-based recorded data.
+
+Prior to this change, if the start of the time window was earlier than the
+oldest datapoint in the recorder, `history_stats` would count time using the
+assumption that an entity was in the first state it found since the beginning
+of time. This could lead to wild overcalculations when a switch was turned on
+after a long period of inactivity, and `history_stats` would assume it had
+_always_ been on and calculate a huge value based on that.
+
+([@karwosts] - [#126271]) ([documentation](/integrations/history_stats))
+
+[@karwosts]: https://github.com/karwosts
+[#126271]: https://github.com/home-assistant/core/pull/126271
+
+{% enddetails %}
+
+{% details "Jewish Calendar" %}
+
+To support Rosh Chodesh this creates a breaking change as the holiday sensor
+will return "Chanukah, Rosh Chodesh" when both of those days fall on the same
+date. If you have an automation expecting the "Chanukah" value, you must update
+it.
+
+([@tsvi] - [#130456]) ([documentation](/integrations/jewish_calendar))
+
+[@tsvi]: https://github.com/tsvi
+[#130456]: https://github.com/home-assistant/core/pull/130456
+
+{% enddetails %}
+
+{% details "Plugwise" %}
+
+For the Plugwise Adam, all device-based climate entities will be replaced by new zone-based climate entities, which will most likely have different entity names.
+This change aligns with the Plugwise App's representation of climate entities as zones (as discovered in Issue [#130597](https://github.com/home-assistant/core/issues/130597)).
+
+ ([@bouwew] - [#131659]) ([documentation](/integrations/plugwise))
+
+ [@bouwew]: https://github.com/bouwew
+ [#131659]: https://github.com/home-assistant/core/pull/131659
+
+ {% enddetails %}
+
+{% details "QNAP" %}
+
+The QNAP sensors will no longer have the following extra state attributes:
+
+- `memory_free`
+- `memory_percent_used`
+- `memory_size`
+- `memory_used`
+- `network_err`
+- `network_link_status`
+- `network_max_speed`
+- `network_rx`
+- `network_tx`
+- `status`
+- `system_temp`
+- `uptime`
+- `volume_percentage_used`
+- `volume_size_free`
+- `volume_size_total`
+- `volume_size_used`
+
+These extra state attributes were deprecated in Home Assistant 2024.6 and have
+now been removed. If you are using this in your automation or script, use
+the separate available sensors instead.
+
+([@jbouwh] - [#130310]) ([documentation](/integrations/qnap))
+
+[@jbouwh]: https://github.com/jbouwh
+[#130310]: https://github.com/home-assistant/core/pull/130310
+
+{% enddetails %}
+
+{% details "Spotify" %}
+
+The Spotify audio feature sensors have been removed since Spotify
+removed access for them, starting 27 November.
+
+Additionally, featured and category playlists have been removed from
+the Spotify media browser since Spotify deprecated the API,
+starting on 27 November.
+
+([@joostlek] - [#131754] [#131758]) ([documentation](/integrations/spotify))
+
+[@joostlek]: https://github.com/joostlek
+[#131754]: https://github.com/home-assistant/core/pull/131754
+[#131758]: https://github.com/home-assistant/core/pull/131758
+
+{% enddetails %}
+
+{% details "Statistics" %}
+
+Previously the attributes of the entity states of the Statistics integration were only provided when they had a non `None` value.
+This has now changed so the attributes are always provided even with `None`
+values. You might need to modify your automations or scripts depending on
+whether these attributes are present or not.
+
+([@gjohansson-ST] - [#129353]) ([documentation](/integrations/statistics))
+
+[@gjohansson-ST]: https://github.com/gjohansson-ST
+[#129353]: https://github.com/home-assistant/core/pull/129353
+
+{% enddetails %}
+
+{% details "Stookwijzer" %}
+
+The Stookwijzer sensor has migrated to the new API provided by Atlas
+Leefomgeving. As a result, the reported states are slightly different.
+
+Old versus new:
+
+- Blue (`blauw`) -> Yellow (`code_yellow`)
+- Orange (`oranje`) -> Orange (`code_orange`)
+- Red (`rood`) -> Red (`code_red`)
+
+If you use the Stookwijzer sensor in your automations or scripts, you might
+need to adjust those for this change.
+
+([@frenck] - [#131567]) ([documentation](/integrations/stookwijzer))
+
+[@frenck]: https://github.com/frenck
+[#131567]: https://github.com/home-assistant/core/pull/131567
+
+{% enddetails %}
+
+{% details "Templates" %}
+
+The `this` template variable which is available in some templatable helpers was
+previously based on the new state instead of the current state.
+
+The change affects the following integrations, if templates use the `this`
+variable. The user might have to update their templates to reflect the above
+change using the `value` variable instead, which holds the new value.
+
+- `command_line`
+- `rest`
+- `scrape`
+- `snmp`
+- `sql`
+
+([@gjohansson-ST] - [#130135])
+
+[@gjohansson-ST]: https://github.com/gjohansson-ST
+[#130135]: https://github.com/home-assistant/core/pull/130135
+
+{% enddetails %}
+
+{% details "Z-Wave" %}
+
+With this release, you will need to update your zwave-js-server instance. You
+must use zwave-js-server 1.39.0 or greater (schema 39).
+
+- If you use the Z-Wave JS add-on, you need at least version `0.9.0`.
+- If you use the Z-Wave JS UI add-on, you need at least version [`3.17.0`](https://github.com/hassio-addons/addon-zwave-js-ui/releases/tag/v3.17.0).
+- If you use the Z-Wave JS UI Docker container, you need at least version [`9.26.0`](https://github.com/zwave-js/zwave-js-ui/releases/tag/v9.26.0).
+- If you run your own Docker container or some other installation method, you will need to update your zwave-js-server instance to at least `1.39.0`.
+
+([@MindFreeze] - [#129482]) ([documentation](/integrations/zwave_js))
+
+[@MindFreeze]: https://github.com/MindFreeze
+[#129482]: https://github.com/home-assistant/core/pull/129482
+
+{% 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:
+
+- [Camera API changes](https://developers.home-assistant.io/blog/2024/11/26/camera-deprecations)
+- [Integration quality scale](https://developers.home-assistant.io/blog/2024/11/20/integration-quality-scale)
+- [New options flow properties](https://developers.home-assistant.io/blog/2024/11/12/options-flow/)
+- [Translating units of measurement](https://developers.home-assistant.io/blog/2024/11/21/unit-of-measurement-translations)
+- [Utility function homeassistant.util.dt.utc_to_timestamp is deprecated](https://developers.home-assistant.io/blog/2024/11/28/dt-util-utc-to-timestamp-deprecation/)
+
+[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 2024.12](/changelogs/core-2024.12)
diff --git a/source/addons/index.html b/source/addons/index.html
index 06a21502139..82fe0e71ac2 100644
--- a/source/addons/index.html
+++ b/source/addons/index.html
@@ -37,5 +37,5 @@ vendor of the application you'd like to install.
-
-
+
+ {% include custom/news.html %}
{% include custom/features.html %}
-
-
-
-
Home Assistant in the press
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+ {% include custom/press.html %}
-
The Home Assistant project is sponsored by
diff --git a/source/voice_control/assist_create_open_ai_personality.markdown b/source/voice_control/assist_create_open_ai_personality.markdown
index 41cece80ca9..5c2aefc7060 100644
--- a/source/voice_control/assist_create_open_ai_personality.markdown
+++ b/source/voice_control/assist_create_open_ai_personality.markdown
@@ -2,9 +2,9 @@
title: "Create a personality with AI"
related:
- docs: /voice_control/voice_remote_cloud_assistant/
- title: Cloud assistant pipeline
+ title: Cloud Assistant pipeline
- docs: /voice_control/voice_remote_local_assistant/
- title: Local assistant pipeline
+ title: Local Assistant pipeline
- url: https://www.nabucasa.com
title: Home Assistant Cloud
- docs: /integrations/google_generative_ai_conversation/
@@ -16,63 +16,63 @@ related:
---
-You can give your voice assistant personality by using an AI conversation agent. Currently, this works with the **OpenAI Conversation** or the **Google Generative AI** integration.
+You can give your voice assistant personality by using an AI conversation agent.
-For this tutorial, we will work with OpenAI. This requires an OpenAI account. For what we do here, the free trial option is sufficient.
+## What can I do in Assist with AI exactly?
-## Demos
+- Pick the LLM provider of your choice, either local or cloud, as long as it las a conversational agent.
+- Select a personality based on a prompt.
+- Get replies with the character's personality you defined.
+- Perform Home Assistant intents (turn on-off lights, etc), as long as Assist is correctly configured as per our [best practices](/voice_control/best_practices).
-### Interview with an AI Mario personality
-
-
-
-### Using Assist with AI to control your smart home
-
-An 1-minute clip showing how Assist is using AI to control a smart home.
+Check this 1-minute clip showing how Assist is using AI to control a smart home.
+## What LLM providers are available?
+
+LLM-based agents are evolving constantly, and Home Assistant supports most of them. If you'd like to get a deeper knowledge on how to pick the best choice for your setup, [here](https://github.com/allenporter/home-assistant-datasets/tree/main/reports) is a comparison study you can check.
+
+There are cloud agents provided by [Open AI](/integrations/openai_conversation/) or [Anthropic](/integrations/anthropic/) and local ones provided by [Ollama](/integrations/ollama), and both cases are supported by Home Assistant.
+
## Prerequisites
-This tutorial assumes you have a few things set up already:
+- Home Assistant and Assist is configured following our [best practices](/voice_control/best_practices).
+- An account in the conversational agent of the LLM provider of your choice. If you want to test the process, you can create a free account on Open AI.
+- In case of a local LLM solution, you need to have the model installed.
-- [Home Assistant Cloud](https://www.nabucasa.com) or a manually configured [Assist Pipeline](/integrations/assist_pipeline)
+### Creating a voice assistant personality with an LLM-based conversation agent
-### Creating an OpenAI voice assistant personality
+1. Go to {% my integrations title="**Settings** > **Devices & Services**" %} **Add Integration**, find your LLM provider and set it up with your API key.
+ - In case of a provider of local agents like Ollama, you need to configure the local URL where the agent is installed. Follow the specific [integration recommendations](/integrations/ollama) in this case.
+
+2. Go to **Settings > 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.
-Using OpenAI requires an OpenAI account. For this tutorial, the free trial option is sufficient. No need to leave your credit card information.
+ 
-1. [Set up an OpenAI account and install the OpenAI conversation](/integrations/openai_conversation/) integration.
-2. Create a Mario personality.
- - Once you installed the **OpenAI Conversation** integration, go to {% my integrations title="**Settings** > **Devices & Services**" %}. In the **OpenAI Conversation integration**, select **Configure**.
-
- 
- - In the **Prompt template** field, enter the following text:
+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.
+
+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::
`You are Super Mario from Mario Bros. Be funny.`
-
- - Define if the OpenAI voice assistant is allowed to control the devices in your home.
- - **No control**: you can talk to Mario, but it cannot control devices.
- - **Assist**: you can talk to it and it can control devices. For example, it could turn on the lights.
+ - Define if the voice assistant is allowed to control the devices in your home.
+ - **No control**: you can talk to the agent, but it cannot control devices.
+ - **Assist**: you can talk to the agent and it can control devices. For example, it could turn on the lights.
- Assist can only control {% term entities %} that are [exposed](/voice_control/voice_remote_expose_devices/) to it.
- - Define the **Model**:
- - If you have a paid OpenAI subscription that supports GPT4.0, you can select **Submit**.
- - If you use the free trial version, deselect the **Recommended model settings** checkbox and select **Submit**.
- - Then, under **Model**, enter `gpt-3.5-turbo` and select **Submit**.
-
- 
-
-3. Give your personality a name:
- - Select **Rename** and change the name to `OpenAI Mario`.
-
- 
-4. Create a Mario assistant:
- - Under {% my voice_assistants title="**Settings** > **Voice assistants**" %}, select **Add assistant**.
- - Give it a name, select a language, and under **Conversation agent**, select the Mario OpenAI Conversation integration.
- 
- - Leave the other settings unchanged and select **Create**.
-5. You can repeat this with other OpenAI personalities. You can add as many OpenAI Conversation integrations as you would like.
- - To add a new personality, you need to create a new API key. Then, add a new OpenAI Conversation integration with that API key.
+ 
+
+ - 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 .
+ 
+
+ - 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 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)
## Tutorial: Setting up Assist with OpenAI
@@ -88,3 +88,9 @@ To learn how to use the AI assistant with your devices, refer to one of the foll
- [$13 voice assistant using ATOM Echo](/voice_control/thirteen-usd-voice-remote/)
- [Assist on Android](/voice_control/android/)
- [Assist on Apple](/voice_control/apple/)
+
+## Demos
+
+Check this interview with an AI Mario personality
+
+
diff --git a/source/voice_control/custom_sentences.markdown b/source/voice_control/custom_sentences.markdown
index 5cf3697a5cc..3a0bf1875c8 100644
--- a/source/voice_control/custom_sentences.markdown
+++ b/source/voice_control/custom_sentences.markdown
@@ -64,112 +64,9 @@ This is the easiest method to get started with custom sentences for automations.
8. Pick up your voice control device and speak the custom sentence.
- Your automation should now be triggered.
-## Setting up custom sentences in configuration.yaml
+### Setting up custom sentences in configuration.yaml
+To set up custom sentences in your configuration file follow [this tutorial](/voice_control/custom_sentences_yaml/).
-Intents and sentences may be added in the [`conversation`](/integrations/conversation/) config in your `configuration.yaml` file:
-
-{% raw %}
-
-```yaml
-# Example configuration.yaml
-conversation:
- intents:
- HassTurnOn:
- - "activate [the] {name}"
-```
-
-{% endraw %}
-
-This extends the default English sentences for the `HassTurnOn` intent, allowing you to say "activate the kitchen lights" as well as "turn on the kitchen lights".
-
-New intents can also be added, with their responses and actions defined using the [`intent_script`](/integrations/intent_script/) integration:
-
-{% raw %}
-
-```yaml
-# Example configuration.yaml
-conversation:
- intents:
- YearOfVoice:
- - "how is the year of voice going"
-
-intent_script:
- YearOfVoice:
- speech:
- text: "Great! We're at over 40 languages and counting."
-```
-
-{% endraw %}
-
-Besides a text response, `intent_script` can trigger any `action` available in Home Assistant, such as calling a service or firing an event.
-
-## Setting up sentences in the config directory
-
-More advanced customization can be done in Home Assistant's `config` directory. YAML files in `config/custom_sentences/en`, for example, will be loaded when English sentences (language code `en`) are requested.
-
-The following example creates a new `SetVolume` intent that changes the volume on one of two media players:
-
-{% raw %}
-
-```yaml
-# Example config/custom_sentences/en/media.yaml
-language: "en"
-intents:
- SetVolume:
- data:
- - sentences:
- - "(set|change) {media_player} volume to {volume} [percent]"
- - "(set|change) [the] volume for {media_player} to {volume} [percent]"
-lists:
- media_player:
- values:
- - in: "living room"
- out: "media_player.living_room"
- - in: "bedroom"
- out: "media_player.bedroom"
- volume:
- range:
- from: 0
- to: 100
-```
-
-{% endraw %}
-
-As mentioned above, you can then use the `intent_script` integration to implement an action and provide a response for `SetVolume`:
-
-{% raw %}
-
-```yaml
-# Example configuration.yaml
-intent_script:
- SetVolume:
- action:
- service: "media_player.volume_set"
- data:
- entity_id: "{{ media_player }}"
- volume_level: "{{ volume / 100.0 }}"
- speech:
- text: "Volume changed to {{ volume }}"
-```
-
-{% endraw %}
-
-## Customizing responses
-
-Responses for existing intents can be customized as well in `config/custom_sentences/`:
-
-{% raw %}
-
-```yaml
-# Example config/custom_sentences/en/responses.yaml
-language: "en"
-responses:
- intents:
- HassTurnOn:
- default: "I have turned on the {{ slots.name }}"
-```
-
-{% endraw %}
## Related devices and installation tutorials
diff --git a/source/voice_control/custom_sentences_yaml.markdown b/source/voice_control/custom_sentences_yaml.markdown
new file mode 100644
index 00000000000..b9cb3af8ea1
--- /dev/null
+++ b/source/voice_control/custom_sentences_yaml.markdown
@@ -0,0 +1,125 @@
+---
+title: "Setting up custom sentences in configuration.yaml"
+related:
+ - docs: /voice_control/aliases/
+ title: Create aliases
+ - docs: /docs/scripts/#respond-to-a-conversation
+ title: Conversation response script action
+ - docs: /docs/automation/trigger/#sentence-trigger
+ title: Sentence triggers
+ - docs: /docs/automation/trigger/#sentence-wildcards
+ title: Sentence wildcards
+ - url: https://developers.home-assistant.io/docs/intent_builtin/
+ title: View existing intents
+---
+
+Intents and sentences may be added in the [`conversation`](/integrations/conversation/) config in your `configuration.yaml` file:
+
+{% raw %}
+
+```yaml
+# Example configuration.yaml
+conversation:
+ intents:
+ HassTurnOn:
+ - "activate [the] {name}"
+```
+
+{% endraw %}
+
+This extends the default English sentences for the `HassTurnOn` intent, allowing you to say "activate the kitchen lights" as well as "turn on the kitchen lights".
+
+New intents can also be added, with their responses and actions defined using the [`intent_script`](/integrations/intent_script/) integration:
+
+{% raw %}
+
+```yaml
+# Example configuration.yaml
+conversation:
+ intents:
+ YearOfVoice:
+ - "how is the year of voice going"
+
+intent_script:
+ YearOfVoice:
+ speech:
+ text: "Great! We're at over 40 languages and counting."
+```
+
+{% endraw %}
+
+Besides a text response, `intent_script` can trigger any `action` available in Home Assistant, such as calling a service or firing an event.
+
+## Setting up sentences in the config directory
+
+More advanced customization can be done in Home Assistant's `config` directory. YAML files in `config/custom_sentences/en`, for example, will be loaded when English sentences (language code `en`) are requested.
+
+The following example creates a new `SetVolume` intent that changes the volume on one of two media players:
+
+{% raw %}
+
+```yaml
+# Example config/custom_sentences/en/media.yaml
+language: "en"
+intents:
+ SetVolume:
+ data:
+ - sentences:
+ - "(set|change) {media_player} volume to {volume} [percent]"
+ - "(set|change) [the] volume for {media_player} to {volume} [percent]"
+lists:
+ media_player:
+ values:
+ - in: "living room"
+ out: "media_player.living_room"
+ - in: "bedroom"
+ out: "media_player.bedroom"
+ volume:
+ range:
+ from: 0
+ to: 100
+```
+
+{% endraw %}
+
+As mentioned above, you can then use the `intent_script` integration to implement an action and provide a response for `SetVolume`:
+
+{% raw %}
+
+```yaml
+# Example configuration.yaml
+intent_script:
+ SetVolume:
+ action:
+ service: "media_player.volume_set"
+ data:
+ entity_id: "{{ media_player }}"
+ volume_level: "{{ volume / 100.0 }}"
+ speech:
+ text: "Volume changed to {{ volume }}"
+```
+
+{% endraw %}
+
+## Customizing responses
+
+Responses for existing intents can be customized as well in `config/custom_sentences/`:
+
+{% raw %}
+
+```yaml
+# Example config/custom_sentences/en/responses.yaml
+language: "en"
+responses:
+ intents:
+ HassTurnOn:
+ default: "I have turned on the {{ slots.name }}"
+```
+
+{% endraw %}
+
+## Related devices and installation tutorials
+
+- [Custom sentences main page](/voice_control/custom_sentences)
+- [$13 voice assistant for Home Assistant](/voice_control/thirteen-usd-voice-remote/)
+- [S3-BOX-3 voice assistant](/voice_control/s3_box_voice_assistant/)
diff --git a/source/voice_control/index.markdown b/source/voice_control/index.markdown
index 14f21baba7b..dffda69c155 100644
--- a/source/voice_control/index.markdown
+++ b/source/voice_control/index.markdown
@@ -13,7 +13,7 @@ related:
title: Home Assistant Cloud
---
-This section will help you set up Assist, which is Home Assistant voice assistant.
+This section will help you set up Assist, which is Home Assistant voice assistant.
Assist allows you to control Home Assistant using natural language. It is built on top of an open voice foundation and powered by knowledge provided by our community.
@@ -25,9 +25,9 @@ As for the rest of Home Assistant core functionalities, Assist can be personaliz
-Although adding voice to your smart home configuration is exciting, it will require you to check your existing setup of Home Assistant, especially if you made a lot of customization. But we have prepared a guide of steps and best practices to help you out, as well as our [Troubleshooting](/voice_source/troubleshooting/) guides.
+Although adding voice to your smart home configuration is exciting, it will require you to check your existing setup of Home Assistant, especially if you made a lot of customization. But we have prepared a guide of steps and best practices to help you out, as well as our [Troubleshooting](/voice_control/troubleshooting/) guides.
-Ready? Now let's get started
+Ready? Now let's get started
- [I plan to use a local speech-to-text/text-to-speech setup](/voice_control/voice_remote_local_assistant/)
- [I plan to use Home Assistant Cloud](/voice_control/voice_remote_cloud_assistant/) (recommended as it is the simplest)
@@ -47,6 +47,474 @@ Another things you can do to further push your setup:
## Supported languages and sentences
+Assist aims to support more languages than other voice assistants, but this is still a work in progress, and we need your help.
+
+
+
+
+
+
Check supported languages here
+
+
+
+
+
+
+ Local
+
+
+
+
+
Not supported
+
Needs more work
+
Usable
+
Fully supported
+
+
+
+ Home Assistant Cloud
+
+
+
+
+
Not supported
+
Needs more work
+
Usable
+
Fully supported
+
+
+
+
+
+
+
+
+
Assist already supports a wide range of [languages](https://developers.home-assistant.io/docs/voice/intent-recognition/supported-languages). Use the [built-in sentences](/voice_control/builtin_sentences) to control entities and areas, or [create your own sentences](/voice_control/custom_sentences/).
diff --git a/source/voice_control/voice_remote_cloud_assistant.markdown b/source/voice_control/voice_remote_cloud_assistant.markdown
index 13d73949278..a5c9d65a64f 100644
--- a/source/voice_control/voice_remote_cloud_assistant.markdown
+++ b/source/voice_control/voice_remote_cloud_assistant.markdown
@@ -15,10 +15,10 @@ related:
Before being able to use Assist, you need to configure it.
-The simplest and most effective way to use Assist is to leverage the voice providers (for speech-to-text and test-to-speech) included in Home Assistant Cloud.
+The simplest and most effective way to use Assist is to leverage the voice providers (for speech-to-text and text-to-speech) included in Home Assistant Cloud.
This page will detail how to do just that.
-If you are interested in setting up a fully local voice assistant, follow this procedure instead
+If you are interested in setting up a fully local voice assistant, follow this procedure instead.
## Setting up a cloud Assist pipeline
diff --git a/source/voice_control/voice_remote_local_assistant.markdown b/source/voice_control/voice_remote_local_assistant.markdown
index efbcf494369..2a347ccbcad 100644
--- a/source/voice_control/voice_remote_local_assistant.markdown
+++ b/source/voice_control/voice_remote_local_assistant.markdown
@@ -13,7 +13,7 @@ related:
title: Best practices with Assist
---
-The simplest and most effective way to use Assist is to leverage the voice providers (for speech-to-text and test-to-speech) included in [Home Assistant Cloud](/voice_control/voice_remote_cloud_assistant/)
+The simplest and most effective way to use Assist is to leverage the voice providers (for speech-to-text and text-to-speech) included in [Home Assistant Cloud](/voice_control/voice_remote_cloud_assistant/)
If you are interested in setting up a fully local voice assistant, follow this setup:
@@ -28,10 +28,6 @@ In Home Assistant, the Assist pipelines are made up of various components that t
- For understanding, it needs to have a text-to-speech and speech-to-text software integrated.
- For running all together, it needs to have the Home Assistant Operating System running.
-### First, make sure Assist can run in your local setup
-
-Check our comparison table to be sure local setup is going to meet your expectations.
-
## Some options for speech-to-text and text-to-speech
There is a speech-to-text and text-to-speech option that runs entirely local. No data is sent to external servers for processing.
@@ -99,4 +95,4 @@ The options are also documented in the add-on itself. Go to the {% my supervisor
Also be sure to check the specific tutorial for [using Piper in Automations](voice_control/using_tts_in_automation/)
## Next steps
-Once the pipeline is configured, you are ready to jump into the basic conversation setup in Best Practices
\ No newline at end of file
+Once the pipeline is configured, you are ready to jump into the basic conversation setup in Best Practices