mirror of
https://github.com/home-assistant/home-assistant.io.git
synced 2025-07-23 17:27:19 +00:00
Merge branch 'current' into next
This commit is contained in:
commit
318488f28e
@ -142,13 +142,13 @@ social:
|
||||
# Home Assistant release details
|
||||
current_major_version: 0
|
||||
current_minor_version: 82
|
||||
current_patch_version: 0
|
||||
date_released: 2018-11-09
|
||||
current_patch_version: 1
|
||||
date_released: 2018-11-15
|
||||
|
||||
# Either # or the anchor link to latest release notes in the blog post.
|
||||
# Must be prefixed with a # and have double quotes around it.
|
||||
# Major release:
|
||||
patch_version_notes: "#"
|
||||
patch_version_notes: "#release-0821---november-15"
|
||||
# Minor release (Example #release-0431---april-25):
|
||||
|
||||
# Date we moved to Discourse for comments
|
||||
|
@ -25,12 +25,29 @@ featured: true
|
||||
}
|
||||
```
|
||||
|
||||
Configuration variables:
|
||||
|
||||
- **lets_encrypt.accept_terms** (*Required*): If you accept the [Let's Encrypt Subscriber Agreement](https://letsencrypt.org/repository/), it will generate and update Let's Encrypt certificates for your DuckDNS domain.
|
||||
- **token** (*Required*): Your Duck DNS API key, from your DuckDNS account page.
|
||||
- **domains** (*Required*): A list of domains to update DNS.
|
||||
- **seconds** (*Required*): Seconds between updates to Duck DNS.
|
||||
{% configuration %}
|
||||
lets_encrypt:
|
||||
description: Let's Encrypt is a free, automated, and open certificate authority.
|
||||
required: true
|
||||
type: list
|
||||
keys:
|
||||
accept_terms:
|
||||
description: If you accept the [Let's Encrypt Subscriber Agreement](https://letsencrypt.org/repository/), it will generate and update Let's Encrypt certificates for your DuckDNS domain.
|
||||
required: true
|
||||
type: boolean
|
||||
token:
|
||||
description: Your Duck DNS API key, from your DuckDNS account page.
|
||||
required: true
|
||||
type: string
|
||||
domains:
|
||||
description: A list of domains to update DNS.
|
||||
required: true
|
||||
type: list
|
||||
seconds:
|
||||
description: Seconds between updates to Duck DNS.
|
||||
required: true
|
||||
type: integer
|
||||
{% endconfiguration %}
|
||||
|
||||
## {% linkable_title Home Assistant configuration %}
|
||||
|
||||
@ -51,4 +68,4 @@ You'll need to forward the port you listed in your configuration (8123 in the ex
|
||||
|
||||
Ensure that you allocate the Home Assistant system a fixed IP on your network before you configure port forwarding. You can do this either on the computer itself (see the [install guide](/hassio/installation/) or via a static lease on your router.
|
||||
|
||||
Restart Home Assistant for the configured changes to take effect. When you access the Home Assistant frontend you will now need to use `https`, even when accessing local instances, for example at `https://192.168.0.1:8123`.
|
||||
Restart Home Assistant for the configured changes to take effect. When you access the Home Assistant frontend you will now need to use `https`, even when accessing local instances, for example at `https://192.168.0.1:8123`.
|
||||
|
@ -45,26 +45,63 @@ Follow devices will be supported and tested:
|
||||
}
|
||||
```
|
||||
|
||||
Configuration variables:
|
||||
|
||||
- **rf_enable** (*Required*): Boolean. Enable or disable BidCoS-RF.
|
||||
- **wired_enable** (*Required*): Boolean. Enable or disable BidCoS-Wired.
|
||||
|
||||
For RF devices:
|
||||
|
||||
- **type** (*Required*): Device type for RFD service. Look into the manual of your device.
|
||||
- **device** (*Required*): Device on the host.
|
||||
|
||||
For wired devices:
|
||||
|
||||
- **serial** (*Required*): Serial number of the device.
|
||||
- **key** (*Required*): Encrypted key.
|
||||
- **ip** (*Required*): IP address of LAN gateway.
|
||||
|
||||
For HmIP devices:
|
||||
|
||||
- **type** (*Required*): Device type for RFD service. Look into the manual of your device.
|
||||
- **device** (*Required*): Device on the host.
|
||||
{% configuration %}
|
||||
rf_enable:
|
||||
description: Enable or disable BidCoS-RF.
|
||||
required: true
|
||||
type: boolean
|
||||
rf:
|
||||
description: RF devices.
|
||||
required: true
|
||||
type: list
|
||||
keys:
|
||||
type:
|
||||
description: Device type for RFD service. Look into the manual of your device.
|
||||
required: true
|
||||
type: string
|
||||
device:
|
||||
description: Device on the host.
|
||||
required: true
|
||||
type: string
|
||||
wired_enable:
|
||||
description: Enable or disable BidCoS-Wired.
|
||||
required: true
|
||||
type: boolean
|
||||
wired:
|
||||
description: Wired devices.
|
||||
required: true
|
||||
type: list
|
||||
keys:
|
||||
serial:
|
||||
description: Serial number of the device.
|
||||
required: true
|
||||
type: string
|
||||
key:
|
||||
description: Encrypted key.
|
||||
required: true
|
||||
type: string
|
||||
ip:
|
||||
description: IP address of LAN gateway.
|
||||
required: true
|
||||
type: string
|
||||
hmip_enable:
|
||||
description: Enable or disable hmip.
|
||||
required: true
|
||||
type: boolean
|
||||
hmip:
|
||||
description: HMIP devices.
|
||||
required: true
|
||||
type: list
|
||||
keys:
|
||||
type:
|
||||
description: Device type for RFD service. Look into the manual of your device.
|
||||
required: true
|
||||
type: string
|
||||
device:
|
||||
description: Device on the host.
|
||||
required: true
|
||||
type: string
|
||||
{% endconfiguration %}
|
||||
|
||||
## {% linkable_title Home Assistant configuration %}
|
||||
|
||||
|
@ -19,7 +19,9 @@ Setup and manage a [Let's Encrypt](https://letsencrypt.org/) certificate. This a
|
||||
```json
|
||||
{
|
||||
"email": "example@example.com",
|
||||
"domains": ["example.com", "mqtt.example.com", "hass.example.com"]
|
||||
"domains": ["example.com", "mqtt.example.com", "hass.example.com"],
|
||||
"certfile": "fullchain.pem",
|
||||
"keyfile": "privkey.pem"
|
||||
}
|
||||
```
|
||||
|
||||
@ -32,6 +34,16 @@ domains:
|
||||
description: A list of domains to create/renew the certificate.
|
||||
required: true
|
||||
type: list
|
||||
certfile:
|
||||
description: Name of the certfile that is created. Leave as default value.
|
||||
required: true
|
||||
type: string
|
||||
default: fullchain.pem
|
||||
keyfile:
|
||||
description: Name of the keyfile that is created. Leave as default value.
|
||||
required: true
|
||||
type: string
|
||||
default: privkey.pem
|
||||
{% endconfiguration %}
|
||||
|
||||
## {% linkable_title Home Assistant configuration %}
|
||||
|
@ -32,18 +32,50 @@ Set up a [MariaDB](https://mariadb.org/) SQL server. It supports multiple databa
|
||||
}
|
||||
```
|
||||
|
||||
Configuration variables:
|
||||
|
||||
- **databases** (*Required*): List of databases.
|
||||
- **logins** (*Required*): List of SQL accounts to create or update.
|
||||
- **username** (*Required*): Username for account.
|
||||
- **host** (*Required*): Host for account. If you need an account on multiple hosts, use '%'.
|
||||
- **password** (*Required*): Password for account.
|
||||
- **rights** (*Required*): List of rights to be granted.
|
||||
- **username** (*Required*): Username for granted rights.
|
||||
- **host** (*Required*): Host is a part of username like above.
|
||||
- **database** (*Required*): Database name on which to grant user rights.
|
||||
- **grant** (*Required*): SQL grant part for access too.
|
||||
{% configuration %}
|
||||
databases:
|
||||
description: List of databases.
|
||||
required: true
|
||||
type: list
|
||||
logins:
|
||||
description: List of SQL accounts to create or update.
|
||||
required: true
|
||||
type: list
|
||||
keys:
|
||||
username:
|
||||
description: Username for account.
|
||||
required: true
|
||||
type: string
|
||||
host:
|
||||
description: Host for account. If you need an account on multiple hosts, use '%'.
|
||||
required: true
|
||||
type: string
|
||||
password:
|
||||
description: Password for account.
|
||||
required: true
|
||||
type: string
|
||||
rights:
|
||||
description: List of rights to be granted.
|
||||
required: true
|
||||
type: list
|
||||
keys:
|
||||
username:
|
||||
description: Username for granted rights.
|
||||
required: true
|
||||
type: string
|
||||
host:
|
||||
description: Host is a part of username like above.
|
||||
required: true
|
||||
type: string
|
||||
database:
|
||||
description: Database name on which to grant user rights.
|
||||
required: true
|
||||
type: string
|
||||
grant:
|
||||
description: SQL grant part for access too.
|
||||
required: true
|
||||
type: string
|
||||
{% endconfiguration %}
|
||||
|
||||
## {% linkable_title Home Assistant configuration %}
|
||||
|
||||
|
@ -17,20 +17,8 @@ After installation you are presented with a default and example configuration, t
|
||||
|
||||
After any changes have been made to the configuration, you need to restart the add-on for the changes to take effect.
|
||||
|
||||
Configuration variables:
|
||||
|
||||
- **id** (*Required*): A number and must be unique for each device.
|
||||
- **name** (*Required*): A name for easy identification of the device.
|
||||
- **protocol** (*Required*): This is the protocol the device uses. More on the different protocols later down.
|
||||
- **model** (*Optional*): The model parameter is only used by some protocols where there exists different types of devices using the same protocol. This can be dimmers versus non-dimmers, codeswitch versus self-learning, etc.
|
||||
- **house** (*Optional*): Depending on protocol the values here can vary a lot to identify or group per house or type.
|
||||
- **unit** (*Optional*): Unit identifier, in most cases a value between 1 to 16 and often used in combination with the house.
|
||||
- **fade** (*Optional*): Fade is either `true` or `false` and tells a dimmer if it should fade smooth or instant between values (only for IKEA protocol as it seems).
|
||||
- **code** (*Optional*): A number series based on ones and zeroes often used for dip-switch based devices.
|
||||
|
||||
You will need to add internal communication details to `configuration.yaml` to enable the integration from Hass.io and the add-on.
|
||||
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
tellstick:
|
||||
@ -69,11 +57,47 @@ Example for adding more devices in the add-on configuration (note the comma sepa
|
||||
}
|
||||
```
|
||||
|
||||
{% configuration %}
|
||||
id:
|
||||
description: A number and must be unique for each device.
|
||||
required: true
|
||||
type: integer
|
||||
name:
|
||||
description: A name for easy identification of the device.
|
||||
required: true
|
||||
type: string
|
||||
protocol:
|
||||
description: This is the protocol the device uses. More on the different protocols later down.
|
||||
required: true
|
||||
type: string
|
||||
model:
|
||||
description: The model parameter is only used by some protocols where there exists different types of devices using the same protocol. This can be dimmers versus non-dimmers, codeswitch versus self-learning, etc.
|
||||
required: false
|
||||
type: string
|
||||
house:
|
||||
description: Depending on protocol the values here can vary a lot to identify or group per house or type.
|
||||
required: false
|
||||
type: string
|
||||
unit:
|
||||
description: Unit identifier, in most cases a value between 1 to 16 and often used in combination with the house.
|
||||
required: false
|
||||
type: integer
|
||||
fade:
|
||||
description: Fade is either `true` or `false` and tells a dimmer if it should fade smooth or instant between values (only for IKEA protocol as it seems).
|
||||
required: false
|
||||
type: boolean
|
||||
code:
|
||||
description: A number series based on ones and zeroes often used for dip-switch based devices.
|
||||
required: false
|
||||
type: string
|
||||
{% endconfiguration %}
|
||||
|
||||
## {% linkable_title Service calls %}
|
||||
|
||||
If you wish to teach a self-learning device in your TellStick configuration:
|
||||
|
||||
Go to Home Assistant [service call](http://hassio.local:8123/dev-service) in Developer tools and select.
|
||||
|
||||
- Service: `hassio.addon_stdin`
|
||||
- Enter service Data:
|
||||
`{"addon":"core_tellstick","input":{"function":"learn","device":"1"}}`
|
||||
|
@ -17,7 +17,7 @@ The `ffmpeg` platform allows you to use any video feed as a camera in Home Assis
|
||||
|
||||
## {% linkable_title Configuration %}
|
||||
|
||||
To enable your FFmpeg feed in your installation, add the following to your `configuration.yaml` file:
|
||||
To enable your FFmpeg feed in your installation you must first configure the [ffmpeg component](https://www.home-assistant.io/components/ffmpeg/), then add the following to your `configuration.yaml` file:
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
|
@ -13,7 +13,7 @@ ha_release: pre 0.7
|
||||
ha_iot_class: "Local Polling"
|
||||
---
|
||||
|
||||
The `generic_thermostat` climate platform is a thermostat implemented in Home Assistant. It uses a sensor and a switch connected to a heater or air conditioning under the hood. When in heater mode, if the measured temperature is cooler then the target temperature, the heater will be turned on and turned off when the required temperature is reached. When in air conditioning mode, if the measured temperature is hotter then the target temperature, the air conditioning will be turned on and turned off when required temperature is reached. One Generic Thermostat entity can only control one switch. If you need to activate two switches, one for a heater and one for an air conditioner, you will need two Generic Thermostat entities.
|
||||
The `generic_thermostat` climate platform is a thermostat implemented in Home Assistant. It uses a sensor and a switch connected to a heater or air conditioning under the hood. When in heater mode, if the measured temperature is cooler than the target temperature, the heater will be turned on and turned off when the required temperature is reached. When in air conditioning mode, if the measured temperature is hotter than the target temperature, the air conditioning will be turned on and turned off when required temperature is reached. One Generic Thermostat entity can only control one switch. If you need to activate two switches, one for a heater and one for an air conditioner, you will need two Generic Thermostat entities.
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
|
@ -25,11 +25,13 @@ To enable `discovery` in your installation, add the following to your `configura
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
discoverable:
|
||||
expose_password: yes
|
||||
expose_password: true
|
||||
```
|
||||
|
||||
|
||||
Configuration variables:
|
||||
|
||||
- **expose_password** (*Optional*): It is up to the user to expose the password in the discovery response (Default: off). If password not exposed, uHA instances will have to provide it (`get_instance('my password')`).
|
||||
|
||||
{% configuration %}
|
||||
expose_password:
|
||||
description: It is up to the user to expose the password in the discovery response. If password not exposed, uHA instances will have to provide it (`get_instance('my password')`).
|
||||
required: false
|
||||
default: false
|
||||
type: boolean
|
||||
{% endconfiguration %}
|
||||
|
@ -13,14 +13,11 @@ ha_release: 0.80
|
||||
ha_iot_class: "Cloud Polling"
|
||||
---
|
||||
|
||||
The `evohome` platform is the main component to set up and integrate all supported evohome devices.
|
||||
The `evohome` platform is the main component to set up and integrate all supported evohome Climate devices.
|
||||
|
||||
It uses the [evohomeclient](https://pypi.org/project/evohomeclient/) client library and so will let you control (only) _EU-based_ [Honeywell Connect Comfort](https://international.mytotalconnectcomfort.com/Account/Login) systems.
|
||||
|
||||
Currently, only Controllers are supported; support for Heating zones and DHW controllers will be added at a later time.
|
||||
|
||||
It is related to the [honeywell](/components/climate.honeywell/) climate component, which allows limited integration with evohome Heating zones. These two components should be usuable side-by-side, but YMMV.
|
||||
|
||||
Currently, only Controllers and Zones are supported; support for DHW controllers will be added at a later time. More information is available [evohome climate component](/components/climate.honeywell/) page.
|
||||
|
||||
## {% linkable_title Configuration %}
|
||||
|
||||
@ -31,9 +28,9 @@ To use this component in your installation, add the following to your `configura
|
||||
evohome:
|
||||
username: YOUR_USERNAME
|
||||
password: YOUR_PASSWORD
|
||||
location_idx: 0
|
||||
```
|
||||
This is a IoT cloud-polling device, and the `scan_interval` is currently fixed at 3 minutes. Testing has indicated that this is a safe interval that - by itself - shouldn't cause you to be rate-limited by Honeywell.
|
||||
|
||||
This is an IoT cloud-polling device, and the `scan_interval` is currently fixed at 5 minutes. Testing has indicated that this is a safe interval that - by itself - shouldn't cause you to be rate-limited by Honeywell.
|
||||
|
||||
{% configuration %}
|
||||
username:
|
||||
|
@ -14,7 +14,7 @@ ha_category: Image Processing
|
||||
The `ffmpeg` component allows other Home Assistant components to process video and audio streams. This component supports all FFmpeg versions since 3.0.0; if you have an older version, please update.
|
||||
|
||||
<p class='note'>
|
||||
You need the `ffmpeg` binary in your system path. On Debian 8 or Raspbian (Jessie) you can install it from [debian-backports](https://backports.debian.org/Instructions/). If you want [hardware acceleration](https://trac.ffmpeg.org/wiki/HWAccelIntro) support on a Raspberry Pi, you will need to build from source by yourself. Windows binaries are available on the [FFmpeg](http://www.ffmpeg.org/) website.
|
||||
You need the `ffmpeg` binary in your system path. On Hassbian you will need to login as the `pi` user and `sudo apt install ffmpeg`. On Debian 8 or Raspbian (Jessie) you can install it from [debian-backports](https://backports.debian.org/Instructions/). If you want [hardware acceleration](https://trac.ffmpeg.org/wiki/HWAccelIntro) support on a Raspberry Pi, you will need to build from source by yourself. Windows binaries are available on the [FFmpeg](http://www.ffmpeg.org/) website.
|
||||
</p>
|
||||
|
||||
<p class='note'>
|
||||
|
@ -105,9 +105,9 @@ google_assistant:
|
||||
project_id: YOUR_PROJECT_ID
|
||||
api_key: YOUR_API_KEY
|
||||
exposed_domains:
|
||||
- SWITCH
|
||||
- LIGHT
|
||||
- GROUP
|
||||
- switch
|
||||
- light
|
||||
- group
|
||||
entity_config:
|
||||
switch.kitchen:
|
||||
name: CUSTOM_NAME_FOR_GOOGLE_ASSISTANT
|
||||
|
@ -1,7 +1,7 @@
|
||||
---
|
||||
layout: page
|
||||
title: "HomeKit"
|
||||
description: "Instructions on how to setup the HomeKit component in Home Assistant."
|
||||
description: "Instructions on how to set up the HomeKit component in Home Assistant."
|
||||
date: 2018-02-20 17:30
|
||||
sidebar: true
|
||||
comments: false
|
||||
@ -12,7 +12,7 @@ ha_release: 0.64
|
||||
logo: apple-homekit.png
|
||||
---
|
||||
|
||||
The `HomeKit` component allows you to forward entities from Home Assistant to Apple `HomeKit`, so they can be controlled from Apple's `Home` app and `Siri`. Please make sure that you have read the [considerations](#considerations) listed below to save you some trouble later. However if you do encounter issues, checkout the [troubleshooting](#troubleshooting) section.
|
||||
The `HomeKit` component allows you to forward entities from Home Assistant to Apple `HomeKit`, so they can be controlled from Apple's `Home` app and `Siri`. Please make sure that you have read the [considerations](#considerations) listed below to save you some trouble later. However if you do encounter issues, check out the [troubleshooting](#troubleshooting) section.
|
||||
|
||||
<p class="note">
|
||||
If you want to control `HomeKit` only devices with Home Assistant, check out the [HomeKit controller](/components/homekit_controller/) component.
|
||||
@ -79,7 +79,7 @@ homekit:
|
||||
type: boolean
|
||||
default: false
|
||||
filter:
|
||||
description: Filters for entities to be included / excluded from HomeKit. ([Configure Filter](#configure-filter))
|
||||
description: Filters for entities to be included/excluded from HomeKit. ([Configure Filter](#configure-filter))
|
||||
required: false
|
||||
type: map
|
||||
keys:
|
||||
@ -110,7 +110,7 @@ homekit:
|
||||
type: map
|
||||
keys:
|
||||
name:
|
||||
description: Name of entity to show in HomeKit. HomeKit will cache the name on the first run so a device must be removed and then re-added for any change to take effect.
|
||||
description: Name of the entity to show in HomeKit. HomeKit will cache the name on the first run so a device must be removed and then re-added for any change to take effect.
|
||||
required: false
|
||||
type: string
|
||||
code:
|
||||
@ -147,20 +147,25 @@ homekit:
|
||||
After Home Assistant has started, the entities specified by the filter are exposed to `HomeKit` if they are [supported](#supported-components). To add them:
|
||||
1. Open the Home Assistant frontend. A new card will display the `pin code`.
|
||||
1. Open the `Home` app.
|
||||
2. Click `Add Accessory`, than select `Don't Have a Code or Can't Scan?` and choose the `Home Assistant Bridge`.
|
||||
2. Click `Add Accessory`, then select `Don't Have a Code or Can't Scan?` and choose the `Home Assistant Bridge`.
|
||||
4. Confirm that you are adding an `Uncertified Accessory` by clicking on `Add Anyway`.
|
||||
5. Enter the `PIN` code.
|
||||
6. Follow the setup be clicking on `Next` and lastly `Done` in the top right hand corner.
|
||||
6. Follow the setup by clicking on `Next` and lastly `Done` in the top right-hand corner.
|
||||
7. The `Home Assistant` Bridge and the Accessories should now be listed in the `Home` app.
|
||||
|
||||
After the setup is completed you should be able to control your Home Assistant components through `Home` and `Siri`.
|
||||
After the setup is completed, you should be able to control your Home Assistant components through `Home` and `Siri`.
|
||||
|
||||
## {% linkable_title Move Home Assistant install %}
|
||||
|
||||
If you like to retain your HomeKit pairing through a move to a new Home Assistant device or installation, besides copying the configurations files you need to copy the `.homekit.state` file inside your configurations directory. Keep in mind though that the file is usually hidden by default, depending on your operating system.
|
||||
|
||||
Before you copy it, make sure to stop the old and new Home Assistant instances first entirely, otherwise it won't work.
|
||||
|
||||
## {% linkable_title Considerations %}
|
||||
|
||||
### {% linkable_title Accessory ID %}
|
||||
|
||||
Currently this component uses the `entity_id` to generate a unique `accessory id (aid)` for `HomeKit`. The `aid` is used to identify a device and save all configurations made for it. This however means that if you decide to change an `entity_id` all configurations for this accessory made in the `Home` app will be lost.
|
||||
Currently, this component uses the `entity_id` to generate a unique `accessory id (aid)` for `HomeKit`. The `aid` is used to identify a device and save all configurations made for it. This, however, means that if you decide to change an `entity_id` all configurations for this accessory made in the `Home` app will be lost.
|
||||
|
||||
### {% linkable_title Device Limit %}
|
||||
|
||||
@ -168,19 +173,18 @@ The HomeKit guidelines only allow a maximum of 100 unique accessories (`aid`) pe
|
||||
|
||||
### {% linkable_title Persistence Storage %}
|
||||
|
||||
Unfortunately `HomeKit` doesn't support any kind of persistent storage - only the configuration for accessories that are added to the `Home Assistant Bridge` are kept. To avoid problems it is recommended to use an automation to always start `HomeKit` with at least the same entities setup. If for some reason some entities are not setup, their config will be deleted. (State unknown or similar will not cause any issues.)
|
||||
Unfortunately `HomeKit` doesn't support any persistent storage - only the configuration for accessories that are added to the `Home Assistant Bridge` are kept. To avoid problems, it is recommended to use an automation to always start `HomeKit` with at least the same entities setup. If for some reason some entities are not set up, their config will be deleted. (State unknown or similar will not cause any issues.)
|
||||
|
||||
A common situation might be if you decide to disable parts of the configuration for testing. Please make sure to disable `auto start` and `turn off` the `Start HomeKit` automation (if you have one).
|
||||
|
||||
|
||||
## {% linkable_title Disable Auto Start %}
|
||||
|
||||
Depending on your individual setup, it might be necessary to disable `Auto Start` for all accessories to be available for `HomeKit`. Only those entities that are fully setup when the `HomeKit` component is started, can be added. To start `HomeKit` when `auto_start: False`, you can call the service `homekit.start`.
|
||||
Depending on your setup, it might be necessary to disable `Auto Start` for all accessories to be available for `HomeKit`. Only those entities that are fully set up when the `HomeKit` component is started, can be added. To start `HomeKit` when `auto_start: False`, you can call the service `homekit.start`.
|
||||
|
||||
If you have Z-Wave entities you want exposed to HomeKit then you'll need to disable auto start and then start it after the Z-Wave mesh is ready. This is because the Z-Wave entities won't be fully set up until then. This can be automated using an automation.
|
||||
If you have Z-Wave entities you want to be exposed to HomeKit, then you'll need to disable auto start and then start it after the Z-Wave mesh is ready. This is because the Z-Wave entities won't be fully set up until then. This can be automated using an automation.
|
||||
|
||||
<p class='note'
|
||||
Please remember that [as explained here][devices] you can only have a single `automation:` entry. Add the automation to your existing automations, or use `automation homekit:`
|
||||
<p class='note'>
|
||||
Please remember that you can only have a single `automation` entry. Add the automation to your existing automations.
|
||||
</p>
|
||||
|
||||
{% raw %}
|
||||
@ -207,7 +211,7 @@ For a general delay where your component doesn't generate an event, you can also
|
||||
|
||||
{% raw %}
|
||||
```yaml
|
||||
# Example using a delay after start of Home Assistant
|
||||
# Example using a delay after the start of Home Assistant
|
||||
homekit:
|
||||
auto_start: False
|
||||
|
||||
@ -222,10 +226,9 @@ automation:
|
||||
```
|
||||
{% endraw %}
|
||||
|
||||
|
||||
## {% linkable_title Configure Filter %}
|
||||
|
||||
By default no entity will be excluded. To limit which entities are being exposed to `HomeKit`, you can use the `filter` parameter. Keep in mind only [supported components](#supported-components) can be added.
|
||||
By default, no entity will be excluded. To limit which entities are being exposed to `HomeKit`, you can use the `filter` parameter. Keep in mind only [supported components](#supported-components) can be added.
|
||||
|
||||
{% raw %}
|
||||
```yaml
|
||||
@ -257,12 +260,12 @@ Filters are applied as follows:
|
||||
- if entity is included, pass (as #2 above)
|
||||
- if entity include and exclude, the entity exclude is ignored
|
||||
|
||||
|
||||
## {% linkable_title Safe Mode %}
|
||||
|
||||
The `safe_mode` option should only be used (and only works) if you encounter issues during the pairing. ([Paring hangs - zeroconf error](#pairing-hangs---zeroconf-error))
|
||||
The `safe_mode` option should only be used (and only works) if you encounter issues during the pairing. ([Paring hangs - zeroconf error](#pairing-hangs---zeroconf-error)).
|
||||
|
||||
To use `safe_mode`, add the option to your `homekit` config:
|
||||
|
||||
```yaml
|
||||
homekit:
|
||||
safe_mode: True
|
||||
@ -274,8 +277,6 @@ Restart your Home Assistant instance. If you don't see a `pincode`, follow the [
|
||||
To avoid any errors, after you have successfully paired your Home Assistant Bridge, remove the `safe_mode` option from your config and restart Home Assistant.
|
||||
</p>
|
||||
|
||||
|
||||
|
||||
## {% linkable_title Supported Components %}
|
||||
|
||||
The following components are currently supported:
|
||||
@ -304,7 +305,6 @@ The following components are currently supported:
|
||||
| switch | Switch | Represented as a switch by default but can be changed by using `type` within `entity_config`. |
|
||||
| water_heater | WaterHeater | All water_heater devices. |
|
||||
|
||||
|
||||
## {% linkable_title Troubleshooting %}
|
||||
|
||||
### {% linkable_title Deleting the `.homekit.state` file %}
|
||||
@ -336,48 +336,72 @@ homekit:
|
||||
```
|
||||
|
||||
#### {% linkable_title PIN doesn't appear as persistent status %}
|
||||
|
||||
You might have paired the `Home Assistant Bridge` already. If not, delete the `.homekit.state` file ([guide](#deleting-the-homekitstate-file)).
|
||||
|
||||
#### {% linkable_title `Home Assistant Bridge` doesn't appear in the Home App (for pairing) %}
|
||||
For `Docker` users: make sure to set `network_mode: host`. Other reasons could be network related. Make sure to check your router configuration. For some it helped when the Home Assistant device was using WIFI, not LAN. Remember that the iOS device needs to be in the same local network as the Home Assistant device for paring.
|
||||
|
||||
This is often setup and network related. Make sure to check the other issues below as well, but things that might work include:
|
||||
- Check your router configuration
|
||||
- Try with WIFI **and** LAN
|
||||
- Change the default [port](#port)
|
||||
|
||||
Remember that the iOS device needs to be in the same local network as the Home Assistant device for paring.
|
||||
|
||||
#### {% linkable_title `Home Assistant Bridge` doesn't appear in the Home App (for pairing) - Docker %}
|
||||
|
||||
Set `network_mode: host`. If you have further problems this [issue](https://github.com/home-assistant/home-assistant/issues/15692) might help.
|
||||
|
||||
#### {% linkable_title `Home Assistant Bridge` doesn't appear in the Home App (for pairing) - VirtualBox %}
|
||||
|
||||
Configure the network mode as `networkbridge`. Otherwise the Home Assistant Bridge won't be exposed to the network.
|
||||
|
||||
#### {% linkable_title Pairing hangs - zeroconf error %}
|
||||
Pairing eventually fails, you might see and an error message `NonUniqueNameException`. Add the `safe_mode` option to your config. See [safe_mode](#safe-mode)
|
||||
|
||||
Pairing eventually fails, you might see and an error message `NonUniqueNameException`. Add the `safe_mode` option to your config, see [safe_mode](#safe-mode).
|
||||
|
||||
#### {% linkable_title Pairing hangs - only works with debug config %}
|
||||
|
||||
Pairing works fine when the filter is set to only include `demo.demo`, but fails with normal config. See [specific entity doesn't work](#specific-entity-doesnt-work)
|
||||
|
||||
#### {% linkable_title Duplicate AID found when attempting to add accessory %}
|
||||
Two of your entities share the same `entity_id`. Either resolve this or configure the [filter](#configure-filter) to exclude them.
|
||||
#### {% linkable_title Pairing hangs - no error %}
|
||||
|
||||
Make sure that you don't try to add more than 100 accessories, see [device limit](#device-limit). In rare cases, one of your entities doesn't work with the HomeKit component. Use the [filter](#configure-filter) to find out which one. Feel free to open a new issue in the `home-assistant` repo, so we can resolve it.
|
||||
|
||||
#### {% linkable_title Duplicate AID found when attempting to add accessory %}
|
||||
|
||||
Two of your entities share the same `entity_id`. Either resolve this or configure the [filter](#configure-filter) to exclude them.
|
||||
|
||||
### {% linkable_title Issues during normal use %}
|
||||
|
||||
#### {% linkable_title Pairing hangs - no error %}
|
||||
Make sure that you don't try to add more then 100 accessories, see [device limit](#device-limit). In rare cases one of your entities doesn't work with the HomeKit component. Use the [filter](#configure-filter) to find out which one. Feel free to open a new issue in the `home-assistant` repo, so we can resolve it.
|
||||
|
||||
#### {% linkable_title Some of my devices don't show up - Z-Wave / Discovery %}
|
||||
|
||||
See [disable auto start](#disable-auto-start)
|
||||
|
||||
#### {% linkable_title My entity doesn't show up %}
|
||||
|
||||
Check if the domain of your entity is [supported](#supported-components). If it is, check your [filter](#configure-filter) settings. Make sure the spelling is correct, especially if you use `include_entities`.
|
||||
|
||||
#### {% linkable_title HomeKit doesn't work on second Home Assistant instance %}
|
||||
|
||||
To use the HomeKit component with to different Home Assistant instances on the same local network, you need to set a custom name for at least one of them. [config/name](#name)
|
||||
|
||||
#### {% linkable_title Specific entity doesn't work %}
|
||||
|
||||
Although we try our best, some entities don't work with the HomeKit component yet. The result will be that either pairing fails completely or all Home Assistant accessories will stop working. Use the filter to identify which entity is causing the issue. It's best to try pairing and step by step including more entities. If it works unpair and repeat until you find the one that is causing the issues. To help others and the developers, please open a new issue here: [home-assistant/issues/new](https://github.com/home-assistant/home-assistant/issues/new?labels=component: homekit)
|
||||
|
||||
#### {% linkable_title Accessories are all listed as not responding %}
|
||||
|
||||
See [specific entity doesn't work](#specific-entity-doesnt-work)
|
||||
|
||||
#### {% linkable_title Accessory not responding - after restart or update %}
|
||||
|
||||
See [device limit](#device-limit)
|
||||
|
||||
#### {% linkable_title Accessory not responding - randomly %}
|
||||
Unfortunately that sometimes happens at the moment. It might help to close the `Home` App and delete it from the cache. Usually the accessory should get back to responding after a few minutes at most.
|
||||
|
||||
Unfortunately, that sometimes happens at the moment. It might help to close the `Home` App and delete it from the cache. Usually, the accessory should get back to responding after a few minutes at most.
|
||||
|
||||
#### {% linkable_title Accessories not responding / behaving unusual - Upgrade from `0.65.x` %}
|
||||
To fix this, you need to unpair the `Home Assistant Bridge`, delete the `.homekit.state` file ([guide](#deleting-the-homekitstate-file)) and pair it again. This should only be an issue if you're upgrading from `0.65.x` or below.
|
||||
|
||||
[devices]: https://www.home-assistant.io/docs/configuration/devices/
|
||||
To fix this, you need to unpair the `Home Assistant Bridge`, delete the `.homekit.state` file ([guide](#deleting-the-homekitstate-file)) and pair it again. This should only be an issue if you're upgrading from `0.65.x` or below.
|
||||
|
@ -44,21 +44,65 @@ image_processing:
|
||||
- entity_id: camera.seven_segments
|
||||
```
|
||||
|
||||
Configuration variables:
|
||||
|
||||
- **ssocr_bin** (*Optional*): The command line tool `ssocr`. Set it if you use a different name for the executable. Defaults to `ssocr`.
|
||||
- **x_position** (*Optional*): X coordinate of the upper left corner of the area to crop. Defaults to `0`.
|
||||
- **y_position** (*Optional*): Y coordinate of the upper left corner of the area to crop. Defaults to `0`.
|
||||
- **height** (*Optional*): Height of the area to crop. Defaults to `0`.
|
||||
- **width** (*Optional*): Width of the area to crop. Defaults to `0`.
|
||||
- **rotate** (*Optional*): Rotation of the image. Defaults to `0`.
|
||||
- **threshold** (*Optional*): Threshold for the difference between the digits and the background. Defaults to `0`.
|
||||
- **digits** (*Optional*): Number of digits in the display. Defaults to `-1`.
|
||||
- **extra_arguments** (*Optional*): Other arguments to use. Like `-D`, `dilation`, `erosion`, `greyscale`, `make_mono`, etc.
|
||||
- **source** array (*Required*): List of image sources.
|
||||
- **entity_id** (*Required*): A camera entity id to get picture from.
|
||||
- **name** (*Optional*): This parameter allows you to override the name of your `image_processing` entity.
|
||||
|
||||
{% configuration %}
|
||||
ssocr_bin:
|
||||
description: The command line tool `ssocr`. Set it if you use a different name for the executable.
|
||||
required: false
|
||||
default: ssocr
|
||||
type: string
|
||||
x_position:
|
||||
description: X coordinate of the upper left corner of the area to crop.
|
||||
required: false
|
||||
default: 0
|
||||
type: integer
|
||||
y_position:
|
||||
description: Y coordinate of the upper left corner of the area to crop.
|
||||
required: false
|
||||
default: 0
|
||||
type: integer
|
||||
height:
|
||||
description: Height of the area to crop.
|
||||
required: false
|
||||
default: 0
|
||||
type: integer
|
||||
width:
|
||||
description: Width of the area to crop.
|
||||
required: false
|
||||
default: 0
|
||||
type: integer
|
||||
rotate:
|
||||
description: Rotation of the image.
|
||||
required: false
|
||||
default: 0
|
||||
type: integer
|
||||
threshold:
|
||||
description: Threshold for the difference between the digits and the background.
|
||||
required: false
|
||||
default: 0
|
||||
type: integer
|
||||
digits:
|
||||
description: Number of digits in the display.
|
||||
required: false
|
||||
default: -1
|
||||
type: integer
|
||||
extra_arguments:
|
||||
description: Other arguments to use. Like `-D`, `dilation`, `erosion`, `greyscale`, `make_mono`, etc.
|
||||
required: false
|
||||
type: string
|
||||
source:
|
||||
description: List of image sources.
|
||||
required: true
|
||||
type: list
|
||||
keys:
|
||||
entity_id:
|
||||
description: A camera entity id to get picture from.
|
||||
required: true
|
||||
type: string
|
||||
name:
|
||||
description: This parameter allows you to override the name of your `image_processing` entity.
|
||||
required: false
|
||||
type: string
|
||||
{% endconfiguration %}
|
||||
|
||||
### {% linkable_title Setup process %}
|
||||
|
||||
@ -94,6 +138,7 @@ image_processing:
|
||||
With the help of a [template sensor](/components/sensor.template/), the value can be shown as badge.
|
||||
|
||||
{% raw %}
|
||||
|
||||
```yaml
|
||||
sensor:
|
||||
- platform: template
|
||||
@ -103,4 +148,5 @@ sensor:
|
||||
friendly_name: 'Ampere'
|
||||
unit_of_measurement: 'A'
|
||||
```
|
||||
|
||||
{% endraw %}
|
||||
|
@ -16,13 +16,13 @@ ha_release: 0.82
|
||||
The `tensorflow` image processing platform allows you to detect and recognize objects in a camera image using [TensorFlow](https://www.tensorflow.org/). The state of the entity is the number of objects detected, and recognized objects are listed in the `summary` attribute along with quantity. The `matches` attribute provides the confidence `score` for recognition and the bounding `box` of the object for each detection category.
|
||||
|
||||
<p class='note warning'>
|
||||
The following packages must be installed on Hassbian after following the setup for the component to work:
|
||||
The following packages must be installed on Hassbian/Raspbian before following the setup for the component to work:
|
||||
`$ sudo apt-get install libatlas-base-dev libopenjp2-7 libtiff5`
|
||||
</p>
|
||||
|
||||
## {% linkable_title Setup %}
|
||||
|
||||
You need to install the `tensorflow` Python packages with: `$ pip3 install tensorflow==1.11.0`. The wheel is not available for all platforms. See [the official install guide](https://www.tensorflow.org/install/) for other options. Hass.io has this package pre-installed.
|
||||
You need to install the `tensorflow` Python packages with: `$ pip3 install tensorflow==1.11.0`. The wheel is not available for all platforms. See [the official install guide](https://www.tensorflow.org/install/) for other options. Hass.io is not yet supported but an addon is under development.
|
||||
|
||||
This component requires files to be downloaded, compiled on your computer, and added to the Home Assistant configuration directory. These steps can be performed using the sample script at [this gist](https://gist.github.com/hunterjm/6f9332f92b60c3d5e448ad936d7353c3). Alternatively, if you wish to perform the process manually, the process is as follows:
|
||||
|
||||
|
@ -12,7 +12,7 @@ ha_category: History
|
||||
ha_release: 0.9
|
||||
---
|
||||
|
||||
The `influxdb` component makes it possible to transfer all state changes to an external [InfluxDB](https://influxdb.com/) database. See the [official installation documentation](https://docs.influxdata.com/influxdb/v1.6/introduction/installation/) for how to set up an InfluxDB database, or if you're using Hass.io, [there is a community add-on](https://community.home-assistant.io/t/community-hass-io-add-on-influxdb/54491) available.
|
||||
The `influxdb` component makes it possible to transfer all state changes to an external [InfluxDB](https://influxdb.com/) database. See the [official installation documentation](https://docs.influxdata.com/influxdb/v1.7/introduction/installation/) for how to set up an InfluxDB database, or if you're using Hass.io, [there is a community add-on](https://community.home-assistant.io/t/community-hass-io-add-on-influxdb/54491) available.
|
||||
|
||||
## {% linkable_title Configuration %}
|
||||
|
||||
|
@ -51,7 +51,6 @@ To set up an INSTEON Hub model [2242], use the following configuration:
|
||||
# Hub 2242 configuration variables
|
||||
insteon:
|
||||
host: HOST
|
||||
ip_port: IP_PORT
|
||||
hub_version: 1
|
||||
```
|
||||
|
||||
|
@ -26,3 +26,20 @@ lametric:
|
||||
client_id: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxx
|
||||
client_secret: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
|
||||
```
|
||||
|
||||
## {% linkable_title Setup Steps %}
|
||||
|
||||
LaMetric needs an OAuth2 `client_id` and `client_secret` from the LaMetric developer portal to use it with Home Assistant.
|
||||
These are the steps to take:
|
||||
|
||||
1. Log in with your LaMetric device account to [developer.lametric.com](https://developer.lametric.com).
|
||||
2. Hit the Create button and choose [Notification](https://developer.lametric.com/applications/createsource).
|
||||
3. Fill in the form. You can put almost anything in the fields, they just need to be populated:
|
||||
* App Name: Home Assistant
|
||||
* Description: Home Assistant
|
||||
* Privacy Policy: http://localhost/
|
||||
* Check all permission boxes
|
||||
* Hit Save
|
||||
4. You should be directed to your [Notification Apps list](https://developer.lametric.com/applications/sources), click on "Home Assistant", copy your client ID and client Secret and paste into the Home Assistant configuration block in the previous section.
|
||||
5. Set up some notifications in Home Assistant by following the instructions on the [Lametric Notify](/components/notify.lametric) page.
|
||||
6. Save all configuration files and restart Home Assistant.
|
||||
|
@ -67,7 +67,7 @@ logger:
|
||||
|
||||
### {% linkable_title Log Levels %}
|
||||
|
||||
Possible log severity levels are:
|
||||
Possible log severity levels, listed in order from most severe to least severe, are:
|
||||
|
||||
- critical
|
||||
- fatal
|
||||
|
@ -12,13 +12,13 @@ ha_category: Notifications
|
||||
ha_release: 0.38
|
||||
---
|
||||
|
||||
To be able to receive events from Mailgun, your Home Assistant instance needs to be accessible from the web ([Hass.io instructions](/addons/duckdns/)) and you need to have the `base_url` configured for the HTTP component ([docs](https://www.home-assistant.io/components/http/#base_url)).
|
||||
To be able to receive webhooks from Mailgun, your Home Assistant instance needs to be accessible from the web ([Hass.io instructions](/addons/duckdns/)) and you need to have the `base_url` configured for the HTTP component ([docs](https://www.home-assistant.io/components/http/#base_url)).
|
||||
|
||||
To set it up, go to the integrations page in the configuration screen and find Mailgun. Click on configure. Follow the instructions on the screen to configure Mailgun.
|
||||
|
||||
You will get a URL of the following format: `https://<home-assistant-domain>/api/webhook/9940e99a26fae4dcf6fe0a478124b6b58b578ea4c55c9a584beb1c9f5057bb91`. To generate inbound events, add a Route set to Store and Notify with that url.
|
||||
You will get a URL of the following format: `https://<home-assistant-domain>/api/webhook/9940e99a26fae4dcf6fe0a478124b6b58b578ea4c55c9a584beb1c9f5057bb91`. To receive webhooks from Mailgun, you need to provide that url as a callback URL in the Webhooks tab of the Mailgun Control Panel.
|
||||
|
||||
Events coming in from Mailgun will be available as events in Home Assistant and are fired as `mailgun_message_received`. The [data specified by Mailgun](https://www.mailgun.com/blog/a-guide-to-using-mailguns-webhooks) will be available as the event data. You can use this event to trigger automations.
|
||||
Events coming in from Mailgun will be available as events in Home Assistant and are fired as `mailgun_message_received`. The [data specified by Mailgun](https://documentation.mailgun.com/en/latest/api-events.html#event-structure) will be available as the event data. You can use this event to trigger automations.
|
||||
|
||||
You can then consume that information with the following automation:
|
||||
|
||||
|
@ -43,7 +43,7 @@ media_player:
|
||||
- platform: plex
|
||||
```
|
||||
|
||||
In case [discovery](/components/discovery/) does not work (GDM disabled or non-local plex server), you can create `~/.homeassistant/plex.conf` manually.
|
||||
In case [discovery](/components/discovery/) does not work (GDM disabled or non-local Plex server), you can create the `plex.conf` manually and placed it in your [configuration directory ](/docs/configuration/) or `/config/` if you are running Hass.io.
|
||||
|
||||
```json
|
||||
{"IP_ADDRESS:PORT": {"token": "TOKEN", "ssl": false, "verify": true}}
|
||||
|
@ -32,14 +32,34 @@ notify:
|
||||
region_name: 'us-east-1'
|
||||
```
|
||||
|
||||
Configuration variables:
|
||||
|
||||
- **aws_access_key_id** (*Required if aws_secret_access_key is provided*): Your AWS Access Key ID. If provided, you must also provide an `aws_secret_access_key` and must **not** provide a `profile_name`.
|
||||
- **aws_secret_access_key** (*Required if aws_access_key_id is provided*): Your AWS Secret Access Key. If provided, you must also provide an `aws_access_key_id` and must **not** provide a `profile_name`.
|
||||
- **profile_name** (*Optional*): A credentials profile name.
|
||||
- **region_name** (*Required*): The region identifier to connect to. The default is `us-east-1`.
|
||||
- **name** (*Optional*): Setting the optional parameter `name` allows multiple notifiers to be created. The default value is `notify`. The notifier will bind to the service `notify.NOTIFIER_NAME`.
|
||||
- **context** (*Optional*): An optional dictionary you can provide to pass custom context through to the Lambda function. The `context` dictionary (if any) is combined with the same data available at the `/api/config` HTTP API route.
|
||||
{% configuration %}
|
||||
aws_access_key_id:
|
||||
description: Your AWS Access Key ID. If provided, you must also provide an `aws_secret_access_key` and must **not** provide a `profile_name`.
|
||||
required: Required if aws_secret_access_key is provided
|
||||
type: string
|
||||
aws_secret_access_key:
|
||||
description: Your AWS Secret Access Key. If provided, you must also provide an `aws_access_key_id` and must **not** provide a `profile_name`.
|
||||
required: Required if aws_access_key_id is provided
|
||||
type: string
|
||||
profile_name:
|
||||
description: A credentials profile name.
|
||||
required: false
|
||||
type: string
|
||||
region_name:
|
||||
description: The region identifier to connect to.
|
||||
required: true
|
||||
default: "`us-east-1`"
|
||||
type: string
|
||||
name:
|
||||
description: Setting the optional parameter `name` allows multiple notifiers to be created. The notifier will bind to the service `notify.NOTIFIER_NAME`.
|
||||
required: false
|
||||
default: notify
|
||||
type: string
|
||||
context:
|
||||
description: An optional dictionary you can provide to pass custom context through to the Lambda function. The `context` dictionary (if any) is combined with the same data available at the `/api/config` HTTP API route.
|
||||
required: false
|
||||
type: string
|
||||
{% endconfiguration %}
|
||||
|
||||
### {% linkable_title Usage %}
|
||||
|
||||
|
@ -24,9 +24,16 @@ notify:
|
||||
command: "espeak -vmb/mb-us1"
|
||||
```
|
||||
|
||||
Configuration variables:
|
||||
|
||||
- **name** (*Optional*): Setting the optional parameter `name` allows multiple notifiers to be created. The default value is `notify`. The notifier will bind to the service `notify.NOTIFIER_NAME`.
|
||||
- **command** (*Required*): The action to take.
|
||||
{% configuration %}
|
||||
name:
|
||||
description: Setting the optional parameter `name` allows multiple notifiers to be created. The notifier will bind to the service `notify.NOTIFIER_NAME`.
|
||||
required: false
|
||||
default: notify
|
||||
type: string
|
||||
command:
|
||||
description: The action to take.
|
||||
required: true
|
||||
type: string
|
||||
{% endconfiguration %}
|
||||
|
||||
To use notifications, please see the [getting started with automation page](/getting-started/automation/).
|
||||
|
@ -12,7 +12,6 @@ ha_category: Notifications
|
||||
ha_release: pre 0.7
|
||||
---
|
||||
|
||||
|
||||
The `file` platform allows you to store notifications from Home Assistant as a file.
|
||||
|
||||
To enable file notifications in your installation, add the following to your `configuration.yaml` file:
|
||||
@ -25,10 +24,21 @@ notify:
|
||||
filename: FILENAME
|
||||
```
|
||||
|
||||
Configuration variables:
|
||||
|
||||
- **name** (*Optional*): Setting the optional parameter `name` allows multiple notifiers to be created. The default value is `notify`. The notifier will bind to the service `notify.NOTIFIER_NAME`.
|
||||
- **filename** (*Required*): Name of the file to use. The file will be created if it doesn't exist and saved in your [configuration](/docs/configuration/) folder.
|
||||
- **timestamp** (*Optional*): Setting `timestamp` to `True` adds a timestamp to every entry.
|
||||
{% configuration %}
|
||||
name:
|
||||
description: Setting the optional parameter `name` allows multiple notifiers to be created. The notifier will bind to the service `notify.NOTIFIER_NAME`.
|
||||
required: false
|
||||
default: notify
|
||||
type: string
|
||||
filename:
|
||||
description: Name of the file to use. The file will be created if it doesn't exist and saved in your [configuration](/docs/configuration/) folder.
|
||||
required: true
|
||||
type: string
|
||||
timestamp:
|
||||
description: Setting `timestamp` to `True` adds a timestamp to every entry.
|
||||
required: false
|
||||
default: false
|
||||
type: boolean
|
||||
{% endconfiguration %}
|
||||
|
||||
To use notifications, please see the [getting started with automation page](/getting-started/automation/).
|
||||
|
@ -12,7 +12,6 @@ ha_category: Notifications
|
||||
ha_release: pre 0.7
|
||||
---
|
||||
|
||||
|
||||
The `instapush` platform uses [Instapush](https://instapush.im) to delivery notifications from Home Assistant to your Android or iOS device.
|
||||
|
||||
The Instapush [Getting Started page](https://instapush.im/home/start/) will guide through the process of creating the required items.
|
||||
@ -30,13 +29,29 @@ notify:
|
||||
tracker: TRACKER_NAME
|
||||
```
|
||||
|
||||
Configuration variables:
|
||||
|
||||
- **name** (*Optional*): Setting the optional parameter `name` allows multiple notifiers to be created. The default value is `notify`. The notifier will bind to the service `notify.NOTIFIER_NAME`.
|
||||
- **api_key** (*Required*): Your API key for Instapush.
|
||||
- **app_secret** (*Required*): The secret for your created application.
|
||||
- **event** (*Required*): The event to push to.
|
||||
- **tracker** (*Required*): The name of tracker inside Instapush.
|
||||
{% configuration %}
|
||||
name:
|
||||
description: Setting the optional parameter `name` allows multiple notifiers to be created. The notifier will bind to the service `notify.NOTIFIER_NAME`.
|
||||
required: false
|
||||
default: notify
|
||||
type: string
|
||||
api_key:
|
||||
description: Your API key for Instapush.
|
||||
required: string
|
||||
type: string
|
||||
app_secret:
|
||||
description: The secret for your created application.
|
||||
required: string
|
||||
type: string
|
||||
event:
|
||||
description: The event to push to.
|
||||
required: string
|
||||
type: string
|
||||
tracker:
|
||||
description: The name of tracker inside Instapush.
|
||||
required: string
|
||||
type: string
|
||||
{% endconfiguration %}
|
||||
|
||||
To retrieve the needed values for existing settings, log into your account at [https://instapush.im](https://instapush.im) and go to your **Dashboard**. Then click the **APPS** tab, choose an app, and check the **Basic Info** section. The *Application ID* is the `api_key` and `app_secret` is the *Application Secret*.
|
||||
|
||||
|
@ -12,7 +12,6 @@ ha_category: Notifications
|
||||
ha_release: 0.27
|
||||
---
|
||||
|
||||
|
||||
The `llamalab_automate` platform uses Googles Cloud Messaging Services to push messages from Home Assistant to your Android device running the LlamaLab [Automate](https://llamalab.com/automate/) app. This can serve as an alternative to Tasker + AutoRemote.
|
||||
|
||||
Go to [https://llamalab.com/automate/cloud/](https://llamalab.com/automate/cloud/) and create a new API key/secret.
|
||||
@ -28,12 +27,25 @@ notify:
|
||||
to: YOUR_EMAIL_ADDRESS
|
||||
```
|
||||
|
||||
Configuration variables:
|
||||
|
||||
- **name** (*Optional*): Setting the optional parameter `name` allows multiple notifiers to be created. The default value is `notify`. The notifier will bind to the service `notify.NOTIFIER_NAME`.
|
||||
- **api_key** (*Required*): Enter the API key for Automate.
|
||||
- **to** (*Required*): E-Mail address the Automate-Fiber is configured for.
|
||||
- **device** (*Optional*): Name of the target device to receive the messages.
|
||||
{% configuration %}
|
||||
name:
|
||||
description: Setting the optional parameter `name` allows multiple notifiers to be created. The notifier will bind to the service `notify.NOTIFIER_NAME`.
|
||||
required: false
|
||||
default: notify
|
||||
type: string
|
||||
api_key:
|
||||
description: Enter the API key for Automate.
|
||||
required: true
|
||||
type: string
|
||||
to:
|
||||
description: E-Mail address the Automate-Fiber is configured for.
|
||||
required: true
|
||||
type: string
|
||||
device:
|
||||
description: Name of the target device to receive the messages.
|
||||
required: false
|
||||
type: string
|
||||
{% endconfiguration %}
|
||||
|
||||
Receiving cloud messages in Automate:
|
||||
|
||||
|
@ -12,7 +12,6 @@ ha_category: Notifications
|
||||
ha_release: 0.32
|
||||
---
|
||||
|
||||
|
||||
The `matrix` platform allows you to deliver notifications from Home Assistant to a [Matrix](http://matrix.org) room. Rooms can be both direct as well as group chats.
|
||||
|
||||
## {% linkable_title Configuration %}
|
||||
@ -28,10 +27,17 @@ notify:
|
||||
default_room: ROOM_ID_OR_ALIAS
|
||||
```
|
||||
|
||||
Configuration variables:
|
||||
|
||||
- **name** (*Optional*): Setting the optional parameter `name` allows multiple notifiers to be created. The default value is `notify`. The notifier will bind to the service `notify.NOTIFIER_NAME`.
|
||||
- **default_room** (*Required*): The room all messages will be sent to, when no other target is given.
|
||||
{% configuration %}
|
||||
name:
|
||||
description: Setting the optional parameter `name` allows multiple notifiers to be created. The notifier will bind to the service `notify.NOTIFIER_NAME`.
|
||||
required: false
|
||||
default: notify
|
||||
type: string
|
||||
default_room:
|
||||
description: The room all messages will be sent to, when no other target is given.
|
||||
required: true
|
||||
type: string
|
||||
{% endconfiguration %}
|
||||
|
||||
The target room has to be precreated, the room id can be obtained from the rooms settings dialog. Rooms by default have a canonical id of the form `"!<randomid>:homeserver.tld"`, but can also be allocated aliases like `"#roomname:homeserver.tld"`. Make sure to use quotes around the room id or alias to escape special characters (`!`, and `#`) in YAML. The notifying account may need to be invited to the room, depending on the individual rooms policies.
|
||||
|
||||
|
@ -12,7 +12,6 @@ ha_category: Notifications
|
||||
ha_release: 0.52
|
||||
---
|
||||
|
||||
|
||||
The `prowl` platform uses [Prowl](https://www.prowlapp.com/) to deliver push notifications from Home Assistant to your iOS device.
|
||||
|
||||
Go to the [Prowl website](https://www.prowlapp.com/) and create a new API key.
|
||||
@ -27,10 +26,17 @@ notify:
|
||||
api_key: YOUR_API_KEY
|
||||
```
|
||||
|
||||
Configuration variables:
|
||||
|
||||
- **name** (*Optional*): Setting the optional parameter `name` allows multiple notifiers to be created. The default value is `notify`. The notifier will bind to the service `notify.NOTIFIER_NAME`.
|
||||
- **api_key** (*Required*): The Prowl API key to use.
|
||||
{% configuration %}
|
||||
name:
|
||||
description: Setting the optional parameter `name` allows multiple notifiers to be created. The notifier will bind to the service `notify.NOTIFIER_NAME`.
|
||||
required: false
|
||||
default: notify
|
||||
type: string
|
||||
api_key:
|
||||
description: The Prowl API key to use.
|
||||
required: true
|
||||
type: string
|
||||
{% endconfiguration %}
|
||||
|
||||
### {% linkable_title Prowl service data %}
|
||||
|
||||
|
@ -24,10 +24,17 @@ notify:
|
||||
api_key: YOUR_API_KEY
|
||||
```
|
||||
|
||||
Configuration variables:
|
||||
|
||||
- **api_key** (*Required*): Enter the API key for Pushbullet. Go to [https://www.pushbullet.com/#settings/account](https://www.pushbullet.com/#settings/account) to retrieve your API key/access token.
|
||||
- **name** (*Optional*): Setting the optional parameter `name` allows multiple notifiers to be created. The default value is `notify`. The notifier will bind to the service `notify.NOTIFIER_NAME`.
|
||||
{% configuration %}
|
||||
api_key:
|
||||
description: Enter the API key for Pushbullet. Go to [https://www.pushbullet.com/#settings/account](https://www.pushbullet.com/#settings/account) to retrieve your API key/access token.
|
||||
required: true
|
||||
type: string
|
||||
name:
|
||||
description: Setting the optional parameter `name` allows multiple notifiers to be created. The default value is `notify`. The notifier will bind to the service `notify.NOTIFIER_NAME`.
|
||||
required: false
|
||||
default: notify
|
||||
type: string
|
||||
{% endconfiguration %}
|
||||
|
||||
### {% linkable_title Usage %}
|
||||
|
||||
@ -84,7 +91,6 @@ action:
|
||||
|
||||
- **file** (*Required*): File to send with Pushbullet.
|
||||
|
||||
|
||||
### {% linkable_title File URL support %}
|
||||
|
||||
```yaml
|
||||
@ -100,6 +106,7 @@ action:
|
||||
- **file_url** (*Required*): File to send with Pushbullet.
|
||||
|
||||
### {% linkable_title Single target %}
|
||||
|
||||
```yaml
|
||||
action:
|
||||
service: notify.NOTIFIER_NAME
|
||||
@ -108,10 +115,9 @@ action:
|
||||
message: "This only goes to one specific device"
|
||||
target: device/DEVICE_NAME
|
||||
```
|
||||
- **target**: Pushbullet device to recive the notification.
|
||||
|
||||
- **target**: Pushbullet device to recive the notification.
|
||||
|
||||
<p class='note'>
|
||||
Don't forget to [whitelist external directories](/docs/configuration/basic/), so Home Assistant has access to them.
|
||||
</p>
|
||||
|
||||
|
@ -12,7 +12,6 @@ ha_category: Notifications
|
||||
ha_release: pre 0.7
|
||||
---
|
||||
|
||||
|
||||
The `pushetta` notify platform uses [Pushetta](http://www.pushetta.com) to delivery notifications from Home Assistant to your devices.
|
||||
|
||||
To retrieve the API token, log into your account at [http://www.pushetta.com](http://www.pushetta.com) and go to your **Dashboard**. Create a new channel by clicking on **Channels** and then **Add a Channel**.
|
||||
@ -28,21 +27,35 @@ notify:
|
||||
channel_name: YOUR_CHANNEL_NAME
|
||||
```
|
||||
|
||||
Configuration variables:
|
||||
|
||||
- **name** (*Optional*): Setting the optional parameter `name` allows multiple notifiers to be created. The default value is `notify`. The notifier will bind to the service `notify.NOTIFIER_NAME`.
|
||||
- **api_key** (*Required*): Your API key for Pushetta.
|
||||
- **channel_name** (*Required*): The name of your channel.
|
||||
- **send_test_msg** (*Optional*): Disable/enable the test message send on Home Assistant's startup to test the API key and the existence of the channel. Default to `False`.
|
||||
{% configuration %}
|
||||
name:
|
||||
description: Setting the optional parameter `name` allows multiple notifiers to be created. The notifier will bind to the service `notify.NOTIFIER_NAME`.
|
||||
required: false
|
||||
default: notify
|
||||
type: string
|
||||
api_key:
|
||||
description: Your API key for Pushetta.
|
||||
required: true
|
||||
type: string
|
||||
channel_name:
|
||||
description: The name of your channel.
|
||||
required: true
|
||||
type: string
|
||||
send_test_msg:
|
||||
description: Disable/enable the test message send on Home Assistant's startup to test the API key and the existence of the channel.
|
||||
required: false
|
||||
default: false
|
||||
type: boolean
|
||||
{% endconfiguration %}
|
||||
|
||||
It's easy to test your Pushetta setup outside of Home Assistant. Assuming you have a channel *home-assistant*, just fire a request and check the channel page in the dashboard for a new message.
|
||||
|
||||
```bash
|
||||
curl -X POST \
|
||||
-H "Authorization: Token YOUR_API_KEY" \
|
||||
-H "Content-Type: application/json" \
|
||||
-d "{ \"body\" : \"Hello World\", \"message_type\" : \"text/plain\" }" \
|
||||
http://api.pushetta.com/api/pushes/home-assistant/
|
||||
-H "Authorization: Token YOUR_API_KEY" \
|
||||
-H "Content-Type: application/json" \
|
||||
-d "{ \"body\" : \"Hello World\", \"message_type\" : \"text/plain\" }" \
|
||||
http://api.pushetta.com/api/pushes/home-assistant/
|
||||
```
|
||||
|
||||
For further details, please check the [API](http://pushetta.com/pushetta-api/).
|
||||
|
@ -26,16 +26,22 @@ notify:
|
||||
private_key: YOUR_KEY
|
||||
```
|
||||
|
||||
**Configuration variables:**
|
||||
|
||||
- **name** (*Optional*): Setting the optional parameter `name` allows multiple notifiers to be created. The default value is `notify`. The notifier will bind to the service `notify.NOTIFIER_NAME`.
|
||||
- **private_key** (*Required*): Your private or alias key. Private key = send the notification to all devices with standard params, alias key send the notification to the devices stored in the alias with predefined params.
|
||||
{% configuration %}
|
||||
name:
|
||||
description: Setting the optional parameter `name` allows multiple notifiers to be created. The notifier will bind to the service `notify.NOTIFIER_NAME`.
|
||||
required: false
|
||||
default: notify
|
||||
type: string
|
||||
private_key:
|
||||
description: Your private or alias key. Private key = send the notification to all devices with standard params, alias key send the notification to the devices stored in the alias with predefined params.
|
||||
required: true
|
||||
type: string
|
||||
{% endconfiguration %}
|
||||
|
||||
### {% linkable_title Examples %}
|
||||
|
||||
Message to two devices with formatted text.
|
||||
|
||||
|
||||
```yaml
|
||||
action:
|
||||
service: notify.notify
|
||||
|
@ -12,7 +12,6 @@ ha_category: Notifications
|
||||
ha_release: 0.13
|
||||
---
|
||||
|
||||
|
||||
The `rest` notification platform allows you to deliver [RESTful](https://en.wikipedia.org/wiki/Representational_state_transfer) notifications from Home Assistant to another party.
|
||||
|
||||
To enable the REST notification in your installation, add the following to your `configuration.yaml` file:
|
||||
@ -25,17 +24,46 @@ notify:
|
||||
resource: http://IP_ADDRESS/ENDPOINT
|
||||
```
|
||||
|
||||
Configuration variables:
|
||||
|
||||
- **name** (*Optional*): Setting the optional parameter `name` allows multiple notifiers to be created. The default value is `notify`. The notifier will bind to the service `notify.NOTIFIER_NAME`.
|
||||
- **resource** (*Required*): The resource or endpoint that will receive the value.
|
||||
- **method** (*Optional*): The method of the request. Default is `GET`. Other valid options are `POST` or `POST_JSON`.
|
||||
- **headers** (*Optional*): The headers for the request.
|
||||
- **message_param_name** (*Optional*): Parameter name for the message. Defaults to `message`.
|
||||
- **title_param_name** (*Optional*): Parameter name for the title. Defaults to none.
|
||||
- **target_param_name** (*Optional*): Parameter name for the target. Defaults to none.
|
||||
- **data** (*Optional*): Dictionary of extra parameters to send to the resource.
|
||||
- **data_template** (*Optional*): Template dictionary of extra parameters to send to the resource.
|
||||
{% configuration %}
|
||||
name:
|
||||
description: Setting the optional parameter `name` allows multiple notifiers to be created. The notifier will bind to the service `notify.NOTIFIER_NAME`.
|
||||
required: false
|
||||
default: notify
|
||||
type: string
|
||||
resource:
|
||||
description: The resource or endpoint that will receive the value.
|
||||
required: true
|
||||
type: string
|
||||
method:
|
||||
description: The method of the request. Valid options are `GET`, `POST` or `POST_JSON`.
|
||||
required: false
|
||||
default: GET
|
||||
type: string
|
||||
headers:
|
||||
description: The headers for the request.
|
||||
required: false
|
||||
type: string
|
||||
message_param_name:
|
||||
description: Parameter name for the message.
|
||||
required: false
|
||||
default: message
|
||||
type: string
|
||||
title_param_name:
|
||||
description: Parameter name for the title.
|
||||
required: false
|
||||
type: string
|
||||
target_param_name:
|
||||
description: Parameter name for the target.
|
||||
required: false
|
||||
type: string
|
||||
data:
|
||||
description: Dictionary of extra parameters to send to the resource.
|
||||
required: false
|
||||
type: string
|
||||
data_template:
|
||||
description: Template dictionary of extra parameters to send to the resource.
|
||||
required: false
|
||||
type: template
|
||||
{% endconfiguration %}
|
||||
|
||||
To use notifications, please see the [getting started with automation page](/getting-started/automation/).
|
||||
|
||||
|
@ -13,6 +13,12 @@ ha_category: Notifications
|
||||
|
||||
The `sendgrid` notification platform sends email notifications via [SendGrid](https://sendgrid.com/), a proven cloud-based email platform.
|
||||
|
||||
## {% linkable_title Setup %}
|
||||
|
||||
You need an [API key](https://app.sendgrid.com/settings/api_keys) from SendGrid.
|
||||
|
||||
## {% linkable_title Configuration %}
|
||||
|
||||
To enable notification emails via SendGrid in your installation, add the following to your `configuration.yaml` file:
|
||||
|
||||
```yaml
|
||||
@ -25,11 +31,24 @@ notify:
|
||||
recipient: YOUR_RECIPIENT
|
||||
```
|
||||
|
||||
Configuration variables:
|
||||
|
||||
- **name** (*Optional*): Setting the optional parameter `name` allows multiple notifiers to be created. The default value is `notify`. The notifier will bind to the service `notify.NOTIFIER_NAME`.
|
||||
- **api_key** (*Required*): SendGrid API key - https://app.sendgrid.com/settings/api_keys
|
||||
- **sender** (*Required*): E-mail address of the sender.
|
||||
- **recipient** (*Required*): Recipient of the notification.
|
||||
{% configuration %}
|
||||
name:
|
||||
description: Setting the optional parameter `name` allows multiple notifiers to be created. The notifier will bind to the service `notify.NOTIFIER_NAME`.
|
||||
required: false
|
||||
default: notify
|
||||
type: string
|
||||
api_key:
|
||||
description: Your SendGrid API key.
|
||||
required: true
|
||||
type: string
|
||||
sender:
|
||||
description: The e-mail address of the sender.
|
||||
required: true
|
||||
type: string
|
||||
recipient:
|
||||
description: The recipient of the notification.
|
||||
required: true
|
||||
type: string
|
||||
{% endconfiguration %}
|
||||
|
||||
To use notifications, please see the [getting started with automation page](/getting-started/automation/).
|
||||
|
@ -12,7 +12,6 @@ ha_category: Notifications
|
||||
ha_release: pre 0.7
|
||||
---
|
||||
|
||||
|
||||
The `syslog` platform allows you to deliver notifications from Home Assistant to the local syslog.
|
||||
|
||||
To enable syslog notifications in your installation, add the following to your `configuration.yaml` file:
|
||||
@ -24,12 +23,28 @@ notify:
|
||||
platform: syslog
|
||||
```
|
||||
|
||||
Configuration variables:
|
||||
|
||||
- **name** (*Optional*): Setting the optional parameter `name` allows multiple notifiers to be created. The default value is `notify`. The notifier will bind to the service `notify.NOTIFIER_NAME`.
|
||||
- **facility** (*Optional*): Facility according to RFC 3164 (http://tools.ietf.org/html/rfc3164). Default is 'syslog' if no value is given. Check the table below for entries.
|
||||
- **option** (*Optional*): Log option. Default is 'pid' if no value is given. Check the table below for entries.
|
||||
- **priority** (*Optional*): Priority of the messages. Default is 'info' if no value is given. Check the table below for entries.
|
||||
{% configuration %}
|
||||
name:
|
||||
description: Setting the optional parameter `name` allows multiple notifiers to be created. The notifier will bind to the service `notify.NOTIFIER_NAME`.
|
||||
required: false
|
||||
default: notify
|
||||
type: string
|
||||
facility:
|
||||
description: Facility according to RFC 3164 (http://tools.ietf.org/html/rfc3164). Check the table below for entries.
|
||||
required: false
|
||||
default: syslog
|
||||
type: string
|
||||
option:
|
||||
description: Log option. Check the table below for entries.
|
||||
required: false
|
||||
default: pid
|
||||
type: string
|
||||
priority:
|
||||
description: Priority of the messages. Check the table below for entries.
|
||||
required: false
|
||||
default: info
|
||||
type: string
|
||||
{% endconfiguration %}
|
||||
|
||||
The table contains values to use in your `configuration.yaml` file.
|
||||
|
||||
|
@ -98,18 +98,20 @@ To configure additional functionality, add configuration options beneath a `bina
|
||||
openuv:
|
||||
api_key: YOUR_OPENUV_API_KEY
|
||||
binary_sensors:
|
||||
- uv_protection_window
|
||||
monitored_conditions:
|
||||
- uv_protection_window
|
||||
sensors:
|
||||
- current_ozone_level
|
||||
- current_uv_index
|
||||
- current_uv_level
|
||||
- max_uv_index
|
||||
- safe_exposure_time_type_1
|
||||
- safe_exposure_time_type_2
|
||||
- safe_exposure_time_type_3
|
||||
- safe_exposure_time_type_4
|
||||
- safe_exposure_time_type_5
|
||||
- safe_exposure_time_type_6
|
||||
monitored_conditions:
|
||||
- current_ozone_level
|
||||
- current_uv_index
|
||||
- current_uv_level
|
||||
- max_uv_index
|
||||
- safe_exposure_time_type_1
|
||||
- safe_exposure_time_type_2
|
||||
- safe_exposure_time_type_3
|
||||
- safe_exposure_time_type_4
|
||||
- safe_exposure_time_type_5
|
||||
- safe_exposure_time_type_6
|
||||
```
|
||||
|
||||
<p class='note warning'>
|
||||
|
@ -32,31 +32,89 @@ plant:
|
||||
min_moisture: 20
|
||||
```
|
||||
|
||||
Configuration variables:
|
||||
|
||||
- **entity_id** (*Required*): Set by you and is used by the component as the `entity_id`.
|
||||
- **sensors** (*Required*):
|
||||
- **moisture** (*Optional*): Moisture of the plant. Measured in %. Can have a min and max value set optionally.
|
||||
- **battery** (*Optional*): Battery level of the plant sensor. Measured in %. Can only have a min level set optionally.
|
||||
- **temperature:** (*Optional*): Temperature of the plant. Measured in degrees Celsius. Can have a min and max value set optionally.
|
||||
- **conductivity:** (*Optional*): Conductivity of the plant. Measured in µS/cm. Can have a min and max value set optionally.
|
||||
- **brightness:** (*Optional*): Light exposure of the plant. Measured in Lux. Can have a min and max value set optionally.
|
||||
- **min_moisture** (*Optional*): Minimum moisture level before triggering a problem. Typical value: 20
|
||||
- **max_moisture** (*Optional*): Maximum moisture level before triggering a problem. Typical value: 60
|
||||
- **min_battery** (*Optional*): Minimum battery level before triggering a problem. Typical value: 20
|
||||
- **min_conductivity** (*Optional*): Minimum conductivity level before triggering a problem. Typical value: 500
|
||||
- **max_conductivity** (*Optional*): Maximum conductivity level before triggering a problem. Typical value: 3000
|
||||
- **min_temperature** (*Optional*): Minimum temperature before triggering a problem.
|
||||
- **max_temperature** (*Optional*): Maximum temperature before triggering a problem.
|
||||
- **min_brightness** (*Optional*): Minimum brightness before triggering a problem. In contrast to the other values, this check is *not* looking at the current situation, but rather at the last days. A problem is only reported if the maximum brightness over the last days was lower than min_brightness. You can use this to check if the plant gets enough light during the course of the day.
|
||||
- **max_brightness** (*Optional*): Maximum brightness before triggering a problem.
|
||||
- **check_days** (*Optional*): time interval (in days) used when checking **min_brightness**, if not set, the default value is 3
|
||||
{% configuration %}
|
||||
entity_id:
|
||||
description: Set by you and is used by the component as the `entity_id`.
|
||||
required: true
|
||||
type: list
|
||||
keys:
|
||||
sensors:
|
||||
description: List of sensor measure entities.
|
||||
required: true
|
||||
type: list
|
||||
keys:
|
||||
moisture:
|
||||
description: Moisture of the plant. Measured in %. Can have a min and max value set optionally.
|
||||
required: false
|
||||
type: string
|
||||
battery:
|
||||
description: Battery level of the plant sensor. Measured in %. Can only have a min level set optionally.
|
||||
required: false
|
||||
type: string
|
||||
temperature:
|
||||
description: Temperature of the plant. Measured in degrees Celsius. Can have a min and max value set optionally.
|
||||
required: false
|
||||
type: string
|
||||
conductivity:
|
||||
description: Conductivity of the plant. Measured in µS/cm. Can have a min and max value set optionally.
|
||||
required: false
|
||||
type: string
|
||||
brightness:
|
||||
description: Light exposure of the plant. Measured in Lux. Can have a min and max value set optionally.
|
||||
required: false
|
||||
type: string
|
||||
mind_moisture:
|
||||
description: Minimum moisture level before triggering a problem.
|
||||
required: false
|
||||
default: 20
|
||||
type: integer
|
||||
max_moisture:
|
||||
description: Maximum moisture level before triggering a problem.
|
||||
required: false
|
||||
default: 60
|
||||
type: integer
|
||||
min_battery:
|
||||
description: Minimum battery level before triggering a problem.
|
||||
required: false
|
||||
default: 20
|
||||
type: integer
|
||||
min_conductivity:
|
||||
description: Minimum conductivity level before triggering a problem.
|
||||
required: false
|
||||
default: 500
|
||||
type: integer
|
||||
max_conductivity:
|
||||
description: Maximum conductivity level before triggering a problem.
|
||||
required: false
|
||||
default: 3000
|
||||
type: integer
|
||||
min_temperature:
|
||||
description: Minimum temperature before triggering a problem.
|
||||
required: false
|
||||
type: float
|
||||
max_temperature:
|
||||
description: Maximum temperature before triggering a problem.
|
||||
required: false
|
||||
type: float
|
||||
min_brightness:
|
||||
description: Minimum brightness before triggering a problem. In contrast to the other values, this check is *not* looking at the current situation, but rather at the last days. A problem is only reported if the maximum brightness over the last days was lower than min_brightness. You can use this to check if the plant gets enough light during the course of the day.
|
||||
required: false
|
||||
type: integer
|
||||
max_brightness:
|
||||
description: Maximum brightness before triggering a problem.
|
||||
required: false
|
||||
type: integer
|
||||
check_days:
|
||||
description: time interval (in days) used when checking `min_brightness`.
|
||||
required: false
|
||||
default: 3
|
||||
type: integer
|
||||
{% endconfiguration %}
|
||||
|
||||
## {% linkable_title Examples %}
|
||||
### Using plain MQTT sensor to get the data
|
||||
This is a practical example that uses a multiple of `MQTT sensors` to supply the readings used by the `plant` sensor.
|
||||
Another good source of this data would be the [Mi Flora](/components/sensor.miflora/) component.
|
||||
|
||||
Another good source of this data would be the [Mi Flora](/components/sensor.miflora/) component.
|
||||
|
||||
If the sensor data is within the min/max values the status will be `ok`, if not the status will be `problem`. You can use this to trigger a notification, if there is a problem with your plant. Of course you can only monitor attributes of your plant, where the sensor is configured and is providing the data.
|
||||
|
||||
@ -67,6 +125,7 @@ The main sources of the data will usually be a [MiFlora sensor](/components/sens
|
||||
If you want to get the date via a PlantGateway, this is a typical configuration for the MQTT sensors:
|
||||
|
||||
{% raw %}
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
plant:
|
||||
@ -82,7 +141,7 @@ plant:
|
||||
min_battery: 17
|
||||
min_conductivity: 500
|
||||
min_temperature: 15
|
||||
|
||||
|
||||
sensor:
|
||||
- platform: mqtt
|
||||
name: my_plant_moisture
|
||||
@ -105,6 +164,7 @@ sensor:
|
||||
state_topic: my_plant_topic
|
||||
value_template: '{{ value_json.brightness }}'
|
||||
```
|
||||
|
||||
{% endraw %}
|
||||
|
||||
You have to replace the `state_topic` with the value that you configured in the PlantGateway. It also depends on the global configuration of your MQTT server.
|
||||
|
@ -72,7 +72,7 @@ route53:
|
||||
aws_access_key_id: ABC123
|
||||
aws_secret_access_key: DEF456
|
||||
zone: ZONEID678
|
||||
domain: home.yourdomain.com
|
||||
domain: yourdomain.com
|
||||
records:
|
||||
- vpn
|
||||
- hassio
|
||||
|
@ -28,9 +28,12 @@ sensor:
|
||||
- linev
|
||||
```
|
||||
|
||||
Configuration variables:
|
||||
|
||||
- **resources** array (*Required*): Contains all entries to display.
|
||||
{% configuration %}
|
||||
resources:
|
||||
description: Contains all entries to display.
|
||||
required: true
|
||||
type: list
|
||||
{% endconfiguration %}
|
||||
|
||||
### {% linkable_title Example %}
|
||||
|
||||
|
@ -13,7 +13,6 @@ ha_iot_class: "Local Polling"
|
||||
ha_release: pre 0.7
|
||||
---
|
||||
|
||||
|
||||
The `arest` sensor platform allows you to get all data from your devices (like Arduinos with a Ethernet/Wifi connection, the ESP8266, and the Raspberry Pi) running the [aREST](http://arest.io/) RESTful framework.
|
||||
|
||||
## {% linkable_title Configuration %}
|
||||
@ -24,7 +23,7 @@ To use your aREST enabled device in your installation, add the following to your
|
||||
# Example configuration.yaml entry
|
||||
sensor:
|
||||
- platform: arest
|
||||
resource: http://IP_ADDRESS
|
||||
resource: https://IP_ADDRESS
|
||||
monitored_variables:
|
||||
temperature:
|
||||
name: temperature
|
||||
@ -33,22 +32,63 @@ sensor:
|
||||
name: Pin 0 analog
|
||||
```
|
||||
|
||||
Configuration variables:
|
||||
{% configuration %}
|
||||
resource:
|
||||
description: "IP address and schema of the device that is exposing an aREST API, e.g., https://192.168.1.10."
|
||||
required: true
|
||||
type: string
|
||||
name:
|
||||
description: Let you overwrite the name of the device.
|
||||
required: false
|
||||
default: aREST sensor
|
||||
type: string
|
||||
pins:
|
||||
description: List of pins to monitor. Analog pins need a leading **A** for the pin number.
|
||||
required: false
|
||||
type: list
|
||||
keys:
|
||||
pin:
|
||||
description: Pin number to use.
|
||||
required: true
|
||||
type: list
|
||||
keys:
|
||||
name:
|
||||
description: The name of the variable you wish to monitor.
|
||||
required: true
|
||||
type: string
|
||||
unit_of_measurement:
|
||||
description: Defines the unit of measurement of the sensor, if any.
|
||||
required: false
|
||||
type: string
|
||||
value_template:
|
||||
description: Defines a [template](/docs/configuration/templating/#processing-incoming-data) to extract a value from the payload.
|
||||
required: false
|
||||
type: template
|
||||
monitored_variables:
|
||||
description: List of exposed variables.
|
||||
required: false
|
||||
type: list
|
||||
keys:
|
||||
variable:
|
||||
description: Name of the variable to monitor.
|
||||
required: true
|
||||
type: list
|
||||
keys:
|
||||
name:
|
||||
description: The name to use for the frontend.
|
||||
required: false
|
||||
type: string
|
||||
unit_of_measurement:
|
||||
description: Defines the units of measurement of the sensor, if any.
|
||||
required: false
|
||||
type: string
|
||||
value_template:
|
||||
description: Defines a [template](/docs/configuration/templating/#processing-incoming-data) to extract a value from the payload.
|
||||
required: false
|
||||
type: template
|
||||
{% endconfiguration %}
|
||||
|
||||
- **resource** (*Required*): IP address and schema of the device that is exposing an aREST API, e.g., http://192.168.1.10.
|
||||
- **name** (*Optional*): Let you overwrite the name of the device. By default *name* from the device is used.
|
||||
- **monitored_variables** array (*Optional*): List of exposed variables.
|
||||
- **[variable]** (*Required*): Name of the variable to monitor.
|
||||
- **name** (*Optional*): The name to use for the frontend.
|
||||
- **unit_of_measurement** (*Optional*): Defines the units of measurement of the sensor, if any.
|
||||
- **value_template** (*Optional*): Defines a [template](/docs/configuration/templating/#processing-incoming-data) to extract a value from the payload.
|
||||
- **pins** array (*Optional*): List of pins to monitor. Analog pins need a leading **A** for the pin number.
|
||||
- **[pin]** (*Required*): Pin number to use.
|
||||
- **name** (*Required*): The name of the variable you wish to monitor.
|
||||
- **unit_of_measurement** (*Optional*): Defines the unit of measurement of the sensor, if any.
|
||||
- **value_template** (*Optional*): Defines a [template](/docs/configuration/templating/#processing-incoming-data) to extract a value from the payload.
|
||||
|
||||
The variables in the `monitored_variables` array must be available in the response of the device. As a starting point you could use the one of the example sketches (eg. [Ethernet](https://raw.githubusercontent.com/marcoschwartz/aREST/master/examples/Ethernet/Ethernet.ino) for an Arduino with Ethernet shield). In those sketches are two variables (`temperature` and `humidity`) available which will act as endpoints.
|
||||
The variables in the `monitored_variables` array must be available in the response of the device. As a starting point you could use the one of the example sketches (eg. [Ethernet](https://raw.githubusercontent.com/marcoschwartz/aREST/master/examples/Ethernet/Ethernet.ino) for an Arduino with Ethernet shield). In those sketches are two variables (`temperature` and `humidity`) available which will act as endpoints.
|
||||
|
||||
Accessing one of the endpoints (eg. http://192.168.1.10/temperature) will give you the value inside a JSON response.
|
||||
|
||||
@ -75,4 +115,3 @@ The root will give you a JSON response that contains all variables and their cur
|
||||
```json
|
||||
{"return_value": 34, "id": "sensor02", "name": "livingroom", "connected": true}
|
||||
```
|
||||
|
||||
|
@ -46,17 +46,28 @@ sensor:
|
||||
- air_quality
|
||||
```
|
||||
|
||||
|
||||
Configuration variables:
|
||||
|
||||
- **monitored_conditions** array (*Optional*): Conditions to display in the frontend. The following conditions can be monitored.
|
||||
- **captured_today**: Return the number of videos captured on the current day.
|
||||
- **last_capture**: Return the timestamp from the last video captured by your Arlo camera.
|
||||
- **total_cameras**: Return the number of recognized and active cameras linked on your Arlo account.
|
||||
- **battery_level**: Return the battery level of your Arlo camera.
|
||||
- **signal_strength**: Return the wireless signal strength of your Arlo camera.
|
||||
- **temperature**: Return the ambient temperature detected by your Arlo Baby camera.
|
||||
- **humidity**: Return the ambient relative humidity detected by your Arlo Baby camera.
|
||||
- **air_quality**: Return the ambient air quality (a reading of volatile organic compounds (VOCs) in parts per million) detected by your Arlo Baby camera.
|
||||
{% configuration %}
|
||||
monitored_conditions:
|
||||
description: Conditions to display in the frontend. The following conditions can be monitored.
|
||||
required: false
|
||||
type: list
|
||||
keys:
|
||||
captured_today:
|
||||
description: Return the number of videos captured on the current day.
|
||||
last_capture:
|
||||
description: Return the timestamp from the last video captured by your Arlo camera.
|
||||
total_cameras:
|
||||
description: Return the number of recognized and active cameras linked on your Arlo account.
|
||||
battery_level:
|
||||
description: Return the battery level of your Arlo camera.
|
||||
signal_strength:
|
||||
description: Return the wireless signal strength of your Arlo camera.
|
||||
temperature:
|
||||
description: Return the ambient temperature detected by your Arlo Baby camera.
|
||||
humidity:
|
||||
description: Return the ambient relative humidity detected by your Arlo Baby camera.
|
||||
air_quality:
|
||||
description: Return the ambient air quality (a reading of volatile organic compounds (VOCs) in parts per million) detected by your Arlo Baby camera.
|
||||
{% endconfiguration %}
|
||||
|
||||
If no **monitored_conditions** are specified, all of above will be enabled by default.
|
||||
|
@ -13,7 +13,6 @@ ha_release: 0.47
|
||||
ha_iot_class: "Cloud Polling"
|
||||
---
|
||||
|
||||
|
||||
The `buienradar` platform uses [buienradar.nl](http://buienradar.nl/) as a source for current meteorological data for your location. The weather forecast is delivered by Buienradar, who provides a web service that provides detailed weather information for users in The Netherlands. The relevant weather station used will be automatically selected based on the location specified in the Home Assistant configuration (or in the buienradar weather/sensor component). A map of all available weather stations can be found [here](https://www.google.com/maps/d/embed?mid=1NivHkTGQUOs0dwQTnTMZi8Uatj0).
|
||||
|
||||
The selected weather station will provide all weather data, with the exception of the forecasted precipitation. The forecasted precipitation data will be retrieved from buienradar using your actual gps-location (and not the location of the nearest weather station).
|
||||
@ -32,60 +31,113 @@ sensor:
|
||||
- pressure
|
||||
```
|
||||
|
||||
Configuration variables:
|
||||
{% configuration %}
|
||||
name:
|
||||
description: You can specify a name of the component, but do not have to. See more info below.
|
||||
required: false
|
||||
type: string
|
||||
latitude:
|
||||
description: Latitude to use for selection of data source location. Longitude and latitude will be taken from Home Assistant configuration, but can be overridden/changed in this component to select a different location for buienradar.nl.
|
||||
required: false
|
||||
type: float
|
||||
longitude:
|
||||
description: Longitude to use for selection of data source location. Longitude and latitude will be taken from Home Assistant configuration, but can be overridden/changed in this component to select a different location for buienradar.nl.
|
||||
required: false
|
||||
type: float
|
||||
timeframe:
|
||||
description: "Minutes to look ahead for precipitation forecast (min: 5 / max: 120)."
|
||||
required: false
|
||||
default: 60
|
||||
type: integer
|
||||
monitored_conditions:
|
||||
description: One or more conditions to display in the frontend.
|
||||
required: true
|
||||
type: list
|
||||
keys:
|
||||
stationname:
|
||||
description: The name of the selected meteo-station.
|
||||
conditioncode:
|
||||
description: A symbol and a unique code identifying the current weather condition ([a..z]).
|
||||
condition:
|
||||
description: A symbol and the current weather condition (`clear`, `cloudy`, `fog`, `rainy`, `snowy` or `lightning`).
|
||||
conditiondetailed:
|
||||
description: A symbol and detailed current weather condition (`clear`, `partlycloudy`, `cloudy`, `partlycloudy-fog`, `partlycloudy-light-rain`, `partlycloudy-rain`, `light-rain`, `rainy`, `snowy-rainy`, `partlycloudy-light-snow`, `partlycloudy-snow`, `light-snow`, `snowy`, `partlycloudy-lightning` or `lightning`).
|
||||
conditionexact:
|
||||
description: A symbol with the full current weather condition (in English).
|
||||
symbol:
|
||||
description: A symbol for the current weather with the full current condition (in Dutch).
|
||||
humidity:
|
||||
description: The relative humidity (%).
|
||||
temperature:
|
||||
description: "The current temperature (in [C](https://en.wikipedia.org/wiki/Celsius))."
|
||||
groundtemperature:
|
||||
description: "The current ground temperature (in [C](https://en.wikipedia.org/wiki/Celsius))."
|
||||
windspeed:
|
||||
description: "The wind speed in [m/s](https://en.wikipedia.org/wiki/M/s)."
|
||||
windforce:
|
||||
description: "The wind speed/force in [Bft](https://en.wikipedia.org/wiki/Beaufort_scale)."
|
||||
winddirection:
|
||||
description: "Where the wind is coming from: N (North),Z (south), NO (North-East), etc."
|
||||
windazimuth:
|
||||
description: Where the wind is coming from in degrees, with true north at 0° and progressing clockwise.
|
||||
pressure:
|
||||
description: "The sea-level air pressure in [hPa](https://en.wikipedia.org/wiki/Hectopascal)."
|
||||
visibility:
|
||||
description: "Visibility in meters ([m](https://en.wikipedia.org/wiki/Metre))."
|
||||
windgust:
|
||||
description: "The wind speed of wind gusts ([m/s](https://en.wikipedia.org/wiki/M/s))."
|
||||
precipitation:
|
||||
description: The amount of precipitation/rain in mm/h.
|
||||
precipitation_forecast_average:
|
||||
description: The average expected precipitation/rain in mm/h within the given time-frame.
|
||||
precipitation_forecast_total:
|
||||
description: The total expected precipitation/rain in mm within the given time-frame. The total expected rain in the configured time-frame will be equal to _precipitation_forecast_total_/_timeframe_ mm/min. So, with time-frame configured to 30 minutes and a value of 5, the expected rain is 5 mm in 30 minutes, which is the same as 10 mm/h. If time-frame is set to 90 minutes and a value of 5, the expected rain is 5 mm in 90 minutes, which is equal to 3.3 mm/h.
|
||||
irradiance:
|
||||
description: "Sun intensity in Watt per square meter ([W/m2](https://en.wikipedia.org/wiki/W/m2))."
|
||||
temperature_1d:
|
||||
description: "The forecasted temperature (in [C](https://en.wikipedia.org/wiki/Celsius))."
|
||||
mintemp_1d:
|
||||
description: "The forecasted minimum temperature (in [C](https://en.wikipedia.org/wiki/Celsius))."
|
||||
rainchance_1d:
|
||||
description: The forecasted chance for rain (%).
|
||||
sunchance_1d:
|
||||
description: The forecasted chance for sun (%).
|
||||
rain_1d:
|
||||
description: "The forecasted amount of rain in [mm](https://en.wikipedia.org/wiki/Millimetre)."
|
||||
snow_1d:
|
||||
description: "The forecasted amount of snow in [cm](https://en.wikipedia.org/wiki/Centimetre)."
|
||||
windforce_1d:
|
||||
description: "The expected windforce in [Bft](https://en.wikipedia.org/wiki/Beaufort_scale)."
|
||||
conditioncode_1d:
|
||||
description: Symbol and condition code of the expected condition.
|
||||
condition_1d:
|
||||
description: Symbol and expected condition.
|
||||
conditiondetailed_1d:
|
||||
description: Symbol and detailed expected condition.
|
||||
conditionexact_1d:
|
||||
description: Symbol and full expected condition (in English).
|
||||
symbol_1d:
|
||||
description: Symbol and full expected condition (in Dutch).
|
||||
{% endconfiguration %}
|
||||
|
||||
- **name** (*Optional*): You can specify a name of the component, but do not have to. If you specify a name, the sensors will get an entity name of `sensor.[name]_[default sensor display name]`, for example:
|
||||
- `sensor.lopik_temperature`, since the name of the sensor is set to `lopik` and the default display name for monitored condition `temperature` is `Temperature`
|
||||
- `sensor.lopik_wind_force`, since the name of the sensor is set to `lopik` and the default display name for monitored condition `windforce` is `Wind force`
|
||||
|
||||
If no name is specified the sensors will be called `sensor.br_[default sensor display name]`, for example:
|
||||
- `sensor.br_wind_speed`, since no name has been set for the sensor and the default display name for monitored condition `windspeed` is `Wind speed`
|
||||
- `sensor.br_ground_temperature`, since no name has been set for the sensor and the default display name for monitored condition `groundtemperature` is `Ground Temperature`
|
||||
- **latitude** (*Optional*): Latitude to use for selection of data source location. Longitude and latitude will be taken from Home Assistant configuration, but can be overridden/changed in this component to select a different location for buienradar.nl.
|
||||
- **longitude** (*Optional*): Longitude to use for selection of data source location. Longitude and latitude will be taken from Home Assistant configuration, but can be overridden/changed in this component to select a different location for buienradar.nl.
|
||||
- **timeframe** (*Optional*): Minutes to look ahead for precipitation forecast (5..120) [default: 60].
|
||||
- **monitored_conditions** array (*Required*): One or more conditions to display in the frontend.
|
||||
- **stationname**: The name of the selected meteo-station.
|
||||
- **conditioncode**: A symbol and a unique code identifying the current weather condition ([a..z]).
|
||||
- **condition**: A symbol and the current weather condition (clear, cloudy, fog, rainy, snowy, lightning).
|
||||
- **conditiondetailed**: A symbol and detailed current weather condition (clear, partlycloudy, cloudy, partlycloudy-fog, partlycloudy-light-rain, partlycloudy-rain, light-rain, rainy, snowy-rainy, partlycloudy-light-snow, partlycloudy-snow, light-snow, snowy, partlycloudy-lightning, lightning).
|
||||
- **conditionexact**: A symbol with the full current weather condition (in English).
|
||||
- **symbol**: A symbol for the current weather with the full current condition (in Dutch).
|
||||
- **humidity**: The relative humidity (%).
|
||||
- **temperature**: The current temperature (in [C](https://en.wikipedia.org/wiki/Celsius)).
|
||||
- **groundtemperature**: The current ground temperature (in [C](https://en.wikipedia.org/wiki/Celsius)).
|
||||
- **windspeed**: The wind speed in [m/s](https://en.wikipedia.org/wiki/M/s).
|
||||
- **windforce**: The wind speed/force in [Bft](https://en.wikipedia.org/wiki/Beaufort_scale).
|
||||
- **winddirection**: Where the wind is coming from: N (North),Z (south), NO (North-East), etc.
|
||||
- **windazimuth**: Where the wind is coming from in degrees, with true north at 0° and progressing clockwise.
|
||||
- **pressure**: The sea-level air pressure in [hPa](https://en.wikipedia.org/wiki/Hectopascal).
|
||||
- **visibility**: Visibility in meters ([m](https://en.wikipedia.org/wiki/Metre)).
|
||||
- **windgust**: The wind speed of wind gusts ([m/s](https://en.wikipedia.org/wiki/M/s)).
|
||||
- **precipitation**: The amount of precipitation/rain in mm/h.
|
||||
- **precipitation_forecast_average**: The average expected precipitation/rain in mm/h within the given time-frame.
|
||||
- **precipitation_forecast_total**: The total expected precipitation/rain in mm within the given time-frame. The total expected rain in the configured time-frame will be equal to _precipitation_forecast_total_/_timeframe_ mm/min. So, with time-frame configured to 30 minutes and a value of 5, the expected rain is 5 mm in 30 minutes, which is the same as 10 mm/h. If time-frame is set to 90 minutes and a value of 5, the expected rain is 5 mm in 90 minutes, which is equal to 3.3 mm/h.
|
||||
- **irradiance**: Sun intensity in Watt per square meter ([W/m2](https://en.wikipedia.org/wiki/W/m2)).
|
||||
- **temperature_1d** [<sup>[1d]</sup>](#1d): The forecasted temperature (in [C](https://en.wikipedia.org/wiki/Celsius)).
|
||||
- **mintemp_1d** [<sup>[1d]</sup>](#1d): The forecasted minimum temperature (in [C](https://en.wikipedia.org/wiki/Celsius)).
|
||||
- **rainchance_1d** [<sup>[1d]</sup>](#1d): The forecasted chance for rain (%).
|
||||
- **sunchance_1d** [<sup>[1d]</sup>](#1d): The forecasted chance for sun (%).
|
||||
- **rain_1d** [<sup>[1d]</sup>](#1d): The forecasted amount of rain in [mm](https://en.wikipedia.org/wiki/Millimetre).
|
||||
- **snow_1d** [<sup>[1d]</sup>](#1d): The forecasted amount of snow in [cm](https://en.wikipedia.org/wiki/Centimetre).
|
||||
- **windforce_1d** [<sup>[1d]</sup>](#1d): The expected windforce in [Bft](https://en.wikipedia.org/wiki/Beaufort_scale).
|
||||
- **conditioncode_1d** [<sup>[1d]</sup>](#1d): Symbol and condition code of the expected condition.
|
||||
- **condition_1d** [<sup>[1d]</sup>](#1d): Symbol and expected condition.
|
||||
- **conditiondetailed_1d** [<sup>[1d]</sup>](#1d): Symbol and detailed expected condition.
|
||||
- **conditionexact_1d** [<sup>[1d]</sup>](#1d): Symbol and full expected condition (in English).
|
||||
- **symbol_1d** [<sup>[1d]</sup>](#1d): Symbol and full expected condition (in Dutch).
|
||||
## {% linkable_title The `Name` Variable %}
|
||||
|
||||
If you specify a name, the sensors will get an entity name of `sensor.[name]_[default sensor display name]`, for example:
|
||||
|
||||
## Daily forecasts
|
||||
- `sensor.lopik_temperature`, since the name of the sensor is set to `lopik` and the default display name for monitored condition `temperature` is `Temperature`.
|
||||
- `sensor.lopik_wind_force`, since the name of the sensor is set to `lopik` and the default display name for monitored condition `windforce` is `Wind force`.
|
||||
|
||||
Conditions above marked with <a name="1d">[1d]</a> are daily forecasts. To get forecast for different day, replace the number
|
||||
If no name is specified the sensors will be called `sensor.br_[default sensor display name]`, for example:
|
||||
|
||||
- `sensor.br_wind_speed`, since no name has been set for the sensor and the default display name for monitored condition `windspeed` is `Wind speed`.
|
||||
- `sensor.br_ground_temperature`, since no name has been set for the sensor and the default display name for monitored condition `groundtemperature` is `Ground Temperature`.
|
||||
|
||||
## {% linkable_title Daily forecasts %}
|
||||
|
||||
Conditions above marked with `1d` are daily forecasts. To get forecast for different day, replace the number
|
||||
in `_1d` part of the sensor name. Valid values are from `1` to `5`.
|
||||
|
||||
|
||||
## Configuration examples
|
||||
## {% linkable_title Configuration examples %}
|
||||
|
||||
Full configuration example (excluding forecasted conditions) where location is manually specified:
|
||||
|
||||
@ -119,7 +171,6 @@ Full configuration example (excluding forecasted conditions) where location is m
|
||||
- precipitation_forecast_total
|
||||
```
|
||||
|
||||
|
||||
Configuration example with current condition and (some) forecasted values:
|
||||
|
||||
```yaml
|
||||
|
@ -28,12 +28,28 @@ sensor:
|
||||
- type: current_hour_average
|
||||
```
|
||||
|
||||
Configuration variables:
|
||||
|
||||
- **monitored_feeds** array (*Required*): Feeds to monitor.
|
||||
- **type** (*Required*): Name of the feed.
|
||||
- **five_minute**: The latest 5-minute price in cents.
|
||||
- **current_hour_average**: The latest current hour average price in cents.
|
||||
- **name** (*Optional*): Custom name for the sensor.
|
||||
- **offset** (*Optional*): The pricing feeds provide only the *supply* cost of the electricity. The offset parameter allows you to provide a fixed constant that will be added to the pricing data to provide a more accurate representation of the total electricity cost per kWh.
|
||||
|
||||
{% configuration %}
|
||||
monitored_feeds:
|
||||
description: Feeds to monitor.
|
||||
required: true
|
||||
type: list
|
||||
keys:
|
||||
type:
|
||||
description: Name of the feed.
|
||||
required: true
|
||||
type: list
|
||||
keys:
|
||||
five_minute:
|
||||
description: The latest 5-minute price in cents.
|
||||
current_hour_average:
|
||||
description: The latest current hour average price in cents.
|
||||
name:
|
||||
description: Custom name for the sensor.
|
||||
required: false
|
||||
type: string
|
||||
offset:
|
||||
description: The pricing feeds provide only the *supply* cost of the electricity. The offset parameter allows you to provide a fixed constant that will be added to the pricing data to provide a more accurate representation of the total electricity cost per kWh.
|
||||
required: false
|
||||
default: 0.0
|
||||
type: float
|
||||
{% endconfiguration %}
|
||||
|
@ -36,94 +36,161 @@ sensor:
|
||||
- nearest_storm_distance
|
||||
```
|
||||
|
||||
Configuration variables:
|
||||
{% configuration %}
|
||||
api_key:
|
||||
description: Your API key.
|
||||
required: true
|
||||
type: string
|
||||
name:
|
||||
description: Additional name for the sensors.
|
||||
required: false
|
||||
default: Dark Sky
|
||||
type: string
|
||||
forecast:
|
||||
description: List of days in the 7 day forecast you would like to receive data on, starting with tomorrow as day 1. Any `monitored_condition` with a daily forecast by DarkSky will generate a sensor tagged with `_<day>`.
|
||||
required: false
|
||||
type: list
|
||||
language:
|
||||
description: The desired language of the summary properties. The valid options are further down in a table.
|
||||
required: false
|
||||
default: "`en`"
|
||||
type: string
|
||||
latitude:
|
||||
description: Latitude coordinate to monitor weather of (required if **longitude** is specified).
|
||||
required: false
|
||||
default: coordinates defined in your `configuration.yaml`
|
||||
type: float
|
||||
longitude:
|
||||
description: Longitude coordinate to monitor weather of (required if **latitude** is specified).
|
||||
required: false
|
||||
default: coordinates defined in your `configuration.yaml`
|
||||
type: float
|
||||
monitored_conditions:
|
||||
description: Conditions to display in the frontend.
|
||||
required: true
|
||||
type: list
|
||||
keys:
|
||||
summary:
|
||||
description: A human-readable text summary of the current conditions.
|
||||
precip_type:
|
||||
description: The type of precipitation occurring.
|
||||
precip_intensity:
|
||||
description: The average expected intensity of precipitation occurring.
|
||||
precip_probability:
|
||||
description: A value between 0 and 1 which is representing the probability of precipitation.
|
||||
precip_accumulation:
|
||||
description: Daily snow accumulation. Returns unknown if no snow accumulation available.
|
||||
temperature:
|
||||
description: The current temperature.
|
||||
apparent_temperature:
|
||||
description: A numerical value representing the apparent (or "feels like") temperature.
|
||||
dew_point:
|
||||
description: The dew point.
|
||||
wind_speed:
|
||||
description: The wind speed.
|
||||
wind_gust:
|
||||
description: The wind gust.
|
||||
wind_bearing:
|
||||
description: Where the wind is coming from in degrees, with true north at 0° and progressing clockwise.
|
||||
cloud_cover:
|
||||
description: The percentage of sky occluded by clouds.
|
||||
humidity:
|
||||
description: The relative humidity.
|
||||
pressure:
|
||||
description: The sea-level air pressure in millibars.
|
||||
visibility:
|
||||
description: The average visibility.
|
||||
ozone:
|
||||
description: The columnar density of total atmospheric ozone in Dobson.
|
||||
minutely_summary:
|
||||
description: A human-readable text summary for the next hour.
|
||||
hourly_summary:
|
||||
description: A human-readable text summary for the next 24 hours.
|
||||
daily_summary:
|
||||
description: A human-readable text summary for the next 7 days.
|
||||
temperature_high:
|
||||
description: Today's daytime expected high temperature.
|
||||
temperature_low:
|
||||
description: Today's overnight expected low temperature.
|
||||
apparent_temperature_high:
|
||||
description: Today's daytime expected apparent high temperature.
|
||||
apparent_temperature_low:
|
||||
description: Today's overnight expected apparent low temperature.
|
||||
precip_intensity_max:
|
||||
description: Today's expected maximum intensity of precipitation.
|
||||
uv_index:
|
||||
description: The current UV index.
|
||||
moon_phase:
|
||||
description: The fractional part of the lunation number during the given day.
|
||||
units:
|
||||
description: Specify the unit system. Valid options are `auto`, `us`, `si`, `ca`, `uk` and `uk2`. `auto` will let Dark Sky decide the unit system based on location.
|
||||
required: false
|
||||
default: "`si` or `us`, based on the temperature preference in Home Assistant."
|
||||
type: string
|
||||
update_interval:
|
||||
description: "Minimum time interval between updates. Supported formats: `update_interval: 'HH:MM:SS'`, `update_interval: 'HH:MM'` and Time period dictionary (see example below)."
|
||||
required: false
|
||||
default: 2 minutes
|
||||
type: time
|
||||
{% endconfiguration %}
|
||||
|
||||
- **api_key** (*Required*): Your API key.
|
||||
- **name** (*Optional*): Additional name for the sensors. Default to platform name.
|
||||
- **forecast** array (*Optional*): List of days in the 7 day forecast you would like to receive data on, starting with tomorrow as day 1. Any `monitored_condition` with a daily forecast by DarkSky will generate a sensor tagged with `_<day>`.
|
||||
- **language** (*Optional*): The desired language of the summary properties. Valid options are
|
||||
- `ar`: Arabic
|
||||
- `az`: Azerbaijani
|
||||
- `be`: Belarusian
|
||||
- `bg`: Bulgarian
|
||||
- `bs`: Bosnian
|
||||
- `ca`: Catalan
|
||||
- `cs`: Czech
|
||||
- `da`: Danish
|
||||
- `de`: German
|
||||
- `el`: Greek
|
||||
- `en`: English (which is the default)
|
||||
- `es`: Spanish
|
||||
- `et`: Estonian
|
||||
- `fi`: Finnish
|
||||
- `fr`: French
|
||||
- `hr`: Croatian
|
||||
- `hu`: Hungarian
|
||||
- `id`: Indonesian
|
||||
- `is`: Icelandic
|
||||
- `it`: Italian
|
||||
- `ja`: Japanese
|
||||
- `ka`: Georgian
|
||||
- `kw`: Cornish
|
||||
- `nb`: Norwegian Bokmål
|
||||
- `nl`: Dutch
|
||||
- `pl`: Polish
|
||||
- `pt`: Portuguese
|
||||
- `ro`: Romanian
|
||||
- `ru`: Russian
|
||||
- `sk`: Slovak
|
||||
- `sl`: Slovenian
|
||||
- `sr`: Serbian
|
||||
- `sv`: Swedish
|
||||
- `tet`: Tetum
|
||||
- `tr`: Turkish
|
||||
- `uk`: Ukrainian
|
||||
- `x-pig-latin`: Igpay Atinlay
|
||||
- `zh`: simplified Chinese
|
||||
- `zh-tw`: traditional Chinese
|
||||
- **latitude** (*Optional*): Latitude coordinate to monitor weather of (required if **longitude** is specified), defaults to coordinates defined in your `configuration.yaml`
|
||||
- **longitude** (*Optional*): Longitude coordinate to monitor weather of (required if **latitude** is specified), defaults to coordinates defined in your `configuration.yaml`
|
||||
- **monitored_conditions** array (*Required*): Conditions to display in the frontend.
|
||||
- **summary**: A human-readable text summary of the current conditions.
|
||||
- **precip_type**: The type of precipitation occurring.
|
||||
- **precip_intensity**: The average expected intensity of precipitation occurring.
|
||||
- **precip_probability**: A value between 0 and 1 which is representing the probability of precipitation.
|
||||
- **precip_accumulation**: Daily snow accumulation. Returns unknown if no snow accumulation available.
|
||||
- **temperature**: The current temperature.
|
||||
- **apparent_temperature**: A numerical value representing the apparent (or "feels like") temperature.
|
||||
- **dew_point**: The dew point.
|
||||
- **wind_speed**: The wind speed.
|
||||
- **wind_gust**: The wind gust.
|
||||
- **wind_bearing**: Where the wind is coming from in degrees, with true north at 0° and progressing clockwise.
|
||||
- **cloud_cover**: The percentage of sky occluded by clouds.
|
||||
- **humidity**: The relative humidity.
|
||||
- **pressure**: The sea-level air pressure in millibars.
|
||||
- **visibility**: The average visibility.
|
||||
- **ozone**: The columnar density of total atmospheric ozone in Dobson.
|
||||
- **minutely_summary**: A human-readable text summary for the next hour.
|
||||
- **hourly_summary**: A human-readable text summary for the next 24 hours.
|
||||
- **daily_summary**: A human-readable text summary for the next 7 days.
|
||||
- **temperature_high**: Today's daytime expected high temperature.
|
||||
- **temperature_low**: Today's overnight expected low temperature.
|
||||
- **apparent_temperature_high**: Today's daytime expected apparent high temperature.
|
||||
- **apparent_temperature_low**: Today's overnight expected apparent low temperature.
|
||||
- **precip_intensity_max**: Today's expected maximum intensity of precipitation.
|
||||
- **uv_index**: The current UV index.
|
||||
- **moon_phase**: The fractional part of the lunation number during the given day.
|
||||
- **units** (*Optional*): Specify the unit system. Default to `si` or `us` based on the temperature preference in Home Assistant. Other options are `auto`, `us`, `si`, `ca`, `uk` and `uk2`.
|
||||
`auto` will let Dark Sky decide the unit system based on location.
|
||||
- **update_interval** (*Optional*): Minimum time interval between updates. Default is 2 minutes. Supported formats:
|
||||
- `update_interval: 'HH:MM:SS'`
|
||||
- `update_interval: 'HH:MM'`
|
||||
- Time period dictionary, e.g.:
|
||||
<pre>update_interval:
|
||||
# At least one of these must be specified:
|
||||
days: 0
|
||||
hours: 0
|
||||
minutes: 3
|
||||
seconds: 30
|
||||
milliseconds: 0
|
||||
</pre>
|
||||
#### {% linkable_title Time period dictionary example %}
|
||||
|
||||
```yaml
|
||||
update_interval:
|
||||
# At least one of these must be specified:
|
||||
days: 0
|
||||
hours: 0
|
||||
minutes: 3
|
||||
seconds: 30
|
||||
milliseconds: 0
|
||||
```
|
||||
|
||||
#### {% linkable_title Language options %}
|
||||
|
||||
All language options are described in this table that you can use for the dark sky sensor.
|
||||
|
||||
|Language|Variable Code|
|
||||
|---|---|
|
||||
|Arabic|`ar`|
|
||||
|Azerbaijani|`az`|
|
||||
|Belarusian|`be`|
|
||||
|Bulgarian|`bg`|
|
||||
|Bosnian|`bs`|
|
||||
|Catalan|`ca`|
|
||||
|Czech|`cs`|
|
||||
|Danish|`da`|
|
||||
|German|`de`|
|
||||
|Greek|`el`|
|
||||
|English|`en`|
|
||||
|Spanish|`es`|
|
||||
|Estonian|`et`|
|
||||
|Finnish|`fi`|
|
||||
|French|`fr`|
|
||||
|Croatian|`hr`|
|
||||
|Hungarian|`hu`|
|
||||
|Indonesian|`id`|
|
||||
|Icelandic|`is`|
|
||||
|Italian|`it`|
|
||||
|Japanese|`ja`|
|
||||
|Georgian|`ka`|
|
||||
|Cornish|`kw`|
|
||||
|Norwegian Bokmål|`nb`|
|
||||
|Dutch|`nl`|
|
||||
|Polish|`pl`|
|
||||
|Portuguese|`pt`|
|
||||
|Romanian|`ro`|
|
||||
|Russian|`ru`|
|
||||
|Slovak|`sk`|
|
||||
|Slovenian|`sl`|
|
||||
|Serbian|`sr`|
|
||||
|Swedish|`sv`|
|
||||
|Tetum|`tet`|
|
||||
|Turkish|`tr`|
|
||||
|Ukrainian|`uk`|
|
||||
|Igpay Atinlay|`x-pig-latin`|
|
||||
|simplified Chinese|`zh`|
|
||||
|traditional Chinese|`zh-tw`|
|
||||
|
||||
<p class='note warning'>
|
||||
While the platform is called "darksky" the sensors will show up in Home Assistant as "dark_sky" (eg: sensor.dark_sky_summary).
|
||||
|
@ -13,7 +13,6 @@ ha_iot_class: "Cloud Polling"
|
||||
ha_release: "0.40"
|
||||
---
|
||||
|
||||
|
||||
The `dnsip` sensor will expose an IP address, fetched via DNS resolution, as its value. There are two operational modes:
|
||||
|
||||
1. When you enable the sensor with minimal configuration, it will query the [OpenDNS](https://www.opendns.com/) nameservers with the hostname `myip.opendns.com`, which will resolve to your external/public IP address.
|
||||
@ -31,14 +30,38 @@ sensor:
|
||||
- platform: dnsip
|
||||
```
|
||||
|
||||
Configuration variables:
|
||||
|
||||
- **hostname** (*Optional*): The hostname for which to perform the DNS query. Defaults to `myip.opendns.com` (special hostname that resolves to your public IP).
|
||||
- **name** (*Optional*): Name of the sensor. Defaults to `myip` or hostname without dots if specified.
|
||||
- **resolver** (*Optional*): The DNS server to target the query at. Defaults to `208.67.222.222` (OpenDNS).
|
||||
- **ipv6** (*Optional*): Set this to `true` or `false` if IPv6 should be used. When resolving the public IP, this will be the IP of the machine where Home Assistant is running on.
|
||||
- **resolver_ipv6** (*Optional*): The IPv6 DNS server to target the query at. Defaults to `2620:0:ccc::2` (OpenDNS).
|
||||
- **scan_interval** (*Optional*): Defines number of seconds for polling interval. Defaults to `120` seconds.
|
||||
{% configuration %}
|
||||
hostname:
|
||||
description: The hostname for which to perform the DNS query.
|
||||
required: false
|
||||
default: "`myip.opendns.com` (special hostname that resolves to your public IP)"
|
||||
type: string
|
||||
name:
|
||||
description: Name of the sensor.
|
||||
required: false
|
||||
default: "`myip` or hostname without dots if specified"
|
||||
type: string
|
||||
resolver:
|
||||
description: The DNS server to target the query at.
|
||||
required: false
|
||||
default: "`208.67.222.222` (OpenDNS)"
|
||||
type: string
|
||||
ipv6:
|
||||
description: Set this to `true` or `false` if IPv6 should be used. When resolving the public IP, this will be the IP of the machine where Home Assistant is running on.
|
||||
required: false
|
||||
default: false
|
||||
type: boolean
|
||||
resolver_ipv6:
|
||||
description: The IPv6 DNS server to target the query at.
|
||||
required: false
|
||||
default: "`2620:0:ccc::2` (OpenDNS)"
|
||||
type: string
|
||||
scan_interval:
|
||||
description: Defines number of seconds for polling interval.
|
||||
required: false
|
||||
default: "`120`"
|
||||
type: integer
|
||||
{% endconfiguration %}
|
||||
|
||||
## {% linkable_title Extended example %}
|
||||
|
||||
|
@ -16,12 +16,12 @@ ha_iot_class: "Local Polling"
|
||||
The `eddystone_temperature` sensor platform reads temperature information from Bluetooth LE advertisements transmitted by [Eddystone](https://en.wikipedia.org/wiki/Eddystone_(Google)) beacons. Your beacons must be configured to transmit UID frames (for identification) and TLM frames (for temperature).
|
||||
All beacons that support the Eddystone protocol, have a temperature sensor and can transmit TLM frames are compatible with this platform. For example [Gimbal](https://store.gimbal.com/collections/beacons/), [Estimote](http://estimote.com/) or [kontakt.io](https://kontakt.io/). For more manufacturers see [this overview](https://developers.google.com/beacons/eddystone#beacon_manufacturers) by Google.
|
||||
|
||||
## Requirements
|
||||
## {% linkable_title Requirements %}
|
||||
|
||||
As this platform uses `bluez` to scan for Bluetooth LE devices **a Linux OS with bluez installed** is required. In addition to that, the `libbluetooth` headers need to be installed:
|
||||
|
||||
```bash
|
||||
$ sudo apt-get install libbluetooth-dev
|
||||
$ sudo apt-get install libbluetooth-dev
|
||||
```
|
||||
|
||||
Scanning for Bluetooth LE devices also requires special permissions. To grant these to the python executable execute the following:
|
||||
@ -46,10 +46,33 @@ sensor:
|
||||
namespace: "112233445566778899AA"
|
||||
instance: "000000000002"
|
||||
```
|
||||
Configuration variables:
|
||||
- **bt_device_id** (*Optional*): The id of the Bluetooth device that should be used for scanning (hci*X*). You can find the correct one using `hcitool dev` (default: 0).
|
||||
- **beacons** array (*Required*): The beacons that should be monitored.
|
||||
- **[entry]** (*Required*): Name of the beacon.
|
||||
- **namespace** (*Required*): Namespace ID of the beacon in hexadecimal notation. Must be exactly 20 characters (10 bytes) long.
|
||||
- **instance** (*Required*): Instance ID of the beacon in hexadecimal notation. Must be exactly 12 characters (6 bytes) long.
|
||||
- **name** (*Optional*): Friendly name of the beacon.
|
||||
|
||||
{% configuration %}
|
||||
bt_device_id:
|
||||
description: The id of the Bluetooth device that should be used for scanning (hci*X*). You can find the correct one using `hcitool dev`.
|
||||
required: false
|
||||
default: 0
|
||||
type: integer
|
||||
beacons:
|
||||
description: The beacons that should be monitored.
|
||||
required: true
|
||||
type: list
|
||||
keys:
|
||||
entry:
|
||||
description: Name of the beacon.
|
||||
required: true
|
||||
type: list
|
||||
keys:
|
||||
namespace:
|
||||
description: Namespace ID of the beacon in hexadecimal notation. Must be exactly 20 characters (10 bytes) long.
|
||||
required: true
|
||||
type: string
|
||||
instance:
|
||||
description: Instance ID of the beacon in hexadecimal notation. Must be exactly 12 characters (6 bytes) long.
|
||||
required: true
|
||||
type: string
|
||||
name:
|
||||
description: Friendly name of the beacon.
|
||||
required: false
|
||||
type: string
|
||||
{% endconfiguration %}
|
||||
|
@ -47,37 +47,65 @@ sensor:
|
||||
- voltage_3
|
||||
```
|
||||
|
||||
Configuration variables:
|
||||
{% configuration %}
|
||||
display_options:
|
||||
description: List of readings to monitor.
|
||||
required: false
|
||||
default: All the conditions
|
||||
type: list
|
||||
keys:
|
||||
temperature:
|
||||
description: Ambient temperature in Celsius. Since the sensor is close to the Raspberry Pi, that might affect the accuracy of the reading (ie. the Pi might heat up the sensor)
|
||||
pressure:
|
||||
description: Atmospheric pressure in hPa.
|
||||
light:
|
||||
description: Ambient light, as an integer in the 0-65535 range.
|
||||
light_red:
|
||||
description: Red color reading scaled to the ambient light, as an integer in the 0-255 range.
|
||||
light_green:
|
||||
description: Green color reading scaled to the ambient light, as an integer in the 0-255 range.
|
||||
light_blue:
|
||||
description: Blue color reading scaled to the ambient light, as an integer in the 0-255 range.
|
||||
accelerometer_x:
|
||||
description: Accelerometer reading in units of G, along the X axis.
|
||||
accelerometer_y:
|
||||
description: Accelerometer reading in units of G, along the Y axis.
|
||||
accelerometer_z:
|
||||
description: Accelerometer reading in units of G, along the Z axis.
|
||||
magnetometer_x:
|
||||
description: Magnetometer reading, the X component of the raw vector.
|
||||
magnetometer_y:
|
||||
description: Magnetometer reading, the y component of the raw vector.
|
||||
magnetometer_z:
|
||||
description: Magnetometer reading, the z component of the raw vector.
|
||||
voltage_0:
|
||||
description: Voltage reading on Analog In 0 in units of V.
|
||||
voltage_1:
|
||||
description: Voltage reading on Analog In 1 in units of V.
|
||||
voltage_2:
|
||||
description: Voltage reading on Analog In 2 in units of V.
|
||||
voltage_3:
|
||||
description: Voltage reading on Analog In 3 in units of V.
|
||||
use_led:
|
||||
description: Declaring that the on-board LEDs are *not* used for the color measurements thus these readings are based on the ambient light. If the value is set to True, the on-board LEDs will blink whenever a reading is taken.
|
||||
required: false
|
||||
default: false
|
||||
type: boolean
|
||||
{% endconfiguration %}
|
||||
|
||||
- **display_options** (*Optional*) array: List of readings to monitor. Default is monitoring all of them:
|
||||
- **temperature**: ambient temperature in Celsius. Since the sensor is close to the Raspberry Pi, that might affect the accuracy of the reading (ie. the Pi might heat up the sensor)
|
||||
- **pressure**: atmospheric pressure in hPa.
|
||||
- **light**: ambient light, as an integer in the 0-65535 range
|
||||
- **light_red**: red color reading scaled to the ambient light, as an integer in the 0-255 range
|
||||
- **light_green**: green color reading scaled to the ambient light, as an integer in the 0-255 range
|
||||
- **light_blue**: blue color reading scaled to the ambient light, as an integer in the 0-255 range
|
||||
- **accelerometer_x**: accelerometer reading in units of G, along the X axis
|
||||
- **accelerometer_y**: accelerometer reading in units of G, along the Y axis
|
||||
- **accelerometer_z**: accelerometer reading in units of G, along the Z axis
|
||||
- **magnetometer_x**: magnetometer reading, the X component of the raw vector
|
||||
- **magnetometer_y**: magnetometer reading, the Y component of the raw vector
|
||||
- **magnetometer_z**: magnetometer reading, the X component of the raw vector
|
||||
- **voltage_0**: voltage reading on Analog In 0 in units of V
|
||||
- **voltage_1**: voltage reading on Analog In 1 in units of V
|
||||
- **voltage_2**: voltage reading on Analog In 2 in units of V
|
||||
- **voltage_3**: voltage reading on Analog In 3 in units of V
|
||||
- **use_led** (*Optional*) True / False boolean; Default value is False, declaring that the on-board LEDs are *not* used for the color measurements thus these readings are based on the ambient light. If the value is set to True, the on-board LEDs will blink whenever a reading is taken.
|
||||
### {% linkable_title Notes %}
|
||||
|
||||
### Notes
|
||||
#### X, Y, Z axes
|
||||
|
||||
* **X, Y, Z axes**
|
||||
* X is parallel with the long edge of the board
|
||||
* Y is parallel with the short edge of the board
|
||||
* Z is perpendicular to the board
|
||||
* **Voltages**
|
||||
* voltage readings are done in the 0-3.3V range, please do not connect higher voltages than that! See the [Enviro pHAT's getting started guide](https://learn.pimoroni.com/tutorial/sandyj/getting-started-with-enviro-phat) regarding how to make a voltage divider
|
||||
- X is parallel with the long edge of the board
|
||||
- Y is parallel with the short edge of the board
|
||||
- Z is perpendicular to the board
|
||||
|
||||
### Give the values friendly names & icons
|
||||
#### Voltages
|
||||
|
||||
- voltage readings are done in the 0-3.3V range, please do not connect higher voltages than that! See the [Enviro pHAT's getting started guide](https://learn.pimoroni.com/tutorial/sandyj/getting-started-with-enviro-phat) regarding how to make a voltage divider
|
||||
|
||||
### {% linkable_title Give the values friendly names & icons %}
|
||||
|
||||
Add something like the following to your [customize section](/docs/configuration/customizing-devices/):
|
||||
|
||||
|
@ -13,7 +13,6 @@ ha_iot_class: "Local Polling"
|
||||
ha_release: 0.45
|
||||
---
|
||||
|
||||
|
||||
The `file` sensor platform reads the entries from a plain-text file and shows the found value. Only the last line of the file is used. This is similar to do `$ tail -n 1 sensor.txt` on the command-line. Note that file paths must be added to [whitelist_external_dirs](/docs/configuration/basic/).
|
||||
|
||||
## {% linkable_title Configuration %}
|
||||
@ -27,12 +26,25 @@ sensor:
|
||||
file_path: /home/user/.homeassistant/sensor-data.txt
|
||||
```
|
||||
|
||||
Configuration variables:
|
||||
|
||||
- **file_path** (*Required*): path to file that stores the sensor data.
|
||||
- **name** (*Optional*): Name of the sensor to use in the frontend. Defaults to `File`.
|
||||
- **unit_of_measurement** (*Optional*): Defines the units of measurement of the sensor, if any.
|
||||
- **value_template** (*Optional*): Defines a [template](/docs/configuration/templating/#processing-incoming-data) to extract a value from the payload.
|
||||
{% configuration %}
|
||||
file_path:
|
||||
description: Path to file that stores the sensor data.
|
||||
required: true
|
||||
type: string
|
||||
name:
|
||||
description: Name of the sensor to use in the frontend.
|
||||
required: false
|
||||
default: file name
|
||||
type: string
|
||||
unit_of_measurement:
|
||||
description: Defines the units of measurement of the sensor, if any.
|
||||
required: false
|
||||
type: string
|
||||
value_template:
|
||||
description: Defines a [template](/docs/configuration/templating/#processing-incoming-data) to extract a value from the payload.
|
||||
required: false
|
||||
type: template
|
||||
{% endconfiguration %}
|
||||
|
||||
## {% linkable_title Examples %}
|
||||
|
||||
@ -59,4 +71,3 @@ sensor:
|
||||
value_template: {% raw %}'{{ value_json.temperature }}'{% endraw %}
|
||||
unit_of_measurement: '°C'
|
||||
```
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
---
|
||||
layout: page
|
||||
title: "iOS"
|
||||
title: "iOS Sensor"
|
||||
description: "Instructions on how to use the iOS sensors with Home Assistant."
|
||||
date: 2018-04-06 08:00
|
||||
sidebar: true
|
||||
@ -14,4 +14,4 @@ ha_release: 0.31
|
||||
ha_iot_class: push
|
||||
---
|
||||
|
||||
The `ios` component is the Home Assistant part for using the iOS companion app. For further details please check the [iOS section](/docs/ecosystem/ios/) in the documentation for further details.
|
||||
The `ios` sensor platform is the Home Assistant part for using the iOS companion app. For further details please check the [iOS section](/docs/ecosystem/ios/) in the documentation for further details.
|
||||
|
@ -23,7 +23,7 @@ To add Météo-France to your installation, add the following to your `configura
|
||||
# Example configuration.yaml entry
|
||||
sensor:
|
||||
- platform: meteo_france
|
||||
postal_code: 76000
|
||||
postal_code: '76000'
|
||||
monitored_conditions:
|
||||
- temperature
|
||||
- weather
|
||||
|
@ -15,17 +15,21 @@ ha_iot_class: "Local Polling"
|
||||
|
||||
The `miflora` sensor platform allows one to monitor plant soil and air conditions. The [Mi Flora plant sensor](https://www.huahuacaocao.com/product) is a small Bluetooth Low Energy device that monitors the moisture and conductivity of the soil as well as ambient light and temperature. Since only one BLE device can be polled at a time, the library implements locking to prevent polling more than one device at a time.
|
||||
|
||||
# Install Bluetooth Backend
|
||||
There are "Chinese" and "International" versions available and there is a [report](https://community.home-assistant.io/t/miflora-showing-data-unknown/19550/8) that only the "International" works.
|
||||
|
||||
## {% linkable_title Install a Bluetooth Backend %}
|
||||
|
||||
Before configuring Home Assistant you need a Bluetooth backend and the MAC address of your sensor. Depending on your operating system, you may have to configure the proper Bluetooth backend for your system:
|
||||
|
||||
- On [Hass.io](/hassio/installation/): Miflora will work out of the box.
|
||||
- On a [generic Docker installation](/docs/installation/docker/): Works out of the box with `--net=host` and properly configured Bluetooth on the host.
|
||||
- On other Linux systems:
|
||||
- Preferred solution: Install the `bluepy` library (via pip). When using a virtual environment, make sure to use install the library in the right one.
|
||||
- Fallback solution: Install `gatttool` via your package manager. Depending on the distribution, the package name might be: `bluez`, `bluetooth`, `bluez-deprecated`
|
||||
- Preferred solution: Install the `bluepy` library (via pip). When using a virtual environment, make sure to use install the library in the right one.
|
||||
- Fallback solution: Install `gatttool` via your package manager. Depending on the distribution, the package name might be: `bluez`, `bluetooth`, `bluez-deprecated`
|
||||
- On Windows and MacOS there is currently no support for the [miflora library](https://github.com/open-homeautomation/miflora/).
|
||||
|
||||
# Scan for MAC address
|
||||
## {% linkable_title Scan for devices %}
|
||||
|
||||
Start a scan to determine the MAC addresses of the sensor (you can identify your sensor by looking for `Flower care` or `Flower mate` entries) using this command:
|
||||
|
||||
```bash
|
||||
@ -48,7 +52,8 @@ $ bluetoothctl
|
||||
|
||||
If you can't use `hcitool` or `bluetoothctl` but have access to an Android phone you can try `BLE Scanner` or similar scanner applications from the Play Store to easily find your sensor MAC address. If you are using Windows 10, try the `Microsoft Bluetooth LE Explorer` app from the Windows Store.
|
||||
|
||||
# Configure
|
||||
## {% linkable_title Configuration %}
|
||||
|
||||
To use your Mi Flora plant sensor in your installation, add the following to your `configuration.yaml` file:
|
||||
|
||||
```yaml
|
||||
@ -104,6 +109,8 @@ adapter:
|
||||
By default the sensor is only polled once every 20 minutes (`scan_interval` is 1200 seconds by default). On a Home Assistant restart sensor will report initial value. If you set `median: 3`, it will take _at least_ 40 minutes before the sensor will report an average value. Keep in mind though that reducing polling intervals will have a negative effect on the battery life.
|
||||
</p>
|
||||
|
||||
## {% linkable_title Full example %}
|
||||
|
||||
A full configuration example could look like the one below:
|
||||
|
||||
```yaml
|
||||
|
@ -98,7 +98,7 @@ sensor:
|
||||
- 'RB'
|
||||
- 'RE'
|
||||
- 'Bus'
|
||||
- 'S'
|
||||
- 'S-Bahn'
|
||||
- station: 3006907
|
||||
products: 'Bus'
|
||||
destinations: ['Wiesbaden Dernsches Gelände', 'Mainz Hauptbahnhof']
|
||||
@ -106,7 +106,7 @@ sensor:
|
||||
- station: 3006904
|
||||
lines: 'S8'
|
||||
max_journeys: 5
|
||||
products: 'S'
|
||||
products: 'S-Bahn'
|
||||
```
|
||||
|
||||
The first sensor will return S-Bahn, bus, RB and RE trains departures from Frankfurt Hauptbahnhof to Frankfurt Airport or Stadium that are at least 5 minutes away.
|
||||
|
@ -13,7 +13,6 @@ ha_release: 0.35
|
||||
ha_iot_class: "Local Push"
|
||||
---
|
||||
|
||||
|
||||
The `sensehat` sensor platform allows you to display information collected by a [Sense HAT](https://www.raspberrypi.org/products/sense-hat/) add-on board for Raspberry Pi.
|
||||
|
||||
## {% linkable_title Configuration %}
|
||||
@ -30,21 +29,37 @@ sensor:
|
||||
- pressure
|
||||
```
|
||||
|
||||
Configuration variables:
|
||||
{% configuration %}
|
||||
display_options:
|
||||
description: List of details to monitor.
|
||||
required: true
|
||||
default: "`memory_free`"
|
||||
type: list
|
||||
keys:
|
||||
temperature:
|
||||
description: Temperature
|
||||
humidity:
|
||||
description: Humidity
|
||||
pressure:
|
||||
description: Pressure
|
||||
name:
|
||||
description: Change the name of te sensor, for in the frontend.
|
||||
required: false
|
||||
type: string
|
||||
is_hat_attached:
|
||||
description: Declaring that the SenseHAT _is_ physically on the Raspberry Pi.
|
||||
required: false
|
||||
default: true
|
||||
type: boolean
|
||||
{% endconfiguration %}
|
||||
|
||||
- **display_options** (*Requires*) array: List of details to monitor. Defaults is `memory_free`.
|
||||
- 'temperature'
|
||||
- 'humidity'
|
||||
- 'pressure'
|
||||
is_hat_attached (Optional): True|False boolean; Default value is True declaring that the SenseHAT _is_ physically on the Raspberry Pi
|
||||
|
||||
|
||||
#### Customizing the Sense HAT data
|
||||
#### {% linkable_title Customizing the Sense HAT data %}
|
||||
|
||||
**Format the sensor values**
|
||||
Add the following to your `sensor`:
|
||||
|
||||
{% raw %}
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
sensor:
|
||||
@ -66,6 +81,7 @@ sensor:
|
||||
value_template: '{{ states.sensor.humidity.state | round(1) }}'
|
||||
unit_of_measurement: '%'
|
||||
```
|
||||
|
||||
{% endraw %}
|
||||
|
||||
**Give the values friendly names & icons**
|
||||
@ -98,7 +114,9 @@ group:
|
||||
- sensor.sensehat_humidity
|
||||
- sensor.sensehat_pressure
|
||||
```
|
||||
Add the _sense_hat group_ a group (_Kitchen for example_)
|
||||
|
||||
Add the sense_hat group (_Kitchen for example_)
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
group:
|
||||
@ -106,12 +124,11 @@ group:
|
||||
- group.sense_hat
|
||||
```
|
||||
|
||||
|
||||
### Directions for installing on Raspberry Pi All-In-One installer and HASSbian:
|
||||
### {% linkable_title Directions for installing on Raspberry Pi All-In-One installer and HASSbian: %}
|
||||
|
||||
Here are the steps to make the _SenseHAT_ sensor work _successfully_ with the virtual environment versions.
|
||||
|
||||
#### Install SenseHAT package to _homeassistant_venv_
|
||||
#### {% linkable_title Install SenseHAT package to _homeassistant_venv_ %}
|
||||
|
||||
```bash
|
||||
# switch to the homeassistant_venv environment
|
||||
@ -123,13 +140,13 @@ pip3 install sense-hat
|
||||
# be patient, this will take a long while
|
||||
```
|
||||
|
||||
#### Return to `pi`
|
||||
#### {% linkable_title Return to `pi` %}
|
||||
|
||||
Type `exit` to quit out of the _homeassistant_venv_ back to your `pi` environment.
|
||||
|
||||
As all of the following steps should be under the `pi` user environment.
|
||||
|
||||
###### Install _RTIMU_
|
||||
#### {% linkable_title Install _RTIMU_ %}
|
||||
|
||||
```bash
|
||||
# pi user environment: Install RTIMU
|
||||
|
@ -9,7 +9,7 @@ sharing: true
|
||||
footer: true
|
||||
logo: sigfox.png
|
||||
ha_category: Sensor
|
||||
ha_iot_class: "Local Polling"
|
||||
ha_iot_class: "Cloud Polling"
|
||||
ha_release: 0.68
|
||||
---
|
||||
|
||||
|
@ -33,10 +33,10 @@ sensor:
|
||||
solar_angle:
|
||||
friendly_name: "Sun angle"
|
||||
unit_of_measurement: 'degrees'
|
||||
value_template: "{{ states.sun.sun.attributes.elevation }}"
|
||||
value_template: "{{ state_attr('sun.sun', 'elevation') }}"
|
||||
|
||||
sunrise:
|
||||
value_template: "{{ states.sun.sun.attributes.next_rising }}"
|
||||
value_template: "{{ state_attr('sun.sun', 'next_rising') }}"
|
||||
```
|
||||
{% endraw %}
|
||||
|
||||
@ -103,7 +103,7 @@ sensor:
|
||||
solar_angle:
|
||||
friendly_name: "Sun Angle"
|
||||
unit_of_measurement: '°'
|
||||
value_template: "{{ '%+.1f'|format(states.sun.sun.attributes.elevation) }}"
|
||||
value_template: "{{ '%+.1f'|format(state_attr('sun.sun', 'elevation')) }}"
|
||||
```
|
||||
{% endraw %}
|
||||
|
||||
@ -162,7 +162,7 @@ sensor:
|
||||
value_template: >-
|
||||
{% if is_state('switch.kettle', 'off') %}
|
||||
off
|
||||
{% elif states.switch.kettle.attributes.kwh|float < 1000 %}
|
||||
{% elif state_attr('switch.kettle', 'kwh')|float < 1000 %}
|
||||
standby
|
||||
{% elif is_state('switch.kettle', 'on') %}
|
||||
on
|
||||
@ -309,8 +309,7 @@ sensor:
|
||||
|
||||
Useful entities to choose might be `sensor.date` which update once per day, or `sensor.time` which updates once per minute.
|
||||
|
||||
Note: If a template uses more than one sensor they can be listed
|
||||
|
||||
Note: [Time & Date Sensors](https://www.home-assistant.io/components/sensor.time_date/) used as an update trigger, must be configured. If a template uses more than one sensor they can be listed.
|
||||
|
||||
The alternative to this is to create an `Automation`using the new (81.0) service `homeassistant.update_entity` and list all entity's requiring updates and setting the interval based on time.
|
||||
|
||||
|
@ -48,3 +48,7 @@ Configuration options for the UPS Sensor:
|
||||
<p class='note warning'>
|
||||
The UPS sensor logs into the UPS My Choice website to scrape package data. It does not use an API. Use at your own risk.
|
||||
</p>
|
||||
|
||||
<p class='note info'>
|
||||
If the UPS sensor is throwing an error about not being able to login to the UPS My Choice website, it's likely because there is a new UPS Technology Agreement (UTA) preventing the scraper from accessing the package data. Login to UPS My Choice manually and accept the UTA to resolve this.
|
||||
</p>
|
||||
|
@ -25,12 +25,14 @@ shell_command:
|
||||
restart_pow: touch ~/.pow/restart.txt
|
||||
```
|
||||
|
||||
Configuration variables:
|
||||
{% configuration %}
|
||||
alias:
|
||||
description: Give the shell command a name (alias) as a variable and set the command you want to execute after the colon. e.g., `alias`:`the shell command you want to execute`.
|
||||
required: true
|
||||
type: string
|
||||
{% endconfiguration %}
|
||||
|
||||
- Alias for the command
|
||||
- Command itself.
|
||||
|
||||
The commands can be dynamic, using templates to insert values for arguments. When using templates, shell_command runs in a more secure environment which doesn't allow any shell helpers like automatically expanding the home dir `~` or using pipe symbols to run multiple commands. Similarly, only content after the first space can be generated by a template. This means the command name itself cannot be generated by a template, but it must be literally provided.
|
||||
The commands can be dynamic, using templates to insert values for arguments. When using templates, shell_command runs in a more secure environment which doesn't allow any shell helpers like automatically expanding the home dir `~` or using pipe symbols to run multiple commands. Similarly, only content after the first space can be generated by a template. This means the command name itself cannot be generated by a template, but it must be literally provided.
|
||||
|
||||
Any service data passed into the service call to activate the shell command will be available as a variable within the template.
|
||||
|
||||
@ -54,7 +56,7 @@ input_number:
|
||||
min: 18
|
||||
max: 32
|
||||
step: 1
|
||||
|
||||
|
||||
{% raw %}
|
||||
shell_command:
|
||||
set_ac_to_slider: 'irsend SEND_ONCE DELONGHI AC_{{ states.input_number.ac_temperature.state }}_AUTO'
|
||||
|
@ -23,7 +23,7 @@ This component provides the following platforms:
|
||||
- Climate - HVAC control. Allow you to control (turn on/off, set target temperature) your Tesla's HVAC system.
|
||||
- Switch - Charger and max range switch. Allow you to start/stop charging and set max range charging.
|
||||
|
||||
## {% linkable_title Configuration %}
|
||||
## {% linkable_title Configuration %}
|
||||
|
||||
To use Tesla in your installation, add the following to your `configuration.yaml` file:
|
||||
|
||||
|
@ -13,7 +13,7 @@ ha_release: 0.51
|
||||
ha_iot_class: "Local Polling"
|
||||
---
|
||||
|
||||
The `xiaomi miio` vacuum platform allows you to control the state of your [Xiaomi Mi Robot Vacuum](http://www.mi.com/roomrobot/).
|
||||
The `xiaomi miio` vacuum platform allows you to control the state of your [Xiaomi Mi Robot Vacuum](https://www.mi.com/roomrobot/).
|
||||
|
||||
Currently supported services are:
|
||||
|
||||
@ -135,9 +135,9 @@ The following table shows the units of measurement for each attribute:
|
||||
|
||||
<p class='note'>
|
||||
As per [python-miio issue 185](https://github.com/rytilahti/python-miio/issues/185) the Android Mi Home app no longer stores the token within the database (it's retrieved from Xiaomi servers from version 5.0.31+). Currently the only known fix is to uninstall, then install a downgraded version of the apk. Apkmirror is a trusted source for older versions of the app. [Mi-Home version 5.0.30](https://www.apkmirror.com/apk/xiaomi-inc/mihome/mihome-5-0-30-release/) is confirmed as working for the following Android methods. Using older version than 5.0.30 is not recommended as it might lack support for some newer devices like the Roborock S50.
|
||||
|
||||
The iPhone app still stores the token in the sqlite db as of v4.7.18 (July 17, 2018).
|
||||
|
||||
<br/> <br/>
|
||||
The iPhone app still stores the token in the sqlite db as of v4.9.1 (Nov 7, 2018).
|
||||
<br/> <br/>
|
||||
This token (32 hexadecimal characters) is required for the Xiaomi Mi Robot Vacuum, Mi Robot 2 (Roborock) Vacuum, Xiaomi Philips Lights and Xiaomi IR Remote. The Xiaomi Gateway uses another security method and requires a `key` (16 alphanumeric chars), which can be obtained
|
||||
easily via a hidden menu item at the Mi-Home app or using the `miio` command line tool.
|
||||
</p>
|
||||
@ -248,12 +248,12 @@ To fetch the token follow these instructions depending on your mobile phone plat
|
||||
|
||||
1. Configure the robot with the Mi-Home app.
|
||||
2. Using iTunes, create an unencrypted backup of your iPhone.
|
||||
3. Install [iBackup Viewer](http://www.imactools.com/iphonebackupviewer/), open it, and open your backup.
|
||||
3. Install [iBackup Viewer](https://www.imactools.com/iphonebackupviewer/), open it, and open your backup.
|
||||
4. Open the "Raw Data" module.
|
||||
5. Navigate to `com.xiaomi.mihome`.
|
||||
6. Search for a file that looks like this: `123456789_mihome.sqlite` – note that `_mihome.sqlite` is *not* the correct file.
|
||||
7. Save this file to your filesystem.
|
||||
8. Install [DB Browser for SQLite](http://sqlitebrowser.org/).
|
||||
8. Install [DB Browser for SQLite](https://sqlitebrowser.org/).
|
||||
9. Open DB Browser and load the `.sqlite` file you saved from your backup.
|
||||
10. Click on the `Execute SQL` tab.
|
||||
11. Input and run this query: `SELECT ZTOKEN FROM ZDEVICE WHERE ZMODEL LIKE "%vacuum%"`
|
||||
@ -267,3 +267,28 @@ To fetch the token follow these instructions depending on your mobile phone plat
|
||||
2. Install [BlueStacks](https://www.bluestacks.com).
|
||||
3. Set up the Mi-Home app in BlueStacks and login to synchronize devices.
|
||||
4. Use [BlueStacks Tweaker](https://forum.xda-developers.com/general/general/bluestacks-tweaker-2-tool-modifing-t3622681) to access the filesystem and retrieve the token.
|
||||
|
||||
#### {% linkable_title Selecting token manually (Windows and Android)%}
|
||||
|
||||
The following instruction explained an alternativ way, if MiToolKit didn't work.
|
||||
Software Required:
|
||||
- Android ADB is contained in [Android SDK](https://developer.android.com/studio/releases/platform-tools)
|
||||
- [Mi-Home version 5.0.30](https://www.apkmirror.com/apk/xiaomi-inc/mihome/mihome-5-0-30-release/)
|
||||
- [Android Backup Extractor](https://sourceforge.net/projects/adbextractor/)
|
||||
- [SQLite Browser](https://sqlitebrowser.org/)
|
||||
1. Install an old Version of MiHome (e.g. Mi-Home version 5.0.30) on your Android-Device
|
||||
2. Open MiHome, log-in and add your devices
|
||||
3. Enable USB-Debugging on your Android
|
||||
4. Create a backup from your MiHome App, by using adb
|
||||
```bash
|
||||
adb backup com.xiaomi.smarthome
|
||||
```
|
||||
Now the backup App opens on you Android-Device. You don't need to set a password, just click save.
|
||||
5. Extract the backup-file with android-backup-extractor
|
||||
```bash
|
||||
java -jar abe.jar unpack backup.ab backup.tar
|
||||
```
|
||||
After that, you kann open the file with WinRaR or what ever you like.
|
||||
6. Go to \apps\com.xiaomi.smarthome\db
|
||||
7. Open miio2.db with SQLite Browser
|
||||
8. You can find your device tokens in "devicerecord" table
|
||||
|
@ -8,7 +8,7 @@ comments: false
|
||||
sharing: true
|
||||
footer: true
|
||||
logo: waterfurnace.png
|
||||
ha_category: Irrigation
|
||||
ha_category: Sensor
|
||||
ha_release: 0.62
|
||||
ha_iot_class: "Cloud Polling"
|
||||
---
|
||||
|
@ -51,6 +51,7 @@ The `xiaomi_aqara` component allows you to integrate [Xiaomi](http://www.mi.com/
|
||||
- Aqara Intelligent Air Conditioner Controller Hub (lumi.acpartner.v1)
|
||||
- Decoupled mode of the Aqara Wall Switches (Single & Double)
|
||||
- Additional alarm events of the Gas and Smoke Detector: Analog alarm, battery fault alarm (smoke detector only), sensitivity fault alarm, I2C communication failure
|
||||
- Aqara HomeKit Gateway version(v3), as it is not supported by the Mi Home App, only the Aqara Home App.
|
||||
|
||||
## {% linkable_title Setup %}
|
||||
|
||||
|
@ -14,6 +14,7 @@ In Home Assistant 0.19 we introduced a new powerful feature: variables in script
|
||||
|
||||
The trigger data made is available during [template](/docs/configuration/templating/) rendering as the `trigger` variable.
|
||||
|
||||
{% raw %}
|
||||
```yaml
|
||||
# Example configuration.yaml entries
|
||||
automation:
|
||||
@ -23,28 +24,54 @@ automation:
|
||||
action:
|
||||
service: notify.notify
|
||||
data_template:
|
||||
message: >{% raw %}
|
||||
message: >
|
||||
Paulus just changed from {{ trigger.from_state.state }}
|
||||
to {{ trigger.to_state.state }}{% endraw %}
|
||||
to {{ trigger.to_state.state }}
|
||||
|
||||
automation 2:
|
||||
trigger:
|
||||
platform: mqtt
|
||||
topic: /notify/+
|
||||
action:
|
||||
service_template: >{% raw %}
|
||||
notify.{{ trigger.topic.split('/')[-1] }}{% endraw %}
|
||||
service_template: >
|
||||
notify.{{ trigger.topic.split('/')[-1] }}
|
||||
data_template:
|
||||
message: {% raw %}'{{ trigger.payload }}'{% endraw %}
|
||||
message: '{{ trigger.payload }}'
|
||||
|
||||
automation 3:
|
||||
trigger:
|
||||
# Multiple Entities for which you want to perform the same action.
|
||||
- platform: state
|
||||
entity_id:
|
||||
- light.bedroom_closet
|
||||
to: 'on'
|
||||
# Trigger when someone leaves the closet light on for 10 minutes.
|
||||
for: '00:10:00'
|
||||
- platform: state
|
||||
entity_id:
|
||||
- light.kiddos_closet
|
||||
to: 'on'
|
||||
for: '00:10:00'
|
||||
- platform: state
|
||||
entity_id:
|
||||
- light.linen_closet
|
||||
to: 'on'
|
||||
for: '00:10:00'
|
||||
action:
|
||||
- service: light.turn_off
|
||||
data_template:
|
||||
# Whichever entity triggers the automation we want to turn off THAT entity, not the others.
|
||||
entity_id: "{{ trigger.entity_id }}"
|
||||
```
|
||||
{% endraw %}
|
||||
|
||||
## {% linkable_title Important Template Rules %}
|
||||
|
||||
There are a few very important rules to remember when writing automation templates:
|
||||
|
||||
1. You ***must*** use `data_template` in place of `data` when using templates in the `data` section of a service call.
|
||||
1. You ***must*** use `service_template` in place of `service` when using templates in the `service` section of a service call.
|
||||
1. You ***must*** surround single-line templates with double quotes (`"`) or single quotes (`'`).
|
||||
1. You **must** use `data_template` in place of `data` when using templates in the `data` section of a service call.
|
||||
1. You **must** use `service_template` in place of `service` when using templates in the `service` section of a service call.
|
||||
1. You **must** surround single-line templates with double quotes (`"`) or single quotes (`'`).
|
||||
1. It is advised that you prepare for undefined variables by using `if ... is not none` or the [`default` filter](http://jinja.pocoo.org/docs/dev/templates/#default), or both.
|
||||
1. It is advised that when comparing numbers, you convert the number(s) to a [`float`](http://jinja.pocoo.org/docs/dev/templates/#float) or an [`int`](http://jinja.pocoo.org/docs/dev/templates/#int) by using the respective [filter](http://jinja.pocoo.org/docs/dev/templates/#list-of-builtin-filters).
|
||||
1. While the [`float`](http://jinja.pocoo.org/docs/dev/templates/#float) and [`int`](http://jinja.pocoo.org/docs/dev/templates/#int) filters do allow a default fallback value if the conversion is unsuccessful, they do not provide the ability to catch undefined variables.
|
||||
|
@ -43,7 +43,7 @@ unit_system:
|
||||
required: false
|
||||
type: string
|
||||
time_zone:
|
||||
description: "Pick yours from here: [http://en.wikipedia.org/wiki/List_of_tz_database_time_zones](http://en.wikipedia.org/wiki/List_of_tz_database_time_zones)"
|
||||
description: "Pick your time zone from the column **TZ** of [Wikipedia's list of tz database time zones](http://en.wikipedia.org/wiki/List_of_tz_database_time_zones)"
|
||||
required: false
|
||||
type: string
|
||||
name:
|
||||
|
@ -92,7 +92,7 @@ See the documentation about [splitting the configuration](/docs/configuration/sp
|
||||
|
||||
### {% linkable_title Customizing entities with packages %}
|
||||
|
||||
It is possible to [customize entities](docs/configuration/customizing-devices/) within packages. Just create your customization entries under:
|
||||
It is possible to [customize entities](/docs/configuration/customizing-devices/) within packages. Just create your customization entries under:
|
||||
|
||||
```yaml
|
||||
homeassistant:
|
||||
|
@ -70,9 +70,9 @@ Now, lets assume that a blank file has been created in the Home Assistant config
|
||||
|
||||
```text
|
||||
automation.yaml
|
||||
zones.yaml
|
||||
sensors.yaml
|
||||
switches.yaml
|
||||
zone.yaml
|
||||
sensor.yaml
|
||||
switch.yaml
|
||||
device_tracker.yaml
|
||||
customize.yaml
|
||||
```
|
||||
@ -83,9 +83,9 @@ Inside the base configuration file add the following entries:
|
||||
|
||||
```yaml
|
||||
automation: !include automation.yaml
|
||||
zone: !include zones.yaml
|
||||
sensor: !include sensors.yaml
|
||||
switch: !include switches.yaml
|
||||
zone: !include zone.yaml
|
||||
sensor: !include sensor.yaml
|
||||
switch: !include switch.yaml
|
||||
device_tracker: !include device_tracker.yaml
|
||||
```
|
||||
|
||||
@ -111,7 +111,7 @@ This small example illustrates how the "split" files work. In this case, we star
|
||||
This (large) sensor configuration gives us another example:
|
||||
|
||||
```yaml
|
||||
### sensors.yaml
|
||||
### sensor.yaml
|
||||
### METEOBRIDGE #############################################
|
||||
- platform: tcp
|
||||
name: 'Outdoor Temp (Meteobridge)'
|
||||
|
@ -105,3 +105,9 @@ found character '\t' that cannot start any token
|
||||
```
|
||||
|
||||
This means that you've mistakenly entered a tab character, instead of spaces.
|
||||
|
||||
### {% linkable_title Upper and lower case %}
|
||||
|
||||
Home Assistant is case sensitive, a state of `'on'` is not the same as `'On'` or `'ON'`. Similarly an entity of `group.Doors` is not the same as `group.doors`.
|
||||
|
||||
If you're having trouble, check the case that Home Assistant is reporting in the dev-state menu, under *Developer tools*.
|
||||
|
@ -57,16 +57,21 @@ Creating a `.gitignore` file in your repository will tell Git which files NOT to
|
||||
Here is an example that will ignore everything but your YAML configuration.
|
||||
|
||||
```bash
|
||||
# Example .gitignore file for your config dir. Lines with ! will not be ignored.
|
||||
# Example .gitignore file for your config dir.
|
||||
# A * ensures that everything will be ignored.
|
||||
*
|
||||
|
||||
# You can whitelist files/folders with !, these will not be ignored.
|
||||
!*.yaml
|
||||
!.gitignore
|
||||
*.conf
|
||||
*.txt
|
||||
*.log
|
||||
!*.md
|
||||
|
||||
# Ignore folders.
|
||||
.storage
|
||||
.cloud
|
||||
.google.token
|
||||
|
||||
# Ensure these YAML files are ignored, otherwise your secret data/credentials will leak.
|
||||
ip_bans.yaml
|
||||
secrets.yaml
|
||||
known_devices.yaml
|
||||
|
@ -29,7 +29,7 @@ The app is available on the iOS App Store in every country that Apple supports.
|
||||
|
||||
The `ios` component is the companion component for the Home Assistant iOS app. While not required, adding the `ios` component to your setup will greatly enhance the iOS app with new notification, location and sensor functions not possible with a standalone app.
|
||||
|
||||
Loading the `ios` component will also load the [`device_tracker`][device-tracker], [`zeroconf`][zeroconf] and [`notify`][notify] platforms.
|
||||
Loading the `ios` component will also load the [`device_tracker`](/components/device_tracker), [`zeroconf`](/components/zeroconf) and [`notify`](/components/notify) platforms.
|
||||
|
||||
## {% linkable_title Setup %}
|
||||
|
||||
@ -37,7 +37,7 @@ Loading the `ios` component will also load the [`device_tracker`][device-tracker
|
||||
|
||||
The `ios` component will automatically be loaded under the following circumstances:
|
||||
|
||||
1. The [`discovery`][discovery] component is enabled.
|
||||
1. The [`discovery`](/components/discovery) component is enabled.
|
||||
2. You have just installed the app and are at the getting started screen.
|
||||
|
||||
Automated discovery and component loading only happens at first install of the app. You may need to wait a few minutes for the iOS component to load as the `discovery` component only scans the network every 5 minutes.
|
||||
@ -53,12 +53,10 @@ You may also manually load the `ios` component by adding the following to your c
|
||||
ios:
|
||||
```
|
||||
|
||||
Configuration variables:
|
||||
{% configuration %}
|
||||
push:
|
||||
description: Actionable push notifications configuration. See the [actionable notifications documentation](/docs/ecosystem/ios/notifications/actions/) for more information.
|
||||
required: false
|
||||
type: list
|
||||
{% endconfiguration %}
|
||||
|
||||
- **push** (*Optional*): Actionable push notifications configuration. See the [actionable notifications documentation][actionable-notifications] for more information.
|
||||
|
||||
[discovery]: /components/discovery
|
||||
[device-tracker]: /components/device_tracker
|
||||
[zeroconf]: /components/zeroconf
|
||||
[notify]: /components/notify
|
||||
[actionable-notifications]: /docs/ecosystem/ios/notifications/actions/
|
||||
|
@ -14,7 +14,7 @@ If you already have Python 3.5.3 or later installed, you can easily give Home As
|
||||
|
||||
It's recommended when installing Python packages that you use a [virtual environment](https://docs.python.org/3.5/library/venv.html#module-venv). This will make sure that your Python installation and Home Assistant installation won't impact one another. The following steps will work on most UNIX like systems.
|
||||
|
||||
_(If you're on a Debian based system, you will need to install Python virtual environment support using `apt-get install python3-pip python3-venv`.)_
|
||||
_(If you're on a Debian based system, you will need to install Python virtual environment support using `apt-get install python3-pip python3-venv`. You may also need to install development libraries using `apt-get install build-essential libssl-dev libffi-dev python-dev`.)_
|
||||
|
||||
<p class='Note'>
|
||||
It is recommended to use the [advanced guide](/docs/installation/raspberry-pi/) which allows for the installation to run as a `homeassistant` user. The steps below may be shorter but some users find difficulty when applying updates and may run into issues.
|
||||
@ -65,6 +65,7 @@ It is recommended to use the [advanced guide](/docs/installation/raspberry-pi/)
|
||||
$ python3 -m pip install --upgrade homeassistant
|
||||
```
|
||||
5. Start Home Assistant
|
||||
6. You can now reach the web interface on `http://ipaddress:8123/` - the first start may take up to 20 minutes before the web interface is available
|
||||
|
||||
### {% linkable_title Notes %}
|
||||
|
||||
|
@ -245,3 +245,41 @@ Setting up a switch using topic prefix and abbreviated configuration variable na
|
||||
- Command topic: `homeassistant/switch/irrigation/set`
|
||||
- State topic: `homeassistant/switch/irrigation/state`
|
||||
- Payload: `{"~": "homeassistant/switch/irrigation", "name": "garden", "cmd_t": "~/set", , "stat_t": "~/state"}`
|
||||
|
||||
Setting up a climate component (heat only) with abbreviated configuration variable names to reduce payload length.
|
||||
|
||||
- Configuration topic: `homeassistant/climate/livingroom/config`
|
||||
- Configuration payload:
|
||||
|
||||
```yaml
|
||||
{
|
||||
"name":"Livingroom",
|
||||
"dev_cla":"climate",
|
||||
"mode_cmd_t":"homeassistant/climate/livingroom/thermostatModeCmd",
|
||||
"mode_stat_t":"homeassistant/climate/livingroom/state",
|
||||
"mode_stat_tpl":"{{value_json.mode}}",
|
||||
"avty_t":"homeassistant/climate/livingroom/available",
|
||||
"pl_avail":"online",
|
||||
"pl_not_avail":"offline",
|
||||
"temp_cmd_t":"homeassistant/climate/livingroom/targetTempCmd",
|
||||
"temp_stat_t":"homeassistant/climate/livingroom/state",
|
||||
"temp_stat_tpl":"{{value_json.target_temp}}",
|
||||
"curr_temp_t":"homeassistant/climate/livingroom/state",
|
||||
"current_temperature_template":"{{value_json.current_temp}}",
|
||||
"min_temp":"15",
|
||||
"max_temp":"25",
|
||||
"temp_step":"0.5",
|
||||
"modes":["off", "heat"]
|
||||
}
|
||||
```
|
||||
|
||||
- State topic: `homeassistant/climate/livingroom/state`
|
||||
- State payload:
|
||||
|
||||
```yaml
|
||||
{
|
||||
"mode":"off",
|
||||
"target_temp":"21.50",
|
||||
"current_temp":"23.60",
|
||||
}
|
||||
```
|
||||
|
@ -20,7 +20,7 @@ Screenshot of the plant status card.
|
||||
{% configuration %}
|
||||
type:
|
||||
required: true
|
||||
description: picture-status
|
||||
description: plant-status
|
||||
type: string
|
||||
entity:
|
||||
required: true
|
||||
|
@ -38,6 +38,48 @@ And we have one more thing… we have soft-forked Open Z-Wave and have added sup
|
||||
- Add a component for GreenEye Monitor ([@jkeljo] - [#16378]) ([greeneye_monitor docs]) (new-platform)
|
||||
- TensorFlow image_processing component ([@hunterjm] - [#17795]) ([image_processing.tensorflow docs]) (new-platform)
|
||||
|
||||
## {% linkable_title Release 0.82.1 - November 15 %}
|
||||
|
||||
- catch key error when saving image ([@hunterjm] - [#18365]) ([image_processing.tensorflow docs])
|
||||
- Fix hangouts notify ([@MartinHjelmare] - [#18372]) ([notify docs])
|
||||
- Fix including from sub dir ([@bramkragten] - [#18378])
|
||||
- Fix default value for optional Sense configuration parameter ([@claytonjn] - [#18379]) ([sense docs])
|
||||
- cancel off_delay action ([@dgomes] - [#18389]) ([binary_sensor.mqtt docs])
|
||||
- Changed checking of cover state closed from 0 to closed_position variable. ([@pszafer] - [#18407]) ([cover.mqtt docs])
|
||||
- updated pydaikin version ([@fredrike] - [#18413]) ([daikin docs]) ([climate.daikin docs])
|
||||
- edp_redy: increase UPDATE_INTERVAL ([@abmantis] - [#18429]) ([edp_redy docs])
|
||||
- Update pyozw to 0.1.1 ([@pvizeli] - [#18436]) ([zwave docs])
|
||||
- Fix AsusWRT ([@kennedyshead] - [#18400])
|
||||
|
||||
[#18365]: https://github.com/home-assistant/home-assistant/pull/18365
|
||||
[#18372]: https://github.com/home-assistant/home-assistant/pull/18372
|
||||
[#18378]: https://github.com/home-assistant/home-assistant/pull/18378
|
||||
[#18379]: https://github.com/home-assistant/home-assistant/pull/18379
|
||||
[#18389]: https://github.com/home-assistant/home-assistant/pull/18389
|
||||
[#18407]: https://github.com/home-assistant/home-assistant/pull/18407
|
||||
[#18413]: https://github.com/home-assistant/home-assistant/pull/18413
|
||||
[#18429]: https://github.com/home-assistant/home-assistant/pull/18429
|
||||
[#18436]: https://github.com/home-assistant/home-assistant/pull/18436
|
||||
[#18400]: https://github.com/home-assistant/home-assistant/pull/18400
|
||||
[@MartinHjelmare]: https://github.com/MartinHjelmare
|
||||
[@abmantis]: https://github.com/abmantis
|
||||
[@bramkragten]: https://github.com/bramkragten
|
||||
[@claytonjn]: https://github.com/claytonjn
|
||||
[@dgomes]: https://github.com/dgomes
|
||||
[@fredrike]: https://github.com/fredrike
|
||||
[@hunterjm]: https://github.com/hunterjm
|
||||
[@pszafer]: https://github.com/pszafer
|
||||
[@pvizeli]: https://github.com/pvizeli
|
||||
[binary_sensor.mqtt docs]: /components/binary_sensor.mqtt/
|
||||
[climate.daikin docs]: /components/climate.daikin/
|
||||
[cover.mqtt docs]: /components/cover.mqtt/
|
||||
[daikin docs]: /components/daikin/
|
||||
[edp_redy docs]: /components/edp_redy/
|
||||
[image_processing.tensorflow docs]: /components/image_processing.tensorflow/
|
||||
[notify docs]: /components/notify/
|
||||
[sense docs]: /components/sense/
|
||||
[zwave docs]: /components/zwave/
|
||||
|
||||
## {% linkable_title If you need help... %}
|
||||
|
||||
...don't hesitate to use our very active [forums](https://community.home-assistant.io/) or join us for a little [chat](https://discord.gg/c5DvZ4e). The release notes have comments enabled but it's preferred if you use the former communication channels. Thanks.
|
||||
|
55
source/_posts/2018-11-16-state-of-the-union.markdown
Normal file
55
source/_posts/2018-11-16-state-of-the-union.markdown
Normal file
@ -0,0 +1,55 @@
|
||||
---
|
||||
layout: post
|
||||
title: "State of the Union"
|
||||
description: "Paulus speaks about the origin of Home Assistant and where we're heading."
|
||||
date: 2018-11-16 00:01:00
|
||||
date_formatted: "November 16, 2018"
|
||||
author: Paulus Schoutsen
|
||||
author_twitter: balloob
|
||||
comments: true
|
||||
categories: Video
|
||||
og_image: /images/blog/2018-11-state-of-the-union/share-the-love.jpg
|
||||
---
|
||||
|
||||
<p class='img'>
|
||||
<img src='/images/blog/2018-11-state-of-the-union/share-the-love.jpg' alt='Photo of Paulus Schoutsen presenting the state of the union.'>
|
||||
</p>
|
||||
|
||||
Last Wednesday, November 14, we had a meetup in Amsterdam hosted by <a href='https://www.ing.nl'>ING</a>. Over 80 Home Assistant enthusiasts gathered to hear me, Paulus Schoutsen, the founder of Home Assistant, speak. I talked about how Home Assistant got started, what makes Home Assistant so successful (community!) and what we're working towards.
|
||||
|
||||
<div class='videoWrapper'>
|
||||
<iframe width="560" height="315" src="https://www.youtube.com/embed/egcOCWIh9jQ" frameborder="0" allowfullscreen></iframe>
|
||||
</div>
|
||||
|
||||
Special thanks to:
|
||||
|
||||
- Jeroen Joosse for the initiative and organizing
|
||||
- Erik-Jan Riemers for co-organizing and making it this big
|
||||
- ING for hosting the event
|
||||
- Franck Nijhof for providing the Hass.io demos
|
||||
- Klaas Schoute for providing the TensorFlow demos
|
||||
- Frank Kuiper for editing the presentation video
|
||||
|
||||
More photos after the click.
|
||||
|
||||
<!--more-->
|
||||
|
||||
<p class='img'>
|
||||
<img src='/images/blog/2018-11-state-of-the-union/chatter.jpg' alt='Crowd talking Home Assistant'>
|
||||
Crowd talking Home Assistant
|
||||
</p>
|
||||
|
||||
<p class='img'>
|
||||
<img src='/images/blog/2018-11-state-of-the-union/frenck-hassio.jpg' alt='Frenck showing all the ins and outs of Hass.io'>
|
||||
Frenck showing all the ins and outs of Hass.io
|
||||
</p>
|
||||
|
||||
<p class='img'>
|
||||
<img src='/images/blog/2018-11-state-of-the-union/zwave-table.jpg' alt='The Z-Wave table'>
|
||||
The Z-Wave table
|
||||
</p>
|
||||
|
||||
<p class='img'>
|
||||
<img src='/images/blog/2018-11-state-of-the-union/presentation-selfie.jpg' alt='Presentation selfie!'>
|
||||
Presentation selfie!
|
||||
</p>
|
@ -18,7 +18,7 @@ zwave:
|
||||
|
||||
### {% linkable_title RAZBERRY BOARD %}
|
||||
|
||||
If you need GPIO on Raspberry Pi 3 for your Z-Wave module, add the following line into `config.txt` (you have to access that on the SD card directly; simply plug it into your PC and edit it there):
|
||||
If you need GPIO on Raspberry Pi 3 for your Z-Wave module, add the following line into `config.txt` (you have to access that on the SD card directly. Simply plug it into your PC and edit it there. The `config.txt` is not accessible from your Linux system, you may need to open the SD card on a Windows system.):
|
||||
|
||||
```
|
||||
dtoverlay=pi3-miniuart-bt
|
||||
@ -44,7 +44,7 @@ zha:
|
||||
|
||||
### {% linkable_title Finding the path %}
|
||||
|
||||
If the above defaults don't work, you can check what hardware has been found using the [hassio command](/hassio/commandline/#hardware):
|
||||
If the above defaults don't work, you can check what hardware has been found using the [`hassio` command](/hassio/commandline/#hardware):
|
||||
|
||||
```bash
|
||||
$ hassio hardware info
|
||||
|
BIN
source/images/blog/2018-11-state-of-the-union/chatter.jpg
Normal file
BIN
source/images/blog/2018-11-state-of-the-union/chatter.jpg
Normal file
Binary file not shown.
After Width: | Height: | Size: 100 KiB |
BIN
source/images/blog/2018-11-state-of-the-union/frenck-hassio.jpg
Normal file
BIN
source/images/blog/2018-11-state-of-the-union/frenck-hassio.jpg
Normal file
Binary file not shown.
After Width: | Height: | Size: 87 KiB |
Binary file not shown.
After Width: | Height: | Size: 116 KiB |
BIN
source/images/blog/2018-11-state-of-the-union/share-the-love.jpg
Normal file
BIN
source/images/blog/2018-11-state-of-the-union/share-the-love.jpg
Normal file
Binary file not shown.
After Width: | Height: | Size: 138 KiB |
BIN
source/images/blog/2018-11-state-of-the-union/zwave-table.jpg
Normal file
BIN
source/images/blog/2018-11-state-of-the-union/zwave-table.jpg
Normal file
Binary file not shown.
After Width: | Height: | Size: 68 KiB |
Loading…
x
Reference in New Issue
Block a user