From 2bb4a3f19e2e7d1abe00481f37d8496031d5e4d1 Mon Sep 17 00:00:00 2001 From: "J. Nick Koston" Date: Wed, 24 Aug 2022 20:25:42 -0500 Subject: [PATCH 01/23] Update Qingping to add new devices (#23880) --- source/_integrations/qingping.markdown | 1 + 1 file changed, 1 insertion(+) diff --git a/source/_integrations/qingping.markdown b/source/_integrations/qingping.markdown index 7e492e6fe9b..aaac807b064 100644 --- a/source/_integrations/qingping.markdown +++ b/source/_integrations/qingping.markdown @@ -31,3 +31,4 @@ The Qingping integration will automatically discover devices once the [Bluetooth - [Door/Window Sensor](https://www.qingping.co/door-window-sensor/overview) (CGH1) - [LEE GUITARS Thermo-Hygrometer](https://www.qingping.co/lee-guitars-thermo-hygrometer/overview) (CGM1) - [Motion & Ambient Light Sensor](https://www.qingping.co/motion-light-sensor/overview) (CGPR1) +- [Temp RH M](https://www.qingping.co/temp-rh-monitor/overview#mi) (CGG1) From 89cbae7fa15f0e282be49a297369c52ab3736d3c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Joakim=20S=C3=B8rensen?= Date: Thu, 25 Aug 2022 12:19:28 +0200 Subject: [PATCH 02/23] Redirect script editor (#23882) --- source/_redirects | 1 + 1 file changed, 1 insertion(+) diff --git a/source/_redirects b/source/_redirects index c04245c3ddd..4d66c47245f 100644 --- a/source/_redirects +++ b/source/_redirects @@ -402,6 +402,7 @@ /getting-started/installation-raspberry-pi-all-in-one /getting-started /docs/tools/keyring/ /docs/configuration/secrets /docs/tools/credstash/ /docs/configuration/secrets +/docs/scripts/editor/ /docs/scripts # Blog /blog/2019/05/29/release-94 /blog/2019/06/05/release-94 From 6f754550858576fa945dcf1a6968066b8c273b56 Mon Sep 17 00:00:00 2001 From: Paulus Schoutsen Date: Thu, 25 Aug 2022 18:17:05 +0000 Subject: [PATCH 03/23] 2022.8.7 --- _config.yml | 4 +- .../_posts/2022-08-03-release-20228.markdown | 51 +++++++++++++++++++ 2 files changed, 53 insertions(+), 2 deletions(-) diff --git a/_config.yml b/_config.yml index 45628e235ee..beb9a9b19a2 100644 --- a/_config.yml +++ b/_config.yml @@ -107,8 +107,8 @@ social: # Home Assistant release details current_major_version: 2022 current_minor_version: 8 -current_patch_version: 6 -date_released: 2022-08-18 +current_patch_version: 7 +date_released: 2022-08-25 # Either # or the anchor link to latest release notes in the blog post. # Must be prefixed with a # and have double quotes around it. diff --git a/source/_posts/2022-08-03-release-20228.markdown b/source/_posts/2022-08-03-release-20228.markdown index dadb5fd244a..959bb878439 100644 --- a/source/_posts/2022-08-03-release-20228.markdown +++ b/source/_posts/2022-08-03-release-20228.markdown @@ -49,6 +49,7 @@ Enjoy the release! - [Release 2022.8.4 - August 12](#release-202284---august-12) - [Release 2022.8.5 - August 15](#release-202285---august-15) - [Release 2022.8.6 - August 17](#release-202286---august-17) +- [Release 2022.8.7 - August 25](#release-202287---august-25) - [Need help? Join the community!](#need-help-join-the-community) - [Breaking Changes](#breaking-changes) - [Farewell to the following](#farewell-to-the-following) @@ -606,6 +607,56 @@ The following integrations are now available via the Home Assistant UI: [overkiz docs]: /integrations/overkiz/ [slack docs]: /integrations/slack/ +## Release 2022.8.7 - August 25 + +- Add edl21 sensor unit mapping for Hz ([@StephanU] - [#76783]) ([edl21 docs]) +- Change growatt server URL ([@coffeedave] - [#76824]) ([growatt_server docs]) +- Bump pySwitchbot to 0.18.12 ([@bdraco] - [#77040]) ([switchbot docs]) +- Bump pySwitchbot to 0.18.14 ([@bdraco] - [#77090]) ([switchbot docs]) +- Protect against an exception in Shelly climate platform ([@bieniu] - [#77102]) ([shelly docs]) +- Bump ZHA dependencies ([@puddly] - [#77125]) ([zha docs]) +- Minor deCONZ clean up ([@Kane610] - [#76323]) ([deconz docs]) +- Fix level controllable output controls in deCONZ ([@Kane610] - [#77223]) ([deconz docs]) +- Fix Aladdin connect multiple doors on one device ([@mkmer] - [#77226]) ([aladdin_connect docs]) +- Fix met_eireann default wind speed unit ([@donoghdb] - [#77229]) ([met_eireann docs]) +- Update xknx to 1.0.1 ([@farmio] - [#77244]) ([knx docs]) +- Fix grid_export_limit unit for DT inverters ([@mletenay] - [#77290]) ([goodwe docs]) +- Add BLE sensor to Aladdin_connect ([@mkmer] - [#76221]) ([aladdin_connect docs]) + +[#76221]: https://github.com/home-assistant/core/pull/76221 +[#76323]: https://github.com/home-assistant/core/pull/76323 +[#76783]: https://github.com/home-assistant/core/pull/76783 +[#76824]: https://github.com/home-assistant/core/pull/76824 +[#77040]: https://github.com/home-assistant/core/pull/77040 +[#77090]: https://github.com/home-assistant/core/pull/77090 +[#77102]: https://github.com/home-assistant/core/pull/77102 +[#77125]: https://github.com/home-assistant/core/pull/77125 +[#77223]: https://github.com/home-assistant/core/pull/77223 +[#77226]: https://github.com/home-assistant/core/pull/77226 +[#77229]: https://github.com/home-assistant/core/pull/77229 +[#77244]: https://github.com/home-assistant/core/pull/77244 +[#77290]: https://github.com/home-assistant/core/pull/77290 +[@Kane610]: https://github.com/Kane610 +[@StephanU]: https://github.com/StephanU +[@bdraco]: https://github.com/bdraco +[@bieniu]: https://github.com/bieniu +[@coffeedave]: https://github.com/coffeedave +[@donoghdb]: https://github.com/donoghdb +[@farmio]: https://github.com/farmio +[@mkmer]: https://github.com/mkmer +[@mletenay]: https://github.com/mletenay +[@puddly]: https://github.com/puddly +[aladdin_connect docs]: /integrations/aladdin_connect/ +[deconz docs]: /integrations/deconz/ +[edl21 docs]: /integrations/edl21/ +[goodwe docs]: /integrations/goodwe/ +[growatt_server docs]: /integrations/growatt_server/ +[knx docs]: /integrations/knx/ +[met_eireann docs]: /integrations/met_eireann/ +[shelly docs]: /integrations/shelly/ +[switchbot docs]: /integrations/switchbot/ +[zha docs]: /integrations/zha/ + ## Need help? Join the community! Home Assistant has a great community of users who are all more than willing From 7820a09bc423faa85ff3a90ae490cb2ee0e9d1ca Mon Sep 17 00:00:00 2001 From: "J. Nick Koston" Date: Thu, 25 Aug 2022 15:55:23 -0500 Subject: [PATCH 04/23] Update tested bluetooth adapters and add chipsets (#23859) * Update test bluetooth adapters and add chipsets * Update source/_integrations/bluetooth.markdown * Update source/_integrations/bluetooth.markdown * Update bluetooth.markdown * Update source/_integrations/bluetooth.markdown * Update source/_integrations/bluetooth.markdown --- source/_integrations/bluetooth.markdown | 25 +++++++++++++------------ 1 file changed, 13 insertions(+), 12 deletions(-) diff --git a/source/_integrations/bluetooth.markdown b/source/_integrations/bluetooth.markdown index b45aefd37e9..3db7efe0f93 100644 --- a/source/_integrations/bluetooth.markdown +++ b/source/_integrations/bluetooth.markdown @@ -59,21 +59,22 @@ If you experience an unreliable Bluetooth connection, installing a short USB ext ### Known working adapters -- ASUS USB-BT400 -- ASUS USB-BT500 -- Avantree DG45 -- Kinivo BTD-400 -- Maxuni BT-501 -- SUMEE BT501 -- UGREEN CM390 -- XDO BT802 (Long Range) -- ZEXMTE BT-505 (Long Range) -- ZEXMTE BT-DG54 +- ASUS USB-BT400 [BCM20702A1] +- ASUS USB-BT500 [RTL8761BU] +- Avantree DG45 [RTL8761BU] +- EDUP LOVE EP-B3536 [RTL8761BU] (Long Range) +- Kinivo BTD-400 [BCM20702A1] +- Maxuni BT-501 [RTL8761B] +- SUMEE BT501 [RTL8761B] +- UGREEN CM390 [RTL8761BU] +- XDO BT802 [RTL8761BU] (Long Range) +- ZEXMTE BT-505 [RTL8761BU] (Long Range) +- ZEXMTE BT-DG54 [RTL8761BU] ### Unsupported adapters -- tp-link UB400 - Frequent connection failures -- tp-link UB500 - Frequent connection failures +- tp-link UB400 [BCM20702A1] - Frequent connection failures with active connections +- tp-link UB500 [RTL8761BU] - Frequent connection failures with active connections ## Multiple adapters From 430c79ccadbb047d390ad7b0959a2af9f01609fc Mon Sep 17 00:00:00 2001 From: "J. Nick Koston" Date: Thu, 25 Aug 2022 16:51:57 -0500 Subject: [PATCH 05/23] Add thermopro integration (#23876) --- source/_integrations/thermopro.markdown | 27 +++++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 source/_integrations/thermopro.markdown diff --git a/source/_integrations/thermopro.markdown b/source/_integrations/thermopro.markdown new file mode 100644 index 00000000000..1a0848ae3ee --- /dev/null +++ b/source/_integrations/thermopro.markdown @@ -0,0 +1,27 @@ +--- +title: ThermoPro +description: Instructions on how to integrate ThermoPro devices into Home Assistant. +ha_category: + - Sensor +ha_bluetooth: true +ha_release: 2022.9 +ha_iot_class: Local Push +ha_codeowners: + - '@bdraco' +ha_domain: thermopro +ha_config_flow: true +ha_platforms: + - sensor +ha_integration_type: integration +--- + +Integrates [ThermoPro](https://buythermopro.com/) devices into Home Assistant. + +## Supported devices + +- [TP359](https://buythermopro.com/product/thermopro-tp59-bluetooth-wireless-thermometer-hygrometer-humidity-monitor/) +- [TP357](https://buythermopro.com/product/thermopro-tp357-bluetooth-digital-indoor-hygrometer-thermometer/) + +The ThermoPro integration will automatically discover devices once the [Bluetooth](/integrations/bluetooth) integration is enabled and functional. + +{% include integrations/config_flow.md %} From 4c6624a7611973410132216e2d17f84a8e1f785a Mon Sep 17 00:00:00 2001 From: Oscar Calvo <2091582+ocalvo@users.noreply.github.com> Date: Thu, 25 Aug 2022 16:36:04 -0600 Subject: [PATCH 06/23] Apply feedback from previous SMS doc update (#23864) Co-authored-by: Franck Nijhof --- source/_integrations/sms.markdown | 39 +++++++------------------------ 1 file changed, 9 insertions(+), 30 deletions(-) diff --git a/source/_integrations/sms.markdown b/source/_integrations/sms.markdown index 2777968b725..1300ac30077 100644 --- a/source/_integrations/sms.markdown +++ b/source/_integrations/sms.markdown @@ -61,6 +61,7 @@ Every time there is a message received, `event: sms.incoming_sms` is fired with Sample automation that forward all SMS to `user1`: #### Define a sensor in `configuration.yaml` to protect user phone number + ```yaml template: - sensor: @@ -74,16 +75,16 @@ template: ```yaml notify_sms_user1: - alias: Notify via SMS to User1 + alias: "Notify via SMS to User1" fields: message: - description: The message content - example: The light is on! + description: "The message content" + example: "The light is on!" sequence: - service: notify.sms data: message: "{{ message }}" - target: states(sensor.user1_phone_number) + target: "{{ states('sensor.user1_phone_number') }}" mode: single icon: mdi:chat-alert ``` @@ -95,42 +96,20 @@ notify_sms_user1: {% raw %} ```yaml -- id: 'forward_sms' - alias: Forward SMS - description: '' +- alias: "Forward SMS" trigger: - platform: event event_type: sms.incoming_sms - condition: [] action: - service: script.notify_sms_user1 data: - message: 'From: {{trigger.event.data.phone}} - {{trigger.event.data.text}} - ' - mode: single + message: | + From: {{trigger.event.data.phone}} + {{trigger.event.data.text}} mode: single ``` {% endraw %} -## Notes about the operating system - -If the integration is used with the Home Assistant Operating System, then version [3.6](https://github.com/home-assistant/hassos/releases/tag/3.6) or higher is required. - -For installations not running on Home Assistant or Home Assistant Core using Docker, you must install `gammu-dev` package: - -```bash -sudo apt-get install libgammu-dev -``` - -Before running for the first time, check that the system recognizes the modem by running: - -```bash -ls -l /dev/*USB* -``` - -Note: When running Home Assistant, you need to install the SSH add-on. - ## Required Hardware You will need a USB GSM stick modem or device like SIM800L v2 connected via USB UART. From 2de08b04d7a6f3afcb720171476b7ade97e3cdc5 Mon Sep 17 00:00:00 2001 From: Nathan Spencer Date: Thu, 25 Aug 2022 18:02:30 -0600 Subject: [PATCH 07/23] Update litterrobot documentation for v4 model (#23888) --- source/_integrations/litterrobot.markdown | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/source/_integrations/litterrobot.markdown b/source/_integrations/litterrobot.markdown index a0c4b3433ad..78b1e77e598 100644 --- a/source/_integrations/litterrobot.markdown +++ b/source/_integrations/litterrobot.markdown @@ -26,7 +26,7 @@ The Litter-Robot integration allows you to control and monitor your Wi-Fi-enable You will need a Litter-Robot account as well as a Wi-Fi-enabled Litter-Robot unit that has already been associated with your account. -The Feeder-Robot and Litter-Robot 4 are not currently supported by this integration. +The Feeder-Robot is not currently supported by this integration. {% include integrations/config_flow.md %} @@ -45,7 +45,9 @@ The following entities are created for this component and identified by a single | Status Code | `sensor` | Displays the status code (Clean Cycle in Progress, Ready, Drawer Full, etc). | | Waste Drawer | `sensor` | Displays the current waste drawer level. | | Clean Cycle Wait Time Minutes | `select` | View and select the clean cycle wait time. | -| Reset Waste Drawer | `button` | Button to reset the waste drawer level to 0%. | +| Reset Waste Drawer* | `button` | Button to reset the waste drawer level to 0%. | + +\* Litter-Robot 3 only ## Additional Attributes @@ -61,11 +63,11 @@ Some entities have attributes in addition to the default ones that are available ## Services -Services are utilized for additional functionality that is available in the Litter-Robot companion app. The following are currently available: +Services are utilized for additional functionality that is available in the Whisker (previously Litter-Robot) companion app. The following are currently available: ### set_sleep_mode -Enables (with `start_time` parameter) or disables sleep mode on the Litter-Robot. +Enables (with `start_time` parameter) or disables sleep mode on the Litter-Robot. Currently, this is limited to only the Litter-Robot 3. To make changes to the sleep schedule on your Litter-Robot 4, please continue to use the Whisker app. | Parameter | Type | Required | Description | | ---------- | ------ | -------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | From a38dcca197f935d07dacd36306865500bd13709b Mon Sep 17 00:00:00 2001 From: Erik Flodin Date: Fri, 26 Aug 2022 10:13:51 +0200 Subject: [PATCH 08/23] Mention the tibber statistics for production and profit (#23635) --- source/_integrations/tibber.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/_integrations/tibber.markdown b/source/_integrations/tibber.markdown index 5f239bf63d3..8ba2eebf8b3 100644 --- a/source/_integrations/tibber.markdown +++ b/source/_integrations/tibber.markdown @@ -20,7 +20,7 @@ ha_integration_type: integration --- The `tibber` integration provides a sensor with the current electricity price if you are a [Tibber](https://tibber.com/) customer. -If you have a [Tibber Pulse](https://norge.tibber.com/products/pulse/) or [Watty](https://tibber.com/se/store/produkt/watty-smart-energimatare) it will also show the electricity consumption in real-time. You get a sensor for monthly consumption, monthly cost, and monthly peak hour. If you do have a real-time meter it is updated once every hour, oterwise it is updated once per day. Statistics with hourly consumption and cost data is generated that can be used in the [Energy Dashboard](/docs/energy/). (The ids are `tibber:energy_consumption_HOMEID` and `tibber:energy_totalcost_HOMEID` ) +If you have a [Tibber Pulse](https://norge.tibber.com/products/pulse/) or [Watty](https://tibber.com/se/store/produkt/watty-smart-energimatare) it will also show the electricity consumption in real-time. You get a sensor for monthly consumption, monthly cost, and monthly peak hour. If you do have a real-time meter it is updated once every hour, otherwise it is updated once per day. Statistics with hourly consumption and cost data is generated that can be used in the [Energy Dashboard](/docs/energy/) (the ids are `tibber:energy_consumption_HOMEID` and `tibber:energy_totalcost_HOMEID`). If you produce energy there are also statistics with hourly production and profit data generated which can also be used there (the ids are `tibber:energy_production_HOMEID` and `tibber:energy_profit_HOMEID`). There is currently support for the following device types within Home Assistant: From a84234a10575e2376165133455bb185facba8816 Mon Sep 17 00:00:00 2001 From: "J. Nick Koston" Date: Fri, 26 Aug 2022 03:31:35 -0500 Subject: [PATCH 09/23] Add support for passive Bluetooth scanning on Linux (#23869) --- source/_integrations/bluetooth.markdown | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/source/_integrations/bluetooth.markdown b/source/_integrations/bluetooth.markdown index 3db7efe0f93..36c07ca5607 100644 --- a/source/_integrations/bluetooth.markdown +++ b/source/_integrations/bluetooth.markdown @@ -88,6 +88,14 @@ The following methods are known to work to add multiple adapters: Integrations that have followed the [Best practices for library authors](https://developers.home-assistant.io/docs/network_discovery?_highlight=bluetooth#best-practices-for-library-authors) will automatically connect via the adapter with the best signal and failover to an active adapter if one becomes unavailable. +## Passive Scanning + +Passive Scanning on Linux can be enabled in the options flow per adapter if the host system runs BlueZ 4.63 or later with experimental features enabled. + +Many integrations require active scanning and may not function when scanning is passive. + +{% include integrations/option_flow.md %} + ## Remote adapters The Bluetooth integration supports receiving advertisement data from external adapters for devices and sensors that do not need an active connection. The number of remote scanners is limited only by the performance of the host system. From cef4a831783baacb23b2aa496a41552b1bbb725f Mon Sep 17 00:00:00 2001 From: Maciej Bieniek Date: Fri, 26 Aug 2022 10:37:02 +0200 Subject: [PATCH 10/23] Add information about `hw_version` to MQTT documentation (#23861) --- source/_docs/mqtt/discovery.markdown | 1 + source/_integrations/alarm_control_panel.mqtt.markdown | 4 ++++ source/_integrations/binary_sensor.mqtt.markdown | 4 ++++ source/_integrations/button.mqtt.markdown | 4 ++++ source/_integrations/camera.mqtt.markdown | 4 ++++ source/_integrations/climate.mqtt.markdown | 4 ++++ source/_integrations/cover.mqtt.markdown | 4 ++++ source/_integrations/device_tracker.mqtt.markdown | 4 ++++ source/_integrations/fan.mqtt.markdown | 4 ++++ source/_integrations/humidifier.mqtt.markdown | 4 ++++ source/_integrations/light.mqtt.markdown | 4 ++++ source/_integrations/lock.mqtt.markdown | 4 ++++ source/_integrations/number.mqtt.markdown | 4 ++++ source/_integrations/select.mqtt.markdown | 4 ++++ source/_integrations/sensor.mqtt.markdown | 4 ++++ source/_integrations/siren.mqtt.markdown | 4 ++++ source/_integrations/switch.mqtt.markdown | 4 ++++ source/_integrations/tag.mqtt.markdown | 4 ++++ source/_integrations/vacuum.mqtt.markdown | 4 ++++ 19 files changed, 73 insertions(+) diff --git a/source/_docs/mqtt/discovery.markdown b/source/_docs/mqtt/discovery.markdown index ec336658654..09892697175 100644 --- a/source/_docs/mqtt/discovery.markdown +++ b/source/_docs/mqtt/discovery.markdown @@ -308,6 +308,7 @@ Supported abbreviations for device registry configuration: 'name': 'name', 'mf': 'manufacturer', 'mdl': 'model', + 'hw': 'hw_version', 'sw': 'sw_version', 'sa': 'suggested_area', ``` diff --git a/source/_integrations/alarm_control_panel.mqtt.markdown b/source/_integrations/alarm_control_panel.mqtt.markdown index 3194873d5c5..0e635ab0c7f 100644 --- a/source/_integrations/alarm_control_panel.mqtt.markdown +++ b/source/_integrations/alarm_control_panel.mqtt.markdown @@ -135,6 +135,10 @@ device: description: 'A list of connections of the device to the outside world as a list of tuples `[connection_type, connection_identifier]`. For example the MAC address of a network interface: `"connections": [["mac", "02:5b:26:a8:dc:12"]]`.' required: false type: list + hw_version: + description: The hardware version of the device. + required: false + type: string identifiers: description: "A list of IDs that uniquely identify the device. For example a serial number." required: false diff --git a/source/_integrations/binary_sensor.mqtt.markdown b/source/_integrations/binary_sensor.mqtt.markdown index 849e69d15cb..035cabd138b 100644 --- a/source/_integrations/binary_sensor.mqtt.markdown +++ b/source/_integrations/binary_sensor.mqtt.markdown @@ -99,6 +99,10 @@ device: description: "A list of connections of the device to the outside world as a list of tuples `[connection_type, connection_identifier]`. For example the MAC address of a network interface: `'connections': ['mac', '02:5b:26:a8:dc:12']`." required: false type: [list, map] + hw_version: + description: The hardware version of the device. + required: false + type: string identifiers: description: A list of IDs that uniquely identify the device. For example a serial number. required: false diff --git a/source/_integrations/button.mqtt.markdown b/source/_integrations/button.mqtt.markdown index 087080634ed..9356f3f728d 100644 --- a/source/_integrations/button.mqtt.markdown +++ b/source/_integrations/button.mqtt.markdown @@ -96,6 +96,10 @@ device: description: 'A list of connections of the device to the outside world as a list of tuples `[connection_type, connection_identifier]`. For example the MAC address of a network interface: `"connections": [["mac", "02:5b:26:a8:dc:12"]]`.' required: false type: list + hw_version: + description: The hardware version of the device. + required: false + type: string identifiers: description: A list of IDs that uniquely identify the device. For example a serial number. required: false diff --git a/source/_integrations/camera.mqtt.markdown b/source/_integrations/camera.mqtt.markdown index c9276c0205e..4aa5a56ab23 100644 --- a/source/_integrations/camera.mqtt.markdown +++ b/source/_integrations/camera.mqtt.markdown @@ -98,6 +98,10 @@ device: description: 'A list of connections of the device to the outside world as a list of tuples `[connection_type, connection_identifier]`. For example the MAC address of a network interface: `"connections": ["mac", "02:5b:26:a8:dc:12"]`.' required: false type: list + hw_version: + description: The hardware version of the device. + required: false + type: string identifiers: description: 'A list of IDs that uniquely identify the device. For example a serial number.' required: false diff --git a/source/_integrations/climate.mqtt.markdown b/source/_integrations/climate.mqtt.markdown index a0408864e6c..959e7c8fe62 100644 --- a/source/_integrations/climate.mqtt.markdown +++ b/source/_integrations/climate.mqtt.markdown @@ -122,6 +122,10 @@ device: description: 'A list of connections of the device to the outside world as a list of tuples `[connection_type, connection_identifier]`. For example the MAC address of a network interface: `"connections": [["mac", "02:5b:26:a8:dc:12"]]`.' required: false type: list + hw_version: + description: The hardware version of the device. + required: false + type: string identifiers: description: 'A list of IDs that uniquely identify the device. For example a serial number.' required: false diff --git a/source/_integrations/cover.mqtt.markdown b/source/_integrations/cover.mqtt.markdown index 0315165875e..c0541b4a5af 100644 --- a/source/_integrations/cover.mqtt.markdown +++ b/source/_integrations/cover.mqtt.markdown @@ -109,6 +109,10 @@ device: description: 'A list of connections of the device to the outside world as a list of tuples `[connection_type, connection_identifier]`. For example the MAC address of a network interface: `"connections": ["mac", "02:5b:26:a8:dc:12"]`.' required: false type: list + hw_version: + description: "The hardware version of the device." + required: false + type: string identifiers: description: 'A list of IDs that uniquely identify the device. For example a serial number.' required: false diff --git a/source/_integrations/device_tracker.mqtt.markdown b/source/_integrations/device_tracker.mqtt.markdown index fea239e606d..e79615055fb 100644 --- a/source/_integrations/device_tracker.mqtt.markdown +++ b/source/_integrations/device_tracker.mqtt.markdown @@ -133,6 +133,10 @@ device: description: "A list of connections of the device to the outside world as a list of tuples `[connection_type, connection_identifier]`. For example the MAC address of a network interface: `'connections': ['mac', '02:5b:26:a8:dc:12']`." required: false type: [list, map] + hw_version: + description: The hardware version of the device. + required: false + type: string identifiers: description: A list of IDs that uniquely identify the device. For example a serial number. required: false diff --git a/source/_integrations/fan.mqtt.markdown b/source/_integrations/fan.mqtt.markdown index 48ace2c0f97..e1eb5fd9992 100644 --- a/source/_integrations/fan.mqtt.markdown +++ b/source/_integrations/fan.mqtt.markdown @@ -104,6 +104,10 @@ device: description: 'A list of connections of the device to the outside world as a list of tuples `[connection_type, connection_identifier]`. For example the MAC address of a network interface: `"connections": [["mac", "02:5b:26:a8:dc:12"]]`.' required: false type: [list, map] + hw_version: + description: The hardware version of the device. + required: false + type: string identifiers: description: A list of IDs that uniquely identify the device. For example a serial number. required: false diff --git a/source/_integrations/humidifier.mqtt.markdown b/source/_integrations/humidifier.mqtt.markdown index d89e3095a79..7a6ae783f3a 100644 --- a/source/_integrations/humidifier.mqtt.markdown +++ b/source/_integrations/humidifier.mqtt.markdown @@ -106,6 +106,10 @@ device: description: 'A list of connections of the device to the outside world as a list of tuples `[connection_type, connection_identifier]`. For example the MAC address of a network interface: `"connections": [["mac", "02:5b:26:a8:dc:12"]]`.' required: false type: [list, map] + hw_version: + description: The hardware version of the device. + required: false + type: string identifiers: description: A list of IDs that uniquely identify the device. For example a serial number. required: false diff --git a/source/_integrations/light.mqtt.markdown b/source/_integrations/light.mqtt.markdown index 3c6df6d18d1..82cdf58c9ec 100644 --- a/source/_integrations/light.mqtt.markdown +++ b/source/_integrations/light.mqtt.markdown @@ -167,6 +167,10 @@ device: description: 'A list of connections of the device to the outside world as a list of tuples `[connection_type, connection_identifier]`. For example the MAC address of a network interface: `"connections": [["mac", "02:5b:26:a8:dc:12"]]`.' required: false type: list + hw_version: + description: The hardware version of the device. + required: false + type: string identifiers: description: 'A list of IDs that uniquely identify the device. For example a serial number.' required: false diff --git a/source/_integrations/lock.mqtt.markdown b/source/_integrations/lock.mqtt.markdown index 405702eda53..f323e377447 100644 --- a/source/_integrations/lock.mqtt.markdown +++ b/source/_integrations/lock.mqtt.markdown @@ -102,6 +102,10 @@ device: description: 'A list of connections of the device to the outside world as a list of tuples `[connection_type, connection_identifier]`. For example the MAC address of a network interface: `"connections": [["mac", "02:5b:26:a8:dc:12"]]`.' required: false type: list + hw_version: + description: The hardware version of the device. + required: false + type: string identifiers: description: 'A list of IDs that uniquely identify the device. For example a serial number.' required: false diff --git a/source/_integrations/number.mqtt.markdown b/source/_integrations/number.mqtt.markdown index 9d98f91c971..ea393329dbe 100644 --- a/source/_integrations/number.mqtt.markdown +++ b/source/_integrations/number.mqtt.markdown @@ -89,6 +89,10 @@ device: description: 'A list of connections of the device to the outside world as a list of tuples `[connection_type, connection_identifier]`. For example the MAC address of a network interface: `"connections": ["mac", "02:5b:26:a8:dc:12"]`.' required: false type: list + hw_version: + description: The hardware version of the device. + required: false + type: string identifiers: description: 'A list of IDs that uniquely identify the device. For example a serial number.' required: false diff --git a/source/_integrations/select.mqtt.markdown b/source/_integrations/select.mqtt.markdown index 796b94e5269..69dc6bbe7b0 100644 --- a/source/_integrations/select.mqtt.markdown +++ b/source/_integrations/select.mqtt.markdown @@ -106,6 +106,10 @@ device: description: 'A list of connections of the device to the outside world as a list of tuples `[connection_type, connection_identifier]`. For example the MAC address of a network interface: `"connections": ["mac", "02:5b:26:a8:dc:12"]`.' required: false type: list + hw_version: + description: The hardware version of the device. + required: false + type: string identifiers: description: 'A list of IDs that uniquely identify the device. For example a serial number.' required: false diff --git a/source/_integrations/sensor.mqtt.markdown b/source/_integrations/sensor.mqtt.markdown index 8fc0e9cab7f..75418f5e1d0 100644 --- a/source/_integrations/sensor.mqtt.markdown +++ b/source/_integrations/sensor.mqtt.markdown @@ -90,6 +90,10 @@ device: description: 'A list of connections of the device to the outside world as a list of tuples `[connection_type, connection_identifier]`. For example the MAC address of a network interface: `"connections": [["mac", "02:5b:26:a8:dc:12"]]`.' required: false type: list + hw_version: + description: The hardware version of the device. + required: false + type: string identifiers: description: A list of IDs that uniquely identify the device. For example a serial number. required: false diff --git a/source/_integrations/siren.mqtt.markdown b/source/_integrations/siren.mqtt.markdown index 03d06dad796..2ed69491d47 100644 --- a/source/_integrations/siren.mqtt.markdown +++ b/source/_integrations/siren.mqtt.markdown @@ -112,6 +112,10 @@ device: description: 'A list of connections of the device to the outside world as a list of tuples `[connection_type, connection_identifier]`. For example the MAC address of a network interface: `"connections": [["mac", "02:5b:26:a8:dc:12"]]`.' required: false type: list + hw_version: + description: The hardware version of the device. + required: false + type: string identifiers: description: A list of IDs that uniquely identify the device. For example a serial number. required: false diff --git a/source/_integrations/switch.mqtt.markdown b/source/_integrations/switch.mqtt.markdown index 6b7b01af154..32d027cf0fc 100644 --- a/source/_integrations/switch.mqtt.markdown +++ b/source/_integrations/switch.mqtt.markdown @@ -100,6 +100,10 @@ device: description: 'A list of connections of the device to the outside world as a list of tuples `[connection_type, connection_identifier]`. For example the MAC address of a network interface: `"connections": [["mac", "02:5b:26:a8:dc:12"]]`.' required: false type: list + hw_version: + description: The hardware version of the device. + required: false + type: string identifiers: description: A list of IDs that uniquely identify the device. For example a serial number. required: false diff --git a/source/_integrations/tag.mqtt.markdown b/source/_integrations/tag.mqtt.markdown index 6fe6e444fd6..fef5180e88f 100644 --- a/source/_integrations/tag.mqtt.markdown +++ b/source/_integrations/tag.mqtt.markdown @@ -37,6 +37,10 @@ device: description: "A list of connections of the device to the outside world as a list of tuples `[connection_type, connection_identifier]`. For example the MAC address of a network interface: `'connections': ['mac', '02:5b:26:a8:dc:12']`." required: false type: [list, map] + hw_version: + description: The hardware version of the device. + required: false + type: string identifiers: description: A list of IDs that uniquely identify the device. For example a serial number. required: false diff --git a/source/_integrations/vacuum.mqtt.markdown b/source/_integrations/vacuum.mqtt.markdown index ec40ccf4be1..b6639ecca2a 100644 --- a/source/_integrations/vacuum.mqtt.markdown +++ b/source/_integrations/vacuum.mqtt.markdown @@ -396,6 +396,10 @@ device: description: 'A list of connections of the device to the outside world as a list of tuples `[connection_type, connection_identifier]`. For example the MAC address of a network interface: `"connections": [["mac", "02:5b:26:a8:dc:12"]]`.' required: false type: list + hw_version: + description: The hardware version of the device. + required: false + type: string identifiers: description: A list of IDs that uniquely identify the device. For example a serial number. required: false From 385f98c55e9f7976c87b097bdf8d08839757e505 Mon Sep 17 00:00:00 2001 From: Franck Nijhof Date: Fri, 26 Aug 2022 10:50:23 +0200 Subject: [PATCH 11/23] Add config entry selector (#23836) Co-authored-by: Martin Hjelmare --- source/_docs/blueprint/selectors.markdown | 22 ++++++++++++++++++ .../blueprints/selector-config-entry.png | Bin 0 -> 21686 bytes 2 files changed, 22 insertions(+) create mode 100644 source/images/blueprints/selector-config-entry.png diff --git a/source/_docs/blueprint/selectors.markdown b/source/_docs/blueprint/selectors.markdown index 47581ccb39b..cb74835d272 100644 --- a/source/_docs/blueprint/selectors.markdown +++ b/source/_docs/blueprint/selectors.markdown @@ -21,6 +21,7 @@ The following selectors are currently available: - [Attribute selector](#attribute-selector) - [Boolean selector](#boolean-selector) - [Color temperature selector](#color-temperature-selector) +- [Config entry selector](#config-entry-selector) - [Date selector](#date-selector) - [Date & time selector](#date--time-selector) - [Device selector](#device-selector) @@ -280,6 +281,27 @@ max_mireds: The output of this selector is the number of mired selected, for example, `243`. +## Config entry selector + +The config entry selector allows to user to select a configured integration +configuration entry. The selector returns the entry ID of the selected +integration configuration entry. + +![Screenshot of the Configuration entry selector](/images/blueprints/selector-config-entry.png) + +```yaml +config_entry: +``` + +{% configuration config_entry %} +integration: + description: Limits the list of selectable configuration entries to a single integration domain. + type: string + required: false +{% endconfiguration %} + +The output of this selector is the entry ID of the config entry, for example, `6b68b250388cbe0d620c92dd3acc93ec`. + ## Date selector The date selector shows a date input that allows the user to specify a date. diff --git a/source/images/blueprints/selector-config-entry.png b/source/images/blueprints/selector-config-entry.png new file mode 100644 index 0000000000000000000000000000000000000000..95840e0774ece45873b3d1109e2b6c6ba8879864 GIT binary patch literal 21686 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 S(&&!`S8}u^?zz9qH~t^>mdAzw literal 0 HcmV?d00001 From 98d3825455cb12aa196b073cca36a087a6e9273a Mon Sep 17 00:00:00 2001 From: Franck Nijhof Date: Fri, 26 Aug 2022 16:03:16 +0200 Subject: [PATCH 12/23] Don't expose attribute option in state selector (#23892) --- source/_docs/blueprint/selectors.markdown | 4 ---- 1 file changed, 4 deletions(-) diff --git a/source/_docs/blueprint/selectors.markdown b/source/_docs/blueprint/selectors.markdown index cb74835d272..f48afb289dd 100644 --- a/source/_docs/blueprint/selectors.markdown +++ b/source/_docs/blueprint/selectors.markdown @@ -855,10 +855,6 @@ entity_id: description: The entity ID of which an state can be selected from. type: string required: true -attribute: - description: The attribute of which an attribute state can be selected from. - type: string - required: false {% endconfiguration %} The output of this selector is the select state (not the translated or From 2deb7593492622f1951db4683d1b7208cf0ee0a3 Mon Sep 17 00:00:00 2001 From: "J. Nick Koston" Date: Fri, 26 Aug 2022 22:24:20 -0500 Subject: [PATCH 13/23] Add thermobeacon integration (#23887) --- source/_integrations/thermobeacon.markdown | 27 ++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 source/_integrations/thermobeacon.markdown diff --git a/source/_integrations/thermobeacon.markdown b/source/_integrations/thermobeacon.markdown new file mode 100644 index 00000000000..0260082ebad --- /dev/null +++ b/source/_integrations/thermobeacon.markdown @@ -0,0 +1,27 @@ +--- +title: ThermoBeacon +description: Instructions on how to integrate ThermoBeacon devices into Home Assistant. +ha_category: + - Sensor +ha_bluetooth: true +ha_release: 2022.9 +ha_iot_class: Local Push +ha_codeowners: + - '@bdraco' +ha_domain: thermobeacon +ha_config_flow: true +ha_platforms: + - sensor +ha_integration_type: integration +--- + +Integrates [ThermoBeacon](http://www.seven-like.com/) devices into Home Assistant. + +## Supported devices + +- SensorBlue WS07 +- SensorBlue WS08 + +The ThermoBeacon integration will automatically discover devices once the [Bluetooth](/integrations/bluetooth) integration is enabled and functional. + +{% include integrations/config_flow.md %} From e027c0e8d23f4a8449f8e3af2e143b8f7e59f8e8 Mon Sep 17 00:00:00 2001 From: McYars <70546784+McYars@users.noreply.github.com> Date: Sat, 27 Aug 2022 23:12:26 +0300 Subject: [PATCH 14/23] Add Air Fresh VA4 description (#23911) dd Air Fresh VA4 description for pr76637 --- source/_integrations/xiaomi_miio.markdown | 36 +++++++++++++++++++++++ 1 file changed, 36 insertions(+) diff --git a/source/_integrations/xiaomi_miio.markdown b/source/_integrations/xiaomi_miio.markdown index 0740c42122b..a1b03de5106 100644 --- a/source/_integrations/xiaomi_miio.markdown +++ b/source/_integrations/xiaomi_miio.markdown @@ -220,6 +220,7 @@ Supported devices: | Air Purifier 4 PRO | zhimi.airp.vb4 | | | Air Fresh A1 | dmaker.airfresh.a1 | MJXFJ-150-A1 | | Air Fresh VA2 | zhimi.airfresh.va2 | | +| Air Fresh VA4 | zhimi.airfresh.va4 | | | Air Fresh T2017 | dmaker.airfresh.t2017 | MJXFJ-300-G1 | | Air Humidifier | zhimi.humidifier.v1 | | | Air Humidifier CA1 | zhimi.humidifier.ca1 | | @@ -612,6 +613,41 @@ Child Lock | Turn on/off `child lock` LED | Turn on/off `led` +### Air Fresh VA4 + +- Power (on, off) +- Operation modes (Auto, Silent, Interval, Low, Middle, Strong) +- Attributes (fan platform) + - `use_time` + - `extra_features` +- Sensor entities + +Sensor | Description | Enabled by default +----------------------- | ----------------------- | ----------------------- +Carbon Dioxide | The current carbon dioxide measured in ppm | True +Filter Life Remaining | The remaining life of the filter | True +Filter Use | Filter usage time in hours | True +Humidity | The current humidity measured | True +PM2.5 | The current particulate matter 2.5 measured | True +Temperature | The current temperature measured | True +Use Time | The accumulative number of seconds the device has been in use | False + +- Select entities + +Select | Description +----------------------- | ----------------------- +LED Brightness | Controls the brightness of the LEDs (bright, dim, off) + +- Switch entities + +Switch | Description +----------------------- | ----------------------- +Buzzer | Turn on/off `buzzer` +Child Lock | Turn on/off `child lock` +LED | Turn on/off `led` +Auxiliary Heat | Turn on/off `heater` + + ### Air Fresh T2017 (dmaker.airfresh.t2017) - Power (on, off) From aa7d454eb27aa40c80587eb376c0020303d7175d Mon Sep 17 00:00:00 2001 From: "J. Nick Koston" Date: Sun, 28 Aug 2022 13:51:11 -0500 Subject: [PATCH 15/23] Add thermobeacon alternate brands (#23914) --- source/_integrations/sensorblue.markdown | 20 ++++++++++++++++++++ source/_integrations/thermoplus.markdown | 20 ++++++++++++++++++++ 2 files changed, 40 insertions(+) create mode 100644 source/_integrations/sensorblue.markdown create mode 100644 source/_integrations/thermoplus.markdown diff --git a/source/_integrations/sensorblue.markdown b/source/_integrations/sensorblue.markdown new file mode 100644 index 00000000000..0fc5455faa4 --- /dev/null +++ b/source/_integrations/sensorblue.markdown @@ -0,0 +1,20 @@ +--- +title: SensorBlue +description: Instructions on how to integrate SensorBlue devices into Home Assistant. +ha_category: + - Sensor +ha_bluetooth: true +ha_release: 2022.9 +ha_iot_class: Local Push +ha_codeowners: + - '@bdraco' +ha_domain: sensorblue +ha_config_flow: true +ha_platforms: + - sensor +ha_integration_type: integration +ha_supporting_domain: thermobeacon +ha_supporting_integration: ThermoBeacon +--- + +{% include integrations/supported_brand.md %} diff --git a/source/_integrations/thermoplus.markdown b/source/_integrations/thermoplus.markdown new file mode 100644 index 00000000000..555e046dae1 --- /dev/null +++ b/source/_integrations/thermoplus.markdown @@ -0,0 +1,20 @@ +--- +title: ThermoPlus +description: Instructions on how to integrate ThermoPlus devices into Home Assistant. +ha_category: + - Sensor +ha_bluetooth: true +ha_release: 2022.9 +ha_iot_class: Local Push +ha_codeowners: + - '@bdraco' +ha_domain: thermoplus +ha_config_flow: true +ha_platforms: + - sensor +ha_integration_type: integration +ha_supporting_domain: thermobeacon +ha_supporting_integration: ThermoBeacon +--- + +{% include integrations/supported_brand.md %} From 1abfaaf75ad276face87205cb6144c3bf508fbb7 Mon Sep 17 00:00:00 2001 From: Ernst Klamer Date: Mon, 29 Aug 2022 04:05:21 +0200 Subject: [PATCH 16/23] Add BThome integration (#23907) Co-authored-by: Paulus Schoutsen --- source/_integrations/bthome.markdown | 43 ++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100644 source/_integrations/bthome.markdown diff --git a/source/_integrations/bthome.markdown b/source/_integrations/bthome.markdown new file mode 100644 index 00000000000..5782b5ba501 --- /dev/null +++ b/source/_integrations/bthome.markdown @@ -0,0 +1,43 @@ +--- +title: BThome Bluetooth +description: Instructions on how to integrate BThome BLE devices into Home Assistant. +ha_category: + - Sensor +ha_bluetooth: true +ha_release: 2022.9 +ha_iot_class: Local Push +ha_codeowners: + - '@Ernst79' +ha_domain: bthome +ha_config_flow: true +ha_platforms: + - sensor +ha_integration_type: integration +--- + +Integrates [BThome](https://bthome.io/) BLE devices into Home Assistant. + +{% include integrations/config_flow.md %} + +The BThome BLE integration will automatically discover devices once the [Bluetooth](/integrations/bluetooth) integration is enabled and functional. + +BTHome is an energy effective but flexible BLE format to broadcast data with Bluetooth and allows you to create your own DIY BLE sensors. More information about the BThome BLE format and projects that use the format can be found on the [BThome website](https://bthome.io/). + +## Supported sensor measurements + +The current release supports the following sensor measurement types. + +- Temperature +- Humidity +- Pressure +- Illuminance +- Energy +- Power +- PM2.5 +- PM10 +- CO2 +- VOC + +## Bindkey + +When using encryption for your BThome sensor, you will promted to enter your 32 character hexadecimal (16 bytes) encryption key. This key is called the bindkey. More information about the bindkey can be found in the [specifications](https://bthome.io/#encryption). From 22981767d5db19c48329ca48702106c1836225c1 Mon Sep 17 00:00:00 2001 From: Robert Hillis Date: Sun, 28 Aug 2022 22:12:14 -0400 Subject: [PATCH 17/23] Add DHCP to Litterrobot docs (#23928) --- source/_integrations/litterrobot.markdown | 2 ++ 1 file changed, 2 insertions(+) diff --git a/source/_integrations/litterrobot.markdown b/source/_integrations/litterrobot.markdown index 78b1e77e598..84076f7561b 100644 --- a/source/_integrations/litterrobot.markdown +++ b/source/_integrations/litterrobot.markdown @@ -12,7 +12,9 @@ ha_release: 2021.3 ha_config_flow: true ha_codeowners: - '@natekspencer' + - '@tkdrob' ha_domain: litterrobot +ha_dhcp: true ha_platforms: - button - select From 8a50c29fbc553699980fe95a512c113fcfc0a7d7 Mon Sep 17 00:00:00 2001 From: "J. Nick Koston" Date: Mon, 29 Aug 2022 11:41:41 -0500 Subject: [PATCH 18/23] Add LED BLE integration (#23935) --- source/_integrations/led_ble.markdown | 38 +++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 source/_integrations/led_ble.markdown diff --git a/source/_integrations/led_ble.markdown b/source/_integrations/led_ble.markdown new file mode 100644 index 00000000000..9ab788d478d --- /dev/null +++ b/source/_integrations/led_ble.markdown @@ -0,0 +1,38 @@ +--- +title: LED BLE +description: Instructions on how to integrate LED BLE devices into Home Assistant. +ha_category: + - Light +ha_bluetooth: true +ha_release: 2022.9 +ha_iot_class: Local Polling +ha_codeowners: + - '@bdraco' +ha_domain: led_ble +ha_config_flow: true +ha_platforms: + - light +ha_integration_type: integration +--- + +Integrates multiple brands of Bluetooth Low Energy LED devices into Home Assistant. + +{% include integrations/config_flow.md %} + +This integration works with devices that identify with the following names: + +- LEDnet (except LEDnetWF models) +- BLE-LED +- LEDBLE +- Triones +- LEDBlue + +These devices have been sold under many brands, including: + +- LED BLE +- BLE-LED +- Triones +- Happy Lighting +- Zengee +- LEDBlue +- Zerproc From 1c05548cb29d648ba9da2a3d06e7b58cf50a74ee Mon Sep 17 00:00:00 2001 From: "J. Nick Koston" Date: Mon, 29 Aug 2022 11:57:34 -0500 Subject: [PATCH 19/23] Add support for lights to switchbot (#23919) --- source/_integrations/switchbot.markdown | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/source/_integrations/switchbot.markdown b/source/_integrations/switchbot.markdown index 84f55503731..8f40b6b025e 100644 --- a/source/_integrations/switchbot.markdown +++ b/source/_integrations/switchbot.markdown @@ -4,6 +4,7 @@ description: Instructions on how to set up SwitchBot Devices. ha_category: - Binary Sensor - Cover + - Light - Sensor - Switch ha_release: 0.78 @@ -18,6 +19,7 @@ ha_bluetooth: true ha_platforms: - binary_sensor - cover + - light - sensor - switch ha_config_flow: true @@ -43,9 +45,11 @@ Please note, device names configured in the SwitchBot app are not transferred in ## Supported Devices +- Color Bulb (WoBulb) - Bot (WoHand) - Contact Sensor (WoContact) - Curtain (WoCurtain) +- Light Strip (WoStrip) - Meter (WoSensorTH) - Motion Sensor (WoPresence) - Plug Mini (WoPlug), both the original (model W1901400) and HomeKit-enabled (model W1901401) From ab1a39d5346c6b3240fbfe6ff403e461a7e261e1 Mon Sep 17 00:00:00 2001 From: Brett Adams Date: Tue, 30 Aug 2022 02:59:30 +1000 Subject: [PATCH 20/23] Add Light platform to Advantage Air (#23419) --- source/_integrations/advantage_air.markdown | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/source/_integrations/advantage_air.markdown b/source/_integrations/advantage_air.markdown index 6f4ae86e688..4a5c02d22bb 100644 --- a/source/_integrations/advantage_air.markdown +++ b/source/_integrations/advantage_air.markdown @@ -60,6 +60,10 @@ The `advantage_air` switch platform will create a switch entity to toggle fresh The `advantage_air` select platform allows you to change the zone used for the "MyZone" feature. +### Light + +The `advantage_air` light platform will create a light entity for each light in MyLights tab of the MyPlace app. + ## Services ### Service `advantage_air.set_time_to` From faf48c965a2dbfade2ca36a4bedc4056240445d8 Mon Sep 17 00:00:00 2001 From: Charles Garwood Date: Mon, 29 Aug 2022 13:40:25 -0400 Subject: [PATCH 21/23] Add Fully Kiosk Browser media_player docs (#23874) --- source/_integrations/fully_kiosk.markdown | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/source/_integrations/fully_kiosk.markdown b/source/_integrations/fully_kiosk.markdown index 565433ecf30..e83ce78031d 100644 --- a/source/_integrations/fully_kiosk.markdown +++ b/source/_integrations/fully_kiosk.markdown @@ -56,4 +56,10 @@ The following controls are available: - Screensaver brightness - Screen on/off - Screen off timer -- Screen brightness \ No newline at end of file +- Screen brightness +- Play and stop media files +- Set device volume + +
+ The Fully Kiosk Browser app does not provide feedback on the device volume or media playback status, so we are unable to display the current volume level or playback status. +
From 65026729829f2cc2ecd792ffba90f4b00d5d90b7 Mon Sep 17 00:00:00 2001 From: thursday Date: Mon, 29 Aug 2022 14:18:59 -0400 Subject: [PATCH 22/23] Update environment_canada.markdown (#23903) --- source/_integrations/environment_canada.markdown | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/source/_integrations/environment_canada.markdown b/source/_integrations/environment_canada.markdown index b4310e06623..dda4f393227 100644 --- a/source/_integrations/environment_canada.markdown +++ b/source/_integrations/environment_canada.markdown @@ -31,7 +31,9 @@ You can also specify a weather station to use by providing a identification code ## Entities -The integration will create the entities listed below. Note that many of the entities are disabled by default and can be enabled via the Configuration / Entities screen. +The integration will create the entities listed below. + +Note that many of the entities, such as radar imagery and hourly forecasts, are disabled by default and can be enabled via the Entity status settings available through the Configuration / Entities screen. ### Weather From bbd7036253a6a3431f3ca89e2883fb439dc74e6e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Joris=20Pelgr=C3=B6m?= Date: Mon, 29 Aug 2022 20:21:44 +0200 Subject: [PATCH 23/23] Update Android redirect URIs for Wear OAuth without app (#23909) --- source/android/index.markdown | 2 ++ 1 file changed, 2 insertions(+) diff --git a/source/android/index.markdown b/source/android/index.markdown index 2e437db0c0f..5908b3aba74 100644 --- a/source/android/index.markdown +++ b/source/android/index.markdown @@ -4,5 +4,7 @@ description: "Landing page for Home Assistant Android app." --- + +