Merge branch 'current' into next

This commit is contained in:
Franck Nijhof 2020-06-22 22:06:43 +02:00
commit 52a20abece
No known key found for this signature in database
GPG Key ID: D62583BA8AB11CA3
15 changed files with 133 additions and 29 deletions

View File

@ -149,7 +149,7 @@ Assuming you have only the owner created though onboarding process, no other use
The Command Line auth provider executes a configurable shell command to perform user authentication. Two environment variables, `username` and `password`, are passed to the command. Access is granted when the command exits successfully (with exit code 0).
This provider can be used to integrate Home Assistant with arbitrary external authentication services, from plaintext databases over LDAP to RADIUS. A compatible script for LDAP authentication is [this one](https://github.com/efficiosoft/ldap-auth-sh), for instance.
This provider can be used to integrate Home Assistant with arbitrary external authentication services, from plaintext databases over LDAP to RADIUS. A compatible script for LDAP authentication is [this one](https://github.com/efficiosoft/ldap-auth-sh), for instance. Please note, this will only work when using the Home Assistant Core installation type.
Here is a configuration example:

View File

@ -5,8 +5,13 @@ redirect_from: /getting-started/automation-trigger/
---
### What are triggers
Triggers are what starts the processing of an automation rule. When _any_ of the automation's triggers becomes true (trigger _fires_), Home Assistant will validate the [conditions](/docs/automation/condition/), if any, and call the [action](/docs/automation/action/).
An automation can be triggered by an event, with a certain entity state, at a given time, and more. These can be specified directly or more flexible via templates. It is also possible to specify multiple triggers for one automation.
The following sections introduce all trigger types and further details to get started.
### Event trigger
Fires when an event is being received. Events are the raw building blocks of Home Assistant. You can match events on just the event name or also require specific event data to be present.

View File

@ -28,6 +28,16 @@ If you run into trouble while configuring Home Assistant, have a look at the [co
</div>
## Editing `configuration.yaml`
There are many ways you can edit `configuration.yaml`. Here are three options to get you started:
The simplest is to use the "File Editor" add-on. This will allow you to edit your configuration from within Home Assistant itself.
You can also use Samba (you may need to install the "Samba" add-on) and your favorite file editor.
The most basic is to use SSH to connect to the system (you may need to install the SSH add-on) and then use `nano` (or `vim`) to edit the file.
## Reloading changes
You will have to restart Home Assistant for most changes to `configuration.yaml` to take effect.

View File

@ -26,5 +26,5 @@ As well as the above we advise that you consider the following to improve securi
- For systems that use SSH set `PermitRootLogin no` in your sshd configuration (usually `/etc/ssh/sshd_config`) and to use SSH keys for authentication instead of passwords. This is particularly important if you enable remote access to your SSH services.
- Lock down the host following good practice guidance, for example:
* [Securing Debian Manual](https://www.debian.org/doc/manuals/securing-debian-manual/index.en.html) (this also applies to Raspbian)
* [Securing Debian Manual](https://www.debian.org/doc/manuals/securing-debian-manual/index.en.html) (this also applies to Raspberry Pi OS)
* [Red Hat Enterprise Linux 7 Security Guide](https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/7/pdf/Security_Guide/Red_Hat_Enterprise_Linux-7-Security_Guide-en-US.pdf), [CIS Red Hat Enterprise Linux 7 Benchmark](https://benchmarks.cisecurity.org/tools2/linux/CIS_Red_Hat_Enterprise_Linux_7_Benchmark_v1.0.0.pdf)

View File

@ -22,7 +22,7 @@ Installation with Docker is straightforward. Adjust the following command so tha
docker run --init -d --name="home-assistant" -e "TZ=America/New_York" -v /PATH_TO_YOUR_CONFIG:/config --net=host homeassistant/home-assistant:stable
```
### Raspberry Pi 3 (Raspbian)
### Raspberry Pi 3 (Raspberry Pi OS)
```bash
docker run --init -d --name="home-assistant" -e "TZ=America/New_York" -v /PATH_TO_YOUR_CONFIG:/config --net=host homeassistant/raspberrypi3-homeassistant:stable

View File

@ -1,12 +1,12 @@
---
title: "Manual installation on a Raspberry Pi"
description: "Instructions to install Home Assistant Core on a Raspberry Pi running Raspbian Lite."
description: "Instructions to install Home Assistant Core on a Raspberry Pi running Raspberry Pi OS Lite."
redirect_from: /getting-started/installation-raspberry-pi/
---
This installation of Home Assistant Core requires the Raspberry Pi to run [Raspbian Lite](https://www.raspberrypi.org/downloads/raspbian/). The installation will be installed in a [Virtual Environment](/docs/installation/virtualenv) with minimal overhead. Instructions assume this is a new installation of Raspbian Lite.
This installation of Home Assistant Core requires the Raspberry Pi to run [Raspberry Pi OS Lite](https://www.raspberrypi.org/downloads/raspberry-pi-os//). The installation will be installed in a [Virtual Environment](/docs/installation/virtualenv) with minimal overhead. Instructions assume this is a new installation of Raspberry Pi OS Lite.
You must have Python 3.7 or later installed (including the package `python3-dev`) which is *not* the case for Raspbian Stretch.
You must have Python 3.7 or later installed (including the package `python3-dev`) which is *not* the case for Raspberry Pi OS Stretch.
<div class='note'>
Although these installation steps specifically mention a Raspberry Pi, you can go ahead and proceed on any Linux install as well. This guide is also referred to as the "Advanced Guide" for a virtual environment install.

View File

@ -32,7 +32,7 @@ In newer Linux distributions the access to a host is very limited. This means th
To fix this you will need to open your machine's firewall for TCP traffic to port 8123. The method for doing this will vary depending on your operating system and the firewall you have installed. Below are some suggestions to try. Google is your friend here.
For UFW systems (Ubuntu, Debian, Raspbian, etc.):
For UFW systems (Ubuntu, Debian, Raspberry Pi OS, etc.):
```bash
sudo ufw allow 8123/tcp

View File

@ -101,7 +101,7 @@ pip3 install --upgrade git+git://github.com/home-assistant/home-assistant.git@de
<div class='info'>
Looking for more advanced guides? Check our [Raspbian guide](/docs/installation/raspberry-pi/) or the [other installation guides](/docs/installation/).
Looking for more advanced guides? Check our [Raspberry Pi OS guide](/docs/installation/raspberry-pi/) or the [other installation guides](/docs/installation/).
</div>

View File

@ -14,17 +14,46 @@ ha_config_flow: true
The `braviatv` platform allows you to control a [Sony Bravia TV](https://www.sony.com/).
Almost all [Sony Bravia TV 2013 and newer](https://info.tvsideview.sony.net/en_ww/home_device.html#bravia) are supported. A more generic method for older TVs connected to a Raspberry Pi with HDMI-CEC is explained further below.
Almost all [Sony Bravia TV 2013 and newer](https://info.tvsideview.sony.net/en_ww/home_device.html#bravia) are supported. A more generic method for older TVs connected to a Raspberry Pi with HDMI-CEC is explained further [below](#For-TVs-older-than-2013).
## Configuration
You can setup the Sony Bravia TV via **Configuration** >> **Integrations** in the UI, click the button with `+` sign and from the list of integrations select Sony Bravia TV.
If you have following configuration in your `configuration.yaml` file it will be imported to the Integrations:
## Common Issues
### Previous Configurations
To ensure a clean re-configuration, please perform the following steps:
- Ensure that all braviatv entries in `configuration.yaml` have been removed and `bravia.conf` does not exist in your `.homeassistant` folder.
- Remove the entities you are reconfiguring from Home Assistant.
- Restart Home Assistant.
- Perform the [TV does not generate new pin](#TV-does-not-generate-new-pin) steps.
- Retry [configuration](###Setup-via-the-User-Interface).
### TV does not generate new pin:
If you have previously set up your TV with any Home Assistant instances, you must remove Home Assistant from your TV in order for your TV to generate a new pin. To do this, you must do **one** of the following:
- On your TV, go to: **Settings** -> **Network** -> **Remote device settings** -> **Deregister remote device**. Menu titles may differ slightly between models. If needed, refer to your specific model's [manual](https://www.sony.com/electronics/support/manuals) for additional guidiance.
- Reset your TV to factory condition.
## Configuration using YAML
<div class='note warning'>
New setups via `configuration.yaml` file are currently not be supported.
</div>
If you are updating from a previous version of Home Assistant and have the following configuration in your `configuration.yaml` file in addition to a `bravia.conf` file it will be imported to the Integrations:
```yaml
# Example configuration.yaml entry
media_player:
- platform: braviatv
host: 192.168.0.10
host: IP_ADDRESS
```
{% configuration %}
@ -39,13 +68,18 @@ name:
type: string
{% endconfiguration %}
A new setup via `configuration.yaml` file is not possible.
## Extra configuration for the integration
The integration allows you to change ignored TV sources from the front end. Enter which Sony Bravia TV integration you want to change options on and press the cog wheel.
## For TVs older than 2013
### For TVs older than 2013
<div class='note warning'>
This is not part of the Bravia TV integration. Extra Configuration does not apply to the steps below.
</div>
Users of TVs older than 2013 have another option for controlling their TV via Home Assistant.
@ -68,7 +102,7 @@ Using `cec-client` is a great method to turn your TV off/on, however the trade o
This is because only one process can control the CEC functionality within the Raspberry Pi at a time and running the above commands terminates the functionality inside libCEC within Kodi. Kodi must be restarted for TV remove functionality to work again.
**Workaround:**
#### Workaround
If your desire is only to turn on your TV, the following "workaround" may be desirable:

View File

@ -21,15 +21,21 @@ It also exposes a service to add an event to one of your Google Calendars.
Generate a Client ID and Client Secret on
[Google Developers Console](https://console.developers.google.com/start/api?id=calendar).
1. Follow the wizard using the following information.
1. When it gets to the point of asking _Which API are you using?_ just click cancel.
1. Under APIs & Services (left sidebar) > Credentials, click on the menu item, 'OAuth consent screen'.
1. First go to the [Google Developers Console](https://console.developers.google.com/start/api?id=calendar)
1. The wizard will ask you to choose a project to manage your application. Select a project and click continue.
1. Verify that your calendar API was enabled and click 'Go to credentials'
1. When it gets to the Page titled _Add credentials to your project_ just click cancel.
1. Navigate to APIs & Services (left sidebar) > Credentials
1. Click on the field on the right of the screen, 'CONFIGURE CONSENT SCREEN', select "External" and create.
1. Set the 'Application Name' (the name of the application asking for consent) to anything you want. We suggest "Home-Assistant".
1. Save this page. You don't have to fill out anything else here.
1. Scroll to the bottom and save this page. You don't have to fill out anything else here.
1. Click on the menu item, Credentials, then click 'Create credentials' > OAuth client ID.
1. Set the Application type to 'Other' (if not present, choose 'TV and Limited Input') and give this credential set a name (like "Home Assistant Credentials") then click 'Create'.
1. Copy the client ID and client secret from the page that follows into a text editor temporarily as you will need to put these in your `configuration.yaml` file.
1. You can now copy the client ID and client secret from the page that follows into a text editor temporarily as you will need to put these in your `configuration.yaml` file.
1. Click on the menu item, Library, then search for "Google Calendar API" and enable it (if it isn't already enabled automatically through this process).
1. In order to access your client ID and client secret you can click the navigation menu (hamburger menu) in the top left corner navigate to 'APIs & Services' > Credentials and your credentials will appear under 'OAuth 2.0 Client IDs' with the name you created earlier
1. Clicking on the name will reveal both the client ID and client secret that you will add to your `configuration.yaml`file below
If you will later be adding more scopes than just the "Google Calendar API" to the OAuth for this application, you will need to delete your token file under your Home Assistant Profile. You will lose your refresh token due to the re-authenticating to add more API access. It's recommended to use different authorizations for different pieces of Google.

View File

@ -48,12 +48,44 @@ It is also possible for this platform to interface with a remote 1-wire host ove
## Raspberry Pi set up
In order to setup 1-Wire support on Raspberry Pi, you'll need to edit `/boot/config.txt` following [this documentation](https://www.waveshare.com/wiki/Raspberry_Pi_Tutorial_Series:_1-Wire_DS18B20_Sensor#Enable_1-Wire).
In order to setup 1-Wire support on Raspberry Pi, you'll need to edit `/boot/config.txt`. This file can not be edited through ssh. You have to put your SD card to a PC, and edit the file directly.
To edit `/boot/config.txt` on the Home Assistant Operating System, use [this documentation](https://developers.home-assistant.io/docs/operating-system/debugging.html) to enable SSH and edit `/mnt/boot/config.txt` via `vi`.
If you use an external pull-up resistor and the default GPIO 4 for the data line, add the following line:
```txt
dtoverlay=w1-gpio
```
If you don't want to use an external resistor, you can use a built-in one using the following line:
```txt
dtoverlay=w1-gpio-pullup
```
It is also possible to use a different GPIO pin like this to change it to pin 15:
```txt
dtoverlay=w1-gpio-pullup,gpiopin=15
```
Furthermore, it is also possible to have multiple GPIOs as one-wire data channel by adding multiple lines like this:
```txt
dtoverlay=w1-gpio-pullup,gpiopin=15
dtoverlay=w1-gpio-pullup,gpiopin=16
```
You can read about further parameters in this documentation: [Raspberry Pi Tutorial Series: 1-Wire DS18B20 Sensor](https://www.waveshare.com/wiki/Raspberry_Pi_Tutorial_Series:_1-Wire_DS18B20_Sensor#Enable_1-Wire).
When using the GPIO pins on Raspberry Pi directly as a 1-wire bus, the description above uses two kernel modules. `1w_gpio`, that implements the 1-wire protocol, and `1w_therm`, that understands the DS18B20 (family 28) components inner structure and reports temperature.
There is no support for other device types (families) and hence this onewire platform only supports temperature measurements from family 28 devices.
## Raspberry Pi checking connected devices via ssh
If you set up ssh, you can check the connected one-wire devices in the following folder: /sys/bus/w1/devices
The device IDs begin with `28-`.
## Interface adapter setup
### owfs

View File

@ -19,12 +19,13 @@ Only specific models support the local API. The local API is available on invert
You can check if the local API works by finding the IP address of your inverter and visiting it in a browser. If it supports the local API, you'll see a HTML page with the SolarEdge logo and a "Commissioning" menu.
<div class='note'>
Recent firmware updates have disabled the local API on many inverters. Please enter the IP address of your inverter in a browser before attempting to use this component. If the local API is enabled, you'll see a web page with the SolarEdge logo and a "Commissioning" menu. See [this issue](https://github.com/jbuehl/solaredge/issues/124) and [this issue](https://github.com/drobtravels/solaredge-local/issues/24) for additional details.
If your inverter does not support the local API, you can use the [cloud based version](/integrations/solaredge/)
</div>
## Configuration
To use the SolarEdge sensors in your installation, add the following to your `configuration.yaml` file:

View File

@ -37,13 +37,8 @@ api_key:
type: string
accounts:
required: true
description: List of accounts.
type: map
keys:
account_id:
required: true
description: The 64-bit SteamID.
type: string
description: List of 64-bit SteamIDs.
type: list
{% endconfiguration %}
## Examples

View File

@ -140,6 +140,27 @@ enable_quirks:
To add new devices to the network, call the `permit` service on the `zha` domain. Do this by clicking the Service icon in Developer tools and typing `zha.permit` in the **Service** dropdown box. Next, follow the device instructions for adding, scanning or factory reset.
### OTA firmware updates
ZHA component does have the ability to automatically download and perform OTA (Over-The-Air) firmware updates of Zigbee devices if the OTA firmware provider source URL for updates is available. OTA firmware updating is set to disabled (`false`) in the configuration by default.
Currently, OTA providers for firmware updates are only available for IKEA and LEDVANCE devices. OTA updates for device of other manufactures could possible also be supported by ZHA dependencies in the future, if these manufacturers publish their firmware publicly.
To enable OTA firmware updates for the ZHA integration you need to add the following configuration to your `configuration.yaml` and restart Home Assistant:
```yaml
zha:
zigpy_config:
ota:
ikea_provider: true # Auto update Trådfri devices
ledvance_provider: true # Auto update LEDVANCE devices
#otau_directory: /path/to/your/ota/folder # Utilize .ota files to update everything else
```
You can choose if the IKEA or LEDVANCE provider should be set to enabled (`true`) or disabled (`false`) individually. After the OTA firmware upgrades are finished, you can set these to `false` again if you do not want ZHA to automatically download and perform OTA firmware upgrades in the future.
Note that the `otau_directory` setting is optional and can be used for any firmware files you have downloaded yourself.
## Adding devices
Go to the **Configuration** page and select the **ZHA** integration that was added by the configuration steps above.

View File

@ -34,7 +34,7 @@ secondary_info_attribute:
required: false
description: Which attribute to display under the temperature.
type: boolean
default: Defaults to Extrema if Available, if not available then Precipitation and if precipitation isn't available then Humidity.
default: Defaults to `extrema` if available, if not available then `precipitation` and if precipitation isn't available then `humidity`.
theme:
required: false
description: "Set to any theme within `themes.yaml`"