+
You must have the [Nest component](/components/nest/) configured to use the platforms below.
-
## Binary Sensor
The `nest` binary sensor platform lets you monitor various states of your [Nest](https://nest.com) devices.
-
+
+
You must have the [Nest component](/components/nest/) configured to use these sensors. The binary sensors will be setup if the `nest` integration is configured and the required configuration for the `nest binary sensor` is set.
-
+
+
## Configuration
@@ -247,9 +251,11 @@ The following conditions are available by device:
The `nest` platform allows you to watch still frames from a video stream (not live stream) of your [Nest](https://nest.com/camera/meet-nest-cam/) camera in Home Assistant.
-
+
+
The `nest` camera will automatically be setup when you do.
-
+
+
Nest Camera supports the `camera.turn_on` and `camera.turn_off` services since the 0.75 release.
@@ -257,9 +263,9 @@ Nest Camera supports the `camera.turn_on` and `camera.turn_off` services since t
The `nest` climate platform lets you control a thermostat from [Nest](https://nest.com).
-
+
Please note due to limitations with the European Nest Thermostat E, integration with Home Assistant for that thermostat is not possible.
-
+
@@ -269,9 +275,11 @@ Please note due to limitations with the European Nest Thermostat E, integration
The `nest` sensor platform lets you monitor sensors connected to your [Nest](https://nest.com) devices.
-
+
+
The sensors will be setup if the `nest` integration is configured and the required configuration for the `nest sensor` is set.
-
+
+
## Configuration
@@ -315,19 +323,23 @@ The following conditions are available by device:
## Security State
-
+
+
This feature is not designed to transfer your Home Assistant to a security system, neither Home Assistant nor Nest be liable to You for damages,
or consequential damages of any character arising as a result of use this feature.
This feature does not depend on the [Nest Secure alarm system](https://nest.com/alarm-system/overview/) and is not a reflection of the status of that system,
nor does it react to state changes in that system.
-
-
+
+
+
+
This feature uses a new [Nest Security API](https://developers.nest.com/documentation/cloud/security-guide).
You may need to change your ["Product"](https://developers.nest.com/products) permission setting to include `Security State Read`.
After this permission change, you may need to re-authorize your client.
-
+
+
If a Nest Cam detects the presence of a person (see `person_detected` in [binary_sensor.nest](#binary-sensor) while the structure is in `away` mode (see `away` in [binary_sensor.nest](#binary-sensor), the structure enters `deter` mode.
diff --git a/source/_components/netgear.markdown b/source/_components/netgear.markdown
index 6b9189e52ff..f69f9f3f8bf 100644
--- a/source/_components/netgear.markdown
+++ b/source/_components/netgear.markdown
@@ -12,9 +12,11 @@ redirect_from:
This platform allows you to detect presence by looking at connected devices to a [Netgear](http://www.netgear.com/) device.
-
+
+
A recent updates of Orbi APs introduced a bug which takes several hours to detects presence on your local network. The current workaround is to force this integration to use the Orbi's API v2 by adding the `accesspoints:` node to your configuration.
-
+
+
To use this device tracker in your installation, add the following to your `configuration.yaml` file:
diff --git a/source/_components/nmap_tracker.markdown b/source/_components/nmap_tracker.markdown
index d02e99338a7..6edf80d8b0d 100644
--- a/source/_components/nmap_tracker.markdown
+++ b/source/_components/nmap_tracker.markdown
@@ -12,15 +12,17 @@ redirect_from:
As an alternative to the router-based device tracking, it is possible to directly scan the network for devices by using Nmap. The IP addresses to scan can be specified in any format that Nmap understands, including the network-prefix notation (`192.168.1.1/24`) and the range notation (`192.168.1.1-255`).
-
+
Please keep in mind that modern smart phones will usually turn off WiFi when they are idle. Simple trackers like this may not be reliable on their own.
-
+
You might have to install the packages for `arp` and `nmap`. On Debian based hosts (for example Hassbian and Raspbian) do so by running `$ sudo apt-get install net-tools nmap`. On a Fedora host run `$ sudo dnf -y install nmap`.
-
+
+
If you are using [Hass.io](/hassio/) then just move forward to the configuration as all requirements are already fulfilled.
-
+
+
Host detection is done via Nmap's "fast scan" (`-F`) of the most frequently used 100 ports, with a host timeout of 5 seconds.
diff --git a/source/_components/octoprint.markdown b/source/_components/octoprint.markdown
index 3f66a1b6338..3b038cd52af 100644
--- a/source/_components/octoprint.markdown
+++ b/source/_components/octoprint.markdown
@@ -20,9 +20,9 @@ There is currently support for the following device types within Home Assistant:
- [Binary Sensor](#binary-sensor)
- [Sensor](#sensor)
-
+
You must have the
OctoPrint component configured (below) to use the sensor and binary sensor. After configuring that component, the sensors and binary sensors automatically appear.
-
+
## Configuration
@@ -113,9 +113,11 @@ octoprint:
description: Error while printing.
{% endconfiguration %}
-
+
+
If you are tracking temperature it is recommended to set `bed` and/or `number_of_tools` in your octoprint configuration. This will allow the octoprint sensors to load if the printer is offline during Home Assistant startup.
-
+
+
Example with multiple printers:
diff --git a/source/_components/opentherm_gw.markdown b/source/_components/opentherm_gw.markdown
index ee57038a5fe..f410e61d6d9 100644
--- a/source/_components/opentherm_gw.markdown
+++ b/source/_components/opentherm_gw.markdown
@@ -25,9 +25,9 @@ The following device types are currently supported within Home Assistant:
This integration will add a single `climate` entity and multiple `sensor` and `binary_sensor` entities to Home Assistant for each configured gateway.
-
+
The OpenTherm protocol is based on polling. The thermostat sends requests to the boiler at specific intervals. As a result, it may take some time for changes to propagate between Home Assistant and the thermostat.
-
+
# Configuration
@@ -89,9 +89,9 @@ Provide the time and day of week to the OpenTherm Gateway. The value provided he
### Service `opentherm_gw.set_control_setpoint`
-
+
Improper use of this service may continuously keep your central heating system active, resulting in an overheated house and a significant increase in gas and/or electricity consumption.
-
+
Set the central heating control setpoint override on the OpenTherm Gateway.
In a normal situation, the thermostat will calculate and control the central heating setpoint on the boiler. Setting this to any value other than 0 will enable the override and allow the OpenTherm Gateway to control this setting. While the override is active, the OpenTherm Gateway will also request your boiler to activate the central heating circuit. For your boiler's actual maximum and minimum supported setpoint value, please see the [`slave_ch_max_setp`](#slave_ch_max_setp) and [`slave_ch_min_setp`](#slave_ch_min_setp) variables. Due to the potential consequences of leaving this setting enabled for prolonged periods, the override will be disabled when Home Assistant is shut down or restarted.
@@ -102,9 +102,11 @@ In a normal situation, the thermostat will calculate and control the central hea
| `gateway_id` | no | The `gateway_id` as specified in `configuration.yaml`.
| `temperature` | no | The central heating setpoint. Values between `0.0` and `90.0` are accepted, but your boiler may not support the full range. Set to `0` to disable the override.
-
+
+
Please read [this information](http://otgw.tclcode.com/standalone.html) from the designer of the OpenTherm Gateway before considering to write your own software thermostat.
-
+
+
### Service `opentherm_gw.set_gpio_mode`
@@ -130,9 +132,9 @@ For a list of possible modes with explanation, see [LED modes](#led-modes)
### Service `opentherm_gw.set_max_modulation`
-
+
Improper use of this service may impair the performance of your central heating system.
-
+
Set the maximum modulation level override on the OpenTherm Gateway.
In a normal situation, the thermostat will control the maximum modulation level on the boiler. Setting this to any value other than `-1` will enable the override and allow the OpenTherm Gateway to control this setting. Due to the potential consequences of leaving this setting enabled, the override will be disabled when Home Assistant is shut down or restarted.
@@ -143,9 +145,11 @@ In a normal situation, the thermostat will control the maximum modulation level
| `gateway_id` | no | The `gateway_id` as specified in `configuration.yaml`.
| `level` | no | The maximum modulation level. Accepted values are `-1` through `100`. Set to `-1` to disable the override.
-
+
+
Please read [this information](http://otgw.tclcode.com/standalone.html) from the designer of the OpenTherm Gateway before considering to write your own software thermostat.
-
+
+
### Service `opentherm_gw.set_outside_temperature`
@@ -509,7 +513,6 @@ Possible LED modes and their meaning are listed here:
* M. Boiler requires maintenance.
* P. Raised power mode active on thermostat interface.
-
# Example
A full configuration example with two configured OpenTherm Gateways - one connected via USB, the other over the network - looks like the one below.
diff --git a/source/_components/openuv.markdown b/source/_components/openuv.markdown
index a67ac93b715..8e6286b67a0 100644
--- a/source/_components/openuv.markdown
+++ b/source/_components/openuv.markdown
@@ -21,15 +21,18 @@ The `openuv` integration displays UV and Ozone data from [openuv.io](http://open
To generate an API key,
[simply log in to the OpenUV website](https://www.openuv.io/auth/google).
-
+
+
Beginning February 1, 2019, the "Limited" plan (which is what new users are
given by default) is limited to 50 API requests per day. Because different
API plans and locations will have different requirements, the `openuv`
component does not automatically query the API for new data after it initially
loads. To request new data, the `update_data` service may be used.
-
-
+
+
+
+
Each use of the `update_data` service will consume 1 or 2 API calls, depending
on which monitored conditions are configured.
@@ -44,7 +47,8 @@ consume 1 API call.
Ensure that you understand these specifications when calling the `update_data`
service.
-
+
+
## Configuration
@@ -137,11 +141,11 @@ openuv:
- safe_exposure_time_type_6
```
-
+
The above guidelines constitute estimates and are intended to help informed
decision making. They should not replace analysis, advice or diagnosis from a
trained medical professional.
-
+
## Services
diff --git a/source/_components/openweathermap.markdown b/source/_components/openweathermap.markdown
index e5b7852c48c..181b96a2c4d 100644
--- a/source/_components/openweathermap.markdown
+++ b/source/_components/openweathermap.markdown
@@ -59,9 +59,11 @@ longitude:
default: "The longitude in your `configuration.yaml` file."
{% endconfiguration %}
-
+
+
This platform is an alternative to the [`openweathermap`](/components/sensor.openweathermap/) sensor.
-
+
+
## Sensor
diff --git a/source/_components/orvibo.markdown b/source/_components/orvibo.markdown
index bcd1fdc336d..af9fba4223b 100644
--- a/source/_components/orvibo.markdown
+++ b/source/_components/orvibo.markdown
@@ -9,10 +9,11 @@ redirect_from:
- /components/switch.orvibo/
---
-
-Please be aware that the product ORVIBO WIFI SMART SOCKET S20 (LGS-20) has been recalled by the European authorities due to safety concerns. For more information, please visit [RAPEX information](https://ec.europa.eu/consumers/consumers_safety/safety_products/rapex/alerts/?event=viewProduct&reference=A12/1577/15&lng=en).
-
+
+Please be aware that the product ORVIBO WIFI SMART SOCKET S20 (LGS-20) has been recalled by the European authorities due to safety concerns. For more information, please visit [RAPEX information](https://ec.europa.eu/consumers/consumers_safety/safety_products/rapex/alerts/?event=viewProduct&reference=A12/1577/15&lng=en).
+
+
The `orvibo` switch platform allows you to toggle your Orvibo S20 Wifi Smart Sockets.
diff --git a/source/_components/otp.markdown b/source/_components/otp.markdown
index eb13a912337..54ad27c423a 100644
--- a/source/_components/otp.markdown
+++ b/source/_components/otp.markdown
@@ -55,6 +55,6 @@ Token: IHEDPEBEVA2WVHB7
Copy and paste the token into your Home Assistant configuration and add it to your OTP generator. Verify that they generate the same code.
-
+
It is vital that your system clock is correct both on your Home Assistant server and on your OTP generator device (e.g., your phone). If not, the generated codes will not match! Make sure NTP is running and syncing your time correctly before creating an issue.
-
+
diff --git a/source/_components/owntracks.markdown b/source/_components/owntracks.markdown
index d9bde300359..1191dd8fa91 100644
--- a/source/_components/owntracks.markdown
+++ b/source/_components/owntracks.markdown
@@ -119,9 +119,9 @@ When you exit a zone, Home Assistant will start using location updates to track
## Using Owntracks regions - forcing Owntracks to update using iBeacons
-
+
Owntracks v2.0.0 removes support for iBeacons on Android.
-
+
When run in the usual *significant changes mode* (which is kind to your phone battery), Owntracks sometimes doesn't update your location as quickly as you'd like when you arrive at a zone. This can be annoying if you want to trigger an automation when you get home. You can improve the situation using iBeacons.
diff --git a/source/_components/panel_custom.markdown b/source/_components/panel_custom.markdown
index 1a7932446b7..965543511e6 100644
--- a/source/_components/panel_custom.markdown
+++ b/source/_components/panel_custom.markdown
@@ -24,9 +24,11 @@ panel_custom:
who: world
```
-
+
+
Store your custom panels in `/www` to make them available in the frontend at the path `/local`.
-
+
+
{% configuration %}
name:
diff --git a/source/_components/panel_iframe.markdown b/source/_components/panel_iframe.markdown
index 32fd09543f5..db2c96ebb89 100644
--- a/source/_components/panel_iframe.markdown
+++ b/source/_components/panel_iframe.markdown
@@ -11,7 +11,9 @@ ha_qa_scale: internal
The `panel_iframe` support allows you to add additional panels to your Home Assistant frontend. The panels are listed in the sidebar and can contain external resources like the web frontend of your router, your monitoring system, or your media server.
-
If you are accessing Home Assistant over HTTPS using SSL, you cannot access HTTP sites through an iframe panel.
+
+If you are accessing Home Assistant over HTTPS using SSL, you cannot access HTTP sites through an iframe panel.
+
To enable Panel iFrames in your installation, add the following to your `configuration.yaml` file:
@@ -59,4 +61,8 @@ panel_iframe:
type: boolean
{% endconfiguration %}
-
Do **not** create one that are named `lovelace` it will overwrite lovelace causing it to never load.
+
+
+Do **not** create one that are named `lovelace` it will overwrite lovelace causing it to never load.
+
+
diff --git a/source/_components/persistent_notification.markdown b/source/_components/persistent_notification.markdown
index 32f4ac8c5e2..7556eccadd1 100644
--- a/source/_components/persistent_notification.markdown
+++ b/source/_components/persistent_notification.markdown
@@ -89,10 +89,11 @@ The message attribute supports the [Markdown formatting syntax](https://daringfi
| Link | `[Link](https://home-assistant.io/)` |
| Image | `` |
-
- `/local/` in this context refers to the `.homeassistant/www/` folder.
-
+
+ `/local/` in this context refers to the `.homeassistant/www/` folder.
+
+
### Create a persistent notification
diff --git a/source/_components/philips_js.markdown b/source/_components/philips_js.markdown
index 5b7302ccfd9..8cdc3bf1ef8 100644
--- a/source/_components/philips_js.markdown
+++ b/source/_components/philips_js.markdown
@@ -43,9 +43,9 @@ api_version:
type: integer
{% endconfiguration %}
-
+
When using api_version: 5 changing sources switches tv channels. Additionally this allows setting the volume level.
-
+
```yaml
# Example configuration.yaml with turn_on_action
diff --git a/source/_components/ping.markdown b/source/_components/ping.markdown
index fd0732a01e9..8cfeb92a338 100644
--- a/source/_components/ping.markdown
+++ b/source/_components/ping.markdown
@@ -66,17 +66,17 @@ binary_sensor:
scan_interval: 30
```
-
+
When run on Windows systems, the round trip time attributes are rounded to the nearest millisecond and the mdev value is unavailable.
-
+
## Presence Detection
The `ping` device tracker platform offers presence detection by using `ping` to send ICMP echo requests. This can be useful when devices are running a firewall and are blocking UDP or TCP packets but responding to ICMP requests (like Android phones). This tracker doesn't need to know the MAC address since the host can be on a different subnet. This makes this an option to detect hosts on a different subnet when `nmap` or other solutions don't work since `arp` doesn't work.
-
+
Please keep in mind that modern smart phones will usually turn off WiFi when they are idle. Simple trackers like this may not be reliable on their own.
-
+
### Configuration
diff --git a/source/_components/point.markdown b/source/_components/point.markdown
index 6865bb0741e..20e7d447a5c 100644
--- a/source/_components/point.markdown
+++ b/source/_components/point.markdown
@@ -53,17 +53,21 @@ The integration supports the following device types within Home Assistant:
- [Binary Sensor](#binary-sensor)
- [Sensor](#sensor)
-
+
+
The Point is just active occasionally so the [Sensors](#sensor) are only updated every hour or so. The [Binary Sensors](#binary-sensor) are however updated via [Cloud Push](/blog/2016/02/12/classifying-the-internet-of-things/#cloud-pushing-new-state), making the changes close to instant.
-
+
+
## Alarm
Each home configured in the Point mobile application will show up as a separate alarm control panel. The panels allow **arming** and **disarming** of the Point home alarm system.
-
+
+
The Point only supports a Arm/Disarm action, so it is only `Arm Away` that is implememented.
-
+
+
## Binary Sensor
@@ -80,9 +84,11 @@ Each Point exposes the following binary sensors:
- **sound**: `On` means sound detected, `Off` means no sound (clear)
- **tamper**: `On` means the point was removed or attached, `Off` means normal
-
+
+
The binary sensors **button_press**, **sound** and **tamper** are switched `On` for a breif moment and are then switched back to `Off`.
-
+
+
### Automation example
diff --git a/source/_components/postnl.markdown b/source/_components/postnl.markdown
index f49f008629f..aec1103cf0f 100644
--- a/source/_components/postnl.markdown
+++ b/source/_components/postnl.markdown
@@ -41,6 +41,6 @@ password:
type: string
{% endconfiguration %}
-
+
This integration is not affiliated with PostNL and retrieves data from the endpoints of the mobile application. Use at your own risk.
-
+
diff --git a/source/_components/ps4.markdown b/source/_components/ps4.markdown
index 3a74a850485..1f2b41c2654 100644
--- a/source/_components/ps4.markdown
+++ b/source/_components/ps4.markdown
@@ -22,9 +22,9 @@ The `ps4` integration allows you to control a
1. Download the Second Screen App and make sure that you can find and control your PlayStation 4 normally.
-
+
Read the section "Granting Port Access" below before continuing.
-
+
2. Navigate to `Configuration -> Integrations` and select `Configure` for `PlayStation 4`.
@@ -37,15 +37,15 @@ The `ps4` integration allows you to control a
The PlayStation 4 integration requires the use of privileged ports to work correctly, specifically UDP port 987 and TCP port 997. Depending on your OS of your Home Assistant instance you may need to allow usage of privileged ports manually.
-
+
Do not run your Home Assistant instance itself as root or with root/sudo privileges to accomplish this. This would create a security risk for your host system.
-
+
There are varying methods to perform this, dependent on your OS that is running Home Assistant. Specifically, your *Python Interpreter* which runs your Home Assistant instance needs access to the mentioned ports.
-
+
If your Home Assistant device is running Hass.io on HassOS, it does not require additional configuration.
-
+
### Debian-based
Home Assistant installed on a Debian-type OS may require configuration. This section is applicable but not limited to the following operating systems:
@@ -104,9 +104,11 @@ When running Home Assistant using Docker, make sure that the Home Assistant cont
## Configuration
-
+
+
The PlayStation 4 integration does not use entries from `configuration.yaml`. You must configure this integration by using `Integrations`
-
+
+
## Regions
@@ -124,10 +126,9 @@ Some titles will have different SKUs in the PlayStation Store database depending
| Slovakia, Slovenia, South Africa, Spain, Sweden, Switzerland, Taiwan, | |
| Thailand, Turkey, United Arab Emirates, United Kingdom, United States | |
-
-
+
The regions which are unavailable have no database or have formatting in the database which can not be used by the component.
-
+
## Services
diff --git a/source/_components/pulseaudio_loopback.markdown b/source/_components/pulseaudio_loopback.markdown
index 8361853a577..e7b132712fe 100644
--- a/source/_components/pulseaudio_loopback.markdown
+++ b/source/_components/pulseaudio_loopback.markdown
@@ -62,6 +62,8 @@ tcp_timeout:
type: integer
{% endconfiguration %}
-
+
+
This integration relies on raw TCP commands to PulseAudio. In order for PulseAudio to accept commands with this component, `module-cli-protocol` must be loaded on the PulseAudio server.
-
+
+
diff --git a/source/_components/pushbullet.markdown b/source/_components/pushbullet.markdown
index 338d6e9da69..56bd33801bf 100644
--- a/source/_components/pushbullet.markdown
+++ b/source/_components/pushbullet.markdown
@@ -17,9 +17,11 @@ There is currently support for the following device types within Home Assistant:
- [Sensor](#sensor)
- [Notifications](#notifications)
-
+
+
The free tier is [limited](https://docs.pushbullet.com/#push-limit) to 500 pushes per month.
-
+
+
### Sensor
@@ -185,8 +187,10 @@ action:
target: device/DEVICE_NAME
```
-- **target**: Pushbullet device to recive the notification.
+- **target**: Pushbullet device to receive the notification.
+
+
-
Don't forget to [whitelist external directories](/docs/configuration/basic/), so Home Assistant has access to them.
-
+
+
diff --git a/source/_components/pvoutput.markdown b/source/_components/pvoutput.markdown
index 2550a42e0e3..47a8444aadf 100644
--- a/source/_components/pvoutput.markdown
+++ b/source/_components/pvoutput.markdown
@@ -39,9 +39,11 @@ name:
type: string
{% endconfiguration %}
-
+
+
It's recommended to set `scan_interval:` according to a value greater than 60 seconds. The service only allows 60 requests per hour but the sensor's default is 30 seconds.
-
+
+
To format the PVoutput sensor it's recommended to use the [template component](/topics/templating/). For example:
diff --git a/source/_components/qld_bushfire.markdown b/source/_components/qld_bushfire.markdown
index cb988f1b021..2d3f2fb2fcf 100644
--- a/source/_components/qld_bushfire.markdown
+++ b/source/_components/qld_bushfire.markdown
@@ -25,11 +25,13 @@ of each entity.
The data is updated every 5 minutes.
-
+
+
The material used by this integration is provided under the [Creative Commons Attribution 4.0 license](https://creativecommons.org/licenses/by/4.0/legalcode).
It has only been modified for the purpose of presenting the material in Home Assistant.
Please refer to the [creator's copyright notice](https://www.qfes.qld.gov.au/Pages/copyright.aspx) for more information.
-
+
+
## Configuration
diff --git a/source/_components/rachio.markdown b/source/_components/rachio.markdown
index 1807a4c4b43..8261dd66f4b 100644
--- a/source/_components/rachio.markdown
+++ b/source/_components/rachio.markdown
@@ -55,10 +55,12 @@ manual_run_mins:
type: integer
{% endconfiguration %}
-
+
+
**Water-saving suggestion:**
Set `manual_run_mins` to a high maximum failsafe value when using scripts to control zones. If something goes wrong with your script, Home Assistant, or you hit the Rachio API rate limit of 1700 calls per day, the controller will still turn off the zone after this amount of time.
-
+
+
### iFrame
diff --git a/source/_components/rainbird.markdown b/source/_components/rainbird.markdown
index c9cf0901751..a52153806d8 100644
--- a/source/_components/rainbird.markdown
+++ b/source/_components/rainbird.markdown
@@ -42,9 +42,9 @@ password:
type: string
{% endconfiguration %}
-
+
Please note that due to the implementation of the API within the LNK Module, there is a concurrency issue. For example, the Rain Bird app will give connection issues (like already a connection active).
-
+
## Sensor
diff --git a/source/_components/raspyrfm.markdown b/source/_components/raspyrfm.markdown
index 59bcf4f627c..d7d5f796883 100644
--- a/source/_components/raspyrfm.markdown
+++ b/source/_components/raspyrfm.markdown
@@ -87,9 +87,11 @@ Depending on the control unit the channel config can have varying formats. Have
Initially, the state of a switch is unknown. When the switch is turned on or off (via frontend) the state is known and will be shown in the frontend.
-
+
+
Note that due to the way those cheap RC units work it is **not possible to query their current state**. Therefore the only way to preserve a consistent state within Home Assistant is to only use Home Assistant as the controller.
-
+
+
## Full example
diff --git a/source/_components/recollect_waste.markdown b/source/_components/recollect_waste.markdown
index 75e7259c1af..90b66fdd41d 100644
--- a/source/_components/recollect_waste.markdown
+++ b/source/_components/recollect_waste.markdown
@@ -51,6 +51,6 @@ name:
The default frequency for pulling data from Recollect Waste is once a day (86400 seconds).
-
+
The Recollect Waste sensor uses the Recollect API URL to obtain data not an official API from Recollect. Use at your own risk.
-
+
diff --git a/source/_components/recorder.markdown b/source/_components/recorder.markdown
index 3abca0994f5..65769d139a9 100644
--- a/source/_components/recorder.markdown
+++ b/source/_components/recorder.markdown
@@ -140,19 +140,29 @@ Call the service `recorder.purge` to start a purge task which deletes events and
| PostgreSQL (Socket) | `postgresql://@/DB_NAME` |
| MS SQL Server | `mssql+pymssql://user:password@SERVER_IP/DB_NAME?charset=utf8` |
-
+
+
Some installations of MariaDB/MySQL may require an ALTERNATE_PORT (3rd-party hosting providers or parallel installations) to be added to the SERVER_IP, e.g., `mysql://user:password@SERVER_IP:ALTERNATE_PORT/DB_NAME?charset=utf8`.
-
-
-Unix Socket connections always bring performance advantages over TCP, if the database is on the same host as the `recorder` instance (i.e. `localhost`).
+
-
-If you want to use Unix Sockets for PostgreSQL you need to modify the `pg_hba.conf`. See [PostgreSQL](#postgresql)
+
+
+Unix Socket connections always bring performance advantages over TCP, if the database is on the same host as the `recorder` instance (i.e. `localhost`).
+
+
+
+
+
+If you want to use Unix Sockets for PostgreSQL you need to modify the `pg_hba.conf`. See [PostgreSQL](#postgresql)
+
+
+
+
-
If you are using the default `FULL` recovery model for MS SQL Server you will need to manually backup your log file to prevent your transaction log from growing too large. It is recommended you change the recovery model to `SIMPLE` unless you are worried about data loss between backups.
-
+
+
### Database startup
diff --git a/source/_components/remote_rpi_gpio.markdown b/source/_components/remote_rpi_gpio.markdown
index a380c655923..6d2c0583f29 100644
--- a/source/_components/remote_rpi_gpio.markdown
+++ b/source/_components/remote_rpi_gpio.markdown
@@ -98,9 +98,9 @@ invert_logic:
For more details about the GPIO layout, visit the Wikipedia [article](https://en.wikipedia.org/wiki/Raspberry_Pi#GPIO_connector) about the Raspberry Pi.
-
+
Note that a pin managed by HASS is expected to be exclusive to HASS.
-
+
A common question is what does port refer to, this number is the actual GPIO #, not the pin #.
For example, if you have a relay connected to pin 11 its GPIO # is 17.
diff --git a/source/_components/rest.markdown b/source/_components/rest.markdown
index a717431a5a6..3694f515490 100644
--- a/source/_components/rest.markdown
+++ b/source/_components/rest.markdown
@@ -101,9 +101,9 @@ force_update:
default: false
{% endconfiguration %}
-
+
Make sure that the URL exactly matches your endpoint or resource.
-
+
`curl` can help you identify the variable you want to display in your Home Assistant frontend. The example below shows the JSON response of a device that is running with [aREST](http://arest.io/).
diff --git a/source/_components/rflink.markdown b/source/_components/rflink.markdown
index 01cda4aabcc..835e5478f00 100644
--- a/source/_components/rflink.markdown
+++ b/source/_components/rflink.markdown
@@ -13,9 +13,9 @@ The 433 MHz spectrum is used by many manufacturers mostly using their own protoc
RFLink Gateway supports a number of RF frequencies, using a wide range of low-cost hardware. [Their website](http://www.rflink.nl/blog2/) provides details for various RF transmitters, receivers and transceiver modules for 433MHz, 868MHz and 2.4 GHz.
-
+
Note: Versions later than R44 add support for Ikea Ansluta, Philips Living Colors Gen1 and MySensors devices.
-
+
A complete list of devices supported by RFLink can be found [here](http://www.rflink.nl/blog2/devlist).
@@ -83,13 +83,15 @@ Other methods of exposing the serial interface over TCP are possible (eg: ESP826
Tested with Wifi serial bridge [esp-link V2.2.3](https://github.com/jeelabs/esp-link/releases/tag/v2.2.3) running on a NodeMCU (ESP8266 Wifi module) with ESP8266 TXD0 (pin D10) and RXD0 (pin D9) connected to Arduino MEGA 2560 RX (Pin 2) and TX (Pin 3) respectively.
-
-Due to different logic levels, a voltage level shifter is required between the 3.3V NodeMCU and 5V Arduino MEGA 2560 pins. The BSS138 bidirectional logic level converter has been tested for serial pins and the [link](https://www.aliexpress.com/item/8CH-IIC-I2C-Logic-Level-Converter-Bi-Directional-Module-DC-DC-5V-to-3-3V-Setp/32238089139.html) is recommended for the CC2500 transceiver (used for Ikea Ansluta and Philips Living Colors)
-
+
-
+Due to different logic levels, a voltage level shifter is required between the 3.3V NodeMCU and 5V Arduino MEGA 2560 pins. The BSS138 bidirectional logic level converter has been tested for serial pins and the [link](https://www.aliexpress.com/item/8CH-IIC-I2C-Logic-Level-Converter-Bi-Directional-Module-DC-DC-5V-to-3-3V-Setp/32238089139.html) is recommended for the CC2500 transceiver (used for Ikea Ansluta and Philips Living Colors)
+
+
+
+
When re-flashing the Arduino MEGA, disconnect the ESP8266 to avoid programming difficulties.
-
+
```yaml
# Example configuration.yaml entry
@@ -135,9 +137,9 @@ rflink:
This configuration will ignore the button `1` of the `newkaku` device with ID `000001`, all devices of the `digitech` protocol and all switches of the `kaku` protocol device with codewheel ID `1`.
-
+
Wildcards only work at the end of the ID, not in the middle or front!
-
+
### Device support
diff --git a/source/_components/ring.markdown b/source/_components/ring.markdown
index b7462e42992..8f4a469f0e0 100644
--- a/source/_components/ring.markdown
+++ b/source/_components/ring.markdown
@@ -25,6 +25,10 @@ There is currently support for the following device types within Home Assistant:
Currently only doorbells are supported by this sensor.
+
+This component does NOT allow for live viewing of your Ring camera within Home Assistant.
+
+
## Configuration
To enable device linked in your [Ring.com](https://ring.com/) account, add the following to your `configuration.yaml` file:
@@ -73,9 +77,9 @@ Currently it supports doorbell, external chimes and stickup cameras.
## Camera
-
+
Please note that downloading and playing Ring video will require a Ring Protect plan.
-
+
Once you have enabled the [Ring component](/components/ring), you can start using the camera platform. Add the following to your `configuration.yaml` file:
diff --git a/source/_components/roomba.markdown b/source/_components/roomba.markdown
index 6e42d884377..ad2166525ce 100644
--- a/source/_components/roomba.markdown
+++ b/source/_components/roomba.markdown
@@ -11,9 +11,9 @@ redirect_from:
The `roomba` integration allows you to control your [iRobot Roomba](http://www.irobot.com/For-the-Home/Vacuuming/Roomba.aspx) vacuum.
-
+
This platform has only been tested with an iRobot Roomba 980 but should work fine with any Wi-Fi enabled Roomba like the 690, 890 or the 960.
-
+
## Configuration
@@ -58,9 +58,11 @@ continuous:
default: true
{% endconfiguration %}
-
+
+
The Roomba's MQTT server only allows a single connection. Enabling continuous mode will force the App to connect via the cloud to your Roomba. [More info here](https://github.com/NickWaterton/Roomba980-Python#firmware-2xx-notes)
-
+
+
### Retrieving your credentials
diff --git a/source/_components/rova.markdown b/source/_components/rova.markdown
index 1575a7bddb0..5dddc3cbab4 100644
--- a/source/_components/rova.markdown
+++ b/source/_components/rova.markdown
@@ -102,6 +102,6 @@ automation:
```
{% endraw %}
-
+
This integration is not affiliated with Rova and retrieves data from the endpoints of their website. Use at your own risk.
-
+
diff --git a/source/_components/rpi_gpio.markdown b/source/_components/rpi_gpio.markdown
index 6a162befba1..780c1caaea9 100644
--- a/source/_components/rpi_gpio.markdown
+++ b/source/_components/rpi_gpio.markdown
@@ -187,9 +187,9 @@ invert_logic:
For more details about the GPIO layout, visit the Wikipedia [article](https://en.wikipedia.org/wiki/Raspberry_Pi#General_purpose_input-output_(GPIO)_connector) about the Raspberry Pi.
-
+
Note that a pin managed by HASS is expected to be exclusive to HASS.
-
+
A common question is what does Port refer to, this number is the actual GPIO #, not the pin #.
For example, if you have a relay connected to pin 11 its GPIO # is 17.
diff --git a/source/_components/ruter.markdown b/source/_components/ruter.markdown
index 4e8ca602fde..aba13cb5772 100644
--- a/source/_components/ruter.markdown
+++ b/source/_components/ruter.markdown
@@ -10,10 +10,12 @@ redirect_from:
- /components/sensor.ruter/
---
-
+
+
The API used for this sensor is shutting down soon, you should consider starting to use the [`entur_public_transport`](/components/sensor.entur_public_transport/) sensor before that happen.
To read the deprecation warning visit [ruter.no/labs](https://ruter.no/labs/),
-
+
+
The `ruter` sensor will provide you departure information for the larger Oslo area in Norway from the [Ruter][ruter] public transportation service.
diff --git a/source/_components/samsungtv.markdown b/source/_components/samsungtv.markdown
index 1f9b9df0198..cc32df32043 100644
--- a/source/_components/samsungtv.markdown
+++ b/source/_components/samsungtv.markdown
@@ -92,7 +92,6 @@ Currently known supported models:
- 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)
- NU8000
-- Q7F (port must be set to 8001, MAC must be specified for Power On)
- U6000 (port must be set to 8001)
- U6300 (port must be set to 8001, and `pip3 install websocket-client` must be executed)
- UE6199UXZG (port must be set to 8001, On/Off, Forward/Backward, Volume control, but no Play button)
@@ -114,6 +113,7 @@ Currently tested but not working models:
- 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)
+- 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.
diff --git a/source/_components/scene.markdown b/source/_components/scene.markdown
index b449d388aba..df4b6bbf432 100644
--- a/source/_components/scene.markdown
+++ b/source/_components/scene.markdown
@@ -64,6 +64,6 @@ automation:
entity_id: scene.romantic
```
-
+
Please note that the scene integration for the most part only supports one service call per entity to achieve the state. Due to this limitation, you cannot set states belonging to different services. A workaround for this limitation is to write a script, which you then turn on in your scene. A few integrations have direct support for multiple service calls per state, Currently this is the media_player and climate components.
-
+
diff --git a/source/_components/script.markdown b/source/_components/script.markdown
index e65fd20a047..499d234b114 100644
--- a/source/_components/script.markdown
+++ b/source/_components/script.markdown
@@ -22,9 +22,12 @@ script:
data_template:
message: Current temperature is {% raw %}{{ states('sensor.temperature') }}{% endraw %}
```
-
-Script names (e.g., `message_temperature` in the example above) are not allowed to contain capital letters, or dash (minus) characters, i.e. `-`. The preferred way to separate words for better readability is to use underscore (`_`) characters.
-
+
+
+
+Script names (e.g., `message_temperature` in the example above) are not allowed to contain capital letters, or dash (minus) characters, i.e. `-`. The preferred way to separate words for better readability is to use underscore (`_`) characters.
+
+
```yaml
script:
diff --git a/source/_components/scsgate.markdown b/source/_components/scsgate.markdown
index 74983195bc7..edf6ae7ee00 100644
--- a/source/_components/scsgate.markdown
+++ b/source/_components/scsgate.markdown
@@ -83,9 +83,11 @@ devices:
type: string
{% endconfiguration %}
-
+
+
**Known limitation:** It is not possible to know the current state of the cover.
-
+
+
### Light
diff --git a/source/_components/sensibo.markdown b/source/_components/sensibo.markdown
index fb091619e84..e03717d8a78 100644
--- a/source/_components/sensibo.markdown
+++ b/source/_components/sensibo.markdown
@@ -32,11 +32,11 @@ id:
type: string
{% endconfiguration %}
-
+
If you create the API key using a dedicated user (and not your main user),
then in the Sensibo app log you will be able to distinguish between actions
done in the app and actions done by Home Assistant.
-
+
### Full config example
```yaml
diff --git a/source/_components/sensor.metoffice.markdown b/source/_components/sensor.metoffice.markdown
index 902b88a1fbd..391694e91db 100644
--- a/source/_components/sensor.metoffice.markdown
+++ b/source/_components/sensor.metoffice.markdown
@@ -83,7 +83,9 @@ monitored_conditions:
description: The relative humidity.
{% endconfiguration %}
-
+
+
This sensor is an alternative to the [`metoffice`](/components/weather.metoffice/) weather platform.
The weather platform is easier to configure but less customizable.
-
+
+
diff --git a/source/_components/sensor.rfxtrx.markdown b/source/_components/sensor.rfxtrx.markdown
index 1114d1faaa1..f350301312a 100644
--- a/source/_components/sensor.rfxtrx.markdown
+++ b/source/_components/sensor.rfxtrx.markdown
@@ -110,7 +110,7 @@ automatic_add:
type: boolean
{% endconfiguration %}
-
+
If a device ID consists of only numbers, please make sure to surround it with quotes.
This is a known limitation in YAML, because the device ID will be interpreted as a number otherwise.
-
+
diff --git a/source/_components/seven_segments.markdown b/source/_components/seven_segments.markdown
index 8d0ab0311a5..c5dfd8b2b1c 100644
--- a/source/_components/seven_segments.markdown
+++ b/source/_components/seven_segments.markdown
@@ -13,9 +13,11 @@ redirect_from:
The `seven_segments` image processing platform allows you to read physical seven segments displays through Home Assistant. [`ssocr`](https://www.unix-ag.uni-kl.de/~auerswal/ssocr/) is used to extract the value shown on the display which is observed by a [camera](/components/camera/).
-
+
+
If you are using [Hass.io](/hassio/) then just move forward to the configuration as all requirements are already fulfilled.
-
+
+
`ssocr` needs to be available on your system. Check the installation instruction below:
diff --git a/source/_components/seventeentrack.markdown b/source/_components/seventeentrack.markdown
index 7395824a723..33927e1b660 100644
--- a/source/_components/seventeentrack.markdown
+++ b/source/_components/seventeentrack.markdown
@@ -12,9 +12,11 @@ redirect_from:
The `seventeentrack` sensor platform allows users to get package data tied to their [17track.net](https://www.17track.net/en) account. The platform creates both summary sensors, which show the number of packages in a current state (e.g., "In Transit"), as well as individual sensors for each package within the account.
-
+
+
Although the 17track.net website states that account passwords cannot be longer than 16 characters, users can technically set long-than-16-character passwords. These passwords **will not** work with the used API. Therefore, please ensure that your 17track.net password does not exceed 16 characters.
-
+
+
## Configuration
diff --git a/source/_components/slack.markdown b/source/_components/slack.markdown
index 3e03d207544..c450e71b173 100644
--- a/source/_components/slack.markdown
+++ b/source/_components/slack.markdown
@@ -16,9 +16,11 @@ The `slack` platform allows you to deliver notifications from Home Assistant to
If you are planning to use Slack as yourself then you'll need to create a [new app](https://api.slack.com/apps) under your Slack.com account. After creating the app, access the OAuth & Permissions link under the Features heading in the sidebar. Your OAuth Access Token should be located there. This is the key that you'll use in your `configuration.yaml` file.
-
+
+
There is an app credential Verification Token on the Basic Settings of your app. This is **not** the API key you want.
-
+
+
You will also need to ensure that you have added the appropriate scope when configuring your app. In this case, in the Scopes section, add the `Send messages as user` scope, e.g., (chat:write:user).
diff --git a/source/_components/smarthab.markdown b/source/_components/smarthab.markdown
index cf1b3fed1bf..60e8eb98dff 100644
--- a/source/_components/smarthab.markdown
+++ b/source/_components/smarthab.markdown
@@ -18,12 +18,12 @@ Assistant.
Once you have added a `smarthab` entry to your configuration, your supported
devices will automatically be discovered and made available on your dashboard.
-
+
To prevent being automatically logged out of your SmartHab mobile app, you
might want to create a secondary user in the app's settings and grant it
access to your home. You can then configure the integration using this account's
credentials. This is also more secure, as this user should be less priviledged.
-
+
```yaml
# Example configuration.yaml entry
diff --git a/source/_components/smartthings.markdown b/source/_components/smartthings.markdown
index 5539b2f2c67..26f15e0bea6 100644
--- a/source/_components/smartthings.markdown
+++ b/source/_components/smartthings.markdown
@@ -83,9 +83,11 @@ If you are using Home Assistant Cloud (Nabu Casa) the integration will create a
### Configure Home Assistant
-
+
+
The SmartThings integration is configured exclusively through the front-end. Manual setup through `configuration.yaml` is not available at this time.
-
+
+
1. From the Home Assistant front-end, navigate to 'Configuration' then 'Integrations'. Under 'Set up a new integration' locate 'SmartThings' and click 'Configure'.
2. Enter the personal access token created above and click 'Submit'
@@ -96,9 +98,11 @@ The SmartThings integration is configured exclusively through the front-end. Man
4. Authorize the app by pressing 'Allow'
4. Return to Home Assistant and click 'Submit'.
-
+
+
Advanced: If you have multiple locations in SmartThings, each can be integrated into Home Assistant. Follow the steps above, then for each subsequent location, install the SmartApp and it will automatically add to Home Assistant. This can be completed during step 3 (install SmartApp) above or at any time after that.
-
+
+
See the [troubleshooting](#troubleshooting) if you are having issues setting up the integration.
diff --git a/source/_components/smhi.markdown b/source/_components/smhi.markdown
index 172b209fb13..3a043901e64 100644
--- a/source/_components/smhi.markdown
+++ b/source/_components/smhi.markdown
@@ -25,13 +25,15 @@ To add SMHI weather forecast to your installation, go to the Integrations page i
If the location is configured in Home Assistant, it will be selected as the default location. After that, you can add additional locations.
-
+
You can only add locations through the integrations page, not in configuration files.
-
+
+
+
-
Only location close to Sweden can be added. See [SMHI.se area](http://opendata.smhi.se/apidocs/metfcst/geographic_area.html) for more details what locations are supported.
-
+
+
{% configuration %}
latitude:
diff --git a/source/_components/snmp.markdown b/source/_components/snmp.markdown
index 39962bbf8d2..8925b0993a7 100644
--- a/source/_components/snmp.markdown
+++ b/source/_components/snmp.markdown
@@ -23,9 +23,9 @@ There is currently support for the following device types within Home Assistant:
- [Sensor](#sensor)
- [Switch](#switch)
-
+
This device tracker needs SNMP to be enabled on the router. It could be that you need to install the SNMP support manually.
-
+
## Presence Detection
diff --git a/source/_components/solaredge.markdown b/source/_components/solaredge.markdown
index d1f46a44f31..adf0ff5b1e5 100644
--- a/source/_components/solaredge.markdown
+++ b/source/_components/solaredge.markdown
@@ -12,9 +12,11 @@ redirect_from:
The `solaredge` platform uses the [SolarEdge Monitoring API](https://www.solaredge.com/sites/default/files/se_monitoring_api.pdf) to allow you to get details from your SolarEdge solar power setup and integrate these in your Home Assistant installation.
-
+
+
The SolarEdge Monitoring API has a daily rate limit of 300 requests. In order to stay under this limit, and alow for some additional requests, the `solaredge` platform will update the site overview every 10 minutes.
-
+
+
## Configuration
diff --git a/source/_components/solaredge_local.markdown b/source/_components/solaredge_local.markdown
index 633278ae6ab..a2f0129e713 100644
--- a/source/_components/solaredge_local.markdown
+++ b/source/_components/solaredge_local.markdown
@@ -15,9 +15,9 @@ Only specific models support the local API. The local API is available on the SE
You can check by finding the IP address of your inverter and visiting it in a browser. If it supports the local API, you'll see the SolarEdge logo and a "Commissioning" menu.
-
+
If your inveter does not support the local API, you can use the [cloud based version](/components/solaredge/) instead.
-
+
## Configuration
diff --git a/source/_components/sonos.markdown b/source/_components/sonos.markdown
index 2a85bb0078b..61cd09c7989 100644
--- a/source/_components/sonos.markdown
+++ b/source/_components/sonos.markdown
@@ -22,27 +22,30 @@ Sonos makes various services available to allow configuring groups. They are cur
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. If no `entity_id` is provided, all speakers are snapshotted.
-
+
+
The queue is not snapshotted and must be left untouched until the restore. Using `media_player.play_media` is safe and can be used to play a notification sound, including [TTS](/components/tts/) announcements.
-
+
+
| Service data attribute | Optional | Description |
| ---------------------- | -------- | ----------- |
| `entity_id` | yes | The speakers to snapshot.
| `with_group` | yes | Should we also snapshot the group layout and the state of other speakers in the group, defaults to true.
-
### Service `sonos.restore`
Restore a previously taken snapshot of one or more speakers. If no `entity_id` is provided, all speakers are restored.
-
-The playing queue is not snapshotted. Using `sonos.restore` on a speaker that has replaced its queue will restore the playing position, but in the new queue!
-
+
-
+The playing queue is not snapshotted. Using `sonos.restore` on a speaker that has replaced its queue will restore the playing position, but in the new queue!
+
+
+
+
A cloud queue cannot be restarted. This includes queues started from within Spotify and queues controlled by Amazon Alexa.
-
+
| Service data attribute | Optional | Description |
| ---------------------- | -------- | ----------- |
diff --git a/source/_components/spider.markdown b/source/_components/spider.markdown
index 46043d1fe05..502dd482417 100644
--- a/source/_components/spider.markdown
+++ b/source/_components/spider.markdown
@@ -45,12 +45,12 @@ scan_interval:
type: integer
{% endconfiguration %}
-
+
This integration is not affiliated with Itho Daalderop Spider and retrieves data from the endpoints of the mobile application. Use at your own risk.
-
+
### Climate
-
+
Although this integration lets you change the operation mode to heating or cooling, it doesn't necessarily mean your boiler can. Spider is not aware of your current situation.
-
+
diff --git a/source/_components/spotcrime.markdown b/source/_components/spotcrime.markdown
index 843d0aa8654..7d6420335e7 100644
--- a/source/_components/spotcrime.markdown
+++ b/source/_components/spotcrime.markdown
@@ -7,7 +7,9 @@ redirect_from:
- /components/sensor.spotcrime/
---
-
SpotCrime is no longer handing out API keys to integrate their services.
+
+SpotCrime is no longer handing out API keys to integrate their services.
+
The `spotcrime` sensor allows one to track reported incidents occurring in a given area. Incidents include anything reported to [Spot Crime](http://spotcrime.com). Your regional emergency services may or may not report data. The sensor defaults to counting incidents within one day, but can be customized via configuration.yaml.
diff --git a/source/_components/spotify.markdown b/source/_components/spotify.markdown
index 19b98be8387..526a2e39353 100644
--- a/source/_components/spotify.markdown
+++ b/source/_components/spotify.markdown
@@ -18,9 +18,9 @@ The `spotify` media player platform allows you to control
- Spotify account
- Spotify application, properly configured (see below)
-
+
Controlling the Spotify integration (pause, play, next, etc.) requires a Premium account. If you do not have a Premium account, the integration in the frontend will not show the controls.
-
+
To create the required Spotify application:
diff --git a/source/_components/squeezebox.markdown b/source/_components/squeezebox.markdown
index 1381e411e84..3aad54f0aaa 100644
--- a/source/_components/squeezebox.markdown
+++ b/source/_components/squeezebox.markdown
@@ -42,8 +42,9 @@ password:
type: string
{% endconfiguration %}
-
This platform now uses the web interface of the Logitech Media Server to send commands. The default port of the web interface is 9000. It is the same port that you use to access the LMS through your web browser. Originally, this platform used the telnet interface, which defaults to 9090. If you previously specified the port in your configuration file, you will likely need to update it.
-
+
+This platform now uses the web interface of the Logitech Media Server to send commands. The default port of the web interface is 9000. It is the same port that you use to access the LMS through your web browser. Originally, this platform used the telnet interface, which defaults to 9090. If you previously specified the port in your configuration file, you will likely need to update it.
+
The Logitech Transporter which have two digital inputs can be activated using a script. The following example turns on the Transporter and activates the toslink input interface:
diff --git a/source/_components/starlingbank.markdown b/source/_components/starlingbank.markdown
index 4601cea3398..8fe4c298078 100644
--- a/source/_components/starlingbank.markdown
+++ b/source/_components/starlingbank.markdown
@@ -22,9 +22,9 @@ You can find more information about Starling Bank at [their website](https://www
Once you have your own Starling bank account you will need to sign up for a Starling developer account [here](https://developer.starlingbank.com/signup). You won't need to do any development but you will need to get a "Personal Access Token" that will allow the integration to access your account balance.
-
+
You control what access is granted using this token. This integration only needs very basic access (see below).
-
+
Once you've signed up:
diff --git a/source/_components/stiebel_eltron.markdown b/source/_components/stiebel_eltron.markdown
index d1d974bdb9a..08f4e9d98e2 100644
--- a/source/_components/stiebel_eltron.markdown
+++ b/source/_components/stiebel_eltron.markdown
@@ -63,9 +63,11 @@ hub:
type: string
{% endconfiguration %}
-
+
+
This integration requires the [Modbus](/components/modbus/) integration to be set up to work
-
+
+
Full configuration example including modbus setup shown below:
diff --git a/source/_components/swiss_hydrological_data.markdown b/source/_components/swiss_hydrological_data.markdown
index 31f76ac1610..b53f74de1df 100644
--- a/source/_components/swiss_hydrological_data.markdown
+++ b/source/_components/swiss_hydrological_data.markdown
@@ -55,8 +55,8 @@ Sensors are exposing additional values through their attributes for all availabl
- `previous-24h`: The previous measurement for the last 24 hours.
- `station_update`: There is a time span between the sensor update in Home Assistant and the updates from the stations. Include those information if you are building automations based on the discharge of a water body.
-
+
The sensors don't show the latest measurement, but those from the last hour due to the source of data. Some stations also don't provide data for certain measurements.
-
+
The hydrological measurements are coming from the [Swiss Federal Office for the Environment (Bundesamt für Umwelt - Abt. Hydrologie)](http://www.hydrodaten.admin.ch) and are updated every 10 minutes.
diff --git a/source/_components/swisscom.markdown b/source/_components/swisscom.markdown
index cfb47622981..f29aeb21834 100644
--- a/source/_components/swisscom.markdown
+++ b/source/_components/swisscom.markdown
@@ -12,9 +12,9 @@ redirect_from:
The `swisscom` platform offers presence detection by looking at connected devices to an [Internet-Box](https://www.swisscom.ch/en/residential/help/device/internet-router.html) router from [Swisscom](https://www.swisscom.ch) which is an Internet provider in Switzerland.
-
+
There are three models of Internet-Box (light, standard and plus). The platform has only been tested on the Internet-Box plus but the others should work as well because they have the same web interface.
-
+
To use an Internet-Box router in your installation, add the following to your `configuration.yaml` file:
diff --git a/source/_components/switch.command_line.markdown b/source/_components/switch.command_line.markdown
index 6470f2c58ad..f2589c65b38 100644
--- a/source/_components/switch.command_line.markdown
+++ b/source/_components/switch.command_line.markdown
@@ -105,9 +105,9 @@ Given this example, in the UI one would see the `friendly_name` of
This switch will shutdown your system that is hosting Home Assistant.
-
+
This switch will shutdown your host immediately, there will be no confirmation.
-
+
```yaml
# Example configuration.yaml entry
diff --git a/source/_components/switch.mqtt.markdown b/source/_components/switch.mqtt.markdown
index 7fe62ac1341..729ec0ad574 100644
--- a/source/_components/switch.mqtt.markdown
+++ b/source/_components/switch.mqtt.markdown
@@ -137,9 +137,11 @@ device:
type: string
{% endconfiguration %}
-
+
+
Make sure that your topic matches exactly. `some-topic/` and `some-topic` are different topics.
-
+
+
## Examples
diff --git a/source/_components/switch.rest.markdown b/source/_components/switch.rest.markdown
index dd339fc9b82..b22189d9f85 100644
--- a/source/_components/switch.rest.markdown
+++ b/source/_components/switch.rest.markdown
@@ -74,9 +74,9 @@ verify_ssl:
default: true
{% endconfiguration %}
-
+
Make sure that the URL matches exactly your endpoint or resource.
-
+
## Example
diff --git a/source/_components/switch.rfxtrx.markdown b/source/_components/switch.rfxtrx.markdown
index 6055b32601b..7ee65811c77 100644
--- a/source/_components/switch.rfxtrx.markdown
+++ b/source/_components/switch.rfxtrx.markdown
@@ -66,14 +66,16 @@ signal_repetitions:
type: integer
{% endconfiguration %}
-
-This integration and the [rfxtrx binary sensor](/components/binary_sensor.rfxtrx/) can steal each other's devices when setting the `automatic_add` configuration parameter to `true`. Set `automatic_add` only when you have some devices to add to your installation, otherwise leave it to `false`.
-
+
-
+This integration and the [rfxtrx binary sensor](/components/binary_sensor.rfxtrx/) can steal each other's devices when setting the `automatic_add` configuration parameter to `true`. Set `automatic_add` only when you have some devices to add to your installation, otherwise leave it to `false`.
+
+
+
+
If a device ID consists of only numbers, please make sure to surround it with quotes.
This is a known limitation in YAML, because the device ID will be interpreted as a number otherwise.
-
+
Generate codes:
diff --git a/source/_components/switcher_kis.markdown b/source/_components/switcher_kis.markdown
index f57627eda0f..08b27786579 100644
--- a/source/_components/switcher_kis.markdown
+++ b/source/_components/switcher_kis.markdown
@@ -16,17 +16,19 @@ To enable it, add an entry to your `configuration.yaml` according to the followi
To retrieve your device's details, please follow the instructions [here](https://github.com/NightRang3r/Switcher-V2-Python).
-
+
Please note, the Switcher-V2-Python script is written in python 2.7 syntax, it won't run with python 3.x.
-
+
-
+
Please note, for the Switcher-V2-Python script to run successfully, you need to configure your device to work locally.
-
+
+
+
-
Please note, on the original script repository, users recently reported difficulties controling the device after upgrading the firmware to the new 3.0 version.As this integration is based on that script, please do not upgrade to version 3.0 until this issue is resolved. You can follow the issue [here](https://github.com/NightRang3r/Switcher-V2-Python/issues/3).
-
+
+
```yaml
switcher_kis:
phone_id: 'REPLACE_WITH_PHONE_ID'
@@ -59,9 +61,11 @@ device_password:
| `electric_current` | float | The electric current in amps. | 12.5 |
| `current_power_w` | integer | The current power used in watts. | 2756 |
-
+
+
Please note, the following attributes are not eligible when the device is off and therefore will not appear as state attributes: `remaining_time`, `electric_current`, `current_power_w`.
-
+
+
## Services
diff --git a/source/_components/synology.markdown b/source/_components/synology.markdown
index ef3a7c89e71..38ab70e1276 100644
--- a/source/_components/synology.markdown
+++ b/source/_components/synology.markdown
@@ -12,10 +12,12 @@ redirect_from:
The `synology` camera platform allows you to watch the live streams of your [Synology](https://www.synology.com/) Surveillance Station based IP cameras in Home Assistant.
-
+
+
Synology has disabled the livestreaming API and the integration is currently broken if you are using Surveillance Station version 8.2.3-5828.
There is an unsupported preview fix available. (8.2.3-5829) - Instructions can be found [here](https://www.vcloudinfo.com/2019/04/how-to-manually-upgrade-your-synology-surveillance-system-firmware.html) for updating manually.
-
+
+
## Configuration
@@ -79,6 +81,8 @@ camera:
verify_ssl: false
```
-
+
+
Most users will need to set `verify_ssl` to false unless they have installed a valid SSL/TLS certificate in place of the built in self-signed certificate.
-
+
+
diff --git a/source/_components/synologydsm.markdown b/source/_components/synologydsm.markdown
index d64128cc4b4..8458bb31161 100644
--- a/source/_components/synologydsm.markdown
+++ b/source/_components/synologydsm.markdown
@@ -132,17 +132,19 @@ monitored_conditions:
description: Displays the maximum temperature of all disks in the volume (creates a new entry for each volume).
{% endconfiguration %}
-
+
After booting Home Assistant it can take up to 15 minutes for the sensors to show up. This is due to the fact that sensors are created after Home Assistant has fully been initialized.
-
+
-
+
This sensor will wake up your Synology NAS if it's in hibernation mode.
-
+
+
+
-
If you set `ssl:` to `False`, you *have* to also explicitly set `port:` to **5000**.
-
+
+
## Separate User Configuration
diff --git a/source/_components/telegram.markdown b/source/_components/telegram.markdown
index e2d80c25c4a..067534e6dca 100644
--- a/source/_components/telegram.markdown
+++ b/source/_components/telegram.markdown
@@ -64,9 +64,9 @@ $ python3
123456789
```
-
+
If you want to add new chat IDs then you will need to disable the active configuration to actually see the result with the IDs, otherwise you may only get empty results array.
-
+
## Configuration
@@ -198,7 +198,8 @@ inline_keyboard:
type: list
{% endconfiguration %}
-
+
+
Since Home Assistant version 0.48 you have to [whitelist the source folder](/docs/configuration/basic/) of the file you want to include in the notification.
```yaml
@@ -209,7 +210,8 @@ homeassistant:
- /tmp
- /home/kenji/data
```
-
+
+
### Video support
diff --git a/source/_components/tellduslive.markdown b/source/_components/tellduslive.markdown
index 17bcbfd7571..cb9fe0be69d 100644
--- a/source/_components/tellduslive.markdown
+++ b/source/_components/tellduslive.markdown
@@ -23,9 +23,11 @@ redirect_from:
The `tellduslive` integration let you connect to [Telldus Live](https://live.telldus.com). It's cloud platform that connects to your Tellstick Net or Tellstick ZNet connected gear at home.
-
+
+
If you are upgrading from 0.58 or older, you need to remove all Telldus configuration from your `configuration.yaml` file before continuing.
-
+
+
Home Assistant will automatically discover the presence of a Tellstick Net or Tellstick ZNet on your local network if the [discovery]({{site_root}}/components/discovery/) integration is enabled. When discovery and the key exchange with Telldus Live have been completed, you will be presented with an option to integrate with the cloud or local API for direct communication with your hardware in your LAN. Local API supports only one device at this stage. Local API is only supported with the Znet Lite products, the older hardware (such as Tellstick Net) does not support local API.
@@ -50,8 +52,10 @@ scan_interval:
default: 60
{% endconfiguration %}
-
+
+
It is only possible to configure the `scan_interval` when setting up the device. If the polling interval needs to be changed after the device is configured it must be changed manually by changing `"scan_interval": 60,` for the device in the file `.storage/core.config_entries`.
-
+
+
The integration will offer configuration through the Home Assistant user interface where it will let you associate it with your Telldus Live account.
diff --git a/source/_components/tensorflow.markdown b/source/_components/tensorflow.markdown
index c92dd0da3a0..1fdcf98d071 100644
--- a/source/_components/tensorflow.markdown
+++ b/source/_components/tensorflow.markdown
@@ -12,10 +12,12 @@ redirect_from:
The `tensorflow` image processing platform allows you to detect and recognize objects in a camera image using [TensorFlow](https://www.tensorflow.org/). The state of the entity is the number of objects detected, and recognized objects are listed in the `summary` attribute along with quantity. The `matches` attribute provides the confidence `score` for recognition and the bounding `box` of the object for each detection category.
-
+
+
The following packages must be installed on Hassbian/Raspbian before following the setup for the integration to work:
- `$ sudo apt-get install libatlas-base-dev libopenjp2-7 libtiff5`
-
+ `sudo apt-get install libatlas-base-dev libopenjp2-7 libtiff5`
+
+
## Setup
diff --git a/source/_components/timer.markdown b/source/_components/timer.markdown
index 1340b3dcd1b..e04b7b864fd 100644
--- a/source/_components/timer.markdown
+++ b/source/_components/timer.markdown
@@ -12,9 +12,9 @@ The `timer` integration aims to simplify automations based on (dynamic) duration
When a timer finishes or gets canceled the corresponding events are fired. This allows you to differentiate if a timer has switched from `active` to `idle` because the given duration has elapsed or it has been canceled. To control timers in your automations you can use the services mentioned below. When calling the `start` service on a timer that is already running, it resets the duration it will need to finish and restart the timer without triggering a canceled or finished event. This, for example, makes it easy to create timed lights that get triggered by motion. Starting a timer triggers a started event unless the timer is paused, in that case, it triggers a restarted event.
-
+
With the current implementation timers don't persist over restarts. After a restart, they will be idle again, together with their initial configuration.
-
+
## Configuration
diff --git a/source/_components/tplink.markdown b/source/_components/tplink.markdown
index b0e6db7fb7e..00231ae17fe 100644
--- a/source/_components/tplink.markdown
+++ b/source/_components/tplink.markdown
@@ -158,9 +158,9 @@ Currently supported devices includes the following:
- EAP-225 AP with latest firmware version
- Archer D9 firmware version 0.9.1 0.1 v0041.0 Build 160224 Rel.59129n
-
+
TP-Link devices typically only allow one login at a time to the admin console. This integration will count towards your one allowed login. Depending on how aggressively you configure device_tracker you may not be able to access the admin console of your TP-Link device without first stopping Home Assistant. Home Assistant takes a few seconds to login, collect data, and log out. If you log into the admin console manually, remember to log out so that Home Assistant can log in again.
-
+
### Configuration
diff --git a/source/_components/tradfri.markdown b/source/_components/tradfri.markdown
index b888365ef45..23c995cdebd 100644
--- a/source/_components/tradfri.markdown
+++ b/source/_components/tradfri.markdown
@@ -20,9 +20,9 @@ The `tradfri` integration support the IKEA Trådfri Gateway (a.k.a. IKEA Tradfri
You will be prompted to configure the gateway through the Home Assistant interface. The configuration process is very simple, when prompted, enter the security key printed on the physical sticker that is on the bottom of the IKEA Trådfri Gateway, then click configure.
-
+
If you see an "Unable to connect" message, restart the gateway and try again. Don't forget to assign a permanent IP address to your IKEA Trådfri Gateway in your router / DHCP-server.
-
+
## Configuration
@@ -58,9 +58,9 @@ Then restart Home Assistant, when prompted enter the security key and click conf
### Compilation issues
-
+
This does not apply to Hass.io or Docker.
-
+
Please make sure you have `autoconf` installed (`$ sudo apt-get install autoconf`) if you want to use this component. Also, installing some dependencies might take considerable time (>1 h) on slow devices.
diff --git a/source/_components/transport_nsw.markdown b/source/_components/transport_nsw.markdown
index f7ea7bade5d..b4e872263f7 100644
--- a/source/_components/transport_nsw.markdown
+++ b/source/_components/transport_nsw.markdown
@@ -14,9 +14,11 @@ The `transport_nsw` sensor will give you the time until the next departure from
## Setup
-Prerequisite is a free API key from [Transport NSW](https://opendata.transport.nsw.gov.au/).
+Prerequisite is a free API key from [Transport NSW](https://opendata.transport.nsw.gov.au/). You will need to register an account and then create a new application. You will need to add the 'Trip Planner APIs' to your application.
-In order to find your stop id, go to Google maps and click on any bus/train/ferry stop. The pop up window shows the stop ID underneath the station name. For train stations the easist way to get a stop id for a platform is through [Transport NSW Info](https://transportnsw.info/).
+In order to find your stop id, use the [Transport NSW stop finder](https://transportnsw.info/stop#/) and search for your stop. The URL will contain the stop id as a number.
+
+You may also try going to Google maps and clicking on any bus/train/ferry stop. The pop up window shows the stop ID underneath the station name. For train stations the easist way to get a stop id for a platform is through [Transport NSW Info](https://transportnsw.info/).
As a default the sensor picks up the next mode of transport leaving from a stop id.
diff --git a/source/_components/tts.markdown b/source/_components/tts.markdown
index 9a6b9a7dc88..77f818fff1f 100644
--- a/source/_components/tts.markdown
+++ b/source/_components/tts.markdown
@@ -16,9 +16,11 @@ tts:
- platform: google_translate
```
-
+
+
Depending on your setup, you might need to set a base URL (`base_url`) inside the [http component](/components/http/) or in the parameters of this component.
-
+
+
The following optional parameters can be used with any platform. However, the TTS integration will only look for global settings under the configuration of the first configured platform:
@@ -63,9 +65,11 @@ tts:
service_name: google_say
```
-
+
+
In the above example, `base_url` is custom to this particular TTS platform configuration. It is not suggesting that you use the `base_url` that you have set for your core Home Assistant configuration. The reason you might need to do this is outlined in the next section.
-
+
+
## When do you need to set `base_url` here?
diff --git a/source/_components/ubee.markdown b/source/_components/ubee.markdown
index 4e3084dd6ed..31122e1fa63 100644
--- a/source/_components/ubee.markdown
+++ b/source/_components/ubee.markdown
@@ -49,9 +49,11 @@ Supported models:
- EVW32C-0N
- EVW3226@UPC
-
+
+
This integration uses
pyUbee library, which was tested with models listed above. If you have different model of
Ubee Router and it doesn't work with this component, please
create pyUbee issue to request for support for your model.
-
+
+
By default, Home Assistant pulls information about connected devices from Ubee router every 5 seconds.
See the [device tracker integration page](/components/device_tracker/) for instructions on how to configure the people to be tracked.
diff --git a/source/_components/uk_transport.markdown b/source/_components/uk_transport.markdown
index 4c95baddb0b..e3b1e0e6c4b 100644
--- a/source/_components/uk_transport.markdown
+++ b/source/_components/uk_transport.markdown
@@ -12,9 +12,11 @@ redirect_from:
The `uk_transport` sensor will display the time in minutes until the next departure in a specified direction from of a configured train station or bus stop. The sensor uses [transportAPI](http://www.transportapi.com/) to query live departure data and requires a developer application ID and key which can be obtained [here](https://developer.transportapi.com/). The [free tier](http://www.transportapi.com/plans/) allows 1000 requests daily, which is sufficient for a single sensor refreshing every 87 seconds.
-
+
+
Additional sensors can be added but at the expense of a reduced refresh rate. 2 sensors can be updated every 2*87 = 174 seconds, and so on.
-
+
+
Queries are entered as a list, with the two transport modes available being `bus` and `train`.
diff --git a/source/_components/ups.markdown b/source/_components/ups.markdown
index 3f949a05fec..441b01f6c28 100644
--- a/source/_components/ups.markdown
+++ b/source/_components/ups.markdown
@@ -42,10 +42,10 @@ Configuration options for the UPS Sensor:
milliseconds: 0
-
+
The UPS sensor logs into the UPS My Choice website to scrape package data. It does not use an API. Use at your own risk.
-
+
-
+
If the UPS sensor is throwing an error about not being able to login to the UPS My Choice website, it's likely because there is a new UPS Technology Agreement (UTA) preventing the scraper from accessing the package data. Login to UPS My Choice manually and accept the UTA to resolve this.
-
+
diff --git a/source/_components/usps.markdown b/source/_components/usps.markdown
index 7e120d4e500..92defd842fc 100644
--- a/source/_components/usps.markdown
+++ b/source/_components/usps.markdown
@@ -25,21 +25,21 @@ There is currently support for the following device types within Home Assistant:
This integration requires that a headless-capable web browser is installed on your system - either PhantomJS or Google Chrome. Preferably use Chrome if your operating system supports it, since PhantomJS is deprecated.
-
+
If you are using a Raspberry Pi, you must use PhantomJS.
-
+
-
+
Hass.io containers are based on Alpine Linux. PhantomJS is not available for Alpine Linux. Therefore it is currently not possible to use this integration on Hass.io.
-
+
### PhantomJS
Install the latest version of [PhantomJS](http://phantomjs.org/download.html). Ensure the executable is on your `PATH`. `phantomjs --version` should work and report the correct version. This is the default option and requires no further configuration.
-
+
Don't use apt-get to install PhantomJS. This version is not compatible.
-
+
If you use the PhantomJS option, specify `driver: phantomjs` in your `usps` configuration.
@@ -88,9 +88,9 @@ name:
default: usps
{% endconfiguration %}
-
+
The USPS sensor logs into the MyUSPS website to scrape package data. It does not use an API.
-
+
## Camera
diff --git a/source/_components/utility_meter.markdown b/source/_components/utility_meter.markdown
index c87b2142788..1d25f7b312f 100644
--- a/source/_components/utility_meter.markdown
+++ b/source/_components/utility_meter.markdown
@@ -15,9 +15,9 @@ From a user perspective, utility meters operate in cycles (usually monthly) for
Some utility providers have different tariffs according to time/resource availability/etc. The utility meter enables you to define the various tariffs supported by your utility provider and accounts your consumptions in accordance. When tariffs are defined a new entity will show up indicating the current tariff. In order to change the tariff, the user must call a service, usually through an automation that can be based in time or other external source (eg. a REST sensor).
-
+
Sensors created with this integration are persistent, so values are retained across restarts of home assistant. The first cycle for each sensor, will be incomplete; a sensor tracking daily usage, will start to be accurate the next day after the integration was activated. A sensor tracking monthly usage, will present accurate data starting the first of the next month after being added to home assistant.
-
+
## Configuration
diff --git a/source/_components/uvc.markdown b/source/_components/uvc.markdown
index 3cddc463fdc..2b1634b98d2 100644
--- a/source/_components/uvc.markdown
+++ b/source/_components/uvc.markdown
@@ -59,7 +59,6 @@ ssl:
default: false
{% endconfiguration %}
-
+
When using an API_KEY to access cameras controlled by Ubiquiti's NVR Software, the associated user account MUST have at least Administrator privileges within the NVR Software in order for new cameras to be added into Home Assistant. Once the entities have been created in Home Assistant, privileges for the user account can be lowered.
-
-
+
diff --git a/source/_components/vacuum.xiaomi_miio.markdown b/source/_components/vacuum.xiaomi_miio.markdown
index 104bc948733..771baadc137 100644
--- a/source/_components/vacuum.xiaomi_miio.markdown
+++ b/source/_components/vacuum.xiaomi_miio.markdown
@@ -204,14 +204,16 @@ The following table shows the units of measurement for each attribute:
## Retrieving the Access Token
-
+
+
As per Version 5.4.49 the Android Mi Home app stores the token readable in the log files. It can easily be retrieved in the folder Smarthome on in the Android device. Just open the text file inside the Smarthome/logs folder and search for the token.
The iPhone app still stores the token in the SQLite db as of v4.10.2 (Dec 22, 2018).
This token (32 hexadecimal characters) is required for the Xiaomi Mi Robot Vacuum, Mi Robot 2 (Roborock) Vacuum, Xiaomi Philips Lights and Xiaomi IR Remote. The Xiaomi Gateway uses another security method and requires a `key` (16 alphanumeric chars), which can be obtained
easily via a hidden menu item at the Mi-Home app or using the `miio` command line tool.
-
+
+
### Miio command line tool
diff --git a/source/_components/vera.markdown b/source/_components/vera.markdown
index 177ddb8367a..8f2cf969c58 100644
--- a/source/_components/vera.markdown
+++ b/source/_components/vera.markdown
@@ -55,9 +55,11 @@ vera_controller_url:
type: string
{% endconfiguration %}
-
+
+
It is recommended to assign a static IP address to your Vera Controller. This ensures that it won't change IP addresses, so you won't have to change the `vera_controller_url` if it reboots and comes up with a different IP address. See your router's manual for details on how to set this up. If you need the MAC address of your Vera, check the label on the bottom.
-
+
+
### Configure devices
diff --git a/source/_components/viaggiatreno.markdown b/source/_components/viaggiatreno.markdown
index 13b321434d8..9b9b60db86d 100644
--- a/source/_components/viaggiatreno.markdown
+++ b/source/_components/viaggiatreno.markdown
@@ -18,9 +18,11 @@ The first is available just looking at the [ViaggiaTreno](http://viaggiatreno.it
`http://www.viaggiatreno.it/viaggiatrenonew/resteasy/viaggiatreno/autocompletaStazione/
`
(e.g., `http://www.viaggiatreno.it/viaggiatrenonew/resteasy/viaggiatreno/autocompletaStazione/ROMA` will list all station names (with ids) that starts with *ROMA*).
-
+
+
Note that the `station_id` is referred to the train's **departing station**. If a train number does not match with the station id, no data will be returned to the sensor.
-
+
+
Then add the data to your `configuration.yaml` file as shown in the example:
@@ -47,13 +49,15 @@ train_name:
type: string
{% endconfiguration %}
-
+
In a future implementation, the station name could be used to automatically search best-matching station id, without the need to specify it.
-
+
The public timetables are coming from [ViaggiaTreno](http://viaggiatreno.it).
-
+
+
Instructions (in Italian) for the API are available at:
https://github.com/bluviolin/TrainMonitor/wiki/API-del-sistema-Viaggiatreno
-
+
+
diff --git a/source/_components/vultr.markdown b/source/_components/vultr.markdown
index e35ba0c3d61..8c57009bf4c 100644
--- a/source/_components/vultr.markdown
+++ b/source/_components/vultr.markdown
@@ -27,9 +27,9 @@ There is currently support for the following device types within Home Assistant:
Obtain your API key from your [Vultr Account](https://my.vultr.com/settings/#settingsapi).
-
+
Ensure you allow the public IP of Home Assistant under the Access Control heading.
-
+
To integrate your Vultr subscriptions with Home Assistant, add the following section to your `configuration.yaml` file:
@@ -54,9 +54,11 @@ The `vultr` binary sensor platform allows you to monitor your [Vultr](https://ww
To use this binary sensor, you first have to set up your Vultr hub.
-
+
+
The following examples assume a subscription that has an ID of `123456` and a label of `Web Server`
-
+
+
Minimal `configuration.yaml` (produces `binary_sensor.vultr_web_server`):
@@ -96,9 +98,11 @@ The `vultr` sensor platform will allow you to view current bandwidth usage and p
To use this sensor, you must set up your Vultr hub.
-
+
+
The following examples assume a subscription that has an ID of `123456` and a label of `Web Server`
-
+
+
Minimal `configuration.yaml` (produces `sensor.vultr_web_server_current_bandwidth_used` and `sensor.vultr_web_server_pending_charges`):
diff --git a/source/_components/wake_on_lan.markdown b/source/_components/wake_on_lan.markdown
index aa32db7e162..ab1a21b1200 100644
--- a/source/_components/wake_on_lan.markdown
+++ b/source/_components/wake_on_lan.markdown
@@ -53,10 +53,12 @@ The `wake_on_lan` (WOL) switch platform allows you to turn on a [WOL](https://en
### Switch configuration
-
+
+
The WOL switch can only turn on your computer and monitor the state. There is no universal way to turn off a computer remotely. The `turn_off` variable is there to help you call a script when you have figured out how to remotely turn off your computer.
See below for suggestions on how to do this.
-
+
+
To enable this switch in your installation, add the following to your `configuration.yaml` file:
diff --git a/source/_components/water_heater.markdown b/source/_components/water_heater.markdown
index 61f11e22024..9ac03694e2c 100644
--- a/source/_components/water_heater.markdown
+++ b/source/_components/water_heater.markdown
@@ -20,9 +20,11 @@ water_heater:
Available services: `water_heater.set_temperature`, `water_heater.turn_away_mode_on`, `water_heater.turn_away_mode_off`, `water_heater.set_operation_mode`
-
+
+
Not all water heater services may be available for your platform. Be sure to check the available services Home Assistant has enabled by checking

**Services**.
-
+
+
### Service `water_heater.set_temperature`
diff --git a/source/_components/weather.darksky.markdown b/source/_components/weather.darksky.markdown
index 1792e65a9cd..30906a6fc9f 100644
--- a/source/_components/weather.darksky.markdown
+++ b/source/_components/weather.darksky.markdown
@@ -15,9 +15,11 @@ The `darksky` platform uses the [Dark Sky](https://darksky.net/) web service as
You need an API key which is free but requires [registration](https://darksky.net/dev/register). The free tier allows up to 1000 calls per day, this platform updates at most every 3 minutes, using up to 480 of those calls.
-
+
+
[Dark Sky](https://darksky.net/dev/) will charge you $0.0001 per API call if you enter your credit card details and create more than 1000 calls per day.
-
+
+
To add Dark Sky to your installation, add the following to your `configuration.yaml` file:
@@ -60,8 +62,10 @@ mode:
default: hourly
{% endconfiguration %}
-
+
+
This platform is an alternative to the [`darksky`](/components/sensor.darksky/) sensor.
-
+
+
Details about the API are available in the [Dark Sky documentation](https://darksky.net/dev/docs).
diff --git a/source/_components/websocket_api.markdown b/source/_components/websocket_api.markdown
index c050221e4b8..7eb13a314f7 100644
--- a/source/_components/websocket_api.markdown
+++ b/source/_components/websocket_api.markdown
@@ -10,9 +10,11 @@ ha_release: 0.34
The `websocket_api` integration set up a WebSocket API and allows one to interact with a Home Assistant instance that is running headless. This integration depends on the [`http` component](/components/http/).
-
+
+
It is HIGHLY recommended that you set the `api_password`, especially if you are planning to expose your installation to the internet.
-
+
+
## Configuration
diff --git a/source/_components/wink.markdown b/source/_components/wink.markdown
index d9735a2fdbf..c03c387d0d3 100644
--- a/source/_components/wink.markdown
+++ b/source/_components/wink.markdown
@@ -66,9 +66,9 @@ Wink requests three pieces of information from the user when they sign up for a
No settings are required in the `configuration.yaml` other than `wink:` this is because you will be guided through setup via the configurator on the frontend.
-
+
When using the configurator make sure the initial setup is performed on the same local network as the Home Assistant server, if not from the same box Home Assistant is running on. This will allow for authentication redirects to happen correctly.
-
+
```yaml
wink:
@@ -120,7 +120,8 @@ Local control:
- Local control isn't used during the start-up of Home Assistant; this means initial setup requires an active internet connection.
- Local control requests are first sent to the controlling hub. If a request fails, that request will attempt to go online.
-
+
+
It is possible for the hub to get into a bad state where it stops accepting local control request. If this happens, you will notice requests taking significantly longer as they are redirected online. This doesn't happen often, but when it does, it appears to be resolved by rebooting the hub.
The following error will be logged if the hub is rejecting local requests.
@@ -129,7 +130,7 @@ The following error will be logged if the hub is rejecting local requests.
Error sending local control request. Sending request online
```
-
+
## Service `refresh_state_from_wink`
@@ -159,9 +160,9 @@ You can use the service wink/pair_new_device to pair a new device to your Wink h
| `pairing_mode` | no | One of the following [zigbee, zwave, zwave_exclusion, zwave_network_rediscovery, lutron, bluetooth, kidde]
| `kidde_radio_code` | conditional | A string of 8 1s and 0s one for each dip switch on the kidde device left --> right = 1 --> 8 (Required if pairing_mode = kidde)
-
+
Calling service wink/pull_newly_added_wink_devices after a device is paired will add that new device to Home Assistant. The device will also show up on the next restart of Home Assistant.
-
+
## Service `rename_wink_device`
@@ -172,13 +173,13 @@ You can use the service wink/rename_wink_device to change the name of a device.
| `entity_id` | no | String that points at the `entity_id` of device to rename.
| `name` | no | The name to change it to.
-
-Home Assistant entity_ids for Wink devices are based on the Wink device's name. Calling this service will not change the entity_id of the deivce until Home Assistant is restarted.
-
+
+Home Assistant entity_ids for Wink devices are based on the Wink device's name. Calling this service will not change the entity_id of the device until Home Assistant is restarted.
+
-
+
The Wink hub, by default, can only be accessed via the cloud. This means it requires an active internet connection and you will experience delays when controlling and updating devices (~3s).
-
+
## Custom Wink devices and their services
@@ -206,9 +207,9 @@ script:
auto_shutoff: 60
```
-
+
The following services only work with the Dome siren/chime.
-
+
### Service `set_chime_volume`
@@ -392,9 +393,9 @@ The requirement is that you have setup [Wink](/components/wink/) from above.
- Canary all-in-one security camera
-
+
The above devices are confirmed to work, but others may work as well.
-
+
## Binary Sensor
@@ -416,9 +417,9 @@ The requirement is that you have setup [Wink](/components/wink/) from above.
- Wink hub devices connection status. This includes any paired hubs like Hue, Wink v1, Wink v2, Wink Relay...
- Dropcam sensors
-
+
The above devices are confirmed to work, but others may work as well.
-
+
## Climate
@@ -436,9 +437,9 @@ The requirement is that you have setup [Wink](/components/wink/) from above.
- Generic Z-Wave
- Quirky Aros window AC unit
-
+
The above devices are confirmed to work, but others may work as well.
-
+
## Cover
@@ -456,9 +457,9 @@ The requirement is that you have setup [Wink](/components/wink/) from above.
- GoControl garage door opener
- Chamberlain MyQ (Limited functionality) (No Wink hub required)
-
+
The above devices are confirmed to work, but others may work as well.
-
+
## Fan
@@ -471,9 +472,9 @@ The requirement is that you have setup [Wink](/components/wink/) from above.
- Home Decorator Wink-enabled Gardinier ceiling fan
- Hampton Bay ceiling fan module
-
-The above devices are confimed to work, but others may work as well.
-
+
+The above devices are confirmed to work, but others may work as well.
+
## Light
@@ -489,9 +490,9 @@ The requirement is that you have setup [Wink](/components/wink/) from above.
- GE link
- Wink light groups (User created groups of lights)
-
+
The above devices are confirmed to work, but others may work as well.
-
+
## Lock
@@ -506,9 +507,9 @@ The requirement is that you have setup [Wink](/components/wink/) from above.
- August (No Wink hub required) (August Connect required)
- Generic Z-wave
-
+
The following services have only been confirmed on Schlage locks.
-
+
### Service `wink_set_lock_alarm_mode`
@@ -620,13 +621,13 @@ You can use the service wink/wink_add_new_lock_key_code to add a new user code t
| `name` | no | the name of the new key code
| `code` | no | The new code. Must match length of existing codes.
-
+
Calling service wink/pull_newly_added_wink_devices will add the new key code to Home Assistant. The device will also show up on the next restart of Home Assistant.
-
+
-
+
If supported by your lock, a binary sensor will be created for each user key code you have defined. These key codes will turn on when the code is entered and automatically turn off after a few seconds.
-
+
## Sensor
@@ -644,9 +645,9 @@ The requirement is that you have setup [Wink](/components/wink/) from above.
- Motion sensor temperature
- Quirky refuel propane tank monitor (No Wink hub required)
-
+
The above devices are confirmed to work, but others may work as well.
-
+
## Switch
@@ -673,6 +674,8 @@ The requirement is that you have set up [Wink](/components/wink/) from above.
- Rheem Econet water heaters (No Wink hub required)
-
+
+
Wink water heaters use to live under the `climate` platform prior to release 0.81.
-
+
+
diff --git a/source/_components/wirelesstag.markdown b/source/_components/wirelesstag.markdown
index 95d62b38f8d..74428b3776a 100644
--- a/source/_components/wirelesstag.markdown
+++ b/source/_components/wirelesstag.markdown
@@ -45,14 +45,18 @@ password:
type: string
{% endconfiguration %}
-
+
+
To enable local push notifications from the Tags Manager, you need to add the IP address of the Tags Manager into whitelist in `http` component; i.e., add it to `trusted_networks`. See the [HTTP](/components/http/) for details.
Additionally, you need add at least one [WirelessTag binary sensor](#binary-sensor) in config to start receiving local push notifications.
-
-
+
+
+
+
Tags Manager supports local push notifications for `http` schema only. So if your hass uses `https`, local push notifications are disabled and data is received via cloud polling.
-
+
+
## Binary Sensor
diff --git a/source/_components/workday.markdown b/source/_components/workday.markdown
index 85356927dac..86c82e623ff 100644
--- a/source/_components/workday.markdown
+++ b/source/_components/workday.markdown
@@ -60,7 +60,7 @@ days_offset:
type: integer
default: 0
add_holidays:
- description: "Add custom holidays (such as company, personal holidays or vacations). Needs to formatted as `YYYY-MM-DD`."
+ description: "Add custom holidays (such as company, personal holidays or vacations). Needs to formatted as `YYYY-MM-DD`."
required: false
type: list
{% endconfiguration %}
@@ -68,12 +68,14 @@ add_holidays:
Days are specified as follows: `mon`, `tue`, `wed`, `thu`, `fri`, `sat`, `sun`.
The keyword `holiday` is used for public holidays identified by the holidays module.
-
+
+
If you use the sensor for Norway (`NO`) you need to wrap `NO` in quotes or write the name in full.
Otherwise the value is evaluated as `false`.
If you use the sensor for Canada (`CA`) with Ontario (`ON`) as `province:` then you need to wrap `ON` in quotes.
Otherwise the value is evaluated as `true` (check the YAML documentation for further details) and the sensor will not work.
-
+
+
## Full example
@@ -110,6 +112,8 @@ automation:
entity_id: switch.heater
```
-
+
+
Please remember that [as explained here](/docs/configuration/devices/) you can only have a single `automation:` entry. Add the automation to your existing automations.
-
+
+
diff --git a/source/_components/wsdot.markdown b/source/_components/wsdot.markdown
index a4b6853483a..924973a7a50 100644
--- a/source/_components/wsdot.markdown
+++ b/source/_components/wsdot.markdown
@@ -82,9 +82,9 @@ Some common examples include:
98 HOV Bellevue-Seattle via I-90 (WB REV)
```
-
+
WSDOT does provide information about ferry schedules, mountain passes, tolls, etc. but so far only Travel Time data is available in this platform.
-
+
Here's an example of the sensor in use:
diff --git a/source/_components/wunderground.markdown b/source/_components/wunderground.markdown
index 4ec2bc32496..3a1105375d5 100644
--- a/source/_components/wunderground.markdown
+++ b/source/_components/wunderground.markdown
@@ -12,11 +12,13 @@ redirect_from:
The `wunderground` platform uses [Weather Underground](http://www.wunderground.com) as a source for current weather information.
-
+
+
Obtain a WUnderground API key [here](https://www.wunderground.com/weather/api). They no longer offer free API keys, and all keys must be paid for. At this time existing free keys will continue to work, but will be disabled Dec 31, 2018, except you own a personal weather station and provide your data to WU (PWS Uploader). As of Sept 6, 2018 Weather Underground states they are declaring the [End of Service for the Weather Underground API](https://apicommunity.wunderground.com/weatherapi/topics/end-of-service-for-the-weather-underground-api). They say they will develop new plans for non-commercial users. No timeline for this has been announced.
Please consider this when using the following information.
-
+
+
Configuration
@@ -269,9 +271,9 @@ group:

-
+
Note: While the platform is called “wunderground” the sensors will show up in Home Assistant as “PWS” (eg: sensor.pws_weather).
-
+
Note that the Weather Underground sensor is added to the entity_registry, so second and subsequent Personal Weather Station ID (pws_id) will have their monitored conditions suffixed with an index number e.g.
diff --git a/source/_components/xiaomi.markdown b/source/_components/xiaomi.markdown
index 290e5eda2e5..f5f625f9bc3 100644
--- a/source/_components/xiaomi.markdown
+++ b/source/_components/xiaomi.markdown
@@ -24,21 +24,25 @@ In order to integrate the camera with Home Assistant, it is necessary to install
Once installed, please ensure that you have enabled FTP.
-
+
+
Currently, version 0.1.4-beta2 of the custom firmware is the highest supported. Firmwares higher than this version use [Pure-FTPd](https://www.pureftpd.org/project/pure-ftpd), which has a bug that prevents FFmpeg from correctly rendering video files.
-
-
+
+
+
+
Hassbian users: Don't forget to install `ffmpeg` support on your platform, otherwise, you'll not see video.
-
-
+
+
+
The live stream writing by the camera is not a supported format when the hass reads through FTP for Yi 720p and Xiaofang Cameras, so this platform retrives the video which was saved 1 minute earlier.
-
+
-
+
If you enabled RTSP server, you can connect to your camera via other Home Assistant camera platforms. However, this RTSP server disables the ability to use the supremely-useful Mi Home app. In order to maintain both Home Assistant compatibility _and_ the native app, this platform retrieves videos via FTP.
-
+
## Configuring the Platform
@@ -86,9 +90,11 @@ ffmpeg_arguments:
type: string
{% endconfiguration %}
-
+
+
The default for `path:` will not work with all cameras. It may be needed that you add that key with the exact path for your device.
-
+
+
## Image quality
diff --git a/source/_components/xiaomi_tv.markdown b/source/_components/xiaomi_tv.markdown
index fb2a6f60851..2efb6a67300 100644
--- a/source/_components/xiaomi_tv.markdown
+++ b/source/_components/xiaomi_tv.markdown
@@ -22,9 +22,9 @@ media_player:
- platform: xiaomi_tv
```
-
+
When starting or restarting Home Assistant make sure your TV is off. This is a flaw in the TV itself.
-
+
{% configuration %}
host:
@@ -50,6 +50,6 @@ media_player:
name: YOUR_TV_NAME
```
-
+
The platform will never turn your TV off. Instead, it will be put to sleep and woken up. This can be useful, because the selected source of the TV will remain the same. It will essentially turn your TV into a dumb TV.
-
+
diff --git a/source/_components/xmpp.markdown b/source/_components/xmpp.markdown
index bdfc3d6e213..f1902f1217f 100644
--- a/source/_components/xmpp.markdown
+++ b/source/_components/xmpp.markdown
@@ -63,11 +63,13 @@ room:
type: string
{% endconfiguration %}
-
+
+
Pre Home Assistant 0.81 `sleekxmpp` was used to connect to XMPP servers. `sleekxmpp` as of version 1.3.2, does not support > TLS v1. If you are running your own XMPP server (e.g., Prosody, ejabberd) make sure to allow using TLS v1.
Home Assistant after 0.81 uses `slixmpp`, which also supports TLS v1.1 and TLS v1.2.
-
+
+
All Jabber IDs (JID) must include the domain. Make sure that the password matches the account provided as sender.
@@ -96,11 +98,13 @@ Number 1 shows a classical, text-only message. The Title is optional, although i
You can send images or files from locally stored files or remote web locations via Jabber's HTTP Upload feature.
To send files and images, your jabber server must support [XEP_0363](https://xmpp.org/extensions/xep-0363.html).
-
-Be aware that images are uploaded onto the Jabber server of your provider. They reside there un-encrypted and could be accessed by the server admins. Usually images are deleted after a few days.
-
+
+
+Be aware that images are uploaded onto the Jabber server of your provider. They reside there un-encrypted and could be accessed by the server admins. Usually images are deleted after a few days.
+
Home-Assistant supports TLS encryption to ensure transport encryption. TLS is enforced by default. You can disable it with the [`tls`](#tls) flag -- which is not recommended.
-
+
+
Number 2 sends only an image, retrieved from the URL. The TLS connection to get the image is also not verified (use with caution).
diff --git a/source/_components/xs1.markdown b/source/_components/xs1.markdown
index 3059a7bd5df..66da8910349 100644
--- a/source/_components/xs1.markdown
+++ b/source/_components/xs1.markdown
@@ -56,17 +56,17 @@ password:
## Supported Device Types
-
+
This integration currently only covers part of the device types supported by the XS1 gateway, unsupported types are simply ignored.
-
+
### Sensors
Any type of sensor is supported.
-
+
If you are using climate devices the "current temp" sensor will be automatically used by the actuator (if named correctly). To make this work have a look at the actuator description below.
-
+
### Actuators
diff --git a/source/_components/yeelight.markdown b/source/_components/yeelight.markdown
index faf5316d1fa..61d718029ee 100644
--- a/source/_components/yeelight.markdown
+++ b/source/_components/yeelight.markdown
@@ -108,18 +108,21 @@ Per default the bulb limits the amount of requests per minute to 60, a limitatio
**Also note that bulbs in music mode will not update their state to "unavailable" if they are disconnected, which can cause delays in Home Assistant. Bulbs in music mode may also not react to commands from HASS the first time if the connection is dropped. If you experience this issue, turn the light off and back on again in the frontend and everything will return to normal.**
### Initial setup
-
+
+
+
Before trying to control your light through Home Assistant, you have to setup your bulb using Yeelight app. ( [Android](https://play.google.com/store/apps/details?id=com.yeelight.cherry&hl=fr), [IOS](https://itunes.apple.com/us/app/yeelight/id977125608?mt=8) ).
In the bulb property, you have to enable "LAN Mode" (previously called "Developer mode"). LAN mode may only be available with the latest firmware installed on your bulb. Firmware can be updated in the application after connecting the bulb.
Determine your bulb IP (using router, software, ping...).
Information on how to enable "LAN Mode" can be found [here](https://getyeti.co/posts/how-to-control-yeelight-and-your-smarthome-with-yeti).
-
+
+
### Supported models
-
+
This integration is tested to work with the following models. If you have a different model and it is working please let us know.
-
+
| Model ID | Model number | Product name |
|------------|--------------|--------------------------------------------------|
diff --git a/source/_components/yeelightsunflower.markdown b/source/_components/yeelightsunflower.markdown
index 04a83bffe16..2af4d88aac6 100644
--- a/source/_components/yeelightsunflower.markdown
+++ b/source/_components/yeelightsunflower.markdown
@@ -12,9 +12,9 @@ redirect_from:
The `yeelightsunflower` light platform allows you to control your Yeelight Sunflower light bulbs with Home Assistant.
-
+
The "Yeelight Sunflower" bulbs are not the same as the "Yeelight WiFi" bulbs.
-
+
To enable your lights, add the following lines to your `configuration.yaml` file:
@@ -32,10 +32,10 @@ host:
type: string
{% endconfiguration %}
-
+
When the hub is loaded, your lights will appear as devices with their Zigbee IDs as part of the entity name.
-
+
-
+
The Yeelight Sunflower hub supports SSDP discovery, but that has not been built into the platform. Let the developer know if that would be helpful to you.
-
+
diff --git a/source/_components/yessssms.markdown b/source/_components/yessssms.markdown
index 43870f11f5b..03b85e6cfd2 100644
--- a/source/_components/yessssms.markdown
+++ b/source/_components/yessssms.markdown
@@ -11,13 +11,13 @@ redirect_from:
The `yessssms` platform is using the Austrian mobile operator [Yesss.at](https://yesss.at) to send SMS via its web-site.
-
+
Regular charges apply and a contract or prepaid plan is needed.
-
+
-
+
Do not use this for high frequency notifications. The web-SMS page is rate limited and sending more than 45 SMS/h might get you blocked.
-
+
You can send to any number, but your phone number will appear as sender.
@@ -48,8 +48,10 @@ recipient:
type: string
{% endconfiguration %}
-
+
+
Verify that your credentials work on [Yesss.at's website](https://yesss.at). Using the wrong credentials three times in a row will get you suspended for one hour.
Home Assistant will not try to login after the account has been suspended.
Re-check the credentials and restart Home Assistant.
-
+
+
diff --git a/source/_components/yi.markdown b/source/_components/yi.markdown
index 8c1bf8fb7a0..5b8199ec54d 100644
--- a/source/_components/yi.markdown
+++ b/source/_components/yi.markdown
@@ -27,17 +27,21 @@ In order to integrate the camera with Home Assistant, it is necessary to install
Once installed, please ensure that you have enabled FTP and Telnet on your device.
-
+
+
Currently, version 0.1.4-beta2 of the custom firmware is the highest supported without having to make additional modifications. Firmwares higher than this version use [Pure-FTPd](https://www.pureftpd.org/project/pure-ftpd), which has a bug that prevents FFmpeg from correctly rendering video files. To use higher firmware versions you must also follow [this workaround](https://github.com/shadow-1/yi-hack-v3/issues/129#issuecomment-361723075) to revert back to ftpd.
-
-
+
+
+
Hassbian users: don't forget to install ffmpeg support on your platform, otherwise, you'll not see video.
-
+
+
+
-
Some alternative Yi firmwares enable an experimental RTSP server, which will allow you to connect to your camera via other Home Assistant camera platforms. However, this RTSP server disables the ability to use the supremely-useful Yi Home app. In order to maintain both Home Assistant compatibility _and_ the native app, this platform retrieves videos via FTP.
-
+
+
### Changing the FTP Password
diff --git a/source/_components/yweather.markdown b/source/_components/yweather.markdown
index a78862e2507..728223c415f 100644
--- a/source/_components/yweather.markdown
+++ b/source/_components/yweather.markdown
@@ -12,15 +12,17 @@ redirect_from:
- /components/weather.yweather/
---
-
+
+
The Yahoo Weather API is being [retired](https://developer.yahoo.com/weather/?guccounter=1). A replacement is the [`darksky` sensor](/components/sensor.darksky/).
-
+
+
The `yweather` platform uses [Yahoo Weather](https://www.yahoo.com/news/weather/) as a source for current meteorological data. The `forecast` will show you the condition for 5 days, 0 is the current day. You can use only `weather`, `temp_min`, and `temp_max` with forecast. It's important to note that a yweather sensor will only show ONE days forecast at a time so to show multiple days forecasts, you will need to use the 'name:' option and give each sensor a unique name.
-
+
Use of the Yahoo Weather API should not exceed reasonable request volume. Access is limited to 2000 signed calls per day.
-
+
The `woeid` (Where On Earth ID) for your location, as shown in the example below. You can find your WOEID by copying the numeric digits at the end of the URL for your location at [Yahoo Weather](https://www.yahoo.com/news/weather/). If you don't add a WOEID it is generated from Home Assistant's latitude and longitude.
diff --git a/source/_components/zabbix.markdown b/source/_components/zabbix.markdown
index b3e0d269fe9..0233eeb5b67 100644
--- a/source/_components/zabbix.markdown
+++ b/source/_components/zabbix.markdown
@@ -68,9 +68,9 @@ zabbix:
The `zabbix` sensor platform let you monitor the current count of active triggers for your [Zabbix](http://www.zabbix.com/) monitoring instance.
-
+
To set it up, add the following information to your `configuration.yaml` file:
diff --git a/source/_components/zigbee.markdown b/source/_components/zigbee.markdown
index 52519c50ca0..85ce409f890 100644
--- a/source/_components/zigbee.markdown
+++ b/source/_components/zigbee.markdown
@@ -55,9 +55,9 @@ To find the possible serial port names of your device, run:
ls /dev/ttyUSB*
```
-
+
The port may also appear as /dev/ttyACM* if you're communicating with the Zigbee device through an Arduino.
-
+
### Example
diff --git a/source/_components/zone.markdown b/source/_components/zone.markdown
index 629bb10a3e3..4eccefd4d13 100644
--- a/source/_components/zone.markdown
+++ b/source/_components/zone.markdown
@@ -68,9 +68,11 @@ To find the latitude/longitude of a certain place you can use [Google Maps](http
If no configuration is given, the `zone` integration will create a zone for home. This zone will use location provided in the `configuration.yaml` file and have a radius of 100 meters. To override this, create a zone configuration and name it **'Home'**.
-
+
+
Devices that are in the zone **'Home'** will not appear on the map in the Home Assistant UI.
-
+
+
## Icons
diff --git a/source/_components/zoneminder.markdown b/source/_components/zoneminder.markdown
index b8c124f0c35..f6de79bbb49 100644
--- a/source/_components/zoneminder.markdown
+++ b/source/_components/zoneminder.markdown
@@ -162,9 +162,11 @@ monitored_conditions:
The `zoneminder` switch platform allows you to toggle the current function of all cameras attached to your [ZoneMinder](https://www.zoneminder.com) instance.
-
+
+
You must have the [ZoneMinder component](/components/zoneminder/) configured to use this and if ZoneMinder authentication is enabled the account specified in the integration configuration must have "Edit" permission for "System".
-
+
+
To enable this switch, add the following lines to your `configuration.yaml` file:
@@ -187,6 +189,6 @@ command_off:
type: string
{% endconfiguration %}
-
+
The default functions installed by ZoneMinder are: None, Monitor, Modect, Record, Mocord, Nodect.
-
+
diff --git a/source/_components/zwave.markdown b/source/_components/zwave.markdown
index 81ec65ebe8f..106a95d6c20 100644
--- a/source/_components/zwave.markdown
+++ b/source/_components/zwave.markdown
@@ -52,11 +52,13 @@ zwave:
To get your Z-Wave thermostat or HVAC unit working with Home Assistant, follow the instructions for the general [Z-Wave component](/getting-started/z-wave/).
-
+
+
Thermostats with support for fan modes or different operating modes, will be handled like a HVAC device and will also be detected as one.
If the thermostat supports different operating modes, you will get one thermostat entity for each mode. These can be hidden with settings using the customize setting in the `configuration.yaml` file.
-
+
+
To enable the climate integration for your Z-Wave network, add the following to your `configuration.yaml` file.
diff --git a/source/_cookbook/python_component_mqtt_basic.markdown b/source/_cookbook/python_component_mqtt_basic.markdown
index 02d157b7990..9f31936e9cd 100644
--- a/source/_cookbook/python_component_mqtt_basic.markdown
+++ b/source/_cookbook/python_component_mqtt_basic.markdown
@@ -4,9 +4,11 @@ description: ""
ha_category: Custom Python Component Examples
---
-
+
+
This example requires you to have the [MQTT integration](/components/mqtt/) up and running.
-
+
+
This is a simple hello world example to show the basics of using MQTT in a custom integration. To use this example, create the file `/custom_components/hello_mqtt.py` and copy the below example code.
diff --git a/source/_docs/asterisk_mbox.markdown b/source/_docs/asterisk_mbox.markdown
index 3d964f1ff21..44a6269e5e0 100644
--- a/source/_docs/asterisk_mbox.markdown
+++ b/source/_docs/asterisk_mbox.markdown
@@ -14,9 +14,9 @@ Both parts are necessary for Asterisk voicemail integration.
The server installation is documented below. The client is [integrated inside Home Assistant](/components/asterisk_mbox)
-
+
Currently this module can only monitor a single Asterisk PBX mailbox.
-
+
### Prerequisites
@@ -98,6 +98,8 @@ Before beginning make sure that you have the following:
WantedBy=multi-user.target
```
-
+
+
This assumes that your Asterisk PBX server is using `systemd` for init handling. If not, you will need to create the appropriate configuration files yourself.
-
+
+
diff --git a/source/_docs/authentication.markdown b/source/_docs/authentication.markdown
index aa0519578d8..0d460b71ec4 100644
--- a/source/_docs/authentication.markdown
+++ b/source/_docs/authentication.markdown
@@ -19,9 +19,9 @@ When you start Home Assistant for the first time the _owner_ user account is cre
- Configure integrations and other settings (coming soon).
- Configure Hass.io (coming soon).
-
+
For the moment, other user accounts will have the same access as the owner account. In the future, non-owner accounts will be able to have restrictions applied.
-
+
### Your Account Profile
diff --git a/source/_docs/authentication/multi-factor-auth.markdown b/source/_docs/authentication/multi-factor-auth.markdown
index 46a01bf0298..150f6346918 100644
--- a/source/_docs/authentication/multi-factor-auth.markdown
+++ b/source/_docs/authentication/multi-factor-auth.markdown
@@ -43,9 +43,9 @@ Click _Enable_ and a new secret key will be generated. Go to your phone app and
-
+
Please treat the secret key like a password - never expose it to others.
-
+
Your phone app will now start generating a different six-digit code every thirty seconds or so. Enter one of these into Home Assistant under the QR code where it asks for a _Code_. Home Assistant and your phone app are now in sync and you can now use the code displayed in the app to log in.
@@ -53,9 +53,11 @@ Your phone app will now start generating a different six-digit code every thirty
Once TOTP is enabled, Home Assistant requires the latest code from your phone app before you can log in.
-
+
+
TOTP is _time based_ so it relies on your Home Assistant clock being accurate. If the verification keeps failing, make sure the clock on Home Assistant is correct.
-
+
+
### Notify multi-factor authentication module
@@ -104,8 +106,10 @@ Try logging out, then logging in again. You will be asked for the six-digit one-
If the validation failed, a new one-time password will be sent again.
-
+
+
The Notify MFA module can't tell if the one-time password was delivered successfully. If you don't get the notification, you won't be able to log in.
You can disable the Notify MFA module by editing or removing the file `[your_config_dir]/.storage/auth_module.notify`.
-
+
+
diff --git a/source/_docs/authentication/providers.markdown b/source/_docs/authentication/providers.markdown
index 2a3fc2db6a5..05ab67b87a1 100644
--- a/source/_docs/authentication/providers.markdown
+++ b/source/_docs/authentication/providers.markdown
@@ -6,20 +6,23 @@ redirect_from: /components/auth/
When you log in, an _auth provider_ checks your credentials to make sure you are an authorized user.
-
+
+
The authentication system has been changed recently. Previously there was a single "_API password_" to log in, but you can now choose from several auth providers.
To make the transition from API passwords easier, we've added a _Legacy API Password_ auth provider. This is enabled by default if you have an API password configured so you will still be able to log in.
However, this feature is deprecated and will be removed in a future release so you should set up one of the newer authentication techniques.
-
+
+
## Configuring auth providers
-
-Home Assistant automatically configures the standard auth providers so you don't need to specify `auth_providers` in your `configuration.yaml` file unless you are configuring more than one. Specifying `auth_providers` will disable all auth providers that are not listed, so you could reduce your security or create difficulties logging in if it is not configured correctly.
-
+
+Home Assistant automatically configures the standard auth providers so you don't need to specify `auth_providers` in your `configuration.yaml` file unless you are configuring more than one. Specifying `auth_providers` will disable all auth providers that are not listed, so you could reduce your security or create difficulties logging in if it is not configured correctly.
+
+
Authentication providers are configured in your `configuration.yaml` under the `homeassistant:` block. You can supply more than one, for example:
@@ -56,9 +59,11 @@ The Trusted Networks auth provider defines a range of IP addresses for which no
When you log in from one of these networks, you will be asked which user account to use and won't need to enter a password.
-
+
+
The [multi-factor authentication module](/docs/authentication/multi-factor-auth/) will not participate in the login process if you are using this auth provider.
-
+
+
Here is an example in `configuration.yaml` to set up Trusted Networks:
@@ -165,19 +170,19 @@ Leading and trailing whitespace, as well as lines starting with `#` are ignored.
Stderr is not read at all and just passed through to that of the Home Assistant process, hence you can use it for status messages or suchlike.
-
+
Any leading and trailing whitespace is stripped from usernames before they're passed to the configured command. For instance, " hello " will be rewritten to just "hello".
-
+
-
+
For now, meta variables are only respected the first time a particular user is authenticated. Upon subsequent authentications of the same user, the previously created user object with the old values is reused.
-
+
### Legacy API password
-
+
This is a legacy feature for backwards compatibility and will be dropped in a future release. You should move to one of the other auth providers.
-
+
Activating this auth provider will allow you to authenticate with the API password set in the HTTP component.
@@ -194,6 +199,8 @@ Activating this auth provider will also allow you to provide the API password us
If you don't specify any `auth_providers` section in the `configuration.yaml` file then this provider will be set up automatically if `api_password` was configured under `http` section.
-
+
+
[Issue 16441](https://github.com/home-assistant/home-assistant/issues/16441): the legacy API password auth provider, won't be automatically configured if your API password is located in a package. This is because Home Assistant processes the `auth_provider` during the `core` section loading, which is earlier than the `packages` processing.
-
+
+
diff --git a/source/_docs/automation.markdown b/source/_docs/automation.markdown
index c360b70c7d8..e8a6a799465 100644
--- a/source/_docs/automation.markdown
+++ b/source/_docs/automation.markdown
@@ -23,9 +23,9 @@ The second line is the **condition**. Conditions are optional tests that can lim
The third part is the **action**, which will be performed when a rule is triggered and all conditions are met. For example, it can turn a light on, set the temperature on your thermostat or activate a scene.
-
+
The difference between a condition and a trigger can be confusing as they are very similar. Triggers look at the actions, while conditions look at the results: turning a light on versus a light being on.
-
+
### Exploring the internal state
diff --git a/source/_docs/automation/editor.markdown b/source/_docs/automation/editor.markdown
index 4f4b629ef95..f75b9eba187 100644
--- a/source/_docs/automation/editor.markdown
+++ b/source/_docs/automation/editor.markdown
@@ -96,7 +96,6 @@ For example, the below automation will be triggered when the sun goes from below
- service: light.turn_on
```
-
+
Any comments in the YAML file will be lost and templates will be reformatted when you update an automation via the editor.
-
-
+
diff --git a/source/_docs/automation/trigger.markdown b/source/_docs/automation/trigger.markdown
index 529d2abd4f1..851452f2c4c 100644
--- a/source/_docs/automation/trigger.markdown
+++ b/source/_docs/automation/trigger.markdown
@@ -22,9 +22,11 @@ automation:
mood: happy
```
-
+
+
Starting 0.42, it is no longer possible to listen for event `homeassistant_start`. Use the 'homeassistant' platform below instead.
-
+
+
### Home Assistant trigger
@@ -76,10 +78,10 @@ automation:
```
{% endraw %}
-
+
Listing above and below together means the numeric_state has to be between the two values.
In the example above, a numeric_state that goes to 17.1-24.9 (from 17 or below, or 25 or above) would fire this trigger.
-
+
The `for:` can also be specified as `HH:MM:SS` like this:
@@ -126,7 +128,7 @@ The `for` template(s) will be evaluated when an entity changes as specified.
### State trigger
-Triggers when the state of a given entity changes. If only `entity_id` is given trigger will activate for all state changes, even if only state attributes change.
+Triggers when the state of any of given entities changes. If only `entity_id` is given trigger will activate for all state changes, even if only state attributes change.
```yaml
automation:
@@ -163,9 +165,11 @@ automation:
The `for` template(s) will be evaluated when an entity changes as specified.
-
+
+
Use quotes around your values for `from` and `to` to avoid the YAML parser interpreting values as booleans.
-
+
+
### Sun trigger
@@ -175,9 +179,11 @@ Triggers when the sun is setting or rising, i.e. when the sun elevation reaches
An optional time offset can be given to have it trigger a set time before or after the sun event (e.g. 45 minutes before sunset).
-
+
+
Since the duration of twilight is different throughout the year, it is recommended to use [sun elevation triggers][sun_elevation_trigger] instead of `sunset` or `sunrise` with a time offset to trigger automations during dusk or dawn.
-
+
+
[sun_elevation_trigger]: /docs/automation/trigger/#sun-elevation-trigger
@@ -255,9 +261,11 @@ automation:
The `for` template(s) will be evaluated when the `value_template` becomes `true`.
-
+
+
Rendering templates with time (`now()`) is dangerous as trigger templates only update based on entity state changes.
-
+
+
### Time trigger
@@ -296,9 +304,11 @@ automation 3:
minutes: '/5'
```
-
+
+
Do not prefix numbers with a zero - using `'00'` instead of '0' for example will result in errors.
-
+
+
### Webhook trigger
diff --git a/source/_docs/configuration.markdown b/source/_docs/configuration.markdown
index dd73f1e283e..26a4268e55e 100644
--- a/source/_docs/configuration.markdown
+++ b/source/_docs/configuration.markdown
@@ -23,18 +23,22 @@ Inside your configuration folder is the file `configuration.yaml`. This is the m
If you run into trouble while configuring Home Assistant, have a look at the [configuration troubleshooting page](/getting-started/troubleshooting-configuration/) and at the [configuration.yaml examples](/cookbook/#example-configurationyaml).
-
+
+
Test any changes to your configuration files from the command line with `hass --script check_config`. This script allows you to test changes without the need to restart Home Assistant. Remember to run this as the user you run Home Assistant as.
-
+
+
## Reloading changes
You will have to restart Home Assistant for most changes to `configuration.yaml` to take effect.
You can load changes to [automations](/docs/automation/), [core (customize)](/docs/configuration/customizing-devices/), [groups](/components/group/), and [scripts](/components/script/) without restarting.
-
+
+
If you've made any changes, remember to [check your configuration](/docs/configuration/troubleshooting/#problems-with-the-configuration) before trying to reload or restart.
-
+
+
## Migrating to a new system
diff --git a/source/_docs/configuration/customizing-devices.markdown b/source/_docs/configuration/customizing-devices.markdown
index 9b2c19ae881..0a9ff25575e 100644
--- a/source/_docs/configuration/customizing-devices.markdown
+++ b/source/_docs/configuration/customizing-devices.markdown
@@ -86,9 +86,11 @@ Device class is currently supported by the following components:
### Manual customization
-
+
+
If you implement `customize`, `customize_domain`, or `customize_glob` you must make sure it is done inside of `homeassistant:` or it will fail.
-
+
+
```yaml
homeassistant:
@@ -131,6 +133,6 @@ homeassistant:
Home Assistant offers a service to reload the core configuration while Home Assistant is running called `homeassistant.reload_core_config`. This allows you to change your customize section and see it being applied without having to restart Home Assistant. To call this service, go to the
service developer tools, select the service `homeassistant.reload_core_config` and click "CALL SERVICE".
-
+
New customize information will be applied the next time the state of the entity gets updated.
-
+
diff --git a/source/_docs/configuration/events.markdown b/source/_docs/configuration/events.markdown
index 8a8e9e6a924..5a389cb0028 100644
--- a/source/_docs/configuration/events.markdown
+++ b/source/_docs/configuration/events.markdown
@@ -11,9 +11,11 @@ Home Assistant contains a few built-in events that are used to coordinate betwee
### Event `homeassistant_start`
Event `homeassistant_start` is fired when all integrations from the configuration have been initialized. This is the event that will start the timer firing off `time_changed` events.
-
+
+
Starting 0.42, it is no longer possible to listen for event `homeassistant_start`. Use the 'homeassistant' [platform](/docs/automation/trigger) instead.
-
+
+
### Event `homeassistant_stop`
Event `homeassistant_stop` is fired when Home Assistant is shutting down. It should be used to close any open connection or release any resources.
@@ -56,7 +58,6 @@ Field | Description
`service_data` | Dictionary with the service call parameters. Example: `{ 'brightness': 120 }`.
`service_call_id` | String with a unique call id. Example: `23123-4`.
-
### Event `service_executed`
Event `service_executed` is fired by the service handler to indicate the service is done.
@@ -64,11 +65,14 @@ Field | Description
----- | -----------
`service_call_id` | String with the unique call id of the service call that was executed. Example: `23123-4`.
-
+
+
Starting with 0.84, it is no longer possible to listen for event `service_executed`.
-
+
+
### Event `platform_discovered`
+
Event `platform_discovered` is fired when a new platform has been discovered by the [`discovery`](/components/discovery/) component.
Field | Description
diff --git a/source/_docs/configuration/group_visibility.markdown b/source/_docs/configuration/group_visibility.markdown
index 03055a0c260..df670c509ea 100644
--- a/source/_docs/configuration/group_visibility.markdown
+++ b/source/_docs/configuration/group_visibility.markdown
@@ -17,9 +17,9 @@ data:
visible: false
```
-
+
If a sensor belongs to only one group and that group is hidden, the sensor will "jump" to the top of the web interface. Add the sensor to an additional (visible) group if you do not want this to happen.
-
+
## Automations
@@ -97,9 +97,9 @@ sensor:
name: Occasion
command: "python3 occasion.py"
```
-
+
If you are using docker to run Home Assistant then the occasion.py script will be placed under /config. Your command should instead be: command: "python3 /config/occasion.py"
-
+
To simplify things, we create a Home Assistant script that changes the visibility of a group, but also verifies that an entity is in a specific state:
diff --git a/source/_docs/configuration/packages.markdown b/source/_docs/configuration/packages.markdown
index a966b811710..444c717a5e4 100644
--- a/source/_docs/configuration/packages.markdown
+++ b/source/_docs/configuration/packages.markdown
@@ -6,9 +6,9 @@ redirect_from: /topics/packages/
Packages in Home Assistant provide a way to bundle different component's configuration together. We already learned about the two configuration styles (specifying platforms entries together or individually) on the [adding devices](/docs/configuration/devices/) page. Both of these configuration methods require you to create the integration key in the main `configuration.yaml` file. With packages we have a way to include different components, or different configuration parts using any of the `!include` directives introduced in [splitting the configuration](/docs/configuration/splitting_configuration).
-
+
Note that if you use packages for your configuration, the configuration reloading buttons in the configuration panel will not reload your packages.
-
+
Packages are configured under the core `homeassistant/packages` in the configuration and take the format of a package name (no spaces, all lower case) followed by a dictionary with the package config. For example, package `pack_1` would be created as:
@@ -72,9 +72,9 @@ There are some rules for packages that will be merged:
```
3. Any integration that is not a platform [2], or dictionaries with Entity ID keys [3] can only be merged if its keys, except those for lists, are solely defined once.
-
+
Components inside packages can only specify platform entries using configuration style 1, where all the platforms are grouped under the integration name.
-
+
### Create a packages folder
diff --git a/source/_docs/configuration/platform_options.markdown b/source/_docs/configuration/platform_options.markdown
index fab2b31340d..376b14a3f67 100644
--- a/source/_docs/configuration/platform_options.markdown
+++ b/source/_docs/configuration/platform_options.markdown
@@ -4,7 +4,9 @@ description: "Shows how to customize polling interval for any integration via co
redirect_from: /topics/platform_options/
---
-These options are being phased out and are only available for single platform integrations.
+
+These options are being phased out and are only available for single platform integrations.
+
Some integrations or platforms (those that are based on the [entity](https://github.com/home-assistant/home-assistant/blob/dev/homeassistant/helpers/entity.py) class) allows various extra options to be set.
diff --git a/source/_docs/configuration/remote.markdown b/source/_docs/configuration/remote.markdown
index 0e872bfd7b4..ba4e567104d 100644
--- a/source/_docs/configuration/remote.markdown
+++ b/source/_docs/configuration/remote.markdown
@@ -3,17 +3,21 @@ title: "Remote access"
description: "Setting up remote access for Home Assistant."
---
-Users of Home Assistant Cloud can use the Remote UI without requiring any configuration.
+
If you're interested in logging in to Home Assistant while away, you'll have to make your instance remotely accessible.
-
-Remember to follow the [securing checklist](/docs/configuration/securing/) before doing this.
-
+
-
+Remember to follow the [securing checklist](/docs/configuration/securing/) before doing this.
+
+
+
+
Home Assistant no longer support remote access via IP address since release 0.77, you have to use a domain name.
-
+
The most common approach is to set up port forwarding (for any port) from your router to port 8123 on the computer that is hosting Home Assistant. General instructions on how to do this can be found by searching ` port forwarding instructions`. You can use any free port on your router and forward that to port 8123.
@@ -21,9 +25,11 @@ A problem with making a port accessible is that some Internet Service Providers
If you cannot access your Home Assistant installation remotely, remember to check if your ISP provides you with a dedicated IP, instead of one shared with other users via a [CG-NAT](https://en.wikipedia.org/wiki/Carrier-grade_NAT). This is becoming fairly common nowadays due to the shortage of IPv4 addresses. Some, if not most ISPs will require you to pay an extra fee to be assigned a dedicated IPv4 address.
-
+
+
Just putting a port up is not secure. You should definitely consider encrypting your traffic if you are accessing your Home Assistant installation remotely. For details please check the [set up encryption using Let's Encrypt](/blog/2017/09/27/effortless-encryption-with-lets-encrypt-and-duckdns/) blog post or this [detailed guide](/docs/ecosystem/certificates/lets_encrypt/) to using Let's Encrypt with Home Assistant.
-
+
+
Protect your communication with a [self-signed certificate](/docs/ecosystem/certificates/tls_self_signed_certificate/) between your client and the Home Assistant instance.
diff --git a/source/_docs/configuration/securing.markdown b/source/_docs/configuration/securing.markdown
index 764e3e06be7..267053a1c95 100644
--- a/source/_docs/configuration/securing.markdown
+++ b/source/_docs/configuration/securing.markdown
@@ -27,9 +27,11 @@ As well as the above we advise that you consider the following to improve securi
* [Securing Debian Manual](https://www.debian.org/doc/manuals/securing-debian-howto/index.en.html) (this also applies to Raspbian)
* [Red Hat Enterprise Linux 7 Security Guide](https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/7/pdf/Security_Guide/Red_Hat_Enterprise_Linux-7-Security_Guide-en-US.pdf), [CIS Red Hat Enterprise Linux 7 Benchmark](https://benchmarks.cisecurity.org/tools2/linux/CIS_Red_Hat_Enterprise_Linux_7_Benchmark_v1.0.0.pdf)
-
+
+
If you've forwarded *any* ports to your Home Assistant system from the Internet, then it *will* be found by others. Whether through services like Shodan, or direct port scanning, all systems on the Internet are routinely probed for accessible services. If you fail to set a password then it is simply a matter of time before somebody finds your system and starts abusing it - potentially as little as a few hours.
-
+
+
### Remote access for just the UI
diff --git a/source/_docs/configuration/templating.markdown b/source/_docs/configuration/templating.markdown
index abe1ef62432..471f93846dc 100644
--- a/source/_docs/configuration/templating.markdown
+++ b/source/_docs/configuration/templating.markdown
@@ -59,9 +59,11 @@ Extensions allow templates to access all of the Home Assistant specific states a
- `state_attr('device_tracker.paulus', 'battery')` will return the value of the attribute or None if it doesn't exist.
- `is_state_attr('device_tracker.paulus', 'battery', 40)` will test if the given entity attribute is the specified state (in this case, a numeric value).
-
+
+
Avoid using `states.sensor.temperature`, instead use `states('sensor.temperature')`. It is strongly advised to use the `states()`, `is_state()`, `state_attr()` and `is_state_attr()` as much as possible, to avoid errors and error message when the entity isn't ready yet (e.g., during Home Assistant startup).
-
+
+
Besides the normal [state object methods and properties](/topics/state_object/), `states.sensor.temperature.state_with_unit` will print the state of the entity and, if available, the unit.
diff --git a/source/_docs/configuration/troubleshooting.markdown b/source/_docs/configuration/troubleshooting.markdown
index 9d68ea228fd..d2faea397b6 100644
--- a/source/_docs/configuration/troubleshooting.markdown
+++ b/source/_docs/configuration/troubleshooting.markdown
@@ -78,9 +78,9 @@ Contents of `sensors.yaml`:
...
```
-
+
Whenever you report an issue, be aware that we are volunteers who do not have access to every single device in the world nor unlimited time to fix every problem out there.
-
+
### Entity names
diff --git a/source/_docs/configuration/yaml.markdown b/source/_docs/configuration/yaml.markdown
index 34a9f6b3690..f3d87199488 100644
--- a/source/_docs/configuration/yaml.markdown
+++ b/source/_docs/configuration/yaml.markdown
@@ -28,9 +28,11 @@ Getting the right indentation can be tricky if you're not using an editor with a
You can use the online service [YAMLLint](http://www.yamllint.com/) to check if your YAML syntax is correct before loading it into Home Assistant which will save you some time. If you do so, be aware that this is a third-party service and is not maintained by the Home Assistant community.
-
+
+
Please pay attention on not storing private data (passwords, API keys, etc.) directly in your `configuration.yaml` file. Private data can be stored in a [separate file](/docs/configuration/secrets/) or in [environmental variables](/docs/configuration/yaml/#using-environment-variables), which circumvents this problem of security.
-
+
+
Text following a `#` are comments and are ignored by the system.
diff --git a/source/_docs/ecosystem/apache.markdown b/source/_docs/ecosystem/apache.markdown
index 22021840546..295b64f588c 100644
--- a/source/_docs/ecosystem/apache.markdown
+++ b/source/_docs/ecosystem/apache.markdown
@@ -52,10 +52,10 @@ Include conf/extra/hass.conf
If you don't want HTTPS, you can change `` to `` or better consider redirecting all HTTP to HTTPS.
-
-
+
In case you are getting occasional HTTP 504 error messages ("Gateway Timeout") or HTTP 502 messages ("Bad Gateway") when accessing the Web UI through your proxy, try adding disablereuse=on to both ProxyPass directives:
-
+
+
```text
[...]
diff --git a/source/_docs/ecosystem/backup/backup_github.markdown b/source/_docs/ecosystem/backup/backup_github.markdown
index 6d673a86fc7..80757b1f666 100644
--- a/source/_docs/ecosystem/backup/backup_github.markdown
+++ b/source/_docs/ecosystem/backup/backup_github.markdown
@@ -10,13 +10,15 @@ Backing up and regularly syncing your Home Assistant configuration to [GitHub](h
- A documented history of your changes for troubleshooting purposes.
- It will help the Home Assistant community learn from your configuration examples.
-
-This is not a comprehensive tutorial on using GitHub, more information can be found in the [GitHub Help](https://help.github.com/) pages. This guide assumes the user has an intermediate experience level and is comfortable with such concepts as: navigating the Home Assistant directory structure, logging in as the Home Assistant user, and working with the command line.
-
+
-
+This is not a comprehensive tutorial on using GitHub, more information can be found in the [GitHub Help](https://help.github.com/) pages. This guide assumes the user has an intermediate experience level and is comfortable with such concepts as: navigating the Home Assistant directory structure, logging in as the Home Assistant user, and working with the command line.
+
+
+
+
This will not create a full backup of your Home Assistant files or your OS. In addition to backing up to Github, you should consider having regular backups of all your Home Assistant configuration files and images of your SD card if applicable.
-
+
### Important Best Practices
@@ -38,15 +40,19 @@ $ sudo apt-get install git
### Step 2: Creating `.gitignore`
-
+
+
Before creating and pushing your Home Assistant configuration to GitHub, please make sure to follow the [`secrets.yaml`](/docs/configuration/secrets/) best practice mentioned above and scrub your configuration for any passwords or sensitive information.
-
+
+
Creating a `.gitignore` file in your repository will tell Git which files NOT to push to the GitHub server. This should be used to prevent publishing sensitive files to the public. It should contain a list of filenames and pattern matches. This list should include at least your [`secrets.yaml`](/docs/configuration/secrets/) file, device configuration files, and the Home Assistant database/directory structure. The `.gitignore` file should be placed in the root of your Home Assistant configuration directory: `
+
+
If you are creating the `.gitignore` file on Windows, make sure that you save the file with Unix line endings (i.e. by using an editor like Notepad++).
-
+
+
Here is an example that will ignore everything but your YAML configuration.
@@ -71,9 +77,9 @@ secrets.yaml
known_devices.yaml
```
-
+
You might read this guide too late and accidentally already have your secrets published. It is not enough to just remove them with a new commit. Git is a version control system and keeps history. You need to delete your repository and start a new one. Also change all passwords and revoke the API keys that were public.
-
+
More information on the layout of the file can be found in the [.gitignore manual](https://git-scm.com/docs/gitignore).
@@ -116,9 +122,9 @@ Congratulations, you now have a copy of your current Home Assistant Configuratio
You should update your repository on a regular basis. Ideally after you make a major configuration change (new device, new component, etc.). The below script will update your repository with any changed configuration files and allow you to add a comment with the commit for tracking purposes:
-
+
You may need to adjust the paths in the script depending on your Home Assistant configuration.
-
+
`gitupdate.sh`
diff --git a/source/_docs/ecosystem/caddy.markdown b/source/_docs/ecosystem/caddy.markdown
index 569c5fefe45..dccb012f302 100644
--- a/source/_docs/ecosystem/caddy.markdown
+++ b/source/_docs/ecosystem/caddy.markdown
@@ -14,9 +14,9 @@ Chances are, you have a dynamic IP address (your ISP changes your address period
This will vary depending on your OS. Caddy has a [nice utillity](https://caddyserver.com/download) that generates an installer script.
-
+
Make sure you include the `hook.service` plugin if you want to run Caddy as a service
-
+
### 3. Port forwarding.
diff --git a/source/_docs/ecosystem/certificates/lets_encrypt.markdown b/source/_docs/ecosystem/certificates/lets_encrypt.markdown
index 1c6faa9c138..33acf420868 100644
--- a/source/_docs/ecosystem/certificates/lets_encrypt.markdown
+++ b/source/_docs/ecosystem/certificates/lets_encrypt.markdown
@@ -3,9 +3,11 @@ title: "Remote Access with TLS/SSL via Let's Encrypt"
description: "A guide to remotely accessing Home Assistant and securing the connection with an SSL certificate from Let's Encrypt"
---
-
+
+
If you are using Hass.io or Hassbian, do not use this guide. Instead, use the [DuckDNS add-on](/addons/duckdns/) for Hass.io or the [DuckDNS suite](https://github.com/home-assistant/hassbian-scripts/blob/master/docs/suites/duckdns.md) for Hassbian to automatically maintain a subdomain including HTTPS certificates via Let's Encrypt.
-
+
+
This guide was added by mf_social on 16/03/2017 and was valid at the time of writing. This guide makes the following assumptions:
@@ -227,19 +229,21 @@ Protocol - Both
Remember to save the new rule.
-
+
In cases where your ISP blocks port 80 you will need to change the port forward options to forward port 443 from outside to port 443 on your Home Assistant device. Please note that this will limit your options for automatically renewing the certificate, but this is a limitation because of your ISP setup and there is not a lot we can do about it!
-
+
Now SSH in to the device your Home Assistant is running on.
-
+
+
If you're running the 'standard' setup on a Raspberry Pi the chances are you just logged in as the 'pi' user. If not, you may have logged in as the Home Assistant user. There are commands below that require the Home Assistant user to be on the `sudoers` list. If you are not using the 'standard' Pi setup it is presumed you will know how to get your Home Assistant user on the `sudoers` list before continuing. If you are running the 'standard' Pi setup, from your 'pi' user issue the following command (where `homeassistant` is the Home Assistant user):
+```bash
+sudo adduser homeassistant sudo
```
-$ sudo adduser homeassistant sudo
-```
-
+
+
If you did not already log in as the user that currently runs Home Assistant, change to that user (usually `homeassistant` or `hass` - you may have used a command similar to this in the past):
@@ -296,15 +300,17 @@ Did all of that go without a hitch? Wahoo! Your Let's Encrypt certificate is now
### 5 - Check the incoming connection
-
+
+
Following on from Step 4 your SSH will still be in the certbot folder. If you edit your configuration files over SSH you will need to change to our `homeassistant` folder:
```
-$ cd ~/.homeassistant
+cd ~/.homeassistant
```
If you use Samba shares to edit your files you can exit your SSH now.
-
+
+
If during step 4 you had to use port 443 instead of port 80 to generate your certificate, you should delete that rule now.
@@ -401,9 +407,11 @@ $ sudo apt-get update
$ sudo apt-get install ssl-cert-check
```
-
+
+
In cases where, for whatever reason, apt-get installing is not appropriate for your installation you can fetch the ssl-cert-check script from `http://prefetch.net/code/ssl-cert-check` bearing in mind that you will have to modify the command in the sensor code below to run the script from wherever you put it, modify permission if necessary and so on.
-
+
+
To set up a senor add the following to your `configuration.yaml` (remembering to correct the URL for your DuckDNS):
diff --git a/source/_docs/ecosystem/hass-configurator.markdown b/source/_docs/ecosystem/hass-configurator.markdown
index 19b13639774..9e2ac3f93c1 100644
--- a/source/_docs/ecosystem/hass-configurator.markdown
+++ b/source/_docs/ecosystem/hass-configurator.markdown
@@ -27,9 +27,10 @@ Screenshot of the HASS Configurator.
- Execute shell commands
- Runs on pretty much any machine Home Assistant can run on
-
+
This tool allows you to browse your filesystem and modify files. So be careful which files you edit, or you might break critical parts of your system.
-Consider running the configurator as a user with limited privileges to limit possible damage.
+Consider running the configurator as a user with limited privileges to limit possible damage.
+
### Installation (Linux, macOS)
There are no dependencies on Python modules that are not part of the standard library. And all the fancy JavaScript libraries are loaded from CDN (which means this doesn't work when you're offline).
@@ -95,8 +96,10 @@ panel_iframe:
icon: mdi:wrench
url: http://123.123.132.132:3218
```
-
-Be careful when setting up port forwarding to the configurator while embedding it into Home Assistant. If you don't restrict access by requiring authentication and / or blocking based on client IP addresses, your configuration will be exposed to the internet!
+
+
+Be careful when setting up port forwarding to the configurator while embedding it into Home Assistant. If you don't restrict access by requiring authentication and / or blocking based on client IP addresses, your configuration will be exposed to the internet!
+
### Daemonizing / Keeping the configurator running
Since the configurator script on its own is no service, you will have to take some extra steps to keep it running. Here are five options (for Linux), but there are more, depending on your usecase.
diff --git a/source/_docs/ecosystem/ios/notifications/attachments.markdown b/source/_docs/ecosystem/ios/notifications/attachments.markdown
index 52c45ae5260..25f55d40199 100644
--- a/source/_docs/ecosystem/ios/notifications/attachments.markdown
+++ b/source/_docs/ecosystem/ios/notifications/attachments.markdown
@@ -6,9 +6,9 @@ redirect_from: /ecosystem/ios/notifications/attachments/
iOS 10 adds _attachments_ to notifications. An attachment is an image, video, or audio file which is downloaded to the device when a notification is received and shown alongside the notification. A thumbnail is shown when the notification is not expanded. The full size attachment is shown when the notification is expanded.
-
+
To expand a notification on 3D Touch devices simply force touch any notification. On non-3D Touch devices swipe and tap the "View" button.
-
+
```yaml
- alias: Notify iOS app
diff --git a/source/_docs/ecosystem/ios/notifications/requesting_location_updates.markdown b/source/_docs/ecosystem/ios/notifications/requesting_location_updates.markdown
index acb937c2211..7573adabddc 100644
--- a/source/_docs/ecosystem/ios/notifications/requesting_location_updates.markdown
+++ b/source/_docs/ecosystem/ios/notifications/requesting_location_updates.markdown
@@ -4,9 +4,9 @@ description: "Ask the device to send a location update remotely"
redirect_from: /ecosystem/ios/notifications/requesting_location_updates/
---
-
-**Do not rely on this functionality due to the time limits mentioned below.**
-
+
+Do not rely on this functionality due to the time limits mentioned below.
+
You can force a device to attempt to report its location by sending a special notification.
diff --git a/source/_docs/ecosystem/nginx.markdown b/source/_docs/ecosystem/nginx.markdown
index 8fb4f6e56c6..4acff2a4012 100644
--- a/source/_docs/ecosystem/nginx.markdown
+++ b/source/_docs/ecosystem/nginx.markdown
@@ -15,9 +15,9 @@ Chances are, you have a dynamic IP address (your ISP changes your address period
This will vary depending on your OS. Check out Google for this. After installing, ensure that NGINX is not running.
-
+
You will at least need nginx >= 1.3.13, as WebSocket support is required for the reverse proxy.
-
+
### 3. Obtain an SSL certificate
@@ -57,9 +57,11 @@ $ sudo openssl dhparam -out dhparams.pem 2048
Create a new file `/etc/nginx/sites-available/hass` and copy the configuration file at the bottom of the page into it.
-
+
+
Some Linux distributions (including CentOS and Fedora) will not have the `/etc/nginx/sites-available/` directory. In this case, remove the default server {} block from the `/etc/nginx/nginx.conf` file and paste the contents from the bottom of the page in its place. If doing this, proceed to step 7.
-
+
+
### 6. Enable the Home Assistant configuration.
diff --git a/source/_docs/ecosystem/notebooks/installation.markdown b/source/_docs/ecosystem/notebooks/installation.markdown
index 8cd502a497f..4bce5e70632 100644
--- a/source/_docs/ecosystem/notebooks/installation.markdown
+++ b/source/_docs/ecosystem/notebooks/installation.markdown
@@ -10,9 +10,11 @@ To run Jupyter Notebooks locally, an installation of [Jupyter](http://jupyter.or
$ pip3 install jupyter matplotlib
```
-
+
+
Certain notebooks hosted in the [Home Assistant notebooks repository](https://github.com/home-assistant/home-assistant-notebooks) require access to a running Home Assistant instance or parts of a Home Assistant installation. If you want to run those notebooks, install Home Assistant with `$ pip3 install homeassistant` as well.
-
+
+
Run Jupyter from the command line.
diff --git a/source/_docs/installation.markdown b/source/_docs/installation.markdown
index bd1f67cf179..1b66be349eb 100644
--- a/source/_docs/installation.markdown
+++ b/source/_docs/installation.markdown
@@ -4,15 +4,19 @@ description: "Instructions on how to install Home Assistant to launch on start."
redirect_from: /getting-started/installation/
---
-
+
+
Beginners should check our [Getting started guide](/getting-started/) first.
-
+
+
Home Assistant provides multiple ways to be installed. The first start may take up to 20 minutes because the required packages will be downloaded and installed. The web interface will be served on `http://ip.add.re.ss:8123/`. Replace `ip.add.re.ss` with the IP of the computer you installed it on.
-
+
+
Please remember to [secure your installation](/docs/configuration/securing/) once you've finished with the installation process.
-
+
+
## Hardware
diff --git a/source/_docs/installation/docker.markdown b/source/_docs/installation/docker.markdown
index c1ed1029eab..932e68cd097 100644
--- a/source/_docs/installation/docker.markdown
+++ b/source/_docs/installation/docker.markdown
@@ -108,9 +108,9 @@ Remark: to restart your Home Assistant within Synology NAS, you just have to do
* Go to the Docker-app and move to "Container"-section
* Right-click on it and select "Action"->"Restart".
-
-If you want to use a USB Bluetooth adapter or Z-Wave USB Stick with Home Assistant on Synology Docker these instructions do not correctly configure the container to access the USB devices. To configure these devices on your Synology Docker Home Assistant you can follow the instructions provided here by Phil Hawthorne.
-
+
+If you want to use a USB Bluetooth adapter or Z-Wave USB Stick with Home Assistant on Synology Docker these instructions do not correctly configure the container to access the USB devices. To configure these devices on your Synology Docker Home Assistant you can follow the instructions provided
here by Phil Hawthorne.
+
### QNAP NAS
diff --git a/source/_docs/installation/freenas.markdown b/source/_docs/installation/freenas.markdown
index f1ab1a38461..47fc0dcf4a7 100644
--- a/source/_docs/installation/freenas.markdown
+++ b/source/_docs/installation/freenas.markdown
@@ -139,6 +139,8 @@ Configure the service to start on boot and start the Home Assistant service:
You can also restart the jail to ensure that Home Assistant starts on boot.
-
+
+
USB Z-wave sticks may give `dmesg` warnings similar to "data interface 1, has no CM over data, has no break". This doesn't impact the function of the Z-Wave stick in Home Assistant. Just make sure the proper `/dev/cu*` is used in the Home Assistant `configuration.yaml` file.
-
+
+
diff --git a/source/_docs/installation/hassbian/common-tasks.markdown b/source/_docs/installation/hassbian/common-tasks.markdown
index 660ddedc379..59ad41cf261 100644
--- a/source/_docs/installation/hassbian/common-tasks.markdown
+++ b/source/_docs/installation/hassbian/common-tasks.markdown
@@ -32,9 +32,11 @@ To get the current state of the `homeassistant.service` replace `stop` with `sta
### Update Home Assistant
-
+
+
You can use `hassbian-config` to automate the process by running `sudo hassbian-config upgrade homeassistant`
-
+
+
Log in as the `pi` account and execute the following commands:
diff --git a/source/_docs/installation/hassbian/installation.markdown b/source/_docs/installation/hassbian/installation.markdown
index e11187956fb..b10fe4f6afa 100644
--- a/source/_docs/installation/hassbian/installation.markdown
+++ b/source/_docs/installation/hassbian/installation.markdown
@@ -11,9 +11,11 @@ One of the easiest ways to install Home Assistant on your Raspberry Pi Zero, 2,
3. Ensure your Raspberry Pi has wired access to the internet for the entire process or configure your [wireless network settings](#wireless-network) **before proceeding to step 4**.
4. Insert SD card to Raspberry Pi and turn it on. Initial installation of Home Assistant will take about 10 minutes.
-
+
+
Please remember to ensure you're using an [appropriate power supply](https://www.raspberrypi.org/help/faqs/#powerReqs) with your Pi. Mobile chargers may not be suitable since some were only designed to provide just enough power to the device it was designed for by the manufacturer. **Do not** try to power the Pi from the USB port on a TV, computer, or similar.
-
+
+
These instructions are also available as a [video](https://www.youtube.com/watch?v=iIz6XqDwHEk).
Additional information is available in this [video](https://www.youtube.com/watch?v=tCGlQSsQ-Mc).
@@ -113,9 +115,9 @@ $ sudo hassbian-config upgrade homeassistant --beta
If you want to stay on the bleeding-edge Home Assistant development branch, you can upgrade to `dev`.
-
+
The "dev" branch is likely to be unstable. Potential consequences include loss of data and instance corruption.
-
+
For example:
diff --git a/source/_docs/installation/hassbian/upgrading.markdown b/source/_docs/installation/hassbian/upgrading.markdown
index 88d98bba1e1..33cafa35593 100644
--- a/source/_docs/installation/hassbian/upgrading.markdown
+++ b/source/_docs/installation/hassbian/upgrading.markdown
@@ -14,9 +14,11 @@ $ sudo apt-get -y upgrade
#### Updating Home Assistant
-
+
+
You can use `hassbian-config` to automate the process by running `sudo hassbian-config upgrade homeassistant`
-
+
+
To update the Home Assistant installation execute the following command as the `pi` user.
diff --git a/source/_docs/installation/python.markdown b/source/_docs/installation/python.markdown
index 42e50c4be88..b837680b10d 100644
--- a/source/_docs/installation/python.markdown
+++ b/source/_docs/installation/python.markdown
@@ -4,9 +4,11 @@ description: "Installation of Home Assistant on your computer."
redirect_from: /getting-started/installation-python/
---
-
+
+
If you're running a Linux-based platform, we strongly recommend you follow the instructions for a [virtual environment](/docs/installation/virtualenv/) instead. If you're running on Windows then [see here](/docs/installation/windows/#installing-in-a-python-virtual-environment) instead.
-
+
+
Once Python is installed, execute the following code in a console:
diff --git a/source/_docs/installation/raspberry-pi-all-in-one.markdown b/source/_docs/installation/raspberry-pi-all-in-one.markdown
index 84b4fe4a93c..17229d72080 100644
--- a/source/_docs/installation/raspberry-pi-all-in-one.markdown
+++ b/source/_docs/installation/raspberry-pi-all-in-one.markdown
@@ -3,6 +3,8 @@ title: "Raspberry Pi All-In-One Installer"
redirect_from: /getting-started/installation-raspberry-pi-all-in-one/
---
-
+
+
The All-In-One Installer is deprecated, you will have problems updating Home Assistant in 2018. Please move to another [installation method](/getting-started/).
-
+
+
diff --git a/source/_docs/installation/raspberry-pi.markdown b/source/_docs/installation/raspberry-pi.markdown
index 3cd62230e84..4421886ce5c 100644
--- a/source/_docs/installation/raspberry-pi.markdown
+++ b/source/_docs/installation/raspberry-pi.markdown
@@ -8,13 +8,15 @@ This installation of Home Assistant requires the Raspberry Pi to run [Raspbian L
You must have Python 3.6 or later installed (including the package `python3-dev`) which is *not* the case for Raspbian Stretch.
-
-Although these installation steps specifically mention a Raspberry Pi, you can go ahead and proceed on any Linux install as well. This guide is also referred to as the "Advanced Guide" for a virtual environment install.
-
+
+Although these installation steps specifically mention a Raspberry Pi, you can go ahead and proceed on any Linux install as well. This guide is also referred to as the "Advanced Guide" for a virtual environment install.
+
+
+
-
Please remember to ensure you're using an [appropriate power supply](https://www.raspberrypi.org/help/faqs/#powerReqs) with your Pi. Mobile chargers may not be suitable, since some are designed to only provide the full power with that manufacturer's handsets. USB ports on your computer also will not supply enough power and must not be used.
-
+
+
Connect to the Raspberry Pi over SSH. Default password is `raspberry`.
You will need to enable SSH access. The Raspberry Pi website has instructions [here](https://www.raspberrypi.org/documentation/remote-access/ssh/).
@@ -84,9 +86,11 @@ Start Home Assistant for the first time. This will complete the installation for
```
You can now reach your installation on your Raspberry Pi over the web interface on [http://ipaddress:8123](http://ipaddress:8123).
-
+
+
When you run the `hass` command for the first time, it will download, install and cache the necessary libraries/dependencies. This procedure may take anywhere between 5 to 10 minutes. During that time, you may get "site cannot be reached" error when accessing the web interface. This will only happen for the first time, and subsequent restarts will be much faster.
-
+
+
If you want to setup `hass` as a daemon and autostart it on boot please refer to [Autostart Home Assistant](/docs/autostart/).
@@ -126,9 +130,9 @@ $ pip3 install --pre --upgrade homeassistant
If you want to stay on the bleeding-edge Home Assistant development branch, you can upgrade to `dev`.
-
+
The "dev" branch is likely to be unstable. Potential consequences include loss of data and instance corruption.
-
+
For example:
diff --git a/source/_docs/installation/synology.markdown b/source/_docs/installation/synology.markdown
index 34221433849..e2e640fffff 100644
--- a/source/_docs/installation/synology.markdown
+++ b/source/_docs/installation/synology.markdown
@@ -4,9 +4,11 @@ description: "Instructions to install Home Assistant on a Synology NAS."
redirect_from: /getting-started/installation-synology/
---
-
+
+
Synology only provide Python 3.5.1, which is not compatible with Home Assistant 0.65.0 or later. Until Synology offer an updated version of Python, Home Assistant 0.64 is the most recent version that will be able to be installed. You can manually specify the version of Home Assistant to install, for example to install version 0.64.3 you would do `./python3 -m pip install homeassistant==0.64.3`
-
+
+
There are 2 alternatives, when using Home Assistant on Synology NAS:
1. using Docker
diff --git a/source/_docs/installation/updating.markdown b/source/_docs/installation/updating.markdown
index 4b06dda4503..737bc171273 100644
--- a/source/_docs/installation/updating.markdown
+++ b/source/_docs/installation/updating.markdown
@@ -4,15 +4,19 @@ description: "Step to update Home Assistant."
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).
-
+
+
Check what's new in the latest version and potentially impacts your system in [Home Assistant release notes](https://github.com/home-assistant/home-assistant/releases). It is good practice to review these release notes and pay close attention to the **Breaking Changes** that are listed there. If you haven't done an update for a while, you should also check previous release notes as they can also contain relevant **Breaking Changes**. **Breaking Changes** may require configuration updates for your components. If you missed this and Home Assistant refuses to start, check the log file in the [configuration](/docs/configuration/) directory, e.g., `.homeassistant/home-assistant.log`, for details about broken components.
-
+
+
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).
-
+
+
The default way to update Home Assistant to the latest release, when available, is:
@@ -57,9 +61,9 @@ $ pip3 install --pre --upgrade homeassistant
If you want to stay on the bleeding-edge Home Assistant development branch, you can upgrade to `dev`.
-
+
The "dev" branch is likely to be unstable. Potential consequences include loss of data and instance corruption.
-
+
```bash
$ pip3 install --upgrade git+git://github.com/home-assistant/home-assistant.git@dev
diff --git a/source/_docs/installation/vagrant.markdown b/source/_docs/installation/vagrant.markdown
index 409712c4090..3731173cd40 100644
--- a/source/_docs/installation/vagrant.markdown
+++ b/source/_docs/installation/vagrant.markdown
@@ -6,9 +6,9 @@ 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
@@ -25,13 +25,17 @@ $ 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
-
+
+
+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
@@ -69,9 +73,9 @@ Any changes made to the local directory on your workstation will be available fr
$ ./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)
diff --git a/source/_docs/installation/virtualenv.markdown b/source/_docs/installation/virtualenv.markdown
index 2540a8dfe58..5b7c6e917e2 100644
--- a/source/_docs/installation/virtualenv.markdown
+++ b/source/_docs/installation/virtualenv.markdown
@@ -8,9 +8,11 @@ If you already have Python 3.6 or later installed (we suggest 3.7 or later), you
It's recommended when installing Python packages that you use a [virtual environment](https://docs.python.org/3.6/library/venv.html#module-venv). This will make sure that your Python installation and Home Assistant installation won't impact one another. The following steps will work on most UNIX like systems.
-
+
+
This is a generic guide for running Home Assistant under Python. We recommend to use [our recommended installation guides](/docs/installation/#recommended). The steps below may be shorter but some users find difficulty when applying updates and may run into issues.
-
+
+
{% comment %}
This page describes installation instructions for a pure Python installation.
@@ -78,9 +80,9 @@ $ pip3 install --pre --upgrade homeassistant
If you want to stay on the bleeding-edge Home Assistant development branch, you can upgrade to `dev`.
-
+
The "dev" branch is likely to be unstable. Potential consequences include loss of data and instance corruption.
-
+
For example:
diff --git a/source/_docs/installation/windows.markdown b/source/_docs/installation/windows.markdown
index 33b24845f76..0d0095d63b7 100644
--- a/source/_docs/installation/windows.markdown
+++ b/source/_docs/installation/windows.markdown
@@ -5,9 +5,9 @@ description: "Instructions to install Home Assistant on a Microsoft Windows syst
To run Home Assistant on Microsoft Windows installation you need to install Python first. Download Python (the latest version of Python 3.6 is recommended) for [https://www.python.org/downloads/windows/](https://www.python.org/downloads/windows/) and follow the instructions of the installer.
-
+
There may be alpha or beta releases of Python listed on that download page (marked by the letters `a` or `b` in the version number. Do not use these versions.
-
+
If you use your machine for something other than Home Assistant, you should install it in a [Python virtual environment](#installing-in-a-python-virtual-environment).
@@ -22,9 +22,9 @@ For autostarting Home Assistant please refer to this [guide](https://community.h
Check this [video](https://www.youtube.com/watch?v=X27eVvuqwnY) for the installation on Windows 10.
-
+
The Microsoft Windows platform is not a primary target to install Home Assistant. Also, not all tools and third-party modules will work.
-
+
## Updating
diff --git a/source/_docs/mqtt/broker.markdown b/source/_docs/mqtt/broker.markdown
index 6061e975dcb..9dad09aefeb 100644
--- a/source/_docs/mqtt/broker.markdown
+++ b/source/_docs/mqtt/broker.markdown
@@ -60,24 +60,31 @@ tls_version:
type: string
{% endconfiguration %}
-
+
+
There is an issue with the Mosquitto package included in Ubuntu 14.04 LTS. Specify `protocol: 3.1` in your MQTT configuration to work around this issue.
If you get this error `AttributeError: module 'ssl' has no attribute 'PROTOCOL_TLS'` then you need to set `tls_version: '1.2'`.
-
-
+
+
+
+
If you are running a Mosquitto instance on the same server as Home Assistant then you must ensure that the Mosquitto service starts before Home Assistant. For a Linux instance running Systemd (Raspberry Pi, Debian, Ubuntu and others) then you should edit the file `/etc/systemd/system/home-assistant@homeassistant.service` as `root` (e.g., `sudo nano /etc/systemd/system/home-assistant@homeassistant.service`) and add the Mosquitto service:
+
```
[Unit]
Description=Home Assistant
After=network.target mosquitto.service
```
-
-
+
+
+
+
If you are running a Mosquitto instance on a different server with proper SSL encryption using a service like Let's Encrypt you may have to set the certificate to the operating systems own `.crt` certificates file. In the instance of Ubuntu this would be `certificate: /etc/ssl/certs/ca-certificates.crt`
-
+
+
### Public broker
@@ -99,9 +106,9 @@ mqtt:
[CloudMQTT](https://www.cloudmqtt.com) is a hosted private MQTT instance that is free for up to 10 connected devices. This is enough to get started with for example [OwnTracks](/components/device_tracker.owntracks/) and give you a taste of what is possible.
-
+
Home Assistant is not affiliated with CloudMQTT nor will receive any kickbacks.
-
+
1. [Create an account](https://customer.cloudmqtt.com/login) (no payment details needed)
2. [Create a new CloudMQTT instance](https://customer.cloudmqtt.com/subscription/create)
@@ -120,12 +127,15 @@ mqtt:
password: CLOUDMQTT_PASSWORD
```
-
+
Home Assistant will automatically load the correct certificate if you connect to an encrypted channel of CloudMQTT (port range 20000-30000).
-
-
+
+
+
+
If you experience an error message like `Failed to connect due to exception: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed`, then add `certificate: auto` to your broker configuration and restart Home Assistant.
-
+
+
### Embedded broker (Deprecated)
@@ -146,17 +156,19 @@ mqtt:
password: hello
```
-
+
As of release 0.92, the embedded broker has been marked as deprecated. This means bugs may not be fixed, and the functionality may be removed in a future release.
-
+
-
+
Before release 0.76, the embedded broker would use your API password as a password to the MQTT user. This is no longer the case.
-
+
+
+
-
There is [an issue](https://github.com/beerfactory/hbmqtt/issues/62) with the HBMQTT broker and the WebSocket connection that is causing a memory leak. If you experience this issue, consider using another broker like Mosquitto.
-
+
+
#### Owntracks
diff --git a/source/_docs/mqtt/discovery.markdown b/source/_docs/mqtt/discovery.markdown
index 19b7d35bc6f..8e3e6ec9fb5 100644
--- a/source/_docs/mqtt/discovery.markdown
+++ b/source/_docs/mqtt/discovery.markdown
@@ -42,9 +42,11 @@ discovery_prefix:
type: string
{% endconfiguration %}
-
+
+
The [embedded MQTT broker](/docs/mqtt/broker#embedded-broker) does not save any messages between restarts. If you use the embedded MQTT broker you have to send the MQTT discovery messages after every Home Assistant restart for the devices to show up.
-
+
+
The discovery topic need to follow a specific format:
diff --git a/source/_docs/mqtt/service.markdown b/source/_docs/mqtt/service.markdown
index 19f8397ada3..d714c1c12b3 100644
--- a/source/_docs/mqtt/service.markdown
+++ b/source/_docs/mqtt/service.markdown
@@ -16,9 +16,9 @@ The MQTT integration will register the service `mqtt.publish` which allows publi
| `qos` | yes | Quality of Service to use.
| `retain` | yes | If message should have the retain flag set. (default: false)
-
+
You need to include either payload or payload_template, but not both.
-
+
```json
{
diff --git a/source/_docs/scripts/conditions.markdown b/source/_docs/scripts/conditions.markdown
index 8eb94550471..e4ce91875b2 100644
--- a/source/_docs/scripts/conditions.markdown
+++ b/source/_docs/scripts/conditions.markdown
@@ -144,15 +144,15 @@ condition:
condition: and # 'twilight' condition: dusk and dawn, in typical locations
conditions:
- condition: template
- value_template: {% raw %}'{{ state_attr('sun.sun', 'elevation') < 0 }}'{% endraw %}
+ value_template: {% raw %}'{{ state_attr("sun.sun", "elevation") < 0 }}'{% endraw %}
- condition: template
- value_template: {% raw %}'{{ state_attr('sun.sun', 'elevation') > -6 }}'{% endraw %}
+ value_template: {% raw %}'{{ state_attr("sun.sun", "elevation") > -6 }}'{% endraw %}
```
```yaml
condition:
condition: template # 'night' condition: from dusk to dawn, in typical locations
- value_template: {% raw %}'{{ state_attr('sun.sun', 'elevation') < -6 }}'{% endraw %}
+ value_template: {% raw %}'{{ state_attr("sun.sun", "elevation") < -6 }}'{% endraw %}
```
#### Sunset/sunrise condition
@@ -161,11 +161,11 @@ The sun condition can also test if the sun has already set or risen when a trigg
[sun_trigger]: /docs/automation/trigger/#sun-trigger
-
+
The sunset/sunrise conditions do not work in locations inside the polar circles, and also not in locations with highly skewed local time zone.
It is advised to use conditions evaluating the solar elevation instead of the before/after sunset/sunrise conditions.
-
+
```yaml
condition:
@@ -233,9 +233,11 @@ condition:
Valid values for `weekday` are `mon`, `tue`, `wed`, `thu`, `fri`, `sat`, `sun`.
Time condition windows can span across the midnight threshold. In the example above, the condition window is from 3pm to 2am.
-
+
+
A better weekday condition could be by using the [Workday Binary Sensor](/components/binary_sensor.workday/).
-
+
+
### Zone condition
diff --git a/source/_docs/scripts/service-calls.markdown b/source/_docs/scripts/service-calls.markdown
index d987c31a6df..77229e1fe65 100644
--- a/source/_docs/scripts/service-calls.markdown
+++ b/source/_docs/scripts/service-calls.markdown
@@ -10,9 +10,9 @@ The configuration options to call a config are the same between all integrations
Examples on this page will be given as part of an automation integration configuration but different approaches can be used for other integrations too.
-
+
Use the

service developer tool in the frontend to discover available services.
-
+
### The basics
diff --git a/source/_docs/tools/keyring.markdown b/source/_docs/tools/keyring.markdown
index 9b184b4b00e..8c0e77191f4 100644
--- a/source/_docs/tools/keyring.markdown
+++ b/source/_docs/tools/keyring.markdown
@@ -30,6 +30,8 @@ Config directory: /home/homeassistant/.homeassistant
Please enter password for encrypted keyring:
```
-
+
+
If you are using the Python Keyring, [autostarting](/getting-started/autostart/) of Home Assistant will no longer work.
-
+
+
diff --git a/source/_docs/z-wave/adding.markdown b/source/_docs/z-wave/adding.markdown
index a3bcfb736ae..9fc6f3dc704 100644
--- a/source/_docs/z-wave/adding.markdown
+++ b/source/_docs/z-wave/adding.markdown
@@ -14,9 +14,11 @@ To add (include) a non-secure Z-Wave [device](/docs/z-wave/devices/) to your sys
Don't use this for [secure devices](/docs/z-wave/adding/#adding-secure-devices), since this is likely to limit the features the device supports.
-
+
+
Don't use the OpenZWave control panel (OZWCP), **or the physical button on a controller**, to add or remove devices. Many devices will only send the information about their capabilities at the time you include them. If you use the OpenZWave control panel, or the button on a device, then Home Assistant won't have that information. Using the physical button on a controller will also result in a non-security inclusion being performed, which may limit the features the device supports.
-
+
+
When you add a device, it may initially appear without a specific entity ID (e.g., `zwave.__`) and without other identifying information. Running a *Heal* should help speed this process up, and you'll need to run a *Heal* anyway so that all the devices in your Z-Wave network learn about the new device. You *might* need to restart Home Assistant (not reboot the system) to have the entity ID fully visible.
@@ -54,9 +56,9 @@ If the above command doesn't work then replace `LC_CTYPE=C` with `LC_ALL=C`:
$ cat /dev/urandom | LC_ALL=C tr -dc '0-9A-F' | fold -w 32 | head -n 1 | sed -e 's/\(..\)/0x\1, /g' -e 's/, $//'
```
-
+
Ensure you keep a backup of this key. If you have to rebuild your system and don't have a backup of this key, you won't be able to reconnect to any security devices. This may mean you have to do a factory reset on those devices, and your controller, before rebuilding your Z-Wave network.
-
+
## Adding Secure Devices
diff --git a/source/_docs/z-wave/control-panel.markdown b/source/_docs/z-wave/control-panel.markdown
index 848321de11f..d36ca304016 100644
--- a/source/_docs/z-wave/control-panel.markdown
+++ b/source/_docs/z-wave/control-panel.markdown
@@ -4,9 +4,11 @@ description: "How to use the Z-Wave control panel."
redirect_from: /getting-started/z-wave-panel/
---
-
+
+
If you don't see the **Configuration** menu on the menubar, where you'll find the Z-Wave menu, [see here](/components/config/).
-
+
+
Renaming Z-Wave entities is now done using the same [customization options](/docs/configuration/customizing-devices/) as for any other entity.
@@ -67,9 +69,9 @@ Here is where you [include and exclude](/docs/z-wave/adding/) Z-Wave devices fro
* **sentTS** The date and time the last message was sent to the node
* **wake_up_interval** *Battery powered devices only* - the wakeup interval of the device, in seconds
-
+
Battery powered devices need to be awake before you can use the Z-Wave control panel to update their settings. How to wake your device is device specific, and some devices will stay awake for only a couple of seconds. Please refer to the manual of your device for more details.
-
+
#### Entities of this node
@@ -110,9 +112,9 @@ That would remove the broadcast group from association group 1 of the device wit
You can set the *wakeup* interval (in seconds) of the device, this is shown for all devices that can be battery powered, even if they are currently mains powered. The wakeup interval only applies when those devices are battery powered.
-
+
The wakeup interval has no impact on the device's ability to report sensor changes. This is purely for how often the Z-Wave chip will check in with the controller. That activity consumes a lot of battery power compared to reporting sensor changes and if you reduce it you'll be reducing the battery life of your device.
-
+
Underneath that you can select any supported configuration parameter to see the current setting. You can then change this and select **Set Config Parameter** to updated it. Battery powered devices will be updated the next time they wake.
diff --git a/source/_docs/z-wave/controllers.markdown b/source/_docs/z-wave/controllers.markdown
index 28740df56af..35c96c5035c 100644
--- a/source/_docs/z-wave/controllers.markdown
+++ b/source/_docs/z-wave/controllers.markdown
@@ -17,9 +17,9 @@ You need to have a compatible Z-Wave stick or module installed. This needs to be
We recommend that you purchase a [Z-Wave Plus](https://z-wavealliance.org/z-wave_plus_certification/) controller, to take advantage of the improvements this provides. As OpenZWave doesn't support S2 or Smart Start, there's no need to buy one just for support of these features.
-
+
If you're using Hass.io or running HASS in a Docker container, it's recommended to use a USB stick, not a module. Passing a module through Docker is more complicated than passing a USB stick through.
-
+
## Stick Alternatives
diff --git a/source/_docs/z-wave/device-specific.markdown b/source/_docs/z-wave/device-specific.markdown
index dc9d65e3c40..59b9ff49900 100644
--- a/source/_docs/z-wave/device-specific.markdown
+++ b/source/_docs/z-wave/device-specific.markdown
@@ -80,9 +80,11 @@ $ sudo usermod -a -G dialout homeassistant
Finally, reboot again to make those changes active. It's has been tested on hassbian and has been reported that this is also required on the Pi2.
-
+
+
If you've installed the Z-Way software, you'll need to ensure you disable it before you install Home Assistant or you won't be able to access the board. Do this with `sudo /etc/init.d/z-way-server stop; sudo update-rc.d z-way-server disable`.
-
+
+
### Aeon Minimote
diff --git a/source/_docs/z-wave/devices.markdown b/source/_docs/z-wave/devices.markdown
index a3d9a71a976..711964c9a18 100644
--- a/source/_docs/z-wave/devices.markdown
+++ b/source/_docs/z-wave/devices.markdown
@@ -41,9 +41,11 @@ Your Z-Wave mesh network is built with the devices that are mains powered (wheth
Battery powered devices spend most of their time asleep, unable to relay traffic, to be queried, or receive changes. Changes sent while a device is asleep will be queued and sent the next time the device wakes. Details of the default wake interval, and how to manually wake the device (if supported) will be detailed in the devices's manual. Some battery powered devices (primarily locks and thermostats) support beaming (the *Beam* command class) that allows them to be remotely woken. This does require that all devices in the network responsible for relaying the commands between the controller and the device also support beaming.
-
+
+
The Z-Wave capability *routing* doesn't mean the device routes traffic, it actually means that it's able to control other devices. You'll see this capability on most remotes and switches.
-
+
+
## Instant Status
diff --git a/source/_docs/z-wave/entities.markdown b/source/_docs/z-wave/entities.markdown
index d1fb3095a75..59e1e01cd1b 100644
--- a/source/_docs/z-wave/entities.markdown
+++ b/source/_docs/z-wave/entities.markdown
@@ -3,9 +3,11 @@ title: "Z-Wave Entity Naming"
description: "A summary of common entity names."
---
-
-This is a work in progress, based upon reports in the forum, the author's own devices and reading of various documentation. It will be incomplete, so if you have a device that isn't reported here or have a device that reports a different value, please provide a report in the [Z-Wave section](https://community.home-assistant.io/c/configuration/zwave) of the forum or the #zwave channel on [Discord](https://discord.gg/RkajcgS).
-
+
+
+This is a work in progress, based upon reports in the forum, the author's own devices and reading of various documentation. It will be incomplete, so if you have a device that isn't reported here or have a device that reports a different value, please provide a report in the [Z-Wave section](https://community.home-assistant.io/c/configuration/zwave) of the forum or the #zwave channel on [Discord](https://discord.gg/RkajcgS).
+
+
## Binary Sensor
diff --git a/source/_docs/z-wave/installation.markdown b/source/_docs/z-wave/installation.markdown
index 2ff4bf18eb1..54877fe3a68 100644
--- a/source/_docs/z-wave/installation.markdown
+++ b/source/_docs/z-wave/installation.markdown
@@ -156,7 +156,7 @@ $ ls -1tr /dev/tty*|tail -n 1
#### Raspberry Pi specific
-On the Raspberry Pi you will need to enable the serial interface in the `raspi-config` tool before you can add Z-Wave to Home Assistant.
+On the Raspberry Pi you will need to enable the serial interface in the `raspi-config` tool before you can add Z-Wave to Home Assistant. Make sure to reboot the Raspberry Pi for the setting to take effect.
#### Linux (except Hassbian)
diff --git a/source/_docs/z-wave/services.markdown b/source/_docs/z-wave/services.markdown
index 0e9e77d802b..80290954c88 100644
--- a/source/_docs/z-wave/services.markdown
+++ b/source/_docs/z-wave/services.markdown
@@ -40,8 +40,10 @@ The `soft_reset` and `heal_network` commands can be used to help keep a Z-Wave n
- Moving the Controller
- Removing a Dead Node
-
+
+
Using the `soft_reset` function with some Z-Wave controllers can cause the Z-Wave network to hang.
-
+
+
To trigger a `heal_network`, one can always use *Settings -> Z-Wave Network Management -> Heal Network* from the GUI whenever one of the above actions took place.
diff --git a/source/_includes/after_footer.html b/source/_includes/after_footer.html
index 08b8e3400a8..b5ff417aa4e 100644
--- a/source/_includes/after_footer.html
+++ b/source/_includes/after_footer.html
@@ -1,5 +1,23 @@
-{% include disqus.html %}
{% include facebook_like.html %}
-{% include google_plus_one.html %}
{% include twitter_sharing.html %}
-{% include custom/after_footer.html %}
+
\ No newline at end of file
diff --git a/source/_includes/archive_post.html b/source/_includes/archive_post.html
index 210dbbbe734..04a1a969d4c 100644
--- a/source/_includes/archive_post.html
+++ b/source/_includes/archive_post.html
@@ -1,7 +1,6 @@
-{% capture category %}{{ post.categories | size }}{% endcapture %}
-
+
-{% if category != '0' %}
+{% if post.categories.size != '0' %}
diff --git a/source/_includes/article.html b/source/_includes/article.html
index f88d16cc9c4..af2f6566a4a 100644
--- a/source/_includes/article.html
+++ b/source/_includes/article.html
@@ -1,16 +1,15 @@
{% unless page.no_header %}
{% endif %}
{% else %}
diff --git a/source/_includes/aside.html b/source/_includes/aside.html
deleted file mode 100644
index 94244aa052c..00000000000
--- a/source/_includes/aside.html
+++ /dev/null
@@ -1,15 +0,0 @@
-
diff --git a/source/_includes/asides/component_navigation.html b/source/_includes/asides/component_navigation.html
index c6806297017..4ca4f65005a 100644
--- a/source/_includes/asides/component_navigation.html
+++ b/source/_includes/asides/component_navigation.html
@@ -1,4 +1,3 @@
-{%- assign components = site.components | sort_natural: 'title' -%}
{%- assign github_main_repo = 'https://github.com/home-assistant/home-assistant/blob/dev/homeassistant' -%}