From 72c95d56a57a4c80897205bf99d8360ab0ee43b5 Mon Sep 17 00:00:00 2001 From: Patrick Easters Date: Wed, 7 Aug 2019 16:09:29 -0400 Subject: [PATCH 01/72] Fix typo for Fortinet Developer Network URL (#10073) --- source/_components/fortios.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/_components/fortios.markdown b/source/_components/fortios.markdown index 404f369cc8e..4ec9a0de4c0 100644 --- a/source/_components/fortios.markdown +++ b/source/_components/fortios.markdown @@ -31,7 +31,7 @@ host: required: true type: string token: - description: "See [Fortinet Developer Network](https://fndn.fortinet.com) for how to create an API token. Remember this integration only needs read access to a FortiGate, so configure the API user to only to have limited and read-only access." + description: "See [Fortinet Developer Network](https://fndn.fortinet.net) for how to create an API token. Remember this integration only needs read access to a FortiGate, so configure the API user to only to have limited and read-only access." required: true type: string verify_ssl: From e1afd9fb029c0729b3b775bae4fc56acda8d31ce Mon Sep 17 00:00:00 2001 From: corneels <18464324+corneels@users.noreply.github.com> Date: Thu, 8 Aug 2019 17:12:36 +1000 Subject: [PATCH 02/72] Remove password requirement from documentation (#10082) With a recent change Google Passwords are no longer required. https://github.com/home-assistant/home-assistant/pull/25316 Removed reference to password requirement from documentation. --- source/_components/google_maps.markdown | 4 ---- 1 file changed, 4 deletions(-) diff --git a/source/_components/google_maps.markdown b/source/_components/google_maps.markdown index b6a7dc4d694..15ed3d36da1 100644 --- a/source/_components/google_maps.markdown +++ b/source/_components/google_maps.markdown @@ -42,10 +42,6 @@ username: description: The email address for the Google account that has access to your shared location. required: true type: string -password: - description: The password for your given username. - required: true - type: string max_gps_accuracy: description: Sometimes Google Maps can report GPS locations with a very low accuracy (few kilometers). That can trigger false zoning. Using this parameter, you can filter these false GPS reports. The number has to be in meters. For example, if you put 200 only GPS reports with an accuracy under 200 will be taken into account - Defaults to 100km if not specified. required: false From 0b0a9cee8f08a4995b47a04cf79f4f5d23b22218 Mon Sep 17 00:00:00 2001 From: Glenn Morrison Date: Thu, 8 Aug 2019 02:13:45 -0500 Subject: [PATCH 03/72] config example incorrect (#10083) changed ip_address to host as in docs below --- source/_components/apache_kafka.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/_components/apache_kafka.markdown b/source/_components/apache_kafka.markdown index 7169c51bd3e..9442b8613df 100644 --- a/source/_components/apache_kafka.markdown +++ b/source/_components/apache_kafka.markdown @@ -18,7 +18,7 @@ To use the `apache_kafka` integration in your installation, add the following to ```yaml apache_kafka: - ip_address: localhost + host: localhost port: 9092 topic: home_assistant_1 ``` From cb9fc9873daaec04732fc9f320a146f359234c87 Mon Sep 17 00:00:00 2001 From: michaeldavie Date: Thu, 8 Aug 2019 03:21:49 -0400 Subject: [PATCH 04/72] Typo in environment_canada (#10080) --- source/_components/environment_canada.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/_components/environment_canada.markdown b/source/_components/environment_canada.markdown index 8b07398d502..1a230d56c52 100644 --- a/source/_components/environment_canada.markdown +++ b/source/_components/environment_canada.markdown @@ -144,7 +144,7 @@ scan_interval: default: 600 {% endconfiguration %} -###Alert TTS Script +### Alert TTS Script If you would like to have alerts announced via a text-to-speech service, you can use a script similar to the following: From 922114f5bb83b10c612feabe1aede0d1d4ecbaa0 Mon Sep 17 00:00:00 2001 From: Greg <34967045+gtdiehl@users.noreply.github.com> Date: Thu, 8 Aug 2019 00:36:24 -0700 Subject: [PATCH 05/72] Update initial HA Release from 0.96 to 0.97 (#10078) Sensor Integration for the Rainforest Eagle-200 did not make it into 0.96. The initial release was 0.97. --- source/_components/rainforest_eagle.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/_components/rainforest_eagle.markdown b/source/_components/rainforest_eagle.markdown index 99414c1e55b..d4b50ec4198 100644 --- a/source/_components/rainforest_eagle.markdown +++ b/source/_components/rainforest_eagle.markdown @@ -5,7 +5,7 @@ logo: rainforest_automation_logo.png ha_category: - Energy - Sensor -ha_release: 0.96 +ha_release: 0.97 ha_iot_class: Local Polling --- From a6a687c360e3f86776679d95afbfbcee757b1e9c Mon Sep 17 00:00:00 2001 From: bigwoof Date: Thu, 8 Aug 2019 18:05:29 +1000 Subject: [PATCH 06/72] remove password from configuration options (#10076) Update documentation to reflect the recent change in 0.97.0 release From 382b852f9aa799edc13ab262486923578e4d2f29 Mon Sep 17 00:00:00 2001 From: Andrea Donno Date: Thu, 8 Aug 2019 10:35:11 +0200 Subject: [PATCH 07/72] replace address with state_address (#10084) as per 0.97 release notes xKNX climate now uses : state_address instead of address --- source/_components/sensor.knx.markdown | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/source/_components/sensor.knx.markdown b/source/_components/sensor.knx.markdown index dbd09b75cff..bce9e43f2b3 100644 --- a/source/_components/sensor.knx.markdown +++ b/source/_components/sensor.knx.markdown @@ -21,11 +21,11 @@ To use your KNX sensor in your installation, add the following lines to your `co sensor: - platform: knx name: Heating.Valve1 - address: '2/0/0' + state_address: '2/0/0' ``` {% configuration %} -address: +state_address: description: KNX group address of the sensor. required: true type: string @@ -79,10 +79,10 @@ type: sensor: - platform: knx name: Heating.Valve1 - address: '2/0/0' + state_address: '2/0/0' type: 'percent' - platform: knx name: Kitchen.Temperature - address: '6/2/1' + state_address: '6/2/1' type: 'temperature' ``` From ff05cc5e5a3a6a4eaef3b9c1c1c2eddaeac7e974 Mon Sep 17 00:00:00 2001 From: SNoof85 Date: Thu, 8 Aug 2019 16:34:53 +0200 Subject: [PATCH 08/72] Missing web links (#10063) --- source/_components/darksky.markdown | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/source/_components/darksky.markdown b/source/_components/darksky.markdown index c7ae5bca389..3c8f07eae5a 100644 --- a/source/_components/darksky.markdown +++ b/source/_components/darksky.markdown @@ -84,9 +84,9 @@ monitored_conditions: summary: description: A human-readable text summary. icon: - description: A machine-readable text summary, suitable for selecting an icon for display. See [Dark Sky API documentation][] for the list of possible values. + description: A machine-readable text summary, suitable for selecting an icon for display. See [Dark Sky API documentation](https://darksky.net/dev/docs) for the list of possible values. precip_type: - description: The type of precipitation occurring at the given time. If `precip_intensity` is zero, then this property will be `unknown`. See [Dark Sky API documentation][] for the list of possible values. + description: The type of precipitation occurring at the given time. If `precip_intensity` is zero, then this property will be `unknown`. See [Dark Sky API documentation](https://darksky.net/dev/docs) for the list of possible values. precip_intensity: description: The intensity of precipitation occurring at the given time. This value is conditional on probability (that is, assuming any precipitation occurs at all). precip_probability: @@ -238,7 +238,4 @@ All language options are described in this table that you can use for the dark s While the platform is called "darksky" the sensors will show up in Home Assistant as "dark_sky" (eg: sensor.dark_sky_summary). -More details about the API are available in the [Dark Sky API documentation][]. - -[Dark Sky API documentation]: https://darksky.net/dev/docs - +More details about the API are available in the [Dark Sky API documentation](https://darksky.net/dev/docs). From e8a69322a883877f238866515be65e627ce0c4e1 Mon Sep 17 00:00:00 2001 From: cogneato Date: Wed, 7 Aug 2019 17:38:49 -0600 Subject: [PATCH 09/72] fix google calendar docs link google calendar docs linking to wrong page --- source/_posts/2019-08-07-release-97.markdown | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/source/_posts/2019-08-07-release-97.markdown b/source/_posts/2019-08-07-release-97.markdown index 110ab89d05c..9c19cf6b369 100644 --- a/source/_posts/2019-08-07-release-97.markdown +++ b/source/_posts/2019-08-07-release-97.markdown @@ -95,7 +95,7 @@ Experiencing issues introduced by this release? Please report them in our [issue - **Z-Wave** - Improve handling of Z-Wave config entry vs yaml config. If a Z-Wave `network_key` is specified in configuration.yaml it will override a `network_key` specified in the Z-Wave config entry. ([@cgarwood] - [#25112]) ([zwave docs]) - **Unifi** - Unifi Device tracker is now part of config entry. After initial import the unifi device tracker configuration is no longer needed. If configuring SSID filter or detection time you will need to use the new configuration from UniFi. See UniFi component documentation for details. ([@Kane610] - [#24367]) ([unifi docs]) - **Ecobee** - Ecobee presets now represent the different Ecobee comfort settings. Selectable by name instead of unknown ID. ([@balloob] - PR link todo) -- **Calendar** - Rewrite calendar component - The calendar integration has been rewritten to follow our current standards and is mostly non breaking. The reset (clean up) of state attributes upon an event time passing has been removed, though. Attributes are no longer set to an arbitrary default value, and will now keep the attributes representing the last event. With this change, automations that rely on state attributes getting reset will need to be updated. All platforms have been converted. - ([@MartinHjelmare] - [#24950]) ([caldav docs]) ([calendar docs]) ([demo docs]) ([google docs]) ([todoist docs]) +- **Calendar** - Rewrite calendar component - The calendar integration has been rewritten to follow our current standards and is mostly non breaking. The reset (clean up) of state attributes upon an event time passing has been removed, though. Attributes are no longer set to an arbitrary default value, and will now keep the attributes representing the last event. With this change, automations that rely on state attributes getting reset will need to be updated. All platforms have been converted. - ([@MartinHjelmare] - [#24950]) ([caldav docs]) ([calendar docs]) ([demo docs]) ([google cal docs]) ([todoist docs]) - **SyncThru** - The monitored_conditions configuration option has been removed. All available monitored conditions will be used by default. Users that have been using the monitored_conditions option need to remove it from the syncthru section in configuration.yaml. ([@nielstron] - [#25052]) ([syncthru docs]) - **KNX** - Updates the knx component to use xknx 0.11.1 . This introduces several new features and bugfixes. For a complete list see: https://github.com/XKNX/xknx/releases/tag/0.11.0 ([@farmio] - [#24738]) ([knx docs]) - `scene:` `scene_number` is now 1 indexed according to KNX standards. Previously it was 0 based. Please add 1 to your already configured scene numbers (`scene_number: 5` becomes `scene_number: 6`). @@ -695,7 +695,7 @@ Experiencing issues introduced by this release? Please report them in our [issue [fortigate docs]: /components/fortigate/ [fortios docs]: /components/fortios/ [geniushub docs]: /components/geniushub/ -[google docs]: /components/google/ +[google cal docs]: /components/calendar.google/ [google_assistant docs]: /components/google_assistant/ [google_maps docs]: /components/google_maps/ [google_travel_time docs]: /components/google_travel_time/ From fefb36c058453b1e881228e1f500eadce4c5a595 Mon Sep 17 00:00:00 2001 From: Santobert Date: Thu, 8 Aug 2019 20:33:10 +0200 Subject: [PATCH 10/72] replace operating_mode with hvac_mode (#10075) --- source/_components/zwave.markdown | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/source/_components/zwave.markdown b/source/_components/zwave.markdown index 106a95d6c20..fd69e0c8045 100644 --- a/source/_components/zwave.markdown +++ b/source/_components/zwave.markdown @@ -83,10 +83,10 @@ automation: - platform: time at: "20:00:00" action: - - service: climate.set_operation_mode + - service: climate.set_hvac_mode data: entity_id: climate.remotec_zxt120_heating_1_id - operation_mode: Heat + hvac_mode: Heat - service: climate.set_temperature data: entity_id: climate.remotec_zxt120_heating_1_39 @@ -102,10 +102,10 @@ automation: - platform: time at: "21:00:00" action: - - service: climate.set_operation_mode + - service: climate.set_hvac_mode data: entity_id: climate.remotec_zxt120_heating_1_id - operation_mode: 'Off' + hvac_mode: 'Off' ``` **Note:** In the example above, the word `Off` is encased in single quotes to be valid YAML. @@ -117,7 +117,7 @@ A simple way to test if your Z-Wave climate device is working is to use Date: Thu, 8 Aug 2019 11:34:29 -0700 Subject: [PATCH 11/72] Scene support for Zooz Z-Wave Switches (#10067) Added instructions on how to update the switch and openzwave config file to add scene support for Zooz Zen26 & Zen27 switches. --- source/_docs/z-wave/device-specific.markdown | 155 +++++++++++++++++++ 1 file changed, 155 insertions(+) diff --git a/source/_docs/z-wave/device-specific.markdown b/source/_docs/z-wave/device-specific.markdown index 59b9ff49900..6ed30e45d2c 100644 --- a/source/_docs/z-wave/device-specific.markdown +++ b/source/_docs/z-wave/device-specific.markdown @@ -191,6 +191,161 @@ Triple tap on|2|4 5x tap off|1|6 5x tap on|2|6 +### Zooz Scene Capable On/Off and Dimmer Wall Switches (Zen26 & Zen27 - Firmware 2.0+) + +Many Zooz Zen26/27 switches that have been sold do not have firmware 2.0+. Contact Zooz to obtain the over the air firmware update instructions and new user manual for the switches. + +Once the firmware is updated, the the new configuration paramters will have to be added to the `zwcfg` file. Replace the existing `COMMAND_CLASS_CONFIGURATION` with the one of the following options (depending on your model of switch): + +Zen26 (On/Off Switch): +```xml + + + + Normal mode: Upper paddle turns the light on, lower paddle turns the light off. Reverse will reverse those functions. Any will toggle the light regardless of which button is pushed. + + + + + + LED Indication light function. Normal has the LED Indication on when the switch is off, off when the switch is on. + + + + + + + Enable or disable the auto turn-off timer function. + + + + + Time, in seconds, for auto-off timer delay. 60 (default). + + + Enable or disable the auto turn-on timer function. + + + + + Time, in minutes, for auto-on timer delay. 60 (default). + + + Status after power on after power failure. OFF will always turn light off. ON will always turn light on. Restore will remember the latest state and restore that state. + + + + + + Enable or disable scene control functionality for quick double tap triggers. + + + + + Enable or disable local on/off control. If enabled, you'll only be able to control the connected light via Z-Wave. + + + + +``` + +Zen27 (Dimmer): +```xml + + + + Normal mode: Upper paddle turns the light on, lower paddle turns the light off. Reverse will reverse those functions. Any will toggle the light regardless of which button is pushed. + + + + + + LED Indication light function. Normal has the LED Indication on when the switch is off, off when the switch is on. + + + + + + + + + + + Time, in minutes, for auto-off timer delay. + + + + + + + Time, in minutes, for auto-off timer delay. + + + Status after power on after power failure. OFF will always turn light off. ON will always turn light on. Restore will remember the latest state and restore that state. + + + + + + Adjust the ramp rate for your dimmer (fade-in / fade-out effect for on / off operation). Values correspond to the number of seconds it take for the dimmer to reach full brightness or turn off when operated manually. + + + Set the minimum brightness level for your dimmer. You won't be able to dim the light below the set value. + + + Set the maximum brightness level for your dimmer. You won't be able to add brightness to the light beyond the set value. Note: if Parameter 12 is set to value "Full", Parameter 11 is automatically disabled. + + + Double Tap action. When set to Full, turns light on to 100%. If set to Maximum Level, turns light on to % set in Parameter 11. + + + + + Enable or disable scene control functionality for quick double tap triggers. + + + + + Enable the double tap or disable the double tap function and assign brightness level to single tap. + + + + + + Enable or disable local on/off control. If enabled, light will only be able to be controlled via Z-Wave. + + + + +``` + +For Zooz switches, you'll need to update (or possibly add) the `COMMAND_CLASS_CENTRAL_SCENE` for each node in your `zwcfg` file with the following: +```xml + + + + + + +``` + +Go to the Z-Wave Network Management section in the Home Assistant Configuration, select the node which has just been updated and enable the scene support configuration paramter. + +Once this is complete, you should see the following `zwave.scene_activated` events: + +**Action**|**scene\_id**|**scene\_data** +:-----:|:-----:|:-----: +Single tap off|1|7680 +Single tap on|2|7680 +Double tap off|1|7860 +Double tap on|2|7860 +Triple tap off|1|7920 +Triple tap on|2|7920 +4x tap off|1|7980 +4x tap on|2|7980 +5x tap off|1|8040 +5x tap on|2|8040 + ### HomeSeer Switches For the HomeSeer devices specifically, you may need to update the `COMMAND_CLASS_CENTRAL_SCENE` for each node in your `zwcfg` file with the following: From 3b597bb3bd523f2e0f856b3f24ee49abe5ce789a Mon Sep 17 00:00:00 2001 From: Matthias Alphart Date: Tue, 6 Aug 2019 12:33:24 +0200 Subject: [PATCH 12/72] KNX component updates for xknx 0.11 (#9682) * xknx 0.11 * update for xknx 0.11.1 - state_address instead of address - sync_state option * :pencil2: Tweak - Please check if this config variable `device_class` belongs here. For now it breaks netlify with building. * copy and past error -.- * even more typos * :pencil2: Tweak * :pencil2: Tweak * :pencil2: Tweaks * :pencil2: Tweak * :pencil2: Tweak * :pencil2: Tweak * :pencil2: Tweak * :pencil2: Tweaks * :pencil2: Tweak * :pencil2: Tweak * :pencil2: Tweak * :pencil2: Tweak * :pencil2: Tweak * :pencil2: Tweak * :pencil2: Tweak * :pencil2: Tweak * :pencil2: Tweak * :pencil2: Tweak * :pencil2: Tweak --- source/_components/binary_sensor.knx.markdown | 21 +++- source/_components/climate.knx.markdown | 42 ++++--- source/_components/cover.knx.markdown | 9 +- source/_components/knx.markdown | 29 +++-- source/_components/light.knx.markdown | 18 ++- source/_components/notify.knx.markdown | 8 +- source/_components/scene.knx.markdown | 12 +- source/_components/sensor.knx.markdown | 106 ++++++++++++------ source/_components/switch.knx.markdown | 10 +- 9 files changed, 172 insertions(+), 83 deletions(-) diff --git a/source/_components/binary_sensor.knx.markdown b/source/_components/binary_sensor.knx.markdown index 34148af2a5a..2af616f8fd4 100644 --- a/source/_components/binary_sensor.knx.markdown +++ b/source/_components/binary_sensor.knx.markdown @@ -5,11 +5,19 @@ logo: knx.png ha_category: - Binary Sensor ha_release: 0.24 -ha_iot_class: Local Polling +ha_iot_class: Local Push --- +
+ +The `knx` integration must be configured correctly to use this integration, see [KNX Integration](/components/knx). + +
+ The `knx` sensor platform allows you to monitor [KNX](http://www.knx.org) binary sensors. +Binary sensors are read-only. To write to the knx-bus configure an exposure [KNX Integration - Expose](/components/knx/#exposing-sensor-values-or-time-to-knx-bus). + ## Configuration The `knx` integration must be configured correctly, see [KNX Integration](/components/knx). @@ -18,11 +26,11 @@ The `knx` integration must be configured correctly, see [KNX Integration](/compo # Example configuration.yaml entry binary_sensor: - platform: knx - address: '6/0/2' + state_address: '6/0/2' ``` {% configuration %} -address: +state_address: description: KNX group address of the binary sensor. required: true type: string @@ -30,6 +38,11 @@ name: description: A name for this device used within Home Assistant. required: false type: string +sync_state: + description: Actively read the value from the bus. If `False` no GroupValueRead telegrams will be sent to the bus. + required: false + type: boolean + default: True device_class: description: Sets the [class of the device](/components/binary_sensor/), changing the device state and icon that is displayed on the frontend. required: false @@ -54,7 +67,7 @@ You can also attach actions to binary sensors (e.g., to switch on a light when a binary_sensor: - platform: knx name: Livingroom.3Switch3 - address: '5/0/26' + state_address: '5/0/26' automation: - counter: 1 hook: 'on' diff --git a/source/_components/climate.knx.markdown b/source/_components/climate.knx.markdown index 9abcffc5443..a0d63bac21b 100644 --- a/source/_components/climate.knx.markdown +++ b/source/_components/climate.knx.markdown @@ -5,12 +5,16 @@ logo: knx.png ha_category: - Climate ha_release: 0.25 -ha_iot_class: Local Polling +ha_iot_class: Local Push --- -The `knx` climate platform is used as in interface with KNX thermostats. +
+ +The `knx` integration must be configured correctly to use this integration, see [KNX Integration](/components/knx). -The `knx` integration must be configured correctly, see [KNX Integration](/components/knx). +
+ +The `knx` climate platform is used as an interface to KNX thermostats and room controllers. To use your KNX thermostats in your installation, add the following lines to your `configuration.yaml` file: @@ -24,6 +28,7 @@ climate: setpoint_shift_state_address: '5/1/3' target_temperature_state_address: '5/1/4' operation_mode_address: '5/1/5' + operation_mode_state_address: '5/1/6' ``` Alternatively, if your device has dedicated binary group addresses for frost/night/comfort mode: @@ -40,10 +45,11 @@ climate: operation_mode_frost_protection_address: '5/1/5' operation_mode_night_address: '5/1/6' operation_mode_comfort_address: '5/1/7' + operation_mode_state_address: '5/1/8' ``` If your device doesn't support setpoint_shift calculations (i.e. if you don't provide a `setpoint_shift_address` value) please set the `min_temp` and `max_temp` -attributes of the climate device to avoid issues with increasing the temperature in the frontend. Please do also make sure to add the `target_temperature_address` +attributes of the climate device to avoid issues with exceeding valid temperature values in the frontend. Please do also make sure to add the `target_temperature_address` to the config in this case.: ```yaml @@ -57,11 +63,13 @@ climate: operation_mode_frost_protection_address: '5/1/5' operation_mode_night_address: '5/1/6' operation_mode_comfort_address: '5/1/7' + operation_mode_state_address: '5/1/8' min_temp: 7.0 max_temp: 32.0 ``` `operation_mode_frost_protection_address` / `operation_mode_night_address` / `operation_mode_comfort_address` are not necessary if `operation_mode_address` is specified. +If the actor doesn't support explicit state communication objects the *_state_address can be configured with the same group address as the writeable *_address. The Read-Flag for the *_state_address communication object has to be set in ETS to support initial reading eg. when starting home-assistant. The following values are valid for the `hvac_mode` attribute: @@ -86,27 +94,27 @@ name: default: KNX Climate type: string temperature_address: - description: KNX group address for reading current room temperature from KNX bus. + description: KNX group address for reading current room temperature from KNX bus. *DPT 9.001* required: true type: string target_temperature_address: - description: KNX group address for setting target temperature. + description: KNX group address for setting target temperature. *DPT 9.001* required: false type: string target_temperature_state_address: - description: KNX group address for reading current target temperature from KNX bus. + description: KNX group address for reading current target temperature from KNX bus. *DPT 9.001* required: true type: string setpoint_shift_address: - description: KNX address for setpoint_shift. + description: KNX address for setpoint_shift. *DPT 6.010* required: false type: string setpoint_shift_state_address: - description: Explicit KNX address for reading setpoint_shift. + description: KNX address for reading setpoint_shift. *DPT 6.010* required: false type: string setpoint_shift_step: - description: Defines for step size in Kelvin for each step of setpoint_shift. + description: Defines the step size in Kelvin for each step of setpoint_shift. required: false default: 0.5 type: float @@ -114,18 +122,18 @@ setpoint_shift_min: description: Minimum value of setpoint shift. required: false default: -6 - type: integer + type: float setpoint_shift_max: description: Maximum value of setpoint shift. required: false default: 6 - type: integer + type: float operation_mode_address: - description: KNX address for operation mode (Frost protection/night/comfort). + description: KNX address for setting operation mode (Frost protection/night/comfort). *DPT 20.102* required: false type: string operation_mode_state_address: - description: Explicit KNX address for reading operation mode. + description: KNX address for reading operation mode. *DPT 20.102* required: false type: string controller_status_address: @@ -133,15 +141,15 @@ controller_status_address: required: false type: string controller_status_state_address: - description: Explicit KNX address for reading HVAC controller status. + description: KNX address for reading HVAC controller status. required: false type: string controller_mode_address: - description: KNX address for handling controller modes. + description: KNX address for setting HVAC controller modes. *DPT 20.105* required: false type: string controller_mode_state_address: - description: Explicit KNX address for reading HVAC Control Mode. + description: KNX address for reading HVAC Control Mode. *DPT 20.105* required: false type: string operation_mode_frost_protection_address: diff --git a/source/_components/cover.knx.markdown b/source/_components/cover.knx.markdown index e8f48ef6ca7..ff25c2eef65 100644 --- a/source/_components/cover.knx.markdown +++ b/source/_components/cover.knx.markdown @@ -5,13 +5,16 @@ logo: knx.png ha_category: - Cover ha_release: 0.48 -ha_iot_class: Local Polling +ha_iot_class: Local Push --- +
-The `knx` cover platform is used as in interface with KNX covers. +The `knx` integration must be configured correctly to use this integration, see [KNX Integration](/components/knx). -The `knx` integration must be configured correctly, see [KNX Integration](/components/knx). +
+ +The `knx` cover platform is used as an interface to KNX covers. To use your KNX covers in your installation, add the following to your `configuration.yaml` file: diff --git a/source/_components/knx.markdown b/source/_components/knx.markdown index 0cbabc45cfe..68cc868899d 100644 --- a/source/_components/knx.markdown +++ b/source/_components/knx.markdown @@ -5,17 +5,15 @@ logo: knx.png ha_category: - Hub ha_release: 0.24 -ha_iot_class: Local Polling +ha_iot_class: Local Push --- The [KNX](https://www.knx.org) integration for Home Assistant allows you to connect to a KNX/IP devices. -The integration requires a local KNX/IP interface like the [Weinzierl 730](https://www.weinzierl.de/index.php/en/all-knx/knx-devices-en/produktarchiv-en/knx-ip-interface-730-en). Through this, it will send and receive commands to and from other devices to the KNX bus. - -
- - Please note, the `knx` platform does not support Windows. +The integration requires a local KNX/IP interface or a KNX/IP router. Through this, it will send and receive commands to and from other devices to the KNX bus. +
+Please note, the `knx` platform does not support Windows.
There is currently support for the following device types within Home Assistant: @@ -69,19 +67,21 @@ knx: host: description: Host of the KNX/IP tunneling device. type: string + required: true port: description: Port of the KNX/IP tunneling device. type: integer + required: false local_ip: description: IP of the local interface. type: string + required: false {% endconfiguration %} Explicit connection to a KNX/IP routing device: ```yaml knx: - config_file: '/path/to/xknx.yaml' routing: local_ip: '192.168.2.109' ``` @@ -90,6 +90,7 @@ knx: local_ip: description: The local IP address of interface (which should be used for multicasting). type: string + required: true {% endconfiguration %} ```yaml @@ -117,7 +118,7 @@ state_updater: ### Services -In order to directly interact with the KNX bus, you can now use the following service: +In order to directly interact with the KNX bus, you can use the following service: ``` Domain: knx @@ -145,6 +146,12 @@ knx: - type: 'temperature' entity_id: 'sensor.owm_temperature' address: '0/0/2' + - type: 'string' + address: '0/6/4' + entity_id: "sensor.owm_weather" + - type: 'binary' + entity_id: 'binary_sensor.kitchen_window' + address: '0/6/5' - type: 'time' address: '0/0/1' - type: 'datetime' @@ -153,12 +160,14 @@ knx: {% configuration %} type: - description: Type of the exposed value. Either time or datetime or any supported type of [KNX Sensor](/components/sensor.knx/) (e.g., "temperature" or "humidity"). + description: Type of the exposed value. Either 'binary', 'time', 'date', 'datetime' or any supported type of [KNX Sensor](/components/sensor.knx/) (e.g., "temperature" or "humidity"). type: string + required: true entity_id: - description: Entity id of the HASS integration to be exposed. Not necessary for types time and datetime. + description: Entity id to be exposed. Not needed for types time, date and datetime. type: string address: description: KNX group address. type: string + required: true {% endconfiguration %} diff --git a/source/_components/light.knx.markdown b/source/_components/light.knx.markdown index 04372579312..f97ee085522 100644 --- a/source/_components/light.knx.markdown +++ b/source/_components/light.knx.markdown @@ -5,9 +5,15 @@ logo: knx.png ha_category: - Light ha_release: 0.44 -ha_iot_class: Local Polling +ha_iot_class: Local Push --- +
+ +The `knx` integration must be configured correctly to use this integration, see [KNX Integration](/components/knx). + +
+ The `knx light` integration is used as an interface to control knx actuators for lighting applications such as: - switching actuators @@ -15,8 +21,6 @@ The `knx light` integration is used as an interface to control knx actuators for - LED controllers - DALI gateways -The `knx` integration must be configured correctly to use this component, see [KNX Component](/components/knx). - ## Configuration To use your KNX light in your installation, add the following lines to your `configuration.yaml` file: @@ -57,6 +61,14 @@ color_state_address: description: KNX group address for retrieving the RGB color of the light. *DPT 232.600* required: false type: string +rgbw_address: + description: KNX group address for setting the RGBW color of the light. *DPT 251.600* + required: false + type: string +rgbw_state_address: + description: KNX group address for retrieving the RGBW color of the light. *DPT 251.600* + required: false + type: string color_temperature_address: description: KNX group address for setting the color temperature of the light. *DPT 5.001 or 7.600 based on color_temperature_mode* required: false diff --git a/source/_components/notify.knx.markdown b/source/_components/notify.knx.markdown index 2f3572ba211..e01f5a874a5 100644 --- a/source/_components/notify.knx.markdown +++ b/source/_components/notify.knx.markdown @@ -8,9 +8,13 @@ ha_release: 0.53 ha_iot_class: Local Push --- -The `knx` notify platform allows you to send notifications to [KNX](http://www.knx.org) devices. +
+ +The `knx` integration must be configured correctly to use this integration, see [KNX Integration](/components/knx). -The `knx` integration must be configured correctly, see [KNX Component](/components/knx). +
+ +The `knx` notify platform allows you to send notifications to [KNX](http://www.knx.org) devices. ## Configuration diff --git a/source/_components/scene.knx.markdown b/source/_components/scene.knx.markdown index 0ee4c644c9b..6a05b862f57 100644 --- a/source/_components/scene.knx.markdown +++ b/source/_components/scene.knx.markdown @@ -7,9 +7,13 @@ ha_category: ha_release: 0.63 --- -The `knx` scenes platform allows you to trigger [KNX](http://www.knx.org) scenes. +
+ +The `knx` integration must be configured correctly to use this integration, see [KNX Integration](/components/knx). -The `knx` integration must be configured correctly, see [KNX Component](/components/knx). +
+ +The `knx` scenes platform allows you to trigger [KNX](http://www.knx.org) scenes. ## Configuration @@ -26,11 +30,11 @@ scene: {% configuration %} address: - description: KNX group address of the binary sensor. + description: KNX group address for the scene. required: true type: string scene_number: - description: Zero-indexed KNX scene number to be activated. + description: KNX scene number to be activated. ( 1 ... 64 ) required: true type: integer name: diff --git a/source/_components/sensor.knx.markdown b/source/_components/sensor.knx.markdown index bce9e43f2b3..2432e35c78c 100644 --- a/source/_components/sensor.knx.markdown +++ b/source/_components/sensor.knx.markdown @@ -1,6 +1,6 @@ --- title: "KNX Sensor" -description: "Instructions on how to use the KNX Sensor with Home Assistant." +description: "Instructions on how to use a KNX Sensor with Home Assistant." logo: knx.png ha_category: - Sensor @@ -8,9 +8,16 @@ ha_release: 0.29 ha_iot_class: Local Push --- -The `knx` sensor platform allows you to monitor [KNX](http://www.knx.org) sensors. +
+ +The `knx` integration must be configured correctly to use this integration, see [KNX Integration](/components/knx). + +
+ +The `knx` sensor platform allows you to monitor [KNX](http://www.knx.org) sensors. + +Sensors are read-only. To write to the knx-bus configure an exposure [KNX Integration - Expose](/components/knx/#exposing-sensor-values-or-time-to-knx-bus). -The `knx` integration must be configured correctly, see [KNX Component](/components/knx). ## Configuration @@ -33,44 +40,68 @@ name: description: A name for this device used within Home Assistant. required: false type: string -type: - description: A type from the following table can be defined. The DPT of the group address should match the expected KNX DPT to be parsed correctly. +sync_state: + description: Actively read the value from the bus. If `False` no GroupValueRead telegrams will be sent to the bus. required: false + type: boolean + default: True +type: + description: A type from the following table must be defined. The DPT of the group address should match the expected KNX DPT to be parsed correctly. + required: true type: string {% endconfiguration %} -| type | unit | expected KNX DPT | -|--------------------|------|------------------| -| percent | % | 5.001 | -| pulse | | 5.010 | -| temperature | °C | 9.001 | -| humidity | % | 9.007 | -| illuminance | lx | 9.004 | -| brightness | lx | 7.013 | -| speed_ms | m/s | 9.005 | -| current | mA | 7.012 | -| voltage | mV | 9.020 | -| power | W | 14.056 | -| electric_current | A | 14.019 | -| electric_potential | V | 14.027 | -| energy | J | 14.031 | -| frequency | Hz | 14.033 | -| heatflowrate | W | 14.036 | -| phaseanglerad | rad | 14.054 | -| phaseangledeg | ° | 14.055 | -| powerfactor | | 14.057 | -| speed | m/s | 14.065 | -| enthalpy | H | 9.* | -| ppm | ppm | 9.008 | -| DPT-7 | | 7.* | -| 2byte_unsigned | | 7.* | -| DPT-9 | | 9.* | -| DPT-12 | | 12.* | -| 4byte_unsigned | | 12.* | -| DPT-13 | | 13.* | -| 4byte_signed | | 13.* | -| DPT-14 | | 14.* | -| 4byte_float | | 14.* | +| KNX DPT | type | size in byte | unit | +|--------:|--------------------|-------------:|----------------| +| 5.001 | percent | 1 | % | +| 5.003 | angle | 1 | ° | +| 5.004 | percentU8 | 1 | % | +| 5.010 | pulse | 1 | | +| 5.010 | DPT-5 | 1 | | +| 5.010 | 1byte_unsigned | 1 | | +| 6.001 | percentV8 | 1 | % | +| 6.010 | counter_pulses | 1 | counter pulses | +| 7.*** | DPT-7 | 2 | | +| 7.001 | 2byte_unsigned | 2 | pulses | +| 7.012 | current | 2 | mA | +| 7.013 | brightness | 2 | lx | +| 7.600 | color_temperature | 2 | K | +| 8.*** | DPT-8 | 2 | | +| 8.001 | 2byte_signed | 2 | pulses | +| 8.002 | delta_time_ms | 2 | ms | +| 8.005 | delta_time_sec | 2 | s | +| 8.006 | delta_time_min | 2 | min | +| 8.007 | delta_time_hrs | 2 | h | +| 8.010 | percentV16 | 2 | % | +| 8.011 | rotation_angle | 2 | ° | +| 9.* | enthalpy | 2 | H | +| 9.*** | DPT-9 | 2 | | +| 9.001 | temperature | 2 | °C | +| 9.004 | illuminance | 2 | lx | +| 9.005 | speed_ms | 2 | m/s | +| 9.007 | humidity | 2 | % | +| 9.008 | ppm | 2 | ppm | +| 9.020 | voltage | 2 | mV | +| 12.*** | DPT-12 | 4 | | +| 12.*** | 4byte_unsigned | 4 | | +| 13.*** | DPT-13 | 4 | | +| 13.*** | 4byte_signed | 4 | | +| 14.*** | DPT-14 | 4 | | +| 14.*** | 4byte_float | 4 | | +| 14.019 | electric_current | 4 | A | +| 14.027 | electric_potential | 4 | V | +| 14.031 | energy | 4 | J | +| 14.033 | frequency | 4 | Hz | +| 14.036 | heatflowrate | 4 | W | +| 14.042 | luminous_flux | 4 | lm | +| 14.054 | phaseanglerad | 4 | rad | +| 14.055 | phaseangledeg | 4 | ° | +| 14.056 | power | 4 | W | +| 14.057 | powerfactor | 4 | | +| 14.058 | pressure | 4 | Pa | +| 14.065 | speed | 4 | m/s | +| 16.000 | string | 14 | | +| 17.001 | scene_number | 1 | | ## Full example @@ -84,5 +115,6 @@ sensor: - platform: knx name: Kitchen.Temperature state_address: '6/2/1' + sync_state: False type: 'temperature' ``` diff --git a/source/_components/switch.knx.markdown b/source/_components/switch.knx.markdown index 7765c7c7059..231340dfc2b 100644 --- a/source/_components/switch.knx.markdown +++ b/source/_components/switch.knx.markdown @@ -5,12 +5,16 @@ logo: knx.png ha_category: - Switch ha_release: 0.24 -ha_iot_class: Local Polling +ha_iot_class: Local Push --- -The `knx` switch integration is used as in interface to switching actuators. +
+ +The `knx` integration must be configured correctly to use this integration, see [KNX Integration](/components/knx). -The `knx` integration must be configured correctly, see [KNX Component](/components/knx). +
+ +The `knx` switch platform is used as an interface to switching actuators. ## Configuration From 0b9fb8ed3363c6f50410bff5f418d13b258ef19c Mon Sep 17 00:00:00 2001 From: Pascal Vizeli Date: Fri, 9 Aug 2019 08:54:45 +0200 Subject: [PATCH 13/72] Update docker.markdown --- source/_docs/installation/docker.markdown | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/source/_docs/installation/docker.markdown b/source/_docs/installation/docker.markdown index 392e5bf5523..5fd8131f0cc 100644 --- a/source/_docs/installation/docker.markdown +++ b/source/_docs/installation/docker.markdown @@ -11,19 +11,19 @@ Installation with Docker is straightforward. Adjust the following command so tha ### Linux ```bash -$ docker run --init -d --name="home-assistant" -v /PATH_TO_YOUR_CONFIG:/config -v /etc/localtime:/etc/localtime:ro --net=host homeassistant/home-assistant +$ docker run --init -d --name="home-assistant" -e "TZ=America/New_York" -v /PATH_TO_YOUR_CONFIG:/config --net=host homeassistant/home-assistant ``` ### Raspberry Pi 3 (Raspbian) ```bash -$ docker run --init -d --name="home-assistant" -v /PATH_TO_YOUR_CONFIG:/config -v /etc/localtime:/etc/localtime:ro --net=host homeassistant/raspberrypi3-homeassistant +$ docker run --init -d --name="home-assistant" -e "TZ=America/New_York" -v /PATH_TO_YOUR_CONFIG:/config --net=host homeassistant/raspberrypi3-homeassistant ``` You need to replace `/PATH_TO_YOUR_CONFIG` with your path to the configuration, for example if you choose your configuration path to be `/home/pi/homeassistant`, then command would be: ```bash -$ docker run --init -d --name="home-assistant" -v /home/pi/homeassistant:/config -v /etc/localtime:/etc/localtime:ro --net=host homeassistant/raspberrypi3-homeassistant +$ docker run --init -d --name="home-assistant" -e "TZ=America/New_York" -v /home/pi/homeassistant:/config --net=host homeassistant/raspberrypi3-homeassistant ``` ### macOS @@ -33,7 +33,7 @@ When using `docker-ce` (or `boot2docker`) on macOS, you are unable to map the lo If you wish to browse directly to `http://localhost:8123` from your macOS host, meaning forward ports directly to the container, replace the `--net=host` switch with `-p 8123:8123`. More detail can be found in [the docker forums](https://forums.docker.com/t/should-docker-run-net-host-work/14215/10). ```bash -$ docker run --init -d --name="home-assistant" -v /PATH_TO_YOUR_CONFIG:/config -e "TZ=America/Los_Angeles" -p 8123:8123 homeassistant/home-assistant +$ docker run --init -d --name="home-assistant" -e "TZ=America/Los_Angeles" -v /PATH_TO_YOUR_CONFIG:/config -p 8123:8123 homeassistant/home-assistant ``` Alternatively, `docker-compose` works with any recent release of `docker-ce` on macOS. Note that (further down this page) we provide an example `docker-compose.yml` however it differs from the `docker run` example above. To make the .yml directives match, you would need to make _two_ changes: first add the equivalent `ports:` directive, then _remove_ the `network_mode: host` section. This is because `Port mapping is incompatible with network_mode: host:`. More details can be found at [Docker networking docs](https://docs.docker.com/engine/userguide/networking/#default-networks). Note also the `/dev/tty*` device name used by your Arduino etc. devices will differ from the Linux example, so the compose `mount:` may require updates. @@ -41,7 +41,7 @@ Alternatively, `docker-compose` works with any recent release of `docker-ce` on ### Windows ```powershell -$ docker run --init -d --name="home-assistant" -v /PATH_TO_YOUR_CONFIG:/config -e "TZ=America/Los_Angeles" --net=host homeassistant/home-assistant +$ docker run --init -d --name="home-assistant" -e "TZ=America/Los_Angeles" -v /PATH_TO_YOUR_CONFIG:/config --net=host homeassistant/home-assistant ``` When running Home Assistant in Docker on Windows, you may have some difficulty getting ports to map for routing (since the `--net=host` switch actually applies to the hypervisor's network interface). To get around this, you will need to add port proxy ipv4 rules to your local Windows machine, like so (Replacing '192.168.1.10' with whatever your Windows IP is, and '10.0.50.2' with whatever your Docker container's IP is): @@ -239,6 +239,8 @@ or in a `docker-compose.yml` file: - /dev/ttyUSB0:/dev/ttyUSB0 - /dev/ttyUSB1:/dev/ttyUSB1 - /dev/ttyACM0:/dev/ttyACM0 + environment: + - TZ=America/New_York restart: always network_mode: host ``` From a962ed8925ee6560e9ca48ee49332eab582acee4 Mon Sep 17 00:00:00 2001 From: Pascal Vizeli Date: Fri, 9 Aug 2019 08:56:12 +0200 Subject: [PATCH 14/72] Update docker.markdown --- source/_docs/installation/docker.markdown | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/source/_docs/installation/docker.markdown b/source/_docs/installation/docker.markdown index 5fd8131f0cc..3bb1195486f 100644 --- a/source/_docs/installation/docker.markdown +++ b/source/_docs/installation/docker.markdown @@ -197,7 +197,8 @@ As the docker command becomes more complex, switching to `docker-compose` can be image: homeassistant/home-assistant volumes: - /PATH_TO_YOUR_CONFIG:/config - - /etc/localtime:/etc/localtime:ro + environment: + - TZ=America/New_York restart: always network_mode: host ``` @@ -220,7 +221,7 @@ In order to use Z-Wave, Zigbee or other integrations that require access to devi ```bash $ docker run --init -d --name="home-assistant" -v /PATH_TO_YOUR_CONFIG:/config \ - -v /etc/localtime:/etc/localtime:ro --device /dev/ttyUSB0:/dev/ttyUSB0 \ + -e TZ=Australia/Melbourne --device /dev/ttyUSB0:/dev/ttyUSB0 \ --net=host homeassistant/home-assistant ``` @@ -234,7 +235,6 @@ or in a `docker-compose.yml` file: image: homeassistant/home-assistant volumes: - /PATH_TO_YOUR_CONFIG:/config - - /etc/localtime:/etc/localtime:ro devices: - /dev/ttyUSB0:/dev/ttyUSB0 - /dev/ttyUSB1:/dev/ttyUSB1 From 77197e6e73aee24eb27d7d124adc102991e06434 Mon Sep 17 00:00:00 2001 From: Pascal Vizeli Date: Fri, 9 Aug 2019 08:56:38 +0200 Subject: [PATCH 15/72] Update docker.markdown --- source/_docs/installation/docker.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/_docs/installation/docker.markdown b/source/_docs/installation/docker.markdown index 3bb1195486f..72ae3082e0d 100644 --- a/source/_docs/installation/docker.markdown +++ b/source/_docs/installation/docker.markdown @@ -221,7 +221,7 @@ In order to use Z-Wave, Zigbee or other integrations that require access to devi ```bash $ docker run --init -d --name="home-assistant" -v /PATH_TO_YOUR_CONFIG:/config \ - -e TZ=Australia/Melbourne --device /dev/ttyUSB0:/dev/ttyUSB0 \ + -e "TZ=Australia/Melbourne" --device /dev/ttyUSB0:/dev/ttyUSB0 \ --net=host homeassistant/home-assistant ``` From ff06792366cfc7f58b8e1746e55d4e5f009824f0 Mon Sep 17 00:00:00 2001 From: jack1142 <6032823+jack1142@users.noreply.github.com> Date: Fri, 9 Aug 2019 09:28:46 +0200 Subject: [PATCH 16/72] Update installation.markdown (#10091) --- source/_docs/installation.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/_docs/installation.markdown b/source/_docs/installation.markdown index 1b66be349eb..712384f1a16 100644 --- a/source/_docs/installation.markdown +++ b/source/_docs/installation.markdown @@ -119,7 +119,7 @@ These guides are provided as-is. Some of these install methods are more limited
FreeNAS
- +
From 5c93c2681ef6db22b35f15b036885bfefe157681 Mon Sep 17 00:00:00 2001 From: Paulus Schoutsen Date: Fri, 9 Aug 2019 11:25:55 -0700 Subject: [PATCH 17/72] 0.97.1 --- _config.yml | 4 ++-- source/_posts/2019-08-07-release-97.markdown | 24 ++++++++++++++++++++ 2 files changed, 26 insertions(+), 2 deletions(-) diff --git a/_config.yml b/_config.yml index b7388353e08..86248e7f9d5 100644 --- a/_config.yml +++ b/_config.yml @@ -99,8 +99,8 @@ social: # Home Assistant release details current_major_version: 0 current_minor_version: 97 -current_patch_version: 0 -date_released: 2019-08-07 +current_patch_version: 1 +date_released: 2019-08-09 # 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/2019-08-07-release-97.markdown b/source/_posts/2019-08-07-release-97.markdown index 9c19cf6b369..b8faf81b170 100644 --- a/source/_posts/2019-08-07-release-97.markdown +++ b/source/_posts/2019-08-07-release-97.markdown @@ -79,6 +79,28 @@ We wrote about how we use Azure DevOps to automate the development of Home Assis - Add De Lijn (Flemish Public Transport) component ([@bollewolle] - [#24265]) ([delijn docs]) (new-integration) (new-platform) - Add Support for VeSync Devices - Outlets and Switches ([@webdjoe] - [#24953]) ([vesync docs]) (new-platform) +## Release 0.97.1 - August 9 + +A new breaking change was introduced with 0.97.1 to accomodate for the HaveIBeenPwned shutting down v2 of their API on August 18. The integration has been migrated to using v3. + +- Update HIBP sensor to use API v3 and API Key ([@aetaric] - [#25699]) ([haveibeenpwned docs]) (breaking change) +- Update Cisco Mobility Express module version ([@fbradyirl] - [#25770]) ([cisco_mobility_express docs]) +- Don't track unstable attributes ([@jjlawren] - [#25787]) ([unifi docs]) (breaking change) +- Fix deconz allow_clip_sensor and allow_deconz_groups options ([@Anonym-tsk] - [#25811]) ([deconz docs]) + +[#25699]: https://github.com/home-assistant/home-assistant/pull/25699 +[#25770]: https://github.com/home-assistant/home-assistant/pull/25770 +[#25787]: https://github.com/home-assistant/home-assistant/pull/25787 +[#25811]: https://github.com/home-assistant/home-assistant/pull/25811 +[@Anonym-tsk]: https://github.com/Anonym-tsk +[@aetaric]: https://github.com/aetaric +[@fbradyirl]: https://github.com/fbradyirl +[@jjlawren]: https://github.com/jjlawren +[cisco_mobility_express docs]: /components/cisco_mobility_express/ +[deconz docs]: /components/deconz/ +[haveibeenpwned docs]: /components/haveibeenpwned/ +[unifi docs]: /components/unifi/ + ## 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). @@ -146,6 +168,8 @@ Experiencing issues introduced by this release? Please report them in our [issue - Due in -> due_in - Due at -> due_at +- **haveibeenpwned** - the v2 API is now replaced with the v3 API, which requires an API key. v2 of the API will stop working on August 18. + ## Beta Fixes - Expose comfort presets as HA presets ([@balloob] - [#25491]) ([ecobee docs]) (breaking change) (beta fix) From f475ab32e05fbd54bb842c50ff1efb3d60735749 Mon Sep 17 00:00:00 2001 From: Lorenzo Milesi Date: Sat, 10 Aug 2019 08:19:35 +0200 Subject: [PATCH 18/72] Replace port(s) -> pin(s) (#10095) To be verified, but should be correct --- source/_components/mcp23017.markdown | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/source/_components/mcp23017.markdown b/source/_components/mcp23017.markdown index 0b2813a20dc..4991a3c7d67 100644 --- a/source/_components/mcp23017.markdown +++ b/source/_components/mcp23017.markdown @@ -98,12 +98,12 @@ i2c_address: required: false type: integer default: "`0x20`" -ports: +pins: description: Array of used pins. required: true type: list keys: - port: + pin: description: The pin numbers (from 0 to 15) and corresponding names. required: true type: [integer, string] From 0066d5d48e7577d84f85f550dcb456da31c76ce8 Mon Sep 17 00:00:00 2001 From: Paul Tarjan Date: Sat, 10 Aug 2019 11:07:57 -0700 Subject: [PATCH 19/72] Add Fulfillment section Without this being filled in, that oauth flow wouldn't start for me. I found it in this video: https://www.youtube.com/watch?v=MMtCzX6US9M --- source/_components/google_assistant.markdown | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/source/_components/google_assistant.markdown b/source/_components/google_assistant.markdown index 4dc35bc5a0b..45c030da0be 100644 --- a/source/_components/google_assistant.markdown +++ b/source/_components/google_assistant.markdown @@ -79,11 +79,12 @@ You need to create an API Key with the [Google Cloud API Console](https://consol 9. Testing instructions: Enter anything. It doesn't matter since you won't submit this app. Screenshot: Account linking - -3. Back on the overview page. Click `Simulator` under `TEST`. It will create a new draft version Test App. You don't have to actually test, but you need to generate this draft version Test App. -4. Add the `google_assistant` integration configuration to your `configuration.yaml` file and restart Home Assistant following the [configuration guide](#configuration) below. -5. Open the Google Home app and go into `Account > Settings > Assistant > Home Control`. -6. Click the `+` sign, and near the bottom, you should have `[test] your app name` listed under 'Add new.' Selecting that should lead you to a browser to login your Home Assistant instance, then redirect back to a screen where you can set rooms for your devices or nicknames for your devices. +3. Under `Build your Action` click `Add Action(s)`. + 1. Under `Fulfillment` fill in this URL (replace with your actual URL): `https://[YOUR HOME ASSISTANT URL:PORT]/api/google_assistant`. +4. Back on the overview page. Click `Simulator` under `TEST`. It will create a new draft version Test App. You don't have to actually test, but you need to generate this draft version Test App. +5. Add the `google_assistant` integration configuration to your `configuration.yaml` file and restart Home Assistant following the [configuration guide](#configuration) below. +6. Open the Google Home app and go into `Account > Settings > Assistant > Home Control`. +7. Click the `+` sign, and near the bottom, you should have `[test] your app name` listed under 'Add new.' Selecting that should lead you to a browser to login your Home Assistant instance, then redirect back to a screen where you can set rooms for your devices or nicknames for your devices.
From 281c5ff8ec1d64888d21e157c31aeafd0561c8dd Mon Sep 17 00:00:00 2001 From: casey Date: Sun, 11 Aug 2019 15:54:38 -0500 Subject: [PATCH 20/72] Update fortigate.markdown (#10111) --- source/_components/fortigate.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/_components/fortigate.markdown b/source/_components/fortigate.markdown index 3d063e675d4..a5e2b815d25 100644 --- a/source/_components/fortigate.markdown +++ b/source/_components/fortigate.markdown @@ -43,7 +43,7 @@ Add the following to your `configuration.yaml` file: # Example configuration.yaml entry fortigate: host: HOST_IP - username: YPUR_USERNAME + username: YOUR_USERNAME api_key: YOUR_API_KEY ``` From c59ef65d2d793e860eac66c4030eff0f7580ea12 Mon Sep 17 00:00:00 2001 From: Paulus Schoutsen Date: Sun, 11 Aug 2019 20:51:33 -0700 Subject: [PATCH 21/72] Release 97.2 --- _config.yml | 4 +-- source/_posts/2019-08-07-release-97.markdown | 32 ++++++++++++++++++++ 2 files changed, 34 insertions(+), 2 deletions(-) diff --git a/_config.yml b/_config.yml index 86248e7f9d5..e2bb0812a7f 100644 --- a/_config.yml +++ b/_config.yml @@ -99,8 +99,8 @@ social: # Home Assistant release details current_major_version: 0 current_minor_version: 97 -current_patch_version: 1 -date_released: 2019-08-09 +current_patch_version: 2 +date_released: 2019-08-12 # 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/2019-08-07-release-97.markdown b/source/_posts/2019-08-07-release-97.markdown index b8faf81b170..c1601dedffb 100644 --- a/source/_posts/2019-08-07-release-97.markdown +++ b/source/_posts/2019-08-07-release-97.markdown @@ -101,6 +101,38 @@ A new breaking change was introduced with 0.97.1 to accomodate for the HaveIBeen [haveibeenpwned docs]: /components/haveibeenpwned/ [unifi docs]: /components/unifi/ +## Release 0.97.2 - August 11 + +- Fix eco preset for Wink Air Conditioner ([@cameronrmorris] - [#25763]) ([wink docs]) +- Update pyvera to 0.3.3 ([@brandond] - [#25820]) ([vera docs]) +- Fix Netatmo climate issue ([@cgtobi] - [#25830]) ([netatmo docs]) +- Fix KNX Climate mode change callback ([@tombbo] - [#25851]) ([knx docs]) +- Always populate hvac_modes in SmartThings climate platform ([@andrewsayre] - [#25859]) ([smartthings docs]) +- UniFi - Use state to know if device is online ([@Kane610] - [#25876]) ([unifi docs]) +- Fix issue with nuki new available state ([@pvizeli] - [#25881]) ([nuki docs]) + +[#25763]: https://github.com/home-assistant/home-assistant/pull/25763 +[#25820]: https://github.com/home-assistant/home-assistant/pull/25820 +[#25830]: https://github.com/home-assistant/home-assistant/pull/25830 +[#25851]: https://github.com/home-assistant/home-assistant/pull/25851 +[#25859]: https://github.com/home-assistant/home-assistant/pull/25859 +[#25876]: https://github.com/home-assistant/home-assistant/pull/25876 +[#25881]: https://github.com/home-assistant/home-assistant/pull/25881 +[@Kane610]: https://github.com/Kane610 +[@andrewsayre]: https://github.com/andrewsayre +[@brandond]: https://github.com/brandond +[@cameronrmorris]: https://github.com/cameronrmorris +[@cgtobi]: https://github.com/cgtobi +[@pvizeli]: https://github.com/pvizeli +[@tombbo]: https://github.com/tombbo +[knx docs]: /components/knx/ +[netatmo docs]: /components/netatmo/ +[nuki docs]: /components/nuki/ +[smartthings docs]: /components/smartthings/ +[unifi docs]: /components/unifi/ +[vera docs]: /components/vera/ +[wink docs]: /components/wink/ + ## 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). From 5c945feb9a6a30ebe85fe98f464cb063ae3bea53 Mon Sep 17 00:00:00 2001 From: Klaas Schoute Date: Mon, 12 Aug 2019 10:06:15 +0200 Subject: [PATCH 22/72] =?UTF-8?q?=E2=9C=8F=EF=B8=8F=20Add=20more=20informa?= =?UTF-8?q?tion=20to=20Deconz=20(#10112)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * :pencil2: Add more information to Deconz * :pencil2: Improve text about cover devices --- source/_components/deconz.markdown | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/source/_components/deconz.markdown b/source/_components/deconz.markdown index b88395d9023..3b205c7491f 100644 --- a/source/_components/deconz.markdown +++ b/source/_components/deconz.markdown @@ -320,6 +320,8 @@ The `entity_id` name will be `binary_sensor.device_name`, where `device_name` is - Philips Hue Motion Sensor - Xiaomi Motion Sensor - Xiaomi Smart Home Aqara Human Body Sensor +- Water leakage detection + - Xiaomi Aqara water leak Sensor ## Climate @@ -340,7 +342,7 @@ The `entity_id` name will be `climate.device_name`, where `device_name` is defin Covers are devices like ventilation dampers or smart window covers. -Note that devices in the cover platform identify as lights, so there is a manually curated list that defines which "lights" are covers. +Note that devices in the cover platform identify as lights, so there is a manually curated list that defines which "lights" are covers. You therefore add a cover device as a light device in deCONZ (phoscon app). The `entity_id` name will be `cover.device_name`, where `device_name` is defined in deCONZ. From d713c7ad8be802030def17cc1d4ad427f5605806 Mon Sep 17 00:00:00 2001 From: derandiunddasbo Date: Mon, 12 Aug 2019 22:24:13 +0200 Subject: [PATCH 23/72] Remove initial_state attributes from the examples (#10119) Recently I had an extensive discussion about the pros and cons of using the `initial_state` attribute in automations and in the end I had to admit, that there are good arguments against using it unless absolutely necessary and only if one really knows what he or she is doing. In the examples above I can't see a good reason for using `initial_state` and thus I'd propose to delete it from both examples. ...and they were inkonsistent in both examples anyways. ;-) One of them used 'on' and the other used true. --- source/_components/frontend.markdown | 2 -- 1 file changed, 2 deletions(-) diff --git a/source/_components/frontend.markdown b/source/_components/frontend.markdown index 6efe0efa3da..5576c691f5f 100644 --- a/source/_components/frontend.markdown +++ b/source/_components/frontend.markdown @@ -86,7 +86,6 @@ Set a theme at the startup of Home Assistant: ```yaml automation: - alias: 'Set theme at startup' - initial_state: 'on' trigger: - platform: homeassistant event: start @@ -101,7 +100,6 @@ To enable "night mode": ```yaml automation: - alias: 'Set dark theme for the night' - initial_state: true trigger: - platform: time at: '21:00:00' From 4ce2550e2c460d81b0ecea9efa710642e53cadd0 Mon Sep 17 00:00:00 2001 From: Tobias Perschon Date: Mon, 12 Aug 2019 22:27:07 +0200 Subject: [PATCH 24/72] Update webhooks.markdown (#10122) updated default trusted ips --- source/_components/webhooks.markdown | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/source/_components/webhooks.markdown b/source/_components/webhooks.markdown index 2bf0a0ddb35..3e6f3c4acc2 100644 --- a/source/_components/webhooks.markdown +++ b/source/_components/webhooks.markdown @@ -63,7 +63,7 @@ trusted_networks: description: Telegram server access ACL as list. required: false type: string - default: 149.154.167.197-233 + default: 149.154.160.0/20, 91.108.4.0/22 {% endconfiguration %} To get your `chat_id` and `api_key` follow the instructions [here](/components/notify.telegram). As well as authorizing the chat, if you have added your bot to a group you will also need to authorize any user that will be interacting with the webhook. When an unauthorized user tries to interact with the webhook Home Assistant will raise an error ("Incoming message is not allowed"), you can easily obtain the users id by looking in the "from" section of this error message. @@ -81,12 +81,8 @@ telegram_bot: - platform: webhooks api_key: YOUR_API_KEY trusted_networks: - - 149.154.167.197/32 - - 149.154.167.198/31 - - 149.154.167.200/29 - - 149.154.167.208/28 - - 149.154.167.224/29 - - 149.154.167.232/31 + - 149.154.160.0/20 + - 91.108.4.0/22 allowed_chat_ids: - 12345 - 67890 From de1c436802a1515958be400bcab9b6ea3f711b00 Mon Sep 17 00:00:00 2001 From: tomlut <10679300+tomlut@users.noreply.github.com> Date: Tue, 13 Aug 2019 06:29:03 +1000 Subject: [PATCH 25/72] Corrected template examples (#10114) Template examples were incorrectly quoted. --- source/_components/garadget.markdown | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/source/_components/garadget.markdown b/source/_components/garadget.markdown index 38f382effe0..2d5e969d857 100644 --- a/source/_components/garadget.markdown +++ b/source/_components/garadget.markdown @@ -89,13 +89,13 @@ sensor: sensors: garage_door_status: friendly_name: 'State of the door' - value_template: '{{ states('cover.garage_door') }}' + value_template: "{{ states('cover.garage_door') }}" garage_door_time_in_state: friendly_name: 'Since' - value_template: '{{ state_attr('cover.garage_door', 'time_in_state') }}' + value_template: "{{ state_attr('cover.garage_door', 'time_in_state') }}" garage_door_wifi_signal_strength: friendly_name: 'WiFi strength' - value_template: '{{ state_attr('cover.garage_door', 'wifi_signal_strength') }}' + value_template: "{{ state_attr('cover.garage_door', 'wifi_signal_strength') }}" unit_of_measurement: 'dB' group: From e9c12b07123d302c515142feed316e3f26787547 Mon Sep 17 00:00:00 2001 From: Alec Rust Date: Mon, 12 Aug 2019 21:54:00 +0100 Subject: [PATCH 26/72] Mention integration in ZHA docs (#10108) Due to the previous wording of this I thought a `zha` entry was necessary in `configuration.yaml`, which wasn't working for me on Hass.io. Adding ZHA from the Integrations page did work, but this isn't mentioned in the docs. --- source/_components/zha.markdown | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/source/_components/zha.markdown b/source/_components/zha.markdown index 13e66e8c7a4..864bf966471 100644 --- a/source/_components/zha.markdown +++ b/source/_components/zha.markdown @@ -59,8 +59,9 @@ The custom quirks implementations for zigpy implemented as ZHA Device Handlers f ## Configuration -To configure the component, a `zha` section must be present in the `configuration.yaml`, -and the path to the serial device for the radio and path to the database which will persist your network data is required. +To configure the component, select ZHA on the Integrations page and provide the path to your Zigbee USB stick. + +Or, you can manually confiure `zha` section in `configuration.yaml`. The path to the database which will persist your network data is required. ```yaml # Example configuration.yaml entry From 9cb6f9d466888edd4f7ca59b3515c1c624ff04f7 Mon Sep 17 00:00:00 2001 From: Ties de Kock Date: Tue, 13 Aug 2019 00:23:14 +0200 Subject: [PATCH 27/72] Document the buienradar camera component (#10106) * Document the buienradar camera component Buienradar camera had been added in 0.95 but documentation was not added. * :pencil2: Tweak --- source/_components/buienradar.markdown | 49 ++++++++++++++++++++++++++ 1 file changed, 49 insertions(+) diff --git a/source/_components/buienradar.markdown b/source/_components/buienradar.markdown index 3eda01e9741..2a796080b5a 100644 --- a/source/_components/buienradar.markdown +++ b/source/_components/buienradar.markdown @@ -3,6 +3,7 @@ title: "Buienradar" description: "Instructions on how to integrate buienradar.nl weather within Home Assistant." logo: buienradar.png ha_category: + - Camera - Weather ha_release: 0.47 ha_iot_class: Cloud Polling @@ -14,6 +15,11 @@ The `buienradar` platform uses [buienradar.nl](http://buienradar.nl/) as a sourc The relevant weather station used will be automatically selected based on the location specified in the Home Assistant configuration (or in the Buienradar weather/sensor component). A map of all available weather stations can be found [here](https://www.google.com/maps/d/embed?mid=1NivHkTGQUOs0dwQTnTMZi8Uatj0). +Besides the weather platform, there is currently support for the following additional device types: + +- [Camera](#camera): Radar map +- [Sensor](/components/sensor.buienradar/): More customizable + ## Configuration To add the Buienradar weather to your installation, add the following to your `configuration.yaml` file: @@ -59,6 +65,7 @@ weather: forecast: true ``` +
This platform is an alternative to the [`buienradar`](/components/sensor.buienradar/) sensor. @@ -66,5 +73,47 @@ The weather platform is easier to configure but less customizable.
+## Camera + +The `buienradar` camera platform uses [buienradar.nl](http://buienradar.nl/) as a source for the last rain radar map. The overview image of the whole of the Netherlands is loaded and shown as a camera in Home Assistant. + +Internally this component uses the radar map image as [documented](https://www.buienradar.nl/overbuienradar/gratis-weerdata) on buienradar.nl. +The downloaded image is cached to prevent Home Assistant from making a new request to buienradar.nl multiple times a minute when Home Assistant checks for new stills from the camera. + +To add `buienradar` camera to Home Assistant, add the following section to your +`configuration.yaml` file: +```yaml +# Example configuration.yaml entry +camera: + - platform: buienradar +``` + +{% configuration %} +name: + description: You can (optionally) specify the name of the camera. The name + will be shown in the user interface below the radar image. + required: false + type: string +dimension: + description: Size of the image to be loaded from buienradar.nl + (120 to 700 pixels) + required: false + default: 512 + type: integer +delta: + description: Time interval in seconds between image updates + required: false + default: 600 + type: integer +{% endconfiguration %} + +### The `name` Variable + +If you specify a name, the camera will get this name as its label. A slugified +version of the name will be used as the name of the entity. + +With the default of "Buienradar loop" the entity name becomes +`camera.buienradar_loop`. + [Usage statement:](https://www.buienradar.nl/overbuienradar/gratis-weerdata) > Buienradar makes free weather data available for use by individuals and businesses (website/intranet). The use of the weather data is allowed for **non-commercial purposes**. Please refer to the full usage statement linked above to confirm your use or to request permission. From 7aa1ecd69e059d3254d73f77dac2a11658888625 Mon Sep 17 00:00:00 2001 From: Okke Garling Date: Tue, 13 Aug 2019 00:52:19 +0200 Subject: [PATCH 28/72] prefix HTTP scheme in example base_url (#10118) * prefixed HTTP protocol in example base_url * :pencil2: Tweak --- source/_components/google_translate.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/_components/google_translate.markdown b/source/_components/google_translate.markdown index d0e7875433c..2f78f4c5f72 100644 --- a/source/_components/google_translate.markdown +++ b/source/_components/google_translate.markdown @@ -55,5 +55,5 @@ If you are using SSL certificate or Docker, you may need to add the `base_url` c ```yaml #Example configuration.yaml entry http: - base_url: example.duckdns.org + base_url: https://example.duckdns.org ``` From 16fbc41a910ce3916d9b2eca13dfff7dd828f8e9 Mon Sep 17 00:00:00 2001 From: Dubh Ad Date: Tue, 13 Aug 2019 00:02:48 +0100 Subject: [PATCH 29/72] Added config check for Docker (#10100) Added the config check steps for Docker --- source/_docs/configuration/troubleshooting.markdown | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/source/_docs/configuration/troubleshooting.markdown b/source/_docs/configuration/troubleshooting.markdown index d2faea397b6..a3af594e399 100644 --- a/source/_docs/configuration/troubleshooting.markdown +++ b/source/_docs/configuration/troubleshooting.markdown @@ -20,7 +20,9 @@ If you have incorrect entries in your configuration files you can use the [`chec One of the most common problems with Home Assistant is an invalid `configuration.yaml` file. - - You can test your configuration using the command line with: `hass --script check_config`. On Hass.io you can use the [hassio command](/hassio/commandline/#home-assistant): `hassio homeassistant check`. + - You can test your configuration using the command line with: `hass --script check_config`. + - On Hass.io you can use the [hassio command](/hassio/commandline/#home-assistant): `hassio homeassistant check`. + - On Docker you can use `docker exec home-assistant python -m homeassistant --script check_config --config /config` - where `homeassistant` is the name of the container. - You can verify your configuration's yaml structure using [this online YAML parser](http://yaml-online-parser.appspot.com/) or [YAML Lint](http://www.yamllint.com/). - To learn more about the quirks of YAML, read [YAML IDIOSYNCRASIES](https://docs.saltstack.com/en/latest/topics/troubleshooting/yaml_idiosyncrasies.html) by SaltStack (the examples there are specific to SaltStack, but do explain YAML issues well). From 4ac2d9e50b8f4d0fbc8357bc64da126b073b031c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Niels=20M=C3=BCndler?= Date: Tue, 13 Aug 2019 07:33:41 +0800 Subject: [PATCH 30/72] Add note about language issues with syncthru (#10109) * Add note about language issues with syncthru * :pencil2: Tweak --- source/_components/syncthru.markdown | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/source/_components/syncthru.markdown b/source/_components/syncthru.markdown index 1d8f4de2d31..04b26afa2a8 100644 --- a/source/_components/syncthru.markdown +++ b/source/_components/syncthru.markdown @@ -44,3 +44,7 @@ The following information is displayed in separate sensors, if it is available: - Black, cyan, magenta and yellow drum state - First to fifth paper input tray state - First to sixth paper output tray state + +
+Note that this component or parts thereof may not work if the language of your printer is not configured to be English. +
From b8876b7b829dbf46d92773fcff51cbd3003206ec Mon Sep 17 00:00:00 2001 From: Dustin Essington Date: Mon, 12 Aug 2019 16:37:06 -0700 Subject: [PATCH 31/72] Update HaveIBeenPwned to include API Key (#9977) * Update HaveIBeenPwned to include API Key * Update haveibeenpwned.markdown * :ambulance: Small Markdown fix * :pencil2: Tweak --- source/_components/haveibeenpwned.markdown | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/source/_components/haveibeenpwned.markdown b/source/_components/haveibeenpwned.markdown index 15de845e3d1..067c142799b 100644 --- a/source/_components/haveibeenpwned.markdown +++ b/source/_components/haveibeenpwned.markdown @@ -12,6 +12,12 @@ redirect_from: The `haveibeenpwned` sensor platform creates sensors that check for breached email accounts on [haveibeenpwned](https://haveibeenpwned.com). +
+ + The HaveIBeenPwned API now requires you to pay $3.50 a month in order to query the API. More info can be found [here](https://www.troyhunt.com/authentication-and-the-have-i-been-pwned-api/) + +
+ ## Configuration To enable this sensor, add the following lines to your `configuration.yaml`, it will list every specified email address as a sensor showing @@ -24,6 +30,7 @@ sensor: email: - your_email1@domain.com - your_email2@domain.com + api_key: API_KEY ``` {% configuration %} @@ -31,6 +38,10 @@ email: description: List of email addresses. required: true type: list +api_key: + description: HaveIBeenPwned API Key + required: true + type: string {% endconfiguration %} ## Breach meta data From 7308f30d054eaea3a46ad39a33e373a091868e5c Mon Sep 17 00:00:00 2001 From: Jeff Irion Date: Mon, 12 Aug 2019 23:53:02 -0700 Subject: [PATCH 32/72] Add info about customizing entity_picture for a person (#10120) * Add info about customizing entity_picture for a person * Add ':', change JPG to jpg * Add link to the customizing entities page --- source/_components/person.markdown | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/source/_components/person.markdown b/source/_components/person.markdown index 8c523124714..515c3989d41 100644 --- a/source/_components/person.markdown +++ b/source/_components/person.markdown @@ -86,3 +86,15 @@ person: - device_tracker.stacey - device_tracker.beacon ``` + +### Customizing the picture for a person + +By following the instructions on the [customizing entities](/docs/configuration/customizing-devices#entity_picture) page, you can customize the picture used for a person entity in the `customize:` section of your configuration. For example: + +```yaml +customize: + person.ada6789: + entity_picture: "/local/ada.jpg" +``` + +See the documentation about [hosting files](/components/http/#hosting-files) for more information about the `www` folder. From 089dc3fe07fc071c11218b4240b456a74a68de41 Mon Sep 17 00:00:00 2001 From: Dubh Ad Date: Tue, 13 Aug 2019 15:34:44 +0100 Subject: [PATCH 33/72] Clarity edit about `websocket-client` (#10129) The constant references to installing the Python package causes confusion for Hass.io and Docker users, breaking these out. --- source/_components/samsungtv.markdown | 55 ++++++++++++++++++++------- 1 file changed, 41 insertions(+), 14 deletions(-) diff --git a/source/_components/samsungtv.markdown b/source/_components/samsungtv.markdown index cc32df32043..e62de8ebff5 100644 --- a/source/_components/samsungtv.markdown +++ b/source/_components/samsungtv.markdown @@ -33,7 +33,7 @@ host: required: true type: string port: - description: The port of the Samsung Smart TV. If set to 8001, the new websocket connection will be used (required for 2016+ TVs). + description: The port of the Samsung Smart TV. If set to 8001, the new websocket connection will be used (required for 2016+ TVs) - for installs other than Hass.io or Docker you may need to install a Python package, see below. required: false type: integer default: 55000 @@ -77,23 +77,23 @@ Currently known supported models: - K5579 (port must be set to 8001, On/Off, Forward/Backward, Volume control, but no Play button) - K5600AK (partially supported, turn on works but state is not updated) - K6500AF (port must be set to 8001) -- KS7005 (port must be set to 8001, and `pip3 install websocket-client` must be executed, MAC address must be provided, On/Off, Volume are OK, no channel change) -- KS7502 (port must be set to 8001, and `pip3 install websocket-client` must be executed, turn on doesn't work, turn off works fine) -- KS8000 (port must be set to 8001, and `pip3 install websocket-client` must be executed) -- KS8005 (port must be set to 8001, and `pip3 install websocket-client` must be executed) -- KS8500 (port must be set to 8001, and `pip3 install websocket-client` must be executed) -- KU6020 (port must be set to 8001, and `pip3 install websocket-client` must be executed) -- KU6100 (port must be set to 8001, and `pip3 install websocket-client` must be executed) +- KS7005 (port must be set to 8001, MAC address must be provided, On/Off, Volume are OK, no channel change) +- KS7502 (port must be set to 8001, turn on doesn't work, turn off works fine) +- KS8000 (port must be set to 8001) +- KS8005 (port must be set to 8001) +- KS8500 (port must be set to 8001) +- KU6020 (port must be set to 8001) +- KU6100 (port must be set to 8001) - KU6290 (port must be set to 8001) -- KU6400U (port must be set to 8001, and `pip3 install websocket-client` must be executed) +- KU6400U (port must be set to 8001) - KU7000 (port must be set to 8001) -- M5620 (port must be set to 8001, and `pip3 install websocket-client` must be executed) -- MU6170UXZG (port must be set to 8001, and `pip3 install websocket-client` must be executed) +- M5620 (port must be set to 8001) +- MU6170UXZG (port must be set to 8001) - NU7090 (port must be set to 8801, On/Off, MAC must be specified for Power On) -- NU7400 (port set to 8001 and `pip3 install websocket-client` executed) +- NU7400 (port set to 8001) - NU8000 - U6000 (port must be set to 8001) -- U6300 (port must be set to 8001, and `pip3 install websocket-client` must be executed) +- U6300 (port must be set to 8001) - UE6199UXZG (port must be set to 8001, On/Off, Forward/Backward, Volume control, but no Play button) - UE65KS8005 (port must be set to 8001, On/Off, Forward/Backward, Volume are OK, but no Play button) - UE49KU6470 (port must be set to 8001, On/Off, Forward/Backward, Volume are OK, but no Play button) @@ -112,7 +112,7 @@ Currently tested but not working models: - JU7000 - Unable to see state and unable to control (but port 8001 *is* open) - JU7500 - Unable to see state and unable to control - MU6125 - Unable to see state and unable to control (Tested on UE58MU6125 on port 8001 and 8801) -- MU6300 - Port set to 8001, `pip3 install websocket-client` must be executed, turning on works, status not working reliably, turning off is not permanent (it comes back on) +- MU6300 - Port set to 8001, turning on works, status not working reliably, turning off is not permanent (it comes back on) - Q7F - State is always "off" and unable to control via port 8001. None of the 2014 (H) and 2015 (J) model series (e.g., J5200) will work, since Samsung have used a different (encrypted) type of interface for these. @@ -134,3 +134,30 @@ with the following payload: ``` Currently the ability to select a source is not implemented. + +### Hass.io + +No additional actions are required + +### Docker + +No additional actions are required + +### Hassbian + +You will need to activate the venv and install the websocket library: + +```bash +$ sudo -u homeassistant -H -s +$ source /srv/homeassistant/bin/activate +$ pip3 install websocket-client +``` +### Other install methods + +You will need to install the `websocket-client` Python package in your Home Assistant install. This will probably be done with: + +```bash +$ pip3 install websocket-client +``` + +Remembering to activate your venv if you're using a venv install. From 9369061cb2394dc1dbd0d73a57fe02eeaaba24d0 Mon Sep 17 00:00:00 2001 From: emilgil <40168194+emilgil@users.noreply.github.com> Date: Tue, 13 Aug 2019 16:46:37 +0200 Subject: [PATCH 34/72] Update twitter.markdown (#10128) Twitter has new regulations in place regarding their developer accounts and API access, all applications for dev-accounts are handled manually which can take several weeks even if the application is filled in correctly. --- source/_components/twitter.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/_components/twitter.markdown b/source/_components/twitter.markdown index e710baf500a..8b3296a21c6 100644 --- a/source/_components/twitter.markdown +++ b/source/_components/twitter.markdown @@ -14,7 +14,7 @@ The `twitter` notification platform uses [Twitter](https://twitter.com) to deliv ## Setup -Go to [Twitter Apps](https://apps.twitter.com/app/new) and create an application. Visit "Keys and Access Tokens" of the application to get the details (Consumer Key, Consumer Secret, Access Token and Access Token Secret which needs to be generated). +Make sure you have a developer account registered with Twitter, then go to [Twitter Apps](https://apps.twitter.com/app/new) and create an application. If you don't have a developer account you need to apply for one, it can take some time to get approved. Visit "Keys and Access Tokens" of the application to get the details (Consumer Key, Consumer Secret, Access Token and Access Token Secret which needs to be generated). ## Configuration From fbbd00cbcf596a67f528a3428f0564620b9fd99e Mon Sep 17 00:00:00 2001 From: Jonathan Weinberg Date: Tue, 13 Aug 2019 15:07:49 -0400 Subject: [PATCH 35/72] small typo (#10132) lowercase `F` for `false` --- source/_components/homekit.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/_components/homekit.markdown b/source/_components/homekit.markdown index 64ef560e215..5ad244ef746 100644 --- a/source/_components/homekit.markdown +++ b/source/_components/homekit.markdown @@ -248,7 +248,7 @@ In some cases it might be desirable to check that all entities are available bef ```yaml # Example checking specific entities to be available before start homekit: - auto_start: False + auto_start: false automation: - alias: 'Start HomeKit' From 8e3445d62267e9f968d776bb28834c12e030a6dd Mon Sep 17 00:00:00 2001 From: jbrody17 Date: Tue, 13 Aug 2019 15:21:13 -0400 Subject: [PATCH 36/72] Thermostat sensor changed from hvac_mode to hvac_state (#10133) --- source/_components/nest.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/_components/nest.markdown b/source/_components/nest.markdown index 7df45246460..0874daf4f25 100644 --- a/source/_components/nest.markdown +++ b/source/_components/nest.markdown @@ -313,7 +313,7 @@ The following conditions are available by device: - preset\_mode - temperature - target - - hvac\_mode: The currently active state of the HVAC system, `heat`, `cool` or `off` (previously `heating`, `cooling` or `off`). + - hvac\_state: The currently active state of the HVAC system, `heat`, `cool` or `off` (previously `heating`, `cooling` or `off`). - Nest Protect: - co\_status: `Ok`, `Warning` or `Emergency` - smoke\_status: `Ok`, `Warning` or `Emergency` From 74f49ab44298640e58b8d9a4a99454258fdf7c9a Mon Sep 17 00:00:00 2001 From: HUANG da Date: Fri, 16 Aug 2019 02:31:12 +0900 Subject: [PATCH 37/72] Update aquostv.markdown (#10135) --- source/_components/aquostv.markdown | 1 + 1 file changed, 1 insertion(+) diff --git a/source/_components/aquostv.markdown b/source/_components/aquostv.markdown index df895237204..5e87d5fd04a 100644 --- a/source/_components/aquostv.markdown +++ b/source/_components/aquostv.markdown @@ -74,5 +74,6 @@ Currently known supported models: - LC-60LE857U - LC-60EQ10U - LC-60SQ15U +- LC-50US40 (no volume control, not fully tested) If your model is not on the list then give it a test, if everything works correctly then add it to the list on [GitHub](https://github.com/home-assistant/home-assistant.io/blob/current/source/_components/aquostv.markdown). From 8b308dbdd5488a9927ef5d3c33a12c3de867883d Mon Sep 17 00:00:00 2001 From: Ermanno Baschiera Date: Thu, 15 Aug 2019 20:35:48 +0200 Subject: [PATCH 38/72] fix quotes in example code (#10142) --- source/_components/alert.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/_components/alert.markdown b/source/_components/alert.markdown index 2097ba258c8..1791e897d33 100644 --- a/source/_components/alert.markdown +++ b/source/_components/alert.markdown @@ -153,7 +153,7 @@ binary_sensor: - platform: template sensors: motion_battery_low: - value_template: '{{ state_attr('sensor.motion', 'battery') < 15 }}' + value_template: "{{ state_attr('sensor.motion', 'battery') < 15 }}" friendly_name: 'Motion battery is low' alert: From 08d831676becac089754909ef84ba91bb80b5b47 Mon Sep 17 00:00:00 2001 From: Jon Evans Date: Thu, 15 Aug 2019 21:50:09 +0100 Subject: [PATCH 39/72] Add note about BASE_URL format (#10143) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Hopefully others can learn from my frustration. 😄 --- source/_components/alexa.smart_home.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/_components/alexa.smart_home.markdown b/source/_components/alexa.smart_home.markdown index f3618932853..b93b05bd19f 100644 --- a/source/_components/alexa.smart_home.markdown +++ b/source/_components/alexa.smart_home.markdown @@ -99,7 +99,7 @@ Next you need create a Lambda function. - Click your Lambda Function icon in the middle of the diagram, scroll down you will see a `Function code` window. - Clear the example code, copy the Python script from: (modified code to support Alexa's proactive mode, see details below) - Scroll down a little bit, you will find `Environment variables`, you need add 4 environment variables: - * BASE_URL *(required)*: your Home Assistant instance's Internet accessible URL with port if need + * BASE_URL *(required)*: your Home Assistant instance's Internet accessible URL with port if needed. *Do not include the trailing `/`*. * NOT_VERIFY_SSL *(optional)*: you can set it to *True* to ignore the SSL issue, if you don't have a valid SSL certificate or you are using self-signed certificate. * DEBUG *(optional)*: set to *True* to log the debug message * LONG_LIVED_ACCESS_TOKEN *(optional, not recommend)*: you will connect your Alexa Smart Home skill with your Home Assistant user account in the later steps, so that you don't need to use long-lived access token here. However, the access token you got from login flow is only valid for 30 minutes. It will be hard for you to test lambda function with the access token in test data. So for your convinces, you can remove the access token from the test data, [generate a long-lived access token][generate-long-lived-access-token] put here, then the function will fall back to read token from environment variables. (tips: You did not enable the security storage for your environment variables, so your token saved here is not that safe. You should only use it for debugging and testing purpose. You should remove and delete the long-lived access token after you finish the debugging.) From e5261577e996481e33c03516dbc716d816d91c1a Mon Sep 17 00:00:00 2001 From: Paulus Schoutsen Date: Thu, 15 Aug 2019 21:59:20 -0700 Subject: [PATCH 40/72] Add HA Cast promo --- source/images/frontpage/cast-frontpage.png | Bin 0 -> 19608 bytes source/index.html | 11 +++++++++++ 2 files changed, 11 insertions(+) create mode 100644 source/images/frontpage/cast-frontpage.png diff --git a/source/images/frontpage/cast-frontpage.png b/source/images/frontpage/cast-frontpage.png new file mode 100644 index 0000000000000000000000000000000000000000..e94ce24913c5c2a34a274d14518f90b2116f8db6 GIT binary patch literal 19608 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 TEl|Xa00000NkvXXu0mjfQgwv0 literal 0 HcmV?d00001 diff --git a/source/index.html b/source/index.html index 4f6349ff5a8..a736d8601cb 100644 --- a/source/index.html +++ b/source/index.html @@ -48,6 +48,17 @@ description: Open source home automation that puts local control and privacy fir
Read our founder's vision for the perfect home automation + + +
+
Take over all the screens
+
Home Assistant Cast makes each TV a display.
+
+
From 1b2f4058e965737c78e48ddaceb7dbc7d18d008c Mon Sep 17 00:00:00 2001 From: Dubh Ad Date: Fri, 16 Aug 2019 18:04:46 +0100 Subject: [PATCH 41/72] Markdown fix (#10154) * Markdown fix Fixing the markdown * Fix --- source/_docs/z-wave/controllers.markdown | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/source/_docs/z-wave/controllers.markdown b/source/_docs/z-wave/controllers.markdown index b82dddb5f69..b9fafaac92e 100644 --- a/source/_docs/z-wave/controllers.markdown +++ b/source/_docs/z-wave/controllers.markdown @@ -7,11 +7,11 @@ description: "Extended instructions how to setup Z-Wave." You need to have a compatible Z-Wave stick or module installed. This needs to be a *static controller*, which most Z-Wave sticks and modules will be. If yours is a *bridge* device then it won't work with [OpenZWave](http://openzwave.com/), which is what provides Home Assistant's Z-Wave capabilities. The following devices have been confirmed to work: -

- +

+ There have [been reports](https://www.raspberrypi.org/forums/viewtopic.php?f=28&t=245031#p1502030) of the Aeotec stick not working on the Raspberry Pi 4. -

+
* Aeotec Z-Stick Series 5 * Everspring USB stick - Gen 5 From dd622430ce0c9a44949abf2ad531fef97ea4fc1e Mon Sep 17 00:00:00 2001 From: J <49540618+Tediore@users.noreply.github.com> Date: Fri, 16 Aug 2019 12:09:51 -0500 Subject: [PATCH 42/72] Add note about purge_keep_days (#10152) The purge_keep_days variable in the recorder component limits the max duration of a history stats sensor. This might not be clear to some users. --- source/_components/history_stats.markdown | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/source/_components/history_stats.markdown b/source/_components/history_stats.markdown index fa23b01dd0f..68b05276c75 100644 --- a/source/_components/history_stats.markdown +++ b/source/_components/history_stats.markdown @@ -119,6 +119,12 @@ duration: minutes: 30 ``` +
+ + If the duration exceeds the number of days of history stored by the `recorder` component (`purge_keep_days`), the history statistics sensor will not have all the information it needs to look at the entire duration. For example, if `purge_keep_days` is set to 7, a history statistics sensor with a duration of 30 days will only report a value based on the last 7 days of history. + +
+ ### Examples Here are some examples of periods you could work with, and what to write in your `configuration.yaml`: From 8acebed618de3b34b79d2babc15195a34785edf1 Mon Sep 17 00:00:00 2001 From: akasma74 Date: Fri, 16 Aug 2019 20:38:51 +0300 Subject: [PATCH 43/72] add record service to the list of services (#10137) and rearranged services alphabetically --- source/_components/camera.markdown | 114 ++++++++++++++--------------- 1 file changed, 57 insertions(+), 57 deletions(-) diff --git a/source/_components/camera.markdown b/source/_components/camera.markdown index 1ba029c33f7..03eb5bd36c7 100644 --- a/source/_components/camera.markdown +++ b/source/_components/camera.markdown @@ -26,7 +26,23 @@ This option will keep the stream alive, and preload the feed on Home Assistant s Once loaded, the `camera` platform will expose services that can be called to perform various actions. -Available services: `turn_on`, `turn_off`, `enable_motion_detection`, `disable_motion_detection`, `snapshot`, and `play_stream`. +Available services: `enable_motion_detection`, `disable_motion_detection`, `play_stream`, `record`, `snapshot`, `turn_off` and `turn_on`. + +#### Service `enable_motion_detection` + +Enable the motion detection in a camera. + +| Service data attribute | Optional | Description | +| ---------------------- | -------- | ----------- | +| `entity_id` | yes | Name(s) of entities to enable motion detection, e.g., `camera.living_room_camera`. | + +#### Service `disable_motion_detection` + +Disable the motion detection in a camera. + +| Service data attribute | Optional | Description | +| ---------------------- | -------- | ----------- | +| `entity_id` | yes | Name(s) of entities to disable motion detection, e.g., `camera.living_room_camera`. | #### Service `play_stream` @@ -48,61 +64,6 @@ action: media_player: media_player.chromecast ``` -#### Service `turn_on` - -Turn on camera. Not all camera models support this service, please consult individual camera page. - -| Service data attribute | Optional | Description | -| ---------------------- | -------- | ----------- | -| `entity_id` | yes | Name(s) of entities to turn on, e.g., `camera.living_room_camera`. | - -#### Service `turn_off` - -Turn off camera. Not all camera models support this service, please consult individual camera page. - -| Service data attribute | Optional | Description | -| ---------------------- | -------- | ----------- | -| `entity_id` | yes | Name(s) of entities to turn off, e.g., `camera.living_room_camera`. | - -#### Service `enable_motion_detection` - -Enable the motion detection in a camera. - -| Service data attribute | Optional | Description | -| ---------------------- | -------- | ----------- | -| `entity_id` | yes | Name(s) of entities to enable motion detection, e.g., `camera.living_room_camera`. | - -#### Service `disable_motion_detection` - -Disable the motion detection in a camera. - -| Service data attribute | Optional | Description | -| ---------------------- | -------- | ----------- | -| `entity_id` | yes | Name(s) of entities to disable motion detection, e.g., `camera.living_room_camera`. | - -#### Service `snapshot` - -Take a snapshot from a camera. - -| Service data attribute | Optional | Description | -| ---------------------- | -------- | ----------- | -| `entity_id` | no | Name(s) of entities to create a snapshot from, e.g., `camera.living_room_camera`. | -| `filename` | no | Template of a file name. Variable is `entity_id`, e.g., {% raw %}`/tmp/snapshot_{{ entity_id }}`{% endraw %}. | - -The path part of `filename` must be an entry in the `whitelist_external_dirs` in your [`homeassistant:`](/docs/configuration/basic/) section of your `configuration.yaml` file. - -For example, the following action in an automation would take a snapshot from "yourcamera" and save it to /tmp with a timestamped filename. - -{% raw %} -```yaml -action: - service: camera.snapshot - data: - entity_id: camera.yourcamera - filename: '/tmp/yourcamera_{{ now().strftime("%Y%m%d-%H%M%S") }}.jpg' -``` -{% endraw %} - #### Service `record` Make a `.mp4` recording from a camera stream. Requires `stream` integration to be set up. @@ -130,6 +91,45 @@ action: ``` {% endraw %} +#### Service `snapshot` + +Take a snapshot from a camera. + +| Service data attribute | Optional | Description | +| ---------------------- | -------- | ----------- | +| `entity_id` | no | Name(s) of entities to create a snapshot from, e.g., `camera.living_room_camera`. | +| `filename` | no | Template of a file name. Variable is `entity_id`, e.g., {% raw %}`/tmp/snapshot_{{ entity_id }}`{% endraw %}. | + +The path part of `filename` must be an entry in the `whitelist_external_dirs` in your [`homeassistant:`](/docs/configuration/basic/) section of your `configuration.yaml` file. + +For example, the following action in an automation would take a snapshot from "yourcamera" and save it to /tmp with a timestamped filename. + +{% raw %} +```yaml +action: + service: camera.snapshot + data: + entity_id: camera.yourcamera + filename: '/tmp/yourcamera_{{ now().strftime("%Y%m%d-%H%M%S") }}.jpg' +``` +{% endraw %} + +#### Service `turn_off` + +Turn off camera. Not all camera models support this service, please consult individual camera page. + +| Service data attribute | Optional | Description | +| ---------------------- | -------- | ----------- | +| `entity_id` | yes | Name(s) of entities to turn off, e.g., `camera.living_room_camera`. | + +#### Service `turn_on` + +Turn on camera. Not all camera models support this service, please consult individual camera page. + +| Service data attribute | Optional | Description | +| ---------------------- | -------- | ----------- | +| `entity_id` | yes | Name(s) of entities to turn on, e.g., `camera.living_room_camera`. | + ### Test if it works A simple way to test if you have set up your `camera` platform correctly, is to use service developer tool icon **Services** from the **Developer Tools**. Choose your service from the dropdown menu **Service**, enter something like the sample below into the **Service Data** field, and hit **CALL SERVICE**. @@ -138,4 +138,4 @@ A simple way to test if you have set up your `camera` platform correctly, is to { "entity_id": "camera.living_room_camera" } -``` \ No newline at end of file +``` From e985bf69b1a8db9f8c12022ea25c821114eb130e Mon Sep 17 00:00:00 2001 From: Glenn Morrison Date: Fri, 16 Aug 2019 14:42:48 -0500 Subject: [PATCH 44/72] Notification of non working status Added text at the beginning to let folks know that this integration is currently not working --- source/_components/googlehome.markdown | 2 ++ 1 file changed, 2 insertions(+) diff --git a/source/_components/googlehome.markdown b/source/_components/googlehome.markdown index 0921c73dbe5..48091c2bab9 100644 --- a/source/_components/googlehome.markdown +++ b/source/_components/googlehome.markdown @@ -12,6 +12,8 @@ redirect_from: - /components/device_tracker.googlehome/ --- +This integration is currently not working as Google have disabled access to their unofficial API. A workaround may be in progress, but for now, this integration should not be included in your setup. + The `googlehome` integration allows you to connect to your Google Home device using an [unofficial Google Home API][googlehomeapi]. This integration will provide: From c8a729905cd65fbe974e3b28f177716e5c9b75cb Mon Sep 17 00:00:00 2001 From: Klaas Schoute Date: Fri, 16 Aug 2019 21:55:31 +0200 Subject: [PATCH 45/72] :pencil2: Tweak --- source/_components/googlehome.markdown | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/source/_components/googlehome.markdown b/source/_components/googlehome.markdown index 48091c2bab9..0d1733c286a 100644 --- a/source/_components/googlehome.markdown +++ b/source/_components/googlehome.markdown @@ -12,7 +12,11 @@ redirect_from: - /components/device_tracker.googlehome/ --- -This integration is currently not working as Google have disabled access to their unofficial API. A workaround may be in progress, but for now, this integration should not be included in your setup. +
+ + This integration is currently not working as Google have disabled access to their unofficial API. A workaround may be in progress, but for now, this integration should not be included in your setup. + +
The `googlehome` integration allows you to connect to your Google Home device using an [unofficial Google Home API][googlehomeapi]. From e75a38b4ddb4f92934246a37785c29e9ace5b8e7 Mon Sep 17 00:00:00 2001 From: Douglas Paz Date: Sat, 17 Aug 2019 05:47:01 -0300 Subject: [PATCH 46/72] Add python3-dev in Raspberry Pi installation commands (#10046) --- source/_docs/installation/raspberry-pi.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/_docs/installation/raspberry-pi.markdown b/source/_docs/installation/raspberry-pi.markdown index 631dc2fb877..1d662e30ffc 100644 --- a/source/_docs/installation/raspberry-pi.markdown +++ b/source/_docs/installation/raspberry-pi.markdown @@ -41,7 +41,7 @@ $ sudo apt-get upgrade -y Install the dependencies. ```bash -$ sudo apt-get install python3 python3-venv python3-pip libffi-dev libssl-dev autoconf +$ sudo apt-get install python3 python3-dev python3-venv python3-pip libffi-dev libssl-dev ``` Add an account for Home Assistant called `homeassistant`. From 4502a89f06964467b0c642f7e88fcc3ac9e9b12e Mon Sep 17 00:00:00 2001 From: Courtenay Date: Sat, 17 Aug 2019 01:57:17 -0700 Subject: [PATCH 47/72] Slight changes to wording on customization help page (#10057) * Update customizing-devices.markdown * :pencil2: Tweak * Minor changes --- .../_docs/configuration/customizing-devices.markdown | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/source/_docs/configuration/customizing-devices.markdown b/source/_docs/configuration/customizing-devices.markdown index 420cd090a76..d2724cd03bc 100644 --- a/source/_docs/configuration/customizing-devices.markdown +++ b/source/_docs/configuration/customizing-devices.markdown @@ -8,19 +8,25 @@ redirect_from: /getting-started/customizing-devices/ You can use the UI to change the `entity_id` and friendly name of supported entities. To do this: -1. Select the entity, either from or from the frontend, or by clicking next to the entity in the dev-states menu +1. Select the entity, either from the frontend or by clicking next to the entity in the dev-states menu 2. Click on the cog in the right corner of the entity's dialog 3. Enter the new name or the new entity ID (remember not to change the domain of the entity - the part before the `.`) 4. Select *Save* +If your entity is not supported, or you cannot customize what you need via this method, please see below for more options: + ## Customizing entities By default, all of your devices will be visible and have a default icon determined by their domain. You can customize the look and feel of your front page by altering some of these parameters. This can be done by overriding attributes of specific entities. ### Customization using the UI -Under the *Configuration* menu you'll find the *Customization* menu. If this menu item is not visible, enable advanced mode on your [profile page](/docs/authentication/#your-account-profile) first. When you select an entity to customize, you'll see all the existing attributes listed and you can customize those, or select an additional supported attribute ([see below](/docs/configuration/customizing-devices/#possible-values)). +Under the *Configuration* menu you'll find the *Customization* menu. If this menu item is not visible, enable advanced mode on your [profile page](/docs/authentication/#your-account-profile) first. When you select an entity to customize, you'll see all the existing attributes listed and you can customize those or select an additional supported attribute ([see below](/docs/configuration/customizing-devices/#possible-values)). You may also need to add the following to your `configuration.yaml` file, depending when you started using Home Assistant: +```yaml +homeassistant: + customize: !include customize.yaml +``` #### Possible values {% configuration customize %} From eec2864ebd3e103ac6a1ffbad6346f5d8f6a3fa8 Mon Sep 17 00:00:00 2001 From: Franck Nijhof Date: Sat, 17 Aug 2019 15:25:29 +0200 Subject: [PATCH 48/72] Revert "Notification of non working status" (#10158) --- source/_components/googlehome.markdown | 6 ------ 1 file changed, 6 deletions(-) diff --git a/source/_components/googlehome.markdown b/source/_components/googlehome.markdown index 0d1733c286a..0921c73dbe5 100644 --- a/source/_components/googlehome.markdown +++ b/source/_components/googlehome.markdown @@ -12,12 +12,6 @@ redirect_from: - /components/device_tracker.googlehome/ --- -
- - This integration is currently not working as Google have disabled access to their unofficial API. A workaround may be in progress, but for now, this integration should not be included in your setup. - -
- The `googlehome` integration allows you to connect to your Google Home device using an [unofficial Google Home API][googlehomeapi]. This integration will provide: From e1b4d61a4d69cfedf97d1adfc84a8e3ea3fcf4bb Mon Sep 17 00:00:00 2001 From: Daniel Shokouhi Date: Sat, 17 Aug 2019 10:23:12 -0700 Subject: [PATCH 49/72] Correct typo in service call (#10160) --- source/_components/neato.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/_components/neato.markdown b/source/_components/neato.markdown index e7e5505f2bc..df88b15dcc9 100644 --- a/source/_components/neato.markdown +++ b/source/_components/neato.markdown @@ -64,7 +64,7 @@ Currently supported services are: - `stop` - `return_to_base` - `locate` -- `spot_clean` +- `clean_spot` And a specific Platform Service: From b6299d2d5483b3d1687a6be6ed3c4412fcc4433c Mon Sep 17 00:00:00 2001 From: lyghtnox <33329184+lyghtnox@users.noreply.github.com> Date: Sat, 17 Aug 2019 23:25:42 +0200 Subject: [PATCH 50/72] Update domain (#10164) I messed up when I submitted the updated doc for snapcast. Sorry about that, here is the correct one with the snapcast domain --- source/_components/snapcast.markdown | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/source/_components/snapcast.markdown b/source/_components/snapcast.markdown index a272fdd5ca8..ca8d6d88e54 100644 --- a/source/_components/snapcast.markdown +++ b/source/_components/snapcast.markdown @@ -37,7 +37,7 @@ port: The snapcast components provides a few services registered under the media_player component. -### Service `media_player.snapcast_snapshot` +### Service `snapcast.snapshot` Take a snapshot of what is currently playing on one or more speakers. This service, and the following one, are useful if you want to play a doorbell or notification sound and resume playback afterwards. @@ -45,7 +45,7 @@ Take a snapshot of what is currently playing on one or more speakers. This servi | ---------------------- | -------- | ----------- | | `entity_id` | no | The speakers to snapshot. -### Service `media_player.snapcast_restore` +### Service `snapcast.restore` Restore a previously taken snapshot of one or more speakers. @@ -53,7 +53,7 @@ Restore a previously taken snapshot of one or more speakers. | ---------------------- | -------- | ----------- | | `entity_id` | no | String or list of `entity_id`s that should have their snapshot restored. -### Service `media_player.snapcast_join` +### Service `snapcast.join` Group players together under a single group. @@ -62,7 +62,7 @@ Group players together under a single group. | `master` | no | Entity ID of the player to synchronize to. | `entity_id` | yes | String or list of `entity_id`s to join to the master. -### Service `media_player.snapcast_unjoin` +### Service `snapcast.unjoin` Remove one or more speakers from their group of speakers. From 8203c67fc62dc2fc7079c77e111bdd23e726e860 Mon Sep 17 00:00:00 2001 From: Paulus Schoutsen Date: Sat, 17 Aug 2019 15:44:12 -0700 Subject: [PATCH 51/72] Fix note end --- source/_components/nest.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/_components/nest.markdown b/source/_components/nest.markdown index 0874daf4f25..492d35d5906 100644 --- a/source/_components/nest.markdown +++ b/source/_components/nest.markdown @@ -195,7 +195,7 @@ script: You must have the [Nest component](/components/nest/) configured to use the platforms below. -
+
## Binary Sensor From c3f0aa16fce6e257bb79138dc9adbb1393876b24 Mon Sep 17 00:00:00 2001 From: zhumuht <40521367+zhumuht@users.noreply.github.com> Date: Sun, 18 Aug 2019 10:58:45 +0800 Subject: [PATCH 52/72] add support for yeelight: Yeelight Serene Eye-Friendly Desk Lamp (#10159) * add support for yeelight: Yeelight Serene Eye-Friendly Desk Lamp (YLTD03YL) . product url: https://www.yeelight.com/en_US/product/muse it is can use model 'mono', tested pass. * :pencil2: Tweak --- source/_components/yeelight.markdown | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/source/_components/yeelight.markdown b/source/_components/yeelight.markdown index cfc496bf392..1ba375a4a5f 100644 --- a/source/_components/yeelight.markdown +++ b/source/_components/yeelight.markdown @@ -142,7 +142,7 @@ This integration is tested to work with the following models. If you have a diff | ?, may be `ceiling3` | YLXD04YL | Yeelight Ceiling Light (Jiaoyue 450) | | `ceiling3` | YLXD05YL | Yeelight Ceiling Light (Jiaoyue 480) | | `ceiling4` | YLXD02YL | Yeelight Ceiling Light (Jiaoyue 650) | - +| `mono` | YLTD03YL | Yeelight Serene Eye-Friendly Desk Lamp | ## Platform Services @@ -155,7 +155,6 @@ Set an operation mode. | `entity_id` | no | Only act on a specific lights. | | `mode` | no | Operation mode. Valid values are 'last', 'normal', 'rgb', 'hsv', 'color_flow', 'moonlight'. | - ### Service `yeelight.start_flow` Start flow with specified transitions From 76fa1b14e6086be02ad361266bf66a053a7dd71f Mon Sep 17 00:00:00 2001 From: Juan Date: Sun, 18 Aug 2019 07:07:55 -0400 Subject: [PATCH 53/72] Update joaoapps_join.markdown (#10167) --- source/_components/joaoapps_join.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/_components/joaoapps_join.markdown b/source/_components/joaoapps_join.markdown index 878bf842718..03e28627f66 100644 --- a/source/_components/joaoapps_join.markdown +++ b/source/_components/joaoapps_join.markdown @@ -14,7 +14,7 @@ The `joaoapps_join` integration exposes services from [Join](http://joaoapps.com/join). In Home Assistant, the Join features are divided up in two locations, the Join component, and the Join notify platform. The notify platform allows us to send messages to Join devices, the component -allows us to access the other special features that Join offers. When in doubt, you can reference the [API documentation](https://joaoapps.com/join/api/) this this is based on. +allows us to access the other special features that Join offers. When in doubt, you can reference the [API documentation](https://joaoapps.com/join/api/) this is based on. In the `configuration.yaml` file you need to provide the api key and device id or name of the target device. You can find your device id and api key From 32141dd2b9605c01f955b888b0f5c0dc8b5072c2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ville=20Skytt=C3=A4?= Date: Sun, 18 Aug 2019 14:26:48 +0300 Subject: [PATCH 54/72] Document homematic default local IP (#10170) --- source/_components/homematic.markdown | 1 + 1 file changed, 1 insertion(+) diff --git a/source/_components/homematic.markdown b/source/_components/homematic.markdown index f83e5acabe7..8bd3b3ab4cd 100644 --- a/source/_components/homematic.markdown +++ b/source/_components/homematic.markdown @@ -70,6 +70,7 @@ local_ip: description: IP of device running Home Assistant. Override auto-detected value for exotic network setups. required: false type: string + default: 0.0.0.0 local_port: description: Port for connection with Home Assistant. By default it is randomly assigned. required: false From 8b7a01a05159d007417a39bf0787916e8ad2230c Mon Sep 17 00:00:00 2001 From: Paul Tarjan Date: Sun, 18 Aug 2019 08:16:50 -0700 Subject: [PATCH 55/72] Update to required (#10174) If you don't have this you get: ``` Invalid config for [roku]: required key not provided @ data['roku'][0]['host']. Got None. (See ?, line ?). Please check the docs at https://home-assistant.io/components/roku/ ``` --- source/_components/roku.markdown | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/source/_components/roku.markdown b/source/_components/roku.markdown index 69602f122db..2b48e436ea8 100644 --- a/source/_components/roku.markdown +++ b/source/_components/roku.markdown @@ -30,8 +30,8 @@ roku: {% configuration %} host: - description: Set the IP address of the Roku device. Use only if you don't want to autodiscover devices. - required: false + description: Set the IP address of the Roku device. + required: true type: string {% endconfiguration %} From f17055b624878c7f85b099950bba00fc02ea01bc Mon Sep 17 00:00:00 2001 From: Dubh Ad Date: Sun, 18 Aug 2019 20:42:53 +0100 Subject: [PATCH 56/72] Fixing indents and formatting (#10176) Too many indents, and some extra spaces --- source/_components/opengarage.markdown | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/source/_components/opengarage.markdown b/source/_components/opengarage.markdown index 5f0da78a861..751c7a74e91 100644 --- a/source/_components/opengarage.markdown +++ b/source/_components/opengarage.markdown @@ -20,14 +20,14 @@ To enable OpenGarage Covers in your installation, add the following to your `con cover: platform: opengarage covers: - garage: - host: 192.168.1.12 - device_key: opendoor - name: Left Garage Door - garage2: - host: 192.168.1.13 - device_key: opendoor - name: Right Garage Door + garage: + host: 192.168.1.12 + device_key: opendoor + name: Left Garage Door + garage2: + host: 192.168.1.13 + device_key: opendoor + name: Right Garage Door ``` {% configuration %} From 88b7e6ec92f286713ab9141537eb04869584387e Mon Sep 17 00:00:00 2001 From: kimvonmullen Date: Mon, 19 Aug 2019 20:20:45 +0200 Subject: [PATCH 57/72] Change of notification icon placement (#10187) Change of notification icon placement => Just updated to new placement --- source/_components/calendar.google.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/_components/calendar.google.markdown b/source/_components/calendar.google.markdown index 1c54c4fdc0a..fb2ade2bd60 100644 --- a/source/_components/calendar.google.markdown +++ b/source/_components/calendar.google.markdown @@ -65,7 +65,7 @@ track_new_calendar: The next steps will require you to have Home Assistant running. -After you have it running complete the Google authentication that pops up in notification (the little bell icon in the upper right corner). +After you have it running complete the Google authentication that pops up in notification (the little bell icon in the lower left corner). It will give you a URL and a code to enter. This will grant your Home Assistant service access to all the Google Calendars that the account you From c27a7218bb0644660300c9b7e7f91833c026ebcc Mon Sep 17 00:00:00 2001 From: Eirik Z <46269073+atxbyea@users.noreply.github.com> Date: Tue, 20 Aug 2019 07:53:13 +0200 Subject: [PATCH 58/72] Update tensorflow.markdown (#10183) * Update tensorflow.markdown Update with examples of scan interval and callng the scanning process based on state from an entity * :pencil2: Tweak --- source/_components/tensorflow.markdown | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/source/_components/tensorflow.markdown b/source/_components/tensorflow.markdown index 38066ccb35e..11253c3af22 100644 --- a/source/_components/tensorflow.markdown +++ b/source/_components/tensorflow.markdown @@ -160,3 +160,25 @@ image_processing: ## Optimising resources [Image processing components](/components/image_processing/) process the image from a camera at a fixed period given by the `scan_interval`. This leads to excessive processing if the image on the camera hasn't changed, as the default `scan_interval` is 10 seconds. You can override this by adding to your config `scan_interval: 10000` (setting the interval to 10,000 seconds), and then call the `image_processing.scan` service when you actually want to perform processing. + +```yaml +# Example advanced configuration.yaml entry +image_processing: + - platform: tensorflow + scan_interval: 10000 + source: + - entity_id: camera.driveway + - entity_id: camera.backyard +``` + +```yaml +# Example advanced automations.yaml entry +- alias: Tensorflow scanning + trigger: + - platform: state + entity_id: + - binary_sensor.driveway + action: + - service: image_processing.scan + entity_id: camera.driveway +``` From ed3edaa01f8beb2aae6361731fb0121f3523885c Mon Sep 17 00:00:00 2001 From: Klaas Schoute Date: Tue, 20 Aug 2019 07:53:57 +0200 Subject: [PATCH 59/72] =?UTF-8?q?=F0=9F=9A=A7=20Add=20remove=20warning=20f?= =?UTF-8?q?or=20edp=5Fredy=20integration=20(#10178)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- source/_components/edp_redy.markdown | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/source/_components/edp_redy.markdown b/source/_components/edp_redy.markdown index a1a8347af11..9422702ef13 100644 --- a/source/_components/edp_redy.markdown +++ b/source/_components/edp_redy.markdown @@ -13,6 +13,12 @@ redirect_from: - /components/switch.edp_redy/ --- +
+ + The API of this integration has been stopped and will therefore be removed in a future release. See also [this pull request](https://github.com/home-assistant/home-assistant/pull/25971) + +
+ [EDP re:dy](https://www.edp.pt/particulares/servicos/redy/) is a Home Automation platform from Portuguese energy provider EDP, that allows control of appliances and other devices, as well as monitoring power consumption. This integration allows integrating EDP re:dy into Home Assistant. ## Configuration From d3ef85208ea08ba685dba4b23d34ffad0282a84d Mon Sep 17 00:00:00 2001 From: TychoWerner <34608981+TychoWerner@users.noreply.github.com> Date: Tue, 20 Aug 2019 07:54:40 +0200 Subject: [PATCH 60/72] Added warning for integration getting removed (#10168) * Added warning for integration getting removed The googlehome integration is getting removed so letting users know when they wish to setup they know it's going away according to this pull: https://github.com/home-assistant/home-assistant/pull/26035 * :pencil2: Tweak --- source/_components/googlehome.markdown | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/source/_components/googlehome.markdown b/source/_components/googlehome.markdown index 0921c73dbe5..932a1298cdf 100644 --- a/source/_components/googlehome.markdown +++ b/source/_components/googlehome.markdown @@ -12,6 +12,12 @@ redirect_from: - /components/device_tracker.googlehome/ --- +
+ + For a couple of weeks / months this integration is broken, therefore it will be removed in the future according to [this pull request](https://github.com/home-assistant/home-assistant/pull/26035). + +
+ The `googlehome` integration allows you to connect to your Google Home device using an [unofficial Google Home API][googlehomeapi]. This integration will provide: From a20e6ac7014fa59170a2daee3a785fdf504f3213 Mon Sep 17 00:00:00 2001 From: Klaas Schoute Date: Tue, 20 Aug 2019 16:12:57 +0200 Subject: [PATCH 61/72] =?UTF-8?q?=F0=9F=94=A8=20Fix=20broken=20links=20(pa?= =?UTF-8?q?rt=205)=20(#10181)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * 🔨 Fix broken links (part 5) * Update name --- source/_addons/samba.markdown | 2 +- source/_components/asuswrt.markdown | 2 +- .../{cppm.markdown => cppm_tracker.markdown} | 2 ++ source/_components/gc100.markdown | 3 +- source/_components/introduction.markdown | 22 ------------- source/_components/luci.markdown | 2 +- source/_components/mercedesme.markdown | 30 ------------------ source/_components/qwikswitch.markdown | 8 ++--- source/_components/recollect_waste.markdown | 2 +- source/_components/tikteck.markdown | 2 +- source/_components/todoist.markdown | 2 +- source/_components/updater.markdown | 2 +- ...lc-telnet.markdown => vlc_telnet.markdown} | 2 ++ ...orm_actions_based_on_input_select.markdown | 2 +- source/_docs/ecosystem/appdaemon.markdown | 2 +- ...rea-entity-registry-and-event-cli.markdown | 2 +- source/_posts/2019-04-24-release-92.markdown | 8 ++--- source/developers/credits.markdown | 6 ++-- source/images/supported_brands/mercedesme.png | Bin 2557 -> 0 bytes 19 files changed, 26 insertions(+), 75 deletions(-) rename source/_components/{cppm.markdown => cppm_tracker.markdown} (97%) delete mode 100644 source/_components/introduction.markdown delete mode 100644 source/_components/mercedesme.markdown rename source/_components/{vlc-telnet.markdown => vlc_telnet.markdown} (98%) delete mode 100644 source/images/supported_brands/mercedesme.png diff --git a/source/_addons/samba.markdown b/source/_addons/samba.markdown index df767826ac6..488f0d75cf8 100644 --- a/source/_addons/samba.markdown +++ b/source/_addons/samba.markdown @@ -4,7 +4,7 @@ description: "Manage your Home Assistant and custom add-ons over Samba." featured: true --- -This add-on allows you to set up a [Samba](https://samba.org/) server to access Hass.io folders using Windows network shares. +This add-on allows you to set up a [Samba](https://www.samba.org) server to access Hass.io folders using Windows network shares.
diff --git a/source/_components/asuswrt.markdown b/source/_components/asuswrt.markdown index d4886aaac05..09e7cfa2edb 100644 --- a/source/_components/asuswrt.markdown +++ b/source/_components/asuswrt.markdown @@ -85,7 +85,7 @@ sensors:
-You need to [enable telnet](https://www.asus.com/support/faq/1005449/) on your router if you choose to use `protocol: telnet`. +You need to enable telnet on your router if you choose to use `protocol: telnet`.
diff --git a/source/_components/cppm.markdown b/source/_components/cppm_tracker.markdown similarity index 97% rename from source/_components/cppm.markdown rename to source/_components/cppm_tracker.markdown index d30b472ec27..c8d86e219fc 100644 --- a/source/_components/cppm.markdown +++ b/source/_components/cppm_tracker.markdown @@ -6,6 +6,8 @@ ha_category: - Presence Detection ha_release: "0.90" ha_iot_class: Local Polling +redirect_from: + - /components/cppm/ --- This platform allows you to detect presence by looking at connected devices to [Aruba Clearpass](https://www.arubanetworks.com/products/security/network-access-control/). diff --git a/source/_components/gc100.markdown b/source/_components/gc100.markdown index b073fba7e30..11765aaa454 100644 --- a/source/_components/gc100.markdown +++ b/source/_components/gc100.markdown @@ -17,7 +17,8 @@ hardware device which has an array of relays, RS232 serial ports, and flexible p There is currently support for the following device types within Home Assistant: -- [Binary Sensor](binary-sensor) +- [Configuration](#configuration) +- [Binary Sensor](#binary-sensor) - [Switch](#switch) Currently, only relays and ports configured to be digital inputs are supported in Home Assistant. For IR support, please use the [iTach remote platform](/components/remote.itach/), but note that it will likely not function concurrently on the same GC100 due to limitations in the TCP socket server implementation used by Global Caché. diff --git a/source/_components/introduction.markdown b/source/_components/introduction.markdown deleted file mode 100644 index 265de216c48..00000000000 --- a/source/_components/introduction.markdown +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "Introduction" -description: "Details about the introduction within Home Assistant." -logo: home-assistant.png -ha_qa_scale: internal -ha_release: 0.7 ---- - -
-This integration has been removed in Home Assistant 0.92. The UI will now take care of this text. -
- -The introduction integration will show a card in the UI with 'Welcome Home!' and steps on how to get started. It will also print the same message to the console when starting up. - -The introduction integration is loaded by default on a new Home Assistant instance. - -```yaml -# Example configuration.yaml entry -introduction: -``` - -To disable this component, remove the `introduction:` entry from your `configuration.yaml` file. diff --git a/source/_components/luci.markdown b/source/_components/luci.markdown index 531ef336064..4830ee51947 100644 --- a/source/_components/luci.markdown +++ b/source/_components/luci.markdown @@ -9,7 +9,7 @@ redirect_from: - /components/device_tracker.luci/ --- -_This is one of multiple ways we support OpenWRT. For an overview, see [openwrt](/components/device_tracker.openwrt/)._ +_This is one of multiple ways we support OpenWRT. For an overview, see [openwrt](/components/openwrt/)._ This is a presence detection scanner for OpenWRT using [luci](http://wiki.openwrt.org/doc/techref/luci). diff --git a/source/_components/mercedesme.markdown b/source/_components/mercedesme.markdown deleted file mode 100644 index 43f57f29790..00000000000 --- a/source/_components/mercedesme.markdown +++ /dev/null @@ -1,30 +0,0 @@ ---- -title: "Mercedes me" -description: "Instructions on how to integrate Mercedes car with Mercedes me into Home Assistant." -logo: mercedesme.png -ha_category: - - Car - - Binary Sensor - - Presence Detection - - Sensor -ha_release: 0.63 -ha_iot_class: Cloud Polling -redirect_from: - - /components/binary_sensor.mercedesme/ - - /components/device_tracker.mercedesme/ - - /components/sensor.mercedesme/ ---- - -The `mercedesme` integration offers integration with the [Mercedes me](https://www.mercedes-benz.com/de/mercedes-me/) cloud service and provides presence detection as well as sensors such as doors, tires, windows, and service interval. - -This integration provides the following platforms: - -- Binary Sensors: Windows, tires, doors and lock. -- Sensors:Fuel status, service interval, remaining km, etc. -- Device tracker: To track location of your car. - -Platforms will be automatically configured if Mercedes me integration is configured. - -
- The integration was removed. The vendor disabled the API endpoint and a new API is not available currently. -
diff --git a/source/_components/qwikswitch.markdown b/source/_components/qwikswitch.markdown index 56b08c28e58..b54ba2605e7 100644 --- a/source/_components/qwikswitch.markdown +++ b/source/_components/qwikswitch.markdown @@ -22,12 +22,12 @@ There is currently support for the following device types within Home Assistant: - Binary Sensor - Light -- Sensor -- Switch +- [Sensor](#qwikswitch-sensors) +- [Switch](#switch) -The `qwikswitch` integration discovers all devices from QS Mobile. Currently, Relays and LED dimmers are discovered in Home Assistant. Relay devices are [lights](/components/light.qwikswitch/) by default, and can be configured as [switches](/components/switch.qwikswitch/). +The `qwikswitch` integration discovers all devices from QS Mobile. Currently, Relays and LED dimmers are discovered in Home Assistant. Relay devices are lights by default, and can be configured as [switches](#switch). -Configuration +## Configuration ```yaml # Example configuration.yaml entry diff --git a/source/_components/recollect_waste.markdown b/source/_components/recollect_waste.markdown index 90b66fdd41d..d409d181630 100644 --- a/source/_components/recollect_waste.markdown +++ b/source/_components/recollect_waste.markdown @@ -10,7 +10,7 @@ redirect_from: - /components/sensor.recollect_waste/ --- -The `Recollect Waste` platform allows you to track the next scheduled waste pickup and what type of waste from [Recollect](https://recollect.net/solutions/waste/). To use this sensor your city's waste company must be Recollect and you will need to find your place_id and service_id. +The `recollect_waste` integration allows you to track the next scheduled waste pickup and what type of waste from [Recollect](https://recollect.net/private-waste-haulers/). To use this sensor your city's waste company must be Recollect and you will need to find your place_id and service_id. 1. In Chrome open developer tools and go to the network tab. 2. Go to your city's Recollect collection calendar. diff --git a/source/_components/tikteck.markdown b/source/_components/tikteck.markdown index 1cb6013bca9..e237c431538 100644 --- a/source/_components/tikteck.markdown +++ b/source/_components/tikteck.markdown @@ -41,7 +41,7 @@ devices: type: string {% endconfiguration %} -The password can be obtained from an Android device using an app like [aLogcat](https://play.google.com/store/apps/details?id=org.jtb.alogcat&hl=en) or the `adb logcat` command for phones in developer mode. Look for a line like: +The password can be obtained from an Android device using an app like [aLogcat](https://play.google.com/store/apps/details?id=rs.pedjaapps.alogcatroot.app&hl=en) or the `adb logcat` command for phones in developer mode. Look for a line like: ``` E LedoBleSDK: login =skName=======[Smart Light]=======skPw==[password] diff --git a/source/_components/todoist.markdown b/source/_components/todoist.markdown index 4d97b34a28f..f8fc8c8cc50 100644 --- a/source/_components/todoist.markdown +++ b/source/_components/todoist.markdown @@ -91,7 +91,7 @@ As you can see, there are 4 custom projects here: You can mix-and-match these attributes to create all sorts of custom projects. You can even use [IFTTT](https://ifttt.com/todoist) to create a task with a certain label, then have Home Assistant do some kind of automation when a task with that label comes due. -Home Assistant does its best to [determine what task in each project is "most" important](https://github.com/home-assistant/home-assistant/blob/master/homeassistant/components/calendar/todoist.py#L432), and it's that task which has its state reported. You can access the other tasks you have due soon via the `all_tasks` array (see below). +Home Assistant does its best to [determine what task in each project is "most" important](https://github.com/home-assistant/home-assistant/blob/master/homeassistant/components/todoist/calendar.py), and it's that task which has its state reported. You can access the other tasks you have due soon via the `all_tasks` array (see below). ### Sensor attributes diff --git a/source/_components/updater.markdown b/source/_components/updater.markdown index 3b5f99d0709..b991e36bc54 100644 --- a/source/_components/updater.markdown +++ b/source/_components/updater.markdown @@ -10,7 +10,7 @@ ha_release: 0.8 The `updater` integration will check daily for new releases. It will show a badge in the frontend if a new version is found. As [Hass.io](/hassio/) has its own schedule for release it doesn't make sense to use this integration on Hass.io. -The updater integration will also collect basic information about the running Home Assistant instance and its environment. The information includes the current Home Assistant version, the time zone, Python version and operating system information. No identifiable information (i.e., IP address, GPS coordinates, etc.) will ever be collected. If you are concerned about your privacy, you are welcome to scrutinize the Python [source code](https://github.com/home-assistant/home-assistant/blob/dev/homeassistant/components/updater.py#L91). +The updater integration will also collect basic information about the running Home Assistant instance and its environment. The information includes the current Home Assistant version, the time zone, Python version and operating system information. No identifiable information (i.e., IP address, GPS coordinates, etc.) will ever be collected. If you are concerned about your privacy, you are welcome to scrutinize the Python [source code](https://github.com/home-assistant/home-assistant/blob/dev/homeassistant/components/updater). ## Configuration diff --git a/source/_components/vlc-telnet.markdown b/source/_components/vlc_telnet.markdown similarity index 98% rename from source/_components/vlc-telnet.markdown rename to source/_components/vlc_telnet.markdown index 7bef2182ebd..d15e8a4fb32 100644 --- a/source/_components/vlc-telnet.markdown +++ b/source/_components/vlc_telnet.markdown @@ -6,6 +6,8 @@ ha_category: - Media Player ha_release: 0.95 ha_iot_class: Local Polling +redirect_from: + - /components/vlc-telnet --- The `vlc_telnet` platform allows you to control a [VLC media player](http://www.videolan.org/vlc/index.html) using the built in telnet interface. diff --git a/source/_cookbook/perform_actions_based_on_input_select.markdown b/source/_cookbook/perform_actions_based_on_input_select.markdown index 2fc59a90bb7..bead33bdf04 100644 --- a/source/_cookbook/perform_actions_based_on_input_select.markdown +++ b/source/_cookbook/perform_actions_based_on_input_select.markdown @@ -4,7 +4,7 @@ description: "Example playing media to Chromecast based on input select element" ha_category: Automation Examples --- -This example uses an [`input_select`](/components/input_select/) element to pick which mp3 file to play on a [Chromecast](components/media_player.cast/). +This example uses an [`input_select`](/components/input_select/) element to pick which mp3 file to play on a [Chromecast](/components/cast/). ```yaml # Define our dropdown list diff --git a/source/_docs/ecosystem/appdaemon.markdown b/source/_docs/ecosystem/appdaemon.markdown index 58b20ea4642..f4c05863a79 100755 --- a/source/_docs/ecosystem/appdaemon.markdown +++ b/source/_docs/ecosystem/appdaemon.markdown @@ -101,4 +101,4 @@ Of course, if I wanted to make this App or its predecessor reusable, I would hav In addition, Apps can write to `AppDaemon`'s log files, and there is a system of constraints that allows you to control when and under what circumstances Apps and callbacks are active to keep the logic clean and simple. -For full installation instructions, see the [AppDaemon Project Documentation pages](http://appdaemon.readthedocs.io/en/stable/). If you're using Hassbian, then the [Hassbian scripts](https://github.com/home-assistant/hassbian-scripts/blob/dev/docs/appdaemon.md) make it easy to install. +For full installation instructions, see the [AppDaemon Project Documentation pages](http://appdaemon.readthedocs.io/en/stable/). If you're using Hassbian, then the [Hassbian scripts](https://github.com/home-assistant/hassbian-scripts/blob/dev/docs/suites/appdaemon.md) make it easy to install. diff --git a/source/_posts/2019-02-11-hass-cli-0-dot-5-area-entity-registry-and-event-cli.markdown b/source/_posts/2019-02-11-hass-cli-0-dot-5-area-entity-registry-and-event-cli.markdown index ddf0f0edbe1..3940cf811bb 100644 --- a/source/_posts/2019-02-11-hass-cli-0-dot-5-area-entity-registry-and-event-cli.markdown +++ b/source/_posts/2019-02-11-hass-cli-0-dot-5-area-entity-registry-and-event-cli.markdown @@ -144,7 +144,7 @@ Minor fixes: * fix bad typing [499b544](http://github.com/home-assistant/home-assistant-cli/commit/499b5449b0441b546ea48aff212754433457dbd5) @maxandersen * fix editor formatting [86d9bf8](http://github.com/home-assistant/home-assistant-cli/commit/86d9bf8bf6bfb5bec1a9f28177c105f84912a91b) @maxandersen * Fix version [3765a03](http://github.com/home-assistant/home-assistant-cli/commit/3765a03ccf11f0865baa7e70937279bcaa245352) @maxandersen -* Fix version marker [edbe4bf](http://github.com/homeassistant/homeassistant-cli/commit/edbe4bf42e7d0993d68a367ca04ad80217aac395) @maxandersen +* Fix version marker [edbe4bf](http://github.com/home-assistant/home-assistant-cli/commit/edbe4bf42e7d0993d68a367ca04ad80217aac395) @maxandersen Have fun! diff --git a/source/_posts/2019-04-24-release-92.markdown b/source/_posts/2019-04-24-release-92.markdown index 8ef8d80b108..58984611a7c 100644 --- a/source/_posts/2019-04-24-release-92.markdown +++ b/source/_posts/2019-04-24-release-92.markdown @@ -229,7 +229,7 @@ Experiencing issues introduced by this release? Please report them in our [issue - Always set latest pin ([@balloob] - [#23328]) ([cloud docs]) (beta fix) - Add sensor and binary senseor to default expose ([@balloob] - [#23332]) ([google_assistant docs]) (beta fix) - Support unicode in configuration migration ([@awarecan] - [#23335]) (beta fix) -- Remove ghost folder ([@awarecan] - [#23350]) (aws_lambda docs) ([aws_sns docs]) ([aws_sqs docs]) (beta fix) +- Remove ghost folder ([@awarecan] - [#23350]) (aws_lambda docs) (aws_sns docs) (aws_sqs docs) (beta fix) ## All changes @@ -301,7 +301,7 @@ Experiencing issues introduced by this release? Please report them in our [issue - Google Assistant: Add support for open/close binary sensors ([@balloob] - [#22674]) ([binary_sensor docs]) ([google_assistant docs]) - Update light/services.yaml ([@emontnemery] - [#22662]) - Fix connection loss issues for Harmony ([@ehendrix23] - [#22687]) ([harmony docs]) -- Remove aws_* notify platforms ([@awarecan] - [#22698]) (aws_lambda docs) ([aws_sns docs]) ([aws_sqs docs]) +- Remove aws_* notify platforms ([@awarecan] - [#22698]) (aws_lambda docs) (aws_sns docs) (aws_sqs docs) - Add manifests ([@balloob] - [#22699]) - Add a .codecov.yml to control coverage statuses and enable notifications ([@robbiet480] - [#22707]) - Raise ConfigEntryNotReady for MQTT connection exception ([@aav7fl] - [#22540]) @@ -542,7 +542,7 @@ Experiencing issues introduced by this release? Please report them in our [issue - Always set latest pin ([@balloob] - [#23328]) ([cloud docs]) (beta fix) - Add sensor and binary senseor to default expose ([@balloob] - [#23332]) ([google_assistant docs]) (beta fix) - Support unicode in configuration migration ([@awarecan] - [#23335]) (beta fix) -- Remove ghost folder ([@awarecan] - [#23350]) (aws_lambda docs) ([aws_sns docs]) ([aws_sqs docs]) (beta fix) +- Remove ghost folder ([@awarecan] - [#23350]) (aws_lambda docs) (aws_sns docs) (aws_sqs docs) (beta fix) [#19590]: https://github.com/home-assistant/home-assistant/pull/19590 [#20256]: https://github.com/home-assistant/home-assistant/pull/20256 @@ -966,8 +966,6 @@ Experiencing issues introduced by this release? Please report them in our [issue [automation docs]: /components/automation/ [awair docs]: /components/awair/ [aws docs]: /components/aws/ -[aws_sns docs]: /components/aws_sns/ -[aws_sqs docs]: /components/aws_sqs/ [axis docs]: /components/axis/ [binary_sensor docs]: /components/binary_sensor/ [bloomsky docs]: /components/bloomsky/ diff --git a/source/developers/credits.markdown b/source/developers/credits.markdown index 45b545902d3..4769d6ad038 100644 --- a/source/developers/credits.markdown +++ b/source/developers/credits.markdown @@ -4541,7 +4541,7 @@ This page contains a list of people who have contributed in one way or another t - [jaminh (@jaminh)](https://github.com/jaminh "1 total commits to the Home Assistant orga: 1 commit to open-zwave ") -- [JammyDodger231 (@JammyDodger231)](https://github.com/JammyDodger231 "6 total commits to the Home Assistant orga: +- [JamesMcClelland (@JamesMcClelland)](https://github.com/JamesMcClelland "6 total commits to the Home Assistant orga: 6 commits to home-assistant.io ") - [Jan Almeroth (@jalmeroth)](https://github.com/jalmeroth "8 total commits to the Home Assistant orga: @@ -7698,7 +7698,7 @@ This page contains a list of people who have contributed in one way or another t 12 commits to home-assistant 9 commits to home-assistant.io ") -- [Nick Zelei (@zelein)](https://github.com/zelein "1 total commits to the Home Assistant orga: +- [Nick Zelei (@nickzelei)](https://github.com/nickzelei "1 total commits to the Home Assistant orga: 1 commit to home-assistant.io ") - [Nicko van Someren (@nickovs)](https://github.com/nickovs "9 total commits to the Home Assistant orga: @@ -8350,7 +8350,7 @@ This page contains a list of people who have contributed in one way or another t - [Peter Tisovčík (@mienkofax)](https://github.com/mienkofax "1 total commits to the Home Assistant orga: 1 commit to open-zwave ") -- [Peter Weidenkaff (@hansgans)](https://github.com/hansgans "1 total commits to the Home Assistant orga: +- [Peter Weidenkaff (@weidenka)](https://github.com/weidenka "1 total commits to the Home Assistant orga: 1 commit to home-assistant.io ") - [Peter Zsak (@wroadd)](https://github.com/wroadd "1 total commits to the Home Assistant orga: diff --git a/source/images/supported_brands/mercedesme.png b/source/images/supported_brands/mercedesme.png deleted file mode 100644 index 008791b1a702796d711e789a3c717591d15e0a44..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2557 zcmVPx#hfqvZMF0Q*0vaO)B{BgJ77GgtBO@de6BGac{{sXC z00|8n8ynWw*t4^2|9s6oBIZB8oWAL(I_jw0-~QyL$tsNlwqXX|vY7 zru=9V5wkz`h~j3m+UD5#argd9wZmbz&uxco9ktT>&vmWZM)8Mz{qR(TyOUer4|-Hy}dn+O7Puox8LF4gElV92BHT+A&3zp1?a)H z93PtFIC$W2*yomG+13LXm@~gUKgCwQ-`3aSvW-=Pt86Xc^4G4E_~rQ}w)1WNhe`Jx zP)v?mS~ZD3K0l{0?X~r1F_~}GfVpZC`t&@3I&$mpG6D*C30p4-7lDA;z9m)o7Lc%& zl28#87O3M!D|Gw~TQNs{b6{PoX|dvK95`f^Bx6)qwf!~G)(AqT%K0kCD)V_-QM-P8 zj*WdJR_#AN2ZiF?b~ZmiA+>K?KY#K)0Dm z%*TuA&=Kq*Jwt(M^gKin7uJP0?C^gIAhPr-6eCMPA}_+hZBwc=38q#Vka*)3*$h2q zM#l);ruT%J7vZ6y$x@FZ8pNG+@1{_*BRp-vqPS8Bq_O~wkIrE*2x@{59QDc%W(gc+ zHv)9Vu4)5SwPeF2}37C%r=U#Y`62r|D zNW3u11jlsVqBGM!RBcGGY66hSSn+wrWQCVx z>a?gV(+ycNlF95Kd8B%?vIKJ?ed3jU%0CAI-Rss6Rw&h!@HeSU`BvgbHa7suFP(h> z=`?Rd(vW_DL|&GfCh0i{nE#n-!OjYE+DO2Z7DqH7URfKxPy^ z0s|`BRJlhtqKdR3ph6_ejN5(FXyJ5S$nF@RPo_8UlqzU)P@Y`ml!P%pC!%673j%!^?HOyCXYby93d*{ zEAr?H1QQ~PSuA$uEwh78p9s=-$!lUpaoi5OAId}tJC z1a+#*r5MmtPK#PrTMmN6QAf2P`d3H<8dkMQP|hgYgozLjhxC+U8_+NiZQeG5O1M!rjs{8%|YiORhmHKBHgvKZ_sd(&RkzMi8zHd9fv_h819-V%mNkA z#76}7bIY!d6QMVIxlsydq{5KA%}v!EAYG-~p$$vP2c zsrK@8$ckbTFbx^5{D}ynPW0K#kXcN<5ZO>%gD3{8jO381lDX5uy{`qRlP5UTJv3`oQavJsR>_+8wx#9Zv$8ld?!m;mk z^OpW?Ev0?4=%XmCm_D*?HK zg<0?UN-PT^%{{Jqd|!!Wsau}kpHcD(mbH?Y<+JbKj%QCVR&B2(?)dDxH-P>2?P%4j zc}nE_%=sP(eR<)lQHWN__ckg%JxhB{&$Uq{-?0z*{N&`TdLH~elK6Sz^}04pfRB9r z$u0@AxXxErF8Yq|e369rLu=)$d#;W5roKc%`aoLw`Zi23B(ZPb01<}+aM+v8T1jp* zc_yE;cAXqp$J&l#-?U4}c~bkF*SefyxS!Yl_x-Yd{_^&O+nCq8*h7U_`QK4k{q*|M z-oCN+e~MjpZ8`ORTmPwIaq8pi>(R3FwQsls)2b~i-|e=a)U>|6KfJylZR=mRov%VE z^)?4lcZUPO;Oip{mMcDl0XX#Q*8%$K{6Y2&>bFPiExyKc*y(mah~3@>qsr@t*`>w+ z1z7L}tL@(4sMmXd;?drHqjtVO9{1`cG2H+PZSL_l)w=jv)ls)SG| Date: Tue, 20 Aug 2019 09:55:04 -0700 Subject: [PATCH 62/72] Update frontend.markdown --- source/_components/frontend.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/_components/frontend.markdown b/source/_components/frontend.markdown index 5576c691f5f..508ae23f407 100644 --- a/source/_components/frontend.markdown +++ b/source/_components/frontend.markdown @@ -17,7 +17,7 @@ frontend: {% configuration %} javascript_version: - description: "Version of the JavaScript to serve to clients. Options: `es5` - transpiled so old browsers understand it. `latest` - not transpiled, so will work on recent browsers only. `auto` - select a version according to the browser user-agent. The value in the config can be overiden by putting `es5` or `latest` in the URL. For example `http://localhost:8123/states?es5` " + description: "DEPRECATED, it is now done using feature detection in the browser. Version of the JavaScript to serve to clients. Options: `es5` - transpiled so old browsers understand it. `latest` - not transpiled, so will work on recent browsers only. `auto` - select a version according to the browser user-agent. The value in the config can be overiden by putting `es5` or `latest` in the URL. For example `http://localhost:8123/states?es5` " required: false type: string default: auto From 019b66c779d3aa8617a55a8e1660bf19faf5e54a Mon Sep 17 00:00:00 2001 From: tiagofreire-pt <41837236+tiagofreire-pt@users.noreply.github.com> Date: Tue, 20 Aug 2019 19:32:25 +0100 Subject: [PATCH 63/72] Add mention for TX-55CX680B (#10191) --- source/_components/panasonic_viera.markdown | 1 + 1 file changed, 1 insertion(+) diff --git a/source/_components/panasonic_viera.markdown b/source/_components/panasonic_viera.markdown index 01cfb0474eb..270159f227d 100644 --- a/source/_components/panasonic_viera.markdown +++ b/source/_components/panasonic_viera.markdown @@ -19,6 +19,7 @@ Currently known supported models: - TX-49DX650B - TX-50DX700B - TX-55CX700E +- TX-55CX680B - TX-55EXW584 - TX-65EXW784 - TX-L42ET50 From e4f9b60987ccf09d36a9fee53bb644660af0fc07 Mon Sep 17 00:00:00 2001 From: Pascal Vizeli Date: Wed, 21 Aug 2019 23:05:28 +0200 Subject: [PATCH 64/72] Remove vagrant (#10192) * Remove vagrant * Remove references and unused asset --- source/_docs/installation.markdown | 6 -- source/_docs/installation/updating.markdown | 6 +- source/_docs/installation/vagrant.markdown | 112 -------------------- source/images/supported_brands/vagrant.png | Bin 2115 -> 0 bytes 4 files changed, 3 insertions(+), 121 deletions(-) delete mode 100644 source/_docs/installation/vagrant.markdown delete mode 100644 source/images/supported_brands/vagrant.png diff --git a/source/_docs/installation.markdown b/source/_docs/installation.markdown index 712384f1a16..14021f1d3b6 100644 --- a/source/_docs/installation.markdown +++ b/source/_docs/installation.markdown @@ -107,12 +107,6 @@ These guides are provided as-is. Some of these install methods are more limited
Synology
- -
- -
-
Vagrant
-
diff --git a/source/_docs/installation/updating.markdown b/source/_docs/installation/updating.markdown index 737bc171273..70caea19b07 100644 --- a/source/_docs/installation/updating.markdown +++ b/source/_docs/installation/updating.markdown @@ -6,7 +6,7 @@ redirect_from: /getting-started/updating/
-The upgrade process differs depending on the installation you have, so please review the documentation that is specific to your install [Hass.io](/hassio/), [Hassbian](/docs/installation/hassbian/common-tasks/#update-home-assistant), [Vagrant](/docs/installation/vagrant/), or [Virtualenv](/docs/installation/virtualenv/#upgrading-home-assistant). +The upgrade process differs depending on the installation you have, so please review the documentation that is specific to your install [Hass.io](/hassio/), [Hassbian](/docs/installation/hassbian/common-tasks/#update-home-assistant), or [Virtualenv](/docs/installation/virtualenv/#upgrading-home-assistant).
@@ -14,7 +14,7 @@ Check what's new in the latest version and potentially impacts your system in [H
-To avoid permission errors, the upgrade must be run as the same user as the installation was completed, again review the documentation specific to your install [Hass.io](/hassio/), [Hassbian](/docs/hassbian/installation/), [Vagrant](/docs/installation/vagrant/), or [Virtualenv](/docs/installation/virtualenv). +To avoid permission errors, the upgrade must be run as the same user as the installation was completed, again review the documentation specific to your install [Hass.io](/hassio/), [Hassbian](/docs/hassbian/installation/), or [Virtualenv](/docs/installation/virtualenv).
@@ -75,6 +75,6 @@ Best practice for updating a Hass.io installation: 1. Backup your installation, using the snapshot functionality Hass.io offers. 2. Check the release notes for breaking changes on [Home Assistant release notes](https://github.com/home-assistant/home-assistant/releases). Be sure to check all release notes between the version you are running and the one you are upgrading to. Use the search function in your browser (`CTRL + f`) and search for **Breaking Changes**. -3. Check your configuration using the [Check Home Assistant configuration](/addons/check_config/) add-on. +3. Check your configuration using the [Check Home Assistant configuration](/addons/check_config/) add-on. 4. If the check passes, you can safely update. If not, update your configuration accordingly. 5. Update Home Assistant. diff --git a/source/_docs/installation/vagrant.markdown b/source/_docs/installation/vagrant.markdown deleted file mode 100644 index 3731173cd40..00000000000 --- a/source/_docs/installation/vagrant.markdown +++ /dev/null @@ -1,112 +0,0 @@ ---- -title: "Installation on Vagrant" -description: "Instructions to run Home Assistant on a Vagrant VM." -redirect_from: /getting-started/installation-vagrant/ ---- - -A `Vagrantfile` is available into `virtualization/vagrant` folder for quickly spinning up a Linux virtual machine running Home Assistant. This can be beneficial for those who want to experiment with Home Assistant and/or developers willing to easily test local changes and run test suite against them. In the same `virtualization/vagrant` folder there's also a `provision.sh` shell script which provides an easy way to interact with the Home Assistant instance running within the Vagrant VM. For Windows, use the batch script `provision.bat`. - -
-Vagrant is intended for testing/development only. It is NOT recommended for permanent installations. -
- -## Install Vagrant - -You must have [Vagrant](https://www.vagrantup.com/downloads.html) and [Virtualbox](https://www.virtualbox.org/wiki/Downloads) installed on your workstation. Vagrant and Virtualbox support all the main platforms, including Windows, MacOS and Linux. - -Limited support is available for Hyper-V on Windows, see below. - -## Get Home Assistant source code - -Download the Home Assistant source code by either downloading the .zip file from [GitHub releases page](https://github.com/home-assistant/home-assistant/releases) or by using [Git](https://git-scm.com/) - -```bash -$ git clone https://github.com/home-assistant/home-assistant.git -$ cd home-assistant/virtualization/vagrant -``` - -
- -The following instructions will assume you changed your working directory to be `home-assistant/virtualization/vagrant`. This is mandatory because Vagrant will look for information about the running VM inside that folder and won't work otherwise - -
- -
- -When using Vagrant on Windows, change git's `auto.crlf` to input before cloning the Home Assistant repository. With input setting git won't automatically change line endings from Unix LF to Windows CRLF. Shell scripts executed during provision won't work with Windows line endings. - -
- -```bash -$ git config --global core.autocrlf input -``` - -## Create the Vagrant VM and start Home Assistant - -```bash -$ ./provision.sh setup -``` - -This will download and start a virtual machine using Virtualbox, which will internally setup the development environment necessary to start Home Assistant. The whole process might take up to 30 minutes to complete, depending on Internet connection speed and workstation resources. After the VM has started successfully, the Home Assistant frontend will be accessible locally from your browser at [http://localhost:8123](http://localhost:8123) - -## Stopping Vagrant - -To shutdown the Vagrant host: - -```bash -$ ./provision.sh stop -``` - -To start it again: - -```bash -$ ./provision.sh start -``` - -## Restarting Home Assistant process to test changes - -The root `home-assistant` directory on your workstation will be mirrored with `/home-assistant` inside the VM. In `virtualization/vagrant` there's also a `config` folder that you can use to drop configuration files (Check the [Configuration section](/docs/configuration/) in the docmentation for more information about how to configure Home Assistant). - -Any changes made to the local directory on your workstation will be available from the Vagrant host, so to apply your changes to the Home Assistant process, just restart it using the provided `provision.sh` wrapper script: - -```bash -$ ./provision.sh restart -``` - -
-This command will only restart the Home Assistant process inside the Vagrant VM, it will not reboot the virtual machine. If that's what you want, the right command is vagrant reload -
- -## Run test suite (Tox) - -To run tests against the local version of Home Assistant code: - -```bash -$ ./provision.sh tests -``` - -## Cleanup - -To completely remove the VM - -```bash -$ ./provision.sh destroy -``` - -To completely remove the VM **and** setup a fresh new environment: - -```bash -$ ./provision.sh recreate -``` - -## Windows - -On Windows, Vagrant is launched through an elevated `PowerShell`. Use the batch script `provision.bat` instead of the shell script `provision.sh`. - -## Hyper-V - -It is possible to use Hyper-V instead of Virtualbox on Windows, with some limitations. - -Samba is used for the virtual machine to access files, for which the Windows credentials are needed when the machine is created. -As Hyper-V does not allow for port forwarding, NAT is used by default for the network. Through creating an external network switch in Hyper-V it is possible to access the machine on the network. -The IP address is visible on creation, and through the Hyper-V manager. diff --git a/source/images/supported_brands/vagrant.png b/source/images/supported_brands/vagrant.png deleted file mode 100644 index b924569ea71135319753c3075434139f560ba150..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2115 zcmV-J2)y@+P)Px#icm~cMMrQgww1>gMU{m&fDk>gww1>gnm}VzA;Nkjp2K%P5e{>gwuMsoXP`&qJTpbGF{nz>ptk(W~ydMs~KgrU41n%%@m97-y?GrGV{r+0w{rGbHuHXLD zdwNLyQ2DYj zPSbvcAe6TK2@Uh`@im(axWm{#r+&X*BS=WQaX(r5`gpTd#m6t*w(aS#PLQgj<9>JA zZ*N6Fz@zBIVUN50*a67%+xkGVkoL#JmJTvht|A~vx(Uwp?Qn+w?f3n--@mRf{l+yN z&c|&>+i?dd+v!p`K>|?(f8YH1HH_YfLzj{^DStkN17BIO=YAUKvu!2kz#Re9ujrF~->Qs$A4d*rko zM{CNXM0yMUN)Qw3B(|AieN5tuOAZO5vMkdmAm$EXS3)HhCu96D!mpWcOJlcHowT+; zejf*zc@zXWXM|!iv=Zbg&=*V3EAbB&UP06+&%V{7 z^BQx$3U&BN4^1ZgMyfs~HNKR$ZCGS!nwGg=lnSKUFl(v=pouj-b=YP$h!5S*!)b`kCU2sk>P8!jwfEqOVFP{-=cTen0dsjXx6smfe)368_;A`mv_t7(EA z01pkzx-AF-NnGs`0V1uy2keJ@p0zrWVf$WBd*F#I0A*eJ!>;O{MuYLfMv-yZUqb&wPv`c;fLQ$=d z3d#k=Fb)#r>7uF|IiZh`y?oX(XgB;D5Uwl;PNOaUVC|CoASnl7f7Hy2n9g|(;W=P` z9qP8W{MN;yTO35YQvVE9#4HP60>sCOq-Rf;Tt5Cy^OY& zKzsxu9~c;I30EtZ+y@~A?FJDhI2hta!7%6=VRPE4k~Bu`0~ zEP%u{)6_Jys96WSA&>#C%&n+oXk04`r8EqZRYf2xdzf&8z9r1A(jfR#YDBYw_i*P}));010SIAf)N~ z?P0q&>qI6d%Bu^#yQ1PDVJXW@wWPZNk}B{bMu`}i(3TDx?vf=Crih`3MF-X4J_vV= z8f1R+Bw|uBO&2^zYCmBskme4EaA6Exdyev#`ZC0h(3S?_E?ESLD=LbH*4Dre$Kz?d zT2a|~0;blTLy#)xL5>%^_5sEDwpuG(jC7~3!5h}-xXF? zV_jTUIyXIT5baZ(QVf4eNx{nMPtt_N^uvJd1!qd zA=Sw$3AH`2doHscLm(_lWF5K#LMpLgqO>)jy{wy|&L`COeK~+Q_p^&jBFP4MQPo~u z6@C`+Nl$$rsVMV(wx!@(?^=mChG(Yu#vER{glX9Y+L2^kvQ1; zYJk{aAs;?%k2`@eu#K*_hXQd*)@b!SbG3u$OeR>Q^#4Jq|LylzLqB$E|DA80Owbbd z>wHIb&wTL$L9Ps0iJ#b;&=>M(ApHH6ppf-s+MZYYj_O{xH&pNTj^-6s{BR)b{T27d zbo@3TuaCz8&5XzQfY09= ty$4kls*JhU^-nK>^Y|7N&yQ3+{s9ArF@X4FRCE9U002ovPDHLkV1f)K4u1du From bada3f499c02847cdffec154fb3525e44b2c7fff Mon Sep 17 00:00:00 2001 From: Dougal Matthews Date: Wed, 21 Aug 2019 22:06:12 +0100 Subject: [PATCH 65/72] Update climate.markdown (#10199) --- source/_components/climate.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/_components/climate.markdown b/source/_components/climate.markdown index 07687206975..1b367c3e967 100644 --- a/source/_components/climate.markdown +++ b/source/_components/climate.markdown @@ -168,7 +168,7 @@ automation: ### Service `climate.set_swing_mode` -Set operation mode for climate device +Set swing operation mode for climate device | Service data attribute | Optional | Description | | ---------------------- | -------- | ----------- | From c6e529535539fa19eb22aef87c956fce12203f2f Mon Sep 17 00:00:00 2001 From: pdeelen <47855097+pdeelen@users.noreply.github.com> Date: Wed, 21 Aug 2019 23:12:16 +0200 Subject: [PATCH 66/72] Update utility_meter.markdown (#10175) Hi, I was adding the last part of this page to my Home Assistant installation. Icon was not allowed, and the value must between quotes. --- source/_components/utility_meter.markdown | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/source/_components/utility_meter.markdown b/source/_components/utility_meter.markdown index a79537d2ee2..59af11842ce 100644 --- a/source/_components/utility_meter.markdown +++ b/source/_components/utility_meter.markdown @@ -188,13 +188,11 @@ sensor: sensors: daily_power: friendly_name: Daily Power - icon: mdi:counter unit_of_measurement: kWh - value_template: {{ states('sensor.daily_power_offpeak')|float + states('sensor.daily_power_peak')|float }} + value_template: "{{ states('sensor.daily_power_offpeak')|float + states('sensor.daily_power_peak')|float }}" monthly_power: friendly_name: Monthly Power - icon: mdi:counter unit_of_measurement: kWh - value_template: {{ states('sensor.monthly_power_offpeak')|float + states('sensor.monthly_power_peak')|float }} + value_template: "{{ states('sensor.monthly_power_offpeak')|float + states('sensor.monthly_power_peak')|float }}" ``` {% endraw %} From 61da52ca1fd334d6d8491b17c5ed174addee2741 Mon Sep 17 00:00:00 2001 From: michaeldavie Date: Wed, 21 Aug 2019 17:12:44 -0400 Subject: [PATCH 67/72] Correct specification for radar site IDs (#10148) * Correct specification for radar site IDs * :pencil2: Tweak --- source/_components/environment_canada.markdown | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/source/_components/environment_canada.markdown b/source/_components/environment_canada.markdown index 1a230d56c52..8ec9178bbeb 100644 --- a/source/_components/environment_canada.markdown +++ b/source/_components/environment_canada.markdown @@ -129,7 +129,7 @@ longitude: required: inclusive type: float station: - description: The station code of a specific weather station to use. If provided, this station will be used and any latitude/longitude coordinates provided will be ignored. Station codes must be in the form of `AB/s0000123`, where `AB`is a provincial abbreviation and `s0000123` is a numeric station code. + description: The station code of a specific weather station to use. If provided, this station will be used and any latitude/longitude coordinates provided will be ignored. Station codes must be in the form of `AB/s0000123`, where `AB`is a provincial abbreviation and `s0000123` is a numeric station code. required: false type: string language: @@ -177,7 +177,7 @@ camera: - If no name is given, the camera entity will be named `camera._radar`. - The platform automatically determines which radar station to use based on the system's latitude/longitude settings. For greater precision, it is also possible to specify either: - - A specific station ID from [this table](https://en.wikipedia.org/wiki/Canadian_weather_radar_network#List_of_radars) (remove the leading `C`, e.g. `XFT` or `ASBV`), or + - A specific station ID from [this table](https://en.wikipedia.org/wiki/Canadian_weather_radar_network#List_of_radars). The code must be in the form `XXX` or `CXXXX`, i.e., remove the leading `C` only if the result forms a three-letter code, otherwise, include it. Valid values include `XFT` for Ottawa or `CASBV` for Montreal. - A specific latitude/longitude {% configuration %} @@ -190,7 +190,7 @@ longitude: required: inclusive type: float station: - description: The station code of a specific radar station to use. If provided, this station will be used and any latitude/longitude coordinates provided will be ignored. + description: The station code of a specific radar station to use. If provided, this station will be used and any latitude/longitude coordinates provided will be ignored. Must be in the form `XXX` or `CXXXX`. required: false type: string name: From d6a4d02e04dd5fd7980b835c26cb0c3aba581f11 Mon Sep 17 00:00:00 2001 From: Mick Dekkers Date: Wed, 21 Aug 2019 23:13:50 +0200 Subject: [PATCH 68/72] Update references to away mode in generic_thermostat documentation (#10171) * Update references to away mode in generic_thermostat documentation * :ambulance: Fix build error --- source/_components/generic_thermostat.markdown | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/source/_components/generic_thermostat.markdown b/source/_components/generic_thermostat.markdown index ce18077f285..ded18e84a9b 100644 --- a/source/_components/generic_thermostat.markdown +++ b/source/_components/generic_thermostat.markdown @@ -77,7 +77,7 @@ initial_hvac_mode: required: false type: string away_temp: - description: Set the temperature used by "away_mode". If this is not specified, away_mode feature will not get activated. + description: "Set the temperature used by `preset_mode: away`. If this is not specified, the preset mode feature will not be available." required: false type: float precision: @@ -91,7 +91,7 @@ A full configuration example looks like the one below. `min_cycle_duration` and Currently the `generic_thermostat` climate platform supports 'heat', 'cool' and 'off' hvac modes. You can force your `generic_thermostat` to avoid starting by setting HVAC mode to 'off'. -Please note that changing Away Mode you will force a target temperature change as well that will get restored once the Away Mode is turned off. +Please note that when changing the preset mode to away, you will force a target temperature change as well that will get restored once the preset mode is set to none again. ```yaml # Full example configuration.yaml entry From f2ea677f073c8b451d80aa553a954d42b957205f Mon Sep 17 00:00:00 2001 From: Klaas Schoute Date: Wed, 21 Aug 2019 23:17:50 +0200 Subject: [PATCH 69/72] =?UTF-8?q?=E2=9C=A8=20Troubleshooting=20automation?= =?UTF-8?q?=20page=20back=20in=20menu=20(#10185)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- source/_includes/asides/docs_navigation.html | 1 + 1 file changed, 1 insertion(+) diff --git a/source/_includes/asides/docs_navigation.html b/source/_includes/asides/docs_navigation.html index e1c2af85c22..054b60fbf2a 100644 --- a/source/_includes/asides/docs_navigation.html +++ b/source/_includes/asides/docs_navigation.html @@ -61,6 +61,7 @@
  • {% active_link /docs/automation/condition/ Conditions %}
  • {% active_link /docs/automation/action/ Actions %}
  • {% active_link /docs/automation/templating/ Templates %}
  • +
  • {% active_link /docs/automation/troubleshooting/ Troubleshooting %}
  • From 7bea0d9681546f0668bde77bc573aeffa27f4fa8 Mon Sep 17 00:00:00 2001 From: akasma74 Date: Wed, 21 Aug 2019 22:19:47 +0100 Subject: [PATCH 70/72] added Testing section (#9767) * added Testing section I saw no such thing in docs and it constantly causes topics like this - https://community.home-assistant.io/t/condition-problems/124222. Hope this addition is useful. * make it more readable * moving Testing section to this better place as discussed here https://github.com/home-assistant/home-assistant.io/pull/9767#issuecomment-511128560 * moving Testing bit to Troubleshooting as discussed here https://github.com/home-assistant/home-assistant.io/pull/9767#issuecomment-511128560 * :pencil2: Tweak * :ambulance: Removing linkable_title --- .../_docs/automation/troubleshooting.markdown | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/source/_docs/automation/troubleshooting.markdown b/source/_docs/automation/troubleshooting.markdown index 9dcc2f662b6..cbd02e978b6 100644 --- a/source/_docs/automation/troubleshooting.markdown +++ b/source/_docs/automation/troubleshooting.markdown @@ -18,3 +18,21 @@ The Logbook integration will show a line entry when an automation is triggered. ![Logbook example](/images/components/automation/logbook.png) [template]: /topics/templating/ + +### Testing your automation + +It is generally a difficult task to test an automation, especially if it includes several triggers and some conditions. + +Please note that if you click on **Trigger** of an automation in the frontend, **only the `action` part will be executed** by Home Assistant. That means you **can't** test your trigger or condition part that way. It also means that if your automation uses some data from triggers, it won't work properly as well just because `trigger` is not defined in this scenario. + +All this makes that Trigger feature pretty limited and nearly useless for debugging purposes so you need to find another way. +Make sure you check and adapt to your circumstances appropriate examples from Automation Trigger, Conditions and Actions. + +It is also useful to go to **Configuration** -> **Server Control** and click on **Check Config** button in Configuration validation section to make sure there are no syntax errors before restarting Home Assistant. + +If your automation uses templates in any part, you can do the following to make sure it works as expected: + +1. Go to **Developer tools** -> **Template** tab. +2. Create all variables (sources) required for your template as described at the end of [this](https://www.home-assistant.io/docs/configuration/templating/#processing-incoming-data) paragraph. +3. Copy your template code and paste it in Template editor straight after your variables. +4. If necessary, change your sources' value and check if the template works as you want and does not generate any errors. From 447f52b65a61f39187efac5f786905d0553f9269 Mon Sep 17 00:00:00 2001 From: Daniel Anner Date: Wed, 21 Aug 2019 17:21:14 -0400 Subject: [PATCH 71/72] Update nest.markdown (#9757) I added a warning alerting new users that Works With Nest Developer accounts can no longer be created, and they need a Works With Google account to setup a custom integration for Nest products. --- source/_components/nest.markdown | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/source/_components/nest.markdown b/source/_components/nest.markdown index 492d35d5906..e8186f0b3f2 100644 --- a/source/_components/nest.markdown +++ b/source/_components/nest.markdown @@ -28,6 +28,10 @@ There is currently support for the following device types within Home Assistant: ### Setting up developer account +

    + New users are not currently able to set up a Works With Nest Developer account due to the change announced by Google. We will reach out to Nest to see if we can become a partner so that users joining Home Assistant after August can still use Nest. In the future we will add documentation on how to setup a Works With Google account and configure your Nest integration. +

    + 1. Visit [Nest Developers](https://developers.nest.com/), and sign in. Create an account if you don't have one already. 2. Fill in account details: * The "Company Information" can be anything. We recommend using your name. From e9fa6a3c29a63c874ee723a69a89f24d0e7a3ec0 Mon Sep 17 00:00:00 2001 From: tiagofreire-pt <41837236+tiagofreire-pt@users.noreply.github.com> Date: Wed, 21 Aug 2019 23:28:50 +0100 Subject: [PATCH 72/72] Update commandline.markdown (#10201) * Update commandline.markdown On Hassio 0.97.2. * Update commandline.markdown --- source/hassio/commandline.markdown | 45 +++++++++++++++--------------- 1 file changed, 22 insertions(+), 23 deletions(-) diff --git a/source/hassio/commandline.markdown b/source/hassio/commandline.markdown index baf99c4bb62..8cd2c7bf925 100644 --- a/source/hassio/commandline.markdown +++ b/source/hassio/commandline.markdown @@ -57,33 +57,32 @@ Replace x.y.z with the desired version like `--version=0.74.2` You can get a better description of the CLI capabilities by typing `hassio help`: ```bash -NAME: - hassio - Commandline tool to allow interaction with hass.io +Usage: + hassio [command] -USAGE: - hassio [global options] command [command options] [arguments...] +Available Commands: + addons Install, update, remove and configure Hass.io add-ons + dns Get information, update or configure the Hass.io DNS server + hardware Provides hardware information about your system + hassos HassOS specific for updating, info and configuration imports + help Help about any command + homeassistant Provides control of Home Assistant running on Hass.io + host Control the host/system that Hass.io is running on + info Provides a general Hass.io information overview + snapshots Create, restore and remove snapshot backups + supervisor Monitor, control and configure the Hass.io Supervisor -VERSION: - 1.3.1 +Flags: + --api-token string Hass.io API token + --config string Optional config file (default is $HOME/.homeassistant.yaml) + --endpoint string Endpoint for Hass.io Supervisor ( default is 'hassio' ) + -h, --help help for hassio + --log-level string Log level (defaults to Warn) + --no-progress Disable the progress spinner + --raw-json Output raw JSON from the API -AUTHOR: - Home-Assistant +Use "hassio [command] --help" for more information about a command. -COMMANDS: - homeassistant, ha info, logs, check, restart, start, stop, update - supervisor, su info, logs, reload, update - host, ho reboot, shutdown, update - hardware, hw info, audio - network, ne info, options - snapshots, sn list, info, reload, new, restore, remove - addons, ad list, info, logo, changelog, logs, stats, - reload, start, stop, install, uninstall, update - help, h Shows a list of commands or help for one command - -GLOBAL OPTIONS: - --debug, -d Prints Debug information - --help, -h show help - --version, -v print the version ``` ## Console access