Merge pull request #4762 from home-assistant/next

0.64
This commit is contained in:
Paulus Schoutsen 2018-02-25 16:50:24 -08:00 committed by GitHub
commit 064dc6e4e7
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
48 changed files with 1434 additions and 44 deletions

View File

@ -139,14 +139,14 @@ social:
# Home Assistant release details
current_major_version: 0
current_minor_version: 63
current_patch_version: 3
date_released: 2018-02-17
current_minor_version: 64
current_patch_version: 0
date_released: 2018-02-26
# Either # or the anchor link to latest release notes in the blog post.
# Must be prefixed with a # and have double quotes around it.
# Major release:
patch_version_notes: "#release-0633---february-17"
patch_version_notes: "#"
# Minor release (Example #release-0431---april-25):
# Date we moved to Discourse for comments

View File

@ -0,0 +1,50 @@
---
layout: page
title: "August"
description: "Instructions on how to integrate your August devices into Home Assistant."
date: 2018-02-17 22:00
sidebar: true
comments: false
sharing: true
footer: true
logo: august.png
ha_category: Hub
ha_release: "0.64"
ha_iot_class: "Cloud Polling"
---
The `august` component allows you to integrate your [August](http://august.com) devices in Home Assistant. Currently this component supports August Lock and Doorbell.
You will need your August login information (username (either phone# or email), and password) to use this module.
To set it up, add the following to your `configuration.yaml` file:
```yaml
# Example configuration.yaml entry
august:
login_method: phone
username: "+16041234567"
password: secret
```
{% configuration %}
login_method:
description: Method to login to your August account, either "email" or "phone". A verification code will be sent to your email or phone during setup.
required: true
type: string
username:
description: The username for accessing your August account. This depends on your login_method, if login_method is email, this will be your email of the account. Otherwise, this will be your phone number.
required: true
type: string
password:
description: The password for accessing your August account.
required: true
type: string
timeout:
description: Timeout to wait for connections.
required: false
type: int
default: 10
{% endconfiguration %}
Once Home Assistant is started, a configurator will pop up asking you to enter verification code that is sent to your phone number or email.

View File

@ -0,0 +1,22 @@
---
layout: page
title: "August Binary Sensor"
description: "Instructions on how to integrate your August devices into Home Assistant."
date: 2018-02-17 22:00
sidebar: true
comments: false
sharing: true
footer: true
logo: august.png
ha_category: Binary Sensor
ha_release: "0.64"
ha_iot_class: "Cloud Polling"
---
To get your [August](http://august.com) doorbell binary sensors working within Home Assistant, please follow the instructions for the general [August component](/components/august/).
If you have August Doorbell, once you have enabled the [August component](/components/august/), you should see following sensors:
* Doorbell ding sensor
* Doorbell motion sensor
* Doorbell online sensor

View File

@ -17,8 +17,10 @@ See the [deCONZ main component](/components/deconz/) for configuration instructi
The following sensor types are supported:
* Fire/Smoke detection
* Open/Close detection
* Presence detection
* Water leakage detection
Entity ids will be binary_sensor.device_name, where device_name is defined in deCONZ.

View File

@ -0,0 +1,58 @@
---
layout: page
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
sharing: true
footer: true
logo: bmw.png
ha_category: Hub
ha_release: 0.64
---
This component lets you retrieve data on your BMW vehicle from the BMW Connected Drive portal. You need to have a working BMW Connected Drive account and a Connected Drive enabled vehicle for this to work.
For compatibility with your BMW vehicle check the (bimmer_connected page)[https://github.com/ChristianKuehnel/bimmer_connected] on github.
To enable this component in your installation, add the following to your
`configuration.yaml` file:
```yaml
# Example configuration.yaml entry
bmw_connected_drive:
mycar:
name: Car 1
username: USERNAME_BMW_CONNECTED_DRIVE
password: PASSWORD_BMW_CONNECTED_DRIVE
country: COUNTRY_BMW_CONNECTED_DRIVE
```
{% configuration %}
bmw_connected_drive:
description: configuration
required: true
type: map
keys:
name:
description: Name of your account in Home Assistant.
required: true
type: string
username:
description: Your BMW Connected Drive username.
required: true
type: string
password:
description: Your BMW Connected Drive password.
required: true
type: string
country:
description: "The country of your Connected Drive account. Please use the exact names for the country as listed on the [Connected Drive website](https://www.bmw-connecteddrive.com/)."
required: true
type: string
{% endconfiguration %}
## {% linkable_title Disclaimer %}
This software is not affiliated with or endorsed by BMW Group.

View File

@ -0,0 +1,18 @@
---
layout: page
title: "August Camera"
description: "Instructions on how to integrate your August devices into Home Assistant."
date: 2018-02-17 22:00
sidebar: true
comments: false
sharing: true
footer: true
logo: august.png
ha_category: Camera
ha_release: "0.64"
ha_iot_class: "Cloud Polling"
---
The `august` camera platform allows you to view the latest camera image (triggered by motion) by your [August](http://august.com) device in Home Assistant.
To add `august` camera to your installation, follow instructions in [August component](/components/august/).

View File

@ -33,4 +33,15 @@ Configuration variables:
- **port** (*Optional*): The port for the camera. This defaults to 5000
- **extra_arguments** (*Optional*): Extra options to pass to `ffmpeg`, e.g. image quality or video filter options. More details in [FFmpeg component](/components/ffmpeg).
### {% linkable_title Service `camera.onvif_ptz` %}
If your ONVIF camera supports PTZ, you will be able to pan, tilt or zoom your camera.
| Service data attribute | Description |
| -----------------------| ----------- |
| `entity_id` | String or list of strings that point at `entity_id`s of cameras. Else targets all.
| `tilt` | Tilt direction. Allowed values: `UP`, `DOWN`
| `pan` | Pan direction. Allowed values: `RIGHT`, `LEFT`
| `zoom` | Zoom. Allowed values: `ZOOM_IN`, `ZOOM_OUT`
If you are running into trouble with this sensor, please refer to the [Troubleshooting section](/components/ffmpeg/#troubleshooting).

View File

@ -75,10 +75,15 @@ Set attribute of device in Deconz using [Rest API](http://dresden-elektronik.git
| Service data attribute | Optional | Description |
|-----------|----------|-------------|
| `field` | No | String representing a specific device in deCONZ. |
| `entity` | No | String representing a specific HASS entity of a device in deCONZ. |
| `data` | No | Data is a JSON object with what data you want to alter. |
Field and entity are exclusive, i.e you can only use one in a request.
{ "field": "/lights/1", "data": {"name": "light2"} }
{ "entity": "light.light1", "data": {"name": "light2"} }
{ "field": "/config", "data": {"permitjoin": 60} }
## {% linkable_title Remote control devices%}

View File

@ -0,0 +1,20 @@
---
layout: page
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
sharing: true
footer: true
logo: bmw.png
ha_category: Presence Detection
ha_release: 0.64
---
The `bmw_connected_drive` platform allows you to import data on your BMW into Home Assistant.
The device tracker platform will be automatically configured if the `bmw_connected_drive` component is configured.
For more configuration information see the [`bmw_connected_drive` component](/components/bmw_connected_drive/) documentation.

View File

@ -20,8 +20,12 @@ To use this device tracker in your installation, add the following to your `conf
# Example configuration.yaml entry
device_tracker:
- platform: unifi
username: USERNAME
password: PASSWORD
host: unifi
username: username
password: password
ssid_filter:
- 'HomeSSID'
- 'IoTSSID'
```
{% configuration %}
@ -56,8 +60,14 @@ verify_ssl:
detection_time:
description: How long since the last seen time before the device is marked away, specified in seconds.
type: int
required: optional
required: false
default: 300
ssid_filter:
description: Filter the SSIDs that tracking will occur on.
type: list of strings
required: false
default: None
{% endconfiguration %}
See the [device tracker component page](/components/device_tracker/) for instructions how to configure the people to be tracked.

View File

@ -44,6 +44,7 @@ google_assistant:
type: light
light.living_room:
expose: false
room: living room
```
Configuration variables:
@ -105,6 +106,10 @@ entity_config:
description: Override how Google Assistant interprets the domain of the entity. For example, set to `light` for a switch entity to have it be handled as a light.
required: false
type: string
room:
description: Allows for associating this device to a Room in Google Assistant. This is currently non-functional, but will be enabled in the near future.
required: false
type: string
{% endconfiguration %}
### {% linkable_title Available domains %}

View File

@ -0,0 +1,63 @@
---
layout: page
title: "HomeKit"
description: "Instructions how to setup the HomeKit component in Home Assistant."
date: 2018-02-20 17:30
sidebar: true
comments: false
sharing: true
footer: true
ha_category: Voice
ha_release: 0.64
logo: apple-homekit.png
---
The `HomeKit` component allows you to forward entities from Home Assistant to Apple `HomeKit`, so they could be controlled from Apple `Home` app and `Siri`.
{% configuration %}
homekit:
description: HomeKit configuration.
required: true
type: map
keys:
pincode:
description: Pin code required during setup of HomeKit Home Assistant accessory. The format needs to be 'XXX-XX-XXX' where X is a number between 1 and 9.
required: false
type: string
default: '"123-45-678"'
port:
description: Port for the HomeKit extension.
required: false
type: int
default: 51826
{% endconfiguration %}
## {% linkable_title Setup %}
To enable the `HomeKit` component in Home Assistant, add the following to your configuration file:
```yaml
# Example for HomeKit setup
homekit:
pincode: '123-45-678'
```
<p class='note'>It is not recommended to choose '123-45-678' as your pin code!</p>
After Home Assistant has started, all supported entities (see the [list](#supported-components) below which components are already integrated) will be exposed to `HomeKit`. To add them:
1. Open the `Home` App.
2. Choose `Add Accessory` and then `Don't Have a Code or Can't Scan?`.
3. The `Home Assistant` Bridge should be listed there. Select it and follow the instructions to complete setup.
After the setup is completed you should be able to control your Home Assistant components through `Home` and `Siri`.
## {% linkable_title Supported Components %}
The following components are currently supported:
| Component | Type Name | Description |
| --------- | --------- | ----------- |
| cover | Window | All covers that support `set_cover_position`. |
| sensor | TemperatureSensor | All sensors that have `Celsius` as their `unit_of_measurement`. |
<p class='note'>Currently only devices that are setup when Home Assistant is starting can be exposed to `HomeKit`. This means that especially `Z-Wave` components are currently not supported, since they will be setup afterwards. We are working on a solution for this problem.</p>

View File

@ -13,7 +13,6 @@ ha_iot_class: "Local Push"
featured: false
---
The [Homematic](http://www.homematic.com/) component provides bi-directional communication with your CCU/Homegear. It uses a XML-RPC connection to set values on devices and subscribes to receive events the devices and the CCU emit.
If you are using Homegear with paired [Intertechno](http://intertechno.at/) devices, uni-directional communication is possible as well.
@ -22,7 +21,7 @@ Device support is available for most of the wired and wireless devices, as well
If you want to see if a specific device you have is supported, head over to the [pyhomematic](https://github.com/danielperna84/pyhomematic/tree/master/pyhomematic/devicetypes) repository and browse through the source code. A dictionary with the device identifiers (e.g. HM-Sec-SC-2) can be found within the relevant modules near the bottom. If your device is not supported, feel free to contribute.
We automatically detect all devices we currently support and try to generate useful names. If you enable name-resolving, we try to fetch names from Metadata (Homegear), via JSON-RPC or the XML-API you may have installed on your CCU. Since this may fail this is disabled by default.
You can manually rename the created entities by using Home Assistants [Customizing](https://home-assistant.io/getting-started/customizing-devices/) feature. With it you are also able to hide entities you don't want to see in the UI.
You can manually rename the created entities by using Home Assistant's [Customizing](/docs/configuration/customizing-devices/) feature. With it you are also able to hide entities you don't want to see in the UI.
To set up the component, add the following information to your `configuration.yaml` file:
@ -161,6 +160,16 @@ automation:
The channel parameter is equal to the channel of the button you are configuring the automation for. You can view the available channels in the UI you use to pair your devices.
The name depends on if you chose to resolve names or not. If not, it will be the device ID (e.g. LEQ1234657). If you chose to resolve names (and that is successful), it will be the name you have set in your CCU or in the metadata (e.g. "Kitchen Switch").
You can test whether your button works within Home Assistant if you look at the terminal output. When pressing a button, lines similar to those should appear:
```bash
2018-01-27 11:51:32 INFO (Thread-12) [pyhomematic.devicetypes.generic] HMGeneric.event: address=MEQ1234567:6, interface_id=homeassistant-CCU2, key=PRESS_SHORT, value=True
2018-01-27 11:51:32 INFO (MainThread) [homeassistant.core] Bus:Handling <Event homematic.keypress[L]: param=PRESS_SHORT, name=your_nice_name, channel=6>
2018-01-27 11:51:32 INFO (Thread-12) [pyhomematic.devicetypes.generic] HMGeneric.event: address=MEQ1234567:6, interface_id=homeassistant-CCU2, key=INSTALL_TEST, value=True
```
It may happen that "your_nice_name" is not resolved correctly; the according message (#2 in the above example) will be missing. This might be due to secure communication between your HM interface and the HM device. You can change the communication from "secure" to "standard" within your HM-interface to solve that issue (in "Einstellungen" - "Geräte" find your device and change "Übertragungsmodus" from secure to standard) - not recommended for devices that should have secure communication.
### {% linkable_title Services %}
* *homematic.virtualkey*: Simulate a keypress (or other valid action) on CCU/Homegear with device or virtual keys.

View File

@ -18,7 +18,7 @@ ha_release: pre 0.7
### {% linkable_title Setup %}
Before configuring Home Assistant, make sure you can control your bulbs or LEDs with the MiLight mobile application. Discover your bridge(s) IP address. You can do this via your router or a mobile application like Fing ([android](https://play.google.com/store/apps/details?id=com.overlook.android.fing&hl=en) or [iTunes](https://itunes.apple.com/us/app/fing-network-scanner/id430921107?mt=8)). Keep in mind that LimitlessLED bulbs are controlled via groups. You can not control an individual bulb via the bridge, unless it is in a group by itself. Note that you can assign an `rgbw`, `rgbww` and `white` group to the same group number, effectively allowing 12 groups (4 `rgbww`, 4 `rgbw` and 4 `white`) per bridge.
Before configuring Home Assistant, make sure you can control your bulbs or LEDs with the MiLight mobile application. Discover your bridge(s) IP address. You can do this via your router or a mobile application like Fing ([android](https://play.google.com/store/apps/details?id=com.overlook.android.fing&hl=en) or [iTunes](https://itunes.apple.com/us/app/fing-network-scanner/id430921107?mt=8)). Keep in mind that LimitlessLED bulbs are controlled via groups. You can not control an individual bulb via the bridge, unless it is in a group by itself. Note that you can assign an `rgbw`, `rgbww`, `white` and `dimmer` group to the same group number, effectively allowing 16 groups (4 `rgbww`, 4 `rgbw`, 4 `white` and 4 `dimmer`) per bridge.
To add `limitlessled` to your installation, add the following to your `configuration.yaml` file:
@ -38,6 +38,9 @@ light:
type: rgbw
name: Kitchen
fade: on
- number: 4
type: dimmer
name: Livingroom
- host: 192.168.1.11
groups:
- number: 1
@ -56,7 +59,7 @@ Configuration variables:
- **groups** array (*Required*): The list of available groups.
- **number** (*Required*): Group number (`1`-`4`). Corresponds to the group number on the remote. These numbers may overlap only if the type is different.
- **name** (*Required*): Any name you'd like. Must be unique among all configured groups.
- **type** (*Optional*): Type of group. Choose either `rgbww`, `rgbw`, `white`, or `bridge-led`. `rgbw` is the default if you don't specify this entry. Use `bridge-led` to control the built-in LED of newer WiFi bridges.
- **type** (*Optional*): Type of group. Choose either `rgbww`, `rgbw`, `white`, `bridge-led` or `dimmer`. `rgbw` is the default if you don't specify this entry. Use `bridge-led` to control the built-in LED of newer WiFi bridges.
- **fade** (*Optional*): Fade behavior. Defaults to `off`. If turned on, the group is faded out before being turned off. This makes for a more pleasing transition at the expense of wall switch usability, since the light will turn back on at the lowest brightness if it is power cycled.
### {% linkable_title Properties %}
@ -74,9 +77,16 @@ Refer to the [light]({{site_root}}/components/light/) documentation for general
- When using a legacy WiFi bridge (before v6), you can observe on the MiLight mobile application, you can not select a specific brightness or temperature - you can only step each property up or down. There is no indication of which step you are on. This restriction, combined with the unreliable nature of LimitlessLED transmissions, means that setting white bulb properties is done on a best-effort basis. The only very reliable settings are the minimum and maximum of each property.
- *Temperature*: Wifi bridge v6 supports 101 temperature steps; older versions only 10.
- *Brightness*: Wifi bridge v6 supports 101 brightness steps; older versions only 10.
- **Dimmer** (Only supported on v6 bridges)
- This type is for a single color LED dimmer like the 1CH MiLight dimmer module or similar. This type is only supported by the version 6 Wifi bridges.
- *Brightness*: Wifi bridge v6 supports 101 brightness steps.
- **Transitions**
- If a transition time is set, the group will transition between the current settings and the target settings for the duration specified. Transitions from or to white are not possible - the color will change immediately.
### {% linkable_title Initialization & Synchronization %}
When starting Home Assistant, your LimitlessLED bulbs will be set to known default values. This ensures a consistent user interface and uninterrupted turning on/off. If you control your LimitlessLED lights via the MiLight mobile application or other means while Home Assistant is running, Home Assistant can not track those changes and you may observe unexpected behavior. This is due to a LimitlessLED limitation.
When starting Home Assistant, the last recorded state will be shown. This might no longer match the actual state of the bulbs.
If you control your LimitlessLED lights via the MiLight mobile application or other means while Home Assistant is running, Home Assistant can not track those changes and you may observe obsolete information.
This lack of synchronization is due to a LimitlessLED limitation.

View File

@ -120,7 +120,7 @@ rgb_command_topic:
required: false
type: string
rgb_state_topic:
description: The MQTT topic subscribed to receive RGB state updates.
description: The MQTT topic subscribed to receive RGB state updates. The expected payload is the RGB values separated by commas, for example `255,0,127`.
required: false
type: string
rgb_value_template:
@ -233,10 +233,10 @@ To enable a light with brightness (no RGB version) in your installation, add the
light:
- platform: mqtt
name: "Office light"
state_topic: "office/rgb1/light/status"
command_topic: "office/rgb1/light/switch"
brightness_state_topic: 'office/rgb1/light/brightness'
brightness_command_topic: 'office/rgb1/light/brightness/set'
state_topic: "office/light/status"
command_topic: "office/light/switch"
brightness_state_topic: 'office/light/brightness'
brightness_command_topic: 'office/light/brightness/set'
qos: 0
payload_on: "ON"
payload_off: "OFF"
@ -255,8 +255,8 @@ light:
state_topic: "office/light/status"
command_topic: "office/light/switch"
payload_off: "OFF"
brightness_state_topic: 'office/rgb1/light/brightness'
brightness_command_topic: 'office/rgb1/light/brightness/set'
brightness_state_topic: 'office/light/brightness'
brightness_command_topic: 'office/light/brightness/set'
on_command_type: 'brightness'
```

View File

@ -0,0 +1,18 @@
---
layout: page
title: "August Lock"
description: "Instructions on how to integrate your August devices into Home Assistant."
date: 2018-02-17 22:00
sidebar: true
comments: false
sharing: true
footer: true
logo: august.png
ha_category: Lock
ha_release: "0.64"
ha_iot_class: "Cloud Polling"
---
The `august` lock platform allows you to control your [August](http://august.com) lock from within Home Assistant.
To add `august` lock to your installation, follow instructions in [August component](/components/august/).

View File

@ -26,8 +26,8 @@ Configuration variables:
- **entities** (*Optional*): The list of entity ids to be excluded from creating logbook entries.
- **domains** (*Optional*): The list of domains to be excluded from creating logbook entries.
- **include** (*Optional*): Configure which components should create logbook entries.
- **entities** (*Optional*): The list of entity ids to be included from creating logbook entries.
- **domains** (*Optional*): The list of domains to be included from creating logbook entries.
- **entities** (*Optional*): The list of entity ids to be included in creating logbook entries.
- **domains** (*Optional*): The list of domains to be included in creating logbook entries.
If you want to exclude messages of some entities or domains from the logbook just add the `exclude` parameter like:

View File

@ -46,3 +46,37 @@ media_player:
port: 11000
- host: 192.168.1.131
```
### {% linkable_title Service `bluesound_join` %}
Group players together under a single master speaker. That will make a new group or join to exists group.
| Service data attribute | Optional | Description |
| ---------------------- | -------- | ----------- |
| `master` | no | A single `entity_id` that will become/hold the master speaker.
| `entity_id` | no | String or list of a single `entity_id` that will group to master speaker.
### {% linkable_title Service `bluesound_unjoin` %}
Remove one or more speakers from a group of speakers. If no `entity_id` is provided, all speakers are unjoined.
| Service data attribute | Optional | Description |
| ---------------------- | -------- | ----------- |
| `entity_id` | yes | String or list of `entity_id`s that will be separated from their master speaker.
### {% linkable_title Service `bluesound_set_sleep_timer` %}
Sets a timer that will turn off the speaker. For each time you call this it will increase the time by one step. The steps are (in minutes): 15, 30, 45, 60, 90, 0.
If you increase an ongoing timer of for example 13 minutes, it will increase it to 15. If the timer is set to 90, it will remove the time (hence the 0).
| Service data attribute | Optional | Description |
| ---------------------- | -------- | ----------- |
| `entity_id` | no | String or list of `entity_id`s that will have their timers set.
### {% linkable_title Service `bluesound_clear_sleep_timer` %}
Clear the sleep timer on a speaker, if one is set.
| Service data attribute | Optional | Description |
| ---------------------- | -------- | ----------- |
| `entity_id` | no | String or list of `entity_id`s that will have their timers cleared.

View File

@ -51,6 +51,23 @@ In most cases (single STB) you just need to setup the *platform* and discovery w
If the STB is on the same network segment as Home Assistant, it can determine whether the device is turned on or off. Without this, the component will fail to determine the Set-top box status, and you are required to add the *optimistic* configuration variable.
## {% linkable_title Examples %}
### {% linkable_title Example `press_button` script %}
The `play_media` function can be used in scripts to change channels.
```yaml
# Example play_media script
#
press_button:
sequence:
service: media_player.play_media
data_template:
entity_id: media_player.mediaroom_stb
media_content_id: "{{ value }}"
media_content_type: "channel"
### {% linkable_title Example configuration with 2 STB %}
```yaml

View File

@ -0,0 +1,51 @@
---
layout: page
title: "Xiaomi TV"
description: "Instructions on how to integrate a Xiaomi TV into Home Assistant."
date: 2018-02-12 19:00
sidebar: true
comments: false
sharing: true
footer: true
logo: xiaomi.png
ha_category: Media Player
ha_release: 0.64
ha_iot_class: "Assumed State"
---
The `xiaomi_tv` platform allows you to control a [Xiaomi TV](http://www.mi.com/en/mitv3s/65flat/).
You need to make sure the TV is connected to the internet, and that your Home Assistant instance is on the same network.
To add a TV to your installation, add the following to your `configuration.yaml` file:
```yaml
# Example configuration.yaml entry
media_player:
- platform: xiaomi_tv
```
<p class='note warning'>
When starting or restarting Home Assistant make sure your TV is off. This is a flaw in the TV itself.
</p>
Configuration variables:
- **host** (*Optional*): The IP of the Xiaomi TV, eg. 192.168.0.10
- **name** (*Optional*): The name to use on the frontend. Default is 'Xiaomi TV'.
If you do not set a host in the configuration file, local TVs will automatically be discovered.
To manually add a TV you can use the following configuration:
```yaml
# Example configuration.yaml entry
media_player:
- platform: xiaomi_tv
host: YOUR_TV_IP
name: YOUR_TV_NAME
```
<p class='note info'>
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.
</p>

View File

@ -33,6 +33,10 @@ subscribe_topic:
description: Topic to receive events from the remote server.
required: false
type: string
ignore_event:
description: Ignore sending these [events](/docs/configuration/events/) over mqtt.
required: false
type: list
{% endconfiguration %}
## {% linkable_title Multiple Instances %}
@ -44,6 +48,9 @@ Events from multiple instances can be aggregated to a single master instance by
mqtt_eventstream:
publish_topic: master/topic
subscribe_topic: slaves/#
ignore_event:
- call_service
- state_changed
```
For a multiple instance setup, each slave would publish to their own topic.

View File

@ -38,9 +38,10 @@ recorder:
purge_keep_days:
description: Specify the number of history days to keep in recorder database after a purge.
required: false
default: 10
type: int
purge_interval:
description: How often (in days) the purge task runs. If a scheduled purge is missed (e.g., if Home Assistant was not running), the schedule will resume soon after Home Assistant restarts. You can use the [service](#service-purge) call `purge` when required without impacting the purge schedule.
description: How often (in days) the purge task runs. If a scheduled purge is missed (e.g., if Home Assistant was not running), the schedule will resume soon after Home Assistant restarts. You can use the [service](#service-purge) call `purge` when required without impacting the purge schedule. If this is set to `0` (zero), automatic purging is disabled.
required: false
default: 1
type: int
@ -122,16 +123,12 @@ If you only want to hide events from e.g. your history, take a look at the [`his
### {% linkable_title Service `purge` %}
Call the service `recorder.purge` to start purge task, which deletes events and states older than x days, according to `keep_days` service data (*Required*)
Call the service `recorder.purge` to start a purge task which deletes events and states older than x days, according to `keep_days` service data.
Automation [action](https://home-assistant.io/getting-started/automation-action/) example:
```yaml
action:
service: recorder.purge
data:
keep_days: 5
```
| Service data attribute | Optional | Description |
| ---------------------- | -------- | ----------- |
| `keep_days` | yes | The number of history days to keep in recorder database (defaults to the component `purge_keep_days` configuration)
| `repack` | yes | Rewrite the entire database, possibly saving some disk space (only supported for SQLite)
### {% linkable_title Restore State %}

View File

@ -0,0 +1,17 @@
---
layout: page
title: "Tahoma Scene"
description: "Instructions how to integrate Tahoma scenes into Home Assistant."
date: 2018-02-18 12:00
sidebar: true
comments: false
sharing: true
footer: true
logo: tahoma.png
ha_category: Scene
ha_release: 0.64
---
The `tahoma` scene platform lets you trigger scenes added to your Tahoma Box in Home Assistant.
Scenes will be added automatically. Please refer to the [component](/components/tahoma/) configuration on how to setup Tahoma.

View File

@ -14,7 +14,7 @@ featured: false
ha_release: "0.60"
---
The `alpha_vantage` sensor platform uses [Alpha Vantage](https://www.alphavantage.co) to monitor the stock market.
The `alpha_vantage` sensor platform uses [Alpha Vantage](https://www.alphavantage.co) to monitor the stock market. This platform also provides detail about exchange rates.
To enable the `alpha_vantage` platform, add the following lines to your `configuration.yaml` file:
@ -23,8 +23,17 @@ To enable the `alpha_vantage` platform, add the following lines to your `configu
sensor:
- platform: alpha_vantage
api_key: YOUR_API_KEY
symbols:
- symbol: GOOGL
name: Google
foreign_exchange:
- name: USD_EUR
from: USD
to: EUR
```
Either a symbol or a foreign exchange must be configured, otherwise you will not get any data.
{% configuration %}
api_key:
description: "The API Key from [Alpha Vantage](https://www.alphavantage.co)."
@ -33,7 +42,6 @@ api_key:
symbols:
description: List of stock market symbols for given companies.
required: false
default: GOOGL
type: map
keys:
name:

View File

@ -0,0 +1,20 @@
---
layout: page
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
sharing: true
footer: true
logo: bmw.png
ha_category: Sensor
ha_release: 0.64
---
The `bmw_connected_drive` platform allows you to import data on your BMW into Home Assistant.
The sensors will be automatically configured if the `bmw_connected_drive` component is configured.
For more configuration information see the [`bmw_connected_drive` component](/components/bmw_connected_drive/) documentation.

View File

@ -0,0 +1,31 @@
---
layout: page
title: "File size sensor"
description: "Component for monitoring the size of a file."
date: 2018-02-06 14:00
sidebar: true
comments: false
sharing: true
footer: true
logo: file.png
ha_category: Sensor
ha_iot_class: "Local Polling"
ha_release: 0.64
---
Component for displaying the size of a file. Note that paths must be added to [whitelist_external_dirs](https://home-assistant.io/docs/configuration/basic/).
Add to your config:
```yaml
sensor:
- platform: filesize
file_paths:
- /config/home-assistant_v2.db
```
{% configuration %}
file_paths:
description: The absolute path to the file.
required: true
type: list of strings
{% endconfiguration %}

View File

@ -0,0 +1,36 @@
---
layout: page
title: "Folder sensor"
description: "Sensor for monitoring the contents of a folder."
date: 2018-02-21 14:00
sidebar: true
comments: false
sharing: true
footer: true
logo: file.png
ha_category: Sensor
ha_iot_class: "Local Polling"
ha_release: 0.64
---
Sensor for monitoring the contents of a folder. Note that folder paths must be added to [whitelist_external_dirs](https://home-assistant.io/docs/configuration/basic/). Optionally a [wildcard filter]((http://tldp.org/LDP/GNU-Linux-Tools-Summary/html/x11655.htm)) can be applied to the files considered within the folder. The state of the sensor is the size in MB of files within the folder that meet the filter criteria. The number of filtered files in the folder and total size in bytes of those files are exposed as attributes.
To enable the `folder` sensor in your installation, add the following to your `configuration.yaml` file:
```yaml
sensor:
- platform: folder
folder: /config
```
{% configuration %}
folder:
description: The folder path
required: true
type: string
filter:
description: Filter to apply
required: false
default: "`*`"
type: string
{% endconfiguration %}

View File

@ -0,0 +1,19 @@
---
layout: page
title: "Smappee Sensor"
description: "Instructions how to integrate Smappee energy monitor into Home Assistant."
date: 2018-01-06 16:15
sidebar: true
comments: false
sharing: true
footer: true
logo: smappee.png
ha_release: "0.62"
ha_category: Sensor
---
[Smappee](https://www.smappee.com/) controller for energy monitoring and Comport plug switches.
Energy monitor measurements will be automatically added when you connect to the Smappee controller.
For more configuration information see the [Smappee component](/components/smappee/) documentation.

View File

@ -0,0 +1,60 @@
---
layout: page
title: "Spot Crime"
description: "Instructions on how to integrate spotcrime.com into Home Assistant."
date: 2018-02-16 9:30
sidebar: true
comments: false
sharing: true
footer: true
ha_category: Sensor
ha_release: 0.64
ha_iot_class: "Cloud Polling"
---
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.
## Configuration
To enable this sensor, add the following lines to your `configuration.yaml`. Your `radius` should be of sufficient size to capture incidents in your area. 0.01 = 1 mile.
```yaml
sensor:
- platform: spotcrime
name: <any name>
radius: <your radius>
days: <your days>
```
Configuration options for the Crime Reports Sensor:
- **name** (*Required*): Name the sensor whatever you want.
- **radius** (*Required*): Radius in meters.
- **days** (*Optional*): Defaults to 1 day.
- **latitude** (*Optional*): Defaults to your home zone latitude.
- **longitude** (*Optional*): Defaults to your home zone longitude.
- **include** (*Optional*): List of incident types to include.
- **exclude** (*Optional*): List of incident types to exclude.
## Notes
### Incident Types
You can explicitly include or exclude incident types. Specifying `include`s restricts the incidents to those types. Specifying `exclude`s will return all incident types except those specified.
These incident types are available:
- Arrest
- Arson
- Assault
- Burglary
- Robbery
- Shooting
- Theft
- Vandalism
- Other
### Events
The `crimealerts` sensor fires a `crimealerts_incident` event when a new incident is detected, including the type, time, and location of the incident.

View File

@ -0,0 +1,84 @@
---
layout: page
title: "Start.ca"
description: "Instructions on how to integrate Start.ca data usage within Home Assistant."
date: 2018-02-12 00:00
sidebar: true
comments: false
sharing: true
footer: true
logo: startca.png
ha_category: Sensor
ha_release: 0.64
ha_iot_class: "Cloud Polling"
---
Integrate your [Start.ca](https://www.start.ca/) account information into Home Assistant.
You can get your API key from:
[Start.ca Usage API](https://www.start.ca/support/usage/api)
To use your Start.ca sensor in your installation, add the following to your `configuration.yaml` file:
```yaml
# Example configuration.yaml entry
sensor:
- platform: startca
api_key: API_KEY
total_bandwidth: 400
monitored_variables:
- usage
- usage_gb
- limit
- used_download
- used_upload
- used_total
- grace_download
- grace_upload
- grace_total
- total_download
- total_upload
- used_remaining
```
{% configuration %}
api_key:
description: The Start.ca API key to access the service.
required: true
type: string
total_bandwidth:
description: Your bandwidth limit in gigabytes. Set to `0` for unlimited plans without a cap.
required: true
type: string
monitored_conditions:
description: Conditions to display in the frontend.
required: true
type: list
keys:
usage:
description: Bandwidth usage (percentage).
usage_gb:
description: Bandwidth usage (gigabytes).
limit:
description: Monthly bandwidth limit (gigabytes).
used_download:
description: Bandwidth used by download outside the grace period (gigabytes).
used_upload:
description: Bandwidth used by upload outside the grace period (gigabytes).
used_total:
description: Total bandwidth (download and upload sum calculation) used outside the grace period (gigabytes).
grace_download:
description: Bandwidth used by download during the grace period (gigabytes).
grace_upload:
description: Bandwidth used by upload during the grace period (gigabytes).
grace_total:
description: Total bandwidth (download and upload sum calculation) used during the unlimited period (gigabytes).
total_download:
description: Total bandwidth download (Grace + Used) (gigabytes).
total_download:
description: Total bandwidth upload (Grace + Used) (gigabytes).
used_remaining:
description: Remaining bandwidth calucated from used and supplied total bandwidth (gigabytes).
{% endconfiguration %}

View File

@ -15,8 +15,7 @@ ha_iot_class: "Cloud Polling"
Integrate your [TekSavvy](https://myaccount.teksavvy.com/) account information into Home Assistant.
You can get your API key from
https://myaccount.teksavvy.com/ApiKey/ApiKeyManagement
You can get your API key from [TekSavvy My Account](https://myaccount.teksavvy.com/ApiKey/ApiKeyManagement).
To use your TekSavvy sensor in your installation, add the following to your `configuration.yaml` file:
@ -45,7 +44,7 @@ api_key:
required: true
type: string
total_bandwidth:
description: Your bandwidth limit in gigabytes.
description: Your bandwidth limit in gigabytes. Set to `0` for unlimited plans without a cap.
required: true
type: string
monitored_conditions:

View File

@ -45,6 +45,10 @@ sensor:
description: Name to use in the frontend.
required: false
type: string
friendly_name_template:
description: Defines a template for the name to be used in the frontend (this overrides friendly_name).
required: false
type: template
entity_id:
description: A list of entity IDs so the sensor only reacts to state changes of these entities. This can be used if the automatic analysis fails to find all relevant entities.
required: false
@ -244,3 +248,45 @@ sensor:
{% endif %}
```
{% endraw %}
### {% linkable_title Change the Friendly Name Used in the Frontend %}
This example shows how to change the `friendly_name` based on a date.
Explanation: we add a multiple of 86400 seconds (= 1 day) to the current unix timestamp to get a future date.
{% raw %}
```yaml
sensor:
- platform: template
sensors:
forecast_1_day_ahead:
friendly_name_template: >-
{%- set date = as_timestamp(now()) + (1 * 86400 ) -%}
{{ date|timestamp_custom("Tomorrow (%-m/%-d)") }}
value_template: "{{ sensor.darksky_weather_forecast_1 }}"
forecast_2_days_ahead:
friendly_name_template: >-
{%- set date = as_timestamp(now()) + (2 * 86400 ) -%}
{{ date|timestamp_custom("%A (%-m/%-d)") }}
value_template: "{{ sensor.darksky_weather_forecast_2 }}"
```
{% endraw %}
This example shows how to change the `friendly_name` based on a state.
{% raw %}
```yaml
sensor:
- platform: template
sensors:
net_power:
friendly_name_template: >-
{% if states('sensor.power_consumption')|float < 0 %}
Power Consumption
{% else %}
Power Production
{% end %}
value_template: "{{ states('sensor.power_consumption') }}"
unit_of_measurement: 'kW'
```
{% endraw %}

View File

@ -0,0 +1,59 @@
---
layout: page
title: "Smappee"
description: "Instructions how to setup Smappee within Home Assistant."
date: 2018-01-06 16:15
sidebar: true
comments: false
sharing: true
footer: true
logo: smappee.png
ha_release: "0.62"
ha_category: Hub
---
[Smappee](https://www.smappee.com/) controller for energy monitoring and Comport plug switches.
Switches and Sensors are supported - and will be automatically added when you connect to the Smappee controller.
The smappee component gets information from [Smappee API](https://smappee.atlassian.net/wiki/display/DEVAPI/API+Methods) using the [smappy](https://github.com/EnergieID/smappy) pypy module
<p class='note'>
Info on how to get api access is described in the [smappy wiki](https://github.com/EnergieID/smappy/wiki)
</p>
# Configuration
```yaml
# Example configuration.yaml entry
smappee:
host: 10.0.0.5
client_id: YOUR_CLIENT_ID
client_secret: YOUR_CLIENT_SECRET
username: YOUR_MYSMAPPEE_USERNAME
password: YOUR_MYSMAPPEE_PASSWORD
```
```yaml
# Minimal example configuration.yaml entry
smappee:
host: 10.0.0.5
```
```yaml
# Cloud only example configuration.yaml entry
smappee:
client_id: YOUR_CLIENT_ID
client_secret: YOUR_CLIENT_SECRET
username: YOUR_MYSMAPPEE_USERNAME
password: YOUR_MYSMAPPEE_PASSWORD
```
Configuration variables:
- **host** (*Optional*): Your Local Smappee unit IP.
- **host_password** (*Optional*): Your Local Smappee password.
- **client_id** (*Optional*): Your Smappee API client_id.
- **client_secret** (*Optional*): Your Smappee API client_secret.
- **username** (*Optional*): Your My Smappee username.
- **password** (*Optional*): Your My Smappee password.

View File

@ -16,7 +16,9 @@ The `flux` switch platform will change the temperature of your lights similar to
The component will update your lights based on the time of day. It will only affect lights that are turned on and listed in the flux configuration.
During the day (in between `start time` and `sunset time`), it will fade the lights from the `start_colortemp` to the `sunset_colortemp`. After sunset (between `sunset_time` and `stop_time`), the lights will fade from the `sunset_colortemp` to the `stop_colortemp`. If the lights are still on after the `stop_time` it will continue to change the light to the `stop_colortemp` until the light is turned off. The fade effect is created by updating the lights every periodically.
During the day (in between `start time` and `sunset time`), it will fade the lights from the `start_colortemp` to the `sunset_colortemp`. After sunset (between `sunset_time` and `stop_time`), the lights will fade from the `sunset_colortemp` to the `stop_colortemp`. If the lights are still on after the `stop_time` it will continue to change the light to the `stop_colortemp` until the light is turned off. The fade effect is created by updating the lights periodically.
The color temperature is specified kelvin, and accepted values are between 1000 and 40000 kelvin. Lower values will seem more red, while higher will look more white.
If you want to update at variable intervals, you can leave the switch turned off and use automation rules that call the service `switch.<name>_update` whenever you want the lights updated, where `<name>` equals the `name:` property in the switch configuration.

View File

@ -0,0 +1,20 @@
---
layout: page
title: "Smappee Switch"
description: "Instructions how to integrate Smappee Comfort Plug into Home Assistant."
date: 2018-01-06 16:15
sidebar: true
comments: false
sharing: true
footer: true
logo: smappee.png
ha_release: "0.62"
ha_category: Switch
ha_iot_class: "Local Push"
---
[Smappee](https://www.smappee.com/) controller for energy monitoring and Comport plug switches.
Comport Plugs will be automatically added when you connect to the Smappee controller.
For more configuration information see the [Smappee component](/components/smappee/) documentation.

View File

@ -14,7 +14,7 @@ ha_iot_class: "Cloud Polling"
---
The `Tahoma` component platform is used as an interface to the [tahomalink.com](https://www.tahomalink.com) website. It adds actually covers and the sun sensor from tahoma platform.
The `Tahoma` component platform is used as an interface to the [tahomalink.com](https://www.tahomalink.com) website. It adds covers, scenes and a sun sensor from the Tahoma platform.
To use your Tahoma devices in your installation, add the following to your `configuration.yaml` file:

View File

@ -16,6 +16,35 @@ ha_iot_class: "Cloud Polling"
The `usps` platform allows one to track deliveries and inbound mail from the [US Postal Service (USPS)](https://www.usps.com/).
In addition to having a USPS account, you will need to complete the "Opt-In" process for packages by clicking "Get Started Now" on [this page](https://my.usps.com/mobileWeb/pages/intro/start.action). You must also "Opt-In" to [Informed Delivery](https://informeddelivery.usps.com/box/pages/intro/start.action) to see inbound mail.
## Prerequisites
This component 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.
<p class='note warning'>
If you are using a Raspberry Pi, you must use PhantomJS.
</p>
### 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.
<p class='note warning'>
Don't use apt-get to install PhantomJS. This version is not compatible.
</p>
### Chrome
Install Chrome 59 or greater (preferably the most recent). Install the latest [Chromedriver](https://sites.google.com/a/chromium.org/chromedriver/downloads). Ensure both executables are on your `PATH`. `google-chrome --version` and `chromedriver --version` should work and report the correct version.
OS-specific instructions:
- [Ubuntu 16](https://gist.github.com/ziadoz/3e8ab7e944d02fe872c3454d17af31a5) (Selenium server portion *not* necessary)
- [RHEL/Centos 7](https://stackoverflow.com/a/46686621)
If you use the Chrome option, specify `driver: chrome` in your `usps` configuration.
## Configuration
To enable this component, add the following lines to your `configuration.yaml`:
```yaml

View File

@ -33,7 +33,7 @@ automation:
### {% linkable_title Home Assistant trigger %}
Use this platform to trigger when Home Assistant starts up and shuts down.
Triggers when Home Assistant starts up or shuts down.
```yaml
automation:
@ -56,7 +56,7 @@ automation:
```
### {% linkable_title Numeric state trigger %}
On state change of a specified entity, attempts to parse the state as a number and triggers once if value is changing from above to below a threshold, or from below to above the given threshold.
Triggers when numeric value of an entity's state crosses a given threshold. On state change of a specified entity, attempts to parse the state as a number and triggers once if value is changing from above to below or from below to above the given threshold.
```yaml
automation:
@ -83,7 +83,7 @@ In the example above, a numeric_state that is 17.1-24.9 would fire this trigger.
### {% linkable_title State trigger %}
Triggers when the state of tracked entities change. If only entity_id given will match all state changes, even if only state attributes change.
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.
```yaml
automation:
@ -107,7 +107,7 @@ automation:
</p>
### {% linkable_title Sun trigger %}
Trigger when the sun is setting or rising. An optional time offset can be given to have it trigger for example 45 minutes before sunset, when dusk is setting in.
Triggers when the sun is setting or rising. An optional time offset can be given to have it trigger a set time before or after the sun event (i.e. 45 minutes before sunset, when dusk is setting in).
```yaml
automation:

View File

@ -8,6 +8,7 @@ comments: false
sharing: true
footer: true
redirect_from: /ecosystem/ios/
redirect_from: /components/ios/
---
The Home Assistant for iOS app offers a companion app for iOS which is deeply integrated into both Home Assistant and iOS. Its basic features include:

View File

@ -10,7 +10,7 @@ ha_category: Installation
---
This utility should have been installed as part of the Python 3.4 installation. Check if Python 3.4 is installed by running `python3 --version`. If it is not installed, [download it here](https://www.python.org/getit/).
This utility should have been installed as part of the Python 3 installation. Check if Python 3 is installed by running `python3 --version`. If it is not installed, [download it here](https://www.python.org/getit/).
If you are able to successfully run `python3 --version` but not `pip3`, install Home Assistant by running the following command instead:

View File

@ -0,0 +1,548 @@
---
layout: post
title: "0.64: Over 1000 integrations! New: HomeKit, BMW, August."
description: "Some great new integrations, some great new fixes, oooooh yeah."
date: 2018-02-26 00:01:00
date_formatted: "February 26, 2018"
author: Paulus Schoutsen
author_twitter: balloob
comments: true
categories: Release-Notes
og_image: /images/blog/2018-02-0.64/components.png
---
<a href='/components/#version/0.64'><img src='/images/blog/2018-02-0.64/components.png' style='border: 0;box-shadow: none;'></a>
🎉 1000 integrations, 1000 integrations, 1000 integrations! 🎉
That's right, Home Assistant 0.64 is here! In case you have missed our latest [Cloud update](https://home-assistant.io/blog/2018/02/19/cloud-update/), the Home Assistant Alexa skill is now live in all regions and we're working with Google in getting the Smart Home skill for Google Assistant approved. Exciting times!
In the meanwhile, some great new integrations have landed, including yet another car 🚗 This time it's BMW.
This is going to be the last release that supports Python 3.4. Starting with the next release, the minimum version required will be Python 3.5.3. [Learn more here.](https://home-assistant.io/blog/2017/10/06/deprecating-python-3.4-support/)
## {% linkable_title HomeKit %}
Native HomeKit support has arrived! Thanks to @cdce8p It is now possible to expose some devices over HomeKit to allow control via Siri and other things speaking the HomeKit protocol. Initial support has been added for temperature sensors and cover devices. Expect more devices to be added soon.
[Check the HomeKit docs][HomeKit docs]
## {% linkable_title Hass.io UI update %}
Some of you already noticed that your Hass.io panel looks a bit different since this morning: @pvizeli pressed the ~~red~~ green button and the new UI got live. The Hass.io team ([@frenck] [@pvizeli] [@ryanm101]) is doing a great job in adding new features (like partial or encrypted snapshots) to the Hass.io backend and fixing bugs. However, those features where only added to the command line tools but not to the frontend.
That's where [@c727] and [@ciotlosm] jumped in. They made new features accessible via the frontend and improved the overall navigation.
We know that some features are still missing or broken, we are fixing this right now! Check this [issue](https://github.com/home-assistant/home-assistant-polymer/issues/912) first before you report any issues related to the Hass.io panel, please.
## {% linkable_title Chart.js %}
The frontend is now rendering the graphs and charts using Chart.js thanks to the hard work by [@fanthos]. This means that you can now render all the charts without being connected to the internet!
## {% linkable_title August integration %}
Major new integration by [@snjoetw]: August locks and door bells! Lock and unlock from Home Assistant and detect when your doorbell is rung or senses motion. Awesome!
## {% linkable_title Cast bug fixes %}
[@OttoWinter] has crushed a bunch of bugs for our ChromeCast integration. Including that nasy Cast group discovery issue! He is working on some more improvements that should arrive soon, stay tuned. Awesome work Otto!
## {% linkable_title New Platforms %}
- Support for August doorbell ([@snjoetw] - [#11124]) ([august docs]) ([binary_sensor.august docs]) ([camera.august docs]) ([lock.august docs]) (new-platform)
- Add new component: BMW connected drive ([@ChristianKuehnel] - [#12277]) ([bmw_connected_drive docs]) ([device_tracker.bmw_connected_drive docs]) ([sensor.bmw_connected_drive docs]) (new-platform)
- Add New Sensor for ISP Start.ca ([@mikeodr] - [#12356]) ([sensor.startca docs]) (new-platform)
- Add the Xiaomi TV platform. ([@fattdev] - [#12359]) ([media_player.xiaomi_tv docs]) (new-platform)
- added smappee component ([@hmn] - [#11491]) ([smappee docs]) ([sensor.smappee docs]) ([switch.smappee docs]) (new-platform)
- Add support for HomeKit ([@cdce8p] - [#12488]) ([homekit docs]) (new-platform)
- Adds filesize component ([@robmarkcole] - [#12211]) ([sensor.filesize docs]) (new-platform)
- Adds folder sensor ([@robmarkcole] - [#12208]) ([sensor.folder docs]) (new-platform)
- Spotcrime ([@jcconnell] - [#12460]) ([sensor.spotcrime docs]) (new-platform)
- Add Tahoma scenes ([@bakedraccoon] - [#12498]) ([scene docs]) ([tahoma docs]) (new-platform)
## {% linkable_title If you need help... %}
...don't hesitate to use our very active [forums](https://community.home-assistant.io/) or join us for a little [chat](https://discord.gg/c5DvZ4e). The release notes have comments enabled but it's preferred if you use the former communication channels. Thanks.
## {% linkable_title Reporting Issues %}
Experiencing issues introduced by this release? Please report them in our [issue tracker](https://github.com/home-assistant/home-assistant/issues). Make sure to fill in all fields of the issue template.
<!--more-->
## {% linkable_title Breaking Changes %}
- Home Assistant now defaults to purge recorded history that is older than 10 days. If you want to keep your recorded data for longer than that, you must configure the number of days to retain _before starting 0.64 for the first time_, for example:
```yaml
recorder:
purge_keep_days: 30
```
If you want to keep the previous default of never deleting history, use this configuration:
```yaml
recorder:
purge_interval: 0
```
([@amelchio] - [#12271]) (breaking change)
- Show a persistent_notification if no symbols and no currencies are configured ([@ChristianKuehnel] - [#12252]) ([sensor.alpha_vantage docs]) (breaking change)
- Updated RainMachine unique IDs to play better with the entity registry. If RainMachine had been configured previously, new entries will be placed into the entity registry, causing there to be two of each program/zone defined. To address, simply alter the `entity_registry.yaml` as desired. ([@bachya] - [#12315]) ([switch.rainmachine docs]) (breaking change)
- Updated AirVisual unique IDs to play better with the entity registry. If AirVisual had been configured previously, new entries will be placed into the entity registry, causing there to be two of each sensor type defined. To address, simply alter the `entity_registry.yaml` as desired. ([@bachya] - [#12319]) ([sensor.airvisual docs]) (breaking change)
- Custom component devs only: voluptuous now requires default values for config keys to be valid values. ([@balloob] - [#12463]) (breaking change)
- Fixes `usps` platform. Dependency `myusps` now leverages Selenium webdriver to overcome login issues. This is a breaking change since the user must now have additional dependencies installed - either `google-chrome` and `chromedriver`, or `phantomjs`. There is a new config option `driver` that allows the user to specify their preference, though `phantomjs` is the default. Doc PR forthcoming that will outline choices and make suggestions based on user's OS.
([@happyleavesaoc] - [#12465]) ([usps docs]) (breaking change)
- LimitlessLED has been converted to assumed state. Will no longer turn the lights off when restarting Home Assistant. Will no longer revert changes made by other controllers. ([@amelchio] - [#12475]) ([light.limitlessled docs]) (breaking change)
## {% linkable_title All changes %}
- device_tracker.asuswrt: Clean up unused connection param ([@trisk] - [#12262]) ([device_tracker.asuswrt docs])
- Fix some rfxtrx devices with multiple sensors ([@neffs] - [#12264]) ([sensor.rfxtrx docs])
- have climate fallback to state if no ATTR_OPERATION_MODE (#12271) ([@ttroy50] - [#12279]) ([google_assistant docs])
- check_config check bootstrap errors ([@kellerza] - [#12291])
- Attempt fixing flakiness of check config test ([@balloob] - [#12283])
- Fix MQTT retained message not being re-dispatched ([@OttoWinter] - [#12004]) ([mqtt docs])
- Fix config error for FTP links, add test ([@ReneNulschDE] - [#12294]) ([weblink docs])
- Fix Panel_IFrame - FTP URL not allowed in 0.63 ([@ReneNulschDE] - [#12295]) ([panel_iframe docs])
- Upgrade pylint to 1.8.2 ([@OttoWinter] - [#12274])
- Move HassIntent handler code into helpers/intent ([@tschmidty69] - [#12181]) ([conversation docs])
- Migrated SABnzbd sensor to asyncio and switched to pypi library ([@jeradM] - [#12290]) ([sensor.sabnzbd docs])
- 📝 Fix fixture encoding ([@OttoWinter] - [#12296])
- Clarify tahoma errrors ([@bakedraccoon] - [#12307]) ([tahoma docs])
- add friendly_name_template to template sensor ([@NovapaX] - [#12268]) ([sensor.template docs])
- Purge recorder data by default ([@amelchio] - [#12271]) (breaking change)
- Protect bloomsky platform setup ([@balloob] - [#12316]) ([binary_sensor.bloomsky docs]) ([camera.bloomsky docs]) ([sensor.bloomsky docs])
- Removed default sensor configuration ([@ChristianKuehnel] - [#12252]) ([sensor.alpha_vantage docs]) (breaking change)
- Force LF line endings for Windows ([@kellerza] - [#12266])
- Updated RainMachine to play better with the entity registry ([@bachya] - [#12315]) ([switch.rainmachine docs]) (breaking change)
- Revert #12316 ([@balloob] - [#12329]) ([binary_sensor.bloomsky docs]) ([camera.bloomsky docs]) ([sensor.bloomsky docs])
- zha: Add remove service ([@rcloran] - [#11683]) ([zha docs])
- Fix line endings [skipci] ([@balloob] - [#12333])
- Unifi tracking filter by SSID ([@mikeodr] - [#12281]) ([device_tracker.unifi docs])
- device_tracker.asuswrt: Ignore unreachable ip neigh entries ([@trisk] - [#12201]) ([device_tracker.asuswrt docs])
- nmap_tracker: don't scan on setup ([@abmantis] - [#12322]) ([device_tracker.nmap_tracker docs])
- Upgrade Sphinx to 1.7.0 ([@fabaff] - [#12335])
- Mock Module + Platform default to async ([@balloob] - [#12347])
- Change Unifi SSID filtering to list comprehension ([@mikeodr] - [#12344]) ([device_tracker.unifi docs])
- Use the speedometer icon in the fastdotcom sensor ([@d0ugal] - [#12348]) ([sensor.fastdotcom docs])
- Communication reduced. Setting brightness and/or color temperature will turn on the device. ([@syssi] - [#12343]) ([light.xiaomi_miio docs])
- Add New Sensor for ISP Start.ca ([@mikeodr] - [#12356]) ([sensor.startca docs]) (new-platform)
- bump fedex version ([@happyleavesaoc] - [#12362]) ([sensor.fedex docs])
- Upgrade alpha_vantage to 1.9.0 ([@fabaff] - [#12352]) ([sensor.alpha_vantage docs])
- Eq3btsmart more reliable ([@karlkar] - [#11555]) ([climate.eq3btsmart docs])
- Allow disabling entities in the registry ([@balloob] - [#12360])
- Upgrade panasonic_viera to 0.3.1 ([@dgomes] - [#12370]) ([media_player.panasonic_viera docs])
- SMA sensor add SSL and upgrade to pysma 0.2 ([@kellerza] - [#12354]) ([sensor.sma docs])
- Specify algorithms for webpush jwt verification ([@balloob] - [#12378]) ([notify.html5 docs])
- Upgrade youtube_dl to 2018.02.11 ([@fabaff] - [#12383]) ([media_extractor docs])
- Remove usage of deprecated assert method ([@balloob] - [#12379])
- Add attributes (fixes #12332) ([@fabaff] - [#12377]) ([sensor.speedtest docs])
- Improve service by allowing to reference entity id instead of deconz id ([@Kane610] - [#11862]) ([deconz docs]) ([scene docs]) ([binary_sensor.deconz docs]) ([light.deconz docs]) ([sensor.deconz docs])
- Pollen.com: Entity Registry updates and cleanup ([@bachya] - [#12361]) ([sensor.pollen docs])
- Changed pyvera version to 0.2.41 ([@patrik3k] - [#12391]) ([vera docs])
- File Path fixes for RPi Camera ([@FrederikBolding] - [#12338]) ([camera.rpi_camera docs])
- Code cleanup of velux scene ([@Julius2342] - [#12390]) ([scene docs])
- Upgrade sphinx-autodoc-typehints to 1.2.5 ([@fabaff] - [#12404])
- Extract data validator to own file and add tests ([@balloob] - [#12401]) ([cloud docs]) ([conversation docs]) ([http docs]) ([shopping_list docs]) (new-platform)
- Fix MQTT payload decode returning prematurely ([@OttoWinter] - [#12420]) ([mqtt docs])
- Print every changed file on new line ([@cdce8p] - [#12412])
- Added support for colored KNX lights ([@Julius2342] - [#12411]) ([knx docs]) ([light.knx docs])
- Small code cleanup: ([@Julius2342] - [#12409]) ([scene docs])
- Cleanup of knx component ([@Julius2342] - [#12408]) ([knx docs]) ([binary_sensor.knx docs]) ([climate.knx docs]) ([cover.knx docs]) ([light.knx docs]) ([notify.knx docs]) ([sensor.knx docs]) ([switch.knx docs])
- Update the Tibber sensor at startup ([@danielhiversen] - [#12428]) ([sensor.tibber docs])
- zha: Add unique_id to entities ([@rcloran] - [#12331]) ([zha docs])
- Cleanup http ([@balloob] - [#12424]) ([frontend docs]) ([http docs])
- Update CODEOWNERS ([@dgomes] - [#12440])
- Fix: timeout data attribute now is parsed to float ([@sjvc] - [#12432]) ([telegram_bot docs])
- Stop mapping zigbee switches to lights & switches. ([@igorbernstein2] - [#12280]) ([zha docs])
- AirVisual: Entity Registry updates and cleanup ([@bachya] - [#12319]) ([sensor.airvisual docs]) (breaking change)
- Vagrant - sendfile python3.5 debian-stretch ([@tabakhase] - [#12454])
- Add effects to iGlo Lights ([@jesserockz] - [#12365]) ([light.iglo docs])
- Fake the state for a short period and skip the next update. ([@syssi] - [#12446]) ([fan.xiaomi_miio docs])
- Initial support for Config Entries ([@balloob] - [#12079])
- Make WUnderground async ([@OttoWinter] - [#12385]) ([sensor.wunderground docs])
- Add the Xiaomi TV platform. ([@fattdev] - [#12359]) ([media_player.xiaomi_tv docs]) (new-platform)
- Update voluputous ([@balloob] - [#12463]) (breaking change)
- Map Alexa StepVolume responses to volume_up/down ([@lucasweb78] - [#12467]) ([alexa docs])
- ONVIF Camera added Error handling and rtsp authentication. ([@matt2005] - [#11129]) ([camera.onvif docs])
- Bump aioautomatic to 0.6.5 for voluptuous 0.11 ([@armills] - [#12480]) ([device_tracker.automatic docs])
- Add example in test how to create list or object in template ([@balloob] - [#12469])
- KNX/Climate: Fixed platform schema min/max values. ([@Julius2342] - [#12477]) ([climate.knx docs])
- Prevent error when no internet or DNS is available ([@mjj4791] - [#12486]) ([sensor.buienradar docs]) ([weather.buienradar docs])
- Added doorbird_last_motion to DoorBird camera platform ([@sjvc] - [#12457]) ([camera.doorbird docs])
- Fail gracefully with unreachable LaMetric ([@PhilRW] - [#12451]) ([notify.lametric docs])
- Enable compression when sending json to client ([@elupus] - [#11165]) ([http docs])
- bump usps version ([@happyleavesaoc] - [#12465]) ([usps docs]) (breaking change)
- Try deflaking recorder tests ([@balloob] - [#12492])
- Support for August doorbell ([@snjoetw] - [#11124]) ([august docs]) ([binary_sensor.august docs]) ([camera.august docs]) ([lock.august docs]) (new-platform)
- Avoid warnings when purging an empty database ([@amelchio] - [#12494])
- Support for PTZ in Onvif cameras ([@karlkar] - [#11630]) ([camera.onvif docs])
- Rework Sonos media player platform ([@amelchio] - [#12126]) ([media_player.sonos docs])
- Converted shopping list to use json util and added default override for json util ([@FrederikBolding] - [#12478]) ([shopping_list docs])
- added smappee component ([@hmn] - [#11491]) ([smappee docs]) ([sensor.smappee docs]) ([switch.smappee docs]) (new-platform)
- More features for the Bluesound component ([@thrawnarn] - [#11450]) ([media_player.bluesound docs])
- zha: Simplify unique ID ([@rcloran] - [#12495]) ([zha docs])
- zha: Add support for humidity sensors ([@rcloran] - [#12496]) ([zha docs]) ([sensor.zha docs])
- bump python-eq3bt version, fixes #12499 ([@rytilahti] - [#12510]) ([climate.eq3btsmart docs])
- new version of xiaomi lib ([@danielhiversen] - [#12513]) ([xiaomi_aqara docs])
- python-miio version bumped. (Closes: #12471) ([@syssi] - [#12481]) ([fan.xiaomi_miio docs]) ([light.xiaomi_miio docs]) ([remote.xiaomi_miio docs]) ([switch.xiaomi_miio docs]) ([vacuum.xiaomi_miio docs])
- LimitlessLED assumed state ([@amelchio] - [#12475]) ([light.limitlessled docs]) (breaking change)
- Add support for HomeKit ([@cdce8p] - [#12488]) ([homekit docs]) (new-platform)
- Add password support ([@pvizeli] - [#12525]) ([hassio docs])
- Changed to async_schedule_update_ha_state ([@thrawnarn] - [#12518]) ([media_player.bluesound docs])
- Fix Sphinx build ([@balloob] - [#12535])
- Update voluptuous serialize ([@balloob] - [#12538]) ([config docs])
- Clarify a comment regarding python versions ([@aprasanna] - [#12537])
- Adds filesize component ([@robmarkcole] - [#12211]) ([sensor.filesize docs]) (new-platform)
- Clarify cloud error ([@balloob] - [#12540]) ([cloud docs])
- Build JSON in executor ([@amelchio] - [#12536]) ([history docs]) ([logbook docs])
- Bugfix: Input Datetime config schema ([@cdce8p] - [#12552]) ([input_datetime docs])
- Fix numeric_state condition spamming on unavailable ([@OttoWinter] - [#12550])
- Frontier silicon async ([@zhelev] - [#12503]) ([media_player.frontier_silicon docs])
- Fix WUnderground spamming logs ([@OttoWinter] - [#12548]) ([sensor.wunderground docs])
- Added support for milight single channel dimmer ([@rubenverhoef] - [#12558]) ([light.limitlessled docs])
- Add new component: BMW connected drive ([@ChristianKuehnel] - [#12277]) ([bmw_connected_drive docs]) ([device_tracker.bmw_connected_drive docs]) ([sensor.bmw_connected_drive docs]) (new-platform)
- Cleanup hass.io component ([@pvizeli] - [#12556]) ([hassio docs])
- Add support for smoke detector in deconz ([@Kane610] - [#12561]) ([deconz docs])
- Fix caldav component handling missing dtend ([@bottomquark] - [#12562]) ([calendar.caldav docs])
- Add limitlessled night effect ([@amelchio] - [#12567]) ([light.limitlessled docs])
- Basic support of post 2016 AVR-X receivers ([@scarface-4711] - [#12569]) ([media_player.denonavr docs])
- Fix config 404 ([@balloob] - [#12571]) ([config docs])
- Logbook speedup ([@amelchio] - [#12566]) ([logbook docs])
- Fix sonos default errorcodes ([@amelchio] - [#12582]) ([media_player.sonos docs])
- Update pychromecast to 2.0.0 ([@balloob] - [#12587]) ([media_player.cast docs])
- Set event_id foreign key in recorded states ([@amelchio] - [#12580])
- Deconz support water sensor ([@Kane610] - [#12581]) ([deconz docs])
- Cloud reconnect tweaks ([@balloob] - [#12586]) ([cloud docs])
- Hassio cleanup part2 ([@pvizeli] - [#12588]) ([hassio docs])
- Add Bluetooth and NFC card/tag Alarm types ([@matthewcky2k] - [#12151]) ([lock.zwave docs])
- Fix fix isy994 fan detection ([@OverloadUT] - [#12595]) ([isy994 docs])
- Adds folder sensor ([@robmarkcole] - [#12208]) ([sensor.folder docs]) (new-platform)
- Add unique_id to Xiaomi Aqara ([@tinloaf] - [#12372]) ([xiaomi_aqara docs])
- Make groups entities again ([@balloob] - [#12574]) ([alexa docs])
- Python spotcrime ([@jcconnell] - [#12460]) ([sensor.spotcrime docs]) (new-platform)
- Allow ignoring call service events in mqtt_eventstream ([@cmsimike] - [#12519]) ([mqtt_eventstream docs])
- Set speed service fixed. ([@syssi] - [#12602]) ([fan.xiaomi_miio docs])
- Updated script/lint ([@cdce8p] - [#12600])
- Adding RoomHinting to GoogleAssistant to allow for room annotations. ([@jeremydk] - [#12598]) ([google_assistant docs])
- Fix mclimate accounts with not only melissa components ([@kennedyshead] - [#12427]) ([melissa docs]) ([climate.melissa docs])
- Cast unique_id and async discovery ([@OttoWinter] - [#12474]) ([media_player.cast docs])
- Add Tahoma scenes ([@bakedraccoon] - [#12498]) ([scene docs]) ([tahoma docs]) (new-platform)
- Optimize logbook SQL query ([@amelchio] - [#12608]) ([logbook docs])
- Fix voluptuous breaking change things ([@balloob] - [#12611]) ([xiaomi_aqara docs]) ([binary_sensor.knx docs])
- OpenGarage - correctly handle offline status (#12612) ([@swbradshaw] - [#12613]) ([cover.opengarage docs])
- Move recorder query out of event loop ([@amelchio] - [#12615])
- Hassio update timeout filter list ([@pvizeli] - [#12617]) ([hassio docs])
- The name of the enum must be used here because of the speed_list. ([@syssi] - [#12625]) ([fan.xiaomi_miio docs])
- Fix cast doing I/O in event loop ([@OttoWinter] - [#12632]) ([media_player.cast docs])
[#11124]: https://github.com/home-assistant/home-assistant/pull/11124
[#11129]: https://github.com/home-assistant/home-assistant/pull/11129
[#11165]: https://github.com/home-assistant/home-assistant/pull/11165
[#11450]: https://github.com/home-assistant/home-assistant/pull/11450
[#11491]: https://github.com/home-assistant/home-assistant/pull/11491
[#11555]: https://github.com/home-assistant/home-assistant/pull/11555
[#11630]: https://github.com/home-assistant/home-assistant/pull/11630
[#11683]: https://github.com/home-assistant/home-assistant/pull/11683
[#11862]: https://github.com/home-assistant/home-assistant/pull/11862
[#12004]: https://github.com/home-assistant/home-assistant/pull/12004
[#12079]: https://github.com/home-assistant/home-assistant/pull/12079
[#12126]: https://github.com/home-assistant/home-assistant/pull/12126
[#12151]: https://github.com/home-assistant/home-assistant/pull/12151
[#12181]: https://github.com/home-assistant/home-assistant/pull/12181
[#12201]: https://github.com/home-assistant/home-assistant/pull/12201
[#12208]: https://github.com/home-assistant/home-assistant/pull/12208
[#12211]: https://github.com/home-assistant/home-assistant/pull/12211
[#12252]: https://github.com/home-assistant/home-assistant/pull/12252
[#12262]: https://github.com/home-assistant/home-assistant/pull/12262
[#12264]: https://github.com/home-assistant/home-assistant/pull/12264
[#12266]: https://github.com/home-assistant/home-assistant/pull/12266
[#12268]: https://github.com/home-assistant/home-assistant/pull/12268
[#12271]: https://github.com/home-assistant/home-assistant/pull/12271
[#12274]: https://github.com/home-assistant/home-assistant/pull/12274
[#12277]: https://github.com/home-assistant/home-assistant/pull/12277
[#12279]: https://github.com/home-assistant/home-assistant/pull/12279
[#12280]: https://github.com/home-assistant/home-assistant/pull/12280
[#12281]: https://github.com/home-assistant/home-assistant/pull/12281
[#12283]: https://github.com/home-assistant/home-assistant/pull/12283
[#12290]: https://github.com/home-assistant/home-assistant/pull/12290
[#12291]: https://github.com/home-assistant/home-assistant/pull/12291
[#12294]: https://github.com/home-assistant/home-assistant/pull/12294
[#12295]: https://github.com/home-assistant/home-assistant/pull/12295
[#12296]: https://github.com/home-assistant/home-assistant/pull/12296
[#12307]: https://github.com/home-assistant/home-assistant/pull/12307
[#12315]: https://github.com/home-assistant/home-assistant/pull/12315
[#12316]: https://github.com/home-assistant/home-assistant/pull/12316
[#12319]: https://github.com/home-assistant/home-assistant/pull/12319
[#12322]: https://github.com/home-assistant/home-assistant/pull/12322
[#12329]: https://github.com/home-assistant/home-assistant/pull/12329
[#12331]: https://github.com/home-assistant/home-assistant/pull/12331
[#12333]: https://github.com/home-assistant/home-assistant/pull/12333
[#12335]: https://github.com/home-assistant/home-assistant/pull/12335
[#12338]: https://github.com/home-assistant/home-assistant/pull/12338
[#12343]: https://github.com/home-assistant/home-assistant/pull/12343
[#12344]: https://github.com/home-assistant/home-assistant/pull/12344
[#12347]: https://github.com/home-assistant/home-assistant/pull/12347
[#12348]: https://github.com/home-assistant/home-assistant/pull/12348
[#12352]: https://github.com/home-assistant/home-assistant/pull/12352
[#12354]: https://github.com/home-assistant/home-assistant/pull/12354
[#12356]: https://github.com/home-assistant/home-assistant/pull/12356
[#12359]: https://github.com/home-assistant/home-assistant/pull/12359
[#12360]: https://github.com/home-assistant/home-assistant/pull/12360
[#12361]: https://github.com/home-assistant/home-assistant/pull/12361
[#12362]: https://github.com/home-assistant/home-assistant/pull/12362
[#12365]: https://github.com/home-assistant/home-assistant/pull/12365
[#12370]: https://github.com/home-assistant/home-assistant/pull/12370
[#12372]: https://github.com/home-assistant/home-assistant/pull/12372
[#12377]: https://github.com/home-assistant/home-assistant/pull/12377
[#12378]: https://github.com/home-assistant/home-assistant/pull/12378
[#12379]: https://github.com/home-assistant/home-assistant/pull/12379
[#12383]: https://github.com/home-assistant/home-assistant/pull/12383
[#12385]: https://github.com/home-assistant/home-assistant/pull/12385
[#12390]: https://github.com/home-assistant/home-assistant/pull/12390
[#12391]: https://github.com/home-assistant/home-assistant/pull/12391
[#12401]: https://github.com/home-assistant/home-assistant/pull/12401
[#12404]: https://github.com/home-assistant/home-assistant/pull/12404
[#12408]: https://github.com/home-assistant/home-assistant/pull/12408
[#12409]: https://github.com/home-assistant/home-assistant/pull/12409
[#12411]: https://github.com/home-assistant/home-assistant/pull/12411
[#12412]: https://github.com/home-assistant/home-assistant/pull/12412
[#12420]: https://github.com/home-assistant/home-assistant/pull/12420
[#12424]: https://github.com/home-assistant/home-assistant/pull/12424
[#12427]: https://github.com/home-assistant/home-assistant/pull/12427
[#12428]: https://github.com/home-assistant/home-assistant/pull/12428
[#12432]: https://github.com/home-assistant/home-assistant/pull/12432
[#12440]: https://github.com/home-assistant/home-assistant/pull/12440
[#12446]: https://github.com/home-assistant/home-assistant/pull/12446
[#12451]: https://github.com/home-assistant/home-assistant/pull/12451
[#12454]: https://github.com/home-assistant/home-assistant/pull/12454
[#12457]: https://github.com/home-assistant/home-assistant/pull/12457
[#12460]: https://github.com/home-assistant/home-assistant/pull/12460
[#12463]: https://github.com/home-assistant/home-assistant/pull/12463
[#12464]: https://github.com/home-assistant/home-assistant/pull/12464
[#12465]: https://github.com/home-assistant/home-assistant/pull/12465
[#12467]: https://github.com/home-assistant/home-assistant/pull/12467
[#12469]: https://github.com/home-assistant/home-assistant/pull/12469
[#12474]: https://github.com/home-assistant/home-assistant/pull/12474
[#12475]: https://github.com/home-assistant/home-assistant/pull/12475
[#12477]: https://github.com/home-assistant/home-assistant/pull/12477
[#12478]: https://github.com/home-assistant/home-assistant/pull/12478
[#12480]: https://github.com/home-assistant/home-assistant/pull/12480
[#12481]: https://github.com/home-assistant/home-assistant/pull/12481
[#12486]: https://github.com/home-assistant/home-assistant/pull/12486
[#12488]: https://github.com/home-assistant/home-assistant/pull/12488
[#12492]: https://github.com/home-assistant/home-assistant/pull/12492
[#12494]: https://github.com/home-assistant/home-assistant/pull/12494
[#12495]: https://github.com/home-assistant/home-assistant/pull/12495
[#12496]: https://github.com/home-assistant/home-assistant/pull/12496
[#12498]: https://github.com/home-assistant/home-assistant/pull/12498
[#12503]: https://github.com/home-assistant/home-assistant/pull/12503
[#12510]: https://github.com/home-assistant/home-assistant/pull/12510
[#12513]: https://github.com/home-assistant/home-assistant/pull/12513
[#12518]: https://github.com/home-assistant/home-assistant/pull/12518
[#12519]: https://github.com/home-assistant/home-assistant/pull/12519
[#12525]: https://github.com/home-assistant/home-assistant/pull/12525
[#12535]: https://github.com/home-assistant/home-assistant/pull/12535
[#12536]: https://github.com/home-assistant/home-assistant/pull/12536
[#12537]: https://github.com/home-assistant/home-assistant/pull/12537
[#12538]: https://github.com/home-assistant/home-assistant/pull/12538
[#12540]: https://github.com/home-assistant/home-assistant/pull/12540
[#12548]: https://github.com/home-assistant/home-assistant/pull/12548
[#12550]: https://github.com/home-assistant/home-assistant/pull/12550
[#12552]: https://github.com/home-assistant/home-assistant/pull/12552
[#12556]: https://github.com/home-assistant/home-assistant/pull/12556
[#12558]: https://github.com/home-assistant/home-assistant/pull/12558
[#12561]: https://github.com/home-assistant/home-assistant/pull/12561
[#12562]: https://github.com/home-assistant/home-assistant/pull/12562
[#12566]: https://github.com/home-assistant/home-assistant/pull/12566
[#12567]: https://github.com/home-assistant/home-assistant/pull/12567
[#12569]: https://github.com/home-assistant/home-assistant/pull/12569
[#12571]: https://github.com/home-assistant/home-assistant/pull/12571
[#12574]: https://github.com/home-assistant/home-assistant/pull/12574
[#12580]: https://github.com/home-assistant/home-assistant/pull/12580
[#12581]: https://github.com/home-assistant/home-assistant/pull/12581
[#12582]: https://github.com/home-assistant/home-assistant/pull/12582
[#12586]: https://github.com/home-assistant/home-assistant/pull/12586
[#12587]: https://github.com/home-assistant/home-assistant/pull/12587
[#12588]: https://github.com/home-assistant/home-assistant/pull/12588
[#12595]: https://github.com/home-assistant/home-assistant/pull/12595
[#12598]: https://github.com/home-assistant/home-assistant/pull/12598
[#12600]: https://github.com/home-assistant/home-assistant/pull/12600
[#12602]: https://github.com/home-assistant/home-assistant/pull/12602
[#12608]: https://github.com/home-assistant/home-assistant/pull/12608
[#12611]: https://github.com/home-assistant/home-assistant/pull/12611
[#12613]: https://github.com/home-assistant/home-assistant/pull/12613
[#12615]: https://github.com/home-assistant/home-assistant/pull/12615
[#12617]: https://github.com/home-assistant/home-assistant/pull/12617
[#12625]: https://github.com/home-assistant/home-assistant/pull/12625
[#12632]: https://github.com/home-assistant/home-assistant/pull/12632
[#12669]: https://github.com/home-assistant/home-assistant/pull/12669
[@ChristianKuehnel]: https://github.com/ChristianKuehnel
[@FrederikBolding]: https://github.com/FrederikBolding
[@Julius2342]: https://github.com/Julius2342
[@Kane610]: https://github.com/Kane610
[@NovapaX]: https://github.com/NovapaX
[@OttoWinter]: https://github.com/OttoWinter
[@OverloadUT]: https://github.com/OverloadUT
[@PhilRW]: https://github.com/PhilRW
[@ReneNulschDE]: https://github.com/ReneNulschDE
[@abmantis]: https://github.com/abmantis
[@amelchio]: https://github.com/amelchio
[@aprasanna]: https://github.com/aprasanna
[@armills]: https://github.com/armills
[@bachya]: https://github.com/bachya
[@bakedraccoon]: https://github.com/bakedraccoon
[@balloob]: https://github.com/balloob
[@bottomquark]: https://github.com/bottomquark
[@cdce8p]: https://github.com/cdce8p
[@cmsimike]: https://github.com/cmsimike
[@d0ugal]: https://github.com/d0ugal
[@danielhiversen]: https://github.com/danielhiversen
[@dgomes]: https://github.com/dgomes
[@elupus]: https://github.com/elupus
[@fabaff]: https://github.com/fabaff
[@fattdev]: https://github.com/fattdev
[@gerard33]: https://github.com/gerard33
[@happyleavesaoc]: https://github.com/happyleavesaoc
[@hmn]: https://github.com/hmn
[@igorbernstein2]: https://github.com/igorbernstein2
[@jcconnell]: https://github.com/jcconnell
[@jeradM]: https://github.com/jeradM
[@jeremydk]: https://github.com/jeremydk
[@jesserockz]: https://github.com/jesserockz
[@karlkar]: https://github.com/karlkar
[@kellerza]: https://github.com/kellerza
[@kennedyshead]: https://github.com/kennedyshead
[@lucasweb78]: https://github.com/lucasweb78
[@matt2005]: https://github.com/matt2005
[@matthewcky2k]: https://github.com/matthewcky2k
[@mikeodr]: https://github.com/mikeodr
[@mjj4791]: https://github.com/mjj4791
[@neffs]: https://github.com/neffs
[@patrik3k]: https://github.com/patrik3k
[@pvizeli]: https://github.com/pvizeli
[@rcloran]: https://github.com/rcloran
[@robmarkcole]: https://github.com/robmarkcole
[@rubenverhoef]: https://github.com/rubenverhoef
[@rytilahti]: https://github.com/rytilahti
[@scarface-4711]: https://github.com/scarface-4711
[@sjvc]: https://github.com/sjvc
[@snjoetw]: https://github.com/snjoetw
[@swbradshaw]: https://github.com/swbradshaw
[@syssi]: https://github.com/syssi
[@tabakhase]: https://github.com/tabakhase
[@thrawnarn]: https://github.com/thrawnarn
[@tinloaf]: https://github.com/tinloaf
[@trisk]: https://github.com/trisk
[@tschmidty69]: https://github.com/tschmidty69
[@ttroy50]: https://github.com/ttroy50
[@zhelev]: https://github.com/zhelev
[@fanthos]: https://github.com/fanthos
[@c727]: https://github.com/c727
[@ciotlosm]: https://github.com/ciotlosm
[@frenck]: https://github.com/frenck
[@pvizeli]: https://github.com/pvizeli
[@ryanm101]: https://github.com/ryanm101
[alexa docs]: https://home-assistant.io/components/alexa/
[august docs]: https://home-assistant.io/components/august/
[binary_sensor.august docs]: https://home-assistant.io/components/binary_sensor.august/
[binary_sensor.bloomsky docs]: https://home-assistant.io/components/binary_sensor.bloomsky/
[binary_sensor.deconz docs]: https://home-assistant.io/components/binary_sensor.deconz/
[binary_sensor.knx docs]: https://home-assistant.io/components/binary_sensor.knx/
[bmw_connected_drive docs]: https://home-assistant.io/components/bmw_connected_drive/
[calendar.caldav docs]: https://home-assistant.io/components/calendar.caldav/
[camera.august docs]: https://home-assistant.io/components/camera.august/
[camera.bloomsky docs]: https://home-assistant.io/components/camera.bloomsky/
[camera.doorbird docs]: https://home-assistant.io/components/camera.doorbird/
[camera.onvif docs]: https://home-assistant.io/components/camera.onvif/
[camera.rpi_camera docs]: https://home-assistant.io/components/camera.rpi_camera/
[climate.eq3btsmart docs]: https://home-assistant.io/components/climate.eq3btsmart/
[climate.knx docs]: https://home-assistant.io/components/climate.knx/
[climate.melissa docs]: https://home-assistant.io/components/climate.melissa/
[cloud docs]: https://home-assistant.io/components/cloud/
[config docs]: https://home-assistant.io/components/config/
[conversation docs]: https://home-assistant.io/components/conversation/
[cover.knx docs]: https://home-assistant.io/components/cover.knx/
[cover.opengarage docs]: https://home-assistant.io/components/cover.opengarage/
[deconz docs]: https://home-assistant.io/components/deconz/
[device_tracker.asuswrt docs]: https://home-assistant.io/components/device_tracker.asuswrt/
[device_tracker.automatic docs]: https://home-assistant.io/components/device_tracker.automatic/
[device_tracker.bmw_connected_drive docs]: https://home-assistant.io/components/device_tracker.bmw_connected_drive/
[device_tracker.nmap_tracker docs]: https://home-assistant.io/components/device_tracker.nmap_tracker/
[device_tracker.unifi docs]: https://home-assistant.io/components/device_tracker.unifi/
[fan.xiaomi_miio docs]: https://home-assistant.io/components/fan.xiaomi_miio/
[frontend docs]: https://home-assistant.io/components/frontend/
[google_assistant docs]: https://home-assistant.io/components/google_assistant/
[hassio docs]: https://home-assistant.io/components/hassio/
[history docs]: https://home-assistant.io/components/history/
[homekit docs]: https://home-assistant.io/components/homekit/
[homekit.accessories docs]: https://home-assistant.io/components/homekit.accessories/
[homekit.const docs]: https://home-assistant.io/components/homekit.const/
[homekit.covers docs]: https://home-assistant.io/components/homekit.covers/
[homekit.sensors docs]: https://home-assistant.io/components/homekit.sensors/
[http docs]: https://home-assistant.io/components/http/
[input_datetime docs]: https://home-assistant.io/components/input_datetime/
[isy994 docs]: https://home-assistant.io/components/isy994/
[knx docs]: https://home-assistant.io/components/knx/
[light.deconz docs]: https://home-assistant.io/components/light.deconz/
[light.iglo docs]: https://home-assistant.io/components/light.iglo/
[light.knx docs]: https://home-assistant.io/components/light.knx/
[light.limitlessled docs]: https://home-assistant.io/components/light.limitlessled/
[light.xiaomi_miio docs]: https://home-assistant.io/components/light.xiaomi_miio/
[lock.august docs]: https://home-assistant.io/components/lock.august/
[lock.zwave docs]: https://home-assistant.io/components/lock.zwave/
[logbook docs]: https://home-assistant.io/components/logbook/
[media_extractor docs]: https://home-assistant.io/components/media_extractor/
[media_player.bluesound docs]: https://home-assistant.io/components/media_player.bluesound/
[media_player.braviatv_psk docs]: https://home-assistant.io/components/media_player.braviatv_psk/
[media_player.cast docs]: https://home-assistant.io/components/media_player.cast/
[media_player.denonavr docs]: https://home-assistant.io/components/media_player.denonavr/
[media_player.frontier_silicon docs]: https://home-assistant.io/components/media_player.frontier_silicon/
[media_player.panasonic_viera docs]: https://home-assistant.io/components/media_player.panasonic_viera/
[media_player.sonos docs]: https://home-assistant.io/components/media_player.sonos/
[media_player.xiaomi_tv docs]: https://home-assistant.io/components/media_player.xiaomi_tv/
[melissa docs]: https://home-assistant.io/components/melissa/
[mqtt docs]: https://home-assistant.io/components/mqtt/
[mqtt_eventstream docs]: https://home-assistant.io/components/mqtt_eventstream/
[notify.html5 docs]: https://home-assistant.io/components/notify.html5/
[notify.knx docs]: https://home-assistant.io/components/notify.knx/
[notify.lametric docs]: https://home-assistant.io/components/notify.lametric/
[panel_iframe docs]: https://home-assistant.io/components/panel_iframe/
[remote.xiaomi_miio docs]: https://home-assistant.io/components/remote.xiaomi_miio/
[scene docs]: https://home-assistant.io/components/scene/
[sensor.airvisual docs]: https://home-assistant.io/components/sensor.airvisual/
[sensor.alpha_vantage docs]: https://home-assistant.io/components/sensor.alpha_vantage/
[sensor.bloomsky docs]: https://home-assistant.io/components/sensor.bloomsky/
[sensor.bmw_connected_drive docs]: https://home-assistant.io/components/sensor.bmw_connected_drive/
[sensor.buienradar docs]: https://home-assistant.io/components/sensor.buienradar/
[sensor.deconz docs]: https://home-assistant.io/components/sensor.deconz/
[sensor.fastdotcom docs]: https://home-assistant.io/components/sensor.fastdotcom/
[sensor.fedex docs]: https://home-assistant.io/components/sensor.fedex/
[sensor.filesize docs]: https://home-assistant.io/components/sensor.filesize/
[sensor.folder docs]: https://home-assistant.io/components/sensor.folder/
[sensor.knx docs]: https://home-assistant.io/components/sensor.knx/
[sensor.pollen docs]: https://home-assistant.io/components/sensor.pollen/
[sensor.rfxtrx docs]: https://home-assistant.io/components/sensor.rfxtrx/
[sensor.sabnzbd docs]: https://home-assistant.io/components/sensor.sabnzbd/
[sensor.sma docs]: https://home-assistant.io/components/sensor.sma/
[sensor.smappee docs]: https://home-assistant.io/components/sensor.smappee/
[sensor.speedtest docs]: https://home-assistant.io/components/sensor.speedtest/
[sensor.spotcrime docs]: https://home-assistant.io/components/sensor.spotcrime/
[sensor.startca docs]: https://home-assistant.io/components/sensor.startca/
[sensor.template docs]: https://home-assistant.io/components/sensor.template/
[sensor.tibber docs]: https://home-assistant.io/components/sensor.tibber/
[sensor.wunderground docs]: https://home-assistant.io/components/sensor.wunderground/
[sensor.zha docs]: https://home-assistant.io/components/sensor.zha/
[shopping_list docs]: https://home-assistant.io/components/shopping_list/
[smappee docs]: https://home-assistant.io/components/smappee/
[switch.knx docs]: https://home-assistant.io/components/switch.knx/
[switch.rainmachine docs]: https://home-assistant.io/components/switch.rainmachine/
[switch.smappee docs]: https://home-assistant.io/components/switch.smappee/
[switch.xiaomi_miio docs]: https://home-assistant.io/components/switch.xiaomi_miio/
[tahoma docs]: https://home-assistant.io/components/tahoma/
[telegram_bot docs]: https://home-assistant.io/components/telegram_bot/
[usps docs]: https://home-assistant.io/components/usps/
[vacuum.xiaomi_miio docs]: https://home-assistant.io/components/vacuum.xiaomi_miio/
[vera docs]: https://home-assistant.io/components/vera/
[weather.buienradar docs]: https://home-assistant.io/components/weather.buienradar/
[weblink docs]: https://home-assistant.io/components/weblink/
[xiaomi_aqara docs]: https://home-assistant.io/components/xiaomi_aqara/
[zha docs]: https://home-assistant.io/components/zha/

View File

@ -58,4 +58,8 @@ For a local repository:
$ docker run --rm --privileged -v ~/.docker:/root/.docker -v /my_addon:/data homeassistant/amd64-builder --all -t /data
```
<p class='note'>
If you are developing on macOS and using Docker for Mac, you may encounter an error message similar to the following: <code>error creating aufs mount to /var/lib/docker/aufs/mnt/<SOME_ID>-init: invalid argument</code>. A proposed workaround is to add the following to the Advanced Daemon JSON configuration via Docker > Preferences > Daemon > Advanced: <code>"storage-driver" : "aufs"</code>.
</p>
[builder]: https://github.com/home-assistant/hassio-build/tree/master/builder

Binary file not shown.

After

Width:  |  Height:  |  Size: 23 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 65 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 227 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 82 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 24 KiB