Merge pull request #2568 from home-assistant/release-0-44

0.44
This commit is contained in:
Paulus Schoutsen 2017-05-06 13:25:37 -07:00 committed by GitHub
commit 833900569c
53 changed files with 1662 additions and 44 deletions

View File

@ -140,11 +140,11 @@ social:
# Home Assistant release details
current_major_version: 0
current_minor_version: 43
current_patch_version: 2
date_released: 2017-04-27
current_minor_version: 44
current_patch_version: 0
date_released: 2017-05-06
# Either # or the anchor link to latest release notes in the blog post.
# Must be prefixed with a # and have double quotes around it.
# Example #release-0431---april-25
patch_version_notes: "#release-0432---april-27"
patch_version_notes: ""

View File

@ -0,0 +1,18 @@
---
layout: page
title: "Eight Sleep Binary Sensor"
description: "Instructions how to integrate binary motion sensors for Eight Sleep within Home Assistant."
date: 2017-04-24 00:00
sidebar: true
comments: false
sharing: true
footer: true
logo: eight_sleep.png
ha_category: Binary Sensor
ha_release: "0.44"
---
The `eight_sleep` binary sensor platform lets you observe the presence state of a [Eight Sleep](https://eightsleep.com/) cover/mattress through Home Assistant.
Devices will be configured automatically. Please refer to the [component](/components/eight_sleep/) configuration on how to setup.

View File

@ -0,0 +1,16 @@
---
layout: page
title: "eQ-3 MAX! Cube binary sensors"
description: "Instructions on how to integrate eQ-3 MAX! components with Home Assistant via eQ-3 MAX! Cube."
date: 2017-02-04 22:00
sidebar: true
comments: false
sharing: true
footer: true
logo: maxcube.png
ha_category: Climate
ha_release: "0.40"
ha_iot_class: "Local Polling"
---
See instructions at the [main component](/components/maxcube/).

View File

@ -0,0 +1,37 @@
---
layout: page
title: "Pilight Binary Sensor"
description: "Instructions how to integrate pilight binary sensors within Home Assistant."
date: 2017-03-24 20:41
sidebar: true
comments: false
sharing: true
footer: true
logo: pilight.png
ha_category: Binary Sensor
ha_release: 0.44
ha_iot_class: Local Poll
---
This component implement the [pilight hub](https://github.com/home-assistant/home-assistant.github.io/source/_components/pilight.markdown) binary sensor functionality.
Two type of pilight binary sensor configuration available. A normal sensor which send the on and off state cyclical and a trigger sensor which send only a trigger when an event happend (for example lots of cheap PIR motion detector) (see example configuration below).
```yaml
# Example configuration.yml entry
binary_sensor:
- platform: pilight
name: 'Motion'
variable: 'state'
payload:
unitcode: 371399
payload_on: 'closed'
disarm_after_trigger: True <-- use this if you want trigger type behavior
```
Configuration variables:
- **variable** (*Required*): The variable name in the data stream that defines the sensor value.
- **payload** (*Required*): Message payload identifiers. Only if all identifiers are matched the sensor value is set.
- **name** (*Optional*): Name of the sensor.
- **payload_on** (*Optional*): Variable `on` value. The component will recognize this as logical '1'.
- **payload_off** (*Optional*): Variable `off` value. The component will recognize this as logical '0'.
- **disarm_after_trigger:** (*Optional*): Configure sensor as trigger type.

View File

@ -38,6 +38,6 @@ The sensor exposes the different round trip times values measured by `ping` as a
- `round trip time max`
<p class='note'>
This sensor was only tested on a Linux-based system.
When run on Windows systems, the round trip time attributes are rounded to the nearest millisecond and the mdev value is unavailable.
</p>

View File

@ -0,0 +1,16 @@
---
layout: page
title: "ZigBee Home Automation Binary Sensor"
description: "Instructions how to setup ZigBee Home Automation binary sensors within Home Assistant."
date: 2017-02-22 00:00
sidebar: true
comments: false
sharing: true
footer: true
logo: zigbee.png
ha_category: Binary Sensor
---
To get your ZigBee binary sensors working with Home Assistant, follow the
instructions for the general [ZigBee Home Automation
component](/components/zha/).

View File

@ -61,7 +61,7 @@ The following attributes are provided by the Ecobee Thermostat:
`target_temperature_low`, `target_temperature_high`, `desired_fan_mode`,
`fan`, `current_hold_mode`, `current_operation`, `operation_list`,
`operation_mode`, `mode`, `fan_min_on_time`, `device_state_attributes`,
`is_away_mode_on`, `vacation`, `climate_list`.
`is_away_mode_on`, `vacation`, `climate_list`, `aux_heat`.
The attributes `min_temp` and `max_temp` are meaningless constant values.
@ -202,6 +202,13 @@ Returns the currently active vacation or `None`.
Returns the list of climates defined in the thermostat.
### {% linkable_title Attribute `aux_heat` %}
Returns the current auxiliary heat state.
| Attribute type | Description |
| ---------------| ----------- |
| String | 'on', 'off'
## {% linkable_title Services %}

View File

@ -0,0 +1,16 @@
---
layout: page
title: "eQ-3 MAX! Cube binary sensors"
description: "Instructions on how to integrate eQ-3 MAX! components with Home Assistant via eQ-3 MAX! Cube."
date: 2017-02-04 22:00
sidebar: true
comments: false
sharing: true
footer: true
logo: maxcube.png
ha_category: Climate
ha_release: "0.40"
ha_iot_class: "Local Polling"
---
See instructions at the [main component](/components/maxcube/).

View File

@ -0,0 +1,48 @@
---
layout: page
title: "Sensibo A/C controller"
description: "Instructions how to integrate Sensibo A/C controller into Home Assistant."
date: 2017-04-01 15:00 +0200
sidebar: true
comments: false
sharing: true
footer: true
logo: sensibo.png
ha_category: Climate
ha_release: 0.44
ha_iot_class: "Cloud Polling"
---
Integrates [Sensibo](https://sensibo.com) Air Conditioning controller into Home Assistant.
To enable this platform, add the following lines to your `configuration.yaml` file:
```yaml
# Example configuration.yaml entry
climate:
- platform: sensibo
api_key: <your_key_here>
```
Configuration variables:
- **api_key** (*Required*): Your API key.
- **id** (*Optional*): A unit ID or a list of IDs. If none specified then all units acessible by the `api_key` will be used.
To get your API key visit <https://home.sensibo.com/me/api>
<p class="note">
If you create the API key using a dedicated user (and not your main user),
then in the Sensibo app log you will be able to distinguish between actions
done in the app and actions done by Home Assistant.
</p>
### {% linkable_title Full config example %}
```yaml
climate:
- platform: sensibo
api_key: deadbeaf
id:
- id1
- id2
```

36
source/_components/cover.mqtt.markdown Normal file → Executable file
View File

@ -46,11 +46,41 @@ Configuration variables:
- **qos** (*Optional*): The maximum QoS level of the state topic. Default is `0`. Will also be used when publishing messages.
- **retain** (*Optional*): If the published message should have the retain flag on or not. Default is `false`.
- **value_template** (*Optional*): Defines a [template](/topics/templating/) to extract a value from the payload.
- **tilt_command_topic** (*Optional*): The MQTT topic to publish commands to control the cover tilt.
- **tilt_status_topic** (*Optional*): The MQTT topic subscribed to receive tilt status update values.
- **tilt_min** (*Optional*): The minimum tilt value. Default is `0`
- **tilt_max** (*Optional*): The maximum tilt value. Default is `100`
- **tilt_closed_value** (*Optional*): The value that will be sent on a `close_cover_tilt` command. Default is `0`
- **tilt_opened_value** (*Optional*): The value that will be sent on an `open_cover_tilt` command. Default is `100`
- **tilt_status_optimistic** (*Optional*): Flag that determines if tilt works in optimistic mode. Default is `true` if `tilt_status_topic` is not deinfed, else `false`
- **tilt_invert_state** (*Optional*): Flag that determines if open/close are flipped; higher values toward closed and lower values toward open. Default is `False`
## {% linkable_title Examples %}
In this section you find some real life examples of how to use this sensor.
### {% linkable_title Full configuration without tilt %}
The example below shows a full configuration for a cover without tilt.
```yaml
# Example configuration.yml entry
cover:
- platform: mqtt
state_topic: "home-assistant/cover"
command_topic: "home-assistant/cover/set"
name: "MQTT Cover"
qos: 0
retain: true
payload_open: "OPEN"
payload_close: "CLOSE"
payload_stop: "STOP"
state_open: "OPEN"
state_closed: "STATE"
optimistic: false
value_template: '{% raw %}{{ value.x }}{% endraw %}'
```
### {% linkable_title Full configuration %}
The example below shows a full configuration for a cover.
@ -71,6 +101,12 @@ cover:
state_closed: "STATE"
optimistic: false
value_template: '{% raw %}{{ value.x }}{% endraw %}'
tilt_command_topic: 'home-assistant/cover/tilt'
tilt_status_topic: 'home-assistant/cover/tilt-status'
tilt_min: 0
tilt_max: 180
tilt_closed_value: 70
tilt_opened_value: 180
```
For a check you can use the command line tools `mosquitto_pub` shipped with `mosquitto` to send MQTT messages. This allows you to operate your cover manually:

View File

@ -0,0 +1,109 @@
---
layout: page
title: "OpenGarage Cover"
description: "Instructions how to integrate OpenGarage.io covers within Home Assistant."
date: 2017-04-07 14:25
sidebar: true
comments: false
sharing: true
footer: true
logo: opengarage.png
ha_category: Cover
ha_release: 0.44
---
The `opengarage` cover platform lets you control the open-source [OpenGarage.io](https://opengarage.io/) device through Home Assistant.
To enable OpenGarage Covers in your installation, add the following to your `configuration.yaml` file:
```yaml
# Example configuration.yaml entry
cover:
platform: opengarage
covers:
garage:
host: 192.168.1.12
device_key: opendoor
name: Left Garage Door
garage2:
host: 192.168.1.13
device_key: opendoor
name: Right Garage Door
```
Configuration variables:
- **covers** array (*Required*): List of your doors.
- **identifier** (*Required*): Name of the cover as slug. Multiple entries are possible.
- **host** (*Required*): IP address of device.
- **port** (*Optional*): HTTP Port. Default is `80`.
- **device_key** (*Required*): Access key to control device. Default is `opendoor`.
- **name** (*Optional*): Name to use in the Frontend. If not provided, it will use name configured in device.
**Example with more detail:**
<p class='img'>
<img src='{{site_root}}/images/components/opengarage/cover_opengarage_details.jpg' />
</p>
```yaml
# Related configuration.yaml entry
cover:
platform: opengarage
covers:
garage:
host: 192.168.1.12
device_key: opendoor
name: honda
sensor:
platform: template
sensors:
garage_status:
friendly_name: 'Honda Door Status'
value_template: {% raw %}'{% if states.cover.honda %}
{% if states.cover.honda.attributes["door_state"] == "open" %}
Open
{% elif states.cover.honda.attributes["door_state"] == "closed" %}
Closed
{% elif states.cover.honda.attributes["door_state"] == "opening" %}
Opening
{% elif states.cover.honda.attributes["door_state"] == "closing" %}
Closing
{% else %}
Unknown
{% endif %}
{% else %}
n/a
{% endif %}'{% endraw %}
garage_car_present:
friendly_name: 'Honda in Garage'
value_template: {% raw %}'{% if states.cover.honda %}
{% if states.cover.honda.state == "open" %}
n/a
{% elif ((states.cover.honda.attributes["distance_sensor"] > 40) and (states.cover.honda.attributes["distance_sensor"] < 100)) %}
Yes
{% else %}
No
{% endif %}
{% else %}
n/a
{% endif %}'{% endraw %}
group:
garage:
name: Garage
entities:
- cover.honda
- sensor.garage_status
- sensor.garage_car_present
customize:
cover.honda:
friendly_name: Honda
entity_picture: /local/honda.gif
sensor.garage_car_present:
icon: mdi:car
```

View File

@ -10,12 +10,15 @@ footer: true
logo: automatic.png
ha_category: Presence Detection
ha_release: 0.28
ha_iot_class: "Cloud Push"
---
The `automatic` platform offers presence detection by retrieving your car's information from the [Automatic](http://automatic.com/) cloud service.
To use an Automatic ODB reader in your installation, add the following to your `configuration.yaml` file:
To use Automatic with Home Assistant, first you must [create a free development account](https://developer.automatic.com/). Automatic will generate a Client ID and Secret for you to use in your Home Assistant configuration. You will also need to update your Event Delivery preferences to ensure Home Assistant can receive updates. On the developer page, under App Settings / Event Delivery, select "Websocket" for Event Delivery Preference.
Once your developer account is created, add the following to your `configuration.yaml` file:
```yaml
# Example configuration.yaml entry
@ -38,4 +41,19 @@ Configuration variables:
- **password** (*Required*): The password for your given ODB reader account.
- **devices** (*Optional*): The list of vehicle display names you wish to track. If not provided, all vehicles will be tracked.
Home Assistant will also fire events when an update is received from Automatic. These can be used to trigger automations, as shown in the example below. A list of available event types can be found in the [Automatic Real-Time Events documentation](https://developer.automatic.com/api-reference/#real-time-events).
```yaml
# Example automatic event automation
automation:
- trigger:
- platform: event
event_type: automatic_update
event_data:
type: "ignition:on"
action:
- service: light.turn_off
```
See the [device tracker component page](/components/device_tracker/) for instructions how to configure the cars to be tracked.

View File

@ -0,0 +1,37 @@
---
layout: page
title: "Mikrotik"
description: "Instructions how to integrate Mikrotik/Routerboard based routers into Home Assistant."
date: 2017-04-28 16:03
sidebar: true
comments: false
sharing: true
footer: true
logo: mikrotik.png
ha_category: Presence Detection
ha_release: "0.43"
---
The `Mikrotik` platform offers presence detection by looking at connected devices to a [Mikrotik Routerboard](http://routerboard.com) based router.
To use an Mikrotik router in your installation, add the following to your `configuration.yaml` file:
```yaml
# Example configuration.yaml entry
device_tracker:
- platform: mikrotik
host: 192.168.81.1
username: admin
password: hellomoto
port: 1603
```
Configuration variables:
- **host** (*Required*): The IP address of your router.
- **username** (*Required*: The username of an user with administrative privileges.
- **password** (*Required*): The password for your given admin account.
- **port** (*Optional*): Mikrotik api port (See IP -> Services -> api ), default 8728
See the [device tracker component page](/components/device_tracker/) for instructions how to configure the people to be tracked.

View File

@ -16,7 +16,7 @@ ha_release: pre 0.7
The `tplink` platform allows you to detect presence by looking at connected devices to a [TP-Link](https://www.tp-link.com) device. This includes the ArcherC9 line.
<p class='note'>
TP-Link devices typically only allow one login at a time to the admin console. This component will count towards your one allowed login. Depending on how aggressively you configure device_tracker you may not be able to access the admin console of your TP-Link device without first stopping Home Assistant (and waiting a few minutes for the session to timeout) before you'll be able to login.
TP-Link devices typically only allow one login at a time to the admin console. This component will count towards your one allowed login. Depending on how aggressively you configure device_tracker you may not be able to access the admin console of your TP-Link device without first stopping Home Assistant. Home Assistant takes a few seconds to login, collect data, and log out. If you log into the admin console manually, remember to log out so that Home Assistant can log in again.
</p>

View File

@ -0,0 +1,67 @@
---
layout: page
title: "Eight Sleep"
description: "Interface an Eight Sleep smart cover or mattress to Home Assistant"
date: 2017-04-24 00:00
sidebar: true
comments: false
sharing: true
footer: true
logo: eight_sleep.png
ha_category: Hub
ha_release: "0.44"
---
The `eight_sleep` component allows Home Assistant to fetch data from your [Eight Sleep](https://eightsleep.com/) smart cover or mattress.
It's setup utilizing 'Sensor' components to convey the current state of your bed and results of your sleep sessions and a 'Binary Sensor' component to indicate your presence in the bed. A service is also provided to set the heating level and duration of the bed.
To get started add the following information to your `configuration.yaml` file:
```yaml
# Example configuration.yaml entry
eight_sleep:
username: "user@email.com"
password: "password"
```
Configuration variables:
- **username** (*Required*): The email address associated with your Eight Sleep account.
- **password** (*Required*): The password associated with your Eight Sleep account.
- **partner** (*Optional*): Default is False. Defines if you'd like to fetch data for both sides of the bed.
### {% linkable_title Supported features %}
Sensors:
- eight_left/right_bed_state
- eight_left/right_sleep_session
- eight_left/right_previous_sleep_session
Binary Sensors:
- eight_left/right_bed_presence
### {% linkable_title Service `heat_set` %}
You can use the service eight_sleep/heat_set to adjust the target heating level and heating duration of your bed.
| Service data attribute | Optional | Description |
| ---------------------- | -------- | ----------- |
| `entity_id` | no | Entity ID of bed state to adjust.
| `target` | no | Target heating level from 0-100.
| `duration` | no | Duration to heat at the target level in seconds.
Script Example:
```yaml
script:
bed_set_heat:
sequence:
- service: eight_sleep.heat_set
data:
entity_id: "sensor.eight_left_bed_state"
target: 35
duration: 3600
```

View File

@ -0,0 +1,34 @@
---
layout: page
title: "Dlib Face Detect"
description: "Instructions how to integrate Dlib Face Detect into Home Assistant."
date: 2017-05-05 00:00
sidebar: true
comments: false
sharing: true
footer: true
logo: dlib.png
ha_category: Image Processing
featured: false
ha_release: 0.44
---
The `dlib_face_detect` image processing platform allows you to use the [Dlib](http://www.dlib.net/) through Home Assistant. This platform enables you do detect face on camera and fire a event with attributes.
For using the result inside an automation rule, take a look at the [component](/components/image_processing/) page.
### {% linkable_title Configuration Home Assistant %}
```yaml
# Example configuration.yaml entry
image_processing:
- platform: dlib_face_detect
source:
- entity_id: camera.door
```
Configuration variables:
- **source** array (*Required*): List of image sources.
- **entity_id** (*Required*): A camera entity id to get picture from.
- **name** (*Optional*): This parameter allows you to override the name of your `image_processing` entity.

View File

@ -0,0 +1,38 @@
---
layout: page
title: "Dlib Face Identify"
description: "Instructions how to integrate Dlib Face Identify into Home Assistant."
date: 2017-01-25 00:00
sidebar: true
comments: false
sharing: true
footer: true
logo: dlib.png
ha_category: Image Processing
featured: false
ha_release: 0.44
---
The `dlib_face_identify` image processing platform allows you to use the [Dlib](http://www.dlib.net/) through Home Assistant. This platform allow you do identify persons on camera and fire a event with identify persons.
For using the result inside an automation rule, take a look at the [component](/components/image_processing/) page.
### {% linkable_title Configuration Home Assistant %}
```yaml
# Example configuration.yaml entry
image_processing:
- platform: dlib_face_identify
source:
- entity_id: camera.door
faces:
Jon: /home/hass/jon.jpg
Bob: /home/hass/bob.jpg
```
Configuration variables:
- **source** array (*Required*): List of image sources.
- **entity_id** (*Required*): A camera entity id to get picture from.
- **name** (*Optional*): This parameter allows you to override the name of your `image_processing` entity.
- **faces** array (*Required*): List of faces sources.

View File

@ -31,7 +31,6 @@ image_processing:
Configuration variables:
- **group** (*Required*): Microsoft Face group used to detect the person.
- **confidence** (*Optional*): The minimum of confidence in percent to process with Home Assistant. Defaults to 80.
- **source** array (*Required*): List of image sources.
- **entity_id** (*Required*): A camera entity id to get picture from.

View File

@ -0,0 +1,18 @@
---
layout: page
title: "OpenCV"
description: "Instructions how to integrate OpenCV image processing into Home Assistant."
date: 2017-01-25 00:00
sidebar: true
comments: false
sharing: true
footer: true
logo: opencv.png
ha_category: Image Processing
featured: false
ha_release: 0.44
---
The `opencv` image processing platform allows you to create a standalone image processor without the linked camera entity as mentioned in the [OpenCV page](https://home-assistant.io/components/opencv).
Please refer to the [component](/components/opencv/) configuration on how to setup the image processor.

View File

@ -36,8 +36,12 @@ Configuration variables:
- **verify_ssl** (*Optional*): Verify SSL certificate for https request. Defaults to false.
- **default_measurement** (*Optional*): Measurement name to use when an entity doesn't have a unit. Defaults to entity id.
- **override_measurement** (*Optional*): Measurement name to use instead of unit or default measurement. This will store all data points in a single measurement.
- **blacklist** (*Optional*): List of entities that should not be logged to InfluxDB.
- **whitelist** (*Optional*): List of the entities (only) that will be logged to InfluxDB. If not set, all entities will be logged. Values set by the **blacklist** option will prevail.
- **exclude** (*Optional*): Configure which components should be excluded from recording to InfluxDB.
- **entities** (*Optional*): The list of entity ids to be excluded from recording to InfluxDB.
- **domains** (*Optional*): The list of domains to be excluded from recording to InfluxDB.
- **include** (*Optional*): Configure which components should be included in recordings to InfluxDB. If set, all other entities will not be recorded to InfluxDB. Values set by the **blacklist** option will prevail.
- **entities** (*Optional*): The list of entity ids to be included from recordings to InfluxDB.
- **domains** (*Optional*): The list of domains to be included from recordings to InfluxDB.
- **tags** (*Optional*): Tags to mark the data.
## {% linkable_title Data migration %}
@ -98,6 +102,62 @@ optional arguments:
- The step option defaults to `1000`.
## {% linkable_title Data import script %}
If you want to import all the recorded data from your recorder database you can use the data import script.
It will read all your state_change events from the database and add them as data-points to the InfluxDB.
You can specify the source database either by pointing the `--config` option to the config directory which includes the default sqlite database or by giving a sqlalchemy connection URI with `--uri`.
The writing to InfluxDB is done in batches that can be changed with `--step`.
You can control, which data is imported by using the commandline options `--exclude-entities` and `--exclude-domain`.
Both get a comma separated list of either entity-ids or domain names that are excluded from the import.
To test what gets imported you can use the `--simulate` option, which disables the actual write to the InfluxDB instance.
This only writes the statistics how much points would be imported from which entity.
Example to run the script:
```bash
$ hass --script influxdb_import --config CONFIG_DIR \
-H IP_INFLUXDB_HOST -u INFLUXDB_USERNAME -p INFLUXDB_PASSWORD \
--dbname INFLUXDB_DB_NAME --exclude-domain automation,configurator
```
Script arguments:
```
required arguments:
-d dbname, --dbname dbname
InfluxDB database name
optional arguments:
-h, --help show this help message and exit
-c path_to_config_dir, --config path_to_config_dir
Directory that contains the Home Assistant
configuration
--uri URI Connect to URI and import (if other than default
sqlite) eg: mysql://localhost/homeassistant
-H host, --host host InfluxDB host address
-P port, --port port InfluxDB host port
-u username, --username username
InfluxDB username
-p password, --password password
InfluxDB password
-s step, --step step How many points to import at the same time
-t tags, --tags tags Comma separated list of tags (key:value) for all
points
-D default_measurement, --default-measurement default_measurement
Store all your points in the same measurement
-o override_measurement, --override-measurement override_measurement
Store all your points in the same measurement
-e exclude_entities, --exclude_entities exclude_entities
Comma separated list of excluded entities
-E exclude_domains, --exclude_domains exclude_domains
Comma separated list of excluded domains
-S, --simulate Do not write points but simulate preprocessing
and print statistics
```
## {% linkable_title Examples %}
@ -113,12 +173,16 @@ influxdb:
ssl: true
verify_ssl: true
default_measurement: state
blacklist:
- entity.id1
- entity.id2
whitelist:
- entity.id3
- entity.id4
exclude:
entities:
- entity.id1
- entity.id2
domains:
- automation
include:
entities:
- entity.id3
- entity.id4
tags:
instance: prod
source: hass

View File

@ -15,16 +15,19 @@ ha_release: "0.24"
The Join platform exposes services from [Join](http://joaoapps.com/join). In Home Assistant, the Join features are divided up in two locations, the Join component, and the Join notify platform. The notify platform allows us to send messages to Join devices, the the component allows us to access the other special features that Join offers.
In the `configuration.yaml` file you need to provide the device id of the target device. If you want to send to a group of devices, you need to provide an api key. You can find you device id and api key [here](https://joinjoaomgcd.appspot.com/).
In the `configuration.yaml` file you need to provide the api key and device id or name of the target device. You can find your device id and api key [here](https://joinjoaomgcd.appspot.com/).
To set it up, add the following information to your `configuration.yaml` file:
```yaml
notify:
- platform: joaoapps_join
device_id: d5asdfasdf54645h45h368761dfe5gt8a
name: droid *optional
api_key: asd97823jb628a34fwsdfwefd5384345tf2d *optional
api_key: asd97823jb628a34fwsdfwefd5384345tf2d
device_id: d5asdfasdf54645h45h368761dfe5gt8a *optional
device_ids: d5asdfasdf54645h45h368761dfe5gt8a, a4asdfasdf54645h45h368761dfe5gt3b *optional
device_names: Pixel, iPhone *optional
name: Phones *optional
joaoapps_join:
- name: android
@ -34,23 +37,25 @@ joaoapps_join:
Configuration variables:
- **device_id** (*Required*): The Id of your device.
- **api_key** (*Required*): The API key for Join.
- **device_id** (*Optional*): The id of your device.
- **device_ids** (*Optional*): Comma separated list of device ids.
- **device_names** (*Optional*): Comma separated list of device names.
The notify service has two optional parameters: `icon` and `small icon`. You can use them like so:
The notify service has two optional parameters: `icon` and `vibration`. You can use them like so:
```json
{"message":"Hello!","title":"From Hass","data":{"icon":"https://goo.gl/KVqcYi","smallicon":"http://goo.gl/AU4Wf1"}}
{"message":"Hello from Home Assistant!","title":"Home Assistant","data":{"icon":"https://goo.gl/xeetdy", "vibration":"0,65,706,86,657,95,668,100"}}
```
The services exposed in the joaoapps_join component can be used with the service data described below:
| Service | Data |
|------------------------------ |------------------------------------------------------------------ |
| joaoapps_join/ring | |
| joaoapps_join/send_sms | {"number":"5553334444", "message":"Hello!"} |
| joaoapps_join/send_tasker | {"command":"test"} |
| joaoapps_join/send_url | {"url":"http://google.com"} |
| joaoapps_join/send_wallpaper | {"url":"http://www.planwallpaper.com/static/images/ZhGEqAP.jpg"} |
| joaoapps_join/send_file | {"url":"http://download.thinkbroadband.com/5MB.zip"} |
| Service | Data |
|------------------------------ |------------------------------------------------------------------ |
| joaoapps_join/ring | |
| joaoapps_join/send_sms | {"number":"5553334444", "message":"Hello!"} |
| joaoapps_join/send_tasker | {"command":"test"} |
| joaoapps_join/send_url | {"url":"http://google.com"} |
| joaoapps_join/send_wallpaper | {"url":"http://www.planwallpaper.com/static/images/ZhGEqAP.jpg"} |
| joaoapps_join/send_file | {"url":"http://download.thinkbroadband.com/5MB.zip"} |

View File

@ -0,0 +1,23 @@
---
layout: page
title: "Blinkt!"
description: "Instructions how to setup Blinkt! RGB LED lights within Home Assistant."
date: 2017-04-30 9:00
sidebar: true
comments: false
sharing: true
footer: true
logo: raspberry-pi.png
ha_category: Light
ha_iot_class: "Local Push"
---
The `blinkt` light platform lets you control the [Blinkt!](https://shop.pimoroni.com/products/blinkt) board, featuring eight super-bright RGB LEDs.
To enable `blinkt` in your installation, add the following to your `configuration.yaml` file:
```yaml
# Example configuration.yaml entry
light:
- platform: blinkt
```

View File

@ -54,7 +54,7 @@ Configuration variables within devices list:
<p class='note'>
Depending on your controller or bulb type, there are two ways to configure brightness.
The component defaults to rgbw. If your device has a separate white channel, you do not need to specify anything else; changing the brighness will set the device to white with your chosen brightness. However, if your device does not have a separate white channel, you will need to set the mode to rgb. In this mode, the device will keep the same color, and adjust the rgb values to dim or brighten the color.
The component defaults to rgbw. If your device has a separate white channel, you do not need to specify anything else; changing the white value will adjust the brightness of white channel keeping rgb color constant. However, if your device does not have a separate white channel, you will need to set the mode to rgb. In this mode, the device will keep the same color, and adjust the rgb values to dim or brighten the color.
</p>
@ -101,7 +101,7 @@ Will add a light without the white mode:
mode: "rgb"
```
Will add a light with white mode (default). Changing the brightness will set the bulb in white mode:
Will add a light with rgb+white mode (default). White and RGB channels can be adjusted independently using a slider and color picker respectively.
```yaml
192.168.1.10:

View File

@ -0,0 +1,27 @@
---
layout: page
title: "Sense HAT Light"
description: "Instructions how to setup Sense HAT LED lights within Home Assistant."
date: 2017-04-29 16:00
sidebar: true
comments: false
sharing: true
footer: true
logo: sense-hat.png
ha_version: 0.44
ha_category: Light
ha_iot_class: "Assumed State"
---
The `sensehat` light platform lets you control the [Sense HAT](https://www.raspberrypi.org/products/sense-hat/) board's 8x8 RGB LED matrix on your Raspberry Pi from within Home Assistant.
To add `sensehat` to your installation, add the following to your `configuration.yaml` file:
```yaml
# Example configuration.yaml entry
light:
platform: sensehat
name: SenseHAT
```
For setting up the Sense HAT sensors, please see the [Sense HAT sensor component](/components/sensor.sensehat/).

View File

@ -14,4 +14,3 @@ ha_release: 0.43
---
For installation instructions, see [the Trådfri component](/components/tradfri/).

View File

@ -0,0 +1,16 @@
---
layout: page
title: "ZigBee Home Automation Light"
description: "Instructions how to setup ZigBee Home Automation lights within Home Assistant."
date: 2017-02-22 00:00
sidebar: true
comments: false
sharing: true
footer: true
logo: zigbee.png
ha_category: Light
---
To get your ZigBee lights working with Home Assistant, follow the
instructions for the general [ZigBee Home Automation
component](/components/zha/).

View File

@ -24,11 +24,13 @@ Supported devices:
- Denon AVR receivers with Integrated Network support (partial support)
- Denon AVR-X4100W (via denonavr platform)
- Denon AVR receivers (via denonavr platform (untested))
- Marantz M-RC610 (via denonavr platform)
- Marantz receivers (experimental via denonavr platform)
To add a Denon Network Receiver to your installation, add the following to your `configuration.yaml` file:
**Telnet interface**
**Telnet platform**
```yaml
# Example configuration.yaml entry
media_player:
@ -49,7 +51,7 @@ A few notes for platform: denon
- Seeking cannot be implemented as the UI sends absolute positions. Only seeking via simulated button presses is possible.
**denonavr interface**
**denonavr platform**
```yaml
# Example configuration.yaml entry
media_player:
@ -63,6 +65,6 @@ Configuration variables:
- **name** (*Optional*): Name of the device. If not set, friendlyName of receiver is used.
A few notes for platform: denonavr
- Additional option the control Denon AVR receivers with a builtin web server is using the HTTP interface with denonavr platform
- denonavr platform supports some additional functionalities like album covers, custom input source names and auto discovery
- Still be careful with the volume. 100% in an action movie will tear down your walls.
- Additional option the control Denon AVR receivers with a builtin web server is using the HTTP interface with denonavr platform.
- denonavr platform supports some additional functionalities like album covers, custom input source names and auto discovery.
- Marantz receivers seem to a have quite simliar interface. Thus if you own one, give it a try.

View File

@ -22,6 +22,7 @@ Currently known supported models:
- TC-P65VT30
- TX-55CX700E
- TX-49DX650B
- TX-50DX700B
If your model is not on the list then give it a test, if everything works correctly then add it to the list on [GitHub](https://github.com/home-assistant/home-assistant.io).

View File

@ -35,7 +35,7 @@ Configuration variables:
- **sender** (*Optional*): E-mail address of the sender.
- **username** (*Optional*): Username for the SMTP account.
- **password** (*Optional*): Password for the SMTP server that belongs to the given username. If the password contains a colon it need to be wrapped in apostrophes.
- **recipient** (*Required*): Recipient of the notification.
- **recipient** (*Required*): E-mail address of the recipient of the notification. This can be a recpient address or a list of addresses for multiple recipients.
- **starttls** (*Optional*): Enables STARTTLS, eg. True or False. Defaults to False.
- **debug** (*Optional*): Enables Debug, eg. True or False. Defaults to False.
@ -53,7 +53,9 @@ notify:
starttls: true
username: john@gmail.com
password: thePassword
recipient: james@gmail.com
recipient:
- james@gmail.com
- bob@gmail.com
```
Keep in mind that Google has some extra layers of protection which need special attention (Hint: 'Less secure apps').

View File

@ -0,0 +1,76 @@
---
layout: page
title: "OpenCV"
description: "Instructions how to setup OpenCV within Home Assistant."
date: 2017-04-01 22:36
sidebar: true
comments: false
sharing: true
footer: true
logo: opencv.png
ha_category: Hub
ha_release: 0.44
ha_iot_class: "Local Push"
---
[OpenCV](https://www.opencv.org) is an open source computer vision image and video processing library.
Some pre-defined classifiers can be found here: https://github.com/opencv/opencv/tree/master/data
### {% linkable_title Configuration %}
To setup OpenCV with Home Assistant, add the following section to your `configuration.yaml` file:
```yaml
# Example configuration.yaml entry
opencv:
classifier_group:
- name: Family
add_camera: True
entity_id:
- camera.front_door
- camera.living_room
classifier:
- file_path: /path/to/classifier/face.xml
name: Bob
- file_path: /path/to/classifier/face_profile.xml
name: Jill
min_size: (20, 20)
color: (255, 0, 0)
scale: 1.6
neighbors: 5
- file_path: /path/to/classifier/kid_face.xml
name: Little Jimmy
```
Configuration variables:
- **name** (*Required*): The name of the OpenCV image processor.
- **entity_id** (*Required*): The camera entity or list of camera entities that this classification group will be applied to.
- **classifier** (*Required*): The classification configuration for to be applied:
- **file_path** (*Required*): The path to the HAARS or LBP classification file (xml).
- **name** (*Optional*): The classification name, the default is `Face`.
- **min_size** (*Optional*): The minimum size for detection as a tuple `(width, height)`, the default is `(30, 30)`.
- **color** (*Optional*): The color, as a tuple `(Blue, Green, Red)` to draw the rectangle when linked to a dispatcher camera, the default is `(255, 255, 0)`.
- **scale** (*Optional*): The scale to perform when processing, this is a `float` value that must be greater than or equal to `1.0`, default is `1.1`.
- **neighbors** (*Optional*): The minimum number of neighbors required for a match, default is `4`. The higher this number, the more picky the matching will be; lower the number, the more false positives you may experience.
Once OpenCV is configured, it will create an `image_processing` entity for each classification group/camera entity combination as well as a camera so you can see what Home Assistant sees.
The attributes on the `image_processing` entity will be:
```json
'matches': {
'Bob': [
(x, y, w, h)
],
'Jill': [
(x, y, w, h)
],
'Little Jimmy': [
(x, y, w, h)
]
}
```

View File

@ -0,0 +1,54 @@
---
layout: page
title: "Plant Observer"
description: "Automation component to observe the status of your plants."
date: 2017-05-06 08:00
sidebar: true
comments: false
sharing: true
footer: true
ha_category: Other
ha_release: 0.44
---
```yaml
plant:
simulated_plant:
sensors:
moisture: sensor.mqtt_plant_moisture
battery: sensor.mqtt_plant_battery
temperature: sensor.mqtt_plant_temperature
conductivity: sensor.mqtt_plant_conductivity
brightness: sensor.mqtt_plant_brightness
min_moisture: 20
max_moisture: 60
min_battery: 17
min_conductivity: 500
min_temperature: 15
```
## Using plain MQTT sensor to get the data
```yaml
sensor:
- platform: mqtt
name: mqtt_plant_moisture
state_topic: test/simulated_plant
value_template: '{{ value_json.moisture }}'
- platform: mqtt
name: mqtt_plant_battery
state_topic: test/simulated_plant
value_template: '{{ value_json.battery }}'
- platform: mqtt
name: mqtt_plant_temperature
state_topic: test/simulated_plant
value_template: '{{ value_json.temperature }}'
- platform: mqtt
name: mqtt_plant_conductivity
state_topic: test/simulated_plant
value_template: '{{ value_json.conductivity }}'
- platform: mqtt
name: mqtt_plant_brightness
state_topic: test/simulated_plant
value_template: '{{ value_json.brightness }}'
```

View File

@ -0,0 +1,37 @@
---
layout: page
title: "RSS feed template"
description: "Instructions how to setup an RSS feed for sensor information and other."
date: 2017-04-11 20:42
sidebar: true
comments: false
sharing: true
footer: true
ha_category: Front end
ha_release: 0.43
---
The `rss_feed_template` component can export any information from Home Assistant as static RSS feed. This can be used to display those information on several devices using RSS readers. While native apps for Home Assistant are not widely available, native RSS readers exists for almost any platform.
E.g. on android, the app "Simple RSS Widget" can be used to display temperatures on the home screen.
```yaml
# Example configuration.yml entry
rss_feed_template:
garden:
requires_api_password: False
title: "Garden {% raw %}{{ as_timestamp(now())|timestamp_custom('%H:%m', True) }}{% endraw %}"
items:
- title: "Outside temperature"
description: "{% raw %}{% if is_state('sensor.temp_outside','unknown') %}---{% else %}{{states.sensor.temp_outside.state}} °C{% endif %}{% endraw %}"
```
Configuration variables:
- **requires_api_password:** (*Optional*): If true and an api password is set, the password must be passed via '?api_password=...' parameter (Default: True)
- **feed_id** (*Required*): The key is used as id of the feed. The feed can be accessed at /api/rss_template/feed_id (example: 'garden')
- **title** (*Optional*): The title of the feed, which is parsed as [template](/topics/templating/).
- **items** (*Required*): A list of feed items
- **items/title** (*Optional*): The title of the item, which is parsed as [template](/topics/templating/).
- **items/description** (*Optional*): The description of the item, which is parsed as [template](/topics/templating/).

View File

@ -0,0 +1,34 @@
---
layout: page
title: "Certificate Expiry"
description: "Instructions on how to set up HTTPS (SSL) certificate expiry sensors within Home Assistant."
date: 2017-04-24 14:14
sidebar: true
comments: false
sharing: true
footer: true
logo: home-assistant.png
ha_category: System Monitor
ha_release: 0.44
---
The `cert_expiry` sensor fetches information from a configured URL and displays the certificate expiry in days.
To add the Certificate Expiry sensor to your installation, add these options to `configuration.yaml` file:
```yaml
# Example configuration.yaml entry
sensor:
- platform: cert_expiry
host: home-assistant.io
```
Configuration variables:
- **host** (*Required*): The host FQDN (or IP) to retrieve certificate from.
- **port** (*Optional*): The port number where the server is running. Defaults to `443`.
<p class='note warning'>
Make sure that the URL exactly matches your endpoint or resource.
</p>

View File

@ -0,0 +1,18 @@
---
layout: page
title: "Eight Sleep Sensor"
description: "Instructions how to integrate sensors for Eight Sleep within Home Assistant."
date: 2017-04-24 00:00
sidebar: true
comments: false
sharing: true
footer: true
logo: eight_sleep.png
ha_category: Sensor
ha_release: "0.44"
---
The `eight_sleep` sensor platform lets you observe states of [Eight Sleep](https://eightsleep.com/) sensors through Home Assistant. This includes bed state and results of the current and previous sleep sessions.
Devices will be configured automatically. Please refer to the [component](/components/eight_sleep/) configuration on how to setup.

View File

@ -0,0 +1,118 @@
---
layout: page
title: "Enviro pHAT"
description: "Instructions how to integrate the Enviro pHAT within Home Assistant."
date: 2017-05-03 17:00
sidebar: true
comments: false
sharing: true
footer: true
logo: raspberry-pi.png
ha_category: Sensor
ha_iot_class: "Local Polling"
ha_release: 0.44
---
The `envirophat` sensor platform allows you to display information collected by an [Enviro pHAT](https://shop.pimoroni.com/products/enviro-phat) add-on board for the Raspberry Pi. The board featues a wide range of sensors, such as:
- BMP280 temperature/pressure sensor
- TCS3472 light and RGB colour sensor with two LEDs for illumination
- LSM303D accelerometer/magnetometer sensor
- ADS1015 4-channel 3.3v, analog to digital sensor (ADC)
To add this platform to your installation, add the following to your `configuration.yaml` file:
```yaml
# Example configuration.yaml entry,
# which is equivalent to the default setup
sensor:
- platform: envirophat
use_led: false
display_options:
- temperature
- pressure
- light
- light_red
- light_green
- light_blue
- accelerometer_x
- accelerometer_y
- accelerometer_z
- magnetometer_x
- magnetometer_y
- magnetometer_z
- voltage_0
- voltage_1
- voltage_2
- voltage_3
```
Configuration variables:
- **display_options** (*Optional*) array: List of readings to monitor. Default is monitoring all of them:
- **temperature**: ambient temperature in Celsius. Since the sensor is close to the Raspberry Pi, that migth affect the accuracy of the reading (ie. the Pi might heat up the sensor)
- **pressure**: atmospheric pressure in hPa.
- **light**: ambient light, as an integer in the 0-65535 range
- **light_red**: red color reading scaled to the ambient light, as an integer in the 0-255 range
- **light_green**: green color reading scaled to the ambient light, as an integer in the 0-255 range
- **light_blue**: blue color reading scaled to the ambient light, as an integer in the 0-255 range
- **accelerometer_x**: accelerometer reading in units of G, along the X axis
- **accelerometer_y**: accelerometer reading in units of G, along the Y axis
- **accelerometer_z**: accelerometer reading in units of G, along the Z axis
- **magnetometer_x**: magnetometer reading, the X component of the raw vector
- **magnetometer_y**: magnetometer reading, the Y component of the raw vector
- **magnetometer_z**: magnetometer reading, the X component of the raw vector
- **voltage_0**: voltage reading on Analog In 0 in units of V
- **voltage_1**: voltage reading on Analog In 1 in units of V
- **voltage_2**: voltage reading on Analog In 2 in units of V
- **voltage_3**: voltage reading on Analog In 3 in units of V
- **use_led** (*Optional*) True / False boolean; Default value is False, declaring that the onboard LEDs are *not* used for the color measurements thus these readings are based on the ambient light. If the value is set to True, the onboard LEDs will blink whenever a reading is taken.
### Notes
* **X, Y, Z axes**
* X is parallel with the long edge of the board
* Y is parallel with the short edge of the board
* Z is perpendicular to the board
* **Voltages**
* voltage readings are done in the 0-3.3V range, please do not connect higher voltages than that! See the [Enviro pHAT's getting started guide](https://learn.pimoroni.com/tutorial/sandyj/getting-started-with-enviro-phat) regarding how to make a voltage divider
### Give the values friendly names & icons
Add something like the following to your [customize section](/docs/configuration/customizing-devices/):
```yaml
# Example configuration.yaml entry
customize:
sensor.accelerometer_z:
icon: mdi:airplane-landing
friendly_name: "Acc Z"
sensor.magnetometer_x:
icon: mdi:arrow-up-bold-hexagon-outline
friendly_name: "Magnetic X"
sensor.pressure:
icon: mdi:weight
friendly_name: "Pressure"
```
### Create groups
```yaml
# Example configuration.yaml entry
group:
enviro_phat_voltages:
name: Enviro pHAT Volages`
entities:
- sensor.voltage_0
- sensor.voltage_1
- sensor.voltage_2
- sensor.voltage_3
```
### Enabling the required `i2c-1` device
Since the Enviro pHAT communicates over I2C, you might also need to make sure that the I2C devices are enabled, by adding or uncommenting the following line in `/boot/config.txt` (see the [DT Parameters section](https://www.raspberrypi.org/documentation/configuration/device-tree.md) in the Raspberry Pi documentation):
```
dtparam=i2c_arm=on
```

View File

View File

@ -0,0 +1,48 @@
---
layout: page
title: "Pushbullet Mirrors"
description: "Instructions how to read user pushes in Home Assitant"
date: 2017-04-20 16:44
sidebar: true
comments: false
sharing: true
footer: true
logo: pushbullet.png
ha_category: Sensor
ha_release: 0.44
---
The `pushbullet` sensor platform reads messages from [Pushbullet](https://www.pushbullet.com/), a free service to send information between your phones, browsers, and friends.
This sensor platform provide sensors that show the properties of the latest recevied pushbullet notification mirror.
Notification Mirroring allows users to see their Android device's notifications on their computer. It must be first enabled in the app and is currently only available on the Android platform. For more information, please see [this announcement](https://blog.pushbullet.com/2013/11/12/real-time-notification-mirroring-from-android-to-your-computer/) on the Pushbullet Blog
To enable the Pushbullet sensor in your installation, add the following to your `configuration.yaml` file:
```yaml
# Example configuration.yaml entry
sensor:
- platform: pushbullet
api_key: YOUR_API_KEY
monitored_conditions:
- body
```
Configuration variables:
- **api_key** (*Required*): Enter the API key for Pushbullet. Go to [https://www.pushbullet.com/#settings/account](https://www.pushbullet.com/#settings/account) to retrieve your API key/access token.
- **monitored_conditions** array (*Optional*): Properties of the push to monitor. Defaults to `body` and `title`.
- **application_name**: The application sending the push.
- **body**: Body of the message.
- **notification_id**: ID of the notification.
- **notification_tag**: Tag (if the application sending supports it).
- **package_name**: Name of the sender's package.
- **receiver_email**: The email of the push's target.
- **sender_email**: The sender of the push.
- **source_device_iden**: ID of the sender's device.
- **title**: Title of the push.
- **type**: Type of push.
All properties will be displayed as attributes. The properties array are just for logging the sensor readings for multiple properties.

View File

@ -150,3 +150,5 @@ This fix has been tested with a clean install of:
and
* [Home-Assistant 0.37.1](https://home-assistant.io/getting-started/installation-raspberry-pi-all-in-one/)
For setting up the Sense HAT's RGB LED matrix as lights within Home Assistant, please see the [Sense HAT light component](/components/light.sensehat/).

View File

@ -0,0 +1,16 @@
---
layout: page
title: "ZigBee Home Automation Sensor"
description: "Instructions how to setup ZigBee Home Automation sensors within Home Assistant."
date: 2017-02-22 00:00
sidebar: true
comments: false
sharing: true
footer: true
logo: zigbee.png
ha_category: Sensor
---
To get your ZigBee sensors working with Home Assistant, follow the
instructions for the general [ZigBee Home Automation
component](/components/zha/).

View File

@ -0,0 +1,16 @@
---
layout: page
title: "ZigBee Home Automation Switch"
description: "Instructions how to setup ZigBee Home Automation switches within Home Assistant."
date: 2017-02-22 00:00
sidebar: true
comments: false
sharing: true
footer: true
logo: zigbee.png
ha_category: Switch
---
To get your ZigBee switches working with Home Assistant, follow the
instructions for the general [ZigBee Home Automation
component](/components/zha/).

View File

@ -38,7 +38,6 @@ macOS:
$ sudo brew install libtool
$ sudo brew install autoconf
$ sudo brew install automake
$ git clone --depth 1 --recursive -b dtls https://github.com/home-assistant/libcoap.git
$ cd libcoap
$ ./autogen.sh
@ -51,7 +50,7 @@ You will be prompted to configure the gateway through the Home Assistant interfa
<p class='note'>
If you see an "Unable to connect" message, restart the gateway and try again.
</p>
The gateway can also be manually configured by adding the following lines to your `configuration.yaml` file:
```yaml

View File

@ -0,0 +1,47 @@
---
layout: page
title: "Zigbee Home Automation"
description: "Instructions how to integrate your Zigbee Home Automation within Home Assistant."
date: 2017-02-22 19:59
sidebar: true
comments: false
sharing: true
footer: true
logo: zigbee.png
ha_category: Hub
ha_release: 0.39
---
[ZigBee Home Automation](http://www.zigbee.org/zigbee-for-developers/applicationstandards/zigbeehomeautomation/)
integration for Home Assistant allows you to connect many off-the-shelf ZigBee
devices to Home Assistant, using a compatible ZigBee radio.
There is currently support for the following device types within Home Assistant:
- [Binary Sensor](../binary_sensor.zha) (e.g. motion and door sensors)
- [Sensor](../sensor.zha) (e.g. temperature sensors)
- [Light](../light.zha)
- [Switch](../switch.zha)
Known working ZigBee radios:
- Nortek/GoControl Z-Wave & Zigbee USB Adaptor - Model HUSBZB-1
To configure the component, a `zha` section must be present in the `configuration.yaml`,
and the path to the serial device for the radio and path to the database which will persist your network data is required.
```yaml
# Example configuration.yaml entry
zha:
usb_path: /dev/ttyUSB2
database_path: zigbee.db
```
Configuration variables:
- **usb_path** (*Required*): Path to the serial device for the radio.
- **database_path** (*Required*): Path to the database which will keep persisten newtork data.
To add new devices to the network, call the `permit` service on the `zha` domain, and then follow the device instructions.

View File

@ -0,0 +1,13 @@
---
layout: page
title: "Configuration.yaml by fredsmith"
description: ""
date: 2017-04-28 18:30
sidebar: true
comments: false
sharing: true
footer: true
ha_category: Example configuration.yaml
ha_external_link: https://git.smith.bz/derf/homeautomation
---

View File

@ -0,0 +1,487 @@
---
layout: post
title: "Home Assistant 0.44: ZigBee, OpenCV and DLib"
description: "Speak natively with Zigbee network, detect faces with OpenCV: 0.44 is here."
date: 2017-05-06 01:04:05 +0000
date_formatted: "May 6, 2017"
author: Paulus Schoutsen
author_twitter: balloob
comments: true
categories: Release-Notes
og_image: /images/blog/2017-05-0.44/components.png
---
<a href='/components/#added_in_current_version'><img src='/images/blog/2017-05-0.44/components.png' style='border: 0;box-shadow: none;'></a>
This release brings some great new integrations. The biggest one is the native ZigBee integration by [Russell Cloran][@rcloran]. This will allow Home Assistant to natively control Philips Hue lights without the need for a hub! (IKEA Tradfri lights not yet due to implementing a different profile)
Another great new addition is OpenCV by [Teagan Glenn][@teagan42]. So now you'll be able to unlock all the cool stuff from OpenCV right in Home Assistant. And if OpenCV is not your style, you can try out the new DLib integration added by [Pascal Vizeli][@pvizeli] in this release.
This release also includes a [new component][rss_feed_template docs] to dynamically generate RSS feeds based on a template. This means that any RSS widget on your phone, tablet or computer can now be used to show Home Assistant data!
Enjoy!
## {% linkable_title If you need help... %}
...don't hesitate to use our very active [forums][forum] or join us for a little [chat][gitter]. 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][issue]. Make sure to fill in all fields of the issue template.
## {% linkable_title New integrations %}
- Pushbullet notification sensor ([@jotunacorn] - [#7182]) ([sensor.pushbullet docs])
- Add https certificate expiry sensor ([@fabfurnari] - [#7272]) ([sensor.cert_expiry docs])
- RSS feed template ([@micw] - [#7032]) ([rss_feed_template docs])
- Add support for Zigbee Home Automation ([@rcloran] - [#6263]) ([zha docs]) ([binary_sensor.zha docs]) ([light.zha docs]) ([sensor.zha docs]) ([switch.zha docs])
- light.blinkt: add support for Blinkt! lights on Raspberry Pi ([@imrehg] - [#7377]) ([light.blinkt docs])
- Plant automation ([@ChristianKuehnel] - [#7131]) ([plant docs])
- Add Eight sleep component ([@mezz64] - [#7275]) ([eight_sleep docs]) ([binary_sensor.eight_sleep docs]) ([sensor.eight_sleep docs])
- OpenGarage support ([@swbradshaw] - [#7338]) ([cover.opengarage docs])
- Add Sensibo climate platform ([@andrey-git] - [#7379]) ([climate docs])
- Pilight binary sensor components ([@zeltom] - [#6774]) ([binary_sensor.pilight docs])
- Opencv ([@Teagan42] - [#7261]) ([opencv docs]) ([image_processing.opencv docs])
- Add new sensor: Enviro pHAT ([@imrehg] - [#7427]) ([sensor.envirophat docs])
- Add support for face recognition with dlib ([@pvizeli] - [#7421]) ([image_processing.dlib_face_detect docs]) ([image_processing.dlib_face_identify docs])
<!--more-->
## {% linkable_title Breaking changes %}
- Python Open Z-Wave made a release that fixed string processing. This was backwards incompatible. We have updated our code so you'll have to update to the latest Python Open Z-Wave with this release. You can also wait one release, as next release we'll introduce automatic installing of Python Open Z-Wave. ([@keatontaylor] - [#7266]) ([climate.zwave docs]) (breaking change)
- InfluxDB configuration to blacklist domains has been updated to allow more features. ([@janLo] - [#7264]) (breaking change)
```yaml
# New format
influxdb:
exclude:
entities:
- entity.id1
- entity.id2
domains:
- automation
include:
entities:
- entity.id3
- entity.id4
```
- The Automatic device tracker has been converted from polling to websocket push. This requires you to make a change in your Automatic account, see [our documentation for instructions][device_tracker.automatic docs]. ([@armills] - [#7404]) ([device_tracker.automatic docs]) (breaking change)
- The LimitlessLED color temperatures have been turned around to work like other lights. To maintain previous colors you must adjust the color_temp value in your light.turn_on calls to 654 minus your old value (for example, 280 becomes 374). ([@amelchio] - [#7359]) (breaking change)
- Joao apps will now require an API key to be set for all commands. ([@nkgilley] - [#7443]) ([joaoapps_join docs]) ([notify.joaoapps_join docs]) (breaking change)
## {% linkable_title All changes %}
- LIFX light effects ([@amelchio] - [#7145]) ([light.lifx docs])
- HassIO API v2 ([@pvizeli] - [#7201])
- Capture and log pip install error output ([@postlund] - [#7200])
- Support xy_color with LIFX lights ([@amelchio] - [#7208]) ([light.lifx docs])
- Update ios.py ([@biacz] - [#7160])
- Fix arwn platform to update hass state when events are received ([@sdague] - [#7202])
- Issue 6749 updated pylgtv to 0.1.6 to fix thread leak in asyncio loop ([@hmn] - [#7199]) ([media_player.webostv docs]) ([notify.webostv docs])
- tradfri: Improve color temp support detection ([@balloob] - [#7211])
- Fix tradfri lights ([@MartinHjelmare] - [#7212])
- Bump version to 0.44.0.dev0 ([@fabaff] - [#7217])
- Pushbullet notification sensor ([@jotunacorn] - [#7182]) ([sensor.pushbullet docs]) (new-platform)
- Zwave cover workaround for graber shades. ([@turbokongen] - [#7204]) ([cover.zwave docs])
- Fixed typo and clarified details for Lifx effects ([@arsaboo] - [#7226])
- Remove superfluous comments and update ordering ([@fabaff] - [#7227]) ([maxcube docs]) ([binary_sensor.maxcube docs]) ([climate.maxcube docs])
- lyft sensor: re-enable Prime Time rate attribute ([@drkp] - [#6982]) ([sensor.lyft docs])
- Bump a couple of dependencies ([@mjg59] - [#7231]) ([light.avion docs]) ([light.decora docs])
- Refactor lyft sensor update ([@armills] - [#7233]) ([sensor.lyft docs])
- LIFX: avoid "Unable to remove unknown listener" warning ([@amelchio] - [#7235]) ([light.lifx docs])
- Upgrade pygatt to 3.1.1 ([@fabaff] - [#7220])
- Upgrade mutagen to 1.37.0 ([@fabaff] - [#7216])
- Upgrade speedtest-cli to 1.0.5 ([@fabaff] - [#7215])
- Upgrade paho-mqtt to 1.2.3 ([@fabaff] - [#7214])
- Upgrade aiohttp_cors to 0.5.3 ([@fabaff] - [#7213])
- Use consts and string formatting ([@fabaff] - [#7243]) ([notify.instapush docs])
- Pushed to version 0.4.0 of denonavr which also includes experimental support for Marantz receivers ([@scarface-4711] - [#7250])
- Add notice regarding submission of analytics ([@craftyguy] - [#7263])
- Iterating the dictionary directly ([@fabaff] - [#7251])
- Don't use len(SEQUENCE) as condition value ([@fabaff] - [#7249])
- Workround for wemo subscription bug. ([@pavoni] - [#7245]) ([wemo docs]) ([switch.wemo docs])
- Fix telegram webhooks ([@MartinHjelmare] - [#7236]) ([telegram_bot docs]) ([telegram_bot.webhooks docs])
- Work around bad content-type in Hook api response ([@KlaasH] - [#7267]) ([switch.hook docs])
- Rfxtrx upgrade lib 0.18 ([@danielhiversen] - [#7273]) ([rfxtrx docs])
- WIP: HassIO allow to access to container logs. ([@pvizeli] - [#7271])
- Update aiolifx ([@amelchio] - [#7279]) ([light.lifx docs])
- Refactor matrix notify service ([@Cadair] - [#7122]) ([notify.matrix docs])
- Add support for Ukrainian Language in Google TTS ([@LvivEchoes] - [#7278])
- Add https certificate expiry sensor ([@fabfurnari] - [#7272]) ([sensor.cert_expiry docs]) (new-platform)
- Fix telegram_polling no first_name or last_name ([@darookee] - [#7281]) ([telegram_bot docs])
- Add script to import state events to InfluxDB ([@janLo] - [#7254])
- Fix HassIO bug with supervisor update & log ([@pvizeli] - [#7282])
- Updating ping binary sensor with Windows support ([@patrickeasters] - [#7253]) ([binary_sensor.ping docs])
- Fixes utf-8 encoding no longer required by python-openzwave0.3.3 ([@keatontaylor] - [#7266]) ([climate.zwave docs]) (breaking change)
- Recorder: Check for ENTITY_ID key that contains None value ([@balloob] - [#7287]) ([recorder docs])
- Upgrade pytradfri to 1.1 ([@balloob] - [#7290])
- Adding group control to tradfri light component ([@cyberjunky] - [#7248]) ([light.tradfri docs])
- Feature/rss feed template ([@micw] - [#7032]) ([rss_feed_template docs]) (new-platform)
- Add support for Zigbee Home Automation ([@rcloran] - [#6263]) ([zha docs]) ([binary_sensor.zha docs]) ([light.zha docs]) ([sensor.zha docs]) ([switch.zha docs]) (new-platform)
- Added scene controller support to the vera component, along with proper polling when a vera device needs it ([@alanfischer] - [#7234]) ([vera docs]) ([sensor.vera docs])
- Don't stack up error messages, fix link, and ordering ([@fabaff] - [#7291]) ([sensor.cert_expiry docs])
- Fix breaking SSL in test HTML5 ([@balloob] - [#7310]) ([notify.html5 docs])
- Upgrade pyhomematic, extend device support ([@danielperna84] - [#7303])
- Issue 7218 update pylgtv to 0.1.7 ([@hmn] - [#7302]) ([media_player.webostv docs]) ([notify.webostv docs])
- Version bump of aioautomatic ([@armills] - [#7300]) ([device_tracker.automatic docs])
- Upgrade python-telegram-bot to 5.3.1 ([@fabaff] - [#7311]) ([notify.telegram docs]) ([telegram_bot.polling docs]) ([telegram_bot.webhooks docs])
- Disable Open Z-Wave in Docker ([@balloob] - [#7315])
- LIFX: use white light when setting a specific temperature ([@amelchio] - [#7256]) ([light.lifx docs])
- Allow InfluxDB to blacklist domains ([@janLo] - [#7264]) (breaking change)
- Hassio api v3 ([@balloob] - [#7323])
- Update frontend ([@balloob] - [#7324])
- Reduce color_xy_brightness_to_hsv to color_xy_to_hs ([@amelchio] - [#7320]) ([light.hue docs]) ([light.lifx docs])
- Fix broken docker build ([@turbokongen] - [#7316])
- Re-enable Open Z-Wave in Dockerfile ([@balloob] - [#7325])
- Version bump for automatic ([@armills] - [#7329]) ([device_tracker.automatic docs])
- Right fix for Python Open Z-Wave in Docker ([@balloob] - [#7337])
- Use four-digits year ([@fabaff] - [#7336])
- Allow multiple recipients for SMTP notify ([@amelchio] - [#7319]) ([notify.smtp docs])
- Add auxheat to ecobee climate ([@titilambert] - [#6562]) ([climate.ecobee docs])
- Properly return self._unit_of_measurement in the unit_of_measurement function ([@robbiet480] - [#7341]) ([sensor.ios docs])
- Multiple changes (typo, ordering, docstrings, timeouts) ([@fabaff] - [#7343]) ([cover.garadget docs])
- Upgrade Flux led lb to 0.19 ([@danielhiversen] - [#7352]) ([light.flux_led docs])
- Add debug logging to pyvera events. ([@pavoni] - [#7364]) ([vera docs])
- Upgrade xmltodict to 0.11.0 ([@fabaff] - [#7355])
- Upgrade speedtest-cli to 1.0.6 ([@fabaff] - [#7354]) ([sensor.speedtest docs])
- Remove global limit on white light temperature ([@amelchio] - [#7206]) ([light docs]) ([light.hue docs]) ([light.zwave docs]) ([switch.flux docs])
- Remove state property from alarmdecoder binary sensor ([@balloob] - [#7370]) ([binary_sensor.alarmdecoder docs])
- Remove binary sensor platforms implementing state property ([@balloob] - [#7371]) ([binary_sensor.octoprint docs]) ([binary_sensor.workday docs])
- Feature/add mikrotik device tracker ([@LvivEchoes] - [#7366])
- Netdisco now returns a dictionary while it used to be a tuple, fixed ([@JasonCarter80] - [#7350])
- Create knx.py ([@onsmam] - [#7356])
- light.sensehat: plugin to control the 8x8 LED matrix on a Sense hat ([@imrehg] - [#7365])
- Update docstrings ([@fabaff] - [#7361]) ([ecobee docs]) ([enocean docs]) ([zha docs])
- Flux switch: avoid updates when off ([@amelchio] - [#7363]) ([switch.flux docs])
- Zoneminder: Fixed undefined index error ([@bah2830] - [#7340])
- optimize remote calls and apps on webostv media_player ([@hmn] - [#7191]) ([media_player.webostv docs])
- binary_sensor.workday: fix handling of states vs provinces ([@drkp] - [#7162]) ([binary_sensor.workday docs])
- Upgrade voluptuous to 0.10.5 ([@fabaff] - [#7107])
- Remove ordered_dict validator ([@balloob] - [#7375])
- light.blinkt: add support for Blinkt! lights on Raspberry Pi ([@imrehg] - [#7377]) ([light.blinkt docs]) (new-platform)
- improve handling of flux_led lights in RGBW mode ([@wuub] - [#7221])
- Plant (replacement for MiGardener) ([@ChristianKuehnel] - [#7131]) ([plant docs]) (new-platform)
- Add support for shuffle toggling on Spotify component. ([@abmantis] - [#7339]) ([media_player docs]) ([media_player.spotify docs])
- Upgrade Ring to 0.1.4 ([@tchellomello] - [#7386])
- Updated docstrings ([@arsaboo] - [#7383]) ([camera.netatmo docs])
- Fix impulse events, added error event for Homegear ([@danielperna84] - [#7349]) ([homematic docs])
- Fix YAML dump ([@balloob] - [#7388])
- Migrate updater to aiohttp ([@balloob] - [#7387]) ([updater docs])
- Remove path whitelisting for hassio ([@balloob] - [#7399])
- Add Eight sleep component ([@mezz64] - [#7275]) ([eight_sleep docs]) ([binary_sensor.eight_sleep docs]) ([sensor.eight_sleep docs]) (new-platform)
- OpenGarage support ([@swbradshaw] - [#7338]) ([cover.opengarage docs]) (new-platform)
- Clean up requirements ([@andrey-git] - [#7391]) ([nuimo_controller docs]) ([sensor.dht docs]) ([sensor.thinkingcleaner docs]) ([switch.thinkingcleaner docs])
- correct MQTT subscription filter ([@amigian74] - [#7269]) ([mqtt docs])
- Update docstrings ([@fabaff] - [#7374])
- light.blinkt: update brightness control logic ([@imrehg] - [#7389])
- Update docstrings ([@fabaff] - [#7405])
- Update LIFX default color for breathe/pulse effects ([@amelchio] - [#7407])
- LIFX: Add transition option to colorloop effect ([@amelchio] - [#7410])
- light.sensehat: brightness control logic update ([@imrehg] - [#7409]) ([light.sensehat docs])
- Add Sensibo climate platform ([@andrey-git] - [#7379]) ([climate docs]) (new-platform)
- Pilight binary sensor components ([@zeltom] - [#6774]) ([binary_sensor.pilight docs]) (new-platform)
- applx suggested fix from issue #6573 ([@wokar] - [#7390]) ([sensor.zamg docs])
- remove charset if set in content type header ([@hmn] - [#7411]) ([media_player docs])
- Convert automatic device tracker to push updates ([@armills] - [#7404]) ([device_tracker.automatic docs]) (breaking change)
- light.piglow update ([@imrehg] - [#7408]) ([light.piglow docs])
- Opencv ([@Teagan42] - [#7261]) ([opencv docs]) ([image_processing.opencv docs]) (new-platform)
- Fixed extra R in variable name. ([@cyberplant] - [#7418])
- Update docstrings ([@fabaff] - [#7420])
- ps - fix opencv ([@balloob] - [#7419])
- Comment out opencv-python that is not installable on arm ([@andrey-git] - [#7426])
- Reverse limitlessled color_temp range ([@amelchio] - [#7359]) (breaking change)
- Guard against no content type ([@balloob] - [#7432]) ([media_player docs])
- wsock.send_json is a coroutine ([@balloob] - [#7433])
- ps - fix websocket yielding pt2 ([@balloob] - [#7434])
- Upgrade temperusb to 1.5.3 ([@fabaff] - [#7428])
- update for pypi ([@nkgilley] - [#7430])
- Add new sensor: Enviro pHAT ([@imrehg] - [#7427]) ([sensor.envirophat docs]) (new-platform)
- Added osramlightify groups. ([@deisi] - [#7376]) ([light.osramlightify docs])
- Add support for face recognition with dlib ([@pvizeli] - [#7421]) ([image_processing.dlib_face_detect docs]) ([image_processing.dlib_face_identify docs]) ([image_processing.microsoft_face_detect docs]) (new-platform)
- Replace pymailgun with pymailgunner ([@pschmitt] - [#7436]) ([notify.mailgun docs])
- Suppress logs when octorpint goes offline ([@w1ll1am23] - [#7441]) ([octoprint docs])
- Update join ([@nkgilley] - [#7443]) ([joaoapps_join docs]) ([notify.joaoapps_join docs]) (breaking change)
- Bump pyvera version - handle malformed json replies in poll thread. ([@pavoni] - [#7440]) ([vera docs])
- Fix for broken virtual keys ([@danielperna84] - [#7439]) ([homematic docs])
- Get new token to keep pubnub updates working ([@w1ll1am23] - [#7437]) ([wink docs])
- Add hass to rfxtrx object ([@danielhiversen] - [#6844])
- sensor.envirophat: add missing requirement ([@imrehg] - [#7451]) ([sensor.envirophat docs])
[#6263]: https://github.com/home-assistant/home-assistant/pull/6263
[#6562]: https://github.com/home-assistant/home-assistant/pull/6562
[#6774]: https://github.com/home-assistant/home-assistant/pull/6774
[#6844]: https://github.com/home-assistant/home-assistant/pull/6844
[#6982]: https://github.com/home-assistant/home-assistant/pull/6982
[#7032]: https://github.com/home-assistant/home-assistant/pull/7032
[#7107]: https://github.com/home-assistant/home-assistant/pull/7107
[#7122]: https://github.com/home-assistant/home-assistant/pull/7122
[#7131]: https://github.com/home-assistant/home-assistant/pull/7131
[#7145]: https://github.com/home-assistant/home-assistant/pull/7145
[#7160]: https://github.com/home-assistant/home-assistant/pull/7160
[#7162]: https://github.com/home-assistant/home-assistant/pull/7162
[#7182]: https://github.com/home-assistant/home-assistant/pull/7182
[#7191]: https://github.com/home-assistant/home-assistant/pull/7191
[#7199]: https://github.com/home-assistant/home-assistant/pull/7199
[#7200]: https://github.com/home-assistant/home-assistant/pull/7200
[#7201]: https://github.com/home-assistant/home-assistant/pull/7201
[#7202]: https://github.com/home-assistant/home-assistant/pull/7202
[#7204]: https://github.com/home-assistant/home-assistant/pull/7204
[#7206]: https://github.com/home-assistant/home-assistant/pull/7206
[#7208]: https://github.com/home-assistant/home-assistant/pull/7208
[#7211]: https://github.com/home-assistant/home-assistant/pull/7211
[#7212]: https://github.com/home-assistant/home-assistant/pull/7212
[#7213]: https://github.com/home-assistant/home-assistant/pull/7213
[#7214]: https://github.com/home-assistant/home-assistant/pull/7214
[#7215]: https://github.com/home-assistant/home-assistant/pull/7215
[#7216]: https://github.com/home-assistant/home-assistant/pull/7216
[#7217]: https://github.com/home-assistant/home-assistant/pull/7217
[#7220]: https://github.com/home-assistant/home-assistant/pull/7220
[#7221]: https://github.com/home-assistant/home-assistant/pull/7221
[#7226]: https://github.com/home-assistant/home-assistant/pull/7226
[#7227]: https://github.com/home-assistant/home-assistant/pull/7227
[#7231]: https://github.com/home-assistant/home-assistant/pull/7231
[#7233]: https://github.com/home-assistant/home-assistant/pull/7233
[#7234]: https://github.com/home-assistant/home-assistant/pull/7234
[#7235]: https://github.com/home-assistant/home-assistant/pull/7235
[#7236]: https://github.com/home-assistant/home-assistant/pull/7236
[#7243]: https://github.com/home-assistant/home-assistant/pull/7243
[#7245]: https://github.com/home-assistant/home-assistant/pull/7245
[#7248]: https://github.com/home-assistant/home-assistant/pull/7248
[#7249]: https://github.com/home-assistant/home-assistant/pull/7249
[#7250]: https://github.com/home-assistant/home-assistant/pull/7250
[#7251]: https://github.com/home-assistant/home-assistant/pull/7251
[#7253]: https://github.com/home-assistant/home-assistant/pull/7253
[#7254]: https://github.com/home-assistant/home-assistant/pull/7254
[#7256]: https://github.com/home-assistant/home-assistant/pull/7256
[#7261]: https://github.com/home-assistant/home-assistant/pull/7261
[#7263]: https://github.com/home-assistant/home-assistant/pull/7263
[#7264]: https://github.com/home-assistant/home-assistant/pull/7264
[#7266]: https://github.com/home-assistant/home-assistant/pull/7266
[#7267]: https://github.com/home-assistant/home-assistant/pull/7267
[#7269]: https://github.com/home-assistant/home-assistant/pull/7269
[#7271]: https://github.com/home-assistant/home-assistant/pull/7271
[#7272]: https://github.com/home-assistant/home-assistant/pull/7272
[#7273]: https://github.com/home-assistant/home-assistant/pull/7273
[#7275]: https://github.com/home-assistant/home-assistant/pull/7275
[#7278]: https://github.com/home-assistant/home-assistant/pull/7278
[#7279]: https://github.com/home-assistant/home-assistant/pull/7279
[#7281]: https://github.com/home-assistant/home-assistant/pull/7281
[#7282]: https://github.com/home-assistant/home-assistant/pull/7282
[#7287]: https://github.com/home-assistant/home-assistant/pull/7287
[#7290]: https://github.com/home-assistant/home-assistant/pull/7290
[#7291]: https://github.com/home-assistant/home-assistant/pull/7291
[#7300]: https://github.com/home-assistant/home-assistant/pull/7300
[#7302]: https://github.com/home-assistant/home-assistant/pull/7302
[#7303]: https://github.com/home-assistant/home-assistant/pull/7303
[#7310]: https://github.com/home-assistant/home-assistant/pull/7310
[#7311]: https://github.com/home-assistant/home-assistant/pull/7311
[#7315]: https://github.com/home-assistant/home-assistant/pull/7315
[#7316]: https://github.com/home-assistant/home-assistant/pull/7316
[#7319]: https://github.com/home-assistant/home-assistant/pull/7319
[#7320]: https://github.com/home-assistant/home-assistant/pull/7320
[#7323]: https://github.com/home-assistant/home-assistant/pull/7323
[#7324]: https://github.com/home-assistant/home-assistant/pull/7324
[#7325]: https://github.com/home-assistant/home-assistant/pull/7325
[#7329]: https://github.com/home-assistant/home-assistant/pull/7329
[#7336]: https://github.com/home-assistant/home-assistant/pull/7336
[#7337]: https://github.com/home-assistant/home-assistant/pull/7337
[#7338]: https://github.com/home-assistant/home-assistant/pull/7338
[#7339]: https://github.com/home-assistant/home-assistant/pull/7339
[#7340]: https://github.com/home-assistant/home-assistant/pull/7340
[#7341]: https://github.com/home-assistant/home-assistant/pull/7341
[#7343]: https://github.com/home-assistant/home-assistant/pull/7343
[#7349]: https://github.com/home-assistant/home-assistant/pull/7349
[#7350]: https://github.com/home-assistant/home-assistant/pull/7350
[#7352]: https://github.com/home-assistant/home-assistant/pull/7352
[#7354]: https://github.com/home-assistant/home-assistant/pull/7354
[#7355]: https://github.com/home-assistant/home-assistant/pull/7355
[#7356]: https://github.com/home-assistant/home-assistant/pull/7356
[#7359]: https://github.com/home-assistant/home-assistant/pull/7359
[#7361]: https://github.com/home-assistant/home-assistant/pull/7361
[#7363]: https://github.com/home-assistant/home-assistant/pull/7363
[#7364]: https://github.com/home-assistant/home-assistant/pull/7364
[#7365]: https://github.com/home-assistant/home-assistant/pull/7365
[#7366]: https://github.com/home-assistant/home-assistant/pull/7366
[#7370]: https://github.com/home-assistant/home-assistant/pull/7370
[#7371]: https://github.com/home-assistant/home-assistant/pull/7371
[#7374]: https://github.com/home-assistant/home-assistant/pull/7374
[#7375]: https://github.com/home-assistant/home-assistant/pull/7375
[#7376]: https://github.com/home-assistant/home-assistant/pull/7376
[#7377]: https://github.com/home-assistant/home-assistant/pull/7377
[#7379]: https://github.com/home-assistant/home-assistant/pull/7379
[#7383]: https://github.com/home-assistant/home-assistant/pull/7383
[#7386]: https://github.com/home-assistant/home-assistant/pull/7386
[#7387]: https://github.com/home-assistant/home-assistant/pull/7387
[#7388]: https://github.com/home-assistant/home-assistant/pull/7388
[#7389]: https://github.com/home-assistant/home-assistant/pull/7389
[#7390]: https://github.com/home-assistant/home-assistant/pull/7390
[#7391]: https://github.com/home-assistant/home-assistant/pull/7391
[#7399]: https://github.com/home-assistant/home-assistant/pull/7399
[#7404]: https://github.com/home-assistant/home-assistant/pull/7404
[#7405]: https://github.com/home-assistant/home-assistant/pull/7405
[#7407]: https://github.com/home-assistant/home-assistant/pull/7407
[#7408]: https://github.com/home-assistant/home-assistant/pull/7408
[#7409]: https://github.com/home-assistant/home-assistant/pull/7409
[#7410]: https://github.com/home-assistant/home-assistant/pull/7410
[#7411]: https://github.com/home-assistant/home-assistant/pull/7411
[#7418]: https://github.com/home-assistant/home-assistant/pull/7418
[#7419]: https://github.com/home-assistant/home-assistant/pull/7419
[#7420]: https://github.com/home-assistant/home-assistant/pull/7420
[#7421]: https://github.com/home-assistant/home-assistant/pull/7421
[#7426]: https://github.com/home-assistant/home-assistant/pull/7426
[#7427]: https://github.com/home-assistant/home-assistant/pull/7427
[#7428]: https://github.com/home-assistant/home-assistant/pull/7428
[#7430]: https://github.com/home-assistant/home-assistant/pull/7430
[#7432]: https://github.com/home-assistant/home-assistant/pull/7432
[#7433]: https://github.com/home-assistant/home-assistant/pull/7433
[#7434]: https://github.com/home-assistant/home-assistant/pull/7434
[#7436]: https://github.com/home-assistant/home-assistant/pull/7436
[#7437]: https://github.com/home-assistant/home-assistant/pull/7437
[#7439]: https://github.com/home-assistant/home-assistant/pull/7439
[#7440]: https://github.com/home-assistant/home-assistant/pull/7440
[#7441]: https://github.com/home-assistant/home-assistant/pull/7441
[#7443]: https://github.com/home-assistant/home-assistant/pull/7443
[#7451]: https://github.com/home-assistant/home-assistant/pull/7451
[@Cadair]: https://github.com/Cadair
[@ChristianKuehnel]: https://github.com/ChristianKuehnel
[@JasonCarter80]: https://github.com/JasonCarter80
[@JshWright]: https://github.com/JshWright
[@KlaasH]: https://github.com/KlaasH
[@LvivEchoes]: https://github.com/LvivEchoes
[@MartinHjelmare]: https://github.com/MartinHjelmare
[@Teagan42]: https://github.com/Teagan42
[@abmantis]: https://github.com/abmantis
[@alanfischer]: https://github.com/alanfischer
[@amelchio]: https://github.com/amelchio
[@amigian74]: https://github.com/amigian74
[@andrey-git]: https://github.com/andrey-git
[@armills]: https://github.com/armills
[@arsaboo]: https://github.com/arsaboo
[@bah2830]: https://github.com/bah2830
[@balloob]: https://github.com/balloob
[@biacz]: https://github.com/biacz
[@craftyguy]: https://github.com/craftyguy
[@cribbstechnologies]: https://github.com/cribbstechnologies
[@cyberjunky]: https://github.com/cyberjunky
[@cyberplant]: https://github.com/cyberplant
[@danielhiversen]: https://github.com/danielhiversen
[@danielperna84]: https://github.com/danielperna84
[@darookee]: https://github.com/darookee
[@deisi]: https://github.com/deisi
[@drkp]: https://github.com/drkp
[@fabaff]: https://github.com/fabaff
[@fabfurnari]: https://github.com/fabfurnari
[@hmn]: https://github.com/hmn
[@imrehg]: https://github.com/imrehg
[@janLo]: https://github.com/janLo
[@jotunacorn]: https://github.com/jotunacorn
[@keatontaylor]: https://github.com/keatontaylor
[@mezz64]: https://github.com/mezz64
[@micw]: https://github.com/micw
[@mjg59]: https://github.com/mjg59
[@nkgilley]: https://github.com/nkgilley
[@onsmam]: https://github.com/onsmam
[@patrickeasters]: https://github.com/patrickeasters
[@pavoni]: https://github.com/pavoni
[@postlund]: https://github.com/postlund
[@pschmitt]: https://github.com/pschmitt
[@pvizeli]: https://github.com/pvizeli
[@rcloran]: https://github.com/rcloran
[@robbiet480]: https://github.com/robbiet480
[@scarface-4711]: https://github.com/scarface-4711
[@sdague]: https://github.com/sdague
[@swbradshaw]: https://github.com/swbradshaw
[@tchellomello]: https://github.com/tchellomello
[@titilambert]: https://github.com/titilambert
[@turbokongen]: https://github.com/turbokongen
[@w1ll1am23]: https://github.com/w1ll1am23
[@wokar]: https://github.com/wokar
[@wuub]: https://github.com/wuub
[@zeltom]: https://github.com/zeltom
[binary_sensor.alarmdecoder docs]: https://home-assistant.io/components/binary_sensor.alarmdecoder/
[binary_sensor.eight_sleep docs]: https://home-assistant.io/components/binary_sensor.eight_sleep/
[binary_sensor.maxcube docs]: https://home-assistant.io/components/binary_sensor.maxcube/
[binary_sensor.octoprint docs]: https://home-assistant.io/components/binary_sensor.octoprint/
[binary_sensor.pilight docs]: https://home-assistant.io/components/binary_sensor.pilight/
[binary_sensor.ping docs]: https://home-assistant.io/components/binary_sensor.ping/
[binary_sensor.workday docs]: https://home-assistant.io/components/binary_sensor.workday/
[binary_sensor.zha docs]: https://home-assistant.io/components/binary_sensor.zha/
[camera.netatmo docs]: https://home-assistant.io/components/camera.netatmo/
[climate docs]: https://home-assistant.io/components/climate/
[climate.ecobee docs]: https://home-assistant.io/components/climate.ecobee/
[climate.maxcube docs]: https://home-assistant.io/components/climate.maxcube/
[climate.zwave docs]: https://home-assistant.io/components/climate.zwave/
[cover.garadget docs]: https://home-assistant.io/components/cover.garadget/
[cover.opengarage docs]: https://home-assistant.io/components/cover.opengarage/
[cover.zwave docs]: https://home-assistant.io/components/cover.zwave/
[device_tracker.automatic docs]: https://home-assistant.io/components/device_tracker.automatic/
[device_tracker.zha docs]: https://home-assistant.io/components/device_tracker.zha/
[ecobee docs]: https://home-assistant.io/components/ecobee/
[eight_sleep docs]: https://home-assistant.io/components/eight_sleep/
[enocean docs]: https://home-assistant.io/components/enocean/
[homematic docs]: https://home-assistant.io/components/homematic/
[image_processing.dlib_face_detect docs]: https://home-assistant.io/components/image_processing.dlib_face_detect/
[image_processing.dlib_face_identify docs]: https://home-assistant.io/components/image_processing.dlib_face_identify/
[image_processing.microsoft_face_detect docs]: https://home-assistant.io/components/image_processing.microsoft_face_detect/
[image_processing.opencv docs]: https://home-assistant.io/components/image_processing.opencv/
[joaoapps_join docs]: https://home-assistant.io/components/joaoapps_join/
[light docs]: https://home-assistant.io/components/light/
[light.avion docs]: https://home-assistant.io/components/light.avion/
[light.blinkt docs]: https://home-assistant.io/components/light.blinkt/
[light.decora docs]: https://home-assistant.io/components/light.decora/
[light.flux_led docs]: https://home-assistant.io/components/light.flux_led/
[light.hue docs]: https://home-assistant.io/components/light.hue/
[light.lifx docs]: https://home-assistant.io/components/light.lifx/
[light.osramlightify docs]: https://home-assistant.io/components/light.osramlightify/
[light.piglow docs]: https://home-assistant.io/components/light.piglow/
[light.sensehat docs]: https://home-assistant.io/components/light.sensehat/
[light.tradfri docs]: https://home-assistant.io/components/light.tradfri/
[light.zha docs]: https://home-assistant.io/components/light.zha/
[light.zwave docs]: https://home-assistant.io/components/light.zwave/
[maxcube docs]: https://home-assistant.io/components/maxcube/
[media_player docs]: https://home-assistant.io/components/media_player/
[media_player.spotify docs]: https://home-assistant.io/components/media_player.spotify/
[media_player.webostv docs]: https://home-assistant.io/components/media_player.webostv/
[mqtt docs]: https://home-assistant.io/components/mqtt/
[notify.html5 docs]: https://home-assistant.io/components/notify.html5/
[notify.instapush docs]: https://home-assistant.io/components/notify.instapush/
[notify.joaoapps_join docs]: https://home-assistant.io/components/notify.joaoapps_join/
[notify.mailgun docs]: https://home-assistant.io/components/notify.mailgun/
[notify.matrix docs]: https://home-assistant.io/components/notify.matrix/
[notify.smtp docs]: https://home-assistant.io/components/notify.smtp/
[notify.telegram docs]: https://home-assistant.io/components/notify.telegram/
[notify.webostv docs]: https://home-assistant.io/components/notify.webostv/
[nuimo_controller docs]: https://home-assistant.io/components/nuimo_controller/
[octoprint docs]: https://home-assistant.io/components/octoprint/
[opencv docs]: https://home-assistant.io/components/opencv/
[plant docs]: https://home-assistant.io/components/plant/
[recorder docs]: https://home-assistant.io/components/recorder/
[rfxtrx docs]: https://home-assistant.io/components/rfxtrx/
[rss_feed_template docs]: https://home-assistant.io/components/rss_feed_template/
[sensor.cert_expiry docs]: https://home-assistant.io/components/sensor.cert_expiry/
[sensor.dht docs]: https://home-assistant.io/components/sensor.dht/
[sensor.eight_sleep docs]: https://home-assistant.io/components/sensor.eight_sleep/
[sensor.envirophat docs]: https://home-assistant.io/components/sensor.envirophat/
[sensor.ios docs]: https://home-assistant.io/components/sensor.ios/
[sensor.lyft docs]: https://home-assistant.io/components/sensor.lyft/
[sensor.pushbullet docs]: https://home-assistant.io/components/sensor.pushbullet/
[sensor.speedtest docs]: https://home-assistant.io/components/sensor.speedtest/
[sensor.thinkingcleaner docs]: https://home-assistant.io/components/sensor.thinkingcleaner/
[sensor.vera docs]: https://home-assistant.io/components/sensor.vera/
[sensor.zamg docs]: https://home-assistant.io/components/sensor.zamg/
[sensor.zha docs]: https://home-assistant.io/components/sensor.zha/
[switch.flux docs]: https://home-assistant.io/components/switch.flux/
[switch.hook docs]: https://home-assistant.io/components/switch.hook/
[switch.thinkingcleaner docs]: https://home-assistant.io/components/switch.thinkingcleaner/
[switch.wemo docs]: https://home-assistant.io/components/switch.wemo/
[switch.zha docs]: https://home-assistant.io/components/switch.zha/
[telegram_bot docs]: https://home-assistant.io/components/telegram_bot/
[telegram_bot.polling docs]: https://home-assistant.io/components/telegram_bot.polling/
[telegram_bot.webhooks docs]: https://home-assistant.io/components/telegram_bot.webhooks/
[updater docs]: https://home-assistant.io/components/updater/
[vera docs]: https://home-assistant.io/components/vera/
[wemo docs]: https://home-assistant.io/components/wemo/
[wink docs]: https://home-assistant.io/components/wink/
[zha docs]: https://home-assistant.io/components/zha/
[forum]: https://community.home-assistant.io/
[gitter]: https://gitter.im/home-assistant/home-assistant
[issue]: https://github.com/home-assistant/home-assistant/issues

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 33 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 23 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB