Merge branch 'current' into next

This commit is contained in:
Paulus Schoutsen 2019-08-07 11:25:31 -07:00
commit fe71a7dd8d
34 changed files with 1052 additions and 325 deletions

View File

@ -81,7 +81,7 @@ In order to connect to the device, you need a *login id*. The easiest way to obt
Make sure Home Sharing is enabled on the Apple TV.
To scan for devices and determine the `login_id`, press the icon in the upper left corner and select the leftmost icon according to the image:
To scan for devices and determine the `login_id`, open the developer tools by selecting the hammer icon in the sidebar. Once in the developer tools select **services**.
<img src='/images/screenshots/developer-tools.png' />
@ -111,7 +111,7 @@ If you, when playing media with `play_url`, get the following error message:
*“This AirPlay connection requires iOS 7.1 or later, OS X 10.10 or later, or iTunes 11.2 or later.”*
then device authentication is required. Press the icon in the upper left corner and select the leftmost icon according to the image below:
then device authentication is required, open the developer tools by selecting the hammer icon in the sidebar. Once in the developer tools select **services**.
<img src='/images/screenshots/developer-tools.png' />

View File

@ -32,7 +32,7 @@ to:
required: true
type: string
offset:
description: Do not display departures leaving sooner than this number of minutes. Useful if you are a couple of minutes away from the stop.
description: Do not display departures leaving sooner than this number of seconds. Useful if you are a couple of minutes away from the stop. The formats "HH:MM" and "HH:MM:SS" are also supported.
required: false
type: time
default: 00:00

View File

@ -118,10 +118,6 @@ If running Home Assistant in a [Docker container](/docs/installation/docker/) us
#### 64-bit Python
There is currently a <a href='https://bitbucket.org/al45tair/netifaces/issues/17/dll-fails-to-load-windows-81-64bit'>known issue</a> with running this integration on a 64-bit version of Python and Windows.
#### Python 3.5
If you are on Windows and you're using Python 3.5, download the [Netifaces](http://www.lfd.uci.edu/~gohlke/pythonlibs/#netifaces) dependency.
### could not install dependency netdisco
If you see `Not initializing discovery because could not install dependency netdisco==0.6.1` in the logs, you will need to install the `python3-dev` or `python3-devel` package on your system manually (eg. `sudo apt-get install python3-dev` or `sudo dnf -y install python3-devel`). On the next restart of Home Assistant, the discovery should work. If you still get an error, check if you have a compiler (`gcc`) available on your system.

View File

@ -12,26 +12,27 @@ redirect_from:
---
The `evohome` integration links Home Assistant with all _non-US_ [Honeywell Total Connect Comfort (TCC)](https://international.mytotalconnectcomfort.com/Account/Login) CH/DHW systems, such as:
* the Honeywell evohome CH/DHW system, and
* the Honeywell Round Thermostat
- The Honeywell evohome CH/DHW system, and
- The Honeywell Round Thermostat
It does not support the home security functionality of TCC.
It uses v2 of the [evohome-client](https://github.com/watchforstock/evohome-client) client library.
Honeywell removed support for higher-precision temperatures from the v2 API, so temperatures are reported to the nearest 0.5C.
Honeywell removed support for higher-precision temperatures from the v2 API, and thus reported temperatures are rounded up to the nearest 0.5C.
### evohome
evohome is a multi-zone system. Each Zone is represented as a **Climate** device: it will expose the Zone's operating mode, temperature and setpoint.
evohome is a multi-zone system. Each zone is represented as a **Climate** device: it will expose the zone's operating mode, temperature and setpoint.
The Controller/Location is also represented as a **Climate** device: it will expose the location's operating mode (see below for details). Note that the Controller's temperatures are calculated as an average of all the Zones.
The controller/location is also represented as a **Climate** device: it will expose the location's operating mode (see below for details). Note that the controller's current temperature is calculated as an average of all the Zones.
The DHW controller is represented as a **WaterHeater** device: It will report its current temperature (but not target temperature), and it can be turned on or off.
### Round Thermostat
Round Thermostat is a single zone system. It is currently implemented as two **Climate** devices, as if a single zone evohome system.
Although Round Thermostat is, strictly speaking, a Controller and a single zone, they are merged into a single **Climate** device.
## Configuration
@ -67,32 +68,65 @@ scan_interval:
This is an IoT cloud-polling device, and the recommended `scan_interval` is 180 seconds. Testing has indicated that this is a safe interval that - by itself - shouldn't cause you to be rate-limited by Honeywell.
## Operating modes, and Inheritance
## Operating modes, and inheritance
Zones support only three setpoint modes: **FollowSchedule**, **TemporaryOverride**, and **PermanentOverride**.
Mostly, the Zone 'inherits' its functional operating mode from the controller (the actual algorithm for this is a little complicated).
Mostly, the zone 'inherits' its functional operating mode from the controller (the actual algorithm for this is a little complicated).
The evohome Controller supports seven distinct system modes: **Auto**, **AutoWithEco**, **Away**, **DayOff**, **HeatingOff**, and **Custom**; **AutoWithReset** is a hidden mode that will revert all Zones to **FollowSchedule** mode.
The evohome controller supports seven distinct system modes: **Auto**, **AutoWithEco**, **Away**, **DayOff**, **HeatingOff**, and **Custom**; **AutoWithReset** is a hidden mode that will revert all zones to **FollowSchedule** mode.
If the zone is in **FollowSchedule** mode, its `temperature` (target temperature) is a function of its scheduled temperature and its functional mode - for example, **AutoWithEco** is scheduled temperature less 3C.
If the Controller is set to **HeatingOff** (target temperature to minimum) or **Away** (target temperature to 12C), then the Zones will inherit that mode regardless of their own setpoint mode.
If the controller is set to **HeatingOff** (target temperature to a minimum) or **Away** (target temperature to 12C), then the zones will inherit that mode regardless of their own setpoint mode.
If the Zone's temperature is changed, then it will be a **TemporaryOverride** that will revert to **FollowSchedule** at the next scheduled setpoint. Once this is done, the ZOne can be switched to **PermanentOverride** mode.
If the zone's temperature is changed, then it will be a **TemporaryOverride** that will revert to **FollowSchedule** at the next scheduled setpoint. Once this is done, the zone can be switched to **PermanentOverride** mode.
In Home Assistant, all this is done via `HVAC_MODE` and `PRESET_MODE`. However, the actual operating mode of these devices can be tracked via its state attributes, which includes a JSON data structure for current state called `status`.
In Home Assistant, all this is done via `HVAC_MODE` and `PRESET_MODE` (but also see `systemModeStatus`, `setpointStatus`, below).
## Useful Jinja Templates
The actual operating mode of evohome entities can be tracked via their state attributes, which includes a JSON data structure for the current state called `status`.
For the Controller, see `systemModeStatus`:
For the Controller:
{% raw %}
```
value_template: "{{ state_attr('climate.main_room', 'status').systemModeStatus.mode }}"
```text
{% if state_attr('climate.my_home', 'status').systemModeStatus.mode == "Away" %}
The system is in Away mode
{% else %}
The system is not in Away mode
{% endif %}
```
{% endraw %}
For the Zones:
For the Zones, it is `setpointStatus`:
{% raw %}
```text
{{ state_attr('climate.kitchen', 'status').setpointStatus.setpointMode }}
```
value_template: "{{ state_attr('climate.my_house', 'status').setpointStatus.setpointMode }}"
{% endraw %}
The Zones will expose the current/upcoming scheduled `setpoints`:
{% raw %}
```text
{{ state_attr('climate.kitchen', 'status').setpoints.next.temperature }}
```
{% endraw %}
{% endraw %}
All evohome entities may have faults, and these can be turned into sensors, or:
{% raw %}
```text
{% if state_attr('climate.bedroom', 'status').activeFaults %}
{% if state_attr('climate.bedroom', 'status').activeFaults[0].faultType == 'TempZoneActuatorLowBattery' %}
There is a low battery
{% endif %}
There is a Fault!
{% else %}
Yay, everything is OK :)
{% endif %}
```
{% endraw %}

View File

@ -1,7 +1,7 @@
---
title: "Device Tracker FortiOS"
description: "Instructions on how to use Fortinet FortiOS to track devices in Home Assistant."
logo: fortinet.png
logo: fortinet.jpg
ha_category:
- Presence Detection
ha_release: 0.97

View File

@ -73,8 +73,8 @@ automations and templates.
| ----- | ----- |
| `has_time` | `true` if this entity has a time.
| `has_date` | `true` if this entity has a date.
| `year`<br>`month`<br>`day` | The year, month and day of the date.<br>(only available if `has_| `hour`<br>`minute`<br>`second` | The hour, minute and second of the time.<br>(only available if `has_time: true`)
| `timestamp` | A timestamp representing the time held in the input.<br>If `has_
| `year`<br>`month`<br>`day` | The year, month and day of the date.<br>(only available if `has_date: true`)
| `timestamp` | A timestamp representing the time held in the input.<br>(only available if `has_time: true`)
### Restore State

View File

@ -10,9 +10,9 @@ ha_iot_class: Local Push
The [KNX](https://www.knx.org) integration for Home Assistant allows you to connect to a KNX/IP devices.
The integration requires a local KNX/IP interface or a KNX/IP router. Through this, it will send and receive commands to and from other devices to the KNX bus.
The integration requires a local KNX/IP interface like the [Weinzierl 730](https://www.weinzierl.de/index.php/en/all-knx/knx-devices-en/produktarchiv-en/knx-ip-interface-730-en). Through this, it will send and receive commands to and from other devices to the KNX bus.
<div class='note'>
<div class='note warning'>
Please note, the `knx` platform does not support Windows.
</div>

View File

@ -26,32 +26,22 @@ filter:
required: false
type: list
keys:
exclude:
description: Excluded from recording.
exclude_entities:
description: The list of entity ids to be excluded from recording.
required: false
type: list
keys:
entities:
description: The list of entity ids to be excluded from recording.
required: false
type: list
domains:
description: The list of domains to be excluded from recording.
required: false
type: list
include:
description: Included in recordings. If set, all other entities will not be recorded. Values set by the **exclude** option will prevail.
exclude_domains:
description: The list of domains to be excluded from recording.
required: false
type: list
include_entities:
description: The list of entity ids to be included from recordings. If set, all other entities will not be recorded. Values set by the **exclude_*** option will prevail.
required: false
type: list
include_domains:
description: The list of domains to be included from recordings. If set, all other entities will not be recorded. Values set by the **exclude_*** option will prevail.
required: false
type: list
keys:
entities:
description: The list of entity ids to be included from recordings.
required: false
type: list
domains:
description: The list of domains to be included from recordings.
required: false
type: list
{% endconfiguration %}
You can then configure Prometheus to fetch metrics from Home Assistant by adding to its `scrape_configs` configuration.

View File

@ -12,7 +12,7 @@ The `recorder` integration is responsible for storing details in a database, whi
Home Assistant uses [SQLAlchemy](http://www.sqlalchemy.org/), which is an Object Relational Mapper (ORM). This means that you can use **any** SQL backend for the recorder that is supported by SQLAlchemy, like [MySQL](https://www.mysql.com/), [MariaDB](https://mariadb.org/), [PostgreSQL](https://www.postgresql.org/), or [MS SQL Server](https://www.microsoft.com/en-us/sql-server/).
The default database engine is [SQLite](https://www.sqlite.org/) which doesn't require any configuration. The database is stored in your Home Assistant configuration directory (`.homeassistant`) and called `home-assistant_v2.db`.
The default database engine is [SQLite](https://www.sqlite.org/) which doesn't require any configuration. The database is stored in your Home Assistant configuration directory (`.homeassistant` or '/config/' in HassIO) and called `home-assistant_v2.db`.
To change the defaults for the `recorder` integration in your installation, add the following to your `configuration.yaml` file:

View File

@ -41,7 +41,7 @@ ports:
type: map
keys:
"port: name":
description: The port numbers (BCM mode pin numbers) and corresponding names.
description: The port numbers ([BCM mode pin numbers](https://pinout.xyz/resources/raspberry-pi-pinout.png)) and corresponding names.
required: true
type: string
bouncetime:

View File

@ -133,7 +133,7 @@ Example:
```yaml
custom:
yesterday_consumption:
key: 6400_00543A01
key: '6400_00543A01'
unit: kWh
factor: 1000
```

View File

@ -1,6 +1,6 @@
---
title: "System Health"
description: "Systeam Health integration will report system info and allow to run system diagnostics."
description: "System Health integration will report system info and allow to run system diagnostics."
logo: home-assistant.png
ha_category:
- "Other"
@ -10,9 +10,10 @@ ha_release: 0.87
The System Health integration provides an API to offer information on the system and its components. It also allows to run diagnostic tools to diagnose problems.
Add the following to your configuration.yaml file.
System health is included as part of the [default config](https://www.home-assistant.io/components/default_config/) starting with Home Assistant 0.88. If you do not wish to use the default config, you can add the following to your configuration.yaml file.
```yaml
system_health:
```
Once added the system health integration data can be viewed in the developer tools under <img src='/images/screenshots/developer-tool-about-icon.png' alt='service developer tool icon' class="no-shadow" height="38">.
System Health integration data can be viewed in Developer Tools on the "Info" tab.

View File

@ -8,14 +8,14 @@ ha_release: 0.95
ha_iot_class: Local Polling
---
The `vlc-telnet` platform allows you to control a [VLC media player](http://www.videolan.org/vlc/index.html) using the built in telnet interface.
The `vlc_telnet` platform allows you to control a [VLC media player](http://www.videolan.org/vlc/index.html) using the built in telnet interface.
To add a VLC media player to your installation, add the following to your `configuration.yaml` file:
```yaml
# Example configuration.yaml entry
media_player:
- platform: vlc-telnet
- platform: vlc_telnet
host: IP_ADDRESS
password: PASSWORD
```
@ -53,7 +53,7 @@ A full configuration for VLC could look like the one below:
```yaml
# Example configuration.yaml entry
media_player:
- platform: vlc-telnet
- platform: vlc_telnet
name: Remote Player
host: 192.168.1.48
port: 4212

View File

@ -9,9 +9,9 @@ redirect_from:
[Manything](https://manything.com) is a smart app that turns your Android device, iPhone, iPod, or iPad into a WiFi camera for monitoring your home, your pets, anything! Comes with live streaming, motion activated alerts, cloud video recording, and more.
To get manything support, HA will use IFTTT's [Maker Channel](https://ifttt.com/maker) and the [ManyThing Channel](https://ifttt.com/manything). Use the [IFTTT Setup instructions](/components/ifttt/) to activate the IFTTT Platform.
To get manything support, HA will use IFTTT's [Webhooks Service](https://ifttt.com/maker_webhooks) and the [ManyThing Service](https://ifttt.com/manything). Use the [IFTTT Setup instructions](/components/ifttt/) to activate the IFTTT Platform.
After setting up IFTTT, Maker Channel and ManyThing Channel, you can use the following examples to configure Home Assistant.
After setting up IFTTT, Maker Service and ManyThing Service, you can use the following examples to configure Home Assistant.
```yaml
# Example configuration.yaml entry
@ -57,7 +57,7 @@ For ManyThing support, you need to set up an `on` and `off` event.
### Testing your trigger
You can use the developer tools to test your [Maker Channel](https://ifttt.com/maker) trigger. To do this, open the Home Assistant UI, open the sidebar, click on the first icon in the developer tools. This should get you to the 'Call Service' screen. Fill in the following values:
You can use the developer tools to test your [Maker Service](https://ifttt.com/maker_webhooks) trigger. To do this, open the Home Assistant UI, open the sidebar, click on the first icon in the developer tools. This should get you to the 'Call Service' screen. Fill in the following values:
Field | Value
----- | -----

View File

@ -34,8 +34,9 @@ $ sudo service hass-daemon install
This logrotate script at `/etc/logrotate.d/homeassistant` will create an outage of a few seconds every week at night. If you do not want this add `--log-rotate-days 7` to the `FLAGS` variable in the init script.
```
/var/log/homeassistant/home-assistant.log
File `/var/log/homeassistant/home-assistant.log`:
```text
{
rotate 7
daily

View File

@ -19,7 +19,7 @@ A service file is needed to control Home Assistant with `systemd`. The template
- If unfamiliar with command-line text editors, `sudo nano -w [filename]` can be used with `[filename]` replaced with the full path to the file. Ex. `sudo nano -w /etc/systemd/system/home-assistant@YOUR_USER.service`. After text entered, press CTRL-X then press Y to save and exit.
- If you're running Home Assistant in a Python virtual environment or a Docker container, please skip to the appropriate template listed below.
```
```text
[Unit]
Description=Home Assistant
After=network-online.target
@ -37,7 +37,7 @@ WantedBy=multi-user.target
If you've setup Home Assistant in `virtualenv` following our [Python installation guide](/getting-started/installation-virtualenv/) or [manual installation guide for Raspberry Pi](/getting-started/installation-raspberry-pi/), the following template should work for you. If Home Assistant install is not located at `/srv/homeassistant`, please modify the `ExecStart=` line appropriately. `YOUR_USER` should be replaced by the user account that Home Assistant will run as (e.g `homeassistant`).
```
```text
[Unit]
Description=Home Assistant
After=network-online.target
@ -55,7 +55,7 @@ WantedBy=multi-user.target
If you want to use Docker, the following template should work for you.
```
```text
[Unit]
Description=Home Assistant
Requires=docker.service
@ -132,7 +132,7 @@ $ sudo systemctl restart home-assistant@YOUR_USER && sudo journalctl -f -u home-
If you want to restart the Home Assistant service automatically after a crash, add the following lines to the `[Service]` section of your unit file:
```
```text
Restart=on-failure
RestartSec=5s
```

View File

@ -26,7 +26,7 @@ Forward ports 443 and 80 to your server on your router. Do not forward port 8123
Use this as your Caddyfile, change the domain name to match yours.
```
```text
example.com {
proxy / localhost:8123 {
websocket

View File

@ -11,14 +11,14 @@ Scenegen is a scene generation tool for [Home Assistant](/) home automation soft
### Clone the Repository
Clone the [**scenegen**](https://github.com/home-assistant/scenegen) repository to the current local directory on your machine.
``` bash
$ git clone https://github.com/home-assistant/scenegen.git
```bash
git clone https://github.com/home-assistant/scenegen.git
```
Change your working directory to the repository root. Moving forward, we will be working from this directory.
``` bash
$ cd scenegen
```bash
cd scenegen
```
## Install Prerequisites
@ -26,14 +26,14 @@ $ cd scenegen
Before running `SceneGen` you will need to add some python prerequisites:
```bash
$ sudo pip3 install configparser
sudo pip3 install configparser
```
You should now be ready to run `scenegen`
## Basic Operation
```
```text
usage: scenegen [-h] [-k KEY] [-s SCENENAME] [-m MAPFILE] [-f FILTER]
[-c {xy_color,rgb_color,color_temp,color_name}] [-t TYPES]
url
@ -60,7 +60,7 @@ optional arguments:
For basic operation just supply the url and optionally the api key (using the --key option) on the command line and scenegen will output a list of all lights and switches with their attributes. Optionally use the `--scenename` flag to explicitly set the scenename.
```
```bash
$ ./scenegen.py https://<some url> -k <some api key>
name: My New Scene
entities:
@ -90,14 +90,14 @@ Note that depending on the type of light there may be a delay in actually settin
For a more advanced way to use the output try the following. In configuration.yaml add the following line:
```
```yaml
scene: !include_dir_list scenes
```
This will tell Home Assistant to look in the subdirectory `scenes` for yaml files containing scene information. Each file will be named for the scene it will create and should contain information formatted as above. Then simply run Scenegen and redirect its output to the scenes subdirectory:
```
$ ./scenegen.py https://<some url> -k <some api key> > scenes/my_new_scene.yaml
```bash
./scenegen.py https://<some url> -k <some api key> > scenes/my_new_scene.yaml
```
This will create a new scene called `my_new_scene` which will automatically be picked up by Home Assistant on the next restart.
@ -110,13 +110,13 @@ Scenegen allows colors to be captured, and in fact Home Assistant light entities
By default, Scenegen will list all lights and switches. To restrict the device type use the `--types` option and supply a comma separated list (no spaces) of types to output. e.g.:
```
```bash
./scenegen.py https://<some url> -k <some api key> --types light,switch
```
or:
```
```bash
./scenegen.py https://<some url> -k <some api key> --types light
```
@ -126,7 +126,7 @@ This will make more sense as and when more types are added.
Maps allow you to specify and label various subsets of devices that you want to work on together. A mapfile is specified using the `--mapfile` option and is a `.ini` style file consisting of section headers and entries. The section headers specify a region or zone or otherwise organized selection of entities you want to filter on, and it is mandatory to have at least one. If you create a map file like this:
```
```text
[entities]
light.living_room:
light.dining_room:
@ -136,7 +136,7 @@ The trailing colons are necessary to prevent parsing errors for including just k
If you run scenegen with the `--mapfile` argument pointing to that file you will only get output for the listed entities (the name of the section is irrelevant if not using the `--filter` option). A more complex mapfile might look like this:
```
```text
[Outside]
light.porch:
switch.path_lights:
@ -149,7 +149,7 @@ light.bedside:
Again, if you run with that map file it will output all of the entities listed, however you now have the possibility of restricting output devices based on the sections they are in, using the `--filter` option and supplying a comma separated list of sections you want to include, for instance:
```
```bash
./scenegen.py https://<some url> -k <some api key> --mapfile map.cfg --filter "Outside,Living Room"
```
@ -159,6 +159,6 @@ The intended use of the mapfile and filter is that you create a map of all your
To update SceneGen after a new version is released, just run the following command to update your copy:
```bash
$ git pull
git pull
```

View File

@ -22,7 +22,7 @@ To allow WebSocket by default for all service exposed by NGINX, you can enable i
Open `/usr/syno/share/nginx/Portal.mustache` and add the followings in the `Location` section:
```
```text
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_read_timeout 86400;
@ -43,7 +43,7 @@ You can find more information [here](https://github.com/orobardet/dsm-reverse-pr
- Copy the Home Assistant specific Reverse Proxy settings from the existing `/etc/nginx/app.d/server.ReverseProxy.conf` file to `/usr/local/etc/nginx/conf.d/http.HomeAssistant.conf`.
- Include these lines in the location declaration:
```
```text
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
```

View File

@ -5,8 +5,6 @@ description: "Instructions to install Home Assistant on an Armbian-powered syste
[armbian](https://www.armbian.com) runs on a wide-variety of [ARM development boards](https://www.armbian.com/download/). Currently there are around 50 boards supported inclusive the OrangePi family, Cubieboard, Pine64, and Odroid.
Python 3.5.3 or later is required.
Setup Python and `pip`:
```bash

View File

@ -41,7 +41,7 @@ $ sudo apt-get upgrade -y
Install the dependencies.
```bash
$ sudo apt-get install python3 python3-venv python3-pip libffi-dev libssl-dev
$ sudo apt-get install python3 python3-venv python3-pip libffi-dev libssl-dev autoconf
```
Add an account for Home Assistant called `homeassistant`.

View File

@ -120,16 +120,16 @@ The sun state can be used to test if the sun has set or risen.
```yaml
condition:
condition: state # 'day' condition: from sunrise until sunset
entity_id: sun.sun
state: 'above_horizon'
condition: state # 'day' condition: from sunrise until sunset
entity_id: sun.sun
state: 'above_horizon'
```
```yaml
condition:
condition: state # from sunset until sunrise
entity_id: sun.sun
state: 'below_horizon'
condition: state # from sunset until sunrise
entity_id: sun.sun
state: 'below_horizon'
```
#### Sun elevation condition
@ -141,18 +141,18 @@ For an in depth explanation of sun elevation see [sun elevation trigger][sun_ele
```yaml
condition:
condition: and # 'twilight' condition: dusk and dawn, in typical locations
conditions:
- condition: template
value_template: {% raw %}'{{ state_attr("sun.sun", "elevation") < 0 }}'{% endraw %}
- condition: template
value_template: {% raw %}'{{ state_attr("sun.sun", "elevation") > -6 }}'{% endraw %}
condition: and # 'twilight' condition: dusk and dawn, in typical locations
conditions:
- condition: template
value_template: {% raw %}'{{ state_attr("sun.sun", "elevation") < 0 }}'{% endraw %}
- condition: template
value_template: {% raw %}'{{ state_attr("sun.sun", "elevation") > -6 }}'{% endraw %}
```
```yaml
condition:
condition: template # 'night' condition: from dusk to dawn, in typical locations
value_template: {% raw %}'{{ state_attr("sun.sun", "elevation") < -6 }}'{% endraw %}
condition: template # 'night' condition: from dusk to dawn, in typical locations
value_template: {% raw %}'{{ state_attr("sun.sun", "elevation") < -6 }}'{% endraw %}
```
#### Sunset/sunrise condition
@ -177,22 +177,22 @@ condition:
```yaml
condition:
condition: or # 'when dark' condition: either after sunset or before sunrise - equivalent to a state condition on `sun.sun` of `below_horizon`
conditions:
- condition: sun
after: sunset
- condition: sun
before: sunrise
condition: or # 'when dark' condition: either after sunset or before sunrise - equivalent to a state condition on `sun.sun` of `below_horizon`
conditions:
- condition: sun
after: sunset
- condition: sun
before: sunrise
```
```yaml
condition:
condition: and # 'when light' condition: before sunset and after sunrise - equivalent to a state condition on `sun.sun` of `above_horizon`
conditions:
- condition: sun
before: sunset
- condition: sun
after: sunrise
condition: and # 'when light' condition: before sunset and after sunrise - equivalent to a state condition on `sun.sun` of `above_horizon`
conditions:
- condition: sun
before: sunset
- condition: sun
after: sunrise
```
A visual timeline is provided below showing an example of when these conditions will be true. In this chart, sunrise is at 6:00, and sunset is at 18:00 (6:00 PM). The green areas of the chart indicate when the specified conditions will be true.
@ -253,18 +253,18 @@ condition:
### Examples
```yaml
condition:
- condition: numeric_state
entity_id: sun.sun
value_template: '{{ state.attributes.elevation }}'
below: 1
- condition: state
entity_id: light.living_room
state: 'off'
- condition: time
before: '23:00:00'
after: '14:00:00'
- condition: state
entity_id: script.light_turned_off_5min
state: 'off'
condition:
- condition: numeric_state
entity_id: sun.sun
value_template: '{{ state.attributes.elevation }}'
below: 1
- condition: state
entity_id: light.living_room
state: 'off'
- condition: time
before: '23:00:00'
after: '14:00:00'
- condition: state
entity_id: script.light_turned_off_5min
state: 'off'
```

View File

@ -10,13 +10,13 @@ The frontend contains a section called "Developer Tools".
Screenshot of Home Assistant's Developer Tools.
</p>
| Section | Icon | Description |
| ------- |------| ----- |
| Services | <img src='/images/screenshots/developer-tool-services-icon.png' alt='service developer tool icon' class="no-shadow" height="38" /> | Calls services from integrations |
| States | <img src='/images/screenshots/developer-tool-states-icon.png' alt='service developer tool icon' class="no-shadow" height="38" /> | Sets the representation of an entity |
| Events | <img src='/images/screenshots/developer-tool-events-icon.png' alt='service developer tool icon' class="no-shadow" height="38" /> | Fires events |
| Templates | <img src='/images/screenshots/developer-tool-templates-icon.png' alt='service developer tool icon' class="no-shadow" height="38" /> | Renders templates |
| Info | <img src='/images/screenshots/developer-tool-about-icon.png' alt='service developer tool icon' class="no-shadow" height="38" /> | Details about Home Assistant |
| Section |Description |
| ------- |----- |
| Services | Calls services from integrations |
| States | Sets the representation of an entity |
| Events | Fires events |
| Templates | Renders templates |
| Info | Details about Home Assistant |
## What can I do with Developer Tools?
The Developer Tools is meant for **all** (not just for the developers) to quickly try out things - like calling services, update states, raising events, and publish messages in mqtt…etc.). It is also a necessary tool for those who write custom automations and scripts by hand. The following describes each of the section in detail.

View File

@ -122,7 +122,7 @@ You can also check what hardware has been found using the [hassio command](/hass
$ hassio hardware info
```
The `modemmanager` package will interfere with any Z-Wave (or Zigbee) stick and should be removed or disabled. Failure to do so will result in random failures of those components. For example you can disable with `sudo systemctl disable ModemManager` and remove with `sudo apt-get purge modemmanager`
If you did an alternative install on Linux then the `modemmanager` package will interfere with any Z-Wave (or Zigbee) stick and should be removed or disabled. Failure to do so will result in random failures of those components. For example you can disable with `sudo systemctl disable ModemManager` and remove with `sudo apt-get purge modemmanager`.
### Docker

View File

@ -94,6 +94,36 @@ service_data:
type: map
{% endconfiguration %}
### Cast
Special row to start Home Assistant Cast.
{% configuration %}
type:
required: true
description: cast
type: string
view:
required: true
description: Path to the view that needs to be shown.
type: string
name:
required: false
description: Name to show in the row
type: string
default: Home Assistant Cast
icon:
required: false
description: Icon to use
type: string
default: `hass:television`
hide_if_unavailable:
required: false
description: Hide this row if casting is not available in the browser.
type: boolean
default: false
{% endconfiguration %}
### Divider
{% configuration %}

View File

@ -0,0 +1,63 @@
---
title: "Home Assistant Cast"
description: "Show Home Assistant on a Chromecast or Google Assistant device with screen."
date: 2019-08-06 01:11:03
date_formatted: "August 6, 2019"
author: Paulus Schoutsen
author_twitter: balloob
categories: Announcements
og_image: /images/blog/2019-08-home-assistant-cast/social.png
---
<p class='img'>
<img src='/images/blog/2019-08-home-assistant-cast/hero.png' alt='Picture of a Google Nest Hub with the Home Assistant UI on it.'>
</p>
Home automation itself has never been a goal of Home Assistant. Instead, it's a tool that allows us to have technology improve our life, and that of the people around us. I wrote about this [3,5 years ago](https://www.home-assistant.io/blog/2016/01/19/perfect-home-automation/), and it's been our guiding principle in building out Home Assistant.
Today we're introducing Home Assistant Cast to help with this. With Home Assistant Cast, people in your house can have quick access to see the state of your house and it's residents, and quickly adjust the most important settings. This is achieved by running on Chromecast powered screens that you already have throughout your house: your Google Nest Hubs and TVs.
You can launch Home Assistant Cast by going to [**the Home Assistant Cast launcher website**](https://cast.home-assistant.io). It works with any version of Home Assistant released in the last year. Home Assistant Cast can show any Lovelace view, including support for custom cards and themes. Got no Lovelace configuration? Don't worry, we'll generate a view and show that instead.
For a demo, also check out the [Home Assistant Cast launcher](https://cast.home-assistant.io). If you have any questions, make sure to check the [Frequently Asked Questions](https://cast.home-assistant.io/faq.html).
## How it works
You need to authorize Home Assistant Cast to access your Home Assistant instance. Once it's authorized, you can start Home Assistant Cast on your Chromecast device. Next, your Chromecast device will set up a direct connection to your Home Assistant instance and give you the option to pick a view to display.
Home Assistant Cast can:
- Render Lovelace views, including custom cards.
- Stream real-time data to make sure that the UI always shows the latest state of your house.
- Navigate between views using navigate actions inside an entities card or using weblinks.
- Instantly update the casted Lovelace UI when you update your Lovelace configuration.
## About touch
We have been able to get touch controls working on the Google Nest Hub and other Google Assistant devices with a screen. The available configuration options to indicate that we're a touch-optimized app [did not work](https://github.com/home-assistant/home-assistant-polymer/blob/98b882d5991e05fae7962d96e5d0f7a5ae773a5b/cast/src/receiver/entrypoint.ts#L18-L30). We were still able to achieve touch controls by [manipulating code](https://github.com/home-assistant/home-assistant-polymer/blob/98b882d5991e05fae7962d96e5d0f7a5ae773a5b/cast/src/receiver/layout/hc-main.ts#L200-L206) that is injected into the Home Assistant Cast website when the Chromecast runs our receiver application.
There is no guarantee that touch controls will keep working, it might be blocked. It might stop this week, next month, next year, or it keeps working forever.
I hope that by releasing it with touch controls enabled, we can show Google that this is something that people want, and are willing to invest in for just this reason.
**To make sure everyone sees it, I encourage people to share photos and videos of Home Assistant Cast in action on Twitter, Facebook, YouTube and other social media with the hashtag `#homeassistantcast`. Let's share the love!**
## Coming soon and future plans
On August 7, Home Assistant 0.97 will be released. This release will allow launching Home Assistant Cast from the Home Assistant frontend. You can do this by including a new `cast` row that can be placed inside an entities card.
```yaml
# Example entities card configuration
type: entities
entities:
- type: cast
name: Lights
# The path of the view (or number)
view: lights
hide_if_unavailable: true
```
This is the first release of Home Assistant Cast, and so we focused on the minimum that was worthy of a release. We still have some more things planned:
- Allow starting Home Assistant Cast from Home Assistant itself (not a browser), as part of an automation or script.
- Use Home Assistant Cast as a text-to-speech target (inspired by [lovelace-browser-commander by @thomasloven](https://github.com/thomasloven/lovelace-browser-commander)).

View File

@ -0,0 +1,789 @@
---
layout: post
title: "0.97: Apache Kafka, Fortigate, Twente Milieu"
description: "Core config and configuration.yaml tools have been split up and a new reload scenes service has been introduced."
date: 2019-08-07 01:11:03
date_formatted: "August 7, 2019"
author: Paulus Schoutsen
author_twitter: balloob
comments: true
categories: Release-Notes
og_image: /images/blog/2019-08-release-97/components.png
---
<a href='/components/#version/0.97'><img src='/images/blog/2019-08-release-97/components.png' style='border: 0;box-shadow: none;'></a>
It's time for Home Assistant 0.97! It has been a very busy release cycle as we have been fine-tuning our development process, which makes it easier to maintain and contribute to Home Assistant in the future.
## Python 3.5 support has been dropped
As per previous announcements, this is the first release that requires at least Python 3.6. If you are on Hassbian and are planning to upgrade Python, please take note of the [known issues with the default wheel server](/blog/2019/07/19/piwheels/).
## Docker
This is the last release that bases our Home Assistant Docker image (`homeassistant/home-assistant`) on Debian. As decided in [Architecture Decision Record 0006: Docker Images](https://github.com/home-assistant/architecture/blob/master/adr/0006-docker-images.md), the image will be based on Alpine Linux starting with the 0.98 release. These new Docker images will be running same the Home Assistant Docker image that powers Hass.io. You don't need to change anything unless you have installed Debian packages manually or made any other changes to the running container. However, if that is the case, you'll need to find the Alpine equivalent of whatever you were doing.
The main driver behind this change is that by re-using images, maintenance becomes easier, and users of the `homeassistant/home-assistant` image can benefit from the many optimizations that went into the Hass.io images.
## Reload scenes from `configuration.yaml`
Thanks to [@balloob] it is now possible to reload scenes from `configuration.yaml` without restarting Home Assistant. This is part of an effort for Home Assistant 1.0 to make scenes a first-class citizen of Home Assistant, including creating/restoring scenes on the fly in the future. To track this effort, [follow this page](https://github.com/home-assistant/home-assistant/issues/25681).
## Home Assistant Cast
In case you missed the announcement, we released Home Assistant Cast yesterday. It allows you to transform any Cast interface into a display for Home Assistant. [Read the announcement for more information.](/blog/2019/08/06/home-assistant-cast/).
<p class='img'>
<a href="/blog/2019/08/06/home-assistant-cast/"><img src='/images/blog/2019-08-home-assistant-cast/hero.png' alt='Picture of a Google Nest Hub with the Home Assistant UI on it.'></a>
</p>
Home Assistant Cast opens a whole new world of possibilities for using Lovelace, and we are really excited to learn what cool things you will do with it! If you created something, feel free to share it on social media using the `#homeassistantcast` hash-tag. We are looking forward to your pictures!
## UI changes
This release contains a couple of notable UI changes:
- [New Cast row available](/lovelace/entities/#cast) in the Lovelace entities card to start Home Assistant Cast.
- Improved accessibility for visually impaired users. This is an [ongoing effort](https://github.com/home-assistant/home-assistant-polymer/issues/3267) on making the frontend accessible.
- Split out `configuration.yaml` actions from the core configuration into a new server control config panel. Thanks [@IcyPalm]
- Markdown card now has a size + 1, if it has a header defined. Some layouts might be moved around due to this.
[@icypalm]: https://www.github.com/IcyPalm/
## In other news
[Frenck](https://github.com/frenck) wrote [an excellent blog post](https://frenck.dev/diy-smart-doorbell-for-just-2-dollar/) on how to make a $2 smart doorbell using Home Assistant and ESPHome, which doesn't require soldering.
[Aaron](https://github.com/boralyl) created a great and detailed tutorial explaining how to add an [interactive 3D floorplan to Home Assistant](https://aarongodfrey.dev/home%20automation/creating-a-3d-floorplan-in-home-assistant/).
We wrote about how we use Azure DevOps to automate the development of Home Assistant. Interested to see how Home Assistant is automatically build? [Check the developer blog](https://developers.home-assistant.io/blog/2019/07/19/building-all-the-things.html).
[@jimz011] has updated his amazing, HomeKit inspired, Lovelace config and shared it [on the forums](https://community.home-assistant.io/t/homekit-inspired-lovelace-by-jimz011-august-2019-ha-0-97-x-compatible-massive-update/117086). Sneak preview on how it looks:
[@jimz011]: https://github.com/jimz011
<div class="videoWrapper">
<iframe width="853" height="480" src="https://www.youtube-nocookie.com/embed/Ng0EDltHujY" frameborder="0" allow="autoplay; encrypted-media" allowfullscreen></iframe>
</div>
## New Integrations
- Add support for recording history to Apache Kafka ([@bachya] - [#25085]) ([apache_kafka docs]) (new-integration)
- Rename RitAssist to FleetGO ([@depl0y] - [#25093]) ([fleetgo docs]) ([ritassist docs]) (breaking change) (new-integration)
- Add Twente Milieu integration ([@frenck] - [#25129]) ([twentemilieu docs]) (new-integration)
- Add Fortigate integration ([@kifeo] - [#24908]) ([fortigate docs]) (new-integration)
- Add support for Rainforest Eagle-200 ([@gtdiehl] - [#24919]) ([rainforest_eagle docs]) (new-integration)
- Add Elgato Avea integration ([@pattyland] - [#24281]) ([avea docs]) (new-integration) (new-platform)
- Suez water ([@ooii] - [#23844]) ([suez_water docs]) (new-integration)
- Add new device tracker supporting Fortinet FortiGate ([@kimfrellsen] - [#23078]) ([fortios docs]) (new-integration) (new-platform)
- Add De Lijn (Flemish Public Transport) component ([@bollewolle] - [#24265]) ([delijn docs]) (new-integration) (new-platform)
- Add Support for VeSync Devices - Outlets and Switches ([@webdjoe] - [#24953]) ([vesync docs]) (new-platform)
## 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).
## 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-->
## Breaking Changes
- **Python** - Bump Python support to min Python 3.6.0 ([@balloob] - [#25582])
- **Z-Wave** - Improve handling of Z-Wave config entry vs yaml config. If a Z-Wave `network_key` is specified in configuration.yaml it will override a `network_key` specified in the Z-Wave config entry. ([@cgarwood] - [#25112]) ([zwave docs])
- **Unifi** - Unifi Device tracker is now part of config entry. After initial import the unifi device tracker configuration is no longer needed. If configuring SSID filter or detection time you will need to use the new configuration from UniFi. See UniFi component documentation for details. ([@Kane610] - [#24367]) ([unifi docs])
- **Ecobee** - Ecobee presets now represent the different Ecobee comfort settings. Selectable by name instead of unknown ID. ([@balloob] - PR link todo)
- **Calendar** - Rewrite calendar component - The calendar integration has been rewritten to follow our current standards and is mostly non breaking. The reset (clean up) of state attributes upon an event time passing has been removed, though. Attributes are no longer set to an arbitrary default value, and will now keep the attributes representing the last event. With this change, automations that rely on state attributes getting reset will need to be updated. All platforms have been converted. - ([@MartinHjelmare] - [#24950]) ([caldav docs]) ([calendar docs]) ([demo docs]) ([google docs]) ([todoist docs])
- **SyncThru** - The monitored_conditions configuration option has been removed. All available monitored conditions will be used by default. Users that have been using the monitored_conditions option need to remove it from the syncthru section in configuration.yaml. ([@nielstron] - [#25052]) ([syncthru docs])
- **KNX** - Updates the knx component to use xknx 0.11.1 . This introduces several new features and bugfixes. For a complete list see: https://github.com/XKNX/xknx/releases/tag/0.11.0 ([@farmio] - [#24738]) ([knx docs])
- `scene:` `scene_number` is now 1 indexed according to KNX standards. Previously it was 0 based. Please add 1 to your already configured scene numbers (`scene_number: 5` becomes `scene_number: 6`).
- `sensor:` `state_address` replaces `address` in configuration
- `binary_sensor:` `state_address` replace `address` in configuration when using xknx config file (`knx: config_file = ...`): Replace `group_address` in BinarySensor and Sensor with `group_address_state`.
- **RitAssist** - The company has been renamed from RitAssist to FleetGO, so this component needed to get renamed. Users of this integration will need to update their device_tracker config section to use the new name. ([@depl0y] - [#25093]) ([fleetgo docs]) ([ritassist docs])
- **N26** - Adds support for multiple N26 accounts. The generation of unique ids for spaces has been changed. Users may need to remove the stale old id entities, representing spaces, from the entity registry. ([@gorynychzmey] - [#25086]) ([n26 docs])
- **Environment Canada** - This change removes the `monitored_conditions` and `name` options and adds an optional `language` option. Sensors are now created for all provided data. ([@michaeldavie] - [#24884]) ([environment_canada docs])
```yaml
sensor:
- platform: environment_canada
language: french
```
- **TotalConnect** - Total Connect Client was upgraded to support more than one alarm panel and allow future support for additional sensors. Previous `alarm_control_panel` entries must be removed, and a new totalconnect entry must be added to configuration.yaml. See https://www.home-assistant.io/components/totalconnect/ for configuration details. ([@austinmroczek] - [#24427]) ([totalconnect docs])
- **Nuki** - The `lock.nuki_unlatch` service has been removed. It has been replaced by the `lock.open` service. The `lock.nuki_lock_n_go` service has been renamed to `nuki.lock_n_go`. Users that are using the removed or renamed services in automations need to replace them with the new services. ([@franfos] - [#22888]) ([nuki docs])
- **Snapcast** - This changes adds multiroom support for the snapcast component. It adds 2 services `media_player.snapcast_join` and `media_player.snapcast_unjoin` to group/ungroup a client with another client. Also added source selection support in the snapcast clients as the groups are unusable due to their dynamic nature. ([@lyghtnox] - [#24061]) ([snapcast docs])
- **Ambient Weather Station** - The `unique_id` for Ambient sensors uses a new formula, meaning that even though they have the same friendly names, new sensors will be created. The integration will automatically perform this migration under the hood, but if you've altered the entity IDs of any Ambient PWS entities, you'll need do the same to the new entities upon creation. Additionally, the `monitored_keys` configuration option is no longer supported in `configuration.yaml`. The integration will now create sensors for all conditions supported by the particular device.
([@bachya] - [#25284]) ([ambient_station docs])
- **Google Maps** - Google Passwords are no longer required to be provided in your config. An external program is now required to obtain the necessary cookie file to place in your Home Assistant config directory. This is due to the authentication process being removed from the underlying package. Existing users should remove the `password:` entry from their config file (username is still required). The cookie file previously generated should still be valid and will allow the tracker to continue functioning normally until the cookie is invalidated. New users will need to follow the instructions on the Google Maps Location Sharing page to create their cookie file.([@shbatm] - [#25316]) ([google_maps docs])
- **BuienRadar** - Updates to the new version of python-buienrader (1.0.1); this version now leverages the new json buienradar-api. ([@mjj4791] - [#24463]) ([buienradar docs])
The following sensor types (monitored_conditions) are no longer supported, since they are no longer provided by the json api of buienradar:
- snow_1d .. snow_5d
The following monitored conditions will change units:
- windgust (now km/h, was m/s)
- windspeed (now km/h, was m/s)
- windspeed_?d (now km/h, was m/s)
- visibility (now km, was m)
- **Rejseplanen** - Improve and align Rejseplanen with other transport components. ([@DarkFox] - [#25375]) ([rejseplanen docs])
- All attributes changed to snake_case.
- Later departure attribute has been removed.
- Added next_departures which contains a list of all later departures returned from the search, as dictionaries with the same fields as the next departure.
Any existing templates using the sensor's attributes will need to be updated as follows:
- Stop ID -> stop_id
- Stop -> stop
- Route -> route
- Type -> type
- Direction -> direction
- Due in -> due_in
- Due at -> due_at
## Beta Fixes
- Expose comfort presets as HA presets ([@balloob] - [#25491]) ([ecobee docs]) (breaking change) (beta fix)
- Fix handling of empty results from Rejseplanen ([@DarkFox] - [#25610]) ([rejseplanen docs]) (breaking change) (beta fix)
- bump quirks ([@dmulcahey] - [#25618]) ([zha docs]) (beta fix)
- Handle disabled devices ([@Kane610] - [#25625]) ([unifi docs]) (beta fix)
- Fix polling HomeKit devices with multiple services per accessory ([@Jc2k] - [#25629]) ([homekit_controller docs]) (beta fix)
- Meteofrance improve log error messages ([@oncleben31] - [#25630]) ([meteo_france docs]) (beta fix)
- Bump homekit_python to 0.15 ([@Jc2k] - [#25631]) ([homekit_controller docs]) (beta fix)
- Filter out empty results in history API ([@balloob] - [#25633]) ([history docs]) (beta fix)
- Upgrade hass-nabucasa to 0.16 ([@balloob] - [#25636]) ([cloud docs]) (beta fix)
- Feature zwave preset modes ([@Santobert] - [#25537]) ([climate docs]) ([zwave docs]) (beta fix)
- Add PRESET_AWAY to HomematicIP Cloud climate ([@SukramJ] - [#25641]) ([homematicip_cloud docs]) (beta fix)
- UniFi - allow configuration to not track clients or devices ([@Kane610] - [#25642]) ([unifi docs]) (beta fix)
- Add preset to be away and eco ([@balloob] - [#25643]) ([nest docs]) (beta fix)
- Revert flux_led to 0.89 ([@amelchio] - [#25653]) ([flux_led docs]) (beta fix)
- Options to not track wired clients ([@Kane610] - [#25669]) ([unifi docs]) (beta fix)
- Fix issue with incorrect Notion bridge IDs ([@bachya] - [#25683]) ([notion docs]) (beta fix)
- In some circumstances device.last_seen can be None ([@Kane610] - [#25690]) ([unifi docs]) (beta fix)
- UniFi - reverse connectivity logic ([@Kane610] - [#25691]) ([unifi docs]) (beta fix)
- Fix roku lxml requirement ([@pvizeli] - [#25696]) ([roku docs]) (beta fix)
- Add HmIP-SCI to Homematic IP Cloud, Fix HmIP-SWDM ([@SukramJ] - [#25639]) ([homematicip_cloud docs]) (beta fix)
- Bump envoy_reader to 0.8.6, fix missing dependency ([@jesserizzo] - [#25679]) ([enphase_envoy docs]) (beta fix)
- Add service to reload scenes from configuration.yaml ([@balloob] - [#25680]) ([homeassistant docs]) ([scene docs]) (beta fix)
- Update HTTP defaults ([@balloob] - [#25702]) ([http docs]) (beta fix)
- UniFi - handle device not having a name ([@Kane610] - [#25713]) ([unifi docs]) (beta fix)
- Bump hdate==0.9.0 (use pytz instead of dateutil) ([@tsvi] - [#25726]) ([jewish_calendar docs]) (beta fix)
- initial commit ([@zxdavb] - [#25731]) ([incomfort docs]) (beta fix)
- Revert emulated hue changes ([@balloob] - [#25732]) ([emulated_hue docs]) (beta fix)
- Fix last seen not available on certain devices ([@Kane610] - [#25735]) ([unifi docs]) (beta fix)
## All changes
- Rewrite calendar component ([@MartinHjelmare] - [#24950]) ([caldav docs]) ([calendar docs]) ([demo docs]) ([google docs]) ([todoist docs]) (breaking change)
- Remove monitored conditions from syncthru ([@nielstron] - [#25052]) ([syncthru docs]) (breaking change)
- Update KNX component to xknx 0.11 ([@farmio] - [#24738]) ([knx docs]) (breaking change)
- Support hass-release inside devcontainer ([@pvizeli] - [#25090])
- Add support for recording history to Apache Kafka ([@bachya] - [#25085]) ([apache_kafka docs]) (new-integration)
- Ps4 move send_command service to init ([@ktnrg45] - [#25094]) ([ps4 docs])
- Rename RitAssist to FleetGO ([@depl0y] - [#25093]) ([fleetgo docs]) ([ritassist docs]) (breaking change) (new-integration)
- Add support for multiple N26 accounts ([@gorynychzmey] - [#25086]) ([n26 docs]) (breaking change)
- Bump insteonplm to 0.16.3 ([@teharris1] - [#25108]) ([insteon docs])
- Use more compatible samsungtv TV key ([@escoand] - [#25083]) ([samsungtv docs])
- Add additional WWLLN test ([@bachya] - [#25111]) ([wwlln docs])
- Splunk component filter support ([@asleeis] - [#25071]) ([splunk docs])
- Add more public rain sensors ([@cgtobi] - [#25117]) ([netatmo docs])
- PS4 handle no connection/ fix spamming of logs when device is off ([@ktnrg45] - [#25091]) ([ps4 docs])
- Upgrade flake8 to 3.7.8 ([@scop] - [#25120])
- Upgrade youtube_dl to 2019.07.12 ([@fabaff] - [#25128]) ([media_extractor docs])
- Update Environment Canada platforms ([@michaeldavie] - [#24884]) ([environment_canada docs]) (breaking change)
- PS4 move load_games and save_games helpers to init from media_player ([@ktnrg45] - [#25127]) ([ps4 docs])
- Move totalconnect from platform to component config ([@austinmroczek] - [#24427]) ([totalconnect docs]) (breaking change)
- Add Twente Milieu integration ([@frenck] - [#25129]) ([twentemilieu docs]) (new-integration)
- Fix aggregation in Netatmo public sensor ([@cgtobi] - [#25132]) ([netatmo docs])
- Merge UniFi device tracker to config entry ([@Kane610] - [#24367]) ([unifi docs]) (breaking change)
- Small changes to bluetooth RSSI tracking ([@FrederikBolding] - [#25056]) ([bluetooth_tracker docs])
- PS4 Add tests for init ([@ktnrg45] - [#25161]) ([ps4 docs])
- Add HomeKit Reset Accessory ([@adrum] - [#25158]) ([homekit docs])
- Add spotify service to allow to play music from playlist ([@lealoureiro] - [#24991]) ([spotify docs])
- Add travel time attribution/coordinates ([@ljmerza] - [#24956]) ([google_travel_time docs])
- Upgrade youtube_dl to 2019.07.16 ([@fabaff] - [#25173]) ([media_extractor docs])
- Add Fortigate integration ([@kifeo] - [#24908]) ([fortigate docs]) (new-integration)
- Upgrade discord.py to 1.2.3 ([@fabaff] - [#25174]) ([discord docs])
- Upgrade ruamel.yaml to 0.15.99 ([@fabaff] - [#25175])
- Upgrade Mastodon.py to 1.4.5 ([@fabaff] - [#25176]) ([mastodon docs])
- Delete config.yml ([@pvizeli] - [#25181])
- Improve Nuki lock ([@franfos] - [#22888]) ([nuki docs]) (breaking change)
- Raise not ready when no data from API is retrieved ([@cgtobi] - [#25182]) ([opensensemap docs])
- Add severe weather sensor to Dark Sky ([@rtclauss] - [#22701]) ([darksky docs])
- Use MockConfigEntry ([@andrewsayre] - [#25190])
- Upgrade mypy to 0.720, turn on unreachability warnings ([@scop] - [#25157])
- Add HMIP-FCI / HMIP-FBL / HmIP-BBL ([@SukramJ] - [#25188]) ([homematicip_cloud docs])
- Add login_method config option to fix login issue with RouterOS Version > 6.43 ([@Bouni] - [#25194]) ([mikrotik docs])
- Handle somfy expired token ([@tetienne] - [#25195]) ([somfy docs])
- Fix issue #24495 ([@thomasgermain] - [#25199]) ([seventeentrack docs])
- Simplify cache restore ([@keesschollaart81] - [#25186])
- Add HmIP-PCBS2, HmIP-PCBS-BAT to Homematic IP Cloud ([@SukramJ] - [#25201]) ([homematicip_cloud docs])
- Bump simplisafe-python to 4.0.0 + add additional SimpliSafe attributes ([@bachya] - [#25202]) ([simplisafe docs])
- Upgrades Dockerfiles to Debian Buster ([@frenck] - [#25208])
- Add myself to songpal codeowners ([@rytilahti] - [#25221]) ([songpal docs])
- OpenWrt Luci RPC Device Tracker Module Bump ([@fbradyirl] - [#25234]) ([luci docs])
- Add hvac_action support for MQTT HVAC ([@definitio] - [#25260]) ([mqtt docs])
- Add vendor support for vorwerk robots and fix zone retrieval ([@dshokouhi] - [#25200]) ([neato docs])
- Add support for Rainforest Eagle-200 ([@gtdiehl] - [#24919]) ([rainforest_eagle docs]) (new-integration)
- Add MQTT climate precision ([@PhilRW] - [#25265]) ([mqtt docs])
- Add services to set and remove Simplisafe PINs ([@bachya] - [#25207]) ([simplisafe docs])
- Multiroom support for snapcast ([@lyghtnox] - [#24061]) ([snapcast docs]) (breaking change)
- Avoid creating temporary lists ([@nierob] - [#25317]) ([climate docs]) ([device_tracker docs]) ([google_assistant docs]) ([media_player docs]) ([nextbus docs]) ([smartthings docs]) ([system_health docs])
- Return Ambient PWS brightness sensor unit and remove CONF_MONITORED_CONDITIONS ([@bachya] - [#25284]) ([ambient_station docs]) (breaking change)
- Ps4 reformat media data ([@ktnrg45] - [#25172]) ([ps4 docs])
- Fix missing Nachteule in mvglive component ([@9R] - [#25304]) ([mvglive docs])
- Doc lint fixes ([@scop] - [#25339]) ([evohome docs]) ([hive docs])
- Remove some Python 2 compatibility code ([@scop] - [#25341]) ([html5 docs])
- Fix util.ruamel_yaml type errors ([@scop] - [#25338])
- Mypy config improvements ([@scop] - [#25340])
- Update Google Maps Location Tracker to use locationsharinglib==4.0.2 ([@shbatm] - [#25316]) ([google_maps docs]) (breaking change)
- Automatically expand WWLLN window to 1 hour (if necessary) ([@bachya] - [#25357]) ([wwlln docs])
- Type check all helpers ([@scop] - [#25373])
- Optional and Union simplifications ([@scop] - [#25365])
- Add add_torrent service to Transmission ([@postlund] - [#25144]) ([transmission docs])
- Add support for contact binary sensors in homekit_controller ([@dwradcliffe] - [#25355]) ([homekit_controller docs])
- Only poll HomeKit connection once for all entities on a single bridge/pairing ([@Jc2k] - [#25249]) ([homekit_controller docs])
- Add area support to fan service schemas ([@bachya] - [#25409]) ([fan docs])
- Add area support to cover service schemas ([@bachya] - [#25408]) ([cover docs])
- Add area support to automation service schemas ([@bachya] - [#25403]) ([automation docs])
- Add area support to counter service schemas ([@bachya] - [#25401]) ([counter docs])
- Add area support to alarm_control_panel service schemas ([@bachya] - [#25402]) ([alarm_control_panel docs])
- Clean up Netatmo sensor code ([@cgtobi] - [#25390]) ([netatmo docs])
- Add area support to script service schemas ([@bachya] - [#25439]) ([script docs])
- Add area support to scene service schemas ([@bachya] - [#25438]) ([scene docs])
- Add area support to input select service schemas ([@bachya] - [#25432]) ([input_select docs])
- Add area support to input number service schemas ([@bachya] - [#25431]) ([input_number docs])
- Add area support to input datetime service schemas ([@bachya] - [#25430]) ([input_datetime docs])
- Add area support to Wink service schemas ([@bachya] - [#25445]) ([wink docs])
- Add area support to input boolean service schemas ([@bachya] - [#25429]) ([input_boolean docs])
- Add area support to image processing service schemas ([@bachya] - [#25428]) ([image_processing docs])
- Add area support to input text service schemas ([@bachya] - [#25434]) ([input_text docs])
- Add area support to climate service schemas ([@bachya] - [#25441]) ([climate docs])
- Upgrade HPILO requirement to v4.3 ([@xt16johnny] - [#25444]) ([hp_ilo docs])
- Increase vallox robustness on startup ([@andre-richter] - [#25382]) ([vallox docs])
- Add Support for VeSync Devices - Outlets and Switches ([@webdjoe] - [#24953]) ([vesync docs]) (new-platform)
- Add area support to utility meter service schemas ([@bachya] - [#25442]) ([utility_meter docs])
- Add Elgato Avea integration ([@pattyland] - [#24281]) ([avea docs]) (new-integration) (new-platform)
- Add area support to lock service schemas ([@bachya] - [#25435]) ([lock docs])
- Add area support to remote service schemas ([@bachya] - [#25437]) ([remote docs])
- Suez water ([@ooii] - [#23844]) ([suez_water docs]) (new-integration)
- Add new device tracker supporting Fortinet FortiGate ([@kimfrellsen] - [#23078]) ([fortios docs]) (new-integration) (new-platform)
- Bump up ZHA dependencies. ([@Adminiuga] - [#25450]) ([zha docs])
- Add area support to media player service schemas ([@bachya] - [#25436]) ([media_player docs])
- Huawei LTE misc improvements ([@scop] - [#25377]) ([huawei_lte docs])
- Add area support to timer service schemas ([@bachya] - [#25440]) ([timer docs])
- Remove unnecessary REMOTE_SERVICE_SCHEMA ([@bachya] - [#25453]) ([remote docs])
- Add area support to vacuum service schemas ([@bachya] - [#25443]) ([vacuum docs])
- Daikin simplification and code cleanup ([@fredrike] - [#25416]) ([daikin docs])
- Allow configuring sources for older Pioneer receivers ([@plafue] - [#25305]) ([pioneer docs])
- Add area support to group service schemas ([@bachya] - [#25410]) ([group docs])
- Lint fixes ([@scop] - [#25462]) ([avea docs]) ([fortios docs])
- Install requirements_test.txt for flake8 in Azure CI ([@scop] - [#25463])
- Fix bloomsky unit system ([@Santobert] - [#25460]) ([bloomsky docs])
- Type check homeassistant.scripts ([@scop] - [#25464])
- Mypy config cleanups ([@scop] - [#25475])
- Add scan interval to config of Environment Canada sensor ([@michaeldavie] - [#25414]) ([environment_canada docs])
- UniFi block clients ([@Kane610] - [#25478]) ([unifi docs])
- Add a unique identifier to deCONZ groups ([@Kane610] - [#25485]) ([deconz docs])
- Add ord() to template filters ([@aschamberger] - [#25398])
- Update solax to 0.1.2 ([@squishykid] - [#25497]) ([solax docs])
- Add De Lijn (Flemish Public Transport) component ([@bollewolle] - [#24265]) ([delijn docs]) (new-integration) (new-platform)
- Fix deprecation warning in test ([@balloob] - [#25506]) ([http docs])
- Improve handling of Z-Wave config entry vs yaml config ([@cgarwood] - [#25112]) ([zwave docs]) (breaking change)
- Fire lovelace updated event when update detected ([@balloob] - [#25507]) ([lovelace docs])
- Support multiple Elk instances ([@gjbadros] - [#23839]) ([elkm1 docs])
- Add container settings for YAML extension to avoid Hass specific custom tags errors ([@oncleben31] - [#25504])
- Add last_run_success boolean attribute to Switchbot for error trapping ([@manonstreet] - [#25474]) ([switchbot docs])
- deCONZ - Add power attribute for consumption sensors ([@Kane610] - [#25512]) ([deconz docs])
- Improve seventeentrack ([@thomasgermain] - [#25454]) ([seventeentrack docs])
- Roombalocate ([@Anglac] - [#25508]) ([roomba docs])
- deCONZ - cleanup sensor attributes ([@Kane610] - [#25540]) ([deconz docs])
- Update to buienradar json api; and additional monitored_conditions ([@mjj4791] - [#24463]) ([buienradar docs]) (breaking change)
- Fix bug with WWLLN update interval ([@bachya] - [#25498]) ([wwlln docs])
- Fix WinkAC mode API calls to correct methods ([@cameronrmorris] - [#25545]) ([wink docs])
- Bump env_canada to 0.0.19 ([@michaeldavie] - [#25548]) ([environment_canada docs])
- Tibber, off peak values ([@Danielhiversen] - [#25320]) ([tibber docs])
- Enable velbus config entries ([@Cereal2nd] - [#25308]) ([velbus docs])
- huawei_lte: try unsupported data retrievals only once ([@scop] - [#25524]) ([huawei_lte docs])
- Ignore .dmypy.json ([@scop] - [#25528])
- Update eternalegypt to 0.0.8 ([@amelchio] - [#25551]) ([netgear_lte docs])
- Update Cisco Mobility Express module version ([@fbradyirl] - [#25422]) ([cisco_mobility_express docs])
- Expose last_video_id as property for Ring camera ([@Yarikx] - [#25553]) ([ring docs])
- Quiet noisy tado query logging ([@andersonshatch] - [#25529]) ([tado docs])
- Add PS4 tests for media player ([@ktnrg45] - [#25415]) ([ps4 docs])
- UniFi POE control restore clients ([@Kane610] - [#25558]) ([unifi docs])
- LCN cover control via output ports ([@alengwenus] - [#25511]) ([lcn docs])
- UniFi device tracker restore clients ([@Kane610] - [#25532]) ([unifi docs])
- Transition SimpliSafe data retrieval to its own object ([@bachya] - [#25546]) ([simplisafe docs])
- UniFi - Track devices ([@Kane610] - [#25570]) ([unifi docs])
- pylutron PyPI update ([@JonGilmore] - [#25557]) ([lutron docs])
- Make the velbus component more robust in handling errors ([@Cereal2nd] - [#25567]) ([velbus docs])
- Updated Workday Binary Sensor to use Holidays 0.9.11 and added support for Aruba Holidays. ([@orson1282] - [#25568]) ([workday docs])
- add cleaning state code for roborock s6 ([@benleb] - [#25500]) ([xiaomi_miio docs])
- ZHA log helper ([@Adminiuga] - [#25543]) ([zha docs])
- Fix : Velbus translation error ([@Quentame] - [#25575]) ([velbus docs])
- Add last event data (including "changed_by") to SimpliSafe ([@bachya] - [#25569]) ([simplisafe docs])
- Bump Python support to min Python 3.6.0 ([@balloob] - [#25582]) (breaking change)
- Bump insteonplm to 0.16.5 ([@teharris1] - [#25580]) ([insteon docs])
- Fix status of lutron switches/lights after HA reboot ([@JonGilmore] - [#25592]) ([lutron docs])
- Add support for Roku TVs to be powered on or off ([@manutenfruits] - [#25590]) ([roku docs])
- Bump env_canada to 0.0.20 ([@michaeldavie] - [#25594]) ([environment_canada docs])
- Bump venstarcolortouch to 0.9 ([@iamtpage] - [#25585]) ([venstar docs])
- Log platform import errors and correct reqs for config check ([@elupus] - [#25425])
- Improve and align Rejseplanen with other transport components (Breaking) ([@DarkFox] - [#25375]) ([rejseplanen docs]) (breaking change)
- Add migration notification for Ambient PWS ([@bachya] - [#25561]) ([ambient_station docs])
- Fix wrong exposed light for emulated hue ([@croghostrider] - [#25581]) ([demo docs]) ([emulated_hue docs])
- Fix bug and bump geniushub client ([@zxdavb] - [#25599]) ([geniushub docs])
- implemented timout setting for telnet switch ([@tofuSCHNITZEL] - [#25602]) ([telnet docs])
- remove myself from CODEOWNDERS ([@ChristianKuehnel] - [#25593])
- Change how ring polls for changes to allow more platforms to be added ([@rossdargan] - [#25534]) ([ring docs]) (new-platform)
- Introduce support for color temperature ([@yeralin] - [#25503]) ([flux_led docs])
- Netatmo climate refactor ([@cgtobi] - [#25457]) ([netatmo docs])
- Return history for entities in the order they were requested ([@thomasloven] - [#25560]) ([history docs])
- Python < 3.6 remainder cleanups ([@scop] - [#25607])
- Azure flake8 dep, docstring fixes ([@scop] - [#25605]) ([rejseplanen docs]) ([ring docs]) ([zha docs])
- Expose comfort presets as HA presets ([@balloob] - [#25491]) ([ecobee docs]) (breaking change) (beta fix)
- Fix handling of empty results from Rejseplanen ([@DarkFox] - [#25610]) ([rejseplanen docs]) (breaking change) (beta fix)
- bump quirks ([@dmulcahey] - [#25618]) ([zha docs]) (beta fix)
- Handle disabled devices ([@Kane610] - [#25625]) ([unifi docs]) (beta fix)
- Fix polling HomeKit devices with multiple services per accessory ([@Jc2k] - [#25629]) ([homekit_controller docs]) (beta fix)
- Meteofrance improve log error messages ([@oncleben31] - [#25630]) ([meteo_france docs]) (beta fix)
- Bump homekit_python to 0.15 ([@Jc2k] - [#25631]) ([homekit_controller docs]) (beta fix)
- Filter out empty results in history API ([@balloob] - [#25633]) ([history docs]) (beta fix)
- Upgrade hass-nabucasa to 0.16 ([@balloob] - [#25636]) ([cloud docs]) (beta fix)
- Feature zwave preset modes ([@Santobert] - [#25537]) ([climate docs]) ([zwave docs]) (beta fix)
- Add PRESET_AWAY to HomematicIP Cloud climate ([@SukramJ] - [#25641]) ([homematicip_cloud docs]) (beta fix)
- UniFi - allow configuration to not track clients or devices ([@Kane610] - [#25642]) ([unifi docs]) (beta fix)
- Add preset to be away and eco ([@balloob] - [#25643]) ([nest docs]) (beta fix)
- Revert flux_led to 0.89 ([@amelchio] - [#25653]) ([flux_led docs]) (beta fix)
- Options to not track wired clients ([@Kane610] - [#25669]) ([unifi docs]) (beta fix)
- Fix issue with incorrect Notion bridge IDs ([@bachya] - [#25683]) ([notion docs]) (beta fix)
- In some circumstances device.last_seen can be None ([@Kane610] - [#25690]) ([unifi docs]) (beta fix)
- UniFi - reverse connectivity logic ([@Kane610] - [#25691]) ([unifi docs]) (beta fix)
- Fix roku lxml requirement ([@pvizeli] - [#25696]) ([roku docs]) (beta fix)
- Add HmIP-SCI to Homematic IP Cloud, Fix HmIP-SWDM ([@SukramJ] - [#25639]) ([homematicip_cloud docs]) (beta fix)
- Bump envoy_reader to 0.8.6, fix missing dependency ([@jesserizzo] - [#25679]) ([enphase_envoy docs]) (beta fix)
- Add service to reload scenes from configuration.yaml ([@balloob] - [#25680]) ([homeassistant docs]) ([scene docs]) (beta fix)
- Update HTTP defaults ([@balloob] - [#25702]) ([http docs]) (beta fix)
- UniFi - handle device not having a name ([@Kane610] - [#25713]) ([unifi docs]) (beta fix)
- Bump hdate==0.9.0 (use pytz instead of dateutil) ([@tsvi] - [#25726]) ([jewish_calendar docs]) (beta fix)
- initial commit ([@zxdavb] - [#25731]) ([incomfort docs]) (beta fix)
- Revert emulated hue changes ([@balloob] - [#25732]) ([emulated_hue docs]) (beta fix)
- Fix last seen not available on certain devices ([@Kane610] - [#25735]) ([unifi docs]) (beta fix)
[#22701]: https://github.com/home-assistant/home-assistant/pull/22701
[#22888]: https://github.com/home-assistant/home-assistant/pull/22888
[#23078]: https://github.com/home-assistant/home-assistant/pull/23078
[#23839]: https://github.com/home-assistant/home-assistant/pull/23839
[#23844]: https://github.com/home-assistant/home-assistant/pull/23844
[#24061]: https://github.com/home-assistant/home-assistant/pull/24061
[#24265]: https://github.com/home-assistant/home-assistant/pull/24265
[#24281]: https://github.com/home-assistant/home-assistant/pull/24281
[#24367]: https://github.com/home-assistant/home-assistant/pull/24367
[#24427]: https://github.com/home-assistant/home-assistant/pull/24427
[#24463]: https://github.com/home-assistant/home-assistant/pull/24463
[#24738]: https://github.com/home-assistant/home-assistant/pull/24738
[#24884]: https://github.com/home-assistant/home-assistant/pull/24884
[#24908]: https://github.com/home-assistant/home-assistant/pull/24908
[#24919]: https://github.com/home-assistant/home-assistant/pull/24919
[#24950]: https://github.com/home-assistant/home-assistant/pull/24950
[#24953]: https://github.com/home-assistant/home-assistant/pull/24953
[#24956]: https://github.com/home-assistant/home-assistant/pull/24956
[#24991]: https://github.com/home-assistant/home-assistant/pull/24991
[#25052]: https://github.com/home-assistant/home-assistant/pull/25052
[#25056]: https://github.com/home-assistant/home-assistant/pull/25056
[#25071]: https://github.com/home-assistant/home-assistant/pull/25071
[#25083]: https://github.com/home-assistant/home-assistant/pull/25083
[#25085]: https://github.com/home-assistant/home-assistant/pull/25085
[#25086]: https://github.com/home-assistant/home-assistant/pull/25086
[#25090]: https://github.com/home-assistant/home-assistant/pull/25090
[#25091]: https://github.com/home-assistant/home-assistant/pull/25091
[#25093]: https://github.com/home-assistant/home-assistant/pull/25093
[#25094]: https://github.com/home-assistant/home-assistant/pull/25094
[#25108]: https://github.com/home-assistant/home-assistant/pull/25108
[#25111]: https://github.com/home-assistant/home-assistant/pull/25111
[#25112]: https://github.com/home-assistant/home-assistant/pull/25112
[#25117]: https://github.com/home-assistant/home-assistant/pull/25117
[#25120]: https://github.com/home-assistant/home-assistant/pull/25120
[#25127]: https://github.com/home-assistant/home-assistant/pull/25127
[#25128]: https://github.com/home-assistant/home-assistant/pull/25128
[#25129]: https://github.com/home-assistant/home-assistant/pull/25129
[#25132]: https://github.com/home-assistant/home-assistant/pull/25132
[#25144]: https://github.com/home-assistant/home-assistant/pull/25144
[#25157]: https://github.com/home-assistant/home-assistant/pull/25157
[#25158]: https://github.com/home-assistant/home-assistant/pull/25158
[#25161]: https://github.com/home-assistant/home-assistant/pull/25161
[#25172]: https://github.com/home-assistant/home-assistant/pull/25172
[#25173]: https://github.com/home-assistant/home-assistant/pull/25173
[#25174]: https://github.com/home-assistant/home-assistant/pull/25174
[#25175]: https://github.com/home-assistant/home-assistant/pull/25175
[#25176]: https://github.com/home-assistant/home-assistant/pull/25176
[#25181]: https://github.com/home-assistant/home-assistant/pull/25181
[#25182]: https://github.com/home-assistant/home-assistant/pull/25182
[#25186]: https://github.com/home-assistant/home-assistant/pull/25186
[#25188]: https://github.com/home-assistant/home-assistant/pull/25188
[#25190]: https://github.com/home-assistant/home-assistant/pull/25190
[#25194]: https://github.com/home-assistant/home-assistant/pull/25194
[#25195]: https://github.com/home-assistant/home-assistant/pull/25195
[#25199]: https://github.com/home-assistant/home-assistant/pull/25199
[#25200]: https://github.com/home-assistant/home-assistant/pull/25200
[#25201]: https://github.com/home-assistant/home-assistant/pull/25201
[#25202]: https://github.com/home-assistant/home-assistant/pull/25202
[#25207]: https://github.com/home-assistant/home-assistant/pull/25207
[#25208]: https://github.com/home-assistant/home-assistant/pull/25208
[#25221]: https://github.com/home-assistant/home-assistant/pull/25221
[#25234]: https://github.com/home-assistant/home-assistant/pull/25234
[#25249]: https://github.com/home-assistant/home-assistant/pull/25249
[#25260]: https://github.com/home-assistant/home-assistant/pull/25260
[#25265]: https://github.com/home-assistant/home-assistant/pull/25265
[#25284]: https://github.com/home-assistant/home-assistant/pull/25284
[#25304]: https://github.com/home-assistant/home-assistant/pull/25304
[#25305]: https://github.com/home-assistant/home-assistant/pull/25305
[#25308]: https://github.com/home-assistant/home-assistant/pull/25308
[#25316]: https://github.com/home-assistant/home-assistant/pull/25316
[#25317]: https://github.com/home-assistant/home-assistant/pull/25317
[#25320]: https://github.com/home-assistant/home-assistant/pull/25320
[#25338]: https://github.com/home-assistant/home-assistant/pull/25338
[#25339]: https://github.com/home-assistant/home-assistant/pull/25339
[#25340]: https://github.com/home-assistant/home-assistant/pull/25340
[#25341]: https://github.com/home-assistant/home-assistant/pull/25341
[#25355]: https://github.com/home-assistant/home-assistant/pull/25355
[#25357]: https://github.com/home-assistant/home-assistant/pull/25357
[#25365]: https://github.com/home-assistant/home-assistant/pull/25365
[#25373]: https://github.com/home-assistant/home-assistant/pull/25373
[#25375]: https://github.com/home-assistant/home-assistant/pull/25375
[#25377]: https://github.com/home-assistant/home-assistant/pull/25377
[#25382]: https://github.com/home-assistant/home-assistant/pull/25382
[#25390]: https://github.com/home-assistant/home-assistant/pull/25390
[#25398]: https://github.com/home-assistant/home-assistant/pull/25398
[#25401]: https://github.com/home-assistant/home-assistant/pull/25401
[#25402]: https://github.com/home-assistant/home-assistant/pull/25402
[#25403]: https://github.com/home-assistant/home-assistant/pull/25403
[#25408]: https://github.com/home-assistant/home-assistant/pull/25408
[#25409]: https://github.com/home-assistant/home-assistant/pull/25409
[#25410]: https://github.com/home-assistant/home-assistant/pull/25410
[#25414]: https://github.com/home-assistant/home-assistant/pull/25414
[#25415]: https://github.com/home-assistant/home-assistant/pull/25415
[#25416]: https://github.com/home-assistant/home-assistant/pull/25416
[#25422]: https://github.com/home-assistant/home-assistant/pull/25422
[#25425]: https://github.com/home-assistant/home-assistant/pull/25425
[#25428]: https://github.com/home-assistant/home-assistant/pull/25428
[#25429]: https://github.com/home-assistant/home-assistant/pull/25429
[#25430]: https://github.com/home-assistant/home-assistant/pull/25430
[#25431]: https://github.com/home-assistant/home-assistant/pull/25431
[#25432]: https://github.com/home-assistant/home-assistant/pull/25432
[#25434]: https://github.com/home-assistant/home-assistant/pull/25434
[#25435]: https://github.com/home-assistant/home-assistant/pull/25435
[#25436]: https://github.com/home-assistant/home-assistant/pull/25436
[#25437]: https://github.com/home-assistant/home-assistant/pull/25437
[#25438]: https://github.com/home-assistant/home-assistant/pull/25438
[#25439]: https://github.com/home-assistant/home-assistant/pull/25439
[#25440]: https://github.com/home-assistant/home-assistant/pull/25440
[#25441]: https://github.com/home-assistant/home-assistant/pull/25441
[#25442]: https://github.com/home-assistant/home-assistant/pull/25442
[#25443]: https://github.com/home-assistant/home-assistant/pull/25443
[#25444]: https://github.com/home-assistant/home-assistant/pull/25444
[#25445]: https://github.com/home-assistant/home-assistant/pull/25445
[#25450]: https://github.com/home-assistant/home-assistant/pull/25450
[#25453]: https://github.com/home-assistant/home-assistant/pull/25453
[#25454]: https://github.com/home-assistant/home-assistant/pull/25454
[#25457]: https://github.com/home-assistant/home-assistant/pull/25457
[#25460]: https://github.com/home-assistant/home-assistant/pull/25460
[#25462]: https://github.com/home-assistant/home-assistant/pull/25462
[#25463]: https://github.com/home-assistant/home-assistant/pull/25463
[#25464]: https://github.com/home-assistant/home-assistant/pull/25464
[#25474]: https://github.com/home-assistant/home-assistant/pull/25474
[#25475]: https://github.com/home-assistant/home-assistant/pull/25475
[#25478]: https://github.com/home-assistant/home-assistant/pull/25478
[#25485]: https://github.com/home-assistant/home-assistant/pull/25485
[#25491]: https://github.com/home-assistant/home-assistant/pull/25491
[#25497]: https://github.com/home-assistant/home-assistant/pull/25497
[#25498]: https://github.com/home-assistant/home-assistant/pull/25498
[#25500]: https://github.com/home-assistant/home-assistant/pull/25500
[#25503]: https://github.com/home-assistant/home-assistant/pull/25503
[#25504]: https://github.com/home-assistant/home-assistant/pull/25504
[#25506]: https://github.com/home-assistant/home-assistant/pull/25506
[#25507]: https://github.com/home-assistant/home-assistant/pull/25507
[#25508]: https://github.com/home-assistant/home-assistant/pull/25508
[#25511]: https://github.com/home-assistant/home-assistant/pull/25511
[#25512]: https://github.com/home-assistant/home-assistant/pull/25512
[#25524]: https://github.com/home-assistant/home-assistant/pull/25524
[#25528]: https://github.com/home-assistant/home-assistant/pull/25528
[#25529]: https://github.com/home-assistant/home-assistant/pull/25529
[#25532]: https://github.com/home-assistant/home-assistant/pull/25532
[#25534]: https://github.com/home-assistant/home-assistant/pull/25534
[#25537]: https://github.com/home-assistant/home-assistant/pull/25537
[#25540]: https://github.com/home-assistant/home-assistant/pull/25540
[#25543]: https://github.com/home-assistant/home-assistant/pull/25543
[#25545]: https://github.com/home-assistant/home-assistant/pull/25545
[#25546]: https://github.com/home-assistant/home-assistant/pull/25546
[#25548]: https://github.com/home-assistant/home-assistant/pull/25548
[#25551]: https://github.com/home-assistant/home-assistant/pull/25551
[#25553]: https://github.com/home-assistant/home-assistant/pull/25553
[#25557]: https://github.com/home-assistant/home-assistant/pull/25557
[#25558]: https://github.com/home-assistant/home-assistant/pull/25558
[#25560]: https://github.com/home-assistant/home-assistant/pull/25560
[#25561]: https://github.com/home-assistant/home-assistant/pull/25561
[#25567]: https://github.com/home-assistant/home-assistant/pull/25567
[#25568]: https://github.com/home-assistant/home-assistant/pull/25568
[#25569]: https://github.com/home-assistant/home-assistant/pull/25569
[#25570]: https://github.com/home-assistant/home-assistant/pull/25570
[#25575]: https://github.com/home-assistant/home-assistant/pull/25575
[#25580]: https://github.com/home-assistant/home-assistant/pull/25580
[#25581]: https://github.com/home-assistant/home-assistant/pull/25581
[#25582]: https://github.com/home-assistant/home-assistant/pull/25582
[#25585]: https://github.com/home-assistant/home-assistant/pull/25585
[#25590]: https://github.com/home-assistant/home-assistant/pull/25590
[#25592]: https://github.com/home-assistant/home-assistant/pull/25592
[#25593]: https://github.com/home-assistant/home-assistant/pull/25593
[#25594]: https://github.com/home-assistant/home-assistant/pull/25594
[#25599]: https://github.com/home-assistant/home-assistant/pull/25599
[#25602]: https://github.com/home-assistant/home-assistant/pull/25602
[#25605]: https://github.com/home-assistant/home-assistant/pull/25605
[#25607]: https://github.com/home-assistant/home-assistant/pull/25607
[#25610]: https://github.com/home-assistant/home-assistant/pull/25610
[#25618]: https://github.com/home-assistant/home-assistant/pull/25618
[#25625]: https://github.com/home-assistant/home-assistant/pull/25625
[#25629]: https://github.com/home-assistant/home-assistant/pull/25629
[#25630]: https://github.com/home-assistant/home-assistant/pull/25630
[#25631]: https://github.com/home-assistant/home-assistant/pull/25631
[#25633]: https://github.com/home-assistant/home-assistant/pull/25633
[#25636]: https://github.com/home-assistant/home-assistant/pull/25636
[#25639]: https://github.com/home-assistant/home-assistant/pull/25639
[#25641]: https://github.com/home-assistant/home-assistant/pull/25641
[#25642]: https://github.com/home-assistant/home-assistant/pull/25642
[#25643]: https://github.com/home-assistant/home-assistant/pull/25643
[#25653]: https://github.com/home-assistant/home-assistant/pull/25653
[#25669]: https://github.com/home-assistant/home-assistant/pull/25669
[#25679]: https://github.com/home-assistant/home-assistant/pull/25679
[#25680]: https://github.com/home-assistant/home-assistant/pull/25680
[#25683]: https://github.com/home-assistant/home-assistant/pull/25683
[#25690]: https://github.com/home-assistant/home-assistant/pull/25690
[#25691]: https://github.com/home-assistant/home-assistant/pull/25691
[#25696]: https://github.com/home-assistant/home-assistant/pull/25696
[#25702]: https://github.com/home-assistant/home-assistant/pull/25702
[#25713]: https://github.com/home-assistant/home-assistant/pull/25713
[#25726]: https://github.com/home-assistant/home-assistant/pull/25726
[#25731]: https://github.com/home-assistant/home-assistant/pull/25731
[#25732]: https://github.com/home-assistant/home-assistant/pull/25732
[#25735]: https://github.com/home-assistant/home-assistant/pull/25735
[@9R]: https://github.com/9R
[@Adminiuga]: https://github.com/Adminiuga
[@Anglac]: https://github.com/Anglac
[@Bouni]: https://github.com/Bouni
[@Cereal2nd]: https://github.com/Cereal2nd
[@ChristianKuehnel]: https://github.com/ChristianKuehnel
[@Danielhiversen]: https://github.com/Danielhiversen
[@DarkFox]: https://github.com/DarkFox
[@FrederikBolding]: https://github.com/FrederikBolding
[@Jc2k]: https://github.com/Jc2k
[@JonGilmore]: https://github.com/JonGilmore
[@Kane610]: https://github.com/Kane610
[@MartinHjelmare]: https://github.com/MartinHjelmare
[@PhilRW]: https://github.com/PhilRW
[@Quentame]: https://github.com/Quentame
[@Santobert]: https://github.com/Santobert
[@SukramJ]: https://github.com/SukramJ
[@Yarikx]: https://github.com/Yarikx
[@adrum]: https://github.com/adrum
[@alengwenus]: https://github.com/alengwenus
[@amelchio]: https://github.com/amelchio
[@andersonshatch]: https://github.com/andersonshatch
[@andre-richter]: https://github.com/andre-richter
[@andrewsayre]: https://github.com/andrewsayre
[@aschamberger]: https://github.com/aschamberger
[@asleeis]: https://github.com/asleeis
[@austinmroczek]: https://github.com/austinmroczek
[@bachya]: https://github.com/bachya
[@balloob]: https://github.com/balloob
[@benleb]: https://github.com/benleb
[@bollewolle]: https://github.com/bollewolle
[@cameronrmorris]: https://github.com/cameronrmorris
[@cgarwood]: https://github.com/cgarwood
[@cgtobi]: https://github.com/cgtobi
[@croghostrider]: https://github.com/croghostrider
[@definitio]: https://github.com/definitio
[@depl0y]: https://github.com/depl0y
[@dmulcahey]: https://github.com/dmulcahey
[@dshokouhi]: https://github.com/dshokouhi
[@dwradcliffe]: https://github.com/dwradcliffe
[@elupus]: https://github.com/elupus
[@escoand]: https://github.com/escoand
[@fabaff]: https://github.com/fabaff
[@farmio]: https://github.com/farmio
[@fbradyirl]: https://github.com/fbradyirl
[@franfos]: https://github.com/franfos
[@fredrike]: https://github.com/fredrike
[@frenck]: https://github.com/frenck
[@gjbadros]: https://github.com/gjbadros
[@gorynychzmey]: https://github.com/gorynychzmey
[@gtdiehl]: https://github.com/gtdiehl
[@iamtpage]: https://github.com/iamtpage
[@jesserizzo]: https://github.com/jesserizzo
[@keesschollaart81]: https://github.com/keesschollaart81
[@kifeo]: https://github.com/kifeo
[@kimfrellsen]: https://github.com/kimfrellsen
[@ktnrg45]: https://github.com/ktnrg45
[@lealoureiro]: https://github.com/lealoureiro
[@ljmerza]: https://github.com/ljmerza
[@lyghtnox]: https://github.com/lyghtnox
[@manonstreet]: https://github.com/manonstreet
[@manutenfruits]: https://github.com/manutenfruits
[@michaeldavie]: https://github.com/michaeldavie
[@mjj4791]: https://github.com/mjj4791
[@nielstron]: https://github.com/nielstron
[@nierob]: https://github.com/nierob
[@oncleben31]: https://github.com/oncleben31
[@ooii]: https://github.com/ooii
[@orson1282]: https://github.com/orson1282
[@pattyland]: https://github.com/pattyland
[@plafue]: https://github.com/plafue
[@postlund]: https://github.com/postlund
[@pvizeli]: https://github.com/pvizeli
[@rossdargan]: https://github.com/rossdargan
[@rtclauss]: https://github.com/rtclauss
[@rytilahti]: https://github.com/rytilahti
[@scop]: https://github.com/scop
[@shbatm]: https://github.com/shbatm
[@squishykid]: https://github.com/squishykid
[@teharris1]: https://github.com/teharris1
[@tetienne]: https://github.com/tetienne
[@thomasgermain]: https://github.com/thomasgermain
[@thomasloven]: https://github.com/thomasloven
[@tofuSCHNITZEL]: https://github.com/tofuSCHNITZEL
[@tsvi]: https://github.com/tsvi
[@webdjoe]: https://github.com/webdjoe
[@xt16johnny]: https://github.com/xt16johnny
[@yeralin]: https://github.com/yeralin
[@zxdavb]: https://github.com/zxdavb
[alarm_control_panel docs]: /components/alarm_control_panel/
[ambient_station docs]: /components/ambient_station/
[apache_kafka docs]: /components/apache_kafka/
[automation docs]: /components/automation/
[avea docs]: /components/avea/
[bloomsky docs]: /components/bloomsky/
[bluetooth_tracker docs]: /components/bluetooth_tracker/
[buienradar docs]: /components/buienradar/
[caldav docs]: /components/caldav/
[calendar docs]: /components/calendar/
[cisco_mobility_express docs]: /components/cisco_mobility_express/
[climate docs]: /components/climate/
[cloud docs]: /components/cloud/
[counter docs]: /components/counter/
[cover docs]: /components/cover/
[daikin docs]: /components/daikin/
[darksky docs]: /components/darksky/
[deconz docs]: /components/deconz/
[delijn docs]: /components/delijn/
[demo docs]: /components/demo/
[device_tracker docs]: /components/device_tracker/
[discord docs]: /components/discord/
[ecobee docs]: /components/ecobee/
[elkm1 docs]: /components/elkm1/
[emulated_hue docs]: /components/emulated_hue/
[enphase_envoy docs]: /components/enphase_envoy/
[environment_canada docs]: /components/environment_canada/
[evohome docs]: /components/evohome/
[fan docs]: /components/fan/
[fleetgo docs]: /components/fleetgo/
[flux_led docs]: /components/flux_led/
[fortigate docs]: /components/fortigate/
[fortios docs]: /components/fortios/
[geniushub docs]: /components/geniushub/
[google docs]: /components/google/
[google_assistant docs]: /components/google_assistant/
[google_maps docs]: /components/google_maps/
[google_travel_time docs]: /components/google_travel_time/
[group docs]: /components/group/
[history docs]: /components/history/
[hive docs]: /components/hive/
[homeassistant docs]: /components/homeassistant/
[homekit docs]: /components/homekit/
[homekit_controller docs]: /components/homekit_controller/
[homematicip_cloud docs]: /components/homematicip_cloud/
[hp_ilo docs]: /components/hp_ilo/
[html5 docs]: /components/html5/
[http docs]: /components/http/
[huawei_lte docs]: /components/huawei_lte/
[image_processing docs]: /components/image_processing/
[incomfort docs]: /components/incomfort/
[input_boolean docs]: /components/input_boolean/
[input_datetime docs]: /components/input_datetime/
[input_number docs]: /components/input_number/
[input_select docs]: /components/input_select/
[input_text docs]: /components/input_text/
[insteon docs]: /components/insteon/
[jewish_calendar docs]: /components/jewish_calendar/
[knx docs]: /components/knx/
[lcn docs]: /components/lcn/
[lock docs]: /components/lock/
[lovelace docs]: /components/lovelace/
[luci docs]: /components/luci/
[lutron docs]: /components/lutron/
[mastodon docs]: /components/mastodon/
[media_extractor docs]: /components/media_extractor/
[media_player docs]: /components/media_player/
[meteo_france docs]: /components/meteo_france/
[mikrotik docs]: /components/mikrotik/
[mqtt docs]: /components/mqtt/
[mvglive docs]: /components/mvglive/
[n26 docs]: /components/n26/
[neato docs]: /components/neato/
[nest docs]: /components/nest/
[netatmo docs]: /components/netatmo/
[netgear_lte docs]: /components/netgear_lte/
[nextbus docs]: /components/nextbus/
[notion docs]: /components/notion/
[nuki docs]: /components/nuki/
[opensensemap docs]: /components/opensensemap/
[pioneer docs]: /components/pioneer/
[ps4 docs]: /components/ps4/
[rainforest_eagle docs]: /components/rainforest_eagle/
[rejseplanen docs]: /components/rejseplanen/
[remote docs]: /components/remote/
[ring docs]: /components/ring/
[ritassist docs]: /components/ritassist/
[roku docs]: /components/roku/
[roomba docs]: /components/roomba/
[samsungtv docs]: /components/samsungtv/
[scene docs]: /components/scene/
[script docs]: /components/script/
[seventeentrack docs]: /components/seventeentrack/
[simplisafe docs]: /components/simplisafe/
[smartthings docs]: /components/smartthings/
[snapcast docs]: /components/snapcast/
[solax docs]: /components/solax/
[somfy docs]: /components/somfy/
[songpal docs]: /components/songpal/
[splunk docs]: /components/splunk/
[spotify docs]: /components/spotify/
[suez_water docs]: /components/suez_water/
[switchbot docs]: /components/switchbot/
[syncthru docs]: /components/syncthru/
[system_health docs]: /components/system_health/
[tado docs]: /components/tado/
[telnet docs]: /components/telnet/
[tibber docs]: /components/tibber/
[timer docs]: /components/timer/
[todoist docs]: /components/todoist/
[totalconnect docs]: /components/totalconnect/
[transmission docs]: /components/transmission/
[twentemilieu docs]: /components/twentemilieu/
[unifi docs]: /components/unifi/
[utility_meter docs]: /components/utility_meter/
[vacuum docs]: /components/vacuum/
[vallox docs]: /components/vallox/
[velbus docs]: /components/velbus/
[venstar docs]: /components/venstar/
[vesync docs]: /components/vesync/
[wink docs]: /components/wink/
[workday docs]: /components/workday/
[wwlln docs]: /components/wwlln/
[xiaomi_miio docs]: /components/xiaomi_miio/
[zha docs]: /components/zha/
[zwave docs]: /components/zwave/

View File

@ -50,20 +50,20 @@ We will need a few things to get started with installing Home Assistant. The lat
### Installing Hass.io
1. Put the SD card in your SD card reader.
1. Open balenaEtcher, select the Hass.io image and flash it to the SD card.
1. Unmount the SD card and remove it from your SD card reader.
1. Only if you want to configure WiFi or a Static IP (requires USB stick):
2. Open balenaEtcher, select the Hass.io image and flash it to the SD card.
3. Unmount the SD card and remove it from your SD card reader.
4. Only if you want to configure WiFi or a Static IP (requires USB stick):
- Format a USB-Stick to FAT32 with volume-name `CONFIG`.
- Create a folder named `network` in the root of the newly formatted USB-stick.
- Within that folder create a file named `my-network` without extension.
- Copy one of [the examples] to the `my-network` file and adjust accordingly.
- Plug the USB-stick into the Raspberry Pi 3.
1. Insert the SD card into your Raspberry Pi 3. If you are going to use an Ethernet cable, connect that too.
1. Connect your Raspberry Pi to the power supply, so it turns on.
1. The Raspberry Pi will now boot up, connect to the Internet and download the latest version of Home Assistant, which will take about 20 minutes.
1. Home Assistant will be available at [http://hassio.local:8123][local]. If you are running an older Windows or have stricter network configuration, you might need to access Home Assistant at [http://hassio:8123][host].
1. If you have used a USB-stick for configuring the network, it can now be removed.
5. Insert the SD card into your Raspberry Pi 3. If you are going to use an Ethernet cable, connect that too.
6. Connect your Raspberry Pi to the power supply, so it turns on.
7. The Raspberry Pi will now boot up, connect to the Internet and download the latest version of Home Assistant, which will take about 20 minutes.
8. Home Assistant will be available at [http://hassio.local:8123][local]. If you are running an older Windows or have stricter network configuration, you might need to access Home Assistant at [http://hassio:8123][host].
9. If you have used a USB-stick for configuring the network, it can now be removed.
[local]: http://hassio.local:8123
[host]: http://hassio:8123
@ -72,3 +72,5 @@ We will need a few things to get started with installing Home Assistant. The lat
### [Next step: Onboarding &raquo;][next-step]
[next-step]: /getting-started/onboarding/
_As an Amazon Associate Home Assistant earns from qualifying purchases._

Binary file not shown.

After

Width:  |  Height:  |  Size: 71 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 147 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 186 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.3 KiB

After

Width:  |  Height:  |  Size: 6.8 KiB

View File

@ -1,177 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
viewBox="0 0 164.10268 138.46133"
height="138.46133"
width="164.10268"
xml:space="preserve"
id="svg2"
version="1.1"><metadata
id="metadata8"><rdf:RDF><cc:Work
rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" /></cc:Work></rdf:RDF></metadata><defs
id="defs6"><clipPath
id="clipPath18"
clipPathUnits="userSpaceOnUse"><path
id="path16"
d="m 6.998,7.392 h 109.08 V 96.455 H 6.998 Z" /></clipPath><clipPath
id="clipPath44"
clipPathUnits="userSpaceOnUse"><path
id="path42"
d="m 61.723,52.808 c -3.456,0.157 -6.115,1.034 -8.175,2.303 v 0 c 1.395,-6.055 6.612,-9.029 6.864,-9.17 v 0 l 1.538,-0.848 c 11.768,0.786 18.656,8.383 18.656,18.317 v 0 2.153 C 77.809,56.437 71.299,52.377 61.723,52.808" /></clipPath><linearGradient
id="linearGradient54"
spreadMethod="pad"
gradientTransform="matrix(27.057007,0,0,27.057007,53.548492,55.328064)"
gradientUnits="userSpaceOnUse"
y2="0"
x2="1"
y1="0"
x1="0"><stop
id="stop50"
offset="0"
style="stop-opacity:1;stop-color:#656263" /><stop
id="stop52"
offset="1"
style="stop-opacity:1;stop-color:#a7a5a6" /></linearGradient><clipPath
id="clipPath66"
clipPathUnits="userSpaceOnUse"><path
id="path64"
d="m 6.998,7.392 h 109.08 V 96.455 H 6.998 Z" /></clipPath></defs><g
transform="matrix(1.3333333,0,0,-1.3333333,0,138.46133)"
id="g10"><g
id="g12"><g
clip-path="url(#clipPath18)"
id="g14"><g
transform="translate(79.6021,65.8706)"
id="g20"><path
id="path22"
style="fill:#0d0d0d;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 0,0 1.004,3.275 v 22.437 c -11.734,0 -12.956,-4.499 -12.956,-8.796 v -24.64 c 0,-1.276 -0.124,-2.629 -0.382,-3.956 C -6.112,-10.547 -2.053,-6.701 0,0" /></g><path
id="path24"
style="fill:#39a2e1;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 49.566,86.46 h -2.593 v 2.561 h 2.593 z" /><path
id="path26"
style="fill:#39a2e1;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 52.156,82.59 h -2.59 v 2.563 h 2.59 z" /><path
id="path28"
style="fill:#39a2e1;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 49.551,79.367 h -2.563 v 2.562 h 2.563 z" /><path
id="path30"
style="fill:#39a2e1;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 46.96,75.525 h -2.562 v 2.562 h 2.562 z" /><path
id="path32"
style="fill:#39a2e1;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 41.792,89.021 h -2.59 v 2.589 h 2.59 z" /><g
transform="translate(44.3853,72.9648)"
id="g34"><path
id="path36"
style="fill:#39a2e1;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 0,0 h 2.587 v -5.707 h 2.594 v 9.548 h 2.59 v -18.659 c 0,-8.855 7.749,-13.126 7.749,-13.126 -13.017,0 -20.703,7.891 -20.703,18.39 V 11.56 h 2.589 V -2.562 H 0 Z" /></g></g></g><g
id="g38"><g
clip-path="url(#clipPath44)"
id="g40"><g
id="g46"><g
id="g48"><path
id="path56"
style="fill:url(#linearGradient54);stroke:none"
d="m 61.723,52.808 c -3.456,0.157 -6.115,1.034 -8.175,2.303 v 0 c 1.395,-6.055 6.612,-9.029 6.864,-9.17 v 0 l 1.538,-0.848 c 11.768,0.786 18.656,8.383 18.656,18.317 v 0 2.153 C 77.809,56.437 71.299,52.377 61.723,52.808" /></g></g></g></g><path
id="path58"
style="fill:#39a2e1;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 46.958,83.872 h -2.56 v 2.562 h 2.56 z" /><g
id="g60"><g
clip-path="url(#clipPath66)"
id="g62"><g
transform="translate(74.624,21.8422)"
id="g68"><path
id="path70"
style="fill:#4f4c4d;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="M 0,0 C -2.232,0 -3.973,0.618 -5.173,1.839 -6.4,3.086 -7.005,4.891 -6.969,7.206 L -6.97,18.012 h 0.023 c 0.598,0 2.553,-0.142 2.553,-1.97 L -4.393,6.638 C -4.325,3.846 -2.724,2.247 0,2.247 c 2.723,0 4.324,1.601 4.391,4.393 v 9.402 c 0,1.828 1.956,1.97 2.556,1.97 H 6.969 L 6.966,7.204 C 7.004,4.891 6.4,3.086 5.172,1.839 3.97,0.618 2.23,0 0,0" /></g><g
transform="translate(15.1595,21.8422)"
id="g72"><path
id="path74"
style="fill:#4f4c4d;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="M 0,0 C -2.232,0 -3.972,0.618 -5.172,1.839 -6.4,3.086 -7.004,4.891 -6.966,7.206 l 0.036,10.806 h 0.021 c 0.599,0 2.554,-0.142 2.554,-1.97 L -4.391,6.638 C -4.324,3.846 -2.724,2.247 0,2.247 c 2.725,0 4.325,1.601 4.392,4.393 l 0.038,9.402 c 0,1.828 1.956,1.97 2.555,1.97 H 7.008 L 6.968,7.204 C 7.005,4.891 6.4,3.086 5.173,1.839 3.972,0.618 2.23,0 0,0" /></g><g
transform="translate(56.3387,24.0893)"
id="g76"><path
id="path78"
style="fill:#4f4c4d;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 0,0 c -4.375,0 -5.028,4.213 -5.028,6.725 0,2.022 0.488,6.803 5.028,6.803 4.374,0 5.028,-4.292 5.028,-6.803 C 5.028,4.703 4.537,0 0,0 m 9.879,-1.894 c 0,0.272 -0.042,1.181 -0.56,1.728 C 9.043,0.122 8.676,0.268 8.218,0.268 h -3.01 c 1.621,1.579 2.514,3.861 2.514,6.457 0,4.336 -2.03,9.048 -7.722,9.048 -5.693,0 -7.721,-4.712 -7.721,-9.048 0,-4.335 2.026,-8.968 7.711,-8.972 l 0.015,0.002 c 0.437,0.02 0.89,0.067 1.35,0.14 0.275,0.031 0.569,0.083 0.852,0.132 l 0.449,0.079 z" /></g><g
transform="translate(85.9779,22.0111)"
id="g80"><path
id="path82"
style="fill:#4f4c4d;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 0,0 -0.002,15.872 c 0,1.83 1.955,1.971 2.554,1.971 H 2.575 V 0.293 C 2.575,0.132 2.444,0 2.283,0 Z" /></g><g
transform="translate(42.6704,21.9496)"
id="g84"><path
id="path86"
style="fill:#4f4c4d;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 0,0 -0.003,15.934 c 0,1.828 1.956,1.971 2.555,1.971 H 2.575 V 0.293 C 2.575,0.132 2.444,0 2.283,0 Z" /></g><g
transform="translate(106.4436,22.0111)"
id="g88"><path
id="path90"
style="fill:#4f4c4d;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 0,0 v 15.916 c 0,1.829 1.949,1.971 2.549,1.971 H 2.572 V 0.293 C 2.572,0.132 2.441,0 2.28,0 Z" /></g><g
transform="translate(91.0876,39.8103)"
id="g92"><path
id="path94"
style="fill:#4f4c4d;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="M 0,0 V -2.246 H 5.267 V -17.8 h 2.282 c 0.158,0 0.289,0.13 0.293,0.286 v 15.268 h 4.798 c 0.157,0 0.288,0.129 0.291,0.285 l 0,1.961 z" /></g><g
transform="translate(91.1307,39.8103)"
id="g96"><path
id="path98"
style="fill:#4f4c4d;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="M 0,0 V -2.246 H 5.267 V -17.8 H 7.55 c 0.158,0 0.288,0.13 0.291,0.286 v 15.268 h 4.799 c 0.158,0 0.289,0.129 0.292,0.285 V 0 Z" /></g><g
transform="translate(33.3493,24.2646)"
id="g100"><path
id="path102"
style="fill:#4f4c4d;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 0,0 h -4.099 v 5.836 h 3.827 C 0.929,5.836 2.943,5.341 2.943,2.914 2.943,0.663 1.21,0.058 0,0 M 2.249,10.671 C 2.249,9.725 1.959,8.946 1.363,8.562 0.939,8.285 0.347,8.134 -0.471,8.088 h -3.803 v 5.175 h 2.816 0.841 c 2.054,-0.079 2.866,-0.92 2.866,-2.592 M 2.547,6.962 2.326,7.028 2.538,7.12 c 1.482,0.644 2.404,2.148 2.404,3.716 0,2.886 -2.043,4.672 -5.602,4.672 H -6.85 V -2.253 l 6.188,0.001 c 0.173,-0.004 0.346,-0.006 0.522,-0.006 0.713,0 1.636,0.04 2.44,0.343 1.949,0.718 3.159,2.468 3.159,4.358 0,1.625 -0.762,3.881 -2.912,4.519" /></g><g
transform="translate(8.5432,16.664)"
id="g104"><path
id="path106"
style="fill:#4f4c4d;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="M 0,0 H 0.952 L 3.307,-3.8 H 3.321 V 0 h 0.86 V -5.157 H 3.227 L 0.88,-1.365 H 0.858 V -5.157 H 0 Z" /></g><g
transform="translate(22.4235,16.664)"
id="g108"><path
id="path110"
style="fill:#4f4c4d;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="M 0,0 H 3.713 V -0.78 H 0.904 V -2.131 H 3.503 V -2.867 H 0.904 v -1.509 h 2.859 v -0.781 l -3.763,0 z" /></g><g
transform="translate(35.2121,16.664)"
id="g112"><path
id="path114"
style="fill:#4f4c4d;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="M 0,0 H 4.176 V -0.78 H 2.535 V -5.157 H 1.633 V -0.78 L 0,-0.78 Z" /></g><g
transform="translate(48.3348,16.664)"
id="g116"><path
id="path118"
style="fill:#4f4c4d;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="M 0,0 H 0.917 L 1.849,-3.944 H 1.863 L 2.903,0 H 3.827 L 4.839,-3.944 H 4.853 L 5.814,0 H 6.732 L 5.309,-5.157 H 4.391 L 3.358,-1.213 H 3.344 L 2.288,-5.157 H 1.359 Z" /></g><g
transform="translate(66.3609,16.0497)"
id="g120"><path
id="path122"
style="fill:#4f4c4d;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 0,0 c -0.274,0 -0.512,-0.055 -0.711,-0.166 -0.199,-0.11 -0.362,-0.259 -0.488,-0.444 -0.124,-0.186 -0.218,-0.396 -0.277,-0.633 -0.06,-0.235 -0.091,-0.476 -0.091,-0.721 0,-0.247 0.031,-0.487 0.091,-0.722 0.059,-0.237 0.153,-0.447 0.277,-0.633 0.126,-0.185 0.289,-0.334 0.488,-0.444 0.199,-0.111 0.437,-0.166 0.711,-0.166 0.276,0 0.511,0.055 0.711,0.166 0.2,0.11 0.362,0.259 0.489,0.444 0.124,0.186 0.217,0.396 0.276,0.633 0.062,0.235 0.092,0.475 0.092,0.722 0,0.245 -0.03,0.486 -0.092,0.721 C 1.417,-1.006 1.324,-0.796 1.2,-0.61 1.073,-0.425 0.911,-0.276 0.711,-0.166 0.511,-0.055 0.276,0 0,0 M 0,0.738 C 0.385,0.738 0.731,0.665 1.036,0.52 1.342,0.376 1.6,0.181 1.813,-0.065 2.025,-0.31 2.188,-0.597 2.3,-0.924 2.414,-1.251 2.471,-1.598 2.471,-1.964 2.471,-2.335 2.414,-2.684 2.3,-3.012 2.188,-3.34 2.025,-3.625 1.813,-3.871 1.6,-4.116 1.342,-4.311 1.036,-4.452 0.731,-4.594 0.385,-4.665 0,-4.665 c -0.385,0 -0.73,0.071 -1.037,0.213 -0.305,0.141 -0.563,0.336 -0.776,0.581 -0.21,0.246 -0.374,0.531 -0.487,0.859 -0.113,0.328 -0.17,0.677 -0.17,1.048 0,0.366 0.057,0.713 0.17,1.04 0.113,0.327 0.277,0.614 0.487,0.859 C -1.6,0.181 -1.342,0.376 -1.037,0.52 -0.73,0.665 -0.385,0.738 0,0.738" /></g><g
transform="translate(79.1802,14.3163)"
id="g124"><path
id="path126"
style="fill:#4f4c4d;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="M 0,0 H 1.481 C 1.77,0 1.988,0.068 2.139,0.206 2.287,0.343 2.362,0.549 2.362,0.823 2.362,0.987 2.338,1.121 2.29,1.224 2.241,1.328 2.175,1.409 2.091,1.466 2.006,1.525 1.91,1.563 1.802,1.582 1.693,1.601 1.582,1.61 1.466,1.61 H 0 Z M -0.904,2.348 H 1.56 C 2.128,2.348 2.554,2.225 2.839,1.979 3.122,1.733 3.264,1.391 3.264,0.954 3.264,0.707 3.228,0.504 3.156,0.343 3.084,0.182 3,0.052 2.904,-0.046 2.807,-0.145 2.712,-0.217 2.618,-0.259 2.524,-0.303 2.455,-0.333 2.412,-0.347 v -0.014 c 0.078,-0.01 0.161,-0.033 0.25,-0.072 0.089,-0.039 0.172,-0.1 0.249,-0.184 0.076,-0.085 0.14,-0.194 0.191,-0.329 0.051,-0.134 0.076,-0.303 0.076,-0.506 0,-0.303 0.022,-0.579 0.069,-0.826 0.045,-0.249 0.117,-0.426 0.213,-0.531 H 2.491 c -0.067,0.11 -0.107,0.233 -0.118,0.368 -0.013,0.134 -0.018,0.265 -0.018,0.39 0,0.236 -0.015,0.439 -0.044,0.61 -0.029,0.171 -0.082,0.314 -0.159,0.427 -0.077,0.113 -0.181,0.195 -0.315,0.248 -0.133,0.053 -0.301,0.08 -0.508,0.08 H 0 v -2.123 h -0.904 z" /></g><g
transform="translate(92.0189,16.664)"
id="g128"><path
id="path130"
style="fill:#4f4c4d;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="M 0,0 H 0.902 V -2.347 L 3.2,0 H 4.312 L 2.253,-2.058 4.456,-5.157 H 3.329 L 1.64,-2.694 0.902,-3.423 V -5.157 H 0 Z" /></g><g
transform="translate(106.0308,13.2265)"
id="g132"><path
id="path134"
style="fill:#4f4c4d;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 0,0 c 0,-0.198 0.033,-0.367 0.1,-0.506 0.068,-0.14 0.162,-0.255 0.282,-0.343 0.12,-0.09 0.259,-0.155 0.416,-0.195 0.156,-0.041 0.326,-0.062 0.508,-0.062 0.199,0 0.366,0.023 0.506,0.07 0.14,0.045 0.253,0.104 0.34,0.176 0.087,0.072 0.148,0.155 0.188,0.248 0.038,0.095 0.057,0.19 0.057,0.287 0,0.197 -0.044,0.343 -0.133,0.436 C 2.175,0.206 2.078,0.271 1.971,0.31 1.788,0.377 1.575,0.442 1.333,0.501 1.088,0.561 0.79,0.639 0.432,0.737 0.211,0.795 0.027,0.87 -0.119,0.963 -0.266,1.058 -0.383,1.162 -0.47,1.278 c -0.086,0.115 -0.148,0.238 -0.184,0.368 -0.036,0.13 -0.054,0.262 -0.054,0.397 0,0.261 0.054,0.485 0.163,0.676 0.108,0.189 0.251,0.347 0.428,0.472 0.18,0.126 0.381,0.218 0.608,0.279 0.226,0.06 0.455,0.091 0.686,0.091 0.27,0 0.524,-0.036 0.762,-0.106 C 2.178,3.386 2.387,3.281 2.568,3.141 2.747,3.001 2.891,2.83 2.997,2.624 3.103,2.42 3.156,2.183 3.156,1.913 H 2.253 C 2.229,2.245 2.115,2.48 1.914,2.617 1.711,2.754 1.454,2.823 1.14,2.823 1.034,2.823 0.926,2.812 0.815,2.791 0.705,2.769 0.603,2.733 0.513,2.683 0.421,2.632 0.346,2.563 0.284,2.477 0.226,2.39 0.194,2.282 0.194,2.152 0.194,1.969 0.251,1.825 0.365,1.723 0.477,1.619 0.626,1.54 0.808,1.487 0.828,1.482 0.903,1.463 1.036,1.425 1.169,1.39 1.317,1.35 1.479,1.307 1.644,1.263 1.804,1.221 1.96,1.18 2.117,1.139 2.229,1.109 2.295,1.09 2.465,1.037 2.612,0.964 2.737,0.873 2.862,0.782 2.966,0.677 3.051,0.559 3.135,0.442 3.199,0.315 3.238,0.18 3.28,0.045 3.3,-0.089 3.3,-0.224 3.3,-0.513 3.242,-0.761 3.123,-0.965 3.005,-1.17 2.85,-1.337 2.657,-1.467 2.465,-1.596 2.246,-1.691 2,-1.752 c -0.245,-0.06 -0.495,-0.09 -0.751,-0.09 -0.293,0 -0.57,0.035 -0.83,0.109 -0.261,0.072 -0.487,0.181 -0.68,0.331 -0.193,0.149 -0.346,0.341 -0.462,0.574 -0.115,0.235 -0.176,0.51 -0.181,0.828 z" /></g><g
transform="translate(112.2806,38.2932)"
id="g136"><path
id="path138"
style="fill:#4f4c4d;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="M 0,0 H 0.311 C 0.575,0 0.816,0.013 0.816,0.316 0.816,0.571 0.597,0.61 0.395,0.61 H 0 Z m -0.298,0.852 h 0.742 c 0.456,0 0.671,-0.18 0.671,-0.549 0,-0.347 -0.22,-0.492 -0.505,-0.522 L 1.159,-1.067 H 0.838 L 0.316,-0.241 H 0 v -0.826 h -0.298 z m 0.64,-2.362 c 0.76,0 1.347,0.606 1.347,1.409 0,0.786 -0.587,1.391 -1.347,1.391 -0.768,0 -1.356,-0.605 -1.356,-1.391 0,-0.803 0.588,-1.409 1.356,-1.409 m 0,3.041 c 0.896,0 1.646,-0.706 1.646,-1.632 0,-0.944 -0.75,-1.65 -1.646,-1.65 -0.9,0 -1.654,0.706 -1.654,1.65 0,0.926 0.754,1.632 1.654,1.632" /></g></g></g></g></svg>

Before

Width:  |  Height:  |  Size: 15 KiB