diff --git a/source/_addons/duckdns.markdown b/source/_addons/duckdns.markdown index 9c9049a0663..123e975e970 100644 --- a/source/_addons/duckdns.markdown +++ b/source/_addons/duckdns.markdown @@ -26,10 +26,10 @@ featured: true Configuration variables: +- **lets_encrypt.accept_terms** (*Optional*): If you accept the [Let's Encrypt Subscriber Agreement][le], it will generate and update Let's Encrypt certificates for your DuckDNS domain. - **token** (*Required*): Your Duck DNS API key. - **domains** (*Required*): A list of domains to update DNS. -- **seconds** (*Optional*): Seconds between updates to Duck DNS. -- **lets_encrypt.accept_terms** (*Optional*): If you accept the [Let's Encrypt Subscriber Agreement][le], it will generate & update Let's Enrypt certificates for your DuckDNS domain. +- **seconds** (*Required*): Seconds between updates to Duck DNS. [le]: https://letsencrypt.org/repository/ @@ -51,3 +51,5 @@ If you use a port other than `8123` or an SSL proxy, change the port number acco You'll need to forward the port you listed in your configuration (8123 in the example above) on your router to your Home Assistant system. You can find guides on how to do this on [Port Forward](https://portforward.com/) - noting that you'll only need to forward the TCP port. Ensure that you allocate the Home Assistant system a fixed IP on your network before you configure port forwarding. You can do this either on the computer itself (see the [install guide](/hassio/installation/) or via a static lease on your router. + +Restart Home Assistant for the configured changes to take effect. When you access the Home Assistant frontend you will now need to use `https`, even when accessing local instances, for example at `https://192.168.0.1:8123`. diff --git a/source/_components/abode.markdown b/source/_components/abode.markdown index 34ceaada848..87b689230bc 100644 --- a/source/_components/abode.markdown +++ b/source/_components/abode.markdown @@ -24,7 +24,7 @@ There is currently support for the following device types within Home Assistant: - [Camera](/components/camera.abode/): Reports on `Camera` devices and will download and show the latest captured still image. - [Cover](/components/cover.abode/): Reports on `Secure Barriers` and can be used to open and close the cover. - [Lock](/components/cover.abode/): Reports on `Door Locks` and can be used to lock and unlock the door. -- [Light](/components/light.abode/): Reports on `Dimmer` lights and can be used to dim, change color, or turn the light on and off. +- [Light](/components/light.abode/): Reports on `Dimmer` lights and can be used to dim or turn the light on and off. - [Switch](/components/switch.abode/): Reports on `Power Switch` devices and can be used to turn the power switch on and off. Also reports on `Automations` set up in the Abode system and allows you to activate or deactivate them. - [Sensor](/components/sensor.abode/): Reports on `Temperature`, `Humidity`, and `Light` sensors. diff --git a/source/_components/binary_sensor.bmw_connected_drive.markdown b/source/_components/binary_sensor.bmw_connected_drive.markdown index 6c38dc813ea..74330ec5635 100755 --- a/source/_components/binary_sensor.bmw_connected_drive.markdown +++ b/source/_components/binary_sensor.bmw_connected_drive.markdown @@ -1,7 +1,7 @@ --- layout: page -title: "BMW connected drive" -description: "Instructions on how to setup your BMW connected drive account with Home Assistant." +title: "BMW Connected Drive Binary Sensor" +description: "Instructions on how to setup your BMW Connected Drive account with Home Assistant." date: 2018-02-22 23:00 sidebar: true comments: false @@ -15,6 +15,6 @@ ha_release: 0.66 The `bmw_connected_drive` platform allows you to import data on your BMW into Home Assistant. -The binary sensors will be automatically configured if 'bmw_connected_drive' component is configured. +The binary sensors will be automatically configured if `bmw_connected_drive` component is configured. -For more configuration information see the [bmw_connected_drive component](/components/bmw_connected_drive/) documentation. +For more configuration information see the [`bmw_connected_drive` component](/components/bmw_connected_drive/) documentation. diff --git a/source/_components/binary_sensor.workday.markdown b/source/_components/binary_sensor.workday.markdown index edc34b5a373..b63d8f778da 100644 --- a/source/_components/binary_sensor.workday.markdown +++ b/source/_components/binary_sensor.workday.markdown @@ -32,8 +32,8 @@ binary_sensor: Configuration variables: - **name** (*Optional*): A name for this sensor. Defaults to *Workday Sensor* -- **country** (*Required*): Country code according to [holidays](https://pypi.python.org/pypi/holidays/0.9.3) notation. -- **province** (*Optional*): Province code according to [holidays](https://pypi.python.org/pypi/holidays/0.9.3) notation. Defaults to None. +- **country** (*Required*): Country code according to [holidays](https://pypi.python.org/pypi/holidays/0.9.4) notation. +- **province** (*Optional*): Province code according to [holidays](https://pypi.python.org/pypi/holidays/0.9.4) notation. Defaults to None. - **workdays** (*Optional*): List of workdays. Defaults to `mon`, `tue`, `wed`, `thu`, `fri`. - **excludes** (*Optional*): List of workday excludes. Defaults to `sat`, `sun`, `holiday`. - **days_offset** (*Optional*): Set days offset. Defaults to `0`. diff --git a/source/_components/bmw_connected_drive.markdown b/source/_components/bmw_connected_drive.markdown index fe2d698b94e..94f493ff242 100644 --- a/source/_components/bmw_connected_drive.markdown +++ b/source/_components/bmw_connected_drive.markdown @@ -1,7 +1,7 @@ --- layout: page -title: "BMW connected drive" -description: "Instructions on how to setup your BMW connected drive account with Home Assistant." +title: "BMW Connected Drive" +description: "Instructions on how to setup your BMW Connected Drive account with Home Assistant." date: 2018-01-10 23:00 sidebar: true comments: false diff --git a/source/_components/device_tracker.bmw_connected_drive.markdown b/source/_components/device_tracker.bmw_connected_drive.markdown index d00d588b355..4f390c5fa3a 100644 --- a/source/_components/device_tracker.bmw_connected_drive.markdown +++ b/source/_components/device_tracker.bmw_connected_drive.markdown @@ -1,7 +1,7 @@ --- layout: page -title: "BMW connected drive" -description: "Instructions on how to setup your BMW connected drive account with Home Assistant." +title: "BMW Connected Drive Device Tracker" +description: "Instructions on how to setup your BMW Connected Drive account with Home Assistant." date: 2018-01-10 23:00 sidebar: true comments: false diff --git a/source/_components/device_tracker.google_maps.markdown b/source/_components/device_tracker.google_maps.markdown index 6f2175a6044..5b16f3c7856 100644 --- a/source/_components/device_tracker.google_maps.markdown +++ b/source/_components/device_tracker.google_maps.markdown @@ -20,7 +20,7 @@ You first need to create an additional Google account and share your location wi This platform will create a file named `google_maps_location_sharing.conf` where it caches your login session.
-Since this platform is using an official API with the help of [locationsharinglib](https://github.com/costastf/locationsharinglib), Google seems to block access to your data the first time you've logged in with this component. +Since this platform is using an unofficial API with the help of [locationsharinglib](https://github.com/costastf/locationsharinglib), Google seems to block access to your data the first time you've logged in with this component. This issue can be fixed by logging in with your new account and approving your login on the [Device Activity](https://myaccount.google.com/device-activity) page.
diff --git a/source/_components/device_tracker.owntracks_http.markdown b/source/_components/device_tracker.owntracks_http.markdown index a4aa8477127..cadf1f4589d 100644 --- a/source/_components/device_tracker.owntracks_http.markdown +++ b/source/_components/device_tracker.owntracks_http.markdown @@ -34,3 +34,30 @@ Open OwnTracks and go to Connection preferences: - Identification: Turn **Authentication** on, username `homeassistant` and password is your API password that you use to login to Home Assistant. Host example: If I host my Home Assistant at `https://example.duckdns.org`, my name is Paulus and my phone is a Pixel I would set the host to be `https://example.duckdns.org/api/owntracks/paulus/pixel`. This will result in an entity with an ID of `device_tracker.paulus_pixel`. You can pick any name for the user and the device. + +Since the battery data is available as an attribute of the device tracker entity, it can be tracked with a [`template` sensor](/components/sensor.template/). + +{% raw %} +```yaml +# Example configuration.yaml entry +sensor: + - platform: template + sensors: + pixel_battery: + friendly_name: Pixel of Paulus + unit_of_measurement: "%" + value_template: '{{ states.device_tracker.paulus_pixel.attributes.battery|int }}' + icon_template: >- + {% set battery_level = states.device_tracker.paulus_pixel.attributes.battery|default(0)|int %} + {% set battery_round = (battery_level / 10) |int * 10 %} + {% if battery_round >= 100 %} + mdi:battery + {% elif battery_round > 0 %} + mdi:battery-{{ battery_round }} + {% else %} + mdi:battery-alert + {% endif %} + entity_id: + - device_tracker.paulus_pixel +``` +{% endraw %} diff --git a/source/_components/doorbird.markdown b/source/_components/doorbird.markdown index 30cd891c002..9db3c71d864 100644 --- a/source/_components/doorbird.markdown +++ b/source/_components/doorbird.markdown @@ -20,9 +20,10 @@ To connect your device, add the following to your `configuration.yaml` file: ```yaml # Example configuration.yaml entry doorbird: - host: IP_OR_HOSTNAME + host: DOORBIRD_IP_OR_HOSTNAME username: YOUR_USERNAME password: YOUR_PASSWORD + hass_url_override: HASS_IP ``` Configuration variables: @@ -31,8 +32,77 @@ Configuration variables: - **username** (*Required*): The username of a non-administrator user account on the device. - **password** (*Required*): The password for the user specified. - **doorbell_events** (*Optional*): Setting this to `true` this will register a callback URL with the device so that events can be published to the event bus when the doorbell rings. -- **hass_url_override** (*Optional*): If your DoorBird cannot connect to the machine running Home Assistant because you are using dynamic DNS or some other HTTP configuration, specify the LAN IP of the machine here to force a LAN connection. +- **hass_url_override** (*Optional*): If your DoorBird cannot connect to the machine running Home Assistant because you are using dynamic DNS or some other HTTP configuration (such as HTTPS), specify the LAN IP of the machine here to force a LAN connection.Enabling `doorbell_events` will delete all other registered push notification services with the device every time Home Assistant starts. This will not affect notifications delivered by the DoorBird mobile app.
+ +### Doorbell Sound Examples + +You can create an automation that triggers on event `doorbird_doorbell` to play a doorbell sound when the Doorbird button is pressed. This should work with any media player. + +#### Example using SONOS + +[`SONOS`](http://www.sonos.com) players have features allowing for "snapshotting" the current state of some or all players so those state(s) can be "restored" at a later time. This feature is perfect for implementing a doorbell sound (from Doorbird or any other Doorbell setup for that matter). The [`media_player.sonos`](/components/media_player.sonos/) platform includes the [`SONOS_SNAPSHOT`](/components/media_player.sonos/#service-sonos_snapshot) and [`SONOS_RESTORE`](/components/media_player.sonos/#service-sonos_restore) features. The result of not using these features is any currently playing songs or media will not continue playing after the doorbell sound has played and you will be left with the doorbell sound queued as the last played song. This setup allows for seamless ringing of the doorbell and all SONOS devices continuing nicely on as if nothing had happened. + +The example script below takes a snapshot of three SONOS players that are not currently grouped together, joins the three players in a group (so the sound plays at the same time on all players), plays the doorbell MP3 sound, unjoins the players from the group and finally restores the players to their original state. When the players are grouped they are controlled by refering to the `master`. + +Automation file: + +```yaml +- alias: Doorbird ring + trigger: + platform: event + event_type: doorbird_doorbell + action: + service: script.turn_on + entity_id: script.doorbell +``` + +Script file: + +```yaml +doorbell: + alias: Ring Doorbell + sequence: + - service: media_player.sonos_snapshot + data: + entity_id: + - media_player.kitchen + - media_player.master_bedroom + - media_player.study + - service: media_player.sonos_join + data: + master: media_player.study + entity_id: + - media_player.kitchen + - media_player.master_bedroom + - media_player.study + - service: media_player.play_media + data: + entity_id: media_player.study # the group master + media_content_id: http://10.1.1.10/sounds/doorbell.mp3 # this is on a NAS but could be HASS local + media_content_type: music + - service: media_player.volume_set + data: + entity_id: # can still control the volume of grouped players indivdually + - media_player.study + - media_player.kitchen + - media_player.master_bedrom + volume_level: 0.50 + - delay: + seconds: 4 # wait while the sound plays + - service: media_player.sonos_unjoin + data: + entity_id: + - media_player.kitchen + - media_player.master_bedroom + - media_player.study + - service: media_player.sonos_restore + data: + entity_id: + - media_player.kitchen + - media_player.master_bedroom + - media_player.study +``` diff --git a/source/_components/folder_watcher.markdown b/source/_components/folder_watcher.markdown index e7489514e88..88b19937e0e 100644 --- a/source/_components/folder_watcher.markdown +++ b/source/_components/folder_watcher.markdown @@ -13,16 +13,22 @@ ha_iot_class: "Local Polling" ha_release: 0.67 --- -This component adds [Watchdog](https://pythonhosted.org/watchdog/) file system monitoring, publishing events on the Home-Assistant bus on the creation/deletion/modification of files. +This component adds [Watchdog](https://pythonhosted.org/watchdog/) file system monitoring, publishing events on the Home Assistant bus on the creation/deletion/modification of files. The monitored `event_type` are: +* `created` +* `deleted` +* `modified` +* `moved` -To configure the `folder_watcher` component add to you `configuration.yaml` file: +Note that by default folder monitoring is recursive, meaning that the contents of sub-folders are also monitored. + +To enable the Folder Watcher component in your installation, add the following to your `configuration.yaml` file: -```yaml {% raw %} +```yaml folder_watcher: - folder: /config -{% endraw %} ``` +{% endraw %} {% configuration %} folder: @@ -40,28 +46,28 @@ patterns: Pattern matching using [fnmatch](https://docs.python.org/3.6/library/fnmatch.html) can be used to limit filesystem monitoring to only files which match the configured patterns. The following example shows the configuration required to only monitor filetypes `.yaml` and `.txt`. -```yaml {% raw %} +```yaml folder_watcher: - folder: /config patterns: - '*.yaml' - '*.txt' -{% raw %} ``` +{% endraw %} ## Automations -Automations can be triggered on filesystem event data using a data_template. The following automation will send a notification with the name and folder of new files added to that folder: +Automations can be triggered on filesystem event data using a `data_template`. The following automation will send a notification with the name and folder of new files added to that folder: -```yaml {% raw %} +```yaml - action: - data_template: - message: 'Created {{trigger.event.data.file}} in {{trigger.event.data.folder}}' + message: 'Created {{ trigger.event.data.file }} in {{ trigger.event.data.folder }}' title: New image captured! data: - file: "{{trigger.event.data.path}}" + file: " {{ trigger.event.data.path }} " service: notify.pushbullet alias: New file alert condition: [] @@ -70,6 +76,5 @@ Automations can be triggered on filesystem event data using a data_template. The - event_data: {"event_type":"created"} event_type: folder_watcher platform: event -{% endraw %} ``` - +{% endraw %} diff --git a/source/_components/light.mqtt.markdown b/source/_components/light.mqtt.markdown index eae91d0553c..13e1cd9f86c 100644 --- a/source/_components/light.mqtt.markdown +++ b/source/_components/light.mqtt.markdown @@ -204,6 +204,7 @@ In this section you will find some real life examples of how to use this sensor. To enable a light with brightness and RGB support in your installation, add the following to your `configuration.yaml` file: +{% raw %} ```yaml # Example configuration.yml entry light: @@ -215,14 +216,15 @@ light: brightness_command_topic: "office/rgb1/brightness/set" rgb_state_topic: "office/rgb1/rgb/status" rgb_command_topic: "office/rgb1/rgb/set" - state_value_template: "{% raw %}{{ value_json.state }}{% endraw %}" - brightness_value_template: "{% raw %}{{ value_json.brightness }}{% endraw %}" - rgb_value_template: "{% raw %}{{ value_json.rgb | join(',') }}{% endraw %}" + state_value_template: "{{ value_json.state }}" + brightness_value_template: "{{ value_json.brightness }}" + rgb_value_template: "{{ value_json.rgb | join(',') }}" qos: 0 payload_on: "ON" payload_off: "OFF" optimistic: false ``` +{% endraw %} ### {% linkable_title Brightness and no RGB support %} @@ -260,7 +262,6 @@ light: on_command_type: 'brightness' ``` - ### {% linkable_title Implementations %} - A [basic example](https://github.com/mertenats/open-home-automation/tree/master/ha_mqtt_light) using a nodeMCU board (ESP8266) to control its built-in LED (on/off). diff --git a/source/_components/lock.bmw_connected_drive.markdown b/source/_components/lock.bmw_connected_drive.markdown index 2a7f6708126..4c6c7a2edcf 100755 --- a/source/_components/lock.bmw_connected_drive.markdown +++ b/source/_components/lock.bmw_connected_drive.markdown @@ -1,7 +1,7 @@ --- layout: page -title: "BMW connected drive" -description: "Instructions on how to setup your BMW connected drive account with Home Assistant." +title: "BMW Connected Drive Lock" +description: "Instructions on how to setup your BMW Connected Drive account with Home Assistant." date: 2018-02-22 23:00 sidebar: true comments: false @@ -15,6 +15,6 @@ ha_release: 0.66 The `bmw_connected_drive` platform allows you to import data on your BMW into Home Assistant. -The lock will be automatically configured if 'bmw_connected_drive' component is configured. +The lock will be automatically configured if `bmw_connected_drive` component is configured. -For more configuration information see the [bmw_connected_drive component](/components/bmw_connected_drive/) documentation. +For more configuration information see the [`bmw_connected_drive` component](/components/bmw_connected_drive/) documentation. diff --git a/source/_components/media_player.samsungtv.markdown b/source/_components/media_player.samsungtv.markdown index 53954f66931..d944b2b3a74 100644 --- a/source/_components/media_player.samsungtv.markdown +++ b/source/_components/media_player.samsungtv.markdown @@ -50,6 +50,7 @@ Currently known supported models: - EH5600 - F6400AF - F6400 +- F8000BF - D6505 - D6300SF - U6000 (port must be set to 8001) diff --git a/source/_components/media_player.webostv.markdown b/source/_components/media_player.webostv.markdown index 0b1823db00d..1d634dcebc0 100644 --- a/source/_components/media_player.webostv.markdown +++ b/source/_components/media_player.webostv.markdown @@ -19,7 +19,7 @@ The `webostv` platform allows you to control a [LG](http://www.lg.com/) webOS Sm To begin with enable *LG Connect Apps* feature in *Network* settings of the TV [instructions](http://www.lg.com/uk/support/product-help/CT00008334-1437131798537-others). -Once basic configuration is added to your `configuration.yaml` *Configuration* card should prompt on your HA's States. Follow the instructions and accept pairing request on your TV. +Once basic configuration is added to your `configuration.yaml` *Configuration* card should prompt on your Home Assistants's states. Follow the instructions and accept pairing request on your TV. Pairing information will be saved to the `filename:` provided in configuration; this process is IP sensitive, in case the IP address of your TV would change in future. @@ -42,10 +42,12 @@ Configuration variables: - **timeout** (*Optional*): The timeout for connections to the TV in seconds. - **filename** (*Optional*): The filename where the pairing key with the TV should be stored. This path is relative to Home Assistant's config directory. It defaults to `webostv.conf`. - **customize** array (*Optional*): List of options to customize. - - ***sources** array (*Optional*): List of hardware and webOS App inputs. + - **sources** array (*Optional*): List of hardware and webOS App inputs. If you do not specify `host:`, all LG webOS Smart TVs within your network will be auto-discovered. +### {% linkable_title Example %} + A full configuration example will look like the sample below: ```yaml @@ -53,7 +55,7 @@ A full configuration example will look like the sample below: media_player: - platform: webostv host: 192.168.0.10 - name: Living Room TV + name: Living Room TV timeout: 5 filename: webostv.conf turn_on_action: @@ -67,15 +69,15 @@ media_player: - makotv - netflix ``` -** avoid using `[ ]` in the `name:` of your device. +Avoid using `[ ]` in the `name:` of your device. -*Turn On Action* +### {% linkable_title Turn on action %} Home Assistant is able to turn on a LG webOS Smart TV if you specify an action, like HDMI-CEC or WakeOnLan. -Common for webOS 3.0 and higher would be to use WakeOnLan feature. -To use this feature your TV should be connected to your network via Ethernet rather than Wireless and you should enable *LG Connect Apps* feature in *Network* settings of the TV [instructions](http://www.lg.com/uk/support/product-help/CT00008334-1437131798537-others) (or *Mobile App* in *General* settings for older models) (*may vary by version). +Common for webOS 3.0 and higher would be to use WakeOnLan feature. +To use this feature your TV should be connected to your network via Ethernet rather than Wireless and you should enable *LG Connect Apps* feature in *Network* settings of the TV [instructions](http://www.lg.com/uk/support/product-help/CT00008334-1437131798537-others) (or *Mobile App* in *General* settings for older models). ```yaml # Example configuration.yaml entry @@ -90,10 +92,10 @@ media_player: data: mac: B4:E6:2A:1E:11:0F ``` -Any other [actions](/docs/automation/action/) to power on the device can be configured. +Any other [actions](/docs/automation/action/) to power on the device can be configured. -*Sources* +### {% linkable_title Sources %} To obtain complete list of available sources currently configured on the TV, once the webOS TV is configured and linked, while its powered on head to the **Developer Tools** > **States**, find your `media_player.@@ -82,13 +86,17 @@ This example shows a switch that uses a [template](/topics/templating/) to allow {"is_active": "true"} ``` +{% raw %} ```yaml switch: - platform: rest resource: http://IP_ADDRESS/led_endpoint body_on: '{"active": "true"}' body_off: '{"active": "false"}' - is_on_template: '{% raw %}{{value_json.is_active}}{% endraw %}' + is_on_template: '{{value_json.is_active}}' + headers: + Content-Type: application/json ``` +{% endraw %} `body_on` and `body_off` can also depend on the state of the system. For example, to enable a remote temperature sensor tracking on a radio thermostat, one has to send the current value of the remote temperature sensor. This can be achieved by using the template `{% raw %}'{"rem_temp":{{states.sensor.bedroom_temp.state}}}'{% endraw %}`. diff --git a/source/_components/switch.vesync.markdown b/source/_components/switch.vesync.markdown index 83041ca78be..b02f476e93e 100644 --- a/source/_components/switch.vesync.markdown +++ b/source/_components/switch.vesync.markdown @@ -45,7 +45,3 @@ VeSync switches will expose the following details. | ------------------- | ------------------------------------------------------------------- | --------------- | | `current_power_w` | The present power consumption of the switch in watts. | 100 | | `today_energy_kwh` | The kilowatt hours used by the switch during the previous 24 hours. | 0.12 | -| `connection_status` | The connection status of the switch. | online | -| `connection_type` | The connection type of the switch. | wifi | -| `device_type` | The device type of the switch. | wifi-switch-1.3 | -| `model` | The model of the switch. | wifi-switch | diff --git a/source/_components/weather.bom.markdown b/source/_components/weather.bom.markdown index 3a9d64c81a3..fe26c58337a 100644 --- a/source/_components/weather.bom.markdown +++ b/source/_components/weather.bom.markdown @@ -15,9 +15,12 @@ ha_iot_class: "Cloud Polling" The `bom` weather platform uses the [Australian Bureau of Meteorology (BOM)](http://www.bom.gov.au) as a source for current (half-hourly) meteorological data. +## {% linkable_title Configuration %} + To add the BOM weather platform to your installation, add the following to your `configuration.yaml` file: ```yaml +# Example configuration.yaml entry weather: - platform: bom ``` diff --git a/source/_components/weather.buienradar.markdown b/source/_components/weather.buienradar.markdown index b2a42e76618..0b4ef3f0db8 100644 --- a/source/_components/weather.buienradar.markdown +++ b/source/_components/weather.buienradar.markdown @@ -14,8 +14,11 @@ ha_iot_class: "Cloud Polling" --- The `buienradar` platform uses [buienradar.nl](http://buienradar.nl/) as a source for current meteorological data for your location. The weather forecast is delivered by Buienradar, who provides a web service that provides detailed weather information for users in The Netherlands. + The relevant weather station used will be automatically selected based on the location specified in the Home Assistant configuration (or in the Buienradar weather/sensor component). A map of all available weather stations can be found [here](https://www.google.com/maps/d/embed?mid=1NivHkTGQUOs0dwQTnTMZi8Uatj0). +## {% linkable_title Configuration %} + To add the Buienradar weather to your installation, add the following to your `configuration.yaml` file: ```yaml @@ -26,7 +29,7 @@ weather: Configuration variables: -- **name** (*Optional*): You can specify a name of the component, but do not have to. If you specify a name, the weather component will get an entity name of 'weather.[name]'; if no name is specified, it will try to set its name to 'weather.BR_[stationname]'. However at the moment in time, the entity is created, no data has been retrieved yet, so the entity will get named 'weather.BR_unknown_station'. Later the station name will be known and get updated, but the entity name remains. +- **name** (*Optional*): You can specify a name of the component, but do not have to. If you specify a name, the weather component will get an entity name of `weather.[name]`; if no name is specified, it will try to set its name to `weather.BR_[stationname]`. However at the moment in time, the entity is created, no data has been retrieved yet, so the entity will get named `weather.BR_unknown_station`. Later the station name will be known and get updated, but the entity name remains. - **latitude** (*Optional*): Latitude to use for selection of data source location. Longitude and latitude will be taken from Home Assistant configuration but can be overridden/changed in this component to select a different location for Buienradar. - **longitude**(*Optional*): Longitude to use for selection of data source location. Longitude and latitude will be taken from Home Assistant configuration but can be overridden/changed in this component to select a different location for Buienradar. - **forecast** (*Optional*): 'True' to add a temperature forecast, 'False' to suppress it. diff --git a/source/_components/weather.darksky.markdown b/source/_components/weather.darksky.markdown index 1d7c843b355..6a3b1ad138f 100644 --- a/source/_components/weather.darksky.markdown +++ b/source/_components/weather.darksky.markdown @@ -14,17 +14,14 @@ ha_release: 0.61 ha_iot_class: "Cloud Polling" --- -The `darksky` platform uses the [Dark Sky](https://darksky.net/) web service as -a source for meteorological data for your location. +The `darksky` platform uses the [Dark Sky](https://darksky.net/) web service as a source for meteorological data for your location. -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. +## {% linkable_title Configuration %} + +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. +[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: diff --git a/source/_components/weather.markdown b/source/_components/weather.markdown index 7babb6f8e9f..c256cae2a8f 100644 --- a/source/_components/weather.markdown +++ b/source/_components/weather.markdown @@ -13,4 +13,22 @@ The `weather` platforms are gathering meteorological information from web servic Home Assistant currently supports free web services and such which require a registration. Please check the sidebar for a full list of supported `weather` platforms. +## {% linkable_title Condition mapping %} + +The `weather` platform only knows the below listed conditions. The reason for this is that for these conditions is an icon from [Material Design Icons](https://materialdesignicons.com/) available and mapped in the [frontend](https://github.com/home-assistant/home-assistant-polymer/blob/master/src/cards/ha-weather-card.html#L77). + +- 'cloudy' +- 'fog' +- 'hail' +- 'lightning' +- 'lightning-rainy' +- 'partlycloudy' +- 'pouring' +- 'rainy' +- 'snowy' +- 'snowy-rainy' +- 'sunny' +- 'windy' +- 'windy-variant' +- 'exceptional': diff --git a/source/_components/weather.metoffice.markdown b/source/_components/weather.metoffice.markdown index 58751218063..df624d2a9ca 100644 --- a/source/_components/weather.metoffice.markdown +++ b/source/_components/weather.metoffice.markdown @@ -15,9 +15,12 @@ ha_iot_class: "Cloud Polling" The `metoffice` weather platform uses the Met Office's [DataPoint API][datapoint] for weather data. +## {% linkable_title Configuration %} + To add the Met Office weather platform to your installation, you'll need to register for a free API key at the link above and then add the following to your `configuration.yaml` file: ```yaml +# Example configuration.yaml entry weather: - platform: metoffice api_key: YOUR_API_KEY diff --git a/source/_components/weather.openweathermap.markdown b/source/_components/weather.openweathermap.markdown index 0bb8d2bf9eb..53f7e9a3482 100644 --- a/source/_components/weather.openweathermap.markdown +++ b/source/_components/weather.openweathermap.markdown @@ -15,6 +15,8 @@ ha_iot_class: "Cloud Polling" The `openweathermap` weather platform uses [OpenWeatherMap](http://openweathermap.org/) as a source for current meteorological data for your location. +## {% linkable_title Configuration %} + You need an API key which is free but requires a [registration](http://home.openweathermap.org/users/sign_up). To add OpenWeatherMap to your installation, add the following to your `configuration.yaml` file: diff --git a/source/_components/weather.yweather.markdown b/source/_components/weather.yweather.markdown index af311a00300..27bbda8214d 100644 --- a/source/_components/weather.yweather.markdown +++ b/source/_components/weather.yweather.markdown @@ -19,6 +19,8 @@ The `yweather` platform uses [Yahoo Weather](https://www.yahoo.com/news/weather/ Use of the Yahoo Weather API should not exceed reasonable request volume. Access is limited to 2000 signed calls per day. +## {% linkable_title Configuration %} + 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 will be generated from Home Assistant's latitude and longitude. To add Yahoo Weather to your installation, add the following to your `configuration.yaml` file: diff --git a/source/_components/weather.zamg.markdown b/source/_components/weather.zamg.markdown index cf805fd3a4f..b3112d97ea8 100644 --- a/source/_components/weather.zamg.markdown +++ b/source/_components/weather.zamg.markdown @@ -17,6 +17,8 @@ The `zamg` platform uses meteorological details published by the Austrian weathe Only observations for capital cities are publicly available. You can check the list of stations in [CSV format](http://www.zamg.ac.at/ogd). +## {% linkable_title Configuration %} + To add ZAMG to your installation, add the following to your `configuration.yaml` file: ```yaml diff --git a/source/_docs/configuration/entity-registry.markdown b/source/_docs/configuration/entity-registry.markdown index e31e014c329..6c75ad8dfed 100644 --- a/source/_docs/configuration/entity-registry.markdown +++ b/source/_docs/configuration/entity-registry.markdown @@ -52,3 +52,7 @@ value to each entry. cause integrations to fail and might be removed in the future. _Added in Home Assistant 0.64._ + +{% linkable_title Supported Components %} + +At the moment, only the following components are supported: Z-Wave, Hue, Nest, LIFX, Sonos, Apple TV diff --git a/source/_docs/ecosystem/apache.markdown b/source/_docs/ecosystem/apache.markdown index ae0c1925114..92c27eb51a7 100644 --- a/source/_docs/ecosystem/apache.markdown +++ b/source/_docs/ecosystem/apache.markdown @@ -35,10 +35,10 @@ To be able to access to your Home Assistant instance by using https://home.examp ServerName home.example.org ProxyPreserveHost On ProxyRequests off - ProxyPass / http://localhost:8123/ - ProxyPassReverse / http://localhost:8123/ ProxyPass /api/websocket ws://localhost:8123/api/websocket ProxyPassReverse /api/websocket ws://localhost:8123/api/websocket + ProxyPass / http://localhost:8123/ + ProxyPassReverse / http://localhost:8123/ RewriteEngine on RewriteCond %{HTTP:Upgrade} =websocket [NC] diff --git a/source/_docs/installation/raspberry-pi.markdown b/source/_docs/installation/raspberry-pi.markdown index b0cb1b8a4a1..c272e97dbf8 100644 --- a/source/_docs/installation/raspberry-pi.markdown +++ b/source/_docs/installation/raspberry-pi.markdown @@ -49,10 +49,10 @@ $ sudo apt-get install python3 python3-venv python3-pip ``` Add an account for Home Assistant called `homeassistant`. -Since this account is only for running Home Assistant the extra arguments of `-rm` is added to create a system account and create a home directory. +Since this account is only for running Home Assistant the extra arguments of `-rm` is added to create a system account and create a home directory. The arguments `-G dialout` adds the user to the `dialout` group. This is required for using Z-Wave and Zigbee controllers. ```bash -$ sudo useradd -rm homeassistant +$ sudo useradd -rm homeassistant -G dialout ``` Next we will create a directory for the installation of Home Assistant and change the owner to the `homeassistant` account. diff --git a/source/_docs/installation/updating.markdown b/source/_docs/installation/updating.markdown index dd5d6dc3ab1..a9884322b60 100644 --- a/source/_docs/installation/updating.markdown +++ b/source/_docs/installation/updating.markdown @@ -16,6 +16,10 @@ The upgrade process differs depending on the installation you have, so please re 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: ```bash @@ -30,10 +34,6 @@ $ sudo docker pull homeassistant/home-assistant:latest After updating, you must start/restart Home Assistant for the changes to take effect. This means that you will have to restart `hass` itself or the [autostarting](/docs/autostart/) daemon (if applicable). Startup can take considerable amount of time (i.e. minutes) depending on your device. This is because all requirements are updated as well. --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). -
- [BRUH automation](http://www.bruhautomation.com) has created [a tutorial video](https://www.youtube.com/watch?v=tuG2rs1Cl2Y) explaining how to upgrade Home Assistant. #### {% linkable_title Run a specific version %} diff --git a/source/_docs/z-wave/query-stage.markdown b/source/_docs/z-wave/query-stage.markdown index 2037963e455..7112cd055b6 100644 --- a/source/_docs/z-wave/query-stage.markdown +++ b/source/_docs/z-wave/query-stage.markdown @@ -9,6 +9,10 @@ sharing: true footer: true --- +When the Z-Wave mesh is first started, the controller will go through all the following stages for every device on the mesh. This is a slow process, and to complete requires that the devices be awake. While devices that are mains or USB powered are always awake, battery-powered devices spend most of their time asleep. Because of this, you can expect that after startup your battery powered devices will spend time in `Initializing (CacheLoad)` - how long depends on the device. + +Your devices will still function normally while marked as `Initializing`. + | Stage | Description | |------------------------|--------------------------------------------------------------------| | None | Query process hasn't started for this node | @@ -17,7 +21,7 @@ footer: true | WakeUp | Start wake up process if a sleeping node | | ManufacturerSpecific1 | Retrieve manufacturer name and product ids if ProtocolInfo lets us | | NodeInfo | Retrieve info about supported, controlled command classes | -| NodePlusInfo | Retrieve ZWave+ info and update device classes | +| NodePlusInfo | Retrieve Z-Wave+ info and update device classes | | SecurityReport | Retrieve a list of Command Classes that require Security | | ManufacturerSpecific2 | Retrieve manufacturer name and product ids | | Versions | Retrieve version information | diff --git a/source/developers/development_validation.markdown b/source/developers/development_validation.markdown index b629dcbe648..30b3dc77a86 100644 --- a/source/developers/development_validation.markdown +++ b/source/developers/development_validation.markdown @@ -21,7 +21,7 @@ Besides [voluptuous](https://pypi.python.org/pypi/voluptuous) default types, man - Time: `time`, `time_zone` - Misc: `template`, `slug`, `temperature_unit`, `latitude`, `longitude`, `isfile`, `sun_event`, `ensure_list`, `port`, `url`, and `icon` -To validate plaforms using [MQTT](/components/mqtt/), `valid_subscribe_topic` and `valid_publish_topic` are available. +To validate platforms using [MQTT](/components/mqtt/), `valid_subscribe_topic` and `valid_publish_topic` are available. Some things to keep in mind: