From c20262ff8fa46a2181804143674db3d9d21fa340 Mon Sep 17 00:00:00 2001 From: Franck Nijhof Date: Wed, 27 Jan 2021 21:01:57 +0100 Subject: [PATCH 01/13] Initial release blog post for 2021.2.0 --- _config.yml | 9 +- .../_posts/2021-02-03-release-20212.markdown | 1754 +++++++++++++++++ source/images/blog/2021-02/social.png | Bin 0 -> 125538 bytes 3 files changed, 1759 insertions(+), 4 deletions(-) create mode 100644 source/_posts/2021-02-03-release-20212.markdown create mode 100644 source/images/blog/2021-02/social.png diff --git a/_config.yml b/_config.yml index f7c7b2f4356..1fb1ca80254 100644 --- a/_config.yml +++ b/_config.yml @@ -8,7 +8,8 @@ title: Home Assistant subtitle: Open source home automation that puts local control and privacy first. author: Home Assistant simple_search: https://www.google.com/search -description: Open source home automation that puts local control and privacy first. +description: + Open source home automation that puts local control and privacy first. # Default date format is "ordinal" (resulting in "July 22nd 2007") # You can customize the format as defined in @@ -100,9 +101,9 @@ social: # Home Assistant release details current_major_version: 2021 -current_minor_version: 1 -current_patch_version: 5 -date_released: 2021-01-23 +current_minor_version: 2 +current_patch_version: 0 +date_released: 2021-02-03 # Either # or the anchor link to latest release notes in the blog post. # Must be prefixed with a # and have double quotes around it. diff --git a/source/_posts/2021-02-03-release-20212.markdown b/source/_posts/2021-02-03-release-20212.markdown new file mode 100644 index 00000000000..c441bbdfeba --- /dev/null +++ b/source/_posts/2021-02-03-release-20212.markdown @@ -0,0 +1,1754 @@ +--- +layout: post +title: "2021.2: Beta release notes" +description: "These are the beta release notes for Home Assistant Core 2021.2." +date: 2021-01-27 00:00:00 +date_formatted: "February 3, 2021" +author: Franck Nijhof +author_twitter: frenck +comments: true +categories: Release-Notes +og_image: /images/blog/2021-02/social.png +--- + + + +These are the beta release notes for Home Assistant Core 2021.2 (and is thus a +work in progress). + +If you encounter any issues with the beta release, please report them on GitHub: + +- Issues with integrations, automations and such (Core related):
+ +- Issues with the frontend/Lovelace:
+ +- Issues with the Supervisor:
+ +- Issues with the documentation:
+ + +Please be sure to include the beta version you are running in the issue +description (not title), so we can classify your issue correctly. + +Issues introduced in the beta are processed with priority. + +- [Python 3.7 dropped, Python 3.9 supported](#python-37-dropped-python-39-supported) +- [Z-Wave JS](#z-wave-js) +- [DHCP Discovery](#dhcp-discovery) +- [New Blueprint selectors](#new-blueprint-selectors) +- [Other noteworthy changes](#other-noteworthy-changes) +- [New Integrations](#new-integrations) +- [New Platforms](#new-platforms) +- [Integrations now available to set up from the UI](#integrations-now-available-to-set-up-from-the-ui) +- [If you need help...](#if-you-need-help) +- [Breaking Changes](#breaking-changes) +- [Farewell to the following](#farewell-to-the-following) +- [All changes](#all-changes) + +## Python 3.7 dropped, Python 3.9 supported + +Support for Python 3.7 has been removed, raising the minimum Python version +you need to run Home Assistant Core to Python 3.8. Python 3.7 was already +deprecated since Home Assistant Core 0.116.0. + +This is only a concern if you are running Home Assistant Core directly on +Python. if you run Home Assistant OS, Supervised or Container, you don’t have +to worry about this, as the Home Assistant project takes care of this for you. + +However, say hello to: Python 3.9. As of this release, Python 3.9 is fully +supported and tested. + +## Z-Wave JS + + + +Long story short: You are not going to believe this, but a complete new, +full blown, integration was created from nothing in just a month! + +Z-Wave JS is here! + +## DHCP Discovery + +Home Assistant now listens on your network for devices that request a +IP address. Based on those intercepted messages, Home Assistant can now +discover integrations for you to use with the discovered devices. + +## New Blueprint selectors + +For our Blueprint fanatics, some new goodies to the Blueprint has been added +this release. Thanks to [@thomasloven], we now have two new selectors: + + + +- An object selector: Shows an YAML editor in the UI. +- An text selector: Show a single line text input or text area for longer + messages in the UI. +- Blueprint descriptions now support Markdown. + + + +## Other noteworthy changes + +This release has no big new features, but we do have quite a bit of tweaks +that are definitely noteworthy to mention. + +- Significant changes (Google & Alexa) +- Configuring default language for TTS via UI, testing with TTS in UI. + +- Add yeelight service to enable disable music mode ([@zewelor] - [#44533]) ([yeelight docs]) +- Add device info to Météo-France ([@oncleben31] - [#44457]) ([meteo_france docs]) +- Add Chinese (Hong Kong) to Google Cloud TTS ([@hung2kgithub] - [#44689]) ([google_cloud docs]) +- Add turn_on and turn_off to gree climate component ([@cmroche] - [#43207]) ([gree docs]) +- Add RFXtrx Rfy venetian blinds tilt control ([@dzukero] - [#44309]) ([rfxtrx docs]) +- Add service to lock/unlock Sure Petcare pet flaps ([@insertjokehere] - [#44557]) ([surepetcare docs]) +- Add support for reordering Shopping List Items via Drag and Drop ([@ShaneQi] - [#41585]) ([shopping_list docs]) +- Add Vicare set mode service ([@oischinger] - [#44563]) +- Add MQTT Number ([@dgomes] - [#44739]) ([mqtt docs]) +- Add torrent id to Transmission events ([@JPHutchins] - [#44187]) ([transmission docs]) +- Add Shelly RGB devices management ([@chemelli74] - [#43993]) ([shelly docs]) +- Add name to ignored entries ([@balloob] - [#45051]) ([config docs]) +- Cloud: Add web socket API to pick default TTS language ([@balloob] - [#45064]) ([cloud docs]) +- Allow any parameter of a light profile as an optional parameter ([@Adminiuga] - [#44079]) ([light docs]) +- Allow input_number entity_id as for numeric_state trigger thresholds ([@Adminiuga] - [#45091]) ([homeassistant docs]) +- Add pressure to OWM forecast data ([@bchastain] - [#43843]) ([openweathermap docs]) ([weather docs]) +- Remove beta tag from Tasmota integration ([@emontnemery] - [#45153]) ([tasmota docs]) +- Add empty password support to pi-hole ([@shenxn] - [#37958]) ([pi_hole docs]) +- Basic logbook support for deCONZ events ([@Kane610] - [#45400]) ([deconz docs]) +- Introduce reauth flow to deCONZ ([@Kane610] - [#45443]) ([deconz docs]) +- Add a one touch pairing config flow for lutron caseta ([@bdraco] - [#45136]) ([lutron_caseta docs]) +- Add support for Discord embed in messages ([@popboxgun] - [#44986]) ([discord docs]) +- Add "significant change" base ([@balloob] - [#45555]) ([binary_sensor docs]) ([sensor docs]) +- Limit data sending to Alexa to significant changes ([@balloob] - [#45563]) ([alexa docs]) +- Add significant change filtering to Google ([@balloob] - [#45566]) ([google_assistant docs]) ([sensor docs]) ([switch docs]) +- Add tilt functionality to Velux covers ([@pawlizio] - [#43669]) ([velux docs]) +- Add support for Pico and Shade remotes to Lutron Caseta ([@bdraco] - [#45315]) ([lutron_caseta docs]) +- Implement remote.delete_command in the Broadlink integration ([@felipediel] - [#44041]) ([broadlink docs]) +- Esphome fan direction ([@blejdfist] - [#44495]) ([esphome docs]) +- New methods for input_select component ([@l-mb] - [#42968]) ([input_select docs]) +- Re-architect Tile integration with new pytile ([@bachya] - [#43071]) ([tile docs]) +- Add total energy, preheater and RMOT sensors to comfoconnect ([@chmielowiec] - [#45373]) ([comfoconnect docs]) +- Add service to move camera to PTZ preset ([@joe248] - [#43083]) ([foscam docs]) +- Migrate RMV to use httpx ([@cgtobi] - [#42560]) ([rmvtransport docs]) + +Frontend: + +- Add simple try tts dialog (#8245) @bramkragten +- Add icon support to gauge (#8081) @spacegaier +- More comprehensive YAML config errors + dynamic checks for action configs (#8217) @spacegaier +- add actions to weather-forecast-card (#7659) @iantrich +- Allow themeing of media control card (#8209) @spacegaier +- Format URL attribute as link (#8126) @spacegaier +- Update supervisor on add-on store refresh (#8132) @ludeeus +- Add filtering and zoom to node to the ZHA network visualization (#7913) @dmulcahey +- Added Drag & Drop Reordering to Shopping List Card. (#7296) @ShaneQi +- Add support for "all" as entity ID in action "service" (#7954) @spacegaier +- Add Bengali language (#8014) @spacegaier + +## New Integrations + +We welcome the following new integrations this release: + +- [AirNow][airnow docs], added by [@asymworks] +- [DHCP Discovery][dhcp docs], added by [@bdraco] +- [Huisbaasje][huisbaasje docs], added by [@denniss17] +- [Ondilo ICO][ondilo_ico docs], added by [@JeromeHXP] +- [Z-Wave JS][zwave_js docs], added by [@cgarwood], [@MartinHjelmare], [@marcelveldt], [@raman325], [@firstof9], [@balloob] + +## New Platforms + +The following integration got support for a new platform: + +- [Logitech Harmony Hub][harmony docs] now adds switches for activities, + added by [@mkeesey] +- [WiLight][wilight docs] now supports fans, added by [@leofig-rj] +- [Hyperion][hyperion docs] now has all kinds of advanced control switches, + added by [@dermotduffy] + +## Integrations now available to set up from the UI + +The following integrations are now available via the Home Assistant UI: + +- [Somfy MyLink][somfy_mylink docs], done by [@bdraco] +- [Foscam][foscam docs], done by [@skgsergio] + +## If you need help... + +...don't hesitate to use our very active [forums](https://community.home-assistant.io/) or join us for a little [chat](https://discord.gg/c5DvZ4e). + +Experiencing issues introduced by this release? Please report them in our [issue tracker](https://github.com/home-assistant/core/issues). Make sure to fill in all fields of the issue template. + + + +## Breaking Changes + +Below is a listing of the breaking change for this release, per subject or +integration. Click on one of those to read more about the breaking change +for that specific item. + +
+ Python 3.9 +

+ +Support for Python 3.7 has been dropped, after being deprecated since +Home Assistant 0.116. + +This is only a concern if you are running Home Assistant Core directly on +Python. You can check the Python version Home Assistant uses by going to the +information screen in Configuration -> Info. + +If you run Home Assistant OS, Supervised or Container, you don’t have to worry +about this, as the Home Assistant project takes care of this for you. +As a matter of fact, if you use one of those methods, you are already +running Python 3.8. + +([@frenck] - [#43805]) + +

+
+ +
+ Z-Wave +

+ +The old `zwave` integration is now considered legacy and deprecated. This +integration is still based on OpenZwave 1.4, which has been out of active +maintenance for quite some time now. + +Alternatively, you can move to one of the other Z-Wave solutions Home Assistant +offers: + +- OpenZWave (currently not maintained) +- Z-Wave JS (introduced in this release, recommended) + +

+
+ +
+ PTVSD +

+ +The PTVSD extension has deprecated a couple of releases back and is now removed. +The debugpy integration is a full replacement for this integration. + +([@frenck] - [#44748]) + +

+
+ +
+ Tado +

+ +Tado's primary functionality has fully transitioned to configuration via UI. +YAML configuration has been removed except for `device_tracker`. Existing YAML +configuration has already been imported automatically in the previous releases +and can now safely be removed from your configuration files. + +The `device_tracker` platform continues to use YAML, and will be updated at a +later date when the device tracker platform is modernized. + +Tado zone sensors have been replaced by their corresponding `binary_sensors`. +Therefore, you'll have to update Lovelace panels, scripts and automations +referring to the following sensors by their corresponding binary sensor +(replace `sensor` with `binary_sensor`): + +- `sensor.ZONE_early_start` is replaced by `binary_sensor.ZONE_early_start` +- `sensor.ZONE_link` is replaced by `binary_sensor.ZONE_link` +- `sensor.ZONE_open_window` is replaced by `binary_sensor.ZONE_open_window` +- `sensor.ZONE_overlay` is replaced by `binary_sensor.ZONE_overlay` +- `sensor.ZONE_power` is replaced by `binary_sensor.ZONE_power` + +The following state attributes have been removed: + +- `sensor.ZONE_overlay`: termination +- `sensor.ZONE_open_window`: open_window_attr + +([@Noltari] - [#44576]) ([@bdraco] - [#45384]) ([tado docs]) + +

+
+ +
+ KNX +

+ +Some `knx_event`s changed the name of `event_data` fields: + +- `address` renamed to `destination` +- Added `source` +- Added `direction` +- Added `telegramtype` + +Additionally: + +- `fire_event` in the knx configuration is deprecated. +- `fire_event_filter` in the knx configuration is renamed to `event_filter`. + +([@farmio] - [#44749] [#45248]) ([knx docs]) + +

+
+ +
+ RainMachine +

+ +RainMachine services now require an `entity_id`, an `area_id`, or +a `device_id` parameter to be provided. You need to check your automations +to make sure all RainMachine service calls have those. + +([@bachya] - [#44139]) ([rainmachine docs]) + +

+
+ +
+ ecobee +

+ +The current state of the ecobee integration always behaves as if the +selected hold duration is **Until next scheduled activity**. + +With this change the following settings are now respected: + +- 2 hours +- 4 hours +- Until I change it + +If you rely on the previous behavior may need to update your automations +to account for the support for the new settings. + +([@jamincollins] - [#40520]) ([ecobee docs]) + +

+
+ +
+ August +

+ +August has fully transitioned to configuration via UI. YAML configuration +will be removed in an upcoming version. Existing YAML configuration has +already been imported automatically in the previous releases and can now +safely be removed from your configuration files. + +([@bdraco] - [#45039]) ([august docs]) + +

+
+ +
+ Roomba +

+ +Roomba has fully transitioned to configuration via UI. YAML configuration is +no longer supported. Existing YAML configuration has already been imported +automatically in the previous releases and can now safely be removed from +your configuration files. + +([@bdraco] - [#45037]) ([roomba docs]) + +

+
+ +
+ Plex +

+ +The `plex.play_on_sonos` service has been removed and functionality moved +to the built-in `media_player.play_media` service. + +Existing service payloads can be used as-is after prepending the +`media_content_id` with `plex://`. + +([@jjlawren] - [#45066]) ([plex docs]) + +

+
+ +
+ Lutron +

+ +The `Lutron Integration ID` attribute changed to `lutron_integration_id`, +so any automations, template sensors, etc. using that attribute will need to +be updated accordingly. + +([@TimothyLeeAdams] - [#45114]) ([lutron docs]) + +

+
+ +
+ DoorBird +

+ +DoorBird has fully transitioned to configuration via UI. YAML configuration +will be removed in an upcoming version. Existing YAML configuration has already +been imported automatically in the previous releases and can now safely be +removed from your configuration files. + +([@bdraco] - [#45139]) ([doorbird docs]) + +

+
+ +
+ Logitech Harmony Hub +

+ +Harmony has fully transitioned to configuration via UI. YAML configuration +has been removed. Existing YAML configuration has already been imported +automatically in the previous releases and can now safely be removed from +your configuration files. + +([@bdraco] - [#45140]) ([harmony docs]) + +

+
+ +
+ Mikrotik +

+ +Mikrotik now uses the `device_tracker` standard attributes for `ip` and `mac`. +The `mac_address` and `ip_address` attributes have been removed. + +([@bdraco] - [#45255]) ([mikrotik docs]) + +

+
+ +
+ RoonLabs music player +

+ +This PR changes how the `play_media` call works for roon players. +The previous implementation was very limited - but anyone using it in +automations will need to change their calls to the new structure. + +Please refer to the integration documentation for more information. + +([@pavoni] - [#45221]) ([roon docs]) + +

+
+ +
+ Network UPS Tools (NUT) +

+ +Network UPS Tools (NUT) has fully transitioned to configuration via UI. +YAML configuration has been removed. Existing YAML configuration has already +been imported automatically in the previous releases and can now safely be +removed from your configuration files. + +([@bdraco] - [#45276]) ([nut docs]) + +

+
+ +
+ Dyson +

+ +The speed of the Dyson Pure Cool Link fan is now one of `low`, `medium`, +and `high` instead of the original `auto` and integer `1` to `10`. + +In order to set the fan speed more precisely and switch auto mode, you +should use the services `dyson.set_speed` and `dyson.set_auto_mode`. + +([@shenxn] - [#45331]) ([dyson docs]) + +

+
+ +
+ Viessmann ViCare +

+ +The current power sensor has been removed since it was not provided by the +Viessmann API anymore. + +([@oischinger] - [#45301]) ([vicare docs]) + +

+
+ +
+ MyQ +

+ +MyQ has fully transitioned to configuration via UI. YAML configuration has +been removed. Existing YAML configuration has already been imported +automatically in the previous releases and can now safely be removed from +your configuration files. + +([@bdraco] - [#45375]) ([myq docs]) + +

+
+ +
+ Nexia +

+ +Nexia has fully transitioned to configuration via UI. YAML configuration has +been removed. Existing YAML configuration has already been imported +automatically in the previous releases and can now safely be removed from +your configuration files. + +([@bdraco] - [#45379]) ([nexia docs]) + +

+
+ +
+ Hunter Douglas PowerView +

+ +Hunter Douglas PowerView has fully transitioned to configuration via UI. +YAML configuration has been removed. Existing YAML configuration has already +been imported automatically in the previous releases and can now safely be +removed from your configuration files. + +([@bdraco] - [#45376]) ([hunterdouglas_powerview docs]) + +

+
+ +
+ Rachio +

+ +Rachio has fully transitioned to configuration via UI. YAML configuration has +been removed. Existing YAML configuration has already been imported +automatically in the previous releases and can now safely be removed +from your configuration files. + +([@bdraco] - [#45383]) ([rachio docs]) + +

+
+ +
+ Tesla Powerwall +

+ +Tesla Powerwall has fully transitioned to configuration via UI. YAML +configuration has been removed. Existing YAML configuration has already been +imported automatically in the previous releases and can now safely be removed +from your configuration files. + +([@bdraco] - [#45381]) ([powerwall docs]) + +

+
+ +
+ Light Profiles +

+ +Nominally a breaking change. A default profile for the light, now is always +applied, so controlling a light from UI would set all the parameters defined +in the profile. + +For example, if the default profile for a particular light is set to: + +- Color: Green +- Brightness: 255 +- Transition: 5 + +And the current light status is: Color - red, brightness - 20 and in UI you +change the brightness to 100 with the intention to only change the brightness, +then the default profile would also apply the color and transition. + +([@Adminiuga] - [#45450]) ([light docs]) + +

+
+ +
+ MQTT +

+ +MQTT allowed passing an arbitrary speed that was not in the `speed_list`. + +With the conversion to percentages in upcoming releases, this aberration from +the spec could not be converted to a percentage. Since it does not +conform to the entity model, it is not possible to preserve this exception. + +([@bdraco] - [#45445]) ([mqtt docs]) + +

+
+ +
+ NuHeat +

+ +NuHeat has fully transitioned to configuration via UI. YAML configuration has +been removed. Existing YAML configuration has already been imported +automatically in the previous releases and can now safely be removed from your +configuration files. + +([@bdraco] - [#45380]) ([nuheat docs]) + +

+
+ +
+ Rheem EcoNET Water Products +

+ +EcoNET has swirtched over to EcoNET's new API. + +Water Heaters will no longer report current tank +temperature. The add/remove vacation services are also removed, +alternatively, you can use away mode now. + +([@w1ll1am23] - [#44427]) ([econet docs]) + +

+
+ +
+ Intents +

+ +The method for matching entities in intents has changed slightly to prefer +shorter matches before ordering. + +This means some intents and/or entity names may need to be adjusted to maintain +consistency in some edge cases. For most uses, this should only improve +the quality of matches. + +([@CtrlZvi] - [#43672]) + +

+
+ +## Farewell to the following + +The following integrations have been removed: + +- **PTVSD** ([@frenck] - [#44748]) + +## All changes + +
+ Click to see all changes! + +- Bumped version to 2021.2.0dev0 ([@frenck] - [#44647]) +- Upgrade sendgrid to 6.4.8 ([@fabaff] - [#44646]) ([sendgrid docs]) +- Add yeelight service to enable disable music mode ([@zewelor] - [#44533]) ([yeelight docs]) +- Upgrade colorlog to 4.6.2 ([@fabaff] - [#44652]) +- Add AirNow Integration ([@asymworks] - [#40091]) ([airnow docs]) ([sensor docs]) (new-integration) +- Upgrade vsure to 1.6.1 ([@frenck] - [#44657]) ([verisure docs]) +- Device automation config error message improvements ([@scop] - [#44656]) ([deconz docs]) ([sensor docs]) +- Upgrade feedparser to 6.0.2 ([@frenck] - [#44683]) ([feedreader docs]) +- Upgrade pubnubsub-handler to 1.0.9 ([@mkeesey] - [#44542]) ([wink docs]) +- Upgrade codespell to 2.0.0 ([@scop] - [#44695]) ([homematicip_cloud docs]) ([rflink docs]) +- Bump elkm1-lib to 0.8.10 ([@gwww] - [#44714]) ([elkm1 docs]) +- Upgrade pytz to >=2020.5 ([@fabaff] - [#44702]) +- Bump upb-lib to 0.4.12 ([@gwww] - [#44721]) ([upb docs]) +- Upgrade sqlalchemy to 1.3.22 ([@fabaff] - [#44698]) ([recorder docs]) ([sql docs]) +- Add device info to Météo-France ([@oncleben31] - [#44457]) ([meteo_france docs]) +- Add Chinese (Hong Kong) to Google Cloud TTS ([@hung2kgithub] - [#44689]) ([google_cloud docs]) +- Use the async_call context in result of call_service ([@jcronq] - [#44458]) ([websocket_api docs]) +- Upgrade slixmpp to 1.6.0 ([@fabaff] - [#44693]) ([xmpp docs]) +- Upgrade pyowm to 3.1.1 ([@fabaff] - [#44706]) ([openweathermap docs]) +- Do not restore unavailable state for august locks ([@bdraco] - [#44722]) ([august docs]) +- Add Python 3.9 to CI ([@frenck] - [#41373]) +- Updated certifi to >=2020.12.5 ([@fabaff] - [#44701]) +- Increase test coverage for Nest SDM integration ([@allenporter] - [#44718]) ([nest docs]) +- Drop Python 3.7 support ([@frenck] - [#43805]) (breaking-change) +- Upgrade alpha-vantage to 2.3.1 ([@fabaff] - [#44705]) ([alpha_vantage docs]) +- Upgrade volkszaehler to 0.2.1 ([@fabaff] - [#44703]) ([volkszaehler docs]) +- Add turn_on and turn_off to gree climate component ([@cmroche] - [#43207]) ([gree docs]) +- Fix Gree climate turn on/off ([@frenck] - [#44731]) ([gree docs]) +- Fix AccuWeather condition mapping ([@firstof9] - [#44710]) ([accuweather docs]) +- Update pyhomematic to 0.1.71 ([@danielperna84] - [#44732]) ([homematic docs]) +- Upgrade sentry-sdk to 0.19.5 ([@frenck] - [#44738]) ([sentry docs]) +- Upgrade debugpy to 1.2.1 ([@frenck] - [#44737]) ([debugpy docs]) +- Upgrade pre-commit to 2.9.3 ([@frenck] - [#44740]) +- Bump locationsharinglib to 4.1.5 ([@MartinHjelmare] - [#44742]) ([google_maps docs]) +- Drop asynctest ([@frenck] - [#44746]) ([abode docs]) ([accuweather docs]) ([acmeda docs]) ([adguard docs]) ([advantage_air docs]) +- Remove deprecated PTVSD integration ([@frenck] - [#44748]) (breaking-change) +- Resolve nest pub/sub subscriber token refresh issues ([@allenporter] - [#44686]) ([nest docs]) +- Update surepy to v0.4.0 ([@insertjokehere] - [#44556]) ([surepetcare docs]) +- Add tado zone binary sensors ([@Noltari] - [#44576]) ([tado docs]) (breaking-change) +- Support google assistant stopping for assumed state covers ([@elupus] - [#44266]) ([google_assistant docs]) +- Fix Soma integration reload ([@badguy99] - [#44750]) ([soma docs]) +- Add RFXtrx Rfy venetian blinds tilt control ([@dzukero] - [#44309]) ([rfxtrx docs]) +- Add service to lock/unlock Sure Petcare pet flaps ([@insertjokehere] - [#44557]) ([surepetcare docs]) +- Reconnect mochad light on on/off command ([@migube] - [#44507]) ([mochad docs]) +- Update xknx to 0.16.0 ([@farmio] - [#44749]) ([knx docs]) (breaking-change) +- Bump PyTado to 0.10.0 ([@Noltari] - [#44770]) ([tado docs]) +- Bump dessant/lock-threads from v2.0.1 to v2.0.3 (@dependabot - [#44806]) +- Update to denonavr version 0.9.10 ([@scarface-4711] - [#44791]) ([denonavr docs]) +- Bumo pyroon version to 0.0.30 ([@pavoni] - [#44800]) ([roon docs]) +- Bump pyobihai ([@dshokouhi] - [#44768]) ([obihai docs]) +- Drop remaining Python < 3.8 support ([@scop] - [#44743]) ([plex docs]) ([webostv docs]) +- Fix race when handling MQTT discovery messages ([@emontnemery] - [#44730]) ([mqtt docs]) +- Change WHITELIST to ALLOWLIST for websockets ([@KTibow] - [#44766]) ([websocket_api docs]) +- Add more debug details to running timeouts ([@pvizeli] - [#43644]) +- Cleanup timeouts values for Shelly ([@chemelli74] - [#44790]) ([shelly docs]) +- Add myself to codeowners for Shelly ([@chemelli74] - [#44814]) ([shelly docs]) +- Try to fix flaky Risco test ([@OnFreund] - [#44788]) ([risco docs]) +- Add device entry id to events ([@elupus] - [#44407]) ([rfxtrx docs]) +- Fix Fan support in nest climate by adding HVAC_MODE_FAN_ONLY support ([@allenporter] - [#44203]) ([nest docs]) +- Add Ondilo ico integration ([@JeromeHXP] - [#44728]) ([ondilo_ico docs]) (new-integration) +- Adjust system info for lovelace with multiple dashboards ([@ludeeus] - [#44796]) ([lovelace docs]) +- Updated Ondilo translation files to remove title ([@JeromeHXP] - [#44824]) ([ondilo_ico docs]) +- Move RainMachine services to entity services ([@bachya] - [#44139]) ([rainmachine docs]) (breaking-change) +- Add logbook and device trigger platforms to Shelly ([@thecode] - [#44020]) ([shelly docs]) +- Add nearest method to get data for Airly integration ([@bieniu] - [#44288]) ([airly docs]) +- Generate switches for harmony activities automatically ([@mkeesey] - [#42331]) ([harmony docs]) (new-platform) +- Bump caldav version to 0.7.1 ([@chpego] - [#44815]) ([caldav docs]) +- Complete device and entity registry type hints ([@scop] - [#44406]) +- Propose an integration quality for nest SDM integration ([@allenporter] - [#44755]) ([nest docs]) +- Bump codecov/codecov-action from v1.1.1 to v1.2.0 (@dependabot - [#44836]) +- Bump actions/upload-artifact from v2.2.1 to v2.2.2 (@dependabot - [#44835]) +- Add support for reordering Shopping List Items via Drag and Drop ([@ShaneQi] - [#41585]) ([shopping_list docs]) +- Add Vicare set mode service ([@oischinger] - [#44563]) +- Better general/fallback error message and traceback for unknown config errors ([@scop] - [#44655]) +- Patch Shelly test setting up entry ([@balloob] - [#44842]) ([shelly docs]) +- Fix opentherm_gw firmware version in device registry ([@mvn23] - [#44756]) ([opentherm_gw docs]) +- Avoid Ps4 doing I/O during tests ([@balloob] - [#44845]) ([ps4 docs]) ([shelly docs]) +- Add MQTT Number ([@dgomes] - [#44739]) ([mqtt docs]) +- Support dynamic Google Cast groups ([@emontnemery] - [#44484]) ([cast docs]) +- Address late review of ondilo_ico ([@JeromeHXP] - [#44837]) ([ondilo_ico docs]) +- Improve MQTT number test coverage ([@emontnemery] - [#44870]) ([mqtt docs]) +- Bump pychromecast to 7.7.2 ([@emontnemery] - [#44871]) ([cast docs]) +- Bump codecov/codecov-action from v1.2.0 to v1.2.1 (@dependabot - [#44869]) +- Generate nest images thumbnails from events ([@allenporter] - [#44638]) ([nest docs]) +- Fix notion bridge id update device registry identifier usage ([@scop] - [#44872]) ([notion docs]) +- Revert "Revert "Bump pypck to 0.7.8"" ([@frenck] - [#44885]) ([lcn docs]) +- Bump pydaikin version to 2.4.1 ([@emufan] - [#44888]) ([daikin docs]) +- Make DeviceRegistry.async_get_device connections arg optional ([@scop] - [#44897]) +- Homekit has two types ([@balloob] - [#44879]) ([zeroconf docs]) +- Rewrite Plex tests to use mocked payloads ([@jjlawren] - [#44044]) ([plex docs]) +- Improve device registry type hints ([@scop] - [#44919]) +- Correct Plugwise sensor scaling ([@bouwew] - [#44344]) ([plugwise docs]) +- Update nexia to 0.9.5 ([@bdraco] - [#44924]) ([nexia docs]) +- Implement support for additional ecobee hold modes ([@jamincollins] - [#40520]) ([ecobee docs]) (breaking-change) +- Use parent_id to find cause of logbook events with new contexts ([@chishm] - [#44416]) ([logbook docs]) +- Upgrade discord.py to 1.6.0 ([@fabaff] - [#44941]) ([discord docs]) +- Upgrade youtube_dl to 2021.01.03 ([@fabaff] - [#44942]) ([media_extractor docs]) +- Fix media renderers without volume control ([@ocampana] - [#44874]) ([dlna_dmr docs]) +- Prefix versions in system health ([@ludeeus] - [#44921]) ([hassio docs]) ([homeassistant docs]) +- Add torrent id to Transmission events ([@JPHutchins] - [#44187]) ([transmission docs]) +- Fix Netatmo climate boost for valves ([@cgtobi] - [#44957]) ([netatmo docs]) +- Add MQTT Number (non optimistic) ([@dgomes] - [#44883]) ([mqtt docs]) +- Remove script/test ([@scop] - [#44967]) +- Helpers type hint improvements ([@scop] - [#44964]) +- Move MQTT entity helpers to separate file ([@emontnemery] - [#44838]) ([mqtt docs]) +- Deduplicate MQTT entity discovery code ([@emontnemery] - [#44970]) ([mqtt docs]) +- Add pressure forecast to HA weather entity model ([@bchastain] - [#44965]) ([weather docs]) +- Add zwave to ozw migration ([@MartinHjelmare] - [#39081]) ([ozw docs]) ([zwave docs]) +- Add MQTT base entity ([@emontnemery] - [#44971]) ([mqtt docs]) +- Upgrade requests to 2.25.1 ([@BKPepe] - [#44989]) +- Improve nest client error handling using newest library ([@allenporter] - [#44998]) ([nest docs]) +- Add stop support to openzwave (mqtt) cover ([@clook] - [#44622]) ([ozw docs]) +- Improve unifi performance with many devices ([@bdraco] - [#45006]) ([unifi docs]) +- Add config flow for somfy_mylink ([@bdraco] - [#44977]) ([somfy_mylink docs]) +- Warn users when their HomeKit configuration may be unstable ([@bdraco] - [#44999]) ([homekit docs]) +- Include current version in updater log output ([@spacegaier] - [#45022]) ([updater docs]) +- Use the camera UUID as the entity unique id ([@rfleming71] - [#44937]) ([uvc docs]) +- Add zwave_js integration ([@cgarwood] - [#45020]) ([zwave_js docs]) (new-integration) +- Shutdown asyncio http server within 10 seconds ([@agners] - [#45033]) ([http docs]) +- Increase timeout to avoid killing the core during shutdown ([@agners] - [#45029]) +- Remove empty schema ([@balloob] - [#45044]) +- Remove safe mode from HomeKit ([@bdraco] - [#45028]) ([homekit docs]) +- Bump zwave-js-server-python to 0.7.0 ([@cgarwood] - [#45045]) ([zwave_js docs]) +- Repair flaky and broken stream tests in test_hls.py, and turn back on ([@allenporter] - [#45025]) ([stream docs]) +- Fix vacuums that do not support start with homekit ([@bdraco] - [#45030]) ([homekit docs]) +- Mark YAML support for August deprecated ([@bdraco] - [#45039]) ([august docs]) (breaking-change) +- Update roomba config flow to walk users through pairing ([@bdraco] - [#45037]) ([roomba docs]) (breaking-change) +- Add availability_mode "all" and "any" to MQTT entities ([@emontnemery] - [#44987]) ([mqtt docs]) +- Add zwave_js init module tests ([@MartinHjelmare] - [#45048]) ([zwave_js docs]) +- Add 100% tests coverage for Shelly cover and switch platforms ([@thecode] - [#45001]) ([shelly docs]) +- Add Shelly RGB devices management ([@chemelli74] - [#43993]) ([shelly docs]) +- Drop awarecan from codeowners ([@balloob] - [#45049]) ([aws docs]) ([nest docs]) +- Cleanups for somfy_mylink ([@bdraco] - [#45026]) ([somfy_mylink docs]) +- Fix tests for input_datetime ([@spacegaier] - [#45055]) ([input_datetime docs]) +- Default `input_datetime` to current date ([@spacegaier] - [#45052]) ([input_datetime docs]) +- Add switch platform to zwave_js ([@cgarwood] - [#45046]) ([zwave_js docs]) (new-platform) +- Add name to ignored entries ([@balloob] - [#45051]) ([config docs]) +- Fix docstring in zwave_js switch test ([@cgarwood] - [#45076]) ([zwave_js docs]) +- Bump Z-Wave JS to 0.7.1 ([@balloob] - [#45080]) ([zwave_js docs]) +- Cloud: Add web socket API to pick default TTS language ([@balloob] - [#45064]) ([cloud docs]) +- Clear cached nest event images after expiration ([@allenporter] - [#44956]) ([nest docs]) +- Roomba cleanups ([@bdraco] - [#45097]) ([roomba docs]) +- Allow any parameter of a light profile as an optional parameter ([@Adminiuga] - [#44079]) ([light docs]) +- Add device class attribute to tado humidity sensor state ([@ErnstEeldert] - [#45084]) ([tado docs]) +- Follow Axis library changes and improve tests ([@Kane610] - [#44126]) ([axis docs]) +- Soma: fix battery drain issue caused by excess update requests ([@badguy99] - [#45104]) ([soma docs]) +- Add additional roku model to discovery ([@bdraco] - [#45103]) ([roku docs]) +- Do not try to connect to disabled ESPHome devices. ([@jesserockz] - [#45092]) ([esphome docs]) +- Move Plex->Sonos playback to built-in service ([@jjlawren] - [#45066]) ([plex docs]) ([sonos docs]) (breaking-change) +- Correct zwave_js value changed callback signature ([@MartinHjelmare] - [#45110]) ([zwave_js docs]) +- Add config_flow and stream selection to foscam ([@skgsergio] - [#41429]) ([foscam docs]) +- Allow input_number entity_id as for numeric_state trigger thresholds ([@Adminiuga] - [#45091]) ([homeassistant docs]) +- Add zwave_js light platform tests ([@MartinHjelmare] - [#45107]) ([zwave_js docs]) +- Filter some Alexa reports that are duplicate ([@balloob] - [#45093]) ([alexa docs]) +- Expose selected Netatmo schedule ([@cgtobi] - [#45077]) ([netatmo docs]) +- Add start torrent and stop torrent service for transmission integration ([@royto] - [#43920]) ([transmission docs]) +- Change attribute key for Lutron cover to lutron_integration_id ([@TimothyLeeAdams] - [#45114]) ([lutron docs]) (breaking-change) +- Starline OBD information ([@Anonym-tsk] - [#37608]) ([starline docs]) +- Add energy and power sensor tests & fix device_class ([@Petro31] - [#45122]) ([zwave_js docs]) +- Add support for discovery via DHCP ([@bdraco] - [#45087]) (new-integration) +- Remove from_state from alarm device triggers ([@emontnemery] - [#45127]) ([alarm_control_panel docs]) +- Get A/V info for Onkyo receivers ([@OnFreund] - [#34477]) ([onkyo docs]) +- Mark YAML support for DoorBird deprecated ([@bdraco] - [#45139]) ([doorbird docs]) (breaking-change) +- Remove YAML support from harmony ([@bdraco] - [#45140]) ([harmony docs]) (breaking-change) +- Rework Proxmoxve to use a DataUpdateCoordinator ([@Corbeno] - [#45068]) ([proxmoxve docs]) +- Migrate to maxcube-api 0.3.0 version ([@unaiur] - [#45126]) ([maxcube docs]) +- Add pressure to OWM forecast data ([@bchastain] - [#43843]) ([openweathermap docs]) ([weather docs]) +- Remove beta tag from Tasmota integration ([@emontnemery] - [#45153]) ([tasmota docs]) +- Downgrade dhcp log message error message when running without CAP_NET_RAW ([@bdraco] - [#45157]) ([dhcp docs]) +- Fix zwave_js adding not fully interviewed nodes ([@marcelveldt] - [#45162]) ([zwave_js docs]) +- Bump Z-Wave JS Server Python to 0.9.0 ([@balloob] - [#45181]) ([zwave_js docs]) +- Auto-create friendly name for persistent notifications ([@spacegaier] - [#42427]) ([persistent_notification docs]) +- Only add Netatmo climate schedule attribute if not None ([@cgtobi] - [#45176]) ([netatmo docs]) +- Add binary_sensor platform to zwave_js ([@marcelveldt] - [#45081]) ([zwave_js docs]) (new-platform) +- Add WebSocket API Foundation for zwave_js ([@cgarwood] - [#45151]) ([zwave_js docs]) +- Remove service and config schemas from foscam ([@skgsergio] - [#45154]) ([foscam docs]) +- Bump zwave-js-server-python to 0.10.0 ([@MartinHjelmare] - [#45189]) ([zwave_js docs]) +- Improve dhcp discovery for somfy_mylink to handle multiple devices ([@bdraco] - [#45166]) ([somfy_mylink docs]) +- Fix Typo in Onkyo A/V info ([@OnFreund] - [#45194]) ([onkyo docs]) +- Fix exception when trying to configure an ignored somfy mylink ([@bdraco] - [#45198]) ([somfy_mylink docs]) +- Normalise unique ID in Axis integration ([@Kane610] - [#45203]) ([axis docs]) +- Discover devices from device_trackers with router sources ([@bdraco] - [#45160]) ([device_tracker docs]) ([dhcp docs]) ([unifi docs]) +- Add support for discovering individual roombas ([@bdraco] - [#45200]) ([roomba docs]) +- Add DHCP discovery support to Axis integration ([@Kane610] - [#45167]) ([axis docs]) +- Handle older Izone controller ([@Swamp-Ig] - [#45218]) ([izone docs]) +- Add dhcp discovery to squeezebox ([@bdraco] - [#45210]) ([squeezebox docs]) +- Add DHCP discovery to Toon ([@frenck] - [#45222]) ([toon docs]) +- Add lock platform to zwave_js ([@raman325] - [#45175]) ([zwave_js docs]) (new-platform) +- Move switcher_kis services to entity services ([@thecode] - [#45204]) ([switcher_kis docs]) +- Prettier Zeroconf discovery name for Axis devices ([@Kane610] - [#45216]) ([axis docs]) +- Bump zwave-js-server-python to 0.11.0 ([@MartinHjelmare] - [#45231]) ([zwave_js docs]) +- Create shortcuts for config entry parameters in Axis device ([@Kane610] - [#45233]) ([axis docs]) +- Add Homekit discovery for iZone ([@Swamp-Ig] - [#45223]) ([izone docs]) +- Bump pycomfoconnect to 0.4 ([@chmielowiec] - [#45201]) ([comfoconnect docs]) +- Switch somfy to zeroconf discovery ([@bdraco] - [#45158]) ([somfy docs]) +- Bump mychevy version to 2.1.0 ([@sdague] - [#44810]) ([mychevy docs]) +- Fix the use of muted volume if not previously set in mpd ([@kstaniek] - [#45018]) ([mpd docs]) +- Bump google-nest-sdm to 0.2.9 ([@allenporter] - [#45244]) ([nest docs]) +- Re-add support for input_number as source of filter integration ([@dgomes] - [#45245]) ([filter docs]) +- Add dhcp discovery properties to mikrotik ([@bdraco] - [#45205]) ([mikrotik docs]) +- Prefill the ip address for powerwall discovery ([@bdraco] - [#45209]) ([powerwall docs]) +- Use dispatcher for unifi heartbeat tracking ([@bdraco] - [#45211]) ([unifi docs]) +- Use standard device tracker attributes for "ip" and "mac" in Mikrotik ([@bdraco] - [#45255]) ([mikrotik docs]) (breaking-change) +- Improve dyson code ([@shenxn] - [#45172]) ([dyson docs]) +- Make DHCP discovery ignore self assigned ip addresses ([@bdraco] - [#45256]) ([dhcp docs]) +- Add preheater current power to comfoconnect ([@hsmade] - [#44083]) ([comfoconnect docs]) +- Add device classes to Dyson sensors ([@shenxn] - [#45264]) ([dyson docs]) +- Update Tibber library, pyTibber==0.16.1 ([@Danielhiversen] - [#45263]) ([tibber docs]) +- Bump pypck to 0.7.9 ([@alengwenus] - [#45267]) ([lcn docs]) +- more graceful shutdown in the presence of a proxy_stream ([@jlvaillant] - [#45246]) +- Update gogogate2 to be async ([@bdraco] - [#42066]) ([gogogate2 docs]) +- Improve Roon media player play_media ([@pavoni] - [#45221]) ([roon docs]) (breaking-change) +- Add climate platform to zwave_js ([@raman325] - [#45177]) ([zwave_js docs]) (new-platform) +- Sanitize user-agent in wrong_login message ([@gregod] - [#45251]) ([http docs]) +- Fix error with Axis light events without representation in light control ([@Kane610] - [#45277]) ([axis docs]) +- Remove YAML support from nut ([@bdraco] - [#45276]) ([nut docs]) (breaking-change) +- Rewrite dyson vacuum test ([@shenxn] - [#45265]) ([dyson docs]) +- Pyroon discovery ([@pavoni] - [#44811]) ([roon docs]) +- Add add & remove node commands to zwave_js websocket api ([@cgarwood] - [#45232]) ([zwave_js docs]) (new-integration) +- Update xknx to 0.16.1 ([@farmio] - [#45247]) ([knx docs]) +- Allow notify services to update existing targets ([@alandtse] - [#45283]) ([notify docs]) +- Generics and other type hint improvements ([@scop] - [#45250]) +- Bump hatasmota to 0.2.5 ([@emontnemery] - [#45297]) ([tasmota docs]) +- Use methods available to verify link local address ([@Kane610] - [#45309]) ([dhcp docs]) +- Rewrite dyson fan test ([@shenxn] - [#45295]) ([dyson docs]) +- Disable pytest enabled in vscode default settings ([@balloob] - [#45317]) +- Include config entry id in zwave_js signal names ([@kpine] - [#45282]) ([zwave_js docs]) +- Add node_status websocket API command to zwave_js ([@cgarwood] - [#45325]) ([zwave_js docs]) +- Replace outdated / closed URL for reporting HA startup blocks ([@spacegaier] - [#45334]) +- Move device tracker scanner attributes to ScannerEntity ([@MartinHjelmare] - [#45312]) ([device_tracker docs]) +- Switch dhcp to use async sniff for faster shutdown ([@bdraco] - [#45339]) ([dhcp docs]) +- bump libs for zha ([@dmulcahey] - [#45345]) ([zha docs]) +- Update .pre-commit-config.yaml to prevent loops between isort and black ([@mduran80] - [#45321]) +- Add permanent_hold attribute to Honeywell climate ([@cgarwood] - [#45341]) ([honeywell docs]) +- Repair stream test_recorder.py and mark not flaky ([@allenporter] - [#45054]) ([stream docs]) +- Add empty password support to pi-hole ([@shenxn] - [#37958]) ([pi_hole docs]) +- Add default URL to zwave_js config flow ([@cgarwood] - [#45366]) ([zwave_js docs]) +- Remove yeelight init dispatcher on unloading ([@shenxn] - [#45359]) ([yeelight docs]) +- Increase update interval in AccuWeather integration ([@bieniu] - [#44984]) ([accuweather docs]) +- Replace strange "dict logic" in AirVisual pollutant level sensors (1 of 2) ([@bachya] - [#44868]) ([airvisual docs]) +- Introduce reauthentication flow to UniFi integration ([@Kane610] - [#45360]) ([unifi docs]) +- Wait for all triggers when one fails to attach ([@bdraco] - [#45361]) ([automation docs]) +- Change Dyson PureCoolLink fan speeds to adhere the standard ([@shenxn] - [#45331]) ([dyson docs]) (breaking-change) +- Fix test_wait_template_with_utcnow ([@bdraco] - [#45356]) +- Switch frequently used unifi controller properties to attributes ([@bdraco] - [#45365]) ([unifi docs]) +- Prevent isort from modifying files formatted with black and causing pipeline to fail ([@mduran80] - [#45371]) +- Add DemoCover with only tilt controls ([@iMicknl] - [#45228]) ([demo docs]) +- Bump pyVicare to 0.2.5 ([@oischinger] - [#45301]) ([vicare docs]) (breaking-change) +- Fix memory leak in dhcp integration ([@bdraco] - [#45378]) ([dhcp docs]) +- Fix yeelight brightness in music mode ([@shenxn] - [#45358]) ([yeelight docs]) +- Remove YAML support from myq ([@bdraco] - [#45375]) ([myq docs]) (breaking-change) +- Bump required hyperion-py version ([@dermotduffy] - [#45385]) ([hyperion docs]) +- Format SNMP sensor data which are not strings/counters ([@RomRider] - [#44823]) ([snmp docs]) +- Revert "Update .pre-commit-config.yaml to prevent loops between isort and black" ([@frenck] - [#45391]) +- Revert "Update azure-pipelines-ci.yml to enable black mode in isort" ([@frenck] - [#45390]) +- Separate Plex/Sonos cross-integration tests ([@jjlawren] - [#45370]) ([plex docs]) ([sonos docs]) +- Don't update systemmonitor static boot time timestamp ([@Ebbe] - [#45165]) ([systemmonitor docs]) +- Introduce reauthentication flow to Axis integration ([@Kane610] - [#45307]) ([axis docs]) +- Treat Huawei LTE response error code -1 as apparently unsupported ([@scop] - [#45304]) ([huawei_lte docs]) +- Add SSDP discovery to unifi ([@bdraco] - [#45364]) ([unifi docs]) +- Rewrite dyson sensor test ([@shenxn] - [#45382]) ([dyson docs]) +- Remove YAML support from nexia ([@bdraco] - [#45379]) ([nexia docs]) (breaking-change) +- Remove YAML support from hunterdouglas_powerview ([@bdraco] - [#45376]) ([hunterdouglas_powerview docs]) (breaking-change) +- Remove YAML support from rachio ([@bdraco] - [#45383]) ([rachio docs]) (breaking-change) +- Stop update_coordinator schedule refresh when HA is stopping ([@thecode] - [#45338]) +- Bump hatasmota to 0.2.6 ([@emontnemery] - [#45403]) ([tasmota docs]) +- Remove YAML support from powerwall ([@bdraco] - [#45381]) ([powerwall docs]) (breaking-change) +- Fix zwave_js climate entity temperature unit ([@raman325] - [#45377]) ([zwave_js docs]) +- Upgrade TwitterAPI to 2.6.3 ([@fabaff] - [#45415]) ([twitter docs]) +- Upgrade pylast to 4.1.0 ([@fabaff] - [#45413]) ([lastfm docs]) +- Bump hass-nabucasa 0.41.0 ([@pvizeli] - [#45422]) ([cloud docs]) +- Upgrade sendgrid to 6.5.0 ([@fabaff] - [#45412]) ([sendgrid docs]) +- Slightly improve error message in case of duplicate entity IDs ([@spacegaier] - [#45424]) ([config docs]) +- Add KNX service event_register ([@farmio] - [#45248]) ([knx docs]) (breaking-change) +- Rewrite dyson init test ([@shenxn] - [#45409]) ([dyson docs]) +- Add cover platform to zwave js ([@firstof9] - [#45193]) ([zwave_js docs]) (new-platform) +- Clarify ConfigEntryNotReady log ([@chemelli74] - [#45425]) +- Bump zwave-js-server-python to 0.12.0 ([@cgarwood] - [#45438]) ([zwave_js docs]) +- Basic logbook support for deCONZ events ([@Kane610] - [#45400]) ([deconz docs]) +- Fix hs_color crashing when activating scenes in deCONZ on color_temp lights ([@Kane610] - [#45159]) ([deconz docs]) +- Introduce reauth flow to deCONZ ([@Kane610] - [#45443]) ([deconz docs]) +- Base deCONZ group supported features on the sum of all its lights ([@Kane610] - [#45440]) ([deconz docs]) +- Add zwave-js fan platform ([@firstof9] - [#45439]) ([zwave_js docs]) (new-platform) +- Option to select what video source Axis camera should use ([@Kane610] - [#45268]) ([axis docs]) +- Add a one touch pairing config flow for lutron caseta ([@bdraco] - [#45136]) ([lutron_caseta docs]) +- Always apply default light profiles, unless a profile is given ([@Adminiuga] - [#45450]) ([light docs]) (breaking-change) +- Disconnect Hyperion client in error conditions ([@dermotduffy] - [#45411]) ([hyperion docs]) +- Upgrade aiolifx to 0.6.9 ([@amelchio] - [#45448]) ([lifx docs]) +- Remove the ability for mqtt to set speeds that are not in the speed_list ([@bdraco] - [#45445]) ([mqtt docs]) (breaking-change) +- Step Axis integration to platinum score on Integration Quality Scale ([@Kane610] - [#45442]) ([axis docs]) +- Remove YAML support from nuheat ([@bdraco] - [#45380]) ([nuheat docs]) (breaking-change) +- Subscribe only to valid MQTT discovery topics ([@emontnemery] - [#45456]) ([mqtt docs]) +- Fix flaky SRP_Energy test ([@balloob] - [#45471]) ([srp_energy docs]) +- Truncate MQTT payload in debug messages to 8kB ([@emontnemery] - [#45465]) ([mqtt docs]) +- Rewrite dyson air quality tests ([@shenxn] - [#45466]) ([dyson docs]) +- Add SSDP discovery support to Axis integration ([@Kane610] - [#45474]) ([axis docs]) +- Add support for zwave_js lock services ([@raman325] - [#45451]) ([zwave_js docs]) +- Remove YAML support from tado ([@bdraco] - [#45384]) ([tado docs]) (breaking-change) +- Upgrade youtube_dl to version 2021.01.16 ([@BKPepe] - [#45484]) ([media_extractor docs]) +- Improve Axis tests following late review in SSDP PR ([@Kane610] - [#45489]) ([axis docs]) +- Rewrite dyson climate tests ([@shenxn] - [#45493]) ([dyson docs]) +- Bump pyWeMo to 0.6.1 ([@esev] - [#45501]) ([wemo docs]) +- Fix for radiotherm component stall ([@vinnyfuria] - [#45482]) ([radiotherm docs]) +- Update xknx to 0.16.2 ([@farmio] - [#45511]) ([knx docs]) +- Use image proxy in volumio media browser ([@OnFreund] - [#43819]) ([volumio docs]) +- Bump actions/stale from v3.0.14 to v3.0.15 (@dependabot - [#45516]) +- Bump Z-Wave JS Server Python to 0.13 ([@balloob] - [#45524]) ([zwave_js docs]) +- Better wait for Z-Wave to be initialized ([@balloob] - [#45520]) ([zwave_js docs]) +- Bump dependency for HomematicIP Cloud to 0.13.1 ([@SukramJ] - [#45475]) ([homematicip_cloud docs]) +- Fix Tado fallback modes (overlay) ([@Savjee] - [#44665]) ([tado docs]) +- Add version to hassfest for custom integrations ([@ludeeus] - [#45523]) +- Add WiLight Fan ([@leofig-rj] - [#39541]) ([wilight docs]) (new-platform) +- Add zwave_js ZWavePropertyBinarySensory ([@itewk] - [#45504]) ([zwave_js docs]) +- Fix Roon play_media ([@pavoni] - [#45532]) ([roon docs]) +- Tibber, fix spreading requests ([@Danielhiversen] - [#45533]) ([tibber docs]) +- Improve zwave_js light targetvalue vs currentValue selection ([@marcelveldt] - [#45477]) ([zwave_js docs]) +- Increase stalebot operations per run ([@frenck] - [#45548]) +- Clean up unnecessary method from Netatmo code ([@cgtobi] - [#45546]) ([netatmo docs]) +- Improve Slack notify component ([@cdce8p] - [#45479]) ([slack docs]) +- Fix Vera race condition on start ([@pavoni] - [#45535]) ([vera docs]) +- Add better message to deCONZ event logbook when information is available ([@Kane610] - [#45545]) ([deconz docs]) +- Add tado service set temperature offset ([@north3221] - [#45014]) ([tado docs]) +- Upgrade econet to use new API ([@w1ll1am23] - [#44427]) ([econet docs]) (breaking-change) +- Add an HTTP view to dump the Z-Wave JS state ([@balloob] - [#45452]) ([http docs]) ([zwave_js docs]) +- Fix Hyperion brightness setting ([@starkillerOG] - [#45335]) ([hyperion docs]) +- Set hyperion icon to lightbulb when off ([@starkillerOG] - [#45351]) ([hyperion docs]) +- Add support for Discord embed in messages ([@popboxgun] - [#44986]) ([discord docs]) +- Bump python-velbus version to 2.1.2 ([@Cereal2nd] - [#45553]) ([velbus docs]) +- Add "significant change" base ([@balloob] - [#45555]) ([binary_sensor docs]) ([sensor docs]) +- Upgrade shodan to 1.25.0 ([@fabaff] - [#45560]) ([shodan docs]) +- Limit data sending to Alexa to significant changes ([@balloob] - [#45563]) ([alexa docs]) +- Changes to filename and path validation ([@ludeeus] - [#45529]) ([downloader docs]) ([lovelace docs]) ([media_source docs]) ([python_script docs]) +- Added command templates for the mqtt climate component. ([@radovanbauer] - [#44976]) ([mqtt docs]) +- Don't parse previous messages when UniFi connection state change to available ([@Kane610] - [#45544]) ([unifi docs]) +- Bump plexapi to 4.3.0 ([@jjlawren] - [#45567]) ([plex docs]) +- Update ZHA dependencies ([@Adminiuga] - [#45569]) ([zha docs]) +- Upgrade pillow to 8.1.0 ([@frenck] - [#45574]) +- Fix zwave_js Color Switch Device Type discovery for RGB dimmers ([@kpine] - [#45571]) ([zwave_js docs]) +- Bump httplib2 in google and remember_the_milk ([@bdraco] - [#45578]) ([google docs]) ([remember_the_milk docs]) +- Upgrade pytest to 6.2.2 ([@frenck] - [#45572]) +- Upgrade coverage to 5.4 ([@frenck] - [#45570]) +- Tweak stale policies ([@frenck] - [#45568]) +- Add support for homekit_controller secondary entities like power usage ([@Jc2k] - [#44013]) ([homekit_controller docs]) +- Add gen3 Hue remote to deCONZ device trigger ([@Kane610] - [#45581]) ([deconz docs]) +- Remove hyperion entry from registry only when instances are fully removed ([@dermotduffy] - [#44488]) ([hyperion docs]) +- Add significant change filtering to Google ([@balloob] - [#45566]) ([google_assistant docs]) ([sensor docs]) ([switch docs]) +- Add device metadata for Google Assistant ([@deiger] - [#45507]) ([google_assistant docs]) +- Light significant changes + sensor tweaks ([@balloob] - [#45583]) ([light docs]) ([sensor docs]) +- Do not reset ble tracker adapter to read battery ([@guillempages] - [#44229]) ([bluetooth_le_tracker docs]) +- Extend add_update_listener support to bound methods ([@jpcornil-git] - [#44238]) +- Remove tuya/climate precision property override ([@ollo69] - [#44148]) ([tuya docs]) +- Add support for EDS0068 onewire sensor ([@sampod] - [#44029]) ([onewire docs]) +- Round Mold Indicator attributes ([@yuvalabou] - [#43622]) ([mold_indicator docs]) +- Add tilt functionality to Velux covers ([@pawlizio] - [#43669]) ([velux docs]) +- Avoid proxied Roku images during internal requests ([@ctalkington] - [#43547]) ([roku docs]) +- Add reminder support to todoist.new_task service ([@matejdro] - [#44142]) ([todoist docs]) +- Add support for Pico and Shade remotes to Lutron Caseta ([@bdraco] - [#45315]) ([lutron_caseta docs]) +- Refactor slack tests ([@cdce8p] - [#45561]) ([slack docs]) +- Add zwave_js add-on config flow support ([@MartinHjelmare] - [#45552]) ([zwave_js docs]) +- Add temperature step size for generic_thermostat ([@spacegaier] - [#41972]) ([generic_thermostat docs]) +- Add selectors for text and arbitrary objects ([@thomasloven] - [#45112]) +- Add advanced Hyperion entities ([@dermotduffy] - [#45410]) ([hyperion docs]) (new-platform) +- Optimized state handling of Panasonic Viera TVs ([@thegnuu] - [#42913]) ([panasonic_viera docs]) +- Implement remote.delete_command in the Broadlink integration ([@felipediel] - [#44041]) ([broadlink docs]) +- Add check and remove temporary fix for lg soundbar eq and source list ([@bernimoses] - [#38798]) ([lg_soundbar docs]) +- Explicitly return None in Velux covers ([@frenck] - [#45596]) ([velux docs]) +- Rewrite hddtemp unittest tests to pytest ([@adriansuwala] - [#42513]) ([hddtemp docs]) +- Esphome fan direction ([@blejdfist] - [#44495]) ([esphome docs]) +- Camera Status and Motion record status ([@rfleming71] - [#44936]) ([uvc docs]) +- Fix home connect lights setting color ([@josiasmontag] - [#45470]) ([home_connect docs]) +- Bump zwave-js-server-python to 0.14.1 ([@MartinHjelmare] - [#45598]) ([zwave_js docs]) +- New methods for input_select component ([@l-mb] - [#42968]) ([input_select docs]) +- Re-architect Tile integration with new pytile ([@bachya] - [#43071]) ([tile docs]) +- Prefer shorter keys for intent matching ([@CtrlZvi] - [#43672]) (breaking-change) +- Make sure generated slugs are not empty ([@Tho85] - [#43153]) +- Remove unwanted brightness check in zwave_js light ([@marcelveldt] - [#45597]) ([zwave_js docs]) +- Change update interval tests in AccuWeather integration ([@bieniu] - [#45562]) ([accuweather docs]) +- Add device actions for Number ([@Shulyaka] - [#44240]) ([number docs]) +- Add total energy, preheater and RMOT sensors to comfoconnect ([@chmielowiec] - [#45373]) ([comfoconnect docs]) +- Fix exception when last Shelly device is removed ([@thecode] - [#45476]) ([shelly docs]) +- Convert media_player unittest tests to pytest style ([@linebp] - [#41950]) ([media_player docs]) +- Add schema error handling to websocket_api ([@cdce8p] - [#45602]) ([websocket_api docs]) +- Add service to move camera to PTZ preset ([@joe248] - [#43083]) ([foscam docs]) +- Add Huisbaasje integration ([@denniss17] - [#42716]) ([huisbaasje docs]) (new-integration) +- Migrate RMV to use httpx ([@cgtobi] - [#42560]) ([rmvtransport docs]) +- Add config flow to fritzbox_callmonitor ([@springstan] - [#40736]) ([fritzbox_callmonitor docs]) +- Restore the device id after deleting and re-adding an integration ([@bdraco] - [#45348]) +- Bump motionblinds to 0.4.8 ([@starkillerOG] - [#45609]) ([motion_blinds docs]) +- Update frontend to 20210127.1 ([@bramkragten] - [#45612]) ([frontend docs]) +- Add mobile_app notify ClientError handling ([@cdce8p] - [#45480]) ([mobile_app docs]) +- Fix Notion binary sensor bug due to API changes ([@bachya] - [#45616]) ([notion docs]) + +
+ +[#34477]: https://github.com/home-assistant/core/pull/34477 +[#37608]: https://github.com/home-assistant/core/pull/37608 +[#37958]: https://github.com/home-assistant/core/pull/37958 +[#38798]: https://github.com/home-assistant/core/pull/38798 +[#39081]: https://github.com/home-assistant/core/pull/39081 +[#39541]: https://github.com/home-assistant/core/pull/39541 +[#40091]: https://github.com/home-assistant/core/pull/40091 +[#40520]: https://github.com/home-assistant/core/pull/40520 +[#40736]: https://github.com/home-assistant/core/pull/40736 +[#41373]: https://github.com/home-assistant/core/pull/41373 +[#41429]: https://github.com/home-assistant/core/pull/41429 +[#41585]: https://github.com/home-assistant/core/pull/41585 +[#41950]: https://github.com/home-assistant/core/pull/41950 +[#41972]: https://github.com/home-assistant/core/pull/41972 +[#42066]: https://github.com/home-assistant/core/pull/42066 +[#42331]: https://github.com/home-assistant/core/pull/42331 +[#42427]: https://github.com/home-assistant/core/pull/42427 +[#42513]: https://github.com/home-assistant/core/pull/42513 +[#42560]: https://github.com/home-assistant/core/pull/42560 +[#42716]: https://github.com/home-assistant/core/pull/42716 +[#42913]: https://github.com/home-assistant/core/pull/42913 +[#42968]: https://github.com/home-assistant/core/pull/42968 +[#43071]: https://github.com/home-assistant/core/pull/43071 +[#43083]: https://github.com/home-assistant/core/pull/43083 +[#43153]: https://github.com/home-assistant/core/pull/43153 +[#43207]: https://github.com/home-assistant/core/pull/43207 +[#43547]: https://github.com/home-assistant/core/pull/43547 +[#43622]: https://github.com/home-assistant/core/pull/43622 +[#43644]: https://github.com/home-assistant/core/pull/43644 +[#43669]: https://github.com/home-assistant/core/pull/43669 +[#43672]: https://github.com/home-assistant/core/pull/43672 +[#43805]: https://github.com/home-assistant/core/pull/43805 +[#43819]: https://github.com/home-assistant/core/pull/43819 +[#43843]: https://github.com/home-assistant/core/pull/43843 +[#43920]: https://github.com/home-assistant/core/pull/43920 +[#43993]: https://github.com/home-assistant/core/pull/43993 +[#44013]: https://github.com/home-assistant/core/pull/44013 +[#44020]: https://github.com/home-assistant/core/pull/44020 +[#44029]: https://github.com/home-assistant/core/pull/44029 +[#44041]: https://github.com/home-assistant/core/pull/44041 +[#44044]: https://github.com/home-assistant/core/pull/44044 +[#44079]: https://github.com/home-assistant/core/pull/44079 +[#44083]: https://github.com/home-assistant/core/pull/44083 +[#44126]: https://github.com/home-assistant/core/pull/44126 +[#44139]: https://github.com/home-assistant/core/pull/44139 +[#44142]: https://github.com/home-assistant/core/pull/44142 +[#44148]: https://github.com/home-assistant/core/pull/44148 +[#44187]: https://github.com/home-assistant/core/pull/44187 +[#44203]: https://github.com/home-assistant/core/pull/44203 +[#44229]: https://github.com/home-assistant/core/pull/44229 +[#44238]: https://github.com/home-assistant/core/pull/44238 +[#44240]: https://github.com/home-assistant/core/pull/44240 +[#44266]: https://github.com/home-assistant/core/pull/44266 +[#44288]: https://github.com/home-assistant/core/pull/44288 +[#44309]: https://github.com/home-assistant/core/pull/44309 +[#44344]: https://github.com/home-assistant/core/pull/44344 +[#44406]: https://github.com/home-assistant/core/pull/44406 +[#44407]: https://github.com/home-assistant/core/pull/44407 +[#44416]: https://github.com/home-assistant/core/pull/44416 +[#44427]: https://github.com/home-assistant/core/pull/44427 +[#44457]: https://github.com/home-assistant/core/pull/44457 +[#44458]: https://github.com/home-assistant/core/pull/44458 +[#44484]: https://github.com/home-assistant/core/pull/44484 +[#44488]: https://github.com/home-assistant/core/pull/44488 +[#44495]: https://github.com/home-assistant/core/pull/44495 +[#44507]: https://github.com/home-assistant/core/pull/44507 +[#44533]: https://github.com/home-assistant/core/pull/44533 +[#44542]: https://github.com/home-assistant/core/pull/44542 +[#44556]: https://github.com/home-assistant/core/pull/44556 +[#44557]: https://github.com/home-assistant/core/pull/44557 +[#44563]: https://github.com/home-assistant/core/pull/44563 +[#44576]: https://github.com/home-assistant/core/pull/44576 +[#44622]: https://github.com/home-assistant/core/pull/44622 +[#44638]: https://github.com/home-assistant/core/pull/44638 +[#44646]: https://github.com/home-assistant/core/pull/44646 +[#44647]: https://github.com/home-assistant/core/pull/44647 +[#44652]: https://github.com/home-assistant/core/pull/44652 +[#44655]: https://github.com/home-assistant/core/pull/44655 +[#44656]: https://github.com/home-assistant/core/pull/44656 +[#44657]: https://github.com/home-assistant/core/pull/44657 +[#44665]: https://github.com/home-assistant/core/pull/44665 +[#44683]: https://github.com/home-assistant/core/pull/44683 +[#44686]: https://github.com/home-assistant/core/pull/44686 +[#44689]: https://github.com/home-assistant/core/pull/44689 +[#44693]: https://github.com/home-assistant/core/pull/44693 +[#44695]: https://github.com/home-assistant/core/pull/44695 +[#44698]: https://github.com/home-assistant/core/pull/44698 +[#44701]: https://github.com/home-assistant/core/pull/44701 +[#44702]: https://github.com/home-assistant/core/pull/44702 +[#44703]: https://github.com/home-assistant/core/pull/44703 +[#44705]: https://github.com/home-assistant/core/pull/44705 +[#44706]: https://github.com/home-assistant/core/pull/44706 +[#44710]: https://github.com/home-assistant/core/pull/44710 +[#44714]: https://github.com/home-assistant/core/pull/44714 +[#44718]: https://github.com/home-assistant/core/pull/44718 +[#44721]: https://github.com/home-assistant/core/pull/44721 +[#44722]: https://github.com/home-assistant/core/pull/44722 +[#44728]: https://github.com/home-assistant/core/pull/44728 +[#44730]: https://github.com/home-assistant/core/pull/44730 +[#44731]: https://github.com/home-assistant/core/pull/44731 +[#44732]: https://github.com/home-assistant/core/pull/44732 +[#44737]: https://github.com/home-assistant/core/pull/44737 +[#44738]: https://github.com/home-assistant/core/pull/44738 +[#44739]: https://github.com/home-assistant/core/pull/44739 +[#44740]: https://github.com/home-assistant/core/pull/44740 +[#44742]: https://github.com/home-assistant/core/pull/44742 +[#44743]: https://github.com/home-assistant/core/pull/44743 +[#44746]: https://github.com/home-assistant/core/pull/44746 +[#44748]: https://github.com/home-assistant/core/pull/44748 +[#44749]: https://github.com/home-assistant/core/pull/44749 +[#44750]: https://github.com/home-assistant/core/pull/44750 +[#44755]: https://github.com/home-assistant/core/pull/44755 +[#44756]: https://github.com/home-assistant/core/pull/44756 +[#44766]: https://github.com/home-assistant/core/pull/44766 +[#44768]: https://github.com/home-assistant/core/pull/44768 +[#44770]: https://github.com/home-assistant/core/pull/44770 +[#44788]: https://github.com/home-assistant/core/pull/44788 +[#44790]: https://github.com/home-assistant/core/pull/44790 +[#44791]: https://github.com/home-assistant/core/pull/44791 +[#44796]: https://github.com/home-assistant/core/pull/44796 +[#44800]: https://github.com/home-assistant/core/pull/44800 +[#44806]: https://github.com/home-assistant/core/pull/44806 +[#44810]: https://github.com/home-assistant/core/pull/44810 +[#44811]: https://github.com/home-assistant/core/pull/44811 +[#44814]: https://github.com/home-assistant/core/pull/44814 +[#44815]: https://github.com/home-assistant/core/pull/44815 +[#44823]: https://github.com/home-assistant/core/pull/44823 +[#44824]: https://github.com/home-assistant/core/pull/44824 +[#44835]: https://github.com/home-assistant/core/pull/44835 +[#44836]: https://github.com/home-assistant/core/pull/44836 +[#44837]: https://github.com/home-assistant/core/pull/44837 +[#44838]: https://github.com/home-assistant/core/pull/44838 +[#44842]: https://github.com/home-assistant/core/pull/44842 +[#44845]: https://github.com/home-assistant/core/pull/44845 +[#44868]: https://github.com/home-assistant/core/pull/44868 +[#44869]: https://github.com/home-assistant/core/pull/44869 +[#44870]: https://github.com/home-assistant/core/pull/44870 +[#44871]: https://github.com/home-assistant/core/pull/44871 +[#44872]: https://github.com/home-assistant/core/pull/44872 +[#44874]: https://github.com/home-assistant/core/pull/44874 +[#44879]: https://github.com/home-assistant/core/pull/44879 +[#44883]: https://github.com/home-assistant/core/pull/44883 +[#44885]: https://github.com/home-assistant/core/pull/44885 +[#44888]: https://github.com/home-assistant/core/pull/44888 +[#44897]: https://github.com/home-assistant/core/pull/44897 +[#44919]: https://github.com/home-assistant/core/pull/44919 +[#44921]: https://github.com/home-assistant/core/pull/44921 +[#44924]: https://github.com/home-assistant/core/pull/44924 +[#44936]: https://github.com/home-assistant/core/pull/44936 +[#44937]: https://github.com/home-assistant/core/pull/44937 +[#44941]: https://github.com/home-assistant/core/pull/44941 +[#44942]: https://github.com/home-assistant/core/pull/44942 +[#44956]: https://github.com/home-assistant/core/pull/44956 +[#44957]: https://github.com/home-assistant/core/pull/44957 +[#44964]: https://github.com/home-assistant/core/pull/44964 +[#44965]: https://github.com/home-assistant/core/pull/44965 +[#44967]: https://github.com/home-assistant/core/pull/44967 +[#44970]: https://github.com/home-assistant/core/pull/44970 +[#44971]: https://github.com/home-assistant/core/pull/44971 +[#44976]: https://github.com/home-assistant/core/pull/44976 +[#44977]: https://github.com/home-assistant/core/pull/44977 +[#44984]: https://github.com/home-assistant/core/pull/44984 +[#44986]: https://github.com/home-assistant/core/pull/44986 +[#44987]: https://github.com/home-assistant/core/pull/44987 +[#44989]: https://github.com/home-assistant/core/pull/44989 +[#44998]: https://github.com/home-assistant/core/pull/44998 +[#44999]: https://github.com/home-assistant/core/pull/44999 +[#45001]: https://github.com/home-assistant/core/pull/45001 +[#45006]: https://github.com/home-assistant/core/pull/45006 +[#45014]: https://github.com/home-assistant/core/pull/45014 +[#45018]: https://github.com/home-assistant/core/pull/45018 +[#45020]: https://github.com/home-assistant/core/pull/45020 +[#45022]: https://github.com/home-assistant/core/pull/45022 +[#45025]: https://github.com/home-assistant/core/pull/45025 +[#45026]: https://github.com/home-assistant/core/pull/45026 +[#45028]: https://github.com/home-assistant/core/pull/45028 +[#45029]: https://github.com/home-assistant/core/pull/45029 +[#45030]: https://github.com/home-assistant/core/pull/45030 +[#45033]: https://github.com/home-assistant/core/pull/45033 +[#45037]: https://github.com/home-assistant/core/pull/45037 +[#45039]: https://github.com/home-assistant/core/pull/45039 +[#45044]: https://github.com/home-assistant/core/pull/45044 +[#45045]: https://github.com/home-assistant/core/pull/45045 +[#45046]: https://github.com/home-assistant/core/pull/45046 +[#45048]: https://github.com/home-assistant/core/pull/45048 +[#45049]: https://github.com/home-assistant/core/pull/45049 +[#45051]: https://github.com/home-assistant/core/pull/45051 +[#45052]: https://github.com/home-assistant/core/pull/45052 +[#45054]: https://github.com/home-assistant/core/pull/45054 +[#45055]: https://github.com/home-assistant/core/pull/45055 +[#45064]: https://github.com/home-assistant/core/pull/45064 +[#45066]: https://github.com/home-assistant/core/pull/45066 +[#45068]: https://github.com/home-assistant/core/pull/45068 +[#45076]: https://github.com/home-assistant/core/pull/45076 +[#45077]: https://github.com/home-assistant/core/pull/45077 +[#45080]: https://github.com/home-assistant/core/pull/45080 +[#45081]: https://github.com/home-assistant/core/pull/45081 +[#45084]: https://github.com/home-assistant/core/pull/45084 +[#45087]: https://github.com/home-assistant/core/pull/45087 +[#45091]: https://github.com/home-assistant/core/pull/45091 +[#45092]: https://github.com/home-assistant/core/pull/45092 +[#45093]: https://github.com/home-assistant/core/pull/45093 +[#45097]: https://github.com/home-assistant/core/pull/45097 +[#45103]: https://github.com/home-assistant/core/pull/45103 +[#45104]: https://github.com/home-assistant/core/pull/45104 +[#45107]: https://github.com/home-assistant/core/pull/45107 +[#45110]: https://github.com/home-assistant/core/pull/45110 +[#45112]: https://github.com/home-assistant/core/pull/45112 +[#45114]: https://github.com/home-assistant/core/pull/45114 +[#45122]: https://github.com/home-assistant/core/pull/45122 +[#45126]: https://github.com/home-assistant/core/pull/45126 +[#45127]: https://github.com/home-assistant/core/pull/45127 +[#45136]: https://github.com/home-assistant/core/pull/45136 +[#45139]: https://github.com/home-assistant/core/pull/45139 +[#45140]: https://github.com/home-assistant/core/pull/45140 +[#45151]: https://github.com/home-assistant/core/pull/45151 +[#45153]: https://github.com/home-assistant/core/pull/45153 +[#45154]: https://github.com/home-assistant/core/pull/45154 +[#45157]: https://github.com/home-assistant/core/pull/45157 +[#45158]: https://github.com/home-assistant/core/pull/45158 +[#45159]: https://github.com/home-assistant/core/pull/45159 +[#45160]: https://github.com/home-assistant/core/pull/45160 +[#45162]: https://github.com/home-assistant/core/pull/45162 +[#45165]: https://github.com/home-assistant/core/pull/45165 +[#45166]: https://github.com/home-assistant/core/pull/45166 +[#45167]: https://github.com/home-assistant/core/pull/45167 +[#45172]: https://github.com/home-assistant/core/pull/45172 +[#45175]: https://github.com/home-assistant/core/pull/45175 +[#45176]: https://github.com/home-assistant/core/pull/45176 +[#45177]: https://github.com/home-assistant/core/pull/45177 +[#45181]: https://github.com/home-assistant/core/pull/45181 +[#45189]: https://github.com/home-assistant/core/pull/45189 +[#45193]: https://github.com/home-assistant/core/pull/45193 +[#45194]: https://github.com/home-assistant/core/pull/45194 +[#45198]: https://github.com/home-assistant/core/pull/45198 +[#45200]: https://github.com/home-assistant/core/pull/45200 +[#45201]: https://github.com/home-assistant/core/pull/45201 +[#45203]: https://github.com/home-assistant/core/pull/45203 +[#45204]: https://github.com/home-assistant/core/pull/45204 +[#45205]: https://github.com/home-assistant/core/pull/45205 +[#45209]: https://github.com/home-assistant/core/pull/45209 +[#45210]: https://github.com/home-assistant/core/pull/45210 +[#45211]: https://github.com/home-assistant/core/pull/45211 +[#45216]: https://github.com/home-assistant/core/pull/45216 +[#45218]: https://github.com/home-assistant/core/pull/45218 +[#45221]: https://github.com/home-assistant/core/pull/45221 +[#45222]: https://github.com/home-assistant/core/pull/45222 +[#45223]: https://github.com/home-assistant/core/pull/45223 +[#45228]: https://github.com/home-assistant/core/pull/45228 +[#45231]: https://github.com/home-assistant/core/pull/45231 +[#45232]: https://github.com/home-assistant/core/pull/45232 +[#45233]: https://github.com/home-assistant/core/pull/45233 +[#45244]: https://github.com/home-assistant/core/pull/45244 +[#45245]: https://github.com/home-assistant/core/pull/45245 +[#45246]: https://github.com/home-assistant/core/pull/45246 +[#45247]: https://github.com/home-assistant/core/pull/45247 +[#45248]: https://github.com/home-assistant/core/pull/45248 +[#45250]: https://github.com/home-assistant/core/pull/45250 +[#45251]: https://github.com/home-assistant/core/pull/45251 +[#45255]: https://github.com/home-assistant/core/pull/45255 +[#45256]: https://github.com/home-assistant/core/pull/45256 +[#45263]: https://github.com/home-assistant/core/pull/45263 +[#45264]: https://github.com/home-assistant/core/pull/45264 +[#45265]: https://github.com/home-assistant/core/pull/45265 +[#45267]: https://github.com/home-assistant/core/pull/45267 +[#45268]: https://github.com/home-assistant/core/pull/45268 +[#45276]: https://github.com/home-assistant/core/pull/45276 +[#45277]: https://github.com/home-assistant/core/pull/45277 +[#45282]: https://github.com/home-assistant/core/pull/45282 +[#45283]: https://github.com/home-assistant/core/pull/45283 +[#45295]: https://github.com/home-assistant/core/pull/45295 +[#45297]: https://github.com/home-assistant/core/pull/45297 +[#45301]: https://github.com/home-assistant/core/pull/45301 +[#45304]: https://github.com/home-assistant/core/pull/45304 +[#45307]: https://github.com/home-assistant/core/pull/45307 +[#45309]: https://github.com/home-assistant/core/pull/45309 +[#45312]: https://github.com/home-assistant/core/pull/45312 +[#45315]: https://github.com/home-assistant/core/pull/45315 +[#45317]: https://github.com/home-assistant/core/pull/45317 +[#45321]: https://github.com/home-assistant/core/pull/45321 +[#45325]: https://github.com/home-assistant/core/pull/45325 +[#45331]: https://github.com/home-assistant/core/pull/45331 +[#45334]: https://github.com/home-assistant/core/pull/45334 +[#45335]: https://github.com/home-assistant/core/pull/45335 +[#45338]: https://github.com/home-assistant/core/pull/45338 +[#45339]: https://github.com/home-assistant/core/pull/45339 +[#45341]: https://github.com/home-assistant/core/pull/45341 +[#45345]: https://github.com/home-assistant/core/pull/45345 +[#45348]: https://github.com/home-assistant/core/pull/45348 +[#45351]: https://github.com/home-assistant/core/pull/45351 +[#45356]: https://github.com/home-assistant/core/pull/45356 +[#45358]: https://github.com/home-assistant/core/pull/45358 +[#45359]: https://github.com/home-assistant/core/pull/45359 +[#45360]: https://github.com/home-assistant/core/pull/45360 +[#45361]: https://github.com/home-assistant/core/pull/45361 +[#45364]: https://github.com/home-assistant/core/pull/45364 +[#45365]: https://github.com/home-assistant/core/pull/45365 +[#45366]: https://github.com/home-assistant/core/pull/45366 +[#45370]: https://github.com/home-assistant/core/pull/45370 +[#45371]: https://github.com/home-assistant/core/pull/45371 +[#45373]: https://github.com/home-assistant/core/pull/45373 +[#45375]: https://github.com/home-assistant/core/pull/45375 +[#45376]: https://github.com/home-assistant/core/pull/45376 +[#45377]: https://github.com/home-assistant/core/pull/45377 +[#45378]: https://github.com/home-assistant/core/pull/45378 +[#45379]: https://github.com/home-assistant/core/pull/45379 +[#45380]: https://github.com/home-assistant/core/pull/45380 +[#45381]: https://github.com/home-assistant/core/pull/45381 +[#45382]: https://github.com/home-assistant/core/pull/45382 +[#45383]: https://github.com/home-assistant/core/pull/45383 +[#45384]: https://github.com/home-assistant/core/pull/45384 +[#45385]: https://github.com/home-assistant/core/pull/45385 +[#45390]: https://github.com/home-assistant/core/pull/45390 +[#45391]: https://github.com/home-assistant/core/pull/45391 +[#45400]: https://github.com/home-assistant/core/pull/45400 +[#45403]: https://github.com/home-assistant/core/pull/45403 +[#45409]: https://github.com/home-assistant/core/pull/45409 +[#45410]: https://github.com/home-assistant/core/pull/45410 +[#45411]: https://github.com/home-assistant/core/pull/45411 +[#45412]: https://github.com/home-assistant/core/pull/45412 +[#45413]: https://github.com/home-assistant/core/pull/45413 +[#45415]: https://github.com/home-assistant/core/pull/45415 +[#45422]: https://github.com/home-assistant/core/pull/45422 +[#45424]: https://github.com/home-assistant/core/pull/45424 +[#45425]: https://github.com/home-assistant/core/pull/45425 +[#45438]: https://github.com/home-assistant/core/pull/45438 +[#45439]: https://github.com/home-assistant/core/pull/45439 +[#45440]: https://github.com/home-assistant/core/pull/45440 +[#45442]: https://github.com/home-assistant/core/pull/45442 +[#45443]: https://github.com/home-assistant/core/pull/45443 +[#45445]: https://github.com/home-assistant/core/pull/45445 +[#45448]: https://github.com/home-assistant/core/pull/45448 +[#45450]: https://github.com/home-assistant/core/pull/45450 +[#45451]: https://github.com/home-assistant/core/pull/45451 +[#45452]: https://github.com/home-assistant/core/pull/45452 +[#45456]: https://github.com/home-assistant/core/pull/45456 +[#45465]: https://github.com/home-assistant/core/pull/45465 +[#45466]: https://github.com/home-assistant/core/pull/45466 +[#45470]: https://github.com/home-assistant/core/pull/45470 +[#45471]: https://github.com/home-assistant/core/pull/45471 +[#45474]: https://github.com/home-assistant/core/pull/45474 +[#45475]: https://github.com/home-assistant/core/pull/45475 +[#45476]: https://github.com/home-assistant/core/pull/45476 +[#45477]: https://github.com/home-assistant/core/pull/45477 +[#45479]: https://github.com/home-assistant/core/pull/45479 +[#45480]: https://github.com/home-assistant/core/pull/45480 +[#45482]: https://github.com/home-assistant/core/pull/45482 +[#45484]: https://github.com/home-assistant/core/pull/45484 +[#45489]: https://github.com/home-assistant/core/pull/45489 +[#45493]: https://github.com/home-assistant/core/pull/45493 +[#45501]: https://github.com/home-assistant/core/pull/45501 +[#45504]: https://github.com/home-assistant/core/pull/45504 +[#45507]: https://github.com/home-assistant/core/pull/45507 +[#45511]: https://github.com/home-assistant/core/pull/45511 +[#45516]: https://github.com/home-assistant/core/pull/45516 +[#45520]: https://github.com/home-assistant/core/pull/45520 +[#45523]: https://github.com/home-assistant/core/pull/45523 +[#45524]: https://github.com/home-assistant/core/pull/45524 +[#45529]: https://github.com/home-assistant/core/pull/45529 +[#45532]: https://github.com/home-assistant/core/pull/45532 +[#45533]: https://github.com/home-assistant/core/pull/45533 +[#45535]: https://github.com/home-assistant/core/pull/45535 +[#45544]: https://github.com/home-assistant/core/pull/45544 +[#45545]: https://github.com/home-assistant/core/pull/45545 +[#45546]: https://github.com/home-assistant/core/pull/45546 +[#45548]: https://github.com/home-assistant/core/pull/45548 +[#45552]: https://github.com/home-assistant/core/pull/45552 +[#45553]: https://github.com/home-assistant/core/pull/45553 +[#45555]: https://github.com/home-assistant/core/pull/45555 +[#45560]: https://github.com/home-assistant/core/pull/45560 +[#45561]: https://github.com/home-assistant/core/pull/45561 +[#45562]: https://github.com/home-assistant/core/pull/45562 +[#45563]: https://github.com/home-assistant/core/pull/45563 +[#45566]: https://github.com/home-assistant/core/pull/45566 +[#45567]: https://github.com/home-assistant/core/pull/45567 +[#45568]: https://github.com/home-assistant/core/pull/45568 +[#45569]: https://github.com/home-assistant/core/pull/45569 +[#45570]: https://github.com/home-assistant/core/pull/45570 +[#45571]: https://github.com/home-assistant/core/pull/45571 +[#45572]: https://github.com/home-assistant/core/pull/45572 +[#45574]: https://github.com/home-assistant/core/pull/45574 +[#45578]: https://github.com/home-assistant/core/pull/45578 +[#45581]: https://github.com/home-assistant/core/pull/45581 +[#45583]: https://github.com/home-assistant/core/pull/45583 +[#45596]: https://github.com/home-assistant/core/pull/45596 +[#45597]: https://github.com/home-assistant/core/pull/45597 +[#45598]: https://github.com/home-assistant/core/pull/45598 +[#45602]: https://github.com/home-assistant/core/pull/45602 +[#45609]: https://github.com/home-assistant/core/pull/45609 +[#45612]: https://github.com/home-assistant/core/pull/45612 +[#45616]: https://github.com/home-assistant/core/pull/45616 +[@Adminiuga]: https://github.com/Adminiuga +[@Anonym-tsk]: https://github.com/Anonym-tsk +[@BKPepe]: https://github.com/BKPepe +[@Cereal2nd]: https://github.com/Cereal2nd +[@Corbeno]: https://github.com/Corbeno +[@CtrlZvi]: https://github.com/CtrlZvi +[@Danielhiversen]: https://github.com/Danielhiversen +[@Ebbe]: https://github.com/Ebbe +[@ErnstEeldert]: https://github.com/ErnstEeldert +[@JPHutchins]: https://github.com/JPHutchins +[@Jc2k]: https://github.com/Jc2k +[@JeromeHXP]: https://github.com/JeromeHXP +[@KTibow]: https://github.com/KTibow +[@Kane610]: https://github.com/Kane610 +[@MartinHjelmare]: https://github.com/MartinHjelmare +[@Noltari]: https://github.com/Noltari +[@OnFreund]: https://github.com/OnFreund +[@Petro31]: https://github.com/Petro31 +[@RomRider]: https://github.com/RomRider +[@Savjee]: https://github.com/Savjee +[@ShaneQi]: https://github.com/ShaneQi +[@Shulyaka]: https://github.com/Shulyaka +[@SukramJ]: https://github.com/SukramJ +[@Swamp-Ig]: https://github.com/Swamp-Ig +[@Tho85]: https://github.com/Tho85 +[@TimothyLeeAdams]: https://github.com/TimothyLeeAdams +[@adriansuwala]: https://github.com/adriansuwala +[@agners]: https://github.com/agners +[@alandtse]: https://github.com/alandtse +[@alengwenus]: https://github.com/alengwenus +[@allenporter]: https://github.com/allenporter +[@amelchio]: https://github.com/amelchio +[@asymworks]: https://github.com/asymworks +[@bachya]: https://github.com/bachya +[@badguy99]: https://github.com/badguy99 +[@balloob]: https://github.com/balloob +[@bchastain]: https://github.com/bchastain +[@bdraco]: https://github.com/bdraco +[@bernimoses]: https://github.com/bernimoses +[@bieniu]: https://github.com/bieniu +[@blejdfist]: https://github.com/blejdfist +[@bouwew]: https://github.com/bouwew +[@bramkragten]: https://github.com/bramkragten +[@cdce8p]: https://github.com/cdce8p +[@cgarwood]: https://github.com/cgarwood +[@cgtobi]: https://github.com/cgtobi +[@chemelli74]: https://github.com/chemelli74 +[@chishm]: https://github.com/chishm +[@chmielowiec]: https://github.com/chmielowiec +[@chpego]: https://github.com/chpego +[@clook]: https://github.com/clook +[@cmroche]: https://github.com/cmroche +[@ctalkington]: https://github.com/ctalkington +[@danielperna84]: https://github.com/danielperna84 +[@deiger]: https://github.com/deiger +[@denniss17]: https://github.com/denniss17 +[@dermotduffy]: https://github.com/dermotduffy +[@dgomes]: https://github.com/dgomes +[@dmulcahey]: https://github.com/dmulcahey +[@dshokouhi]: https://github.com/dshokouhi +[@dzukero]: https://github.com/dzukero +[@elupus]: https://github.com/elupus +[@emontnemery]: https://github.com/emontnemery +[@emufan]: https://github.com/emufan +[@esev]: https://github.com/esev +[@fabaff]: https://github.com/fabaff +[@farmio]: https://github.com/farmio +[@felipediel]: https://github.com/felipediel +[@firstof9]: https://github.com/firstof9 +[@frenck]: https://github.com/frenck +[@gregod]: https://github.com/gregod +[@guillempages]: https://github.com/guillempages +[@gwww]: https://github.com/gwww +[@hsmade]: https://github.com/hsmade +[@hung2kgithub]: https://github.com/hung2kgithub +[@iMicknl]: https://github.com/iMicknl +[@insertjokehere]: https://github.com/insertjokehere +[@itewk]: https://github.com/itewk +[@jamincollins]: https://github.com/jamincollins +[@jcronq]: https://github.com/jcronq +[@jesserockz]: https://github.com/jesserockz +[@jjlawren]: https://github.com/jjlawren +[@jlvaillant]: https://github.com/jlvaillant +[@joe248]: https://github.com/joe248 +[@josiasmontag]: https://github.com/josiasmontag +[@jpcornil-git]: https://github.com/jpcornil-git +[@kpine]: https://github.com/kpine +[@kstaniek]: https://github.com/kstaniek +[@l-mb]: https://github.com/l-mb +[@leofig-rj]: https://github.com/leofig-rj +[@linebp]: https://github.com/linebp +[@ludeeus]: https://github.com/ludeeus +[@marcelveldt]: https://github.com/marcelveldt +[@matejdro]: https://github.com/matejdro +[@mduran80]: https://github.com/mduran80 +[@migube]: https://github.com/migube +[@mkeesey]: https://github.com/mkeesey +[@mvn23]: https://github.com/mvn23 +[@north3221]: https://github.com/north3221 +[@ocampana]: https://github.com/ocampana +[@oischinger]: https://github.com/oischinger +[@ollo69]: https://github.com/ollo69 +[@oncleben31]: https://github.com/oncleben31 +[@pavoni]: https://github.com/pavoni +[@pawlizio]: https://github.com/pawlizio +[@popboxgun]: https://github.com/popboxgun +[@pvizeli]: https://github.com/pvizeli +[@radovanbauer]: https://github.com/radovanbauer +[@raman325]: https://github.com/raman325 +[@rfleming71]: https://github.com/rfleming71 +[@royto]: https://github.com/royto +[@sampod]: https://github.com/sampod +[@scarface-4711]: https://github.com/scarface-4711 +[@scop]: https://github.com/scop +[@sdague]: https://github.com/sdague +[@shenxn]: https://github.com/shenxn +[@skgsergio]: https://github.com/skgsergio +[@spacegaier]: https://github.com/spacegaier +[@springstan]: https://github.com/springstan +[@starkillerOG]: https://github.com/starkillerOG +[@thecode]: https://github.com/thecode +[@thegnuu]: https://github.com/thegnuu +[@thomasloven]: https://github.com/thomasloven +[@unaiur]: https://github.com/unaiur +[@vinnyfuria]: https://github.com/vinnyfuria +[@w1ll1am23]: https://github.com/w1ll1am23 +[@yuvalabou]: https://github.com/yuvalabou +[@zewelor]: https://github.com/zewelor +[abode docs]: /integrations/abode/ +[accuweather docs]: /integrations/accuweather/ +[acmeda docs]: /integrations/acmeda/ +[adguard docs]: /integrations/adguard/ +[advantage_air docs]: /integrations/advantage_air/ +[airly docs]: /integrations/airly/ +[airnow docs]: /integrations/airnow/ +[airvisual docs]: /integrations/airvisual/ +[alarm_control_panel docs]: /integrations/alarm_control_panel/ +[alexa docs]: /integrations/alexa/ +[alpha_vantage docs]: /integrations/alpha_vantage/ +[august docs]: /integrations/august/ +[automation docs]: /integrations/automation/ +[aws docs]: /integrations/aws/ +[axis docs]: /integrations/axis/ +[binary_sensor docs]: /integrations/binary_sensor/ +[bluetooth_le_tracker docs]: /integrations/bluetooth_le_tracker/ +[broadlink docs]: /integrations/broadlink/ +[caldav docs]: /integrations/caldav/ +[cast docs]: /integrations/cast/ +[cloud docs]: /integrations/cloud/ +[comfoconnect docs]: /integrations/comfoconnect/ +[config docs]: /integrations/config/ +[daikin docs]: /integrations/daikin/ +[debugpy docs]: /integrations/debugpy/ +[deconz docs]: /integrations/deconz/ +[demo docs]: /integrations/demo/ +[denonavr docs]: /integrations/denonavr/ +[device_tracker docs]: /integrations/device_tracker/ +[dhcp docs]: /integrations/dhcp/ +[discord docs]: /integrations/discord/ +[dlna_dmr docs]: /integrations/dlna_dmr/ +[doorbird docs]: /integrations/doorbird/ +[downloader docs]: /integrations/downloader/ +[dyson docs]: /integrations/dyson/ +[ecobee docs]: /integrations/ecobee/ +[econet docs]: /integrations/econet/ +[elkm1 docs]: /integrations/elkm1/ +[esphome docs]: /integrations/esphome/ +[feedreader docs]: /integrations/feedreader/ +[filter docs]: /integrations/filter/ +[foscam docs]: /integrations/foscam/ +[fritzbox_callmonitor docs]: /integrations/fritzbox_callmonitor/ +[frontend docs]: /integrations/frontend/ +[generic_thermostat docs]: /integrations/generic_thermostat/ +[gogogate2 docs]: /integrations/gogogate2/ +[google docs]: /integrations/google/ +[google_assistant docs]: /integrations/google_assistant/ +[google_cloud docs]: /integrations/google_cloud/ +[google_maps docs]: /integrations/google_maps/ +[gree docs]: /integrations/gree/ +[harmony docs]: /integrations/harmony/ +[hassio docs]: /integrations/hassio/ +[hddtemp docs]: /integrations/hddtemp/ +[home_connect docs]: /integrations/home_connect/ +[homeassistant docs]: /integrations/homeassistant/ +[homekit docs]: /integrations/homekit/ +[homekit_controller docs]: /integrations/homekit_controller/ +[homematic docs]: /integrations/homematic/ +[homematicip_cloud docs]: /integrations/homematicip_cloud/ +[honeywell docs]: /integrations/honeywell/ +[http docs]: /integrations/http/ +[huawei_lte docs]: /integrations/huawei_lte/ +[huisbaasje docs]: /integrations/huisbaasje/ +[hunterdouglas_powerview docs]: /integrations/hunterdouglas_powerview/ +[hyperion docs]: /integrations/hyperion/ +[input_datetime docs]: /integrations/input_datetime/ +[input_select docs]: /integrations/input_select/ +[izone docs]: /integrations/izone/ +[knx docs]: /integrations/knx/ +[lastfm docs]: /integrations/lastfm/ +[lcn docs]: /integrations/lcn/ +[lg_soundbar docs]: /integrations/lg_soundbar/ +[lifx docs]: /integrations/lifx/ +[light docs]: /integrations/light/ +[logbook docs]: /integrations/logbook/ +[lovelace docs]: /integrations/lovelace/ +[lutron docs]: /integrations/lutron/ +[lutron_caseta docs]: /integrations/lutron_caseta/ +[maxcube docs]: /integrations/maxcube/ +[media_extractor docs]: /integrations/media_extractor/ +[media_player docs]: /integrations/media_player/ +[media_source docs]: /integrations/media_source/ +[meteo_france docs]: /integrations/meteo_france/ +[mikrotik docs]: /integrations/mikrotik/ +[mobile_app docs]: /integrations/mobile_app/ +[mochad docs]: /integrations/mochad/ +[mold_indicator docs]: /integrations/mold_indicator/ +[motion_blinds docs]: /integrations/motion_blinds/ +[mpd docs]: /integrations/mpd/ +[mqtt docs]: /integrations/mqtt/ +[mychevy docs]: /integrations/mychevy/ +[myq docs]: /integrations/myq/ +[nest docs]: /integrations/nest/ +[netatmo docs]: /integrations/netatmo/ +[nexia docs]: /integrations/nexia/ +[notify docs]: /integrations/notify/ +[notion docs]: /integrations/notion/ +[nuheat docs]: /integrations/nuheat/ +[number docs]: /integrations/number/ +[nut docs]: /integrations/nut/ +[obihai docs]: /integrations/obihai/ +[ondilo_ico docs]: /integrations/ondilo_ico/ +[onewire docs]: /integrations/onewire/ +[onkyo docs]: /integrations/onkyo/ +[opentherm_gw docs]: /integrations/opentherm_gw/ +[openweathermap docs]: /integrations/openweathermap/ +[ozw docs]: /integrations/ozw/ +[panasonic_viera docs]: /integrations/panasonic_viera/ +[persistent_notification docs]: /integrations/persistent_notification/ +[pi_hole docs]: /integrations/pi_hole/ +[plex docs]: /integrations/plex/ +[plugwise docs]: /integrations/plugwise/ +[powerwall docs]: /integrations/powerwall/ +[proxmoxve docs]: /integrations/proxmoxve/ +[ps4 docs]: /integrations/ps4/ +[python_script docs]: /integrations/python_script/ +[rachio docs]: /integrations/rachio/ +[radiotherm docs]: /integrations/radiotherm/ +[rainmachine docs]: /integrations/rainmachine/ +[recorder docs]: /integrations/recorder/ +[remember_the_milk docs]: /integrations/remember_the_milk/ +[rflink docs]: /integrations/rflink/ +[rfxtrx docs]: /integrations/rfxtrx/ +[risco docs]: /integrations/risco/ +[rmvtransport docs]: /integrations/rmvtransport/ +[roku docs]: /integrations/roku/ +[roomba docs]: /integrations/roomba/ +[roon docs]: /integrations/roon/ +[sendgrid docs]: /integrations/sendgrid/ +[sensor docs]: /integrations/sensor/ +[sentry docs]: /integrations/sentry/ +[shelly docs]: /integrations/shelly/ +[shodan docs]: /integrations/shodan/ +[shopping_list docs]: /integrations/shopping_list/ +[slack docs]: /integrations/slack/ +[snmp docs]: /integrations/snmp/ +[soma docs]: /integrations/soma/ +[somfy docs]: /integrations/somfy/ +[somfy_mylink docs]: /integrations/somfy_mylink/ +[sonos docs]: /integrations/sonos/ +[sql docs]: /integrations/sql/ +[squeezebox docs]: /integrations/squeezebox/ +[srp_energy docs]: /integrations/srp_energy/ +[starline docs]: /integrations/starline/ +[stream docs]: /integrations/stream/ +[surepetcare docs]: /integrations/surepetcare/ +[switch docs]: /integrations/switch/ +[switcher_kis docs]: /integrations/switcher_kis/ +[systemmonitor docs]: /integrations/systemmonitor/ +[tado docs]: /integrations/tado/ +[tasmota docs]: /integrations/tasmota/ +[tibber docs]: /integrations/tibber/ +[tile docs]: /integrations/tile/ +[todoist docs]: /integrations/todoist/ +[toon docs]: /integrations/toon/ +[transmission docs]: /integrations/transmission/ +[tuya docs]: /integrations/tuya/ +[twitter docs]: /integrations/twitter/ +[unifi docs]: /integrations/unifi/ +[upb docs]: /integrations/upb/ +[updater docs]: /integrations/updater/ +[uvc docs]: /integrations/uvc/ +[velbus docs]: /integrations/velbus/ +[velux docs]: /integrations/velux/ +[vera docs]: /integrations/vera/ +[verisure docs]: /integrations/verisure/ +[vicare docs]: /integrations/vicare/ +[volkszaehler docs]: /integrations/volkszaehler/ +[volumio docs]: /integrations/volumio/ +[weather docs]: /integrations/weather/ +[webostv docs]: /integrations/webostv/ +[websocket_api docs]: /integrations/websocket_api/ +[wemo docs]: /integrations/wemo/ +[wilight docs]: /integrations/wilight/ +[wink docs]: /integrations/wink/ +[xmpp docs]: /integrations/xmpp/ +[yeelight docs]: /integrations/yeelight/ +[zeroconf docs]: /integrations/zeroconf/ +[zha docs]: /integrations/zha/ +[zwave docs]: /integrations/zwave/ +[zwave_js docs]: /integrations/zwave_js/ diff --git a/source/images/blog/2021-02/social.png b/source/images/blog/2021-02/social.png new file mode 100644 index 0000000000000000000000000000000000000000..2b8af047666029ee9d5ce2ff808590a6c18c2941 GIT binary patch literal 125538 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 MwCt?^ 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

+Screenshot of the old badges clutter +Screenshot of the old badges clutter that is now gone! +

+ +We decided to no longer use badges in the auto generated Lovelace dashboards. +Instead, every entity is neatly grouped by area or domain in an entities card. + +If you liked the badges, you can always take control of your dashboard +and add them. ## DHCP Discovery @@ -91,76 +224,82 @@ Home Assistant now listens on your network for devices that request a IP address. Based on those intercepted messages, Home Assistant can now discover integrations for you to use with the discovered devices. +This really powerful addition has been made by [@bdraco], and many +integrations have quickly enriched their integrations to use this new +discovery method. + +So as of this release, your Home Assistant might actually find some new +devices it can use! Thanks [@bdraco]! + ## New Blueprint selectors For our Blueprint fanatics, some new goodies to the Blueprint has been added this release. Thanks to [@thomasloven], we now have two new selectors: - +

+Screenshot of the new text selector +Screenshot of the text selectors. +

- An object selector: Shows an YAML editor in the UI. - An text selector: Show a single line text input or text area for longer messages in the UI. - Blueprint descriptions now support Markdown. - +

+Screenshot of new object selector +Screenshot of the object selector, giving a YAML input field. +

+ +## Cloud Text to Speech settings + +Nabu Casa has been offering an amazing text to speech service for a while now, +yet it was hard to find, and even harder to setup and use. + +To fix this, a new settings UI has been added where you can select the default +language and gender to use for the text to speech service, so you no longer have +to attach that to every service call. You can find it in the Home Assistant Cloud +panel. + +

+Screenshot of Cloud TTS options +Screenshot of Cloud TTS options. +

+ +We also added the ability to try the chosen settings right in your browser. +Click the try button, enter some text and click play to hear the +text being spoken. ## Other noteworthy changes This release has no big new features, but we do have quite a bit of tweaks that are definitely noteworthy to mention. -- Significant changes (Google & Alexa) -- Configuring default language for TTS via UI, testing with TTS in UI. - -- Add yeelight service to enable disable music mode ([@zewelor] - [#44533]) ([yeelight docs]) -- Add device info to Météo-France ([@oncleben31] - [#44457]) ([meteo_france docs]) -- Add Chinese (Hong Kong) to Google Cloud TTS ([@hung2kgithub] - [#44689]) ([google_cloud docs]) -- Add turn_on and turn_off to gree climate component ([@cmroche] - [#43207]) ([gree docs]) -- Add RFXtrx Rfy venetian blinds tilt control ([@dzukero] - [#44309]) ([rfxtrx docs]) -- Add service to lock/unlock Sure Petcare pet flaps ([@insertjokehere] - [#44557]) ([surepetcare docs]) -- Add support for reordering Shopping List Items via Drag and Drop ([@ShaneQi] - [#41585]) ([shopping_list docs]) -- Add Vicare set mode service ([@oischinger] - [#44563]) -- Add MQTT Number ([@dgomes] - [#44739]) ([mqtt docs]) -- Add torrent id to Transmission events ([@JPHutchins] - [#44187]) ([transmission docs]) -- Add Shelly RGB devices management ([@chemelli74] - [#43993]) ([shelly docs]) -- Add name to ignored entries ([@balloob] - [#45051]) ([config docs]) -- Cloud: Add web socket API to pick default TTS language ([@balloob] - [#45064]) ([cloud docs]) -- Allow any parameter of a light profile as an optional parameter ([@Adminiuga] - [#44079]) ([light docs]) -- Allow input_number entity_id as for numeric_state trigger thresholds ([@Adminiuga] - [#45091]) ([homeassistant docs]) -- Add pressure to OWM forecast data ([@bchastain] - [#43843]) ([openweathermap docs]) ([weather docs]) -- Remove beta tag from Tasmota integration ([@emontnemery] - [#45153]) ([tasmota docs]) -- Add empty password support to pi-hole ([@shenxn] - [#37958]) ([pi_hole docs]) -- Basic logbook support for deCONZ events ([@Kane610] - [#45400]) ([deconz docs]) -- Introduce reauth flow to deCONZ ([@Kane610] - [#45443]) ([deconz docs]) -- Add a one touch pairing config flow for lutron caseta ([@bdraco] - [#45136]) ([lutron_caseta docs]) -- Add support for Discord embed in messages ([@popboxgun] - [#44986]) ([discord docs]) -- Add "significant change" base ([@balloob] - [#45555]) ([binary_sensor docs]) ([sensor docs]) -- Limit data sending to Alexa to significant changes ([@balloob] - [#45563]) ([alexa docs]) -- Add significant change filtering to Google ([@balloob] - [#45566]) ([google_assistant docs]) ([sensor docs]) ([switch docs]) -- Add tilt functionality to Velux covers ([@pawlizio] - [#43669]) ([velux docs]) -- Add support for Pico and Shade remotes to Lutron Caseta ([@bdraco] - [#45315]) ([lutron_caseta docs]) -- Implement remote.delete_command in the Broadlink integration ([@felipediel] - [#44041]) ([broadlink docs]) -- Esphome fan direction ([@blejdfist] - [#44495]) ([esphome docs]) -- New methods for input_select component ([@l-mb] - [#42968]) ([input_select docs]) -- Re-architect Tile integration with new pytile ([@bachya] - [#43071]) ([tile docs]) -- Add total energy, preheater and RMOT sensors to comfoconnect ([@chmielowiec] - [#45373]) ([comfoconnect docs]) -- Add service to move camera to PTZ preset ([@joe248] - [#43083]) ([foscam docs]) -- Migrate RMV to use httpx ([@cgtobi] - [#42560]) ([rmvtransport docs]) - -Frontend: - -- Add simple try tts dialog (#8245) @bramkragten -- Add icon support to gauge (#8081) @spacegaier -- More comprehensive YAML config errors + dynamic checks for action configs (#8217) @spacegaier -- add actions to weather-forecast-card (#7659) @iantrich -- Allow themeing of media control card (#8209) @spacegaier -- Format URL attribute as link (#8126) @spacegaier -- Update supervisor on add-on store refresh (#8132) @ludeeus -- Add filtering and zoom to node to the ZHA network visualization (#7913) @dmulcahey -- Added Drag & Drop Reordering to Shopping List Card. (#7296) @ShaneQi -- Add support for "all" as entity ID in action "service" (#7954) @spacegaier -- Add Bengali language (#8014) @spacegaier +- We now give you a clearer reason why your Lovelace card configuration is not + supported in the UI editor thanks to [@spacegaier]. +- Shelly RGB devices are now fully supported!! Nice [@chemelli74]! +- [@dmulcahey] Added filtering and zoom to node to the ZHA network visualization. + Very useful to find you Zigbee network issues. +- The deCONZ integration added support for logging basic event in the logbook. + Nicely done [@Kane610]. +- The Tasmota integration is out of beta! Awesome [@emontnemery]! +- [@spacegaier] Added support for themes on the media card. +- The items in the shopping list card can be ordered using drag & drop! + Thanks [@ShaneQi]! +- Newly ignored discovered integrations now show a name of the item ignored. + This makes it easier to undo that later. +- [@balloob] made a new framework that can detect significant changes in + entities, allowing to reduce the amount of update we need to send to both + Google Assistant and Alexa! +- Setting up Lutron Caseta was quite a pain, but not anymore! [@bdraco] added + one-touch pairing to the integration set up! +- If you use [light profiles](/integrations/light/#default-turn-on-values), + [@Adminiuga] is your man. All parameters of a light profile can now be + optional and default profiles are always applied. +- Dropdown helpers (`input_select`) got some new service capabilities added by + [@l-mb]. They can now cycle through the options, and service calls to jump + to the first or last item have been added as well. +- If you have a Foscam camera, [@joe248] added a service to move to PTZ presets. ## New Integrations @@ -204,7 +343,7 @@ integration. Click on one of those to read more about the breaking change for that specific item.
- Python 3.9 + Python 3.7

Support for Python 3.7 has been dropped, after being deprecated since @@ -703,7 +842,7 @@ The following integrations have been removed: - Reconnect mochad light on on/off command ([@migube] - [#44507]) ([mochad docs]) - Update xknx to 0.16.0 ([@farmio] - [#44749]) ([knx docs]) (breaking-change) - Bump PyTado to 0.10.0 ([@Noltari] - [#44770]) ([tado docs]) -- Bump dessant/lock-threads from v2.0.1 to v2.0.3 (@dependabot - [#44806]) +- Bump dessant/lock-threads from v2.0.1 to v2.0.3 (@dependabot] - [#44806]) - Update to denonavr version 0.9.10 ([@scarface-4711] - [#44791]) ([denonavr docs]) - Bumo pyroon version to 0.0.30 ([@pavoni] - [#44800]) ([roon docs]) - Bump pyobihai ([@dshokouhi] - [#44768]) ([obihai docs]) @@ -726,8 +865,8 @@ The following integrations have been removed: - Bump caldav version to 0.7.1 ([@chpego] - [#44815]) ([caldav docs]) - Complete device and entity registry type hints ([@scop] - [#44406]) - Propose an integration quality for nest SDM integration ([@allenporter] - [#44755]) ([nest docs]) -- Bump codecov/codecov-action from v1.1.1 to v1.2.0 (@dependabot - [#44836]) -- Bump actions/upload-artifact from v2.2.1 to v2.2.2 (@dependabot - [#44835]) +- Bump codecov/codecov-action from v1.1.1 to v1.2.0 (@dependabot] - [#44836]) +- Bump actions/upload-artifact from v2.2.1 to v2.2.2 (@dependabot] - [#44835]) - Add support for reordering Shopping List Items via Drag and Drop ([@ShaneQi] - [#41585]) ([shopping_list docs]) - Add Vicare set mode service ([@oischinger] - [#44563]) - Better general/fallback error message and traceback for unknown config errors ([@scop] - [#44655]) @@ -739,7 +878,7 @@ The following integrations have been removed: - Address late review of ondilo_ico ([@JeromeHXP] - [#44837]) ([ondilo_ico docs]) - Improve MQTT number test coverage ([@emontnemery] - [#44870]) ([mqtt docs]) - Bump pychromecast to 7.7.2 ([@emontnemery] - [#44871]) ([cast docs]) -- Bump codecov/codecov-action from v1.2.0 to v1.2.1 (@dependabot - [#44869]) +- Bump codecov/codecov-action from v1.2.0 to v1.2.1 (@dependabot] - [#44869]) - Generate nest images thumbnails from events ([@allenporter] - [#44638]) ([nest docs]) - Fix notion bridge id update device registry identifier usage ([@scop] - [#44872]) ([notion docs]) - Revert "Revert "Bump pypck to 0.7.8"" ([@frenck] - [#44885]) ([lcn docs]) @@ -962,7 +1101,7 @@ The following integrations have been removed: - Fix for radiotherm component stall ([@vinnyfuria] - [#45482]) ([radiotherm docs]) - Update xknx to 0.16.2 ([@farmio] - [#45511]) ([knx docs]) - Use image proxy in volumio media browser ([@OnFreund] - [#43819]) ([volumio docs]) -- Bump actions/stale from v3.0.14 to v3.0.15 (@dependabot - [#45516]) +- Bump actions/stale from v3.0.14 to v3.0.15 (@dependabot] - [#45516]) - Bump Z-Wave JS Server Python to 0.13 ([@balloob] - [#45524]) ([zwave_js docs]) - Better wait for Z-Wave to be initialized ([@balloob] - [#45520]) ([zwave_js docs]) - Bump dependency for HomematicIP Cloud to 0.13.1 ([@SukramJ] - [#45475]) ([homematicip_cloud docs]) @@ -1048,6 +1187,55 @@ The following integrations have been removed: - Update frontend to 20210127.1 ([@bramkragten] - [#45612]) ([frontend docs]) - Add mobile_app notify ClientError handling ([@cdce8p] - [#45480]) ([mobile_app docs]) - Fix Notion binary sensor bug due to API changes ([@bachya] - [#45616]) ([notion docs]) +- Allow Plex playback using provided playqueue ID ([@jjlawren] - [#45580]) ([plex docs]) (beta fix) +- Add additional error handling for automation script run ([@cdce8p] - [#45613]) ([automation docs]) (beta fix) +- Include relative path in tts get url ([@balloob] - [#45623]) ([tts docs]) (beta fix) +- Upgrade pyyaml to 5.4.1 (CVE-2020-14343) ([@fabaff] - [#45624]) (beta fix) +- Bump hatasmota to 0.2.7 ([@emontnemery] - [#45625]) ([tasmota docs]) (beta fix) +- Ensure history LazyState state value is always a string ([@bdraco] - [#45644]) ([history docs]) (beta fix) +- Update httpcore to prevent unhandled exception on dropped connection ([@bdraco] - [#45667]) (beta fix) +- Fix removing nodes in zwave_js integration ([@marcelveldt] - [#45676]) ([zwave_js docs]) (beta fix) +- Update frontend to 20210127.3 ([@bramkragten] - [#45679]) ([frontend docs]) (beta fix) +- SSDP response decode: replace invalid utf-8 characters ([@vzahradnik] - [#42681]) ([ssdp docs]) (beta fix) +- Update docker base image 2021.01.1 ([@pvizeli] - [#45697]) (beta fix) +- Bump pysmappee to 0.2.16 ([@bsmappee] - [#45699]) ([smappee docs]) (beta fix) +- Fix mqtt check in ozw ([@MartinHjelmare] - [#45709]) ([ozw docs]) (beta fix) +- Updated frontend to 20210127.5 ([@bramkragten] - [#45714]) ([frontend docs]) (beta fix) +- Bump simplisafe-python to 9.6.4 ([@bachya] - [#45716]) ([simplisafe docs]) (beta fix) +- Fix exception when a unifi config entry is ignored ([@bdraco] - [#45735]) ([unifi docs]) (beta fix) +- Bump awesomeversion from 21.1.3 to 21.1.6 ([@ludeeus] - [#45738]) (beta fix) +- Update frontend to 20210127.6 ([@bramkragten] - [#45760]) ([frontend docs]) (beta fix) +- Add timeout to lutron_caseta to prevent it blocking startup ([@bdraco] - [#45769]) ([lutron_caseta docs]) (beta fix) +- Bump pychromecast to 8.0.0 ([@emontnemery] - [#45776]) ([cast docs]) (beta fix) +- Ensure lutron_caseta is only discovered once ([@bdraco] - [#45792]) ([lutron_caseta docs]) (beta fix) +- Prevent AttributError for uninitilized KNX ClimateMode ([@farmio] - [#45793]) ([knx docs]) (beta fix) +- Bump pyatv to 0.7.6 ([@postlund] - [#45799]) ([apple_tv docs]) (beta fix) +- Bump zwave-js-server-python to 0.14.2 ([@marcelveldt] - [#45800]) ([zwave_js docs]) (beta fix) +- Add stop_cover service for zwave_js ([@firstof9] - [#45805]) ([zwave_js docs]) (beta fix) +- Fix shutdown deadlock with run_callback_threadsafe ([@bdraco] - [#45807]) (beta fix) +- Search all endpoints for value in zwave_js ([@raman325] - [#45809]) ([zwave_js docs]) (beta fix) +- Add zwave_js binary sensors property name for Notification CC ([@raman325] - [#45810]) ([zwave_js docs]) (beta fix) +- Fix missing async for lutron_caseta timeout ([@bdraco] - [#45812]) ([lutron_caseta docs]) (beta fix) +- Bump zwave-js-server-python to 0.15.0 ([@MartinHjelmare] - [#45813]) ([zwave_js docs]) (beta fix) +- Bump awesomeversion from 21.1.6 to 21.2.0 ([@ludeeus] - [#45821]) (beta fix) +- Improve MQTT JSON light to allow non-ambiguous states ([@emontnemery] - [#45522]) ([mqtt docs]) (beta fix) +- Add value notification events to zwave_js integration ([@marcelveldt] - [#45814]) ([zwave_js docs]) (beta fix) +- Add notification events to zwave_js integration ([@raman325] - [#45827]) ([zwave_js docs]) (beta fix) +- Fix sensor discovery for zwave_js integration ([@marcelveldt] - [#45834]) ([zwave_js docs]) (beta fix) +- Disable Osramlightify, upstream package is missing ([@frenck] - [#45775]) ([osramlightify docs]) (breaking-change) (beta fix) +- Enable Osramlightify again ([@tfriedel] - [#45849]) ([osramlightify docs]) (beta fix) +- Remove zwave_js devices that the controller is no longer connected to on initialization ([@raman325] - [#45853]) ([zwave_js docs]) (beta fix) +- Add current humidity to zwave_js climate platform ([@raman325] - [#45857]) ([zwave_js docs]) (beta fix) +- Update zwave_js discovery schema for light platform ([@marcelveldt] - [#45861]) ([zwave_js docs]) (beta fix) +- Fix zwave_js sensor device class attribute error ([@MartinHjelmare] - [#45863]) ([zwave_js docs]) (beta fix) +- Fix zwave_js device remove test ([@MartinHjelmare] - [#45864]) ([zwave_js docs]) (beta fix) +- Guard for missing value ([@marcelveldt] - [#45867]) ([zwave_js docs]) (beta fix) +- Use new zwave_js client ([@MartinHjelmare] - [#45872]) ([zwave_js docs]) (beta fix) +- Update frontend to 20210127.7 ([@bramkragten] - [#45874]) ([frontend docs]) (beta fix) +- Bump plexapi to 3.4.1 ([@jjlawren] - [#45878]) ([plex docs]) (beta fix) +- Update docker base image 2021.02.0 ([@pvizeli] - [#45889]) (beta fix) +- Upgrade Z-Wave JS Python to 0.17.0 ([@balloob] - [#45895]) ([zwave_js docs]) (beta fix) +- Mark Z-Wave as deprecated ([@balloob] - [#45896]) ([zwave docs]) (beta fix)

@@ -1070,6 +1258,7 @@ The following integrations have been removed: [#42427]: https://github.com/home-assistant/core/pull/42427 [#42513]: https://github.com/home-assistant/core/pull/42513 [#42560]: https://github.com/home-assistant/core/pull/42560 +[#42681]: https://github.com/home-assistant/core/pull/42681 [#42716]: https://github.com/home-assistant/core/pull/42716 [#42913]: https://github.com/home-assistant/core/pull/42913 [#42968]: https://github.com/home-assistant/core/pull/42968 @@ -1407,6 +1596,7 @@ The following integrations have been removed: [#45511]: https://github.com/home-assistant/core/pull/45511 [#45516]: https://github.com/home-assistant/core/pull/45516 [#45520]: https://github.com/home-assistant/core/pull/45520 +[#45522]: https://github.com/home-assistant/core/pull/45522 [#45523]: https://github.com/home-assistant/core/pull/45523 [#45524]: https://github.com/home-assistant/core/pull/45524 [#45529]: https://github.com/home-assistant/core/pull/45529 @@ -1433,6 +1623,7 @@ The following integrations have been removed: [#45572]: https://github.com/home-assistant/core/pull/45572 [#45574]: https://github.com/home-assistant/core/pull/45574 [#45578]: https://github.com/home-assistant/core/pull/45578 +[#45580]: https://github.com/home-assistant/core/pull/45580 [#45581]: https://github.com/home-assistant/core/pull/45581 [#45583]: https://github.com/home-assistant/core/pull/45583 [#45596]: https://github.com/home-assistant/core/pull/45596 @@ -1441,7 +1632,53 @@ The following integrations have been removed: [#45602]: https://github.com/home-assistant/core/pull/45602 [#45609]: https://github.com/home-assistant/core/pull/45609 [#45612]: https://github.com/home-assistant/core/pull/45612 +[#45613]: https://github.com/home-assistant/core/pull/45613 [#45616]: https://github.com/home-assistant/core/pull/45616 +[#45623]: https://github.com/home-assistant/core/pull/45623 +[#45624]: https://github.com/home-assistant/core/pull/45624 +[#45625]: https://github.com/home-assistant/core/pull/45625 +[#45644]: https://github.com/home-assistant/core/pull/45644 +[#45667]: https://github.com/home-assistant/core/pull/45667 +[#45676]: https://github.com/home-assistant/core/pull/45676 +[#45679]: https://github.com/home-assistant/core/pull/45679 +[#45697]: https://github.com/home-assistant/core/pull/45697 +[#45699]: https://github.com/home-assistant/core/pull/45699 +[#45709]: https://github.com/home-assistant/core/pull/45709 +[#45714]: https://github.com/home-assistant/core/pull/45714 +[#45716]: https://github.com/home-assistant/core/pull/45716 +[#45735]: https://github.com/home-assistant/core/pull/45735 +[#45738]: https://github.com/home-assistant/core/pull/45738 +[#45760]: https://github.com/home-assistant/core/pull/45760 +[#45769]: https://github.com/home-assistant/core/pull/45769 +[#45775]: https://github.com/home-assistant/core/pull/45775 +[#45776]: https://github.com/home-assistant/core/pull/45776 +[#45792]: https://github.com/home-assistant/core/pull/45792 +[#45793]: https://github.com/home-assistant/core/pull/45793 +[#45799]: https://github.com/home-assistant/core/pull/45799 +[#45800]: https://github.com/home-assistant/core/pull/45800 +[#45805]: https://github.com/home-assistant/core/pull/45805 +[#45807]: https://github.com/home-assistant/core/pull/45807 +[#45809]: https://github.com/home-assistant/core/pull/45809 +[#45810]: https://github.com/home-assistant/core/pull/45810 +[#45812]: https://github.com/home-assistant/core/pull/45812 +[#45813]: https://github.com/home-assistant/core/pull/45813 +[#45814]: https://github.com/home-assistant/core/pull/45814 +[#45821]: https://github.com/home-assistant/core/pull/45821 +[#45827]: https://github.com/home-assistant/core/pull/45827 +[#45834]: https://github.com/home-assistant/core/pull/45834 +[#45849]: https://github.com/home-assistant/core/pull/45849 +[#45853]: https://github.com/home-assistant/core/pull/45853 +[#45857]: https://github.com/home-assistant/core/pull/45857 +[#45861]: https://github.com/home-assistant/core/pull/45861 +[#45863]: https://github.com/home-assistant/core/pull/45863 +[#45864]: https://github.com/home-assistant/core/pull/45864 +[#45867]: https://github.com/home-assistant/core/pull/45867 +[#45872]: https://github.com/home-assistant/core/pull/45872 +[#45874]: https://github.com/home-assistant/core/pull/45874 +[#45878]: https://github.com/home-assistant/core/pull/45878 +[#45889]: https://github.com/home-assistant/core/pull/45889 +[#45895]: https://github.com/home-assistant/core/pull/45895 +[#45896]: https://github.com/home-assistant/core/pull/45896 [@Adminiuga]: https://github.com/Adminiuga [@Anonym-tsk]: https://github.com/Anonym-tsk [@BKPepe]: https://github.com/BKPepe @@ -1485,6 +1722,7 @@ The following integrations have been removed: [@blejdfist]: https://github.com/blejdfist [@bouwew]: https://github.com/bouwew [@bramkragten]: https://github.com/bramkragten +[@bsmappee]: https://github.com/bsmappee [@cdce8p]: https://github.com/cdce8p [@cgarwood]: https://github.com/cgarwood [@cgtobi]: https://github.com/cgtobi @@ -1548,6 +1786,7 @@ The following integrations have been removed: [@pavoni]: https://github.com/pavoni [@pawlizio]: https://github.com/pawlizio [@popboxgun]: https://github.com/popboxgun +[@postlund]: https://github.com/postlund [@pvizeli]: https://github.com/pvizeli [@radovanbauer]: https://github.com/radovanbauer [@raman325]: https://github.com/raman325 @@ -1562,11 +1801,13 @@ The following integrations have been removed: [@spacegaier]: https://github.com/spacegaier [@springstan]: https://github.com/springstan [@starkillerOG]: https://github.com/starkillerOG +[@tfriedel]: https://github.com/tfriedel [@thecode]: https://github.com/thecode [@thegnuu]: https://github.com/thegnuu [@thomasloven]: https://github.com/thomasloven [@unaiur]: https://github.com/unaiur [@vinnyfuria]: https://github.com/vinnyfuria +[@vzahradnik]: https://github.com/vzahradnik [@w1ll1am23]: https://github.com/w1ll1am23 [@yuvalabou]: https://github.com/yuvalabou [@zewelor]: https://github.com/zewelor @@ -1581,6 +1822,7 @@ The following integrations have been removed: [alarm_control_panel docs]: /integrations/alarm_control_panel/ [alexa docs]: /integrations/alexa/ [alpha_vantage docs]: /integrations/alpha_vantage/ +[apple_tv docs]: /integrations/apple_tv/ [august docs]: /integrations/august/ [automation docs]: /integrations/automation/ [aws docs]: /integrations/aws/ @@ -1624,6 +1866,7 @@ The following integrations have been removed: [harmony docs]: /integrations/harmony/ [hassio docs]: /integrations/hassio/ [hddtemp docs]: /integrations/hddtemp/ +[history docs]: /integrations/history/ [home_connect docs]: /integrations/home_connect/ [homeassistant docs]: /integrations/homeassistant/ [homekit docs]: /integrations/homekit/ @@ -1677,6 +1920,7 @@ The following integrations have been removed: [onkyo docs]: /integrations/onkyo/ [opentherm_gw docs]: /integrations/opentherm_gw/ [openweathermap docs]: /integrations/openweathermap/ +[osramlightify docs]: /integrations/osramlightify/ [ozw docs]: /integrations/ozw/ [panasonic_viera docs]: /integrations/panasonic_viera/ [persistent_notification docs]: /integrations/persistent_notification/ @@ -1705,7 +1949,9 @@ The following integrations have been removed: [shelly docs]: /integrations/shelly/ [shodan docs]: /integrations/shodan/ [shopping_list docs]: /integrations/shopping_list/ +[simplisafe docs]: /integrations/simplisafe/ [slack docs]: /integrations/slack/ +[smappee docs]: /integrations/smappee/ [snmp docs]: /integrations/snmp/ [soma docs]: /integrations/soma/ [somfy docs]: /integrations/somfy/ @@ -1714,6 +1960,7 @@ The following integrations have been removed: [sql docs]: /integrations/sql/ [squeezebox docs]: /integrations/squeezebox/ [srp_energy docs]: /integrations/srp_energy/ +[ssdp docs]: /integrations/ssdp/ [starline docs]: /integrations/starline/ [stream docs]: /integrations/stream/ [surepetcare docs]: /integrations/surepetcare/ @@ -1727,6 +1974,7 @@ The following integrations have been removed: [todoist docs]: /integrations/todoist/ [toon docs]: /integrations/toon/ [transmission docs]: /integrations/transmission/ +[tts docs]: /integrations/tts/ [tuya docs]: /integrations/tuya/ [twitter docs]: /integrations/twitter/ [unifi docs]: /integrations/unifi/ diff --git a/source/images/blog/2021-02/badges.png b/source/images/blog/2021-02/badges.png new file mode 100644 index 0000000000000000000000000000000000000000..c4cf38cef08210e7c2311ae15192dba2ad445bae GIT binary patch literal 103133 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 literal 0 HcmV?d00001 diff --git a/source/images/blog/2021-02/tts.png b/source/images/blog/2021-02/tts.png new file mode 100644 index 0000000000000000000000000000000000000000..bd89085f9c56e0b4456a6d28f19a511443359c20 GIT binary patch literal 30034 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 AWdHyG literal 0 HcmV?d00001 From 893b25ecd837efa0e24ceeec12cd9a869f87fd52 Mon Sep 17 00:00:00 2001 From: Charles Garwood Date: Wed, 3 Feb 2021 10:16:44 -0500 Subject: [PATCH 10/13] Remove stale node events line from Z-Wave JS current limitations (#16398) --- source/_integrations/zwave_js.markdown | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/source/_integrations/zwave_js.markdown b/source/_integrations/zwave_js.markdown index 3017aa98594..b2ff166ca5f 100644 --- a/source/_integrations/zwave_js.markdown +++ b/source/_integrations/zwave_js.markdown @@ -67,7 +67,6 @@ As this integration is still in the early stages there are some important limita - Configuration of Z-Wave nodes and/or configuration with the Home Assistant UI is currently not yet implemented. You will need to use another tool, such as [zwavejs2mqtt](https://github.com/zwave-js/zwavejs2mqtt), to manage device configuration. - Polling is currently not supported but may be added in a later release. - Support for setting configuration parameters through service calls is currently not supported but may be added in a later release. -- Support for Node/Scene events is currently not supported but may be added in a later release. - There currently is no migration path from any of the other Z-Wave implementations in Home Assistant. Your Z-Wave network is however stored on your stick so migrating will only require you to redo your device and entity naming. @@ -98,7 +97,7 @@ Valid code slots are between 1-254. ### Event `zwave_js_event` -This event is fired whenever a [notification](https://zwave-js.github.io/node-zwave-js/#/api/node?id=quotnotificationquot) or [value notification](https://zwave-js.github.io/node-zwave-js/#/api/node?id=quotvalue-notificationquot) event is received. +This event is fired whenever a [notification](https://zwave-js.github.io/node-zwave-js/#/api/node?id=quotnotificationquot) or [value notification](https://zwave-js.github.io/node-zwave-js/#/api/node?id=quotvalue-notificationquot) event is received. #### Notifications From 331c97bef9177d9b658f3e99cc18e4b3cd76c383 Mon Sep 17 00:00:00 2001 From: Franck Nijhof Date: Wed, 3 Feb 2021 17:10:08 +0100 Subject: [PATCH 11/13] Update changelog --- source/_posts/2021-02-03-release-20212.markdown | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/source/_posts/2021-02-03-release-20212.markdown b/source/_posts/2021-02-03-release-20212.markdown index ddc247f744e..bdb67a3ceec 100644 --- a/source/_posts/2021-02-03-release-20212.markdown +++ b/source/_posts/2021-02-03-release-20212.markdown @@ -1236,6 +1236,10 @@ The following integrations have been removed: - Update docker base image 2021.02.0 ([@pvizeli] - [#45889]) (beta fix) - Upgrade Z-Wave JS Python to 0.17.0 ([@balloob] - [#45895]) ([zwave_js docs]) (beta fix) - Mark Z-Wave as deprecated ([@balloob] - [#45896]) ([zwave docs]) (beta fix) +- Remove v4 multilevel transitional currentValue workaround in zwave_js ([@jcam] - [#45884]) ([zwave_js docs]) (beta fix) +- Add support for climate setpoint thermostats to zwave_js ([@cgtobi] - [#45890]) ([zwave_js docs]) (beta fix) +- Update discovery scheme for Meter CC in zwave_js integration ([@marcelveldt] - [#45897]) ([zwave_js docs]) (beta fix) +- Add integration name to the deprecation warnings ([@ludeeus] - [#45901]) (beta fix) @@ -1676,9 +1680,13 @@ The following integrations have been removed: [#45872]: https://github.com/home-assistant/core/pull/45872 [#45874]: https://github.com/home-assistant/core/pull/45874 [#45878]: https://github.com/home-assistant/core/pull/45878 +[#45884]: https://github.com/home-assistant/core/pull/45884 [#45889]: https://github.com/home-assistant/core/pull/45889 +[#45890]: https://github.com/home-assistant/core/pull/45890 [#45895]: https://github.com/home-assistant/core/pull/45895 [#45896]: https://github.com/home-assistant/core/pull/45896 +[#45897]: https://github.com/home-assistant/core/pull/45897 +[#45901]: https://github.com/home-assistant/core/pull/45901 [@Adminiuga]: https://github.com/Adminiuga [@Anonym-tsk]: https://github.com/Anonym-tsk [@BKPepe]: https://github.com/BKPepe @@ -1759,6 +1767,7 @@ The following integrations have been removed: [@insertjokehere]: https://github.com/insertjokehere [@itewk]: https://github.com/itewk [@jamincollins]: https://github.com/jamincollins +[@jcam]: https://github.com/jcam [@jcronq]: https://github.com/jcronq [@jesserockz]: https://github.com/jesserockz [@jjlawren]: https://github.com/jjlawren @@ -1999,4 +2008,4 @@ The following integrations have been removed: [zeroconf docs]: /integrations/zeroconf/ [zha docs]: /integrations/zha/ [zwave docs]: /integrations/zwave/ -[zwave_js docs]: /integrations/zwave_js/ +[zwave_js docs]: /integrations/zwave_js/ \ No newline at end of file From 9e512c36bed8ecb9d4d197bc6737403bf2bbfd69 Mon Sep 17 00:00:00 2001 From: Franck Nijhof Date: Wed, 3 Feb 2021 17:13:43 +0100 Subject: [PATCH 12/13] Sync codebase with docs for 2021.2 --- CODEOWNERS | 20 ++++++++++++------- source/_integrations/aws.markdown | 2 -- source/_integrations/axis.markdown | 1 + source/_integrations/blueprint.markdown | 2 +- source/_integrations/dhcp.markdown | 3 ++- source/_integrations/econet.markdown | 4 ++-- source/_integrations/flux_led.markdown | 2 +- source/_integrations/foscam.markdown | 1 + .../fritzbox_callmonitor.markdown | 1 + source/_integrations/harmony.markdown | 1 + source/_integrations/lutron_caseta.markdown | 1 + source/_integrations/nest.markdown | 2 +- source/_integrations/nexia.markdown | 1 - source/_integrations/radiotherm.markdown | 2 ++ source/_integrations/roomba.markdown | 2 +- source/_integrations/shelly.markdown | 2 +- source/_integrations/zwave.markdown | 2 +- 17 files changed, 30 insertions(+), 19 deletions(-) diff --git a/CODEOWNERS b/CODEOWNERS index 6ff2eb9edcc..07590e06753 100644 --- a/CODEOWNERS +++ b/CODEOWNERS @@ -15,6 +15,7 @@ source/_integrations/adguard.markdown @frenck source/_integrations/advantage_air.markdown @Bre77 source/_integrations/agent_dvr.markdown @ispysoftware source/_integrations/airly.markdown @bieniu +source/_integrations/airnow.markdown @asymworks source/_integrations/airvisual.markdown @bachya source/_integrations/alarmdecoder.markdown @ajschmidt8 source/_integrations/alexa.markdown @home-assistant/cloud @ochlocracy @@ -45,7 +46,6 @@ source/_integrations/auth.markdown @home-assistant/core source/_integrations/automation.markdown @home-assistant/core source/_integrations/avea.markdown @pattyland source/_integrations/awair.markdown @ahayworth @danielsjf -source/_integrations/aws.markdown @awarecan source/_integrations/axis.markdown @Kane610 source/_integrations/azure_devops.markdown @timmo001 source/_integrations/azure_event_hub.markdown @eavanvalkenburg @@ -97,6 +97,7 @@ source/_integrations/derivative.markdown @afaucogney source/_integrations/device_automation.markdown @home-assistant/core source/_integrations/devolo_home_control.markdown @2Fake @Shutgun source/_integrations/dexcom.markdown @gagebenne +source/_integrations/dhcp.markdown @bdraco source/_integrations/digital_ocean.markdown @fabaff source/_integrations/directv.markdown @ctalkington source/_integrations/discogs.markdown @thibmaek @@ -108,6 +109,7 @@ source/_integrations/dwd_weather_warnings.markdown @runningman84 @stephan192 @Hu source/_integrations/dweet.markdown @fabaff source/_integrations/dynalite.markdown @ziv1234 source/_integrations/ecobee.markdown @marthoc +source/_integrations/econet.markdown @vangorra @w1ll1am23 source/_integrations/ecovacs.markdown @OverloadUT source/_integrations/edl21.markdown @mtdcr source/_integrations/egardia.markdown @jeroenterheerdt @@ -168,7 +170,7 @@ source/_integrations/griddy.markdown @bdraco source/_integrations/group.markdown @home-assistant/core source/_integrations/growatt_server.markdown @indykoning source/_integrations/guardian.markdown @bachya -source/_integrations/harmony.markdown @ehendrix23 @bramkragten @bdraco +source/_integrations/harmony.markdown @ehendrix23 @bramkragten @bdraco @mkeesey source/_integrations/hdmi_cec.markdown @newAM source/_integrations/heatmiser.markdown @andylockran source/_integrations/heos.markdown @andrewsayre @@ -189,6 +191,7 @@ source/_integrations/http.markdown @home-assistant/core source/_integrations/huawei_lte.markdown @scop @fphammerle source/_integrations/huawei_router.markdown @abmantis source/_integrations/hue.markdown @balloob @frenck +source/_integrations/huisbaasje.markdown @denniss17 source/_integrations/humidifier.markdown @home-assistant/core @Shulyaka source/_integrations/hunterdouglas_powerview.markdown @bdraco source/_integrations/hvv_departures.markdown @vigonotion @@ -241,7 +244,7 @@ source/_integrations/luci.markdown @mzdrale source/_integrations/luftdaten.markdown @fabaff source/_integrations/lupusec.markdown @majuss source/_integrations/lutron.markdown @JonGilmore -source/_integrations/lutron_caseta.markdown @swails +source/_integrations/lutron_caseta.markdown @swails @bdraco source/_integrations/mastodon.markdown @fabaff source/_integrations/matrix.markdown @tinloaf source/_integrations/mcp23017.markdown @jardiamj @@ -274,10 +277,10 @@ source/_integrations/neato.markdown @dshokouhi @Santobert source/_integrations/nederlandse_spoorwegen.markdown @YarmoM source/_integrations/nello.markdown @pschmitt source/_integrations/ness_alarm.markdown @nickw444 -source/_integrations/nest.markdown @awarecan @allenporter +source/_integrations/nest.markdown @allenporter source/_integrations/netatmo.markdown @cgtobi source/_integrations/netdata.markdown @fabaff -source/_integrations/nexia.markdown @ryannazaretian @bdraco +source/_integrations/nexia.markdown @bdraco source/_integrations/nextbus.markdown @vividboarder source/_integrations/nextcloud.markdown @meichthys source/_integrations/nightscout.markdown @marciogranzotto @@ -303,6 +306,7 @@ source/_integrations/ohmconnect.markdown @robbiet480 source/_integrations/ombi.markdown @larssont source/_integrations/omnilogic.markdown @oliver84 @djtimca @gentoosu source/_integrations/onboarding.markdown @home-assistant/core +source/_integrations/ondilo_ico.markdown @JeromeHXP source/_integrations/onewire.markdown @garbled1 @epenet source/_integrations/onvif.markdown @hunterjm source/_integrations/openerz.markdown @misialq @@ -336,7 +340,6 @@ source/_integrations/progettihwsw.markdown @ardaseremet source/_integrations/prometheus.markdown @knyar source/_integrations/proxmoxve.markdown @k4ds3 @jhollowe source/_integrations/ps4.markdown @ktnrg45 -source/_integrations/ptvsd.markdown @swamp-ig source/_integrations/push.markdown @dgomes source/_integrations/pvoutput.markdown @fabaff source/_integrations/pvpc_hourly_pricing.markdown @azogue @@ -347,6 +350,7 @@ source/_integrations/quantum_gateway.markdown @cisasteelersfan source/_integrations/qvr_pro.markdown @oblogic7 source/_integrations/qwikswitch.markdown @kellerza source/_integrations/rachio.markdown @bdraco +source/_integrations/radiotherm.markdown @vinnyfuria source/_integrations/rainbird.markdown @konikvranik source/_integrations/raincloud.markdown @vanstinator source/_integrations/rainforest_eagle.markdown @gtdiehl @jcalbert @@ -381,7 +385,7 @@ source/_integrations/seven_segments.markdown @fabaff source/_integrations/seventeentrack.markdown @bachya source/_integrations/sharkiq.markdown @ajmarks source/_integrations/shell_command.markdown @home-assistant/core -source/_integrations/shelly.markdown @balloob @bieniu @thecode +source/_integrations/shelly.markdown @balloob @bieniu @thecode @chemelli74 source/_integrations/shiftr.markdown @fabaff source/_integrations/shodan.markdown @fabaff source/_integrations/sighthound.markdown @robmarkcole @@ -405,6 +409,7 @@ source/_integrations/solarlog.markdown @Ernst79 source/_integrations/solax.markdown @squishykid source/_integrations/soma.markdown @ratsept source/_integrations/somfy.markdown @tetienne +source/_integrations/somfy_mylink.markdown @bdraco source/_integrations/sonarr.markdown @ctalkington source/_integrations/songpal.markdown @rytilahti @shenxn source/_integrations/sonos.markdown @cgtobi @@ -519,3 +524,4 @@ source/_integrations/zodiac.markdown @JulienTant source/_integrations/zone.markdown @home-assistant/core source/_integrations/zoneminder.markdown @rohankapoorcom source/_integrations/zwave.markdown @home-assistant/z-wave +source/_integrations/zwave_js.markdown @home-assistant/z-wave diff --git a/source/_integrations/aws.markdown b/source/_integrations/aws.markdown index f640b0c9211..90008c4e915 100644 --- a/source/_integrations/aws.markdown +++ b/source/_integrations/aws.markdown @@ -5,8 +5,6 @@ ha_category: - Notifications ha_iot_class: Cloud Push ha_release: '0.91' -ha_codeowners: - - '@awarecan' ha_domain: aws --- diff --git a/source/_integrations/axis.markdown b/source/_integrations/axis.markdown index 3299a7d7ec6..7aab10383cc 100644 --- a/source/_integrations/axis.markdown +++ b/source/_integrations/axis.markdown @@ -13,6 +13,7 @@ ha_codeowners: - '@Kane610' ha_domain: axis ha_qa_scale: platinum +ha_quality_scale: platinum --- [Axis Communications](https://www.axis.com/) devices are surveillance cameras, speakers, access control and other security-related network connected hardware. Event API works with firmware 5.50 and newer. diff --git a/source/_integrations/blueprint.markdown b/source/_integrations/blueprint.markdown index a895a5d25b7..2f0dc00cce9 100644 --- a/source/_integrations/blueprint.markdown +++ b/source/_integrations/blueprint.markdown @@ -1,5 +1,5 @@ --- -title: Blueprints +title: Blueprint description: Instructions on how to use Automation Blueprints with Home Assistant. ha_category: - Automation diff --git a/source/_integrations/dhcp.markdown b/source/_integrations/dhcp.markdown index 87230d9e991..e3dd783a549 100644 --- a/source/_integrations/dhcp.markdown +++ b/source/_integrations/dhcp.markdown @@ -3,10 +3,11 @@ title: DHCP Discovery description: Discover integrations on the network using DHCP protocol. ha_category: - Network -ha_quality_scale: internal ha_iot_class: Local Push ha_release: 2021.2 ha_domain: dhcp +ha_codeowners: + - '@bdraco' --- The `dhcp` "DHCP Discovery" integration will watch the network for DHCP requests for supported devices and services. Discovered integrations will show up in the discovered section on the integrations page in the configuration panel. diff --git a/source/_integrations/econet.markdown b/source/_integrations/econet.markdown index 9e234436238..0748fad3942 100644 --- a/source/_integrations/econet.markdown +++ b/source/_integrations/econet.markdown @@ -1,5 +1,5 @@ --- -title: Rheem EcoNET Water Products +title: Rheem EcoNet Products description: Instructions on how to integrate Rheem EcoNet water heaters into Home Assistant. ha_category: - Water Heater @@ -7,8 +7,8 @@ ha_release: 0.61 ha_iot_class: Cloud Push ha_domain: econet ha_codeowners: - - '@w1ll1am23' - '@vangorra' + - '@w1ll1am23' ha_config_flow: true --- diff --git a/source/_integrations/flux_led.markdown b/source/_integrations/flux_led.markdown index d36690aab74..1d23964e219 100644 --- a/source/_integrations/flux_led.markdown +++ b/source/_integrations/flux_led.markdown @@ -1,5 +1,5 @@ --- -title: Flux LED/MagicHome/MagicLight +title: Flux LED/MagicLight description: Instructions on how to setup Flux led/MagicHome/MagicLight within Home Assistant. ha_category: - Light diff --git a/source/_integrations/foscam.markdown b/source/_integrations/foscam.markdown index 08e200b0879..465b1d339d5 100644 --- a/source/_integrations/foscam.markdown +++ b/source/_integrations/foscam.markdown @@ -8,6 +8,7 @@ ha_release: 0.7.3 ha_codeowners: - '@skgsergio' ha_domain: foscam +ha_config_flow: true --- The `foscam` platform allows you to watch the live stream of your [Foscam](https://www.foscam.com) IP camera in Home Assistant. diff --git a/source/_integrations/fritzbox_callmonitor.markdown b/source/_integrations/fritzbox_callmonitor.markdown index a4303d50556..2df19c1dcad 100644 --- a/source/_integrations/fritzbox_callmonitor.markdown +++ b/source/_integrations/fritzbox_callmonitor.markdown @@ -6,6 +6,7 @@ ha_category: ha_release: 0.27 ha_iot_class: Local Polling ha_domain: fritzbox_callmonitor +ha_config_flow: true --- The `fritzbox_callmonitor` sensor monitors the call monitor exposed by [AVM FRITZ!Box](https://avm.de/produkte/fritzbox/) routers on TCP port 1012. It will assume the values `idle`, `ringing`, `dialing` or `talking` with the phone numbers involved contained in the state attributes. diff --git a/source/_integrations/harmony.markdown b/source/_integrations/harmony.markdown index df5c4a2ea45..4447a492cad 100644 --- a/source/_integrations/harmony.markdown +++ b/source/_integrations/harmony.markdown @@ -10,6 +10,7 @@ ha_codeowners: - '@ehendrix23' - '@bramkragten' - '@bdraco' + - '@mkeesey' ha_domain: harmony --- diff --git a/source/_integrations/lutron_caseta.markdown b/source/_integrations/lutron_caseta.markdown index ac6a4f24284..3b5e058c46f 100644 --- a/source/_integrations/lutron_caseta.markdown +++ b/source/_integrations/lutron_caseta.markdown @@ -16,6 +16,7 @@ ha_domain: lutron_caseta ha_config_flow: true ha_codeowners: - '@swails' + - '@bdraco' --- [Lutron](http://www.lutron.com/) is an American lighting control company. They have several lines of home automation devices that manage light switches, dimmers, occupancy sensors, HVAC controls, etc. The `lutron_caseta` integration in Home Assistant is responsible for communicating with the Lutron Caseta Smart Bridge for the [Caseta](https://www.casetawireless.com/) product line of dimmers, switches, shades, and sensors. It will also communicate with the Lutron Radio RA2 Main Repeater for the [RA2 Select](http://www.lutron.com/en-US/Products/Pages/WholeHomeSystems/RA2Select/Overview.aspx) product line of dimmers, switches, shades, and sensors. diff --git a/source/_integrations/nest.markdown b/source/_integrations/nest.markdown index 3857525a5c1..232a222804b 100644 --- a/source/_integrations/nest.markdown +++ b/source/_integrations/nest.markdown @@ -12,9 +12,9 @@ ha_iot_class: Cloud Push ha_release: 0.7 ha_config_flow: true ha_codeowners: - - '@awarecan' - '@allenporter' ha_domain: nest +ha_quality_scale: platinum --- The `nest` integration allows you to integrate your [Google Nest](https://store.google.com/us/category/connected_home?) devices in Home Assistant. This integration uses the [Smart Device Management](https://developers.google.com/nest/device-access/api) API and Google's Cloud Pubsub to efficiently listen for changes in device state or other events. diff --git a/source/_integrations/nexia.markdown b/source/_integrations/nexia.markdown index d13024b510f..a3de24aa1c3 100644 --- a/source/_integrations/nexia.markdown +++ b/source/_integrations/nexia.markdown @@ -10,7 +10,6 @@ ha_release: 0.108 ha_iot_class: Cloud Polling ha_config_flow: true ha_codeowners: - - '@ryannazaretian' - '@bdraco' ha_domain: nexia --- diff --git a/source/_integrations/radiotherm.markdown b/source/_integrations/radiotherm.markdown index c1421d5fb02..b8493c24ed5 100644 --- a/source/_integrations/radiotherm.markdown +++ b/source/_integrations/radiotherm.markdown @@ -6,6 +6,8 @@ ha_category: ha_iot_class: Local Polling ha_release: 0.7.6 ha_domain: radiotherm +ha_codeowners: + - '@vinnyfuria' --- The `radiotherm` climate platform let you control a thermostat from [Radio Thermostat](https://www.radiothermostat.com/) or [3M Filtrete](https://www.filtrete.com/). Your thermostat must have the Wi-Fi module installed and connected to your network. diff --git a/source/_integrations/roomba.markdown b/source/_integrations/roomba.markdown index 64d2f2d84c4..f2565e15d92 100644 --- a/source/_integrations/roomba.markdown +++ b/source/_integrations/roomba.markdown @@ -1,5 +1,5 @@ --- -title: iRobot Roomba +title: iRobot Roomba and Braava description: Instructions on how to integrate your Wi-Fi enabled Roomba and Braava within Home Assistant. ha_category: - Vacuum diff --git a/source/_integrations/shelly.markdown b/source/_integrations/shelly.markdown index 5ef0dfd1897..dcee914fc95 100644 --- a/source/_integrations/shelly.markdown +++ b/source/_integrations/shelly.markdown @@ -12,6 +12,7 @@ ha_codeowners: - '@balloob' - '@bieniu' - '@thecode' + - '@chemelli74' ha_iot_class: Local Push ha_domain: shelly featured: true @@ -109,4 +110,3 @@ Not all devices support all input events. You can check on [Shelly API Reference - Only supports firmware 1.8 and later - Support for battery-powered devices is limited (also applies to USB powered Shelly H&T) - diff --git a/source/_integrations/zwave.markdown b/source/_integrations/zwave.markdown index ab7e07ed8d1..9129079c2f3 100644 --- a/source/_integrations/zwave.markdown +++ b/source/_integrations/zwave.markdown @@ -1,5 +1,5 @@ --- -title: Z-Wave +title: Z-Wave (deprecated) description: Instructions on how to integrate your existing Z-Wave within Home Assistant. ha_category: - Hub From 6a86143166154bae7859add6a6e7de472301abf6 Mon Sep 17 00:00:00 2001 From: Raman Gupta <7243222+raman325@users.noreply.github.com> Date: Wed, 3 Feb 2021 10:34:47 -0600 Subject: [PATCH 13/13] Add docs on troubleshooting zwave_js issues (#16401) --- source/_integrations/zwave_js.markdown | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/source/_integrations/zwave_js.markdown b/source/_integrations/zwave_js.markdown index b2ff166ca5f..04c2ece8960 100644 --- a/source/_integrations/zwave_js.markdown +++ b/source/_integrations/zwave_js.markdown @@ -137,3 +137,15 @@ Value Notification example: "value": 255, } ``` + +## Troubleshooting Issues + +### Get a dump of the current network state + +When trying to determine why something isn't working as you expect, or when reporting an issue with the integration, it is helpful to know what Z-Wave JS sees as the current state of your Z-Wave network. To get a dump of your current network state, follow the menu: + +**Configuration** -> **Integrations** -> **Z-Wave JS** -> **Configure** -> **Download a dump of your network to help diagnose issues** + +### Watch traffic between the server and the integration (Advanced Users) + +Z-Wave JS Server comes with a client that can be used to see the messages that the server is sending and to check the state of a node/all nodes as well. Visit the [`zwave-js-server` repository](https://github.com/zwave-js/zwave-js-server/) and follow the instructions in the README.

M{|~CGc&8eKrZs{=fTx7ODl#DzHEgM~+q;sr1Q2dKkN~KoG)F zt_b0fA2O8_LS97G%KH#fA*xoOV=ic+F9o0zpgHu{b6s?aj%*MhHB6TrwBh0%oNK4@nbl>F&Dqs! zc0P|sXBRv=ry%r~bDp#&ARq`KPNtc#ri2jM0`}&B=VY{vLa3E$Dw@f7Qm!GmfbTeA zbP00sI3{I)y`7^3lBLD_uaIU2ft)B0PV4Z)H$ML zZYX|VA8BH(h*9)t;Fv>@cJgVQmT#waBL8P|OAP8uA6wC43?Z!f!xi-iwsa{ZMrJq? z!jBGB^CI(jv^ zGTG4ad`ETLDtinufc5bO=$mrMgvg0!7G z%JOTt1D8Fv~cF~;MSO}yxGRYN~l73yK< zEibhrTKinlJk+@7DI;lg?u_CD*A1|*HT$dGk6c2^P>P=fP35n?u((<2FPoDkerWJ(dxq85eZk^83ig&@V!M^8U)V0R@Qoi8$z=pI2)9&0D%$pZ$2H%CtNl8 zgUxuBMr4>1&r^d`lf&^d4nszT51tUB4-4E2BV1Khg`7GL<^J)1-M47zlfdvC-klQg zCb83W#zg_O<&w#eVk4K_Ha57lIVWcu9hzSxMOWhK1kLULvv(HmO=R!e|0{k_*k#>a zSc5iA>h3@#Y3eROaTeEw#ogVh8&#w&P{CQ2UDjFLp)IT5_q}IMayU$+NoK+}Ww`Du zSDMV6Ip@qI%qP!to*PS2Jvp~PL0wSuXk>376e@JV-mn>KL#M4K3Y)$rV*2Wc>MK!= z?HCBYop9aeaWhGV3BgR_X8OX-X;2^i^8N-sB9S%pNOJ60jujgiZ23+ECfPz zT!QcRlR-;MBPK76&KeP!IU*`+Bov)9deD^RLCeZH#HzlBK3jFwq24BT3|v(kF=csF z_9%5yDr2yLgT}{XjTkg#ng99*kJ3w)!W-GF`mSf;&jITW;&eo3kBUi77qlFmnKyXi z!hn@Eo<+Zsd9Yk?kPn-?EjnWurZ+wzft_B|fsGn5IcQ0VN8!(=qi0wAR@dQFvhv<} z*78Zi`3;-5GjiCMnuKI_Trp|ckz;0sEH3uSzkosgmq1vsR1bu%ko#s8fDkYCFdB5; zd9|0Kyw^ZJ63C+<6)~T1QkJ-EzAUlNge+OIWFS=W&g1k>R7{W%x1?@Qbdh&E@$yb# zZZ~bKxkvKHkW4k0iyLq^Pgv#$p>eFrgUub7GlNv$VI&5gaaTtzDCUsWgG|^B6dHfD z6G5}Z-~EYYd;dI+ZwM!vniJHSWVbwZ=O4p99J(e<7NtdHEHo8lhX9zWp;o zAwDLCs2V^NpIk%&y?6*zJ$7m!@|=mOb`Kzo88HcTq0z?a#6R~a_zAb;_(sCF6T*fF zDdT$^14N2AVxFn>mlLvwku9l!LmvBX3W9IS>idI6PN$v|5Z9~3WWPP%ni&GBR>mfR z6SUZv719B?o{v_?k;@!0Du-ThXoU`keYwicGtOhK_rlfb-GDZ}ek`Xa^nVSVPiw$sE zLuYT&aNw$i=&U|EI}l#Sq$Q_?&sgJDal^2Y!0pF@j@X6@yF^T1Wy$sFv*&yihL)IY zYFv07kFm*Vu)lY!xc=Wo2pCADNA zBzH(ydBs|C+aR`pBpQUCSaH$dgN$>!O%>aK`@>^i^a9je_oJo0f+fHI%|aSoRX7V7q{hO7NLO=x z+;0QR?YgWeL$&+Y$NV;$Zv3NXE>=l_c zN>zCaS;TbI*d6#WXw(eCV`MWkK*(LCWmlpn&gZa=G%l2oh=3&s?sW--bQcysm|hWS zaa?smGF;bj3e5j^5U{!)C>R&dO|l`?2#!k+jqM{xPBkA%LyBxv-lSMW>I_?E{|U)Z zi%_TEmR9u5d{NMduQns(N}Dx5!{|onoUKNNzl{e%c6)6cfYAKWq2Og@n#2^7Lu03l z1Pq6c!=P}<$v|k2@Zi7=7kj&uPza==HuQa5OI-Hekp4?vmMmE^5V~@1gzdvc|AbHS zErDlGDr;1CGo&TqO?_T{{rP!hbt{ z`OD4poB)K_!l6Gt_*c+9(3+sKC_w8LllpkU;yN)9VC>fpArxY5;-26BHfA-^A%JZp z!CFGObZF=9bv;ce&5GcO`KFSZAA&!zWiZ{6o@lzH);b_$jXJnwW5mR~_Y)#AF1&>W zx2Ph63rS3=6}lrLMee#wv>Sy7-MAvgqOC#Aao`^$$D3q?BE0W+fN-EN3~1<9+^vBy zZz7>DvL$&!fRIHyJQA@$NOyrEvl$?yVu29wO(cR@(%fW2R0-9G;H4#?T|=XY%Y77XE5g;TZvk(Y_=I_C_?3@cG&FG*s zNohX$7tpc{gp%v^l*5Pt8c7y))>%z_H0g}P(V+c*rj#X1214nwMsY(aMUarGpJ{)Q zm;lPD%6d*$*0RRlCFK|$nXB1h5ugkS@9 z7vylVeH(X@aZzW=gkm%HMbyub87&0IbVP|Ac2JjH*CM=C8U?<4ofso`{6Hy=} zmo9k5I1ui;g?DWRLWJGWPqkqLFCiI`BCMB-9QRdB#!!$LrHDb3ms*%I3UMrirgBCP z`Enk}GiuZ{tXRW~hFOb99}QkqXy(HU3RNek(*#QrOd|jjojw$+`_!q~h}vo6;{|+6 zPUYayvs6`gO#N&cJ#0KVBV=E+%nw-`la_;)(Pwfv(v*N0)!8H6i!U0*C!d{XVrie5 z!9rN0IC#>cA>-%9WDbvwPe9Mf>sSEkUU>tpi3h^qrKKD~3proQ4J0vzo3WHk4H*|Z zS7;kd2!t;BRR%(d@5J(NI4O#F8sx+RAxReP<5r<4zWpQ$^VSGtdu!O;wc?&j*nRRrni;2BM;D* zMWsO4B`{DX#O=QLTX|#*PCoq@#UZ5=?g&`Wxc!&E5H~|wBXT1V`Sf7R%vey369yGH zp=`%a-+7Ftz+*Gc>fSof1m8OT`F}IX>lO>BS@7H6f;i{?tAA5J67T&+V4E#$gQ|~~ zoOguX@^K)#AM>yL(%*PjlDHNE<~9VijFqAVw;+DinaUfT;}I5=c!kzG5xH)V+7Bij z)%($Ro7IDOBvun6M3-U`gqjh6MdmgDm=Yi>N`S(t=y5+jzu6AjEM)=WOvT`i0#R9S&Sx8IzSq*n?pew9Pec z=36>^<~ppR7R!Y!EQrb-hfxR`2Tl2}sx#Gi z$lUFO0I||9GJAB`jCKB-n-Ti+sJ_dMuIjeu-tU8!SK^=ukQ&UGHfUj?(W_$6#6>tT zHlyK69tB7GZaqeOqC`2Lt;YtB{R-y@WQe1Xx5NM;Ui9AkJ*W>O5<~?fM@>i794|gz z>QQ;!XZxwJ>8nA8WDz5ah2hgyVjBr11L5llhkCgbky4_JkSw~FXTqX)hBiNeS~4yL zxB9R6<&%{<^X}? zagT}eA&C@zgVtUEQ_pZ%24Q1US*W^A;c4QI73Fy6fhxn zj~YI~+z&>(&Z$$gg6Hq?+KT#GXZ0=T&7)v;4e8{-3Kws?kR9^W%Xi_pl zW^Y0%P86ZRHpW}7x)Zv%h-R)*FvH?TOuJyl5Mhe}JwBE!szni3m`oT>ud3=UDzZlA zO~MnrA_fTY3eFKv#gEaTHX#Y6L@{r;Tm>h^d-u2Mv~0ol2<=LkI4T37qV!H*k1CQc zDp)-T^+tHmz09@j&XcHWliAYCr5I>R)!Vt`gGr~YZAZE9{wwPJy`2kzxMW;?Jgb~{ zNNGLFHC1}2H+sl+SW)uc$YWL~>&6{nhFtPS`Vkp6WIcr`qhLbL2bosU6nTdV08rRH zNT^$gm4-gsRR0693wEuMEqA>l{0}K7AmTBf0YX5Oo2_$#@C%E4U!HnM3BT~7FsBo^ zDCiOpOHd@{w~qhqzxL0bU;mzT+R||?`R-3Pee~+X|ACoJt!*3B*opd_WV3FUx>Ltp zT4F+5UHVvxVI;Qwn8Tg;AapYzr4t~}gh+`* z<1CD6vhsknCVd@BFPm?fzJ*L$ig`4widv}xfb?H?h#(xx+adG!n0F~8Peeut5opzr z>N`vtFjg~~GWo!a0aF31>c`K;ph-&z=*mDS{x`4><#rnlkhL7fwQ!E5nNPogvB zcc1Yr!(v4oln6NILSZ~kD75Nw{19gJ1_oxfmP-=4`=cii=hux8D%+r}%$VD;cX#vXCUf%)yNI@1|E?k~8r?%|^;(wp#nr}qTyz5w5i=SzBi4@H zsGJOsYFHKp3#3 z1WB;$W{A_S#O~kt_3`Y*1sO+kaYv|1NB=|}9f^P?^8HukrDgz-dNMuwJ zAn7dtLS866`q`o%$ud0q3GIJ8`&&fVbX-JmlypE*I$-^8R(0TumB0MoKt$UL&kmZ{hw$Yt`7h?91&${47X?3F?ulJK}Qiq4tAL+#@-Di zEL}sKOH@!dm|<$~j>OKaHt~gIAUaY~HAl=ar3XR?Wj_Lzmf_C63oR}lG+_a5rX36j zzuv(PnG|RN0N5P}sjBZr4;?Rvp=lEmeYTyD;P=G*@7ZivB1G-Pe_6quA7x9`nn#xk zfDkM3@KzTP-r;e%mwKB`Bl0R7_+lpjco)D>BwpTc_d6&@J?>CRZR`pav2dq%Cr#1 z^4{2!_5ebN38)f2EPQw5F>8U4YeWV@SuzmfHV#!cB?%IOEuR1oqQD>yY6B34HFVH5 zNaB}EQCol8<|>=9k_WtDDWG|acJSD=vwyf7yv2gq((nHSZNhd!KxlA@m~g6#jv+x5 znWA7hYE;PPm(n_)UH$`!PCEV2;b>5>OqAp#cQ+s;v1Oz^BWR{C6x>}V4P8Q+R@O66 z}Ay8$sFndr;x5rt4H}&7)}VXVFMQx z%0MVyAAkLQuYpCRc#KfaP{CU{txsZxs~`0Bs^9~aOw3K!je_Sx>#bcw_^Rd*ND})J z^--0%?7D7GAY?ro^ZR;KD0W{{*2+LAO9nzK<<7^H#NWfgz9O>G?rwx2Ivm9+djMLa zA7*6~2*r0JqJdUAwK@PY<~TQ34;jcxZhmO;%bGEBUvU0U!CPGt8fb9hDJy!28l+!+ z^XK@J!pbpd$C6{A#-@t#Np~z!`){N^b`KyF+Oj7c;VP_jpJY+mlc0k%JSf)Jlzw0t z6U&Zn1%$XEwp4r_6cUv zYtMI>F7ZGp_yD41&%&QI8AH)e^ASQn8gOG$H&J5Lv+Oe7wG$Acd#Dad7@Lk7`JyO? zW66OchmNCHCOO2QDa&La6#wP-g70uU0U>Z2{iNcV5D;5~KFB~Q zO9n!#zm=k!XpWqyd$_db&L^;j5bO8GSPq2L7^C$e&{rzcHYIO;VMEsFNPU0QO`XSY zKPmx=oJ>d6kh9=7D*h3=o2ju(a>7FdBAD&2p=`Zv_h0+;=a#0%r)nO-DoK z?;bpUE~=GcnIBpc1B4`pnQ!?5vRGl0IAqcy6arNzB$E!C0YV5XA*0iC+36*FMdpr0 z1se1j?Mn-Uc#bUGAtR=+6pGp~aM7^vKv9zy34jnrlrj*CRZV+8-wLd?Bhf9xNEg=c zDe`aH`{yua^@A6JEBVqdyw`r%&Ymsi?mDdvvimg~tXD=Wm)5VGuqLolokH5IT38TlrOb>g@r9r12rS|man%z8gqT>=yn&g%I(vjREep%=h<6138)7PJH#PlXA72eMyKVV8jTEu zHVdqRxLI!n;VuCXl7g89FNBg4WN-Vyn@*}qU3d^csHhmQ>CzjiN0?G8`OkRQxR&1& z*BN_82zC7|X7gR0Tr03dQ&}qmp)45)t+}5=R0nqLBSZ%YN3ia5_5{Mw)&pT;GZ%1> zup5XY!7O{Etw5+f(&1a*e)G>q@jaC5ob}D0hyr1N2}e5-GraTHBfvXz_g}AiW4B!O z9avr{puwNp|6TUopY}%@VL?b5yn-BY^&qKX3mTz=`p*M{L@>DbJHS}6cc)47;+;9A zO%@H+{j$&jbweOTFehTdg7ES4%qZf^`A}reSnT3hKnNjJrB2ob30bLmkbrG{*zAoc zD}p3aI{_gSIdK7TZ>PP*noO^4C(W#RgHyck=9a-zSEv(H0b``YEUKw_*#Lwa7e+-55}LyX7>IL|77lWy$2Q&E=9PqpLe;c@?QT1Kj`=hr0Rms6c60^ zyOk}ovT#e|S=q|!cBR<}AwaILs~vdM7*?bU}a!C50T6 z23gyQsHV;l;*Ar;OsPR^5Wfxpx)|8*PDNR{8KaA7#ikh0Ulznw1Gc~I#D)e7Tkv01 z>u|OcM8V6;wOo)8q9nkC3N@Pe_;?tv!?3|l5yGIacNhX8DqfnpFc8Rsfnglzg%ThY z+JQI-!av$(*FZ>KL}AkCVdJqQ!;=hQB8;h4W3J*Tm~{n&z%c*KE!e^6^pc~XHJHNt zZE7an5V?lXqx=dgpyF`ss6*!M3|w7@A1`8ZM&S}lNJzjzF%TM$70x6P0m76_iGUFQ zliqi)d+-#djJ`MOI7(ttKYA*%a_|2J77Sc>5u4dPUo@-{D)&t0&EodH;}NZ zH}``I-biY+d>Nthu4|udy!1IQJb_H@>%9B=XPYkTw%l;Zx$w6B`-&^U`oY9AuSOr} z>r?(hNVN-VFepqJ-HV>Pl-%hTR0pUdC3$*5F2x^B{RW=}I{~4h@D@BaJ{WWIb!`KB z*w?4xS-*GBN9aj6GQ+Z zMnPt2&bdGTHCwLb^xc004_Xa2_OFvk(d7^NLx5w_Aai?NPg5VE|2Rz)9RSrwa;rwW zC28~h@#Sh1>%)U5L|kn8Ulu^)xZ3q2ZSS5y7_xT1B^iBSFvl~dr%8rYx5F0h(Ilr~ zGdA}1Sf~x~kdPEMXA5eRU>9kDFvI`|K|UcHjF20mTZ5)7$5<$^(byn~ZXq0pf;6FX zw)n3-5U}Zpg;hrJ3Z^k^?lyH&Dn?3!fdq;13Oa-w+Q_l9LuPLZSX~#e{*YPQ388{k z*Qw(Y(1+gCoj8z<$0HdOB!FHuMBmbf7NHo4fH0u` zdgh^H$p=q+*4=yBfbf-sMh1-C5xIr6QzgXlk1UsaV`*3ex?#NFNr zv<4}Pgno=H5b`YNT5xl~%3qL$OE^|nan!TiZQp%qfe_trt-SwEcC(X9X|I9Bq?1m( z|2~?6c)&)VD_)JRciDa2=)gHg>!MrF_+X;Sb;EZldwEDh7k78Xx1BIuWEYq6XWT2@ zs?4oA##=8(HPIQyjxP;9Z1NDYWFRE`0KYHxX4K|;*`dcCl4yqgY$t{^+5&{xZ4W*9 zdMDDsLwl+|x6lULiNQ=o)-fmlxc#SbC_HriAMgFP5I)+ceX}>ZU~T~htY4gi=8MK3 z)loF`UvVH2Vs5y)LJlGPOEM?BRcuhlLcG-kTT4dd43Jc6l6c&`BZL4#OD4);fso=Z z%CSTzXBwgcLxvbo0t%M6k^DwG17Yy`gMy=gMF)R5j{+MRAPI0`jUTdh5mZ!F-DPbj zEU7YzKQUurQ&#|f3;{`-nt=<$Z(W01^<7ivf&!sgQ^X61J;uf-km+UDH`0ONF(z*U zrdK2o0^Qlo1R@7wPO%p4kQZYU617RGap~DHY1vUj$AwK^8nUd^XH$#FPbj|GQVyN@ z`BcKcKL-DEA^7;o5kn6A@^k@VOatK=!<12wOdt0uMagY@f9HQN;WW^N){p5ISfi}G zPyVkNu;wBm9P|)`1F!i{7GAKh*|(D#IG7~E!B`Z9Zsqrk1L4SH*Z@O@{?EDSgOP3g z%pAg@@d|fzGA%AepDp~s3=m=zuKC<&1Zkq!k&K9VA-)t*tE_q;2@sMY^q+CAk4Gh; zW!;Xtm?U{5e-afssY>1%-b#Bes4DcTdVeq44mVLn%EDX1jhWB;dt*=Z)-9F97%?p+ zpDkuNS=d`;{!J%E5p5safAHl=^2wDY1EINc8kwyR#oP_k3^({OC~D{}o%BG6yX28J z8Poe8XqT!c2U$9W8M7G(iMKe7fuLT3r>2GNI{woXi`&wkoB?nyUHuSL83?IR<0N2NMRe|1pb_ORVJs^yK795@X(NQNLo`eo_21HpS!GX9#MBjn zNdgs;5WA~sN25@dT=HH>ij0?{K<3#4Do;BQv!tjLialv1;POw zne_E2SMIZK9T&IS_7@}S5!%x6j7!nGd2JNi6lHh&dQ>qPtp%?qSsGk=E0F_2>P-*M zF$IM0aCx&Fb3#C)H`5Nkp48BbIwDfgG7E%c#h}}s8z|M|vh7MAw^A&IB)jvm*5c0= z{)m|r354js8(25D6%$4Krte`9mV+Y67LOc7ll~L&z8$Y<8x^H@3?q#gloJ3C+mK2^ zE~QvmYO1TQHSI5i)p3U=qb3DlQx2Q?dO^l4@@7fZBFsr2*AivHO=S-tA{hvA7VRN& zAMaAbB|wg1?(J+4?q$&e?4+G*bW5J>(OU$g@~r76Ww5A5?h~byqGN;~h8?qhy7WEw zBXn8^+2x!f9E##7w0qL)xGwYxD)y*jXVt+(&FB%4qo9ic+F3#lB$GLe^PTVTr>ik_ z>TZ*!>zKf5Li|+Vw z1!<@1uJ5L11l%;q=|*E&U`5|eM+FCUGXaFEva4OrUiep=j24x_tkP|~Q2Yk@oM@k= z)3j`#9j9o|1#&kAgnsJ|u^Zz#Dy)Eygt5Wo^uP@bf|ltnZpMHxboy!wzlD5ueG@)q zxjH=;qZUqYEEk6jT(Qsap#H{yFnszdK@Z)rhLCz)P#}y?Cz=LAyyej9=U)XNG;pOS6jAs> z&^`cz{f>@%p@Ew&kvJX%C~{I1yX?G%*XahY#2)CS5A;EOl*Nhye6e)hxKSW9y5n18 zPv8*5dXd{wSwxP=3(SLT%wh-FICjhj@SdsYl}?Gwf1`#fnBR zU_&4@Gp^Uun-OGVBY`Nl^L*HWw}-WSH21p?=6&D)t8d@TIEp|kAW%nxdMpIFx$YBw ztW?zxp7E>zKvMIJH#3?|9UVyNq$(prCc=)-1=O0pLqM$c0HJFL7uzf92D~WC;bk`< zB+~ufKSI>KosJN&jL?m7{FAnyJ?3A^%RXRWKgdBQpORs(ja1YKKtzk zgfs#22t)Yxff=}!z>!>`Kca)uAT+qK6Jr@E`uev`Be<$Oov1SuaF7ccQz(ME=Zv}X zRujV{oiPBpdpG-KK?Xv>a1a*rDEbxQEH)@dfpBo%WM$PI99I$`9FjNb5fJKA8NGI$ zW7{7*ZVuUomCvSTC51+tfDj6WGX$oH86b@E1DBN04WtD^(gM1T=^Z?25gjk>A#Ywk z3Ri*+K#1q6@@r~?Dx=}E*1MHoQ&rvs?UR=ANO{}dDr{T$fJecOGyZtQ^M5V`EjqG; zZqT!V5V59by(>wm$5>IBqBpe%?A?dAhqjWcHpJ!P#lZ&z#OS={HzX)>yflD>5KG>l zd=_s>354TLq7Ps;x)hKG*1%dX1XUrY^sO&Xznj3z!u%kXXQ-L;#r0yq#D*U9MkX0QUgb;+7j@3fgv0cUYfi!F7 z{18*bhx~m%WRJ6{Lsl#!%wuOsDjkO&5+O#!o@hr?J171p24X3xm(4RncDD!u^Z0lm zto#vC$C-lN1rm7J$?Tp}O1g)2t!eCxoe(=?L)(beL^r#ZkdbHt2rb!NQS-ph7!VGc zFyH9*07A6^5V{xsY-&OjfRNHl8e>4H+;>YM*sJD2gfSrW-Se%r)1s`n9zJOaz=N$c z!}TFO$GzktyQPW;LbU-9D$A~Rafs@>ky#_vLaT#JyiUjNUi51$Sr^CjVer`5=390% z286!r4hg0!3UJQgC~z0fd#Z}-3e)F8WdaDTnp@I-$eb+{x#{rH2k&ji*$ya71EF9u zoHBLp=on2b3xpxl*WfLpC;#CpJih4uX&n$kh!7GWG~7~U3v14dmEThsyW9DA z*0)%li1u~TgV}Q-HK;O*#YfmnQPW{$-^YOvq~x~qD&1_rhTjQ0F$HFdKA!uXun_|w zd_Cic(Gd;UeWRD6j7*naMV~DB(dfo}pW8p0beb?B85efJdP0}N+k&yYKlLm~Tff;} zl+RI?+%YoV>IcsUR1jdM(?z=RMoOd6KDcbZig)SaM&zRo*m{|?EX%QFXCNeM$GzzY z(Lgwwub6_*17Ro0`-yK!EWon?2q74z;qKq&`%bbKIuLk}^L4Nh2v0nWJwiFkjyLXp z2e=qcp431{Co`L~ns7)I6r4?1P2@?(HVFSBf{o>Hh)6@jc;QLzF%En1n+s41h9!d< zJ3|{fd=7BM73c-2?A~-ue>oyn6H)*n#NjdW)iDpNvdw=EgzabipEe*g6Cni5yqa~? ze)sN#7H|}%YD>w0O~2!|O|a#g*)2djef$bYQ;ft#34yRbfYA975E6QMKDcIJ{>?6i zZ;&#o+J1%hUs3(wwS*?%5L(rfbgB6t%L?i91lXcugiIOS#ywyc|wJ+ zr5$;PEQ6jO*KqQb3gnooS-*UN^OBo#wTuC_0Bb8J=DisxX4Zoe<&N_k_ zAlsu3>WdMzn3f(wL^2TCI|PaA2>~?94vA z#H>$eB?yPawsc)66|!P}XfOn*Mu5;xQ$$(@`XT^@S@N}k(j+oSaQ$_^>Dv$k&wnpAJ)(~PZ zl()emO!n-@WQ~Ah$A9&qD>4Rzi=Ud5QFlEM_8w@&b^?U(TILbgT01Tvd^4qyvvJqw zi@p$6!(Li+v(HxiOjphETv7b~_>*{Ds+3Uzgp`DNIxQZs@lw}gHvmGHwZGAhVRu#e z-Di9dQe#>MkHt3$I!}PGm+6#IG^NPD*~g`rtrOEnS?*GN+k7XHLF&BavXinD?UQae zp;nN0mC|4(;Y)*2+K1MsDSSDy-f;Qohttm?-bkA2>sIz*N+Utd-Vj26+pY@w>{@XT zYd&@3;)u8KqnYQs{IJWC*AUWc2!Sv7u!*`k#*T!$KqGbn9ui1Ftj{VWqq%&z`$q*% z%43ivN2Ed=1D<>2&^8b$gqvv(```VOSwhHnG#$G%KuE)bWEmup<9(cHuq(N_a}+(5 zqNfEPAAddVD;}3CBjH*g2bn`MV<27{9uzxi1fdV}Gav)u$jJgARCiY(gd*l_2BM%f zmf6CWmx~8N%v<>6Wu!r-qD-9M#=~ZS5JyQ&Oe9rjL;|7L*5l-LW*e>7PP%%^?m!3y zZ)##M29iD+HDMm=rrH36gt5^dChV!zret{S`A!DH|4PsK?E@jOKuEdBu0V)0jtZiE zJoXXHBe|d-P5H*?mEeY~QNKziRk8rJa9pb%U}Ncl(3wM*eqLp;%g0+50UcWFQ2^rM1voJyCbY;ri8j_PCFCAyq*1$Flye9o^&Fp|YF?W12eofD)C} z@en|o(*C!<1V{!qbd0hO5F#s>PK$%mAQT3x3DIoxXm>vTtn7MD+93xGsG^2YP8)Om zi>5&Y+wrlYS&>gO5W+lNZQ#7;v*UC(1VS{9Xcd@35FzwmQ!gF}Rr_wMv+~r;f;ZAt zkCKb*paPba3xF^_J|3=v*hX?7#8Lb=w>&W*L~E!iY8W9z8B)Au8xUglH1UbFO=346 zHfM{SK0B~EF<%`@2Eu+p^*kZu8wJ8wvzzVrE8&1mmxy-)@jQe#{XizfB+z?bo+4bQ zgBF+(%yXo24_)i{?wAvTetxm>cbo#cRui>q6nk&5aaxz%*PL8S zacB}kd?VwiqVj%UuPRFE&-;~w(%H{@|2f~&ib2@m8P77hfh-vaEe)6eS7`W4Od43+ zQJOVsms@#+rx2vFiV3k9%YSprt8u7L*h}k`i|ISQLMKFle6j5 zPcsk>nzEb?3SlpYGOV?nXvGK38(B4AtbR%z^c_iXd*(0PV#}WA{u`q z`1H>3HoDCl2}in&5WcEya&jpIt&u3-Gd|Up|JV8X+Kath%IP9ZOv|g0b;7$5WVd>h zQTIh`)1OQ4WI~;j&tPq#o|#KNUCKFdz(Z2E3xupuHt>i(s}GXMB!tW9 z5K!u&M?GoQ-nZ|>TTcYuQwa(}KFYc6aNJ~3T@}`2($FBeoPrN^xOB}n4m@Khgfm<; z4YHG#$k&pgAL^$Z2m==tp?wwzp~z9w1oLBeAgsOz4?wSy-%J_qK|!nQ)Ea>`f)?d% z&>xYu6L33>Pe>FR0LCYI6#pieTc2$w;>p}Xx}-|&;PG=s0wLs9eK#gKL%>ckX*q6{ zH?f&`APihn?^XB{b}@BYeYtu$bZA1?4V!_`ck3~&zAh_7W-Mmdc;J1PA3(B!N6GIV zWmnAG(gapsD;_@PVuZ&JL;Sw}db2z4;4cHA5zI(v>}4WC$Qh2u)M4K2a(hsGr;jUH z5l8*axlBc1p_4J;b-J-W+*IybdCwjZLIlA)5PXve2wArVnw3h3Yv6{9WaBqej`Bcg zE<*TRa4qJ6TK_#Ca=`Mnn$Ekf_0~uKNKR}Yj}nv&6@0kf&1>uZ$nU=JrNOoASYFm} z))b`kKu1;OJuFasf5J&(I?u0xEc|flIXYyQ{2L%x-TdGrs!COrcY72O$w2sIk_`P0 zh`mdu*bsP-+DzN!4i(vJh%ks@LckL8-w^l1sDZE4V~unh(H<}r?((%qITU2$2*Bv6pB5g}BsAxZe4#u5;(_ z{@Ej{s_z9YD_19`vdpGSXq>PRGiFhQu>2aD5)23X`fP5A${0qC@2TBF*v$1tIHCNi zIw?)i4NZIkSJ(z^ngK#>T$etCk>lsEwi6_MH+bGIw!?zy1q@pPgz&D2MuFD!oWO;J z;48ri#fe5;oT!Z9*qu%S;q4)#XWDE`PlT%?a`X%u{G^J>n*dg1ccHyvue6{A`J6TX z;$m~|kp(}T*M#2)_~NqvXIK0`yAkZXVaj}!41~t??(i1WiWJZw<(6lC$`u3~q*njM zKVU^10X&@}Jf8561}^#ZEq%tLu7XSX=j(p6#~MPIaKg8&01sc#V zOcxK43;WIFBS0q1gBc)v#%CY1P5w)R4_Xd{1NPkL%~uDd<`aF~iwze^!b^~=%SvK; zcyuXI=!@34S3T(KR*JU>-My9BLVB(&x$UGVBnhzy2C}B}AI>?Cm?2IdVaON4_xDUL zl7SGiYh(!&l+h|GtV9DQLmE5mWLeH8u#K`Mds7%HMD}TBD_0*9YrrC#I)^lMs1J9d z@w66@E!|Qq5TYr+1LO?a_aqXhxb(-p^`xpLR}TURNo63(P#M1$1PZ35r--he zjXq2+Cux9i6t|eRgH1e^BZPo~$lS5){W?XFK@%3B{s(NtvAzz%6SuM}ej5(s{+!Gld>ckY!f*)~E3xF^VetPIX0&Yrf zIJfZJd*_+($xF5I3D`i;a!g95d+BAP7fJB^-IyIgI59RMF?dlSn3K>ccEpLGGwi+h zdrOSz{ZN8MtEDYdG>w?G9%zIhDz>LB;|aXoJ@o}x5Ms+fKGPL*f@uVr4jMNH z$*BGt5BqFs3t3bUIdZBl4^}X!_ylYq3J3}9m;R3VjA3Y#{OADT8p8@q=Dd*0?6U9n zli|}=#l$Ca9gd5~C1>UXyLa5Q%Yk29@%t1sh(}=I-Qa z``Z;YcD;Y%>$TLhYman{5)Fh1-sWNET)4WSTD& z;X5I+CM2Q=3T?zZ5JKwsM7Y?;3>_PpHz{WLmueg_E&*dSXk4q#91apTxrDO(iY9k7 zDL+F+8iA)m#Fz8KW^W8wzRz#@J|JS~)RhRbsZ+D@u6ZEDbHwqG0gLepP6S>-ZwHT= z6+UBa(6Ta|-{2+1p;K4j6?7GEV;d7dNVxG%B>KQNMb0uB)W*dNrdlu@JciBQ1m+Y8 zghc-94zkQiLXl)>h_BM~5;c4RE;Ib8iHpZux-H4F!`&v=oz`Y$Uk)5_#sAZ*JQD&4 z?*|Q-v}mspAUw9P{Y>B^WBM}zJP>X-Y*Qrw!p$lGp~}&L5U8-}Qg1~m$r5Bkb0oLW z$*sz{=(hAuOo62`Lhf2RG7h zh7K7BS%uBnN-=g@ z9Ri*RqI~*!2J{AO=%Ta+mfLAkG7T}6927w6|)3GHTX%{ohA1HjvGTMT8AcTTfRFZB85>wgp z0)ey*hmS$Q6oeM|5h#D`l*<8#5OVpV1PJd0em-J#tsxL@ZC%rTHt+!#8w`L55YB2U zHEh$PXoLG^1s53P<-S?zu}z5=9sLVdg+h_;1PGaxgai&b!YLiN>zd>g`q4}hmZWG` z{L$32E|vFO_T4un#l8n9Q2BgtHNg_}jdbtRr9YuTDT~V369`opLTC*kVf`oyKb&&* zt>LYpFY_s*uc}e1R0o8dErhofMP)u+{xb~a2@sNlzLR;>2oTnEe7fjI*gRqzvMlgb z%^?g&QF^D3XBBTx!sm-J`(hXJn*z2cd%db{!0RsCulCk2AjFO@4e5#bqB0QThAgQW zP+?!9Aa~3;Qn(Qg=a&(>*fVPs@}O23Qt=NSB@%&2f>NP}>}^I*P9IkdHHoQzBYrk$ zVr^K1a0rekzVhmDNp18Z8z~L;Odt$8*pbsF)r^sfQ^aaQju0AC)t#_e8-M}Asx1QH zpHWbWPe3#YIgMz_h6o{&Ib+kZ*`w=3|FPu2=Z*%hsx^5MYujVS%s^|P6tg`SNDJx! zj3HiX$vk^+J+4hoBMc)TPk{s&Mu-RjI-iY3Z_ysWdr+N{K?ZBSWkVcAS|(UDWcKFA zS1|sD1%yC2!d*tESFKjlzQrachc4WU>`jxQ`)$W<076n=MxB~P4rJysBjXaD^o*g% zEH!$F)U7Qy!`&|Ve}0+MXIK3{-=CT3sapZdsy*${$v=LKcyK0=&|v#F!57aY2Gw7~ zTY{Vp_kHJlw!7q6D-AI~@kT%qI!{CJ(zL3IQmB>HUq#a_-7pSZ{W8<77&`r-dW zkj*R*zM0e3i^-V9ma6<4mYo^|@lO2TK(a6CZQ&OSe=yolgioIFtl+K(!g8*KuBCSe zth-3M%D-OZyz!D?uNOnA2`=KXpMNzuq7&Q~^)~m2BKANcl7SF6Qpj_|+BTOOTKmLa zE36Vh6rzC;)k?7>Phn4XB?_W``ZSvNUklw}i)Wy|i;A^9?C#!rLK+;&7lcIPRE}#k zktW5`N;)m6s3jwqmYyQ|gG&lKW1>UN_&5k0U%E384jwxjcfbM#TM2~hzR13d82`2T z9f5Q3REQon9`s0-6sk=`2qA0$q(NR^^w4pkvo?C}KF>5I07AlMOlOi(4A&5%I11M0 zMU9w@6t>Sv%vht`gvw)h|(#Z6ZzNKUhnz#s+RF!7EF8nt%B1CBe5JGOHmqTW6 zipd;Kj>wKe7%J4w7eT&$D^FkAaR>`E$*rvjD*|(qXJ}`{K03lR^LO!idu+Y$FjZ!!? zzlQLmug>>!E@tMf=*_eyizXbv7FOp(4}k%y%3MnCn8bCsCX$UIMcF4yeta{v2^}UQ z?c-jlD7z#0=pnO|8xCKJ205{c9amq9s>eX|(^5KM6S1S{agu?Mgx&02-5v-Ra;QU0 z)+oJQPHBEfK*-)fj3JF6*gv`x5I$szXP~yey=%!3wR`ba6XI!5m=)PZttL1*XrxO) ztR^IgbUk95AOwDUE)6QVPnIO!{m?_AB+hEWL1wJ>LD;0FQRzdWXkK^{nVJ*0>9B=B z=(qMjR8j`nowg7lBl#C z+8NaI#J)cH-<#S6H86oL5mT09GqM+%3cM1q{tzOWR``X$C1Tgv@TtqAQ?rngYB(Ic zf`A%o>Yzp_wzs@xI@LUUUJqTcCpv2crp4%t;YG|@baEzW4JCQpYVKL+a^zNZ8*2s8 zJ)8@3EhnW79zD~4?Ex&sG&KbJB1*OduGt?xZ6#ucbb6yR^9D~@7Pz9yt@4H?1NUE6 z!2ux?V8rwA1-mVuIt&f#KcjNTqW>6$sTm8OxX6Fw5kjYyoSLZOpMuLRLi(gb-$oty zh5X2C{@&WH@{~u__dV%5_KU5TQL$5Jk;nKDk_BVWdY36dN7Chs_MgccFwlyZ$QPY; z&I+H5INm2i@1TIDJ|n>{2LVDzQE?9?LrIJj9iuXnGKy|1@^3o1mQYmVk67%o*KClG zI9`1H9a$C#=^W%k>&)b}elYbLlF-Ym@crzgSOEyqBaZfOBsaR&2=^MW73E3Gh^r)e z^?pusKff9>I>ZcL2&p0kYjrn%orgJ16kgAZcD=!tlZtBwiNre%46#neSFWrQ?Y@cppc!gNix1gn^z&HUAA}($H(C&K_{fbctFS8w|F)kG| zF6(5`F6~xbLOn^~z31SFKqE*rLZ~CI@&Q|}NEP0}I>6@wE5Rf*1rd+~!#ePZrSZ(! z-}a`s0>LgXtj4i`5PkS!)h~UNNF3FZEstBV9={#_yP3L`wKA0kQm)+Mm@&o~rvNyyol9Yi}6uWG_VmLsQqUBej>UQDMdR+?f zgm0wqqiNK+v?odiLXwK9ISkV?JFX;j;~gEu+tUMI!yAbCgni3|U_!bB5TXODu$J!$ zm^9G#L7u>PX_G~X)r8-pQ8;k0OM6s;rImDAa@z>o^gtk_wk|P;X)PJ?Kq`+&jiE`KkR@hjQn8CaVG?R$;KdCy=f$h*$mimwTFL*WFUlwayO%Py02;{ zs2SDNF+z&0(S)PATR{7P5OQb{`H>I^#X}U7-rDK2pY+h~KuAtm>=EgW2a)m`)#TXN zqq|5B3Q`}%PK)|TXAh=95_QjNmCR}aUj^B%4@pfd83<*`68||xQgPJCsnm#4SCup^ z%e~+y`Sax{QWW2Da;xN0{tUe7@#3qojZ$4L{b!x$6AO9LaKYhacOX<*ho5YoLqnSBoRND1BP!*NBgCpRg}g*B7DSpD1c zVRipUodCHWA|6{baMPtOe^UQ&^4VT&pcvvNyy)$`VA7=YtBI6m$s%1)E^*-K(N+_25`C;_vgn|O4i|}>RAtGMg_@=6c%(%?GR>IV)3gwzdU$q!te7+U|+T*@djuAEk!DQrf~4Dn|lWziccM^Vi4 zoe8Hu712ZT3JF8TuT6Q zV7XL@$FgL}ikP?v#Xnio3sk%bT3IF2pko1{V#{SGWeKg3ih&J)R@_(_B z!wjaJOu;Kd>Xfxsx8qWDtB)%+(}(r~EC+16inkmH2q6`W;A0PvYMkb)j0*H_ZYx*| zN2Ix+B)=EIL*Ox8%g6Msu#c+jlld1cH4m%2+tF(=Uq%T3ZX8Yw5Yk|#)FnyisyW6*fIH%UOM|$F zMpZ`U#@D_aMT0p&Zh)xd`JxFpaqK`GjBTiKLPuJwls0e%_BSPWI z0jqws;fFcw@^%Ki6ANji5g_#8 z5K@%i?dy%e8gXcVECND=L%&%3Q*T8%DeOrN2C3yet=YqGQ1U`pwQJEW%R7cydUxb; z;2fP{=z|HT%>Sk^aKrB?L(0}ceLj?|Iqd0@fe<2Vax&oWTx*vgA%te5n>t5}0zyca zKj|hlP7n}+&tW%-4WeKM0;&NhzVf6{!4<-+>TchqOBQ89&=`&*-^8~=$Wg=^NU3c4 z3EPn6yQKY|b(e|L%{>mG<{Z!oQIkfiE4kIlC@4#o6lHIDKYC4KGGlE|ED*Ipi;Ep` zP;zM*tU5!Cix34{YqU3UcUW-2D%3HIhP@bC%QH^_(K9|ZN>U-ydO2^qiVQ~dP~Teq zOM?ywfiSTFxs+rB5Mv)jv8w#82_QU&2qEnlxX!!kfkn4}rFXeq=%4_E>i~pSeUv&r znR8y30?G@|Uk4Cc5-H8U`N5Z`p7kmR8DfDSi4&qu4f@rCeqV%=cL!T`BSy6e< z+8K7)eg(tPjSH~L>N%Jc^^ zbvQ(#g)h)TB5nBuf+d(-hg%F<*frV|KV!0F$%SM*3w{ir zwO$jKKw^VbaE_14o2V+k=Ac89^+rk)@P^G`q~>+c`s_nEOH5Ykfc#qn3m6sN64M%O zhf4W4uey}nVc&Hw6mGy80}7j}wXqwnHX*K{5tq`tR@{J9-urCD&+mSD>fM~yR}v1t z6xZ}-dh=U(ZT-Lg4h9m~Mv@sGkbl#Hp93)Gx7l3?h(2ACfiTfNH9TD*z7z*)>yH#s zhl9EihBZiIrcYWR#u&&%WozQw3j!(G8WT`ZeHh*n6cU~kD)2O@Tk6>+y%RlMp$a*) zaYEct36@r}DZv2;=(O|z6r=;8wPbj!3DF460-@%x1m##|$&v+2z}S=w4b2pVbQNW^ zF*&2$Dy}>3&}0qVajmyPUrppuX&H!%Tz$3_m19MH+Y5vj?b@1&4Mc4zen-h?#>Cj$ zfp8Meu=rhizGNUIB~0Ayk&C7G@{T(~?x#g%jiLq3kxmyH$&|um97RxbM281C%0&;& z>7hU)dF65Le4WTe^sH-F@#A{px4b&wi3jjVoh*t52Q_v&^c_5{j3Qwz8Tfz39CrAH zaQd>h?Gy+V5Wi;Fqplsra&o1ZF`Cv6V@!7`J{_`T$?_=pQIniTGDR6_V-r)nx1W*? z10B7(%tsSW!^waFLRteR{~2YGviy$lMqidJSuzkZOi10aC5{k63f|&R9Bp8;`a3GfXWwpUyQ8IoesR7{2^<=20iNu@JJQUfpl4sAOwYD`o&Q=R|qSwik+5WNPBi1wt4Kb z6ecrsX~wvc@x2juv;#$Y@lndthrY!Z>}BKXutM>W)Pq!(EExzj+BgVI7@v?B`qdU? z)mYE~tWl8x7L;94(7G}rfDmijGFl~!{QQA{nBV?(?|KL|NZS4M z!hs-g7joW&O9cNbM>RbSD$P)_IEOvtpwhuQu8kf-c^MK}O_0Y##zxN}P>@XrB`z|) zJOtwFBCVAR2C}hbp(LtHgp^$gXH1qX83@%$X)!68kz-~BEh_ZN|6Xapb@;gX?m8P6 zpWwT`$!H@X%gYlI5 zd)!;QponE-hqyqTuAgZw55*Mg*C&g%s{yEJR-(uc6xM+DDdP!c=w$GpTPZ*YydbJc zCqcqmGANKkT?ZYvxTxj`EHtG|eI!;B4wM~AP!N@GaY9ii2C;68!g#(k`BTzLyhuGw zI7*fx%lT=tWJx1c^*xWW%c_01%w&GzMZcY=wej)3YY!Q1By@RMe0;o@420cPuGQ^t zr8mPuK<7d+fUYFu?APDTZNWCORJHeQSKR|qsuiaiu~LduPrWK+AcT@1b$#$v10P?U2xfA)#(vrp`>QEfYC-_iPdn zbD)J`Is-n(f4y^Aavv>*rQp~XO`lz*@3&i~h!+#U=wCkL5*EwfvwfmfN-H)IC^T*5oJhV}N-+KMeWv~3T;$>U3 z{N+Daywv{w2M=C)v)xv;zM$CtT-c81LT%9Y=R%jc4C~3)h75$LgW}Btp`C6(RXm1? zzz9ZG;i3VkpTAAF1#*8@r)Vbn|!9dYqMai6TTR^%+mRuc{&nemi0_sMgQs#{)_ z*G=Y$RNwR3^^Mogvu-u_*q>(Hs)aVz?zQ&?*F2XbR?Y22cf>)xE3RT+`U>3=a<97W z&L@QmL}JihQ+!*c^SJ{z>jCT;8&Jbz$r557EP zApFCAKnUpzHg?j0iI{>VnS2b2Frk$<`T(I06fG1>gG>+uHAPYQRF^C&{p{Hb2|}6T znUEw2exzs$lX>Wh`bg(fQx{_?Sz!-h;;;IrctMWewJ=Er1@L{Btn*@I`Sax1@v*MUGN3aZW-h3;uH za-&8~^IucX{)gqe^;p!HncAdOR2_{?OpY2oBVxg>*tj?|K&aJfF?RK^aojF(@#xH; zNlQHQf51T8OMchnj`rQqL#1hdC2EZ@%QDCFQks2mZ$DVoM|U!?K=C}uG9T@pXtB*^v6`Y&h&@y;@)##?EQA2DeeF1 z)BpYPlI^Zk=u<2_!)++i{otP3EpBOTG zbI{h-kOh0VW5*}>?>LE%Ibx5|BPOfk;zJkg30bf=Ha0eBNeO^z@QA6{Dq`ZIpiPI- z$>_{H^e1ddF&cz*gzxr~=x}sucEIX7x8jQdYY#-HW?_4^M&rBgkSQQU<7gym=s4f) zCp?ON4Ov_SHw$fYs%PO(s*3B;xnm;6&jZSmL-?&b6rYshv+ab@)`I8lrmR(sHY;J}(dd=OV{8(39JKzM zo_vwWDWe%&*v*cC9TIrSY?Z)#BJUVoT!dz=i2V3*wPeIE9ek7r2&}@wOGiN<0)&{i zK@B<>fTT+BgHWi}t$QM4)&U5c~LCY&*wQ+&VE7`P3bQo18|z77m)Y zC^~m6(9Y2N9%DgF67fLbF&cpo6%1Rrm-yy0K)8klLcpruDjg7N6Ow%Qeuo{wrGcwz zG2sA044l?N44JhtRu6m+7aYC2; z8_$Q-fB?aPtWb&cxzIY7JvcQ_he_k6OHOVjh?jC2xR(_lM8#v_r;C3e<=;$6DPFbz zrCi0SCtoBo5F(Qk6<-Jt+O>{|`*vJoYNOLF}L_bkD z1n@sn`tTqO_Z{0Wj&xp23^R$ONPPs4(F9J(dnn-DtK6I32sIp`Yp0hb7J`n^(@dF<~^RKoSk$NVAMfNHAkN0Utu|Z70~haKwliYcx5d&<)Sx-!#c-z+k-SR(>@$b7;udJB&9q zW36WBSlVH#D1mmK-6ZIa>BRHg57z!%!rO(0C?#tFV{`p`e3Icn}gD#L&`!m;+U} z0~H^B1UwSn#78xCI(o7w1bAa?`X#W@L%B|=s_?n$D#Yr8fe^Fkkyys#^M%VYnO_!2 zIw0OJ-u@DrSmL8C1EJ$cju38%$r+`pxi9!iK}x4~_&7WVegM+ks_qCj0QE)Zj3yC9 zteP7l*@uLnbeN6b!6=pcy(wlaOS%3)%1dEx@YmPhM#E68{(Oe;UTa9Qmu)#3lPrKH3fO({{SHL zWPnh^0bzYljgKkz-G6V)$zIN-2!&A~)GaAgmV7$@LJwY2s3^VjtWR|>;>{?eK@u!2 zdON3uQ1R0%S+X&G{88Wy4JF$P2yv@7T#95oWR1c#p-UjdK-Ab#nH zZt6t7ZdThvS{c%9W8TDD*oy^1s+dtzQ7grx>Nd8ddwKFZk^(JpnL`7XSF+v1bG*`ZgmC*wb}tC| zqMGaxq%*!7k0z$11}!TG79!Kt)C7i4U7;o!v+M){q{q*p5kk%5DWmR%KN|qy6#)=> z>^To0)Uo%>4ORkSU61yxfAHywU!L_UL#PlaNQ%usgoxhCY6dv?VJw$&!IEy%i~c?JhMe5K4SQMsl(fkBVAGNIN{Fk-KrUuuMp316%|o zTRk|83y5)zQ+0dbA^d>Jf5>93B&!EOn4yQ*qA3msgzXUeAJ%~IpmeJTML2K}@S`(H zFEf%Rt>UdyaQ!2yk43r6vcPVzI8fX&)YO(v&w3dJ9Zd2XLTy|e$&IAx0G|05v?&>3 zUv1`yWo30jQZmY=kPQd{B0&`8MuX??Ci$6OyT46HN;4)xh~oGj<#ge^-rPkF+w(W9qFXOALG zOO`>ZDsDvOjsq!~DJp|Cge0jIyXXgX5`zk#v4*^e@TNK~TOFT>nm33Xn)*K)^=43= zCUE^B-O(Yuxcvmm#y|i_2?`pE4RY%S-$*~I ztbQOTi^`HyMmfaFMa|5nPEvP-b+48%E6=%xt7tOngt#yrA=s8K78=ppXxw6^wMa&T zKMk*ED*VZJPDsK|%d~!f&qNq&R@-nqrjcwp^ftojPfCyezrpX$P zfdjGVX0YEt#T{TF2-f6>8YO4G#2Uy{F8Br;ckAYE7p_2wwC_^phiF2#2oJAaZ?uPDFwLTEJ|9TyT5(4eB| zt<)wZes7g&P?ijYlnEi+79+BOXcEOONWz-_h(iu-li;=+ff4hI9%-^@bd!{|WRUWT zave&Cxoy?i4`8kkP?FquFt?2sO>yALqEKX$_{kAkP0+?II6)Kw>CZ7ZWgW;k#fK5= zGx4d!3Rr3s(GA0Z;+LTUq1_$rmjzj}BEQ~>Dlg%amc%EgBFYDZOGrtL%pL1d_6Si> zfD}sv6OvQ$E+7htlrgzu-~!JkNh0bM&(|Hra|$+C`-j>p%;5+V9tAHYCa0h^JjN!a zppGbAlE(qzwB67 z#3v>~XbOK~VPT9m4q-;JFV7NUM)3D(`(X<*bvklpqteD@4$&uV>Z! z6HZcqbVTTNDZ2fvPd$gblm__-AyZ_vrwteJz(_c*|B7n=4NcepiIjqEV0-Af`&-YQ z-+1miM=;E5&v(kIyGBQib$u8no*?wc?XvSMf^6Vk!Db;d*Q35DTC*gR1wDsPM!@QN z3>otY4+-zx-_i~63J&4F?Kq05Vu2;PN9PTJS+*%^-srvKwExy)7zJD3)xF>+)TCjX zMHG=;3F))z8^P)8@u5P3rzz4oIDE@z99)Z97rSm$ta1V|yuQ8|#EE?SN?_DH90iX8DjW?3>2 zvNcgm|F0zBcbAxEvCIEw?<}0#xYj8CS3JuY#-QLQa!1RzC2i0gBs>mN1A zLgbcBc>LR#q->KlmkBEC*IXI8j`R9VFN}Te2WP=$zFx>5<(roL$&1_V`Iq8e{bk7V zim1f$QU5)1O+P|$+lZYlusXvuYLHiJutzidK_ZijotfvUVS*q*cpaKhBxGPGD!$As zZ{~&tA^ek_t$G9@VDb!1t5SRgA>NqB9$Y83=78>fxh=eE!VnTj_)%pnkrHA<`u5<4 zCJ~xq)KzSryt=+w+KOqq>mu=L;1B_!E)kei&iXKstF+pc4YNxGgodyV4ES>aCI#8X zGKQIpMOUn!pBZ)ckv>!MOx8R; zN(#bUL?jgSn^QLO@B6Lq{|V1fyOap7Q~P<{Pdf4V)!8wRofx#ds_(4oezS_811%q( zwB}sAmJ12*x$mqZ7Ly~&_t}gnyg|>GmaHKwtF74=NDUGs2(R@v4v#*Ih3gtoP2sgw zcw@sV3AhVqQqBD;H-LyGTvW>xU_j?*UJZOmX~lzSuI_bb=MQd-8hSXWYnoJ9DU{la zVRp6Q?Liwit0e{w?Sq}pPfO?it&>&8vuv0ZOa!X1thqi9j^WL~{UERo0kwe?Ync_v$Sm^CYmiNg#WLwZH0 z77kiod;89&Q4bx%+Mez6Gxoeo&SG~7WFUC)uVOE};>OYoM6m@Cme+=PKh8$ z5b9a=VTxi|J9nfg0Xq3R(U^pMDQioMDx+!wbbw7Q9Vh`e zmi}SWxl-*xaoX3qswPBPrO{{y+`ik^;+fKvk&m*zsk4Ct2e7Xf)T(gTckW|nes5sM zO!GV;I2S5@aL8cjKy_(7ORI8vqICH6L*8Jog&+t*m}&9FS1j-TG5WqEL)X{#n_nHB zS{z}|3b$sM?AflhLkPv3aBG&yp4lfgf55!b0V`^UZfF>>qt(N{;age{pbge+de!QU(%+1-D^z~{qpRv4Rx?FnH1D44SLof;c8~| zTTp5F`wmShhaDp@DU`B_%4DIS#3qzCy2wSyT*q%m!2!DSO9AoPF0_`(l# zbOo*x%)~+@zG zMor0&O2~;$$cahJ#Um#wIX8NG;jrc9w{57sJ$=9V+3zO3`$t0VCEs7o%n!WI+Kl41 z2~U0-ZuQEKF>xu#YX)HqI`T&T^Pua`%Q*=IL4r`Dk=U&syU%l6e`6spi^tPSX(PmY z(At%}YGP|khs5qd7-Ew}dW~@e4+2ZHCqY(U9PaNO25zDU?nPGSok|sixawG2AifMn z2-twZbl{Fw_JI*3@q$`qdKDX5jxX~Pf#UbQ5QKOn2!bGtx^O5~2XTyHQBZV6U}v-; zAx5Y;F8qMb{2SXxC;QE-5XJhP#-O>gVSn(-YRl)R<>Xfr1PMZce?lNK5|b;gPZM$z z4;D(gj0L}ibzXwd$*Lx__MqOoUfkkOV_7l=6NK3I+_g`hJqSFv`w8X7E*=E&tZD)$ zN1h-IZ4n59t_ALKb&wz_XJM_HQXxWOe9#te5ClOG#0`F`Yx(T-u+0rnfTA+dr(+O{ zj{WDAO?>GmCO%0G5`=U?7-+E&HXT%%XyRsY2Ps$^p{pt#U4r@@Jj7iJIf?_6dPB6x z%96pI?lMDFO$b%Is!>fpAa__4U{p91swR-Ux~o;9cj^Vc6G|n4LCrvQbBnsXo=plM zK$Tw@Ha`(4Whj&&2!bFrXk{Jxhr;7?ymCaDA1K6OX3X@`Q4bu`5gtPjBnWlb1&Gl{ zHHFCB7x;(D0BZ>w?36On32VX={>fe)gRHurR$DcprdAk34QeYlpo%349_`tH_J-^? zwl@fzEaWzDO+OKQEii2#40Dzdx~!hnMWj@)*>5fac|wfPe$rM<34$O9as@%|MHF3_ ztoghhkxN1D2Li4SBjR(%+JT*vCC= zEfD_jv`W^d=oA%;UYmhr1`-585ON!pSu-JWO(PN@1vA1tP9We1;cQnhGb%o7++*Lk z>I!wgE=FIn!0l7NQLE@nr0;=iS&eM!CIx%Is9*WG)dV{KCho^476vSd{K zDURZ97=-~z@S;RmAJLaYlizT|2UU5En~SB-n} zTYJIf9{y!S5F`kJzqf$VvIR9tV%HO-Y~N4QlBY+xA>DCunXIY_AiCGx+7*vRnTJd) zS8yLMy=npqb1GDU(bS+wF#-G-3vYXMUnC*98OVcSwzaCTmlxHlGpgL#Fg73-0>!z# z8D=0s5ClQfp~dayPfv}x|7gtA{4gsT4uu&A#B^w8WKzM9HPx|i{q8KKz-oe!CJ5!{ z(eq)mP0eWVLl3pDCghKa3xF945 zf*=T)@GMY!!IjvTe;P2i$Yjfh0>msR_XACCGT5UnHzp;2>_f-mOWSEzkRW=gAOrz} zC^j^!@R$6pLMX0vo(veBNKx6tQbNN;yugi))QwVosABnhS4xN zt6INQgkGW<1(uh%*f_UfNK86|9bj&DQ!~@~u)%S1;{A&v$^bhcGmsz%f{={H({mPH z8UM`pL)O$rrIv(SSg9Zrfo2z$FWrsvmYnG1ypjJn82iyFdp=Ev5`=C+*j;zSzPF)} zh07a!bp;+5*XeS!{0rZ7nvL8Z#B!riy4Qso#Lz5!o^;vWdQjSPsugSRQ-hvMNZ5eB z;9^UyY)3shwjWtvynA(!bIVPHrn4z%bt|ik=K-PYg0YIVK=$Z$VhMsEh?@ni2o|@Q zKR7x1p<_eWHAE%mnygu2mJDVITEB(@#6cLaW`)}_`_C&Mao4^{um6e~3HdsZAV?5` zZoWz7%YO4a7Yh|U&epd^2=3yK92xHuJ9rQhcyCN=8NnL_{7mkY*sbU3FkH{7CPeRl z@A+7<^D_l)p9DnU)XH`!SbX|`cfJEUP}pLE5cB{8tHCt37Rat=q%Pr;mzm5A#97j` z1q%0%`r-+KAbM0Ih5AIO0%ypKf*@oHLLDZO{{1DsSg6ja;nfsumJjopJwC#xeS7efoTY}c2g}+q ze7m7p@~|j?oS4O{CVIYpP-_OV1HgSt{Os6#o5e(+vc8##K<(VDKOx*1nC{Vm+ggwf zqb#gtrzIs_Wmr^O6s4q7x&%Q&Y7_+NQlwiNh8(0rx&=m*5|kdKo1wcAkgk#L0ci&5 z&Uf{F-~3*)_c}Y)IrrYP@vJl3LkHH~)nh{c){v1Fld2cz|tWg$vj?7{A`BWca4jv47xEGbmec)zXjWN98Wx4zqK zLUOscTJ*x$*}5S=OS>{H%gLazI(XQ#N#t2i5tGMud5*odlifRSbV?FWFFxhV;>?NT ziEjNg((e_*tgkQb#NLI)GU6`|a>$X;WZ)KeR3}Ab>2|S6d=zej)v_dsQsN!Z)nQD|dZveSD;rd8)?i;1O zf*Si&0=U=8a2H-cjw6!9!<5EwybzPKC+6FWBw4C!w4I444p!z4D=%ei%kh|KCyw#m znrV0!D7`4V+gq^AJx5S3+$~_U^_#8XkS00vJ_{|QhpR4R@Jk6noa6=f*`#TY_}!nv zASQ;kQpj=@OmaM;)A8V{O7%w`+TqsSSRz?Myp);i=>hMs*HVD@O{A2;G8R>BxFf|_ zFxIcq5RC<+(K06_A~zy8IvqEa?9aO~u;Dwe2UjPId2b#<{mmXm7y@@LZ!Md->&_@G zT4DcQZ}DJmi(4KDOEH4;!Sz;<*#%E{KM+$uolINa6tdD|XKeEnSvm%j{yA)`{f~+(1rgjPJ3fi&8SVB!0e~b;iO3LDZF|LG-}u` z94aNg-KCB2OFR#(Z#f&>>TRb#{c%`%F9K-a)y#DrOlxX+;c6BK1Dg-h7aaK#_hB{~ zVr@efp_z3T&?h8WrR zE@3Vh|mqgM<|LFAzVlb1t@yWX(z{k!`yffL7TX!EY&UH zX>n1O-@#ps1LBNU?6I=eh30T}8c?m2ybvkwT15e`Q&8)$%R?G);#wE1xQVJ0p$3s% zC2}ig7ICGVL$LdoZs24#&`=Z_ja4uU9y_Qrk=k}Nn3*u+yP%8i%E3D2E1@ZM{{w}E zNGU@gn2NUEFV`=^)z|@9L1EPX`%WzD`=aOmY&nwaMI8xdd-rywE}>@2NGjzrg(4GG zxA5UEY((!X2;(+_#UXtoDjuKeV+a%e>@&X$Ph%TfDRd@BBK#3F?uZYr!__`M#Bo#D zYcW=se+v_sJnN>OmpEchV`jOp*=n%SY(&^OjP~N=Aok7L+XapS_O^R!p4X(;cc!lU zcVy>ZQuY0hZ`;vIWRD99o-KvnW6@?MMja=X5O@p8cR=XV4NjzJpJRLiy21OJ^WWpe z@smrDAB`U`u!NA>GQ_f292cKE)46O+*!+Dm+&%7-KwYeYF==kJrWQ1y8*?`nKD=TWqP`YAma90}hf&uSYC z#*ZDNRrssbv4F)PHa>ZB!?^#M3&=DRt~@`)(00{$_>DJWb_>v0s#ahTTN7 zT$$*|Yl{pDwhsmxhhC_w2E;8A)&r`DoeDNYQHCIbcwHhnnBA4wib0g6M4Us?m$lvh z{(}??uXA~dd_U53@`LM7L=Ao|%4puG@v(IUPs-DTKVlF)Rp~rtbI!_6HsygbANM+n zi_=9P@y*;LPxlmF5b4E*h(e-+Y0 zsPw!EcD^4K!T2ltN)035%9dbAKTUTaSywBZj?%V2JJZcwx6;;dH>912Nv6+H`W-C+ zZnxpGg&yQ4kt#prhBXo^tGxg}`SeO^OWJ02LTQO=D}%UL1TKN`mn+~GLMn~z!lBfx z-%up-gD3zOSGF&qC;__?N6>)(SyD@<-jg(f{ks zx-SdRCo(e`g$LJkRb7%}UKaG+K15$HylB%W_$ebRLLcy2dTUBo9J5&*Egf+ol&K=a zsUrK?N`J4P5~fTX^W?$*1o`ql!L7~Jt-u>I364OIYCzOB%K6zlMe)$4!tGcbGuEs$ zZ7e?zT}bPYOQr^22oxoh&aDj zQ-gCUj%aqT$(UB)GC;HsKe0LwrkbOq9@l|2ndYu|0_5)x_De0s;B9_hOp{X?wT~uNipKZT#n3NHg+(8;8F9%yM|siE&~Tw$ zdfF7<3v>d;h?2sz#(22EI9~m^+wV2;2yTR?n$?y3 zHWGY1G%T90woZ*Xxmr9|h6??1{nR_>x{*gx9Ay(#ANn?8vUyCVIIzL@Z7gBj1Hffz zn@#fPtWUdr#@+u!e|+;^PxZx#amNjXqI#%|)#;-PRqfvEUiuf2P7@OrihJJ{i;GCA zI9WKcm*(ZjHXborhNK{bw+ATY2dxVQV+)D30EbC&qcw1f^t9*fQ5q2n*7fPs-XS{V zp)RQx(wy-If@GHHLZ5s69%8gAl&kOiiESOA)VpJmHc>$p2NO&@H`iL7?cpC4Z_)ts z0P?b~be?(CX=-O&DH^MqGc~_NaY=L;emTqvV63yew|sstzAHJp-(PUj4tLJD8hhTX zJ#EnVQirATR{nX4y}~W!*=)qD!ioxqoATrT0kzCG77VyV%3-3@B-BQ0_w1Q`HOMKF zh;4ICx2Wx}IXeOuS0JRU+J&d#mieR3B!VA<*+K zaV-PY2%@tqvWkEPKVf_I&-<>*3YSHhs|pr+0`(x+t5h2w4dPjp4yE`z{ITU_b&tl} z7Q(nq{?Sx5Y(q9lWJ(6+xmcCJ>TKRXVp?~$zY@-Q5&ki49TglZ*-Ad6=DJ2gWjN0t zmyGvs{VB#-#Pz)qzsN_S8+<8xKmbW3MPhGXbE6`J_F$FL^iu>Gn3ZBycu|-rtuR ze`N2Vn`*RjFIdLR0ZMI`Ih3T=(bS%cdNK4kPMV@T65R*_vxR$|Yir^w}hIpHY zCLvt#o5ru$K~l8d8!-OWXG^4E}T^cdE30XGg|0*29(sh(CoV z7+JWgc90PW`jzJNF!DAG(+?kYnFr&`MZMRgwVb~<$2e98Ots2ve|8XHgb$gmGUO>9 zYBa@uQF8jNqYhhL{N)z*?Wo6g&>fv`-E(W%)y$k}?lbb@l*6F9{}UP!wn_Q24mDR| zP`}vy{K`?;Z-t9-Jd}FC;R&+jX&m-`00zS&KWu8~BQFTniQKC_T$67~nG#f-L~+0Q z;8xc1HxnPL*UqKX{l5k*nOf~j^c%_z?3d&N%qYCT$a?BeYY#b9BA)URgsr#3+$klC z3snq92B@bKh7!IV<1DZp4=OFEnBs|VDaaR6N9hfoy=ilKt}(W(AC&VLeOFVb)fuJj zvy4}sFTB?{@6l?kC6G@CI@AdVRu%1Au(S=7?>0!^^=wWw2#1~^blPWp%=7liWm>kt zgGO>leUSxmf4Jg@S8kaGG~P2`zaZWTCNM4#36SFlKf30h5BGN;?&&PPnsGhGqu~+X z-j0TWaj^+L_5(u;(a`W@nP2QiGTgVly(ivgj%FnlIxT6D`#qlN+~XWJq|0!vzPbd8 z=(~($xhsPA>eOn)x0e(h@1siwD=xhrkCNJH9Dn8&t0qJ{FxKtR?bmsb*nMFs0084c z4-<{4lt&`NM7O&=i-m|hv}}~*d^GxU+8hn)4VKD1HC);LWO7Itl+@27V&Gq9b7Jv8 zvjiAf3I}Bhm0D*w1gqC4Z%nK}L3QOY-%@dXs|>`P@IT~EJdfD2#7Wdftj_XR%{ISGPa{sGf?Da^*xiFX$Hu_| zXAXszi7L2%+lxv*Vx)e!$vrkbTI)%?3QK8thl-&^s+?-LZF5;kSHRqy%y9PSHlBzJ zMB*2O!+Mii0@+#mkL$XZqyD}?W8!L#eqE9;d^}wyUQ%cf_rpN-Uy!RP^2Glt=~6p6 zc0XtzI9=%e)?&zC@M~9sfy3nbld3B1K_nAK%nfOS!MHkT@_m0w5(AC(By{ptz!4M} z+pf{eqnonJa&4?m;2$Bh@cA;-jZN@DJGWP>ovD8I!?jLUGK)H9 z!8`$Ye*Bt6W`A(TErD!n#i5F9CJaPuKtXn8----D?_<){emeo4zlD96r0BgfTM5D2 zc_2`U_ZQZj1p>$?(62N_6E;KU`09&6Ygy-sWa5kU4&zbAl5J&cig?nC$?KRkUz+}4 zbvPI5oW=U})vD=2KjIP3Lh<%!z~!I>{k3mDQ)r>z%rDfW46XJf!LJE!06H+_x$8u$ zzyFkVsrsmUhc1o#iCbFQLHcl88o#DMuysm@tGXXaqqd%UF+Y{CQAH0%d6DfsiBE+# z*_m0E|2I=19kqxb=9UJkhr_v7<86V96Aw3D)nB`;69VYL&kSyIcECodV)U%?X$kM& zW3E)g>hR?i`-2Mt@W#Nn{*x1^Do)uZqP#~mPB@e@iOl$ScXVU3Aq$z;WqIn?ai*%S zV{Tq_zIi3s)Ccd8DxCnT#^V!}G%+y`%0^%7VwTie)Fd(9HF}FblMGBdm0%A<`o08J+s_E;{U$R{=8+2 zu4Yp?p!Ou^Jgj8#*=AY^EtEyZE9bjVi2 zI)$dR%$JzR6FNGpV36WxPXTaTsO%oyVllk0o7|0e0QjDng%r%`wj4NFlaFKB`r7KE zPTCeHq4LLY6Zm{TEQM)`Ow^`2 z4RD4Y_;Vm!WY=lxEjzlrQFZgp$|(uk?|lNn@@+?gn+!d|2{EGEifpQg>F9`TUA5Yi`AeJFZwYV z(Zi0;>b9YH$&$k5I97H|UM#@uU<6)^6U-4xwx1xf!){KW#nf}duHP)>vWBfW`|vQI z?PJ+?!d??9n|Xs=LlOZ~5v)O0mcYnO z{wziUj#`)nyo@R$e;l9}unw!U5}$9){U*FwI$mIJn%kgJNU-RI_sV8vM_aJ|c;-yW z_ADYMvD1RNgjlOmbG)|-W>FQnyWZ?JGpSx|*Jg$zOEnAF74<*>nvNs4**AwEb(FXb z>=j(E>MwCFUhLn0QtD`U_Kd#Kx95H4$13w>MDnGIzG3e}*lTbIAW>&-LA#8( zz`p&|ZZ@dXOz$yc?mvIT1OpZ&3s`Vuwbw7MwN#l&2gC+qD!@7gu5Z0}rMK3hGQj74 z+JX1{S(RW-d5QCOxJ#{z!=IcUMRn(iiSPc!syIdQ_}wNqN}MNEckQq60gZFvhLM%q zP+R3D+WA|u+TWt3yJndOg*7NZEaub#XaC~oTgnq8{9^wWZ{?XA-yc}2pvPErI-aFU z*eAv!HIM>DO%helAwfJrb*1)QzYEzC+25#3Rtkkv1N)-Dnsss}G2blVJ!u;88z~RU zUc9C6gAn9$WLP?pGxZHCLZ)e6qj70XPuqW|(HT}%=~723o=OX1fV}6g5z@A(c#fiN z(d?maDR05OBt=7824l;*NiR5V-6#xlSXo}@3|z49sRUT&?J}HOG?1$*F{l(XTLhw{GAsi%olX>meT?oZnLAdg5doWD9VUlk!(+!h6l<$R+W^OVTYe%+If ztF75;h~(jfngPY#JG?(B{=P+Oz8xT?&Yl#)c3+|)lk-`K23L#Faq8S@1z4lp_r7A6 zO?tK?8Kp=h4pIiK-OsgM9m!U0nd`CJwjM5DX17@OTv3MWl&MJls|?06xAXLZq`q8n0(2%GTV=xv2%gWyl6 z20HY9?B-P%y-EnLLg{R(YG=4FRwMHzeW+P4SO_^hx?Af4J)hPuChsfES^nK{1S1Yr zOoWX*D18V=hr}dG7A}v%w`G`5L}!mG7uZ&5-^zl8TB+apl7@zkYT8`d?--75|4SgKiuUwmupROvua#g84RPt2rX?W%#v5Av{(C6_91)iW(mKP3oT;)`c>}he)`s&Lp0)=Sf(SXUZz&8n-c#SA8sW^=tz9fn~pa22VPQ>=p z_*Y1=ifPfkSWRp%s>s5n&qWbH8J)fYGK4U4G z%@eZ@ymXiL(qmVK2Gwe0yM))GXkV4R7zQ>$l5*7^=v;ez!y5(77Z;X1!?=xM^eX*6 z_P=tisV9rrlJ9bmgIK8Q-YF|eZ5}u1s^0ATRc|?Ik5XDFgfdf=C4Tqf(F~xJ%0Tmv@oJ%pnPgk3DiTfBiSzp?eXv?Dh{hgD6;9+IXYLmfROCCw_{wFkF17ujItBsWyDRLLH0Iv;*KgrA)Ek@nIgta|#_y~*w4 z)*PqhhE2Ytw3LaVbznzFiVI>Go%ncMn5`ynDEU~fGcD{}2_;RVcmp`P-r#Nefur*1 z`=lY0?6<<&4Uc%f^9qmN0LmbcMO0zE)Oo{K^4VDAAU4eHU6`o365tg^)`6Z_U%%ko z5nlDkiir^pjzvab=hMR9>vSs+?V~tV<7bF z#enu(uh&p%?>Vn(N{+aEX+YckAk1P|41pg5)&VM&iDLbMJaGYIW?TV{Gng-*{wH%aaMv)B2*)X1WEizy zdrD{vWHl+SHZ?(g$+b8ulV~+0Av}<@#i`ziPpo711?jkZ9GG{UC!$hs8HaZuC{5Y& zEbyIo(uT>p^!+_uV;c(6zA0Gy_WcIFR`0Rm_(e$#o^X(9aXoLqM0AxMa^!mqJObZ5 z;vXjhe`3f2ccLHSt}{27#L(atbf5n6DJUDga#bNQJdQRhf&H)|%>K&Mx)C{ItvYD7 z!uYNe5$R{@SWeTRtJ^{7SeQ4StLr1%$T>OdSZEAVVt*kgtE-WV{Wq@yP0^8)tk|77 z=_9Y{SP3_-)_i-u4Rp8KS(N86QINZdKM4IO_pZ6jP2wCy0-P-7bugvoN!6VCcH3F; zCWAuAxkl*0-~GVa871qq^@ck4jr-Pvzz}yJ%1Ch~-aq}FnkbZJeQCt6r^G{*#!UW3 zm~V7|Gv`Y39px*!_y8Idh#kmDT+{a znDQIt0~z5L0jV)?yY`$_6tf^iv=aF>GJdFAvp%4+$jzrk{nki4;c|)5(|Eu1-Nnv7 z>PwTTMumQwN`sRM zxZWVw=QNg`RmYbnw)azVok4zkh6b0Q?AMRC|5ZSKVG5tX(FG3IvB@z(-^f96M)NX} z=u&ac@`~};BeNsS$2Ke`u^qCfjZ#`TMR?H0w(H!hE~D20;s*Fl(^K_44+qpMHMN7% z3O3lqp*JMqpiMYh+aDY^39`p=nZz!b#XJ7;j37@Ok3=g&eGUalSa;n>#bkgJ12IXTN|mG^(Rp6CBrU?&aS-I{eD zCjD0ys3Uif;5BJ)lPCVu-$KnQRDPd3i>{W#y!9(VWuM=j&o$SjgYs()DBNR#!(xM6 zX->rw6ikBKRbocUBLFVF)qlG1G21`|IMxArQ42G9n=^@8AQ@}QcX{ea>tD0`B(N%6 zzxLAAR%Q0-I34osh>#DLKfeH%lj$xlu#tD&cBK~)a2RQl?a`U==CS{86yvDrCitne zT3`+Zp42t`J}`)s!J*ePee!Kf{hz_&@I=~7B?voK|AEg>Y0iv$j!EFG@aPE(t9BdL zbn|H||15s+|5*>2b6&n#h3e4gSKFkc_Lv9$4|24%ChYp|Vv7868+jOS{ z6kX$)v#*23#!Xp?@71Jm^#p@Or%0EO9FszEkLjl5Wu909g6p chq^}>FX~~!kv#YcL@Ju1oZ9O$S+kJ;0G&5 Date: Wed, 3 Feb 2021 11:44:51 +0100 Subject: [PATCH 02/13] Add config flow to fritzbox callmonitor (#14651) Co-authored-by: Franck Nijhof --- .../fritzbox_callmonitor.markdown | 64 +------------------ 1 file changed, 2 insertions(+), 62 deletions(-) diff --git a/source/_integrations/fritzbox_callmonitor.markdown b/source/_integrations/fritzbox_callmonitor.markdown index 1bc5260117f..a4303d50556 100644 --- a/source/_integrations/fritzbox_callmonitor.markdown +++ b/source/_integrations/fritzbox_callmonitor.markdown @@ -13,74 +13,14 @@ It can also access the internal phone book of the router to look up the names co ## Setup -To activate the call monitor on your FRITZ!Box, dial #96\*5\* from any phone connected to it. +To activate the call monitor on your FRITZ!Box, dial **#96\*5\*** from any phone connected to it. ## Configuration -To use the FRITZ!Box call monitor in your installation, add the following to your `configuration.yaml` file: - -```yaml -# Example configuration.yaml entry -sensor: - - platform: fritzbox_callmonitor -``` - -{% configuration %} -name: - description: Give the sensor a friendly name for in the front-end. - required: false - default: Phone - type: string -host: - description: The IP address of your router, e.g., 192.168.1.1. It is optional since every FRITZ!Box is also reachable by using the IP address 169.254.1.1. If you have a local DNS server and have assigned a hostname to your FRITZ!Box, you can also use that here instead of the IP address. - required: false - default: 169.254.1.1 - type: string -port: - description: The TCP port of the call monitor. There is usually no reason to change this. - required: false - default: 1012 - type: integer -username: - description: FRITZ!Box user's user name. This is required to use the phone book lookup feature. The user needs to have the "voice message, fax message, Fritz!App Fon and call list" permission. - required: false - default: admin - type: string -password: - description: FRITZ!Box user's user password. This is required to use the phone book lookup feature. - required: false - type: string -phonebook: - description: Numerical ID identifying the phonebook to be used. If there is just one phonebook, this is usually 0. - required: false - default: 0 - type: integer -prefixes: - description: In case of a local call, the phone number seen by the router might differ from the one stored in the phone book by an area code, similarly for the international prefix. To remedy this, a list of prefixes, that can be appended to the phone number in case it is not found in the phone book, can be given. - required: false - type: list -{% endconfiguration %} +To add the AVM FRITZ!Box Call Monitor integration to your installation, go to **Configuration** -> **Integrations** in the UI, click the button with `+` sign and from the list of integrations select **AVM FRITZ!Box Call Monitor**. ## Examples -### Full configuration - -The example below shows a full configuration for a call monitor with phone book support. - -```yaml -# Example configuration.yaml entry -sensor: - - platform: fritzbox_callmonitor - name: Phone - username: my_username - password: my_password - phonebook: 0 - prefixes: - - '+49' - - '+4989' - - '089' -``` - ### Send notifications on state change This example shows how to send notifications whenever the sensor's state changes. You will get notified both when you receive a call and also when a call is placed. From d94c7e2a489dd352d3078dd7fca6b4efd2b83f1b Mon Sep 17 00:00:00 2001 From: Philip Allgaier Date: Thu, 28 Jan 2021 14:01:13 +0100 Subject: [PATCH 03/13] Correct `entities` merge (#16332) --- source/_lovelace/entities.markdown | 66 ++---------------------------- 1 file changed, 4 insertions(+), 62 deletions(-) diff --git a/source/_lovelace/entities.markdown b/source/_lovelace/entities.markdown index e35f91b8287..18fcf51e0bf 100644 --- a/source/_lovelace/entities.markdown +++ b/source/_lovelace/entities.markdown @@ -136,6 +136,10 @@ name: required: false description: Overwrites friendly entity name. type: string +format: + required: false + description: "How the attribute value should be formatted. Currently only supported for timestamp attributes. Valid values are: `relative`, `total`, `date`, `time` and `datetime`." + type: string {% endconfiguration %} ### Button @@ -354,68 +358,6 @@ icon: default: "`mdi:link`" {% endconfiguration %} -### Buttons - -{% configuration %} -type: - required: true - description: buttons - type: string -entities: - required: true - description: A list of entities to show. Each entry is either an entity ID or a map. - type: list - keys: - entity: - required: true - description: The entity to render. - type: string - icon: - required: false - description: Override the entity icon. - type: string - image: - required: false - description: Override the entity image. - type: string - name: - required: false - description: Label for the button - type: string -{% endconfiguration %} - -### Attribute - -{% configuration %} -type: - required: true - description: attribute - type: string -entity: - required: true - description: Home Assistant entity ID. - type: string -attribute: - required: true - description: Attribute to display from the entity. - type: string -prefix: - required: false - description: Text before entity state. - type: string -suffix: - required: false - description: Text after entity state. - type: string -name: - required: false - description: Overwrites friendly name. - type: string -format: - required: false - description: "How the attribute value should be formatted. Currently only supported for timestamp attributes. Valid values are: `relative`, `total`, `date`, `time` and `datetime`." - type: string -{% endconfiguration %} ## Examples ### Entity rows From ab3cf827736c4b296a46a5bc329f0d11747afac3 Mon Sep 17 00:00:00 2001 From: Paulus Schoutsen Date: Thu, 28 Jan 2021 09:34:24 +0100 Subject: [PATCH 04/13] Document TTS path (#16333) --- source/_integrations/tts.markdown | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/source/_integrations/tts.markdown b/source/_integrations/tts.markdown index 46bbb9ee02c..e5da42d2522 100644 --- a/source/_integrations/tts.markdown +++ b/source/_integrations/tts.markdown @@ -162,6 +162,7 @@ The return code is 200 if the file is generated. The message body will contain a ```json { + "path": "/api/tts_proxy/265944c108cbb00b2a621be5930513e03a0bb2cd_en_-_demo.mp3", "url": "http://127.0.0.1:8123/api/tts_proxy/265944c108cbb00b2a621be5930513e03a0bb2cd_en_-_demo.mp3" } ``` @@ -169,7 +170,7 @@ The return code is 200 if the file is generated. The message body will contain a Sample `curl` command: ```bash -$ curl -X POST -H "x-ha-access: YOUR_PASSWORD" \ +$ curl -X POST -H "Authorization: Bearer " \ -H "Content-Type: application/json" \ -d '{"message": "I am speaking now", "platform": "amazon_polly"}' \ http://localhost:8123/api/tts_get_url From 598547dfc56a8a6283bca76832a81f31220afab1 Mon Sep 17 00:00:00 2001 From: Dermot Duffy Date: Fri, 29 Jan 2021 05:55:07 -0800 Subject: [PATCH 05/13] Add documentation for advanced Hyperion entities (#16343) --- source/_integrations/hyperion.markdown | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/source/_integrations/hyperion.markdown b/source/_integrations/hyperion.markdown index 5daa7d17155..5d300ba53a6 100644 --- a/source/_integrations/hyperion.markdown +++ b/source/_integrations/hyperion.markdown @@ -61,6 +61,27 @@ extra effects will be available: - V4L: Use a 'USB Capture' V4L device that is configured in Hyperion. - Solid: Use a solid color only. +## Advanced Entities + +The Hyperion integration comes with a series of disabled-by-default entities for +advanced usecases. These entities expose 'raw' underlying Hyperion API components for +improved extensibility and interoperability which are particularly useful in cases where +there are multiple Hyperion server clients (of which Home Assistant is one). + +Provided advanced entities: + +- `light.[instance]_priority`: A "priority" light that acts exclusively on a given + Hyperion priority. Only color/effects (and not components) are available in this light. + Turning this light off will set a black color at this given priority rather than + turning the light off in absolute terms. +- `switch.[instance]_component_[component]`: A switch to turn on/off the relevant + underlying Hyperion component as shown on the Hyperion server `Remote Control` page + under `Component Control`. This allows fine grained control over sources (e.g. `USB Capture`) and + Hyperion functionality (e.g. `Blackbar Detection`). + +These entities may be enabled by visiting the `Integrations` page, choosing the relevant +entity and toggling `Enable entity`, followed by `Update`. + ## Examples To start Hyperion with an effect, use the following automation: From 38ad2a201db60f90f6bef69d1a3e36440cd5009f Mon Sep 17 00:00:00 2001 From: Raman Gupta <7243222+raman325@users.noreply.github.com> Date: Tue, 2 Feb 2021 09:32:00 -0600 Subject: [PATCH 06/13] Add additional info to zwave_js docs (#16382) --- source/_integrations/zwave_js.markdown | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/source/_integrations/zwave_js.markdown b/source/_integrations/zwave_js.markdown index 1a21e358f80..5dcf8df897a 100644 --- a/source/_integrations/zwave_js.markdown +++ b/source/_integrations/zwave_js.markdown @@ -29,6 +29,10 @@ Controlling your Z-Wave network with the Z-Wave JS integration is split up into 2. The Z-Wave JS integration in Home Assistant. This integration connects to the Z-Wave JS Server to retrieve the info from your Z-Wave network. +### Supervisor managed installation + +- The official Z-Wave JS add-on installed available from the add-on store. + ### Core installation - The Z-Wave JS Server installed and running in your network. @@ -50,6 +54,11 @@ Click on the `+` sign to add an integration and click on **Z-Wave JS**. After completing the configuration flow, the Z-Wave JS integration will be available. +### Secure network key + +The secure network key is set in the settings for zwave-js-server and +not in the integration configuration. + ## Current Limitations As this integration is still in the early stages there are some important limitations to be aware of. From 989eb025f1c4ace9a2ab72596357fa556b05b5bd Mon Sep 17 00:00:00 2001 From: Raman Gupta <7243222+raman325@users.noreply.github.com> Date: Tue, 2 Feb 2021 09:26:12 -0600 Subject: [PATCH 07/13] Add docs for zwave_js notification event (#16385) --- source/_integrations/zwave_js.markdown | 45 ++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) diff --git a/source/_integrations/zwave_js.markdown b/source/_integrations/zwave_js.markdown index 5dcf8df897a..3017aa98594 100644 --- a/source/_integrations/zwave_js.markdown +++ b/source/_integrations/zwave_js.markdown @@ -93,3 +93,48 @@ Valid code slots are between 1-254. | ---------------------- | -------- | ------------------------------------------------------ | | `entity_id` | no | Lock entity or list of entities to clear the usercode. | | `code_slot` | yes | The code slot to clear the usercode from. | + +## Events + +### Event `zwave_js_event` + +This event is fired whenever a [notification](https://zwave-js.github.io/node-zwave-js/#/api/node?id=quotnotificationquot) or [value notification](https://zwave-js.github.io/node-zwave-js/#/api/node?id=quotvalue-notificationquot) event is received. + +#### Notifications + +Notifications are events sent using the Notification command class. The `parameters` attribute in the example below is optional, and when it is included, the keys in the attribute will vary depending on the event. + +Notification exapmle: +```json +{ + "type": "notification", + "domain": "zwave_js", + "node_id": 1, + "home_id": "974823419", + "device_id": "ad8098fe80980974", + "label": "Keypad lock operation", + "parameters": {"userId": 1} +} +``` + +#### Value Notifications + +Value Notifications are used for stateless values, like `Central Scenes`. + +Value Notification example: +```json +{ + "type": "value_notification", + "domain": "zwave_js", + "node_id": 1, + "home_id": "974823419", + "endpoint": 0, + "device_id": "ad8098fe80980974", + "command_class": 32, + "command_class_name": "Basic", + "label": "Event value", + "property_name": "event", + "property_key_name": "some value", + "value": 255, +} +``` From 1228606e874f6bffb55c1cd380b330ed1ddad508 Mon Sep 17 00:00:00 2001 From: Erik Montnemery Date: Wed, 3 Feb 2021 16:17:37 +0100 Subject: [PATCH 08/13] Tweak wording about script level variables (#16399) --- source/_docs/scripts.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/_docs/scripts.markdown b/source/_docs/scripts.markdown index 8e62ebaf794..11d25da7caa 100644 --- a/source/_docs/scripts.markdown +++ b/source/_docs/scripts.markdown @@ -62,7 +62,7 @@ Scripts may also use a shortcut syntax for activating scenes instead of calling ## Variables -The variables command allows you to set/override variables that will be accessible by templates in actions after it (see also [script variables] for how to define locally available variables). +The variables command allows you to set/override variables that will be accessible by templates in actions after it. See also [script variables] for how to define variables accessible in the entire script. {% raw %} From 774e252a92258b58849abd42dd5889f0e264847c Mon Sep 17 00:00:00 2001 From: Franck Nijhof Date: Wed, 3 Feb 2021 17:06:14 +0100 Subject: [PATCH 09/13] 2021.2.0 Release blog (#16395) Co-authored-by: Paulus Schoutsen --- .../_posts/2021-02-03-release-20212.markdown | 444 ++++++++++++++---- source/images/blog/2021-02/badges.png | Bin 0 -> 103133 bytes source/images/blog/2021-02/tts.png | Bin 0 -> 30034 bytes 3 files changed, 346 insertions(+), 98 deletions(-) create mode 100644 source/images/blog/2021-02/badges.png create mode 100644 source/images/blog/2021-02/tts.png diff --git a/source/_posts/2021-02-03-release-20212.markdown b/source/_posts/2021-02-03-release-20212.markdown index c441bbdfeba..ddc247f744e 100644 --- a/source/_posts/2021-02-03-release-20212.markdown +++ b/source/_posts/2021-02-03-release-20212.markdown @@ -1,8 +1,8 @@ --- layout: post -title: "2021.2: Beta release notes" -description: "These are the beta release notes for Home Assistant Core 2021.2." -date: 2021-01-27 00:00:00 +title: "2021.2: Z-Wave... JS!" +description: "Z-Wave JS is here! We now have DHCP discovery, new Blueprint selectors, Cloud TTS settings and less cluttering without badges." +date: 2021-02-03 00:00:00 date_formatted: "February 3, 2021" author: Franck Nijhof author_twitter: frenck @@ -11,31 +11,40 @@ categories: Release-Notes og_image: /images/blog/2021-02/social.png --- - + -These are the beta release notes for Home Assistant Core 2021.2 (and is thus a -work in progress). +Dear reader, -If you encounter any issues with the beta release, please report them on GitHub: +Usually, I try to write a small introduction that recaps the release, while +putting a bit of my view in it as well. This release, however, I'm struggling +to find the right words... -- Issues with integrations, automations and such (Core related):
- -- Issues with the frontend/Lovelace:
- -- Issues with the Supervisor:
- -- Issues with the documentation:
- +So there is DHCP discovery added, which is super nice! And some really +helpful new Blueprint selectors, tons of UI tweaks! But honestly... -Please be sure to include the beta version you are running in the issue -description (not title), so we can classify your issue correctly. +**Have you heard about Z-Wave JS?!** -Issues introduced in the beta are processed with priority. +Well, out of nowhere, a huge bunch of developers came together this month and +spat out a completely new, full-blown, fast, slick, sexy, complete, Z-Wave +integration! 🤯 +So, thanks guys! An achievement beyond words, really; You all rock ❤️ + +Enjoy the release! + +../Frenck + +- [Erik Montnemery joins Nabu Casa](#erik-montnemery-joins-nabu-casa) - [Python 3.7 dropped, Python 3.9 supported](#python-37-dropped-python-39-supported) - [Z-Wave JS](#z-wave-js) + - [Current state of Z-Wave JS](#current-state-of-z-wave-js) + - [Thanks to all](#thanks-to-all) + - [What about the old Z-Wave integration?](#what-about-the-old-z-wave-integration) + - [What about the OpenZWave beta integration?](#what-about-the-openzwave-beta-integration) +- [No more badges in auto generated dashboards](#no-more-badges-in-auto-generated-dashboards) - [DHCP Discovery](#dhcp-discovery) - [New Blueprint selectors](#new-blueprint-selectors) +- [Cloud Text to Speech settings](#cloud-text-to-speech-settings) - [Other noteworthy changes](#other-noteworthy-changes) - [New Integrations](#new-integrations) - [New Platforms](#new-platforms) @@ -45,6 +54,17 @@ Issues introduced in the beta are processed with priority. - [Farewell to the following](#farewell-to-the-following) - [All changes](#all-changes) +## Erik Montnemery joins Nabu Casa + +Today, we are proud to announce that Erik Montnemery has joined Nabu Casa +to work full-time on the Home Assistant project. + +Some of you might know Erik better by his GitHub handle: [@emontnemery], or +by one of the integrations he works on: [Cast](/integrations/cast), +[Tasmota](/integrations/tasmota) and [MQTT](/integrations/mqtt)! + +We are excited to have you aboard Erik! Welcome! + ## Python 3.7 dropped, Python 3.9 supported Support for Python 3.7 has been removed, raising the minimum Python version @@ -52,7 +72,7 @@ you need to run Home Assistant Core to Python 3.8. Python 3.7 was already deprecated since Home Assistant Core 0.116.0. This is only a concern if you are running Home Assistant Core directly on -Python. if you run Home Assistant OS, Supervised or Container, you don’t have +Python. If you run Home Assistant OS, Supervised or Container, you don’t have to worry about this, as the Home Assistant project takes care of this for you. However, say hello to: Python 3.9. As of this release, Python 3.9 is fully @@ -60,30 +80,143 @@ supported and tested. ## Z-Wave JS - +- [@raman325] +- [@robertsLando] -Long story short: You are not going to believe this, but a complete new, -full blown, integration was created from nothing in just a month! +Yes, that is an awful lot of people! Amazing how this all came together +and incredible work! -Z-Wave JS is here! +[@AlCalzone]: https://github.com/AlCalzone +[@itewk]: https://github.com/itewk +[@jcam]: https://github.com/jcam +[@kpine]: https://github.com/kpin +[@Michsior14]: https://github.com/Mchsior14 +[@robertsLando]: http://github.com/robertsLando + +### What about the old Z-Wave integration? + +The old [`zwave`](/integrations/zwave) integration has been based on +OpenZWave 1.4, which is really old and does not get any upstream updates +anymore. This also means that it is hard for us to keep it in a working state +for the upcoming future. + +Therefore, as of today, the old Z-Wave is marked as being **deprecated**. + +If one is starting with Home Assistant and Z-Wave, the `zwave` integration is +no longer recommended. For existing users, we recommend migrating to the +[Z-Wave JS integration](/integrations/zwave_js). However, don't panic, +`zwave` is deprecated but not removed yet. We currently have no plans for +removing it, unless it can no longer be made to be build for the +latest Python + +### What about the OpenZWave beta integration? + +Over a year ago, Home Assistant started working on the +[OpenZWave integration](/integrations/ozw). Based on OpenZWave 1.6 and the +OZW daemon, using MQTT as a transport. This project was promising and something +we put a lot of time and effort in. + +Unfortunately, the OpenZWave project itself became a bit staler as most +of the upstream development is done by a single person: +Justin Hammond (Fishwaldo). + +Quite a few people were worried about the lesser activity on OpenZWave. +Justin [has responded on our forum][fishwaldo] on what is happening in his life +and it is sad to read how many people have personally impacted him negatively. + +> Is OZW Dead - No. I’ll tinker with it, I’ll make changes as time allows, +> but it will be at my own pace, to scratch my own itches now. + +Let us be straight here: OpenZWave is an 11 year-old project, which is used +by an incredible amount of systems (besides Home Assistant) in this world, +with an even greater track record. So: + +**Thank you Justin for all you have done in all those years!** + +The team that was working on the OZW integration have shifted their focus to +the new Z-Wave JS integration. We don't think the OpenZWave integration will +make it out of beta. We recommend Home Assistant users migrate to the +Z-Wave JS integration. + +[fishwaldo]: https://community.home-assistant.io/t/can-we-revisit-the-move-to-qt-openzwave/262612/140 + +## No more badges in auto generated dashboards + +If you are using an auto generated Lovelace dashboard, you probably always had +a ton of badges on the top of your dashboard. If there are just a few it works, +but as more start to appear, it soon becomes cluttered. + +