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
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
```
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`:
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'
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
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/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
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/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]
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/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:
diff --git a/source/_components/nest.markdown b/source/_components/nest.markdown
index 7df45246460..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.
@@ -195,7 +199,7 @@ script:
You must have the [Nest component](/components/nest/) configured to use the platforms below.
-
+
## Binary Sensor
@@ -313,7 +317,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`
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 %}
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
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.
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/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
---
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/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 %}
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.
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.
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.
+
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
+```
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/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
diff --git a/source/_components/updater.markdown b/source/_components/updater.markdown
index ab4f81cc2d5..052c01e9e5e 100644
--- a/source/_components/updater.markdown
+++ b/source/_components/updater.markdown
@@ -10,7 +10,7 @@ ha_release: 0.8
The `updater` binary sensor will check daily for new releases. The state will be "on" when an update is available. Otherwise, the state will be "off". The newer version, as well as the link to the release notes, are attributes of the updater. As [Hass.io](/hassio/) has its own schedule for release it doesn't make sense to use this binary sensor on Hass.io.
-The updater 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/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 %}
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/_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
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
diff --git a/source/_components/zha.markdown b/source/_components/zha.markdown
index 6ccb9a356f4..9c8769a9c1f 100644
--- a/source/_components/zha.markdown
+++ b/source/_components/zha.markdown
@@ -61,8 +61,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
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
![]()
**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.
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).
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/_docs/installation.markdown b/source/_docs/installation.markdown
index 1b66be349eb..14021f1d3b6 100644
--- a/source/_docs/installation.markdown
+++ b/source/_docs/installation.markdown
@@ -107,19 +107,13 @@ These guides are provided as-is. Some of these install methods are more limited