Merge branch 'current' into next

This commit is contained in:
Franck Nijhof 2018-10-26 00:45:36 +02:00
commit 91aa6a4970
No known key found for this signature in database
GPG Key ID: D62583BA8AB11CA3
66 changed files with 1130 additions and 526 deletions

View File

@ -57,27 +57,77 @@ Screenshot of the HASS Configurator.
],
"dirsfirst": false,
"enforce_basepath": false,
"notify_service": "persistent_notification.create",
"ignore_ssl": false
"notify_service": "persistent_notification.create"
}
```
- **username** (*Required*): Set a username to access your configuration is protected.
- **password** (*Required*): Set a password for access.
- **ssl** (*Required*): Enable or Disable SSL/TLS for the editor.
- **certfile** (*Required*): Set the path the your SSL certificate if the ssl-option is set to `true`.
- **keyfile** (*Required*): Set the path the your SSL private key if the ssl-option is set to `true`.
- **allowed_networks** (*Required*): Limit access to the configurator by adding allowed IP addresses/networks to the list.
- **banned_ips** (*Required*): List of statically banned IP addresses.
- **banlimit** (*Required*): Ban access from IPs after `banlimit` failed login attempts. The default value `0` disables this feature. Restart the add-on to clear the list of banned IP addresses.
- **ignore_pattern** (*Required*): Files and folders to ignore in the UI.
- **dirsfirst** (*Required*): List directories before files in the file browser.
- **enforce_basepath** (*Required*): If set to `true`, access is limited to files within the `/config` directory.
- **notify_service** (*Required*): Specify a custom notify-service to be used to push notifications.
- **ignore_ssl** (*Required*): Ignore SSL errors when accessing the Home Assistant API.
- **sesame** (*Optional*): Secret token to dynamically allow access from the IP the request originates from. Open your bookmark https://hassio.yourdomain.com:8123/somesecretnobodycanguess while `allowed_networks` is set to `[]` and your IP will get whitelisted. You can use the _Network status_ menu to revoke IP addresses for which access has been granted. Regular authentication is still required.
- **sesame_totp_secret** (*Optional*): Like the `sesame` option, but instead as Base32 encoded secret string must be provided. This string then can be added to a TOTP App like Google Authenticator. This way you get a 6-digit `sesame` that changes every 30 seconds.
- **loglevel** (*Optional*): You can change the logging level from the default value `info` if you want to. Valid values are: `debug`, `info`, `warning`, `error`, `critical`.
{% configuration %}
username:
description: Set a username so that access your configuration is protected.
required: true
type: string
password:
description: Set a password for access.
required: true
type: string
ssl:
description: Enable or Disable SSL/TLS for the editor.
required: true
type: boolean
default: false
certfile:
description: Set the path the your SSL certificate if the ssl-option is set to `true`.
required: true
type: string
keyfile:
description: Set the path the your SSL private key if the ssl-option is set to `true`.
required: true
type: string
allowed_networks:
description: Limit access to the configurator by adding allowed IP addresses/networks to the list.
required: true
type: string
banned_ips:
description: List of statically banned IP addresses.
required: true
type: string
banlimit:
description: Ban access from IPs after `banlimit` failed login attempts, setting the value to 0 disables this feature. Restart the add-on to clear the list of banned IP addresses.
required: true
type: integer
default: 0
ignore_pattern:
description: Regex of files and folders to ignore in the UI.
required: true
type: string
dirsfirst:
description: List directories before files in the file browser.
required: true
type: boolean
default: false
enforce_basepath:
description: If set to `true`, access is limited to files within the `/config` directory.
required: true
type: boolean
default: false
notify_service:
description: Specify a custom notify-service to be used to push notifications.
required: true
type: string
loglevel:
description: The log level the configurator should run with. Valid values are `debug`, `info`, `warning`, `error`, `critical`.
required: false
type: string
default: info
sesame:
description: Secret token to dynamically allow access from the IP the request originates from. Open your bookmark https://hassio.yourdomain.com:8123/somesecretnobodycanguess while `allowed_networks` is set to `[]` and your IP will get whitelisted. You can use the Network status menu to revoke IP addresses for which access has been granted. Regular authentication is still required.
required: false
type: string
sesame_totp_secret:
description: Like the `sesame` option, but instead as Base32 encoded secret string must be provided. This string then can be added to a TOTP App like Google Authenticator. This way you get a 6-digit `sesame` that changes every 30 seconds.
required: false
type: string
{% endconfiguration %}
<p class='note warning'>
Be careful when setting up port forwarding to the configurator while embedding into Home Assistant. If you don't restrict access by requiring authentication and/or blocking based on client IP addresses, your configuration will be exposed to the internet!

View File

@ -13,7 +13,7 @@ ha_release: 0.43
ha_iot_class: "Local Push"
---
The `alarmdecoder` component will allow Home Assistant users who own either a DSC or Honeywell alarm panel to leverage their alarm system and its sensors to provide Home Assistant with rich information about their homes. Connectivity between Home Assistant and the alarm panel is accomplished through a device produced by Nu Tech Software Solutions, known as the AlarmDecoder. The AlarmDecoder devices provide a serial, TCP/IP socket or USB interface to the alarm panel, where it emulates an alarm keypad.
The `alarmdecoder` component will allow Home Assistant users who own either a DSC or Honeywell alarm panel to leverage their alarm system and its sensors to provide Home Assistant with rich information about their homes. Connectivity between Home Assistant and the alarm panel is accomplished through a device produced by Nu Tech Software Solutions, known as the AlarmDecoder. The AlarmDecoder devices provide a serial, TCP/IP socket or USB interface to the alarm panel, where it emulates an alarm keypad.
Please visit the [AlarmDecoder website](https://www.alarmdecoder.com/) for further information about the AlarmDecoder devices.
@ -34,7 +34,7 @@ alarmdecoder:
type: socket
host: 192.168.1.20
port: 10000
panel_display: On
panel_display: false
zones:
01:
name: 'Smoke Detector'
@ -45,15 +45,66 @@ alarmdecoder:
type: 'opening'
```
Configuration variables:
- **type** (*Required*): The type of AlarmDecoder device: socket, serial or USB
- **host** (*Optional*): The IP address of the AlarmDecoder device on your home network, if using socket type. Default: `localhost`
- **port** (*Optional*): The port of the AlarmDecoder device on your home network, if using socket type. Default: `10000`
- **path** (*Optional*): The path of the AlarmDecoder device, if using socket type. Default: `/dev/ttyUSB0`
- **baudrate** (*Optional*): The baud rate of the AlarmDecoder device, if using serial type. Default: `115200`
- **panel_display** (*Optional*): Create a sensor called sensor.alarm_display to match the Alarm Keypad display. Default: `off`
- **zones** (*Optional*): AlarmDecoder has no way to tell us which zones are actually in use, so each zone must be configured in Home Assistant. For each zone, at least a name must be given. For more information on the available zone types, take a look at the [Binary Sensor](/components/binary_sensor.alarmdecoder/) docs. *Note: If no zones are specified, Home Assistant will not load any binary_sensor components.*
- **rfid** (*Optional*): The RF serial-number associated with RF zones. Providing this field allows Home Assistant to associate raw sensor data to a given zone, allowing direct monitoring of the state, battery, and supervision status.
- **relayaddr** (*Optional*): Address of the relay expander board to associate with the zone. (ex: 12, 13, 14, or 15). Typically used in cases where a panel will not send bypassed zones such as motion during an armed home state, the Vista 20P is an example of this. Alarmdecoder can emulate a zone expander board and the panel can be programmed to push zone events to this virtual expander. This allows the bypassed zone binary sensors to be utilized. One example is using bypassed motion sensors at night for motion-based automated lights while the system is armed with the motion sensor bypassed.
- **relaychan** (*Optional*): Channel of the relay expander board to associate with the zone. (ex: 1, 2, 3, or 4)
{% configuration %}
device:
description: List of variables for the AlarmDecoder device.
required: true
type: list
keys:
type:
description: "The type of AlarmDecoder device: socket, serial or USB."
required: true
default: socket
type: string
host:
description: The IP address of the AlarmDecoder device on your home network, if using socket type.
required: false
default: localhost
type: string
port:
description: The IP address of the AlarmDecoder device on your home network, if using socket type.
required: false
default: 10000
type: integer
path:
description: The path of the AlarmDecoder device, if using serial type.
required: false
default: "/dev/ttyUSB0"
type: string
baudrate:
description: The baud rate of the AlarmDecoder device, if using serial type.
required: false
default: 115200
type: string
panel_display:
description: Create a sensor called sensor.alarm_display to match the Alarm Keypad display.
required: false
default: false
type: boolean
zones:
description: "AlarmDecoder has no way to tell us which zones are actually in use, so each zone must be configured in Home Assistant. For each zone, at least a name must be given. For more information on the available zone types, take a look at the [Binary Sensor](/components/binary_sensor.alarmdecoder/) docs. *Note: If no zones are specified, Home Assistant will not load any binary_sensor components.*"
required: false
type: list
keys:
name:
description: A name for the zone.
required: true
type: string
type:
description: "A type for the zone. Here you can find a list of [Device Classes](https://www.home-assistant.io/components/binary_sensor/#device-class)."
required: false
default: opening
type: string
rfid:
description: The RF serial-number associated with RF zones. Providing this field allows Home Assistant to associate raw sensor data to a given zone, allowing direct monitoring of the state, battery, and supervision status.
required: false
type: string
relayaddr:
description: "Address of the relay expander board to associate with the zone. (ex: 12, 13, 14, or 15). Typically used in cases where a panel will not send bypassed zones such as motion during an armed home state, the Vista 20P is an example of this. Alarmdecoder can emulate a zone expander board and the panel can be programmed to push zone events to this virtual expander. This allows the bypassed zone binary sensors to be utilized. One example is using bypassed motion sensors at night for motion-based automated lights while the system is armed with the motion sensor bypassed."
required: inclusive
type: integer
relaychan:
description: "Channel of the relay expander board to associate with the zone. (ex: 1, 2, 3, or 4)"
required: inclusive
type: integer
{% endconfiguration %}

View File

@ -19,7 +19,7 @@ The requirement is that you have setup the [`xiaomi aqara` component](/component
### {% linkable_title Type of sensors supported %}
| Name | ZigBee entity | Model no. | States | Event | Event key | Event values |
| Name | Zigbee entity | Model no. | States | Event | Event key | Event values |
| ---- | ------------- | --------- | ------ | ----- | --------- | ------------ |
| Motion Sensor (1st gen) | motion | RTCGQ01LM | on, off | `motion` | | |
| Motion Sensor (2nd gen) | sensor_motion.aq2 | RTCGQ11LM | on, off | `motion` | | |

View File

@ -1,7 +1,7 @@
---
layout: page
title: "ZigBee Home Automation Binary Sensor"
description: "Instructions on how to setup ZigBee Home Automation binary sensors within Home Assistant."
title: "Zigbee Home Automation Binary Sensor"
description: "Instructions on how to setup Zigbee Home Automation binary sensors within Home Assistant."
date: 2017-02-22 00:00
sidebar: true
comments: false
@ -12,4 +12,4 @@ ha_category: Binary Sensor
ha_iot_class: "Local Polling"
---
To get your ZigBee binary sensors working with Home Assistant, follow the instructions for the general [ZigBee Home Automation component](/components/zha/).
To get your Zigbee binary sensors working with Home Assistant, follow the instructions for the general [Zigbee Home Automation component](/components/zha/).

View File

@ -1,7 +1,7 @@
---
layout: page
title: "ZigBee Binary Sensor"
description: "Instructions on how to set up ZigBee binary sensors within Home Assistant."
title: "Zigbee Binary Sensor"
description: "Instructions on how to set up Zigbee binary sensors within Home Assistant."
date: 2016-01-28 12:38
sidebar: true
comments: false
@ -13,7 +13,7 @@ ha_release: 0.12
ha_iot_class: "Local Polling"
---
A `zigbee` binary sensor in this context is a device connected to one of the digital input pins on a [ZigBee](http://www.zigbee.org/) module. The states reported by such a device are limited to `on` or `off`. By default, a binary sensor is considered `on` when the ZigBee device's digital input pin is held 'high' and considered `off` when it is held `low`. This behavior can be inverted by setting the `on_state` configuration variable to `low`.
A `zigbee` binary sensor in this context is a device connected to one of the digital input pins on a [Zigbee](http://www.zigbee.org/) module. The states reported by such a device are limited to `on` or `off`. By default, a binary sensor is considered `on` when the Zigbee device's digital input pin is held 'high' and considered `off` when it is held `low`. This behavior can be inverted by setting the `on_state` configuration variable to `low`.
## {% linkable_title Configuration %}
@ -37,7 +37,7 @@ pin:
required: true
type: integer
address:
description: The long 64-bit address of the remote ZigBee device whose digital input pin you'd like to sample. Do not include this variable if you want to sample the local ZigBee device's pins.
description: The long 64-bit address of the remote Zigbee device whose digital input pin you'd like to sample. Do not include this variable if you want to sample the local Zigbee device's pins.
required: false
type: string
on_state:

View File

@ -13,7 +13,6 @@ ha_iot_class: "Cloud Polling"
ha_release: 0.54
---
This platform allows you to connect to your [Todoist Projects](https://todoist.com) and generate binary sensors. A different sensor will be created for each individual project, or you can specify "custom" projects which match against criteria you set (more on that below). These sensors will be `on` if you have a task due in that project or `off` if all the tasks in the project are completed or if the project doesn't have any tasks at all. All tasks get updated roughly every 15 minutes.
### {% linkable_title Prerequisites %}
@ -28,18 +27,36 @@ To integrate Todoist in Home Assistant, add the following section to your `confi
# Example configuration.yaml entry
calendar:
- platform: todoist
token: API_token_created_from_steps_above
token: YOUR_API_TOKEN
```
Configuration variables:
- **token** (*Required*): The API token used to authorize Home Assistant to access your projects.
- **custom_projects** (*Optional*): Details on any "custom" binary sensor projects you want to create.
- **name** (*Required*): The name of your custom project. Only required if you specify that you want to create a custom project.
- **due_date_days** (*Optional*): Only include tasks due within this many days. If you don't have any tasks with a due date set, this returns nothing.
- **labels** (*Optional*): Only include tasks with at least one of these labels (i.e., this works as an `or` statement)..
- **include_projects** (*Optional*): Only include tasks in these projects. Tasks in all other projects will be ignored.
{% configuration %}
token:
description: The API token used to authorize Home Assistant to access your projects. Above you have more info about it.
required: true
type: string
custom_projects:
description: Details on any "custom" binary sensor projects you want to create.
required: false
type: list
keys:
name:
description: The name of your custom project. Only required if you specify that you want to create a custom project.
required: true
type: string
due_date_days:
description: Only include tasks due within this many days. If you don't have any tasks with a due date set, this returns nothing.
required: false
type: integer
include_projects:
description: Only include tasks in these projects. Tasks in all other projects will be ignored.
required: false
type: list
labels:
description: Only include tasks with at least one of these labels (i.e., this works as an `or` statement).
required: false
type: list
{% endconfiguration %}
### {% linkable_title Custom Projects %}
Creating custom projects is super-easy and quite powerful. All you need to run the basic Todoist projects is your API token, but if you wanted, you could go even deeper. Here's an example:
@ -48,7 +65,7 @@ Creating custom projects is super-easy and quite powerful. All you need to run t
# Example configuration.yaml entry
calendar:
- platform: todoist
token: !secret todoist_token
token: YOUR_API_TOKEN
custom_projects:
- name: 'All Projects'
- name: 'Due Today'

View File

@ -13,8 +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 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.
```yaml
# Example configuration.yaml entry
@ -25,27 +24,71 @@ climate:
target_sensor: sensor.study_temperature
```
Configuration variables:
- **name** (*Required*): Name of thermostat
- **heater** (*Required*): `entity_id` for heater switch, must be a toggle device. Becomes air conditioning switch when `ac_mode` is set to `True`
- **target_sensor** (*Required*): `entity_id` for a temperature sensor, target_sensor.state must be temperature.
- **min_temp** (*Optional*): Set minimum set point available (default: 7)
- **max_temp** (*Optional*): Set maximum set point available (default: 35)
- **target_temp** (*Optional*): Set initial target temperature. Failure to set this variable will result in target temperature being set to null on startup. As of version 0.59, it will retain the target temperature set before restart if available.
- **ac_mode** (*Optional*): Set the switch specified in the *heater* option to be treated as a cooling device instead of a heating device.
- **min_cycle_duration** (*Optional*): Set a minimum amount of time that the switch specified in the *heater* option must be in its current state prior to being switched either off or on.
- **cold_tolerance** (*Optional*): Set a minimum amount of difference between the temperature read by the sensor specified in the *target_sensor* option and the target temperature that must change prior to being switched on. For example, if the target temperature is 25 and the tolerance is 0.5 the heater will start when the sensor equals or goes below 24.5.
- **hot_tolerance** (*Optional*): Set a minimum amount of difference between the temperature read by the sensor specified in the *target_sensor* option and the target temperature that must change prior to being switched off. For example, if the target temperature is 25 and the tolerance is 0.5 the heater will stop when the sensor equals or goes above 25.5.
- **keep_alive** (*Optional*): Set a keep-alive interval. If set, the switch specified in the *heater* option will be triggered every time the interval elapses. Use with heaters and A/C units that shut off if they don't receive a signal from their remote for a while. Use also with switches that might lose state. The keep-alive call is done with the current valid climate component state (either on or off).
- **initial_operation_mode** (*Optional*): Set the initial operation mode. Valid values are `off` or `auto`. Value has to be double quoted. If this parameter is not set, it is preferable to set a *keep_alive* value. This is helpful to align any discrepancies between *generic_thermostat* and *heater* state.
- **away_temp** (*Optional*): Set the temperature used by "away_mode". If this is not specified, away_mode feature will not get activated.
{% configuration %}
name:
description: Name of thermostat.
required: true
default: Generic Thermostat
type: string
heater:
description: "`entity_id` for heater switch, must be a toggle device. Becomes air conditioning switch when `ac_mode` is set to `true`."
required: true
type: string
target_sensor:
description: "`entity_id` for a temperature sensor, target_sensor.state must be temperature."
required: true
type: string
min_temp:
description: Set minimum set point available.
required: false
default: 7
type: float
max_temp:
description: Set maximum set point available.
required: false
default: 35
type: float
target_temp:
description: Set initial target temperature. Failure to set this variable will result in target temperature being set to null on startup. As of version 0.59, it will retain the target temperature set before restart if available.
required: false
type: float
ac_mode:
description: Set the switch specified in the *heater* option to be treated as a cooling device instead of a heating device.
required: false
type: boolean
min_cycle_duration:
description: Set a minimum amount of time that the switch specified in the *heater* option must be in its current state prior to being switched either off or on.
required: false
type: [time, integer]
cold_tolerance:
description: Set a minimum amount of difference between the temperature read by the sensor specified in the *target_sensor* option and the target temperature that must change prior to being switched on. For example, if the target temperature is 25 and the tolerance is 0.5 the heater will start when the sensor equals or goes below 24.5.
required: false
default: 0.3
type: float
hot_tolerance:
description: Set a minimum amount of difference between the temperature read by the sensor specified in the *target_sensor* option and the target temperature that must change prior to being switched off. For example, if the target temperature is 25 and the tolerance is 0.5 the heater will stop when the sensor equals or goes above 25.5.
required: false
default: 0.3
type: float
keep_alive:
description: Set a keep-alive interval. If set, the switch specified in the *heater* option will be triggered every time the interval elapses. Use with heaters and A/C units that shut off if they don't receive a signal from their remote for a while. Use also with switches that might lose state. The keep-alive call is done with the current valid climate component state (either on or off).
required: false
type: [time, integer]
initial_operation_mode:
description: Set the initial operation mode. Valid values are `off` or `auto`. Value has to be double quoted. If this parameter is not set, it is preferable to set a *keep_alive* value. This is helpful to align any discrepancies between *generic_thermostat* and *heater* state.
required: false
type: string
away_temp:
description: Set the temperature used by "away_mode". If this is not specified, away_mode feature will not get activated.
required: false
type: float
{% endconfiguration %}
A full configuration example looks like the one below. `min_cycle_duration` and `keep_alive` must contain at least one of the following entries: `days:`, `hours:`, `minutes:`, `seconds:` or `milliseconds:`.
Currently the `generic_thermostat` climate platform supports 'heat', 'cool' and 'off' operation modes. You can force your `generic_thermostat` to avoid starting by setting Operation to 'off'.
Currently the `generic_thermostat` climate platform supports 'heat', 'cool' and 'off' operation modes. You can force your `generic_thermostat` to avoid starting by setting Operation to 'off'.
Please note that changing Away Mode you will force a target temperature change as well that will get restored once the Away Mode is turned off.
Please note that changing Away Mode you will force a target temperature change as well that will get restored once the Away Mode is turned off.
```yaml
# Full example configuration.yaml entry

View File

@ -30,12 +30,20 @@ climate:
password: YOUR_PASSWORD
```
Configuration variables:
- **host** (*Required*): Address of your thermostat, eg. 192.168.1.32.
- **username** (*Required*): Username for the thermostat.
- **password** (*Required*): Password for the thermostat.
{% configuration %}
host:
description: Address of your thermostat, e.g., 192.168.1.32.
required: true
type: string
username:
description: Username for the thermostat.
required: true
type: string
password:
description: Password for the thermostat.
required: true
type: string
{% endconfiguration %}
The Proliphix NT Thermostat series are Ethernet connected thermostats. They have a local HTTP interface that is based on get/set
of OID values. A complete collection of the API is available in this [API documentation](https://github.com/sdague/thermostat.rb/blob/master/docs/PDP_API_R1_11.pdf).

View File

@ -25,17 +25,18 @@ You have to add the Somfy RTS manually with the supplied RFlinkLoader (Windows o
Press the Learn button on the original Somfy remote enter the following code within 3 seconds. Your blinds will go up and down shortly:
````
```text
10;RTS;02FFFF;0412;3;PAIR;
````
```
Your blinds will go up and down again. This means your Rflink is now paired with your RTS motor.
To check this enter the following code again and see if there is a record.
````
```text
10;RTSSHOW;
````
````
```
```text
RTS Record: 0 Address: FFFFFF RC: FFFF
RTS Record: 1 Address: FFFFFF RC: FFFF
RTS Record: 2 Address: FFFFFF RC: FFFF
@ -52,7 +53,7 @@ RTS Record: 12 Address: FFFFFF RC: FFFF
RTS Record: 13 Address: FFFFFF RC: FFFF
RTS Record: 14 Address: FFFFFF RC: FFFF
RTS Record: 15 Address: FFFFFF RC: FFFF
````
```
After configuring the RFLink Somfy RTS you have to add the cover to the `configuration.yaml` file like any other RFlink device.
@ -73,25 +74,59 @@ cover:
name: Sovrumsgardin
```
Configuration variables:
- **devices** (*Optional*): A list of devices with their name to use in the frontend.
- **device_defaults**: (*Optional*)
- **fire_event** (*Optional*): Set default `fire_event` for Rflink switch devices (see below).
- **signal_repetitions** (*Optional*): Set default `signal_repetitions` for Rflink switch devices (see below).
Device configuration variables:
- **name** (*Optional*): Name for the device, defaults to Rflink ID.
- **aliases** (*Optional*): Alternative Rflink ID's this device is known by.
- **fire_event** (*Optional*): Fire a `button_pressed` event if this device is turned on or off (default: False).
- **signal_repetitions** (*Optional*): Repeat every Rflink command this number of times (default: 1).
- **group** (*Optional*): Allow light to respond to group commands (ALLON/ALLOFF). (default: yes)
- **group_aliases** (*Optional*): `aliases` which only respond to group commands.
- **no_group_aliases** (*Optional*): `aliases` which do not respond to group commands.
{% configuration %}
devices:
description: A list of devices with their name to use in the frontend.
required: false
type: list
keys:
name:
description: The name for the device. Defaults to value for Rflink ID.
required: false
type: string
aliases:
description: The alternative Rflink ID's this device is known by.
required: false
type: list
fire_event:
description: Fire a `button_pressed` event if this device is turned on or off.
required: false
default: False
type: boolean
signal_repetitions:
description: The number of times every Rflink command should repeat.
required: false
type: integer
group:
description: Allow light to respond to group commands (ALLON/ALLOFF).
required: false
default: True
type: boolean
group_aliases:
description: The `aliases` which only respond to group commands.
required: false
type: list
no_group_aliases:
description: The `aliases` which do not respond to group commands.
required: false
type: list
device_defaults:
description: The default values for a device.
required: false
type: list
keys:
fire_event:
description: The default `fire_event` for Rflink cover devices.
required: false
default: False
type: boolean
signal_repetitions:
description: The default `signal_repetitions` for Rflink cover devices.
required: false
default: 1
type: integer
{% endconfiguration %}
### {% linkable_title Device support %}
See [device support](/components/rflink/#device-support)
See [device support](/components/rflink/#device-support).

View File

@ -35,18 +35,47 @@ cover:
state_pin: 11
```
Configuration variables:
{% configuration %}
relay_time:
description: The time that the relay will be on for in seconds.
required: false
default: 0.2
type: float
invert_relay:
description: Invert the relay pin output so that it is active-high (True).
required: false
default: False
type: boolean
state_pull_mode:
description: The direction the State pin is pulling. It can be UP or DOWN.
required: false
default: UP
type: string
invert_state:
description: Invert the value of the State pin so that 0 means closed.
required: false
default: False
type: boolean
covers:
description: List of your doors.
required: true
type: list
keys:
relay_pin:
description: The pin of your Raspberry Pi where the relay is connected.
required: true
type: integer
state_pin:
description: The pin of your Raspberry Pi to retrieve the state.
required: true
type: integer
name:
description: The name to use in the frontend.
required: false
type: string
{% endconfiguration %}
- **relay_time** (*Optional*): The time that the relay will be on for in seconds. Default is 0.2 seconds.
- **invert_relay** (*Optional*): Invert the relay pin output so that it is active-high. Default is False (active-low).
- **state_pull_mode** (*Optional*): The direction the State pin is pulling. It can be UP or DOWN. Default is UP.
- **invert_state** (*Optional*): Invert the value of the State pin so that 0 means closed. Default is False.
- **covers** array (*Required*): List of your doors.
- **relay_pin** (*Required*): The pin of your Raspberry Pi where the relay is connected.
- **state_pin** (*Required*): The pin of your Raspberry Pi to retrieve the state.
- **name** (*Optional*): Name to use in the frontend.
Full example:
## {% linkable_title Full example %}
```yaml
# Example configuration.yaml entry

View File

@ -45,6 +45,9 @@ To integrate a demo platform in Home Assistant, add the following section to you
- platform: demo
```
Configuration variables:
- **[component]** (*Required*): The name of the component as stated in the listing above the configuration example.
{% configuration %}
"[component]":
description: The name of the component as stated in the listing above the configuration example.
required: true
type: string
{% endconfiguration %}

View File

@ -80,11 +80,11 @@ Add the above URL after you modified it with your settings into the **URL** fiel
- Use the domain that Home Assistant is available on the internet (or the public IP address if you have a static IP address). This can be a local IP address if you are using an always on VPN from your mobile device to your home network.
- Only remove `PORT` if your Home Assistant instance is using port 443. Otherwise set it to the port you're using.
- For Home Assistant only the above URL, as written, will work - do not add, remove, or change the order of any of the parameters.
- **0.77+** If you are using Long-Lived access tokens, then add `Authentication: Bearer LLAT` to the HTTP Headers setting (replace `LLAT` with your Long Lived Access Token).
- **<0.77** Make sure to include your [API password](/components/http/) if you have configured a password. Add `&api_password=YOUR_PASSWORD` to the end of the URL.
- **0.77+** If you are using Long-Lived access tokens, then add `Authorization: Bearer LLAT` to the HTTP Headers setting (replace `LLAT` with your Long Lived Access Token).
- **<0.77** Make sure to include your [API password](/components/http/) if you have configured a password. Add `&api_password=YOUR_PASSWORD` to the end of the URL.
- You can change the name of your device name by replacing `&device=%SER` with `&device=DEVICE_NAME`.
If your battery drains fast then you can tune the performance of GPSLogger under **Performance** -> **Location providers**
If your battery drains fast then you can tune the performance of GPSLogger under **Performance** -> **Location providers**
<p class='img'>
<img width='300' src='/images/components/gpslogger/performance.png' />

View File

@ -1,7 +1,7 @@
---
layout: page
title: "ZigBee Home Automation Fan"
description: "Instructions how to setup ZigBee Home Automation fans within Home Assistant."
title: "Zigbee Home Automation Fan"
description: "Instructions how to setup Zigbee Home Automation fans within Home Assistant."
date: 2018-02-10 00:00
sidebar: true
comments: false
@ -13,4 +13,4 @@ ha_iot_class: "Local Polling"
ha_release: 0.66
---
To get your ZigBee fans working with Home Assistant, follow the instructions for the general [ZigBee Home Automation component](/components/zha/).
To get your Zigbee fans working with Home Assistant, follow the instructions for the general [Zigbee Home Automation component](/components/zha/).

View File

@ -35,7 +35,6 @@ If this is the first time setting up your Google Assistant integration, you can
Since release 0.80, the `Authorization Code` type of `OAuth` account linking is supported. To migrate your existing configuration from release 0.79 or below, you need:
1. Change your `Account linking` setting in [Actions on Google console](https://console.actions.google.com/), look for the `Advanced Options` in the bottom left of the sidebar.
- Under `Create an Action`, under the build section, modify `Add fulfillment URL` to `https://[YOUR HOME ASSISTANT URL:PORT]/api/google_assistant`, where `[YOUR HOME ASSISTANT URL:PORT]` is the domain / IP address and the port under which your Home Assistant instance is reachable.
- Change `Linking type` to `OAuth` and `Authorization Code`.
- In the `Client information` section:
- Change `Client ID` to `https://oauth-redirect.googleusercontent.com/`, the trailing slash is important.

View File

@ -14,6 +14,10 @@ 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.
<p class="note">
If you want to control `HomeKit` only devices with Home Assistant, check out the [HomeKit controller](/components/homekit_controller/) component.
</p>
<p class="note warning">
It might be necessary to install an additional package:
`$ sudo apt-get install libavahi-compat-libdnssd-dev`
@ -313,6 +317,9 @@ For `Docker` users: make sure to set `network_mode: host`. Other reasons could b
#### {% linkable_title Pairing hangs - zeroconf error %}
Paining eventually fails, you might see and an error message `NonUniqueNameException`. To resolve this, you need to replace a specific file. See the following git issues for more details: [home-assistant#14567](https://github.com/home-assistant/home-assistant/issues/14567) and [home-assistant#17181](https://github.com/home-assistant/home-assistant/issues/17181)
#### {% 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.
@ -325,6 +332,18 @@ Make sure that you don't try to add more then 100 accessories, see [device limit
#### {% 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)

View File

@ -62,7 +62,7 @@ cors_allowed_origins:
required: false
type: string, list
use_x_forwarded_for:
description: "Enable parsing of the `X-Forwarded-For` header, passing on the client's correct IP address in proxied setups. You **must** also whitelist trusted proxies using the `trusted_proxies` setting above for this to work. Non-whitelisted requests with this header will be considered IP spoofing attacks, and the header will, therefore, be ignored."
description: "Enable parsing of the `X-Forwarded-For` header, passing on the client's correct IP address in proxied setups. You **must** also whitelist trusted proxies using the `trusted_proxies` setting for this to work. Non-whitelisted requests with this header will be considered IP spoofing attacks, and the header will, therefore, be ignored."
required: false
type: boolean
default: false

View File

@ -20,9 +20,9 @@ If you are running Home Assistant over SSL or from within a container, you will
## {% linkable_title ALPR %}
Alpr entities attribute have a vehicle counter `vehicles` and all found plates as `plates`.
ALPR entities have a vehicle counter attribute `vehicles` and all found plates are stored in the `plates` attribute.
This event is trigger after OpenALPR found a new license plate.
The `found_plate` event is triggered after OpenALPR has found a new license plate.
```yaml
# Example configuration.yaml automation entry
@ -41,9 +41,9 @@ The following event attributes will be present (platform-dependent): `entity_id`
## {% linkable_title Face %}
Face entities attribute have a face counter `total_faces` and all face data as `faces`.
Face entities have a face counter attribute `total_faces` and all face data is stored in the `faces` attribute.
This event is trigger after Microsoft Face found a faces.
The `detect_face` event is triggered after a Face entity has found a face.
```yaml
# Example configuration.yaml automation entry

View File

@ -13,12 +13,8 @@ ha_iot_class: "Local Push"
ha_version: 0.77
---
This component adds "local push" support for INSTEON Modems allowing
linked INSTEON devices to be used within Home Assistant as binary sensors,
lights, fans, sensors and switches. Device support is provided by the
underlying [insteonplm] package. It is known to work with the [2413U] USB and
[2412S] RS242 flavors of PLM and the [2448A7] USB stick. It has also been
tested to work with the [2242] and [2245] Hubs.
This component adds "local push" support for INSTEON Modems allowing linked INSTEON devices to be used within Home Assistant as binary sensors, lights, fans, sensors and switches. Device support is provided by the
underlying [insteonplm] package. It is known to work with the [2413U] USB and [2412S] RS242 flavors of PLM and the [2448A7] USB stick. It has also been tested to work with the [2242] and [2245] Hubs.
[insteonplm]: https://github.com/nugget/python-insteonplm
[2413U]: https://www.insteon.com/powerlinc-modem-usb
@ -27,11 +23,9 @@ tested to work with the [2242] and [2245] Hubs.
[2245]: https://www.insteon.com/insteon-hub/
[2242]: https://www.insteon.com/support-knowledgebase/2014/9/26/insteon-hub-owners-manual
### {% linkable_title INSTEON Modem configuration %}
To set up an INSTEON Powerline Modem (PLM) device such as the [2413U], use the
following configuration:
To set up an INSTEON Powerline Modem (PLM) device such as the [2413U], use the following configuration:
```yaml
# PLM configuration variables
@ -40,7 +34,7 @@ insteon:
```
To set up an INSTEON Hub model [2245], use the following configuration:
```yaml
# Hub 2245 configuration variables
insteon:
@ -81,92 +75,111 @@ insteon:
x10_all_lights_on: HOUSECODE
x10_all_lights_off: HOUSECODE
```
Configuration variables:
- **port** (*Required for PLM setup*): The serial or USB port for your device,
e.g., `/dev/ttyUSB0` or `COM3`
- **host** (*Required for Hub setup*): The host name or IP address of the Hub.
- **ip_port** (*Optional for Hub setup*): The IP port number of the Hub. For
Hub model [2245] (i.e. Hub version 2) the default port is 25105. For the Hub
model [2242] (i.e. Hub version 1) the default port is 9761. Use the Insteon
app to find the port number for your specific Hub.
- **username** (*Required for Hub version 2 setup*): The username to login in
to the local Hub. This is required for Hub [2245] (i.e. Hub version 2) setup.
You can find your Hub username on the bottom of the Hub or you can use the
Insteon app.
- **password** (*Required for Hub version 2 setup*): The password to login in
to the local Hub. This is required for Hub [2245] (i.e. Hub version 2) setup.
You can find your Hub password on the bottom of the Hub or you can use the
Insteon app.
- **hub_version** (*Required for Hub version 1 setup*): The Hub version number
where model [2242] is Hub version 1 and model [2245] is Hub version 2.
(Default is 2)
- **device_override** (*Optional*): Override the default device definition
- *ADDRESS* is found on the device itself in the form 1A.2B.3C or 1a2b3c
- *CATEGORY* is found in the back of the device's User Guide in the form of
0x00 - 0xff
- *SUBCATEGORY* is found in the back of the device's User Guide in the form
of 0x00 - 0xff
- *FIRMWARE* and *PRODUCT_KEY* are more advanced options and will typically
not be used.
- **x10_devices** (*Optional*): Define X10 devices to control or respond to
- *HOUSECODE* is the X10 housecode values a - p
- *UNITCODE* is the X10 unit code values 1 - 16
- *PLATFORM* is the Home Assistant Platform to associate the device with.
The following platforms are supported
- binary_sensor: Used for on/off devices or keypad buttons that are read-only.
- light: Used for dimmable X10 devices
- switch: Used for On/Off X10 devices
- *STEPS* is the number of dim/bright steps the device supports. Used for
dimmable X10 devices only. Default value is 22.
- **x10_all_units_off** (*Optional*): Creates a binary_sensor that responds
to the X10 standard command for All Units Off.
- **x10_all_lights_on** (*Optional*): Creates a binary_sensor that responds
to the X10 standard command for All Lights On
- **x10_all_lights_off** (*Optional*): Creates a binary_sensor that responds
to the X10 standard command for All Lights Off
{% configuration %}
port:
description: The serial or USB port for your device, e.g., `/dev/ttyUSB0` or `COM3`.
required: Required for PLM setup
type: string
host:
description: The host name or IP address of the Hub.
required: Required for Hub setup
type: string
ip_port:
description: The IP port number of the Hub. For Hub model [2245] (i.e. Hub version 2) the default port is 25105. For the Hub model [2242] (i.e. Hub version 1) the default port is 9761. Use the Insteon app to find the port number for your specific Hub.
required: Optional for Hub setup
type: integer
username:
description: The username to login in to the local Hub. You can find your Hub username on the bottom of the Hub or you can use the Insteon app.
required: Required for Hub version 2 setup
type: string
password:
description: The password to login in to the local Hub. You can find your Hub password on the bottom of the Hub or you can use the Insteon app.
required: Required for Hub version 2 setup
type: string
hub_version:
description: The Hub version number where model [2242] is Hub version 1 and model [2245] is Hub version 2.
required: Required for Hub version 1 setup
default: 2
type: integer
device_override:
description: Override the default device definition.
required: false
type: list
keys:
address:
description: is found on the device itself in the form 1A.2B.3C or 1a2b3c.
required: true
type: string
cat:
description: is found in the back of the device's User Guide in the form of 0x00 - 0xff.
required: false
type: integer
subcat:
description: is found in the back of the device's User Guide in the form of 0x00 - 0xff.
required: false
type: integer
firmware:
description: are more advanced options and will typically not be used.
required: false
type: string
product_key:
description: are more advanced options and will typically not be used.
required: false
type: integer
x10_devices:
description: Define X10 devices to control or respond to.
required: false
type: list
keys:
housecode:
description: is the X10 housecode values a - p
required: true
type: string
unitcode:
description: is the X10 unit code values 1 - 16
required: true
type: integer
platform:
description: "is the Home Assistant Platform to associate the device with. The following platforms are supported: binary_sensor: Used for on/off devices or keypad buttons that are read-only. light: Used for dimmable X10 devices. switch: Used for On/Off X10 devices."
required: true
type: string
dim_steps:
description: is the number of dim/bright steps the device supports. Used for dimmable X10 devices only.
required: false
default: 22
type: integer
x10_all_units_off:
description: Creates a binary_sensor that responds to the X10 standard command for All Units Off.
required: false
type: string
x10_all_lights_on:
description: Creates a binary_sensor that responds to the X10 standard command for All Lights On
required: false
type: string
x10_all_lights_off:
description: Creates a binary_sensor that responds to the X10 standard command for All Lights Off
required: false
type: string
{% endconfiguration %}
### {% linkable_title Autodiscovery %}
The first time autodiscovery runs, the duration may require up to 20 seconds
per device. Subsequent startups will occur much quicker using cached device
information. If a device is not recognized during autodiscovery, you can add
the device to the **device_override** configuration.
The first time autodiscovery runs, the duration may require up to 20 seconds per device. Subsequent startups will occur much quicker using cached device information. If a device is not recognized during autodiscovery, you can add the device to the **device_override** configuration.
In order for a device to be discovered, it must be linked to the INSTEON Modem
as either a responder or a controller.
In order for a device to be discovered, it must be linked to the INSTEON Modem as either a responder or a controller.
### {% linkable_title Linking Devices to the INSTEON Modem %}
In order for any two Insteon devices to talk with one another, they must be
linked. For an overview of device linking, please read the Insteon page on
[understanding linking]. The Insteon Modem module supports All-Linking through
[Development Tools] service calls. The following services are available:
In order for any two Insteon devices to talk with one another, they must be linked. For an overview of device linking, please read the Insteon page on [understanding linking]. The Insteon Modem module supports All-Linking through [Development Tools] service calls. The following services are available:
- **insteon.add_all_link**: Puts the Insteon Modem (IM) into All-Linking
mode. The IM can be set as a controller or a responder. If the IM is a
controller, put the IM into linking mode then press the SET button on the
device. If the IM is a responder, press the SET button on the device then
put the IM into linking mode.
- **insteon.delete_all_link**: Tells the Insteon Modem (IM) to remove an
All-Link record from the All-Link Database of the IM and a device. Once the IM
is set to delete the link, press the SET button on the corresponding device
to complete the process.
- **insteon.load_all_link_database**: Load the All-Link Database for a
device. WARNING - Loading a device All-Link database may take a LONG time and
may need to be repeated to obtain all records.
- **insteon.print_all_link_database**: Print the All-Link Database for a
device. Requires that the All-Link Database is loaded first.
- **insteon.print_im_all_link_database**: Print the All-Link Database for
the INSTEON Modem (IM).
- **insteon.add_all_link**: Puts the Insteon Modem (IM) into All-Linking mode. The IM can be set as a controller or a responder. If the IM is a controller, put the IM into linking mode then press the SET button on the device. If the IM is a responder, press the SET button on the device then put the IM into linking mode.
- **insteon.delete_all_link**: Tells the Insteon Modem (IM) to remove an All-Link record from the All-Link Database of the IM and a device. Once the IM is set to delete the link, press the SET button on the corresponding device to complete the process.
- **insteon.load_all_link_database**: Load the All-Link Database for a device. WARNING - Loading a device All-Link database may take a LONG time and may need to be repeated to obtain all records.
- **insteon.print_all_link_database**: Print the All-Link Database for a device. Requires that the All-Link Database is loaded first.
- **insteon.print_im_all_link_database**: Print the All-Link Database for the INSTEON Modem (IM).
If you are looking for more advanced options, you can use the
[insteonplm_interactive] command line tool that is distributed with the
[insteonplm] Python module. Please see the documentation on the [insteonplm]
GitHub site. Alternatively, you can download [HouseLinc] which runs on any
Windows PC, or you can use [Insteon Terminal] which is open source and runs
on most platforms. SmartHome no longer supports HouseLinc, but it still
works. Insteon Terminal is a very useful tool but please read the disclaimers
carefully, they are important.
If you are looking for more advanced options, you can use the [insteonplm_interactive] command line tool that is distributed with the [insteonplm] Python module. Please see the documentation on the [insteonplm] GitHub site. Alternatively, you can download [HouseLinc] which runs on any Windows PC, or you can use [Insteon Terminal] which is open source and runs on most platforms. SmartHome no longer supports HouseLinc, but it still works. Insteon Terminal is a very useful tool but please read the disclaimers carefully, they are important.
[understanding linking]: http://www.insteon.com/support-knowledgebase/2015/1/28/understanding-linking
[Development Tools]: https://www.home-assistant.io/docs/tools/dev-tools/
@ -174,36 +187,24 @@ carefully, they are important.
[Insteon Terminal]: https://github.com/pfrommerd/insteon-terminal
[insteonplm_interactive]: https://github.com/nugget/python-insteonplm#command-line-interface
### {% linkable_title Customization %}
### {% linkable_title Customization %}
The only configuration item that is necessary is the PLM port or Hub IP
address, username and password so that Home Assistant can connect to the
INSTEON Modem. This will expose all the supported INSTEON devices which exist
in the modems ALL-Link database. However, devices will only be shown by their
INSTEON hex address (e.g., “1A.2B.3C”) which can be a bit unwieldy. As you link
and unlink devices using the Set buttons, theyll be added and removed from
Home Assistant automatically.
The only configuration item that is necessary is the PLM port or Hub IP address, username and password so that Home Assistant can connect to the INSTEON Modem. This will expose all the supported INSTEON devices which exist in the modems ALL-Link database. However, devices will only be shown by their INSTEON hex address (e.g., “1A.2B.3C”) which can be a bit unwieldy. As you link and unlink devices using the Set buttons, theyll be added and removed from Home Assistant automatically.
You can use the normal Home Assistant [device customization] section of your
configuration to assign friendly names and special icons to your devices. This
is especially useful for setting device_class on your binary_sensor INSTEON
devices.
You can use the normal Home Assistant [device customization] section of your configuration to assign friendly names and special icons to your devices. This is especially useful for setting device_class on your binary_sensor INSTEON devices.
[device customization]: /getting-started/customizing-devices/
### {% linkable_title Device Overrides %}
### {% linkable_title Device Overrides %}
INSTEON devices are added to Home Assistant using the platform(s) that make the
most sense given the model and features of the hardware. The features of the
INSTEON devices are built into the Home Assistant platform. Changing the
platform is not recommended. There are two primary uses for the
**device_override** feature.
- Devices that do not respond during autodiscovery. This is common for battery
operated devices.
- Devices that have not been fully developed. This allows an unknown device to
be mapped to a device that operates similarly to another device.
INSTEON devices are added to Home Assistant using the platform(s) that make the most sense given the model and features of the hardware. The features of the INSTEON devices are built into the Home Assistant platform. Changing the platform is not recommended.
### {% linkable_title Example Configuration with Options%}
There are two primary uses for the **device_override** feature:
- Devices that do not respond during autodiscovery. This is common for battery operated devices.
- Devices that have not been fully developed. This allows an unknown device to be mapped to a device that operates similarly to another device.
### {% linkable_title Example Configuration with Options%}
```yaml
# Full example of Insteon configuration with customizations and overrides
@ -221,15 +222,12 @@ insteon:
device_override:
- address: a1b2c3 # Hidden Door Sensor [2845-222]
cat: 0x10
subcat: 0x11
subcat: 0x11
```
### {% linkable_title What NOT to do %}
Insteon Modem is a top-level component and device discovery will identify
the Home Assistant platform the device belongs in. As such, do not
declare Insteon devices in other platforms. For example, this configuration
will NOT work:
Insteon Modem is a top-level component and device discovery will identify the Home Assistant platform the device belongs in. As such, do not declare Insteon devices in other platforms. For example, this configuration will NOT work:
```yaml
light:
@ -239,26 +237,18 @@ light:
### {% linkable_title Events and Mini-Remotes %}
Mini-Remote devices do not appear as Home Assistant entities. They generate
events. The following events are available:
Mini-Remote devices do not appear as Home Assistant entities, they generate events. The following events are available:
- **insteon.button_on**
- **address**: (required) The Insteon device address in lower case without
dots (e.g., 1a2b3c)
- **button**: (Optional) The button id in lower case. For a 4-button remote
the values are `a` to `d`. For an 8 button remote the values are `a` to `g`. For
a one-button remote this field is not used.
- **address**: (required) The Insteon device address in lower case without dots (e.g., 1a2b3c)
- **button**: (Optional) The button id in lower case. For a 4-button remote the values are `a` to `d`. For an 8 button remote the values are `a` to `g`. For a one-button remote this field is not used.
- **insteon.button_of**
- **address**: (required) The Insteon device address in lower case without
dots (e.g., 1a2b3c)
- **button**: (Optional) The button id in lower case. For a 4-button remote
the values are a to d. For an 8 button remote the values are `a` to `g`. For
a one-button remote this field is not used.
- **address**: (required) The Insteon device address in lower case without dots (e.g., 1a2b3c)
- **button**: (Optional) The button id in lower case. For a 4-button remote the values are a to d. For an 8 button remote the values are `a` to `g`. For a one-button remote this field is not used.
This allows the mini-remotes to be configured as triggers for automations. Here
is an example of how to use these events for automations:
This allows the mini-remotes to be configured as triggers for automations. Here is an example of how to use these events for automations:
```
```yaml
automation:
# 4 or 8 button remote with button c pressed
trigger:
@ -292,17 +282,10 @@ automation:
### {% linkable_title Known Issues with the INSTEON Hub %}
The INSTEON Hub has three known issues that are inherent to the design of the
Hub:
The INSTEON Hub has three known issues that are inherent to the design of the Hub:
1. If you see multiple error messages in the log file stating the Hub
connection is closed, and reconnection has failed, this generally requires
the Hub to be restarted to reconnect.
1. If you see multiple error messages in the log file stating the Hub connection is closed, and reconnection has failed, this generally requires the Hub to be restarted to reconnect.
2. You cannot use both Home Assistant and the INSTEON app. If you do, the
changes made in the app will not appear in Home Assistant. Changes made in
Home Assistant will appear in the app after a period of time, however.
2. You cannot use both Home Assistant and the INSTEON app. If you do, the changes made in the app will not appear in Home Assistant. Changes made in Home Assistant will appear in the app after a period of time, however.
3. The Hub response times can be very slow. This is due to the Hub polling
devices frequently. Since only one INSTEON message can be broadcast at a time,
messages to and from Home Assistant can be delayed.
3. The Hub response times can be very slow. This is due to the Hub polling devices frequently. Since only one INSTEON message can be broadcast at a time, messages to and from Home Assistant can be delayed.

View File

@ -1,7 +1,7 @@
---
layout: page
title: "IKEA Trådfri lights"
description: "Access and control your ZigBee-based IKEA Trådfri (Tradfri) Lights."
description: "Access and control your Zigbee-based IKEA Trådfri (Tradfri) Lights."
date: 2017-04-12 22.04
sidebar: true
comments: false

View File

@ -28,15 +28,17 @@ light:
host: 192.168.1.59
```
Configuration variables:
- **host** (*Required*): IP address of your Yeelight Sunflower hub.
{% configuration %}
host:
description: IP address of your Yeelight Sunflower hub.
required: true
type: string
{% endconfiguration %}
<p class='note'>
When the hub is loaded, your lights will appear as devices with their Zigbee IDs as part of the entity name.
When the hub is loaded, your lights will appear as devices with their Zigbee IDs as part of the entity name.
</p>
<p class='note warning'>
The Yeelight Sunflower hub supports SSDP discovery, but that has not been built into the platform. Let the developer know if that would be helpful to you.
</p>

View File

@ -1,7 +1,7 @@
---
layout: page
title: "ZigBee Home Automation Light"
description: "Instructions on how to setup ZigBee Home Automation lights within Home Assistant."
title: "Zigbee Home Automation Light"
description: "Instructions on how to setup Zigbee Home Automation lights within Home Assistant."
date: 2017-02-22 00:00
sidebar: true
comments: false
@ -12,4 +12,4 @@ ha_category: Light
ha_iot_class: "Local Polling"
---
To get your ZigBee lights working with Home Assistant, follow the instructions for the general [ZigBee Home Automation component](/components/zha/).
To get your Zigbee lights working with Home Assistant, follow the instructions for the general [Zigbee Home Automation component](/components/zha/).

View File

@ -1,7 +1,7 @@
---
layout: page
title: ZigBee Light
description: "Instructions on how to set up ZigBee lights within Home Assistant."
title: Zigbee Light
description: "Instructions on how to set up Zigbee lights within Home Assistant."
date: 2016-01-28 12:38
sidebar: true
comments: false
@ -13,7 +13,7 @@ ha_release: 0.12
ha_iot_class: "Local Polling"
---
A ZigBee light in this context is a light connected to one of the digital output pins on a ZigBee module. It can simply be switched on and off. By default, a light is considered `on` when the ZigBee device's digital output is held `high` and considered `off` when it is held `low`. This behavior can be inverted by setting the `on_state` configuration variable to `low`.
A Zigbee light in this context is a light connected to one of the digital output pins on a Zigbee module. It can simply be switched on and off. By default, a light is considered `on` when the Zigbee device's digital output is held `high` and considered `off` when it is held `low`. This behavior can be inverted by setting the `on_state` configuration variable to `low`.
To configure a digital output pin as light, add the following to your `configuration.yaml` file:
@ -34,7 +34,7 @@ pin:
required: true
type: integer
address:
description: The long 64-bit address of the remote ZigBee device whose digital output pin you would like to switch. Do not include this variable if you want to switch the local ZigBee device's pins.
description: The long 64-bit address of the remote Zigbee device whose digital output pin you would like to switch. Do not include this variable if you want to switch the local Zigbee device's pins.
required: false
type: string
on_state:

View File

@ -27,8 +27,6 @@ matrix:
name: my_command
```
Configuration variables:
{% configuration %}
username:
description: "The matrix username that Home Assistant should use to log in. *Note*: You must specify a full matrix ID here, including the homeserver domain, e.g., '@my_matrix_bot:matrix.org'. Please note also that the '@' character has a special meaning in YAML, so this must always be given in quotes."

View File

@ -14,7 +14,7 @@ ha_iot_class: "Local Polling"
---
The `firetv` platform allows you to control a [Amazon Fire TV/stick](http://www.amazon.com/Amazon-DV83YW-Fire-TV/dp/B00U3FPN4U).
The `firetv` platform allows you to control a [Amazon Fire TV/stick](https://www.amazon.com/b/?node=8521791011).
The python-firetv Python 2.x module with its helper script that exposes an HTTP server to fetch state and perform actions is used.

View File

@ -13,7 +13,6 @@ ha_iot_class: "Local Polling"
ha_release: 0.34
---
The `philips_js` platform allows you to control Philips TVs which expose the [jointSPACE](http://jointspace.sourceforge.net/) API. Instructions on how to activate the API and if your model is supported can be found [here](http://jointspace.sourceforge.net/download.html).
To add your TV to your installation, add the following to your `configuration.yaml` file:
@ -25,24 +24,38 @@ media_player:
host: 192.168.1.99
```
Configuration variables:
- **host** (*Required*): IP address of TV.
- **name** (*Optional*): The name you would like to give to the Philips TV.
- **turn_on_action** (*Optional*): A script that will be executed to turn on the TV (can be used with wol).
- **api_version** (*Optional*): The JointSpace API version of your Philips TV, defaults to `1`. This is an experimental option and not all the functionalities are guaranteed to work with API versions different from `1` and `5`.
{% configuration %}
host:
description: IP address of TV.
required: true
default: 127.0.0.1 (localhost).
type: string
name:
description: The name you would like to give to the Philips TV.
required: false
default: Philips TV
type: string
turn_on_action:
description: A script that will be executed to turn on the TV (can be used with wol).
required: false
type: list
api_version:
description: The JointSpace API version of your Philips TV. This is an experimental option and not all the functionalities are guaranteed to work with API versions different from `1` and `5`.
required: false
default: 1
type: integer
{% endconfiguration %}
<p class='note'>
When using api_version: 5 changing sources switches tv channels. Additionally this allows setting the volume level.
</p>
```yaml
# Example configuration.yaml with turn_on_action
media_player:
- platform: philips_js
host: 192.168.1.99
turn_on_action:
turn_on_action:
service: wake_on_lan.send_magic_packet
data:
mac: aa:bb:cc:dd:ee:ff

View File

@ -22,9 +22,17 @@ To add Snapcast to your installation, add the following to your `configuration.y
# Example configuration.yaml entry
media_player:
- platform: snapcast
host: xxx.xxx.xxx.xxx
host: YOUR_IP_ADDRESS
```
Configuration variables:
- **host** (*Required*): The IP of the device, eg. `192.168.0.10`.
{% configuration %}
host:
description: The IP address of the device, e.g., `192.168.0.10`.
required: true
type: string
port:
description: The port number.
required: false
default: 1705
type: integer
{% endconfiguration %}

View File

@ -26,8 +26,20 @@ media_player:
port: 3000
```
Configuration variables:
- **name** (*Optional*): Name of the device
- **host** (*Required*): IP address or hostname of the device
- **port** (*Required*): Port number of Volumio service
{% configuration %}
name:
description: The name of the device.
required: false
default: Volumio
type: string
host:
description: The IP address or hostname of the device.
required: true
default: localhost
type: string
port:
description: The Port number of Volumio service.
required: true
default: 3000
type: integer
{% endconfiguration %}

View File

@ -13,7 +13,6 @@ ha_release: "0.20"
ha_iot_class: "Cloud Polling"
---
The `netatmo` component platform is the main component to integrate all Netatmo related platforms.
To enable the Netatmo component, add the following lines to your `configuration.yaml`:
@ -27,8 +26,6 @@ netatmo:
password: YOUR_PASSWORD
```
Configuration variables:
{% configuration %}
api_key:
description: The `client id` from your Netatmo app.
@ -61,7 +58,7 @@ Click on 'Create an App' at the top of the page.
<p class='img'>
<img src='/images/screenshots/netatmo_create.png' />
</p>
You have to fill the form, but only two fields are required : Name and Description. It doesn't really matter what you put into those. Just write something that make sense to you. To submit your new app, click on create at the bottom of the form.
You have to fill the form, but only two fields are required: Name and Description. It doesn't really matter what you put into those. Just write something that make sense to you. To submit your new app, click on create at the bottom of the form.
<p class='img'>
<img src='/images/screenshots/netatmo_app.png' />
@ -72,4 +69,3 @@ That's it. You can copy and paste your new `client id` and `client secret` in yo
<p class='img'>
<img src='/images/screenshots/netatmo_api.png' />
</p>

View File

@ -14,7 +14,9 @@ ha_release: 0.37
The [Discord service](https://discordapp.com/) is a platform for the notify component. This allows components to send messages to the user using Discord.
In order to get a token you need to go to the [Discord My Apps page](https://discordapp.com/developers/applications/me) and create a new application. Once the application is ready, create a [bot](https://discordapp.com/developers/docs/topics/oauth2#bots) user (**Create a Bot User**) and activate **Require OAuth2 Code Grant**. Retrieve the **Client ID** and the (hidden) **Token** of your bot for later.
In order to get a token you need to go to the [Discord My Apps page](https://discordapp.com/developers/applications/me) and create a new application. Once the application is ready, create a [bot](https://discordapp.com/developers/docs/topics/oauth2#bots) user (**Create a Bot User**).
Retreive the **Client ID** from the information section and the (hidden) **Token** of your bot for later.
When setting up the application you can use this [icon](/demo/favicon-192x192.png).

View File

@ -24,19 +24,45 @@ To enable the HipChat notification in your installation, add the following to yo
notify:
- name: NOTIFIER_NAME
platform: hipchat
token: ABCDEFGHJKLMNOPQRSTUVXYZ
token: YOUR_TOKEN
room: 1234567
```
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`.
- **token** (*Required*): The HipChat API token to use for sending HipChat notifications.
- **room** (*Required*): The default room to post to if no room is explicitly specified when sending the notification.
- **color** (*Optional*): Setting color will override the default color for the notification. By default not setting this will post to HipChat using the default color yellow. Valid options are 'yellow', 'green', 'red', 'purple', 'gray', 'random'.
- **notify** (*Optional*): Setting notify will override the default notify (blink application icon, chime, or otherwise call attention) setting for the notification. By default this is 'false'. Valid options are 'true' and 'false'.
- **format** (*Optional*): Setting format will override the default message format. Default is 'text'. Valid options are 'text' and 'html'.
- **host** (*Optional*): Setting the host will override the default HipChat server host. Default is 'https://api.hipchat.com/'.
{% 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
token:
description: The HipChat API token to use for sending HipChat notifications.
required: true
type: string
room:
description: The default room to post to if no room is explicitly specified when sending the notification.
required: true
type: integer
color:
description: Setting color will override the default color for the notification. Valid options are 'yellow', 'green', 'red', 'purple', 'gray', 'random'.
required: false
default: yellow
type: string
notify:
description: Setting notify will override the default notify (blink application icon, chime, or otherwise call attention) setting for the notification. Valid options are 'true' and 'false'.
required: false
default: false
type: boolean
format:
description: Setting format will override the default message format. Default is 'text'. Valid options are 'text' and 'html'.
required: false
default: text
type: string
host:
description: Setting the host will override the default HipChat server host.
required: false
default: "https://api.hipchat.com/"
type: string
{% endconfiguration %}
### {% linkable_title HipChat service data %}
@ -50,4 +76,3 @@ The following attributes can be placed `data` for extended functionality.
| `format` | yes | (str) Same usage as in configuration.yaml. Overrides any setting set in configuration.yaml.
To use notifications, please see the [getting started with automation page](/getting-started/automation/).

View File

@ -36,11 +36,20 @@ notify:
recipient: PHONE_NUMBER_TO_NOTIFY
```
Configuration variables:
- **username** (*Required*): This is your login name (usually your phone number). Veryfy that you can use your credentials on the Yesss.at website.
- **password** (*Required*): This is the password you use to login to Yesss.at.
- **recipient** (*Required*): This is the phone number you want to send the SMS notification to.
{% configuration %}
username:
description: This is your login name (usually your phone number). Veryfy that you can use your credentials on the Yesss.at website.
required: true
type: string
password:
description: This is the password you use to login to Yesss.at.
required: true
type: string
recipient:
description: This is the phone number you want to send the SMS notification to.
required: true
type: string
{% endconfiguration %}
<p class='note warning'>
Verify that your credentials work on [Yesss.at's website](https://yesss.at). Using the wrong credentials three times in a row will get you suspended for one hour.

View File

@ -15,7 +15,7 @@ ha_iot_class: "Local Push"
[Pilight](https://www.pilight.org/) is a modular and open source solution to communicate with 433 MHz devices and runs on various small form factor computers. A lot of common [protocols](https://manual.pilight.org/protocols/index.html) are already available.
This pilight hub connects to the [pilight-daemon](https://manual.pilight.org/programs/daemon.html) via a socket connection to receive and send codes. Thus Home Assistant does not have to run on the computer in charge of the RF communication.
This pilight hub connects to the [pilight-daemon](https://manual.pilight.org/programs/daemon.html) via a socket connection to receive and send codes. Thus Home Assistant does not have to run on the computer in charge of the RF communication.
The received and supported RF codes are put on the event bus of Home Assistant and are therefore directly usable by other components (e.g., automation). Additionally a send service is provided to send RF codes.
@ -28,12 +28,27 @@ To integrate pilight into Home Assistant, add the following section to your `con
pilight:
```
Configuration variables:
- **host** (*Optional*): The IP address of the computer running the pilight-daemon, e.g., 192.168.1.32.
- **port** (*Optional*): The network port to connect to. The usual port is [5001](https://manual.pilight.org/development/api.html).
- **send_delay** (*Optional*): You can define a send delay as a fraction of seconds if you experience transmission problems when you try to switch multiple switches at once. This can happen when you use a [pilight USB Nano](https://github.com/pilight/pilight-usb-nano) as hardware and switches a whole group of multiple switches on or off. Tested values are between 0.3 and 0.8 seconds depending on the hardware.
- **whitelist** (*Optional*): You can define a whitelist to prevent that too many unwanted RF codes (e.g., the neighbors weather station) are put on your HA event bus. All defined subsections have to be matched. A subsection is matched if one of the items are true.
{% configuration %}
host:
description: The IP address of the computer running the pilight-daemon, e.g., 192.168.1.32.
required: false
default: 127.0.0.1
type: string
port:
description: "The network port to connect to, see also: (https://manual.pilight.org/development/api.html)."
required: false
default: 5001
type: integer
send_delay:
description: You can define a send delay as a fraction of seconds if you experience transmission problems when you try to switch multiple switches at once. This can happen when you use a [pilight USB Nano](https://github.com/pilight/pilight-usb-nano) as hardware and switches a whole group of multiple switches on or off. Tested values are between 0.3 and 0.8 seconds depending on the hardware.
required: false
default: 0.0
type: float
whitelist:
description: You can define a whitelist to prevent that too many unwanted RF codes (e.g., the neighbors weather station) are put on your HA event bus. All defined subsections have to be matched. A subsection is matched if one of the items are true.
required: false
type: string
{% endconfiguration %}
In this example only received RF codes using a daycom or Intertechno protocol are put on the event bus and only when the device id is 42. For more possible settings please look at the receiver section of the pilight [API](https://manual.pilight.org/development/api.html).

View File

@ -29,15 +29,26 @@ sensor:
- platform: logi_circle
```
Configuration variables:
- **monitored_conditions** array (*Optional*): Conditions to display in the frontend. The following conditions can be monitored. If not specified, all conditions supported by your camera will be enabled.
- **battery_level**: Return the battery level percentage from the camera.
- **last_activity_time**: Return the timestamp from the last time the Logi Circle camera detected any activity.
- **privacy_mode**: Return the privacy mode status from the camera.
- **signal_strength_category**: Return the WiFi signal level from the camera.
- **signal_strength_percentage**: Return the WiFi signal percentage from the camera.
- **speaker_volume**: Return the relative speaker volume from the camera (0-100%).
- **streaming_mode**: Return the streaming mode status from the camera.
{% configuration %}
monitored_conditions:
description: Conditions to display in the frontend. The following conditions can be monitored. If not specified, all conditions supported by your camera will be enabled.
required: false
type: list
keys:
battery_level:
description: Return the battery level percentage from the camera.
last_activity_time:
description: Return the timestamp from the last time the Logi Circle camera detected any activity.
privacy_mode:
description: Return the privacy mode status from the camera.
signal_strength_category:
description: Return the WiFi signal level from the camera.
signal_strength_percentage:
description: Return the WiFi signal percentage from the camera.
speaker_volume:
description: Return the relative speaker volume from the camera (0-100%).
streaming_mode:
description: Return the streaming mode status from the camera.
{% endconfiguration %}
Currently it supports all 1st and 2nd generation cameras. Cameras without an internal battery will not expose a `battery_level` sensor.

View File

@ -13,7 +13,7 @@ ha_release: 0.29
ha_iot_class: "Local Polling"
---
The `miflora` sensor platform allows one to monitor plant soil and air conditions. The [Mi Flora plant sensor](https://xiaomi-mi.com/sockets-and-sensors/xiaomi-huahuacaocao-flower-care-smart-monitor/) 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.
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
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:

View File

@ -13,7 +13,6 @@ ha_iot_class: "Cloud Polling"
ha_release: "0.57"
---
This sensor will provide you with time table information of the [Nederlandse Spoorwegen](https://www.ns.nl/) train service in the Netherlands.
You must create an application [here](https://www.ns.nl/ews-aanvraagformulier/) to obtain a `password`.
@ -36,15 +35,37 @@ sensor:
via: Zl
```
Configuration variables:
- **email** (*Required*): The email address you used to request the API password.
- **password** (*Required*): The API password provided by the Nederlandse Spoorwegen.
- **routes** array (*Required*): List of traveling routes.
- **name** (*Required*): Name of the route.
- **from** (*Required*): The start station.
- **to** (*Required*): Direction of the traveling.
- **via** (*Optional*): Optional other station you wish to visit in between.
{% configuration %}
email:
description: The email address you used to request the API password.
required: true
type: string
password:
description: The API password provided by the Nederlandse Spoorwegen.
required: true
type: string
routes:
description: List of traveling routes.
required: false
type: list
keys:
name:
description: Name of the route.
required: true
type: string
frome:
description: The start station.
required: true
type: string
to:
description: Direction of the traveling.
required: true
type: string
via:
description: Optional other station you wish to visit in between.
required: false
type: string
{% endconfiguration %}
The data are coming from [Nederlandse Spoorwegen](https://www.ns.nl/).

View File

@ -13,22 +13,33 @@ ha_iot_class: "Cloud Polling"
ha_release: 0.26
---
The `ohmconnect` sensor will show you the current [OhmConnect](https://www.ohmconnect.com/) status for the given OhmConnect ID.
> OhmConnect monitors real-time conditions on the electricity grid. When dirty and unsustainable power plants turn on, our users receive a notification to save energy. By saving energy at that time, California does not have to turn on additional power plants and California's energy authorities pay you for that.
OhmConnect monitors real-time conditions on the electricity grid. When dirty and unsustainable power plants turn on, our users receive a notification to save energy. By saving energy at that time, California does not have to turn on additional power plants and California's energy authorities pay you for that.
## {% linkable_title Configuration %}
You can find your OhmConnect ID under "Open Source Projects" on the [settings page](https://login.ohmconnect.com/settings). It's the string after the last `/` in the URL, i.e. for the URL `https://login.ohmconnect.com/verify-ohm-hour/AbCd1e` your ID is `AbCd1e`.
You can find your OhmConnect ID under "Open Source Projects" on the [settings page](https://login.ohmconnect.com/settings). It's the string after the last `/` in the URL, e.g., for the URL `https://login.ohmconnect.com/verify-ohm-hour/AbCd1e` your ID is `AbCd1e`.
## {% linkable_title Configuration %}
To enable the OhMConnect sensor, add the following lines to your `configuration.yaml` file:
```yaml
# Example configuration.yaml entry
sensor:
- platform: ohmconnect
id: AbCd1e
id: YOUR_OHMCONNECT_ID
```
Configuration variables:
- **id** (*Required*): Your OhmConnect ID which can be found on the settings page.
- **name** (*Optional*): A name to display on the sensor. The default is "OhmConnect Status".
{% configuration %}
id:
description: Your OhmConnect ID.
required: true
type: string
name:
description: A name to display on the sensor.
required: false
default: OhmConnect Status
type: string
{% endconfiguration %}

View File

@ -13,7 +13,6 @@ ha_release: 0.31
ha_iot_class: depends
---
This `pilight` sensor platform for 433 MHz devices uses a value in the message payload as the sensor value. Unique identifiers (e.g., _uuid_) can be set to distinguish between multiple pilight devices. To use a pilight sensor the pilight Home Assistant hub has to be set up.
## {% linkable_title Configuration %}
@ -29,18 +28,30 @@ sensor:
uuid: '0000-b8-27-eb-f447d3'
```
Configuration variables:
- **variable** (*Required*): The variable name in the data stream that defines the sensor value.
- **payload** (*Required*): Message payload identifiers. Only if all identifiers are matched the sensor value is set.
- **name** (*Optional*): Name of the sensor.
- **unit_of_measurement** (*Optional*): Defines the units of measurement of the sensor, if any.
{% configuration %}
variable:
description: The variable name in the data stream that defines the sensor value.
required: true
type: string
payload:
description: Message payload identifiers. Only if all identifiers are matched the sensor value is set.
required: true
type: string
name:
description: Name of the sensor.
required: false
default: Pilight Sensor
type: string
unit_of_measurement:
description: Defines the units of measurement of the sensor, if any.
required: false
type: string
{% endconfiguration %}
## {% linkable_title Example: Weather station %}
This section shows a real life example how to use values of a weather station.
```yaml
# Example configuration.yaml entry
sensor:

View File

@ -13,11 +13,16 @@ ha_release: 0.44
ha_iot_class: "Cloud Polling"
---
The `pushbullet` sensor platform reads messages from [Pushbullet](https://www.pushbullet.com/), a free service to send information between your phones, browsers, and friends.
This sensor platform provides sensors that show the properties of the latest received Pushbullet notification mirror.
The `pushbullet` sensor platform reads messages from [Pushbullet](https://www.pushbullet.com/), a free service to send information between your phones, browsers, and friends. This sensor platform provides sensors that show the properties of the latest received Pushbullet notification mirror.
## {% linkable_title Setup %}
Notification Mirroring allows users to see their Android device's notifications on their computer. It must be first enabled in the app and is currently only available on the Android platform. For more information, please see [this announcement](https://blog.pushbullet.com/2013/11/12/real-time-notification-mirroring-from-android-to-your-computer/) on the Pushbullet Blog.
Go to [https://www.pushbullet.com/#settings/account](https://www.pushbullet.com/#settings/account) to retrieve your API key/access token.
## {% linkable_title Configuration %}
To enable the Pushbullet sensor in your installation, add the following to your `configuration.yaml` file:
```yaml
@ -29,21 +34,37 @@ sensor:
- body
```
Configuration variables:
{% configuration %}
api_key:
description: Your Pushbullet API key.
required: true
type: string
monitored_conditions:
description: Properties of the push to monitor.
required: false
default: "`body` and `title`"
type: list
keys:
application_name:
description: The application sending the push.
body:
description: Body of the message.
notification_id:
description: ID of the notification.
notification_tag:
description: Tag (if the application sending supports it).
package_name:
description: Name of the sender's package.
receiver_email:
description: The email of the push's target.
sender_email:
description: The sender of the push.
source_device_iden:
description: ID of the sender's device.
title:
description: Title of the push.
type:
description: Type of push.
{% endconfiguration %}
- **api_key** (*Required*): Enter the API key for Pushbullet. Go to [https://www.pushbullet.com/#settings/account](https://www.pushbullet.com/#settings/account) to retrieve your API key/access token.
- **monitored_conditions** array (*Optional*): Properties of the push to monitor. Defaults to `body` and `title`.
- **application_name**: The application sending the push.
- **body**: Body of the message.
- **notification_id**: ID of the notification.
- **notification_tag**: Tag (if the application sending supports it).
- **package_name**: Name of the sender's package.
- **receiver_email**: The email of the push's target.
- **sender_email**: The sender of the push.
- **source_device_iden**: ID of the sender's device.
- **title**: Title of the push.
- **type**: Type of push.
All properties will be displayed as attributes. The properties array are just for logging the sensor readings for multiple properties.

View File

@ -27,10 +27,21 @@ sensor:
scan_interval: 120
```
Configuration variables:
- **api_key** (*Required*): Your API key. A read-only key is fine.
- **system_id** (*Required*): The ID of your station.
{% configuration %}
api_key:
description: Your API key. A read-only key is fine.
required: true
type: string
system_id:
description: The ID of your station.
required: true
type: string
name:
description: Name of the sensor.
required: false
default: PVOutput
type: string
{% endconfiguration %}
<p class='note warning'>
It's recommended to set `scan_interval:` according to a value greater than 60 seconds. The service only allows 60 requests per hour but the sensor's default is 30 seconds.

View File

@ -26,17 +26,45 @@ sensor:
select: ".current-version h1"
```
Configuration variables:
- **resource** (*Required*): The URL to the website that contains the value.
- **select** (*Required*): Defines the HTML tag to search for. Check Beautifulsoup's [CSS selectors](https://www.crummy.com/software/BeautifulSoup/bs4/doc/#css-selectors) for details.
- **attribute** (*optional*): Get value of an attribute on the selected tag.
- **name** (*Optional*): Name of the sensor.
- **unit_of_measurement** (*Optional*): Defines the units of measurement of the sensor, if any.
- **authentication** (*Optional*): Type of the HTTP authentication. Either `basic` or `digest`.
- **username** (*Optional*): The username for accessing the website.
- **password** (*Optional*): The password for accessing the website.
- **headers** (*Optional*): Headers to use for the web request
{% configuration %}
resource:
description: The URL to the website that contains the value.
required: true
type: string
select:
description: "Defines the HTML tag to search for. Check Beautifulsoup's [CSS selectors](https://www.crummy.com/software/BeautifulSoup/bs4/doc/#css-selectors) for details."
required: true
type: string
attribute:
description: Get value of an attribute on the selected tag.
required: false
type: string
name:
description: Name of the sensor.
required: false
default: Web scrape
type: string
unit_of_measurement:
description: Defines the units of measurement of the sensor, if any.
required: false
type: string
authentication:
description: Type of the HTTP authentication. Either `basic` or `digest`.
required: false
type: string
username:
description: The username for accessing the website.
required: false
type: string
password:
description: The password for accessing the website.
required: false
type: string
headers:
description: Headers to use for the web request.
required: false
type: string
{% endconfiguration %}
## {% linkable_title Examples %}

View File

@ -28,7 +28,7 @@ sensor:
{% configuration %}
host:
description: The IP address of your host, eg. `192.168.1.32`.
required: true
required: false
type: string
default: 'localhost'
baseoid:
@ -37,7 +37,7 @@ baseoid:
type: string
port:
description: The SNMP port of your host.
required: Option
required: false
type: string
default: '161'
community:

View File

@ -1,7 +1,7 @@
---
layout: page
title: "IKEA Trådfri Sensor"
description: "Access and control your ZigBee-based IKEA Trådfri (Tradfri) Sensors."
description: "Access and control your Zigbee-based IKEA Trådfri (Tradfri) Sensors."
date: 2017-04-12 22.04
sidebar: true
comments: false

View File

@ -16,7 +16,11 @@ ha_release: 0.16
The `uber` sensor will give you time and price estimates for all available [Uber](https://uber.com) products at the given location. The `ATTRIBUTES` are used to provide extra information about products, such as estimated trip duration, distance and vehicle capacity. By default, 2 sensors will be created for each product at the given `start` location, one for pickup time and one for current price. The sensor is powered by the official Uber [API](https://developer.uber.com/).
You must create an application [here](https://developer.uber.com/dashboard/create) to obtain a `server_token`.
## {% linkable_title Setup %}
You must [create an application](https://developer.uber.com/dashboard/create) in the [Uber developer Dashboard](https://developer.uber.com) to obtain a `server_token`.
## {% linkable_title Configuration %}
To enable this sensor, add the following lines to your `configuration.yaml` file:
@ -24,19 +28,39 @@ To enable this sensor, add the following lines to your `configuration.yaml` file
# Example configuration.yaml entry
sensor:
- platform: uber
server_token: 'BeAPPTDsWZSHLf7fd9OWjZkIezweRw18Q8NltY27'
server_token: YOUR_UBER_SERVER_TOKEN
```
Configuration variables:
{% configuration %}
server_token:
description: The Server API token.
required: true
type: string
start_latitude:
description: The starting latitude for a trip.
required: false
default: to the latitude in your `configuration.yaml` file.
type: float
start_longitude:
description: The starting longitude for a trip.
required: false
default: to the longitude in your `configuration.yaml` file.
type: float
end_latitude:
description: The ending latitude for a trip. While `end_latitude` is optional, it is strongly recommended to provide an `end_latitude`/`end_longitude` when possible as you will get more accurate price and time estimates.
required: false
type: float
end_longitude:
description: The ending longitude for a trip. While `end_longitude` is optional, it is strongly recommended to provide an `end_latitude`/`end_longitude` when possible as you will get more accurate price and time estimates.
required: false
type: float
product_ids:
description: A list of Uber product UUIDs. If provided, sensors will only be created for the given product IDs. Please note that product IDs are region and some times even more specific geographies based. The easiest way to find a UUID is to click on a sensor in the Home Assistant frontend and look for "Product ID" in the attributes.
required: false
type: list
{% endconfiguration %}
- **server_token** (*Required*): A server token obtained from [developer.uber.com](https://developer.uber.com) after [creating an app](https://developer.uber.com/dashboard/create).
- **start_latitude** (*Optional*): The starting latitude for a trip. Defaults to the latitude in your `configuration.yaml` file.
- **start_longitude** (*Optional*): The starting longitude for a trip. Defaults to the longitude in your `configuration.yaml` file.
- **end_latitude** (*Optional*): The ending latitude for a trip. While `end_latitude` is optional, it is strongly recommended to provide an `end_latitude`/`end_longitude` when possible as you will get more accurate price and time estimates.
- **end_longitude** (*Optional*): The ending longitude for a trip. While `end_longitude` is optional, it is strongly recommended to provide an `end_latitude`/`end_longitude` when possible as you will get more accurate price and time estimates.
- **product_ids** (*Options*): A list of Uber product UUIDs. If provided, sensors will only be created for the given product IDs. Please note that product IDs are region and some times even more specific geographies based. The easiest way to find a UUID is to click on a sensor in the Home Assistant frontend and look for "Product ID" in the attributes.
A full configuration entry could look like the sample below:
A full configuration entry could look like the sample below:
```yaml
# Example configuration.yaml entry

View File

@ -1,7 +1,7 @@
---
layout: page
title: "ZigBee Home Automation Sensor"
description: "Instructions on how to setup ZigBee Home Automation sensors within Home Assistant."
title: "Zigbee Home Automation Sensor"
description: "Instructions on how to setup Zigbee Home Automation sensors within Home Assistant."
date: 2017-02-22 00:00
sidebar: true
comments: false
@ -12,5 +12,5 @@ ha_category: Sensor
ha_iot_class: "Local Polling"
---
To get your ZigBee sensors working with Home Assistant, follow the instructions for the general [ZigBee Home Automation Component](/components/zha/).
To get your Zigbee sensors working with Home Assistant, follow the instructions for the general [Zigbee Home Automation Component](/components/zha/).

View File

@ -1,7 +1,7 @@
---
layout: page
title: ZigBee Sensor
description: "Instructions on how to set up ZigBee sensors within Home Assistant."
title: Zigbee Sensor
description: "Instructions on how to set up Zigbee sensors within Home Assistant."
date: 2016-01-28 10:08
sidebar: true
comments: false
@ -13,7 +13,7 @@ ha_release: 0.12
ha_iot_class: "Local Polling"
---
There are two types of [ZigBee](http://www.zigbee.org/) sensor available to Home Assistant:
There are two types of [Zigbee](http://www.zigbee.org/) sensor available to Home Assistant:
- [Analog input pin](#analog-input-pin)
- [Temperature sensor](#temperature-sensor) (XBee Pro)
@ -24,7 +24,7 @@ To configure an analog input pin sensor, add the following to your `configuratio
# Example configuration.yaml entry
sensor:
- platform: zigbee
name: My Analog ZigBee Input
name: My Analog Zigbee Input
type: analog
pin: 0
address: 0013A2004233D138
@ -44,7 +44,7 @@ pin:
required: false
type: integer
address:
description: The long 64-bit address of the remote ZigBee device whose pin you would like to sample. Do not include this variable if you want to sample the local ZigBee device's pins.
description: The long 64-bit address of the remote Zigbee device whose pin you would like to sample. Do not include this variable if you want to sample the local Zigbee device's pins.
required: false
type: string
max_volts:
@ -58,7 +58,7 @@ max_volts:
### {% linkable_title Analog Input Pin %}
The analog input pins on an XBee (non-Pro) will read 0V to 1.2 V. This is translated by the [xbee-helper](https://github.com/flyte/xbee-helper) library into a percentage. The maximum voltage your ZigBee device will read is configurable using the `max_volts` configuration variable.
The analog input pins on an XBee (non-Pro) will read 0V to 1.2 V. This is translated by the [xbee-helper](https://github.com/flyte/xbee-helper) library into a percentage. The maximum voltage your Zigbee device will read is configurable using the `max_volts` configuration variable.
To configure an analog input pin sensor, add the following to your `configuration.yaml` file:
@ -66,7 +66,7 @@ To configure an analog input pin sensor, add the following to your `configuratio
## Example configuration.yaml entry
sensor:
- platform: zigbee
name: My Analog ZigBee Input
name: My Analog Zigbee Input
type: analog
pin: 0
address: 0013A2004233D138
@ -84,7 +84,7 @@ To configure a temperature sensor device, add the following to your `configurati
# Example configuration.yaml entry
sensor:
- platform: zigbee
name: Living Room Temperature ZigBee
name: Living Room Temperature Zigbee
type: temperature
address: 0013A20050E752C5
```

View File

@ -34,20 +34,63 @@ switch:
- light.lamp
```
Configuration variables:
- **lights** (*Required*) array: List of light entities.
- **name** (*Optional*): The name to use when displaying this switch.
- **start_time** (*Optional*): The start time. Default to sunrise.
- **stop_time** (*Optional*): The stop time. Defaults to dusk.
- **start_colortemp** (*Optional*): The color temperature at the start. Defaults to `4000`.
- **sunset_colortemp** (*Optional*): The sun set color temperature. Defaults to `3000`.
- **stop_colortemp** (*Optional*): The color temperature at the end. Defaults to `1900`.
- **brightness** (*Optional*): The brightness of the lights. Calculated with `RGB_to_xy` by default.
- **disable_brightness_adjust** (*Optional*): If true, brightness will not be adjusted besides color temperature. Defaults to False.
- **mode** (*Optional*): Select how color temperature is passed to lights. Valid values are `xy`, `mired` and `rgb`. Defaults to `xy`.
- **transition** (*Optional*): Transition time for the light changes (high values may not be supported by all light models). Defaults to 30.
- **interval** (*Optional*): Frequency at which the lights should be updated. Defaults to 30.
{% configuration %}
lights:
description: array list of light entities.
required: true
type: list
name:
description: The name to use when displaying this switch.
required: false
default: Flux
type: string
start_time:
description: The start time.
required: false
type: time
stop_time:
description: The stop time.
required: false
type: time
start_colortemp:
description: The color temperature at the start.
required: false
default: 4000
type: integer
sunset_colortemp:
description: The sun set color temperature.
required: false
default: 3000
type: integer
stop_colortemp:
description: The color temperature at the end.
required: false
default: 1900
type: integer
brightness:
description: The brightness of the lights.
required: false
type: integer
disable_brightness_adjust:
description: If true, brightness will not be adjusted besides color temperature.
required: false
type: boolean
mode:
description: Select how color temperature is passed to lights. Valid values are `xy`, `mired` and `rgb`.
required: false
default: xy
type: string
transition:
description: Transition time for the light changes (high values may not be supported by all light models).
required: false
default: 30
type: integer
interval:
description: Frequency at which the lights should be updated.
required: false
default: 30
type: integer
{% endconfiguration %}
Full example:
@ -70,4 +113,3 @@ switch:
transition: 30
interval: 60
```

View File

@ -25,7 +25,9 @@ switch:
- '4:2': Sprinkler
```
Configuration variables:
- **ports** (*Required*): A list of module-address to name mappings in the format 'x:y': name, where x is module #, y is address.
{% configuration %}
ports:
description: "A list of module-address to name mappings in the format 'x:y': name, where x is module #, y is address."
required: true
type: list
{% endconfiguration %}

View File

@ -13,7 +13,6 @@ ha_release: 0.16
ha_iot_class: "Local Polling"
---
The goal behind this switch is to allow a very flexible whole home audio system based upon [PulseAudio](https://www.freedesktop.org/wiki/Software/PulseAudio/).
For example, for a system with a 7.1 surround sound card, and 3 instances of [MPD](https://www.musicpd.org/) running, it is possible to quickly route the output of any MPD instance to any of the 8 possible (4 stereo) channels on the sound card, by loading/unloading a loopback module. This loading/unloading functionality is provided by this component. When the switch is `on`, the loopback module is loaded. When the switch is `off`, the module is not loaded.
@ -30,17 +29,42 @@ switch:
- platform: pulseaudio_loopback
```
Configuration variables:
- **sink_name** (*Required*): The name of the Pulseaudio sink that will receive the audio.
- **source_name** (*Required*): The name of the Pulseaudio source that will supply the audio.
- **name** (*Optional*): Name of the switch.
- **host** (*Optional*): The IP address or host name of the PulseAudio server. If not specified, 127.0.0.1 is used.
- **port** (*Optional*): The port that Pulseaudio is listening on. Defaults to 4712.
- **buffer_size** (*Optional*): How much data to load from Pulseaudio at once. Default is 1KB.
- **tcp_timeout** (*Optional*): How long to wait for a response from Pulseaudio before giving up. Default is 3 seconds.
{% configuration %}
sink_name:
description: The name of the Pulseaudio sink that will receive the audio.
required: true
type: string
source_name:
description: The name of the Pulseaudio source that will supply the audio.
required: true
type: string
name:
description: Name of the switch.
required: false
default: paloopback
type: string
host:
description: The IP address or host name of the PulseAudio server.
required: false
default: localhost
type: string
port:
description: The port that Pulseaudio is listening on.
required: false
default: 4712
type: integer
buffer_size:
description: How much data to load from Pulseaudio at once.
required: false
default: 1024
type: integer
tcp_timeout:
description: How long to wait for a response from Pulseaudio before giving up.
required: false
default: 3
type: integer
{% endconfiguration %}
<p class='note warning'>
This component relies on raw TCP commands to PulseAudio. In order for PulseAudio to accept commands with this component, `module-cli-protocol` must be loaded on the PulseAudio server.
</p>

View File

@ -29,11 +29,22 @@ switch:
12: Light Desk
```
Configuration variables:
- **ports** array (*Required*): Array of used ports.
- **port: name** (*Required*): Port numbers and corresponding names (GPIO #).
- **invert_logic** (*Optional*): If true, inverts the output logic to ACTIVE LOW. Default is false (ACTIVE HIGH).
{% configuration %}
ports:
description: Array of used ports.
required: true
type: list
keys:
port:
description: Port numbers and corresponding names (GPIO #).
required: true
type: [integer, string]
invert_logic:
description: If true, inverts the output logic to ACTIVE LOW.
required: false
default: false
type: boolean
{% endconfiguration %}
For more details about the GPIO layout, visit the Wikipedia [article](https://en.wikipedia.org/wiki/Raspberry_Pi#GPIO_connector) about the Raspberry Pi.
@ -51,5 +62,3 @@ switch:
ports:
17: Speaker Relay
```

View File

@ -31,10 +31,24 @@ switch:
name: Light Desk
```
Configuration variables:
- **ports** array (*Required*): Array of used ports.
- **num** (*Required*): Port number.
- **name** (*Required*): Port name.
- **invert_logic** (*Optional*): If true, inverts the output logic to ACTIVE LOW. Default is false (ACTIVE HIGH).
{% configuration %}
ports:
description: Array of used ports.
required: true
type: list
keys:
num:
description: Port number.
required: true
type: list
keys:
name:
description: Port name.
required: true
type: string
invert_logic:
description: If true, inverts the output logic to ACTIVE LOW.
required: false
default: false
type: boolean
{% endconfiguration %}

View File

@ -43,13 +43,41 @@ switch:
signal_repetitions: 15
```
Configuration variables:
- **gpio** (*Required*): GPIO to which the data line of the TX module is connected.
- **switches:** (*Required*): The array that contains all switches.
- **[entry]** (*Required*): Name of the switch. Multiple entries are possible.
- **code_on** (*Required*): Decimal code(s) to switch the device on. To run multiple codes in a sequence, separate the individual codes with commas ','.
- **code_off** (*Required*): Decimal code(s) to switch the device off. To run multiple codes in a sequence, separate the individual codes with commas ','.
- **protocol** (*Optional*): RF Protocol (Default is `1`).
- **pulselength** (*Optional*): Pulselength (Default is the protocol default).
- **signal_repetitions** (*Optional*): Number of times to repeat transmission (default is 10, can increase to try to improve reliability).
{% configuration %}
gpio:
description: GPIO to which the data line of the TX module is connected.
required: true
type: integer
switches:
description: The array that contains all switches.
required: true
type: list
keys:
entry:
description: Name of the switch. Multiple entries are possible.
required: true
type: list
keys:
code_on:
description: Decimal code(s) to switch the device on. To run multiple codes in a sequence, separate the individual codes with commas ','.
required: true
type: list
code_off:
description: Decimal code(s) to switch the device off. To run multiple codes in a sequence, separate the individual codes with commas ','.
required: true
type: list
protocol:
description: RF Protocol.
required: false
default: 1
type: integer
pulselength:
description: Pulselength
required: false
type: integer
signal_repetitions:
description: Number of times to repeat transmission
required: false
default: 10
type: integer
{% endconfiguration %}

View File

@ -1,7 +1,7 @@
---
layout: page
title: "IKEA Trådfri Switch"
description: "Access and control your ZigBee-based IKEA Trådfri (Tradfri) Switches."
description: "Access and control your Zigbee-based IKEA Trådfri (Tradfri) Switches."
date: 2018-09-30 19.22
sidebar: true
comments: false

View File

@ -1,7 +1,7 @@
---
layout: page
title: "ZigBee Home Automation Switch"
description: "Instructions on how to setup ZigBee Home Automation switches within Home Assistant."
title: "Zigbee Home Automation Switch"
description: "Instructions on how to setup Zigbee Home Automation switches within Home Assistant."
date: 2017-02-22 00:00
sidebar: true
comments: false
@ -12,4 +12,4 @@ ha_category: Switch
ha_iot_class: "Local Polling"
---
To get your ZigBee switches working with Home Assistant, follow the instructions for the general [ZigBee Home Automation component](/components/zha/).
To get your Zigbee switches working with Home Assistant, follow the instructions for the general [Zigbee Home Automation component](/components/zha/).

View File

@ -1,7 +1,7 @@
---
layout: page
title: "ZigBee Switch"
description: "Instructions on how to set up ZigBee switches within Home Assistant."
title: "Zigbee Switch"
description: "Instructions on how to set up Zigbee switches within Home Assistant."
date: 2016-01-28 11:52
sidebar: true
comments: false
@ -13,7 +13,7 @@ ha_release: 0.12
ha_iot_class: "Local Polling"
---
A ZigBee switch in this context is a device connected to one of the digital output pins on a ZigBee module. It can simply be switched on and off. By default, a switch is considered `on` when the ZigBee device's digital output is held `high` and considered `off` when it is held `low`. This behavior can be inverted by setting the `on_state` configuration variable to `low`.
A Zigbee switch in this context is a device connected to one of the digital output pins on a Zigbee module. It can simply be switched on and off. By default, a switch is considered `on` when the Zigbee device's digital output is held `high` and considered `off` when it is held `low`. This behavior can be inverted by setting the `on_state` configuration variable to `low`.
To configure a digital output pin as switch, add the following to your `configuration.yaml` file:
@ -36,7 +36,7 @@ pin:
required: true
type: integer
address:
description: The long 64-bit address of the remote ZigBee device whose digital output pin you would like to switch. Do not include this variable if you want to switch the local ZigBee device's pins.
description: The long 64-bit address of the remote Zigbee device whose digital output pin you would like to switch. Do not include this variable if you want to switch the local Zigbee device's pins.
required: false
type: string
on_state:

View File

@ -1,7 +1,7 @@
---
layout: page
title: "IKEA Trådfri (Tradfri)"
description: "Access and control your ZigBee-based IKEA Trådfri (Tradfri) devices."
description: "Access and control your Zigbee-based IKEA Trådfri (Tradfri) devices."
date: 2017-04-12 22.04
sidebar: true
featured: true

View File

@ -14,6 +14,8 @@ ha_release: 0.35
The `google` text-to-speech platform uses [Google Text-to-Speech engine](https://console.developers.google.com/apis/api/speech.googleapis.com/overview) Text-to-Speech engine to read a text with natural sounding voices.
## {% linkable_title Configuration %}
To enable text-to-speech with Google, add the following lines to your `configuration.yaml`:
```yaml
@ -22,12 +24,20 @@ tts:
- platform: google
```
Configuration variables:
{% configuration %}
language:
description: "The language to use."
required: false
type: string
default: "`en`"
{% endconfiguration %}
- **language** (*Optional*): The language to use. Defaults to `en`.
- [Complete list of supported languages (Languages where "Talk" feature is enabled in Google Translate)](https://translate.google.com/intl/en_ALL/about/languages/), use 2 digit language code which you can find at the end of url when you click on Language name.
Check the [complete list of supported languages](https://translate.google.com/intl/en_ALL/about/languages/) (languages where "Talk" feature is enabled in Google Translate) for allowed values.
Use the 2 digit language code which you can find at the end of url when you click on Language name.
A full configuration sample:
## {% linkable_title Full configuration example %}
A full configuration sample including optional variables:
```yaml
# Example configuration.yaml entry

View File

@ -16,7 +16,7 @@ ha_iot_class: "Cloud Polling"
The `usps` platform allows one to track deliveries and inbound mail from the [US Postal Service (USPS)](https://www.usps.com/).
In addition to having a USPS account, you will need to complete the "Opt-In" process for packages by clicking "Get Started Now" on [this page](https://my.usps.com/mobileWeb/pages/intro/start.action). You must also "Opt-In" to [Informed Delivery](https://informeddelivery.usps.com/box/pages/intro/start.action) to see inbound mail.
## Prerequisites
## {% linkable_title Prerequisites %}
This component requires that a headless-capable web browser is installed on your system - either PhantomJS or Google Chrome. Preferably use Chrome if your operating system supports it, since PhantomJS is deprecated.
@ -25,10 +25,10 @@ This component requires that a headless-capable web browser is installed on your
</p>
<p class='note warning'>
Hass.io containers are based on Alpine Linux. PhanthomJS is not available for Alpine Linux. Therefore it is currently not possible to use this component on Hass.io.
Hass.io containers are based on Alpine Linux. PhanthomJS is not available for Alpine Linux. Therefore it is currently not possible to use this component on Hass.io.
</p>
### PhantomJS
### {% linkable_title PhantomJS %}
Install the latest version of [PhantomJS]( http://phantomjs.org/download.html). Ensure the executable is on your `PATH`. `phantomjs --version` should work and report the correct version. This is the default option and requires no further configuration.
@ -38,18 +38,17 @@ Install the latest version of [PhantomJS]( http://phantomjs.org/download.html).
If you use the PhantomJS option, specify `driver: phantomjs` in your `usps` configuration.
### Chrome
### {% linkable_title Chrome %}
Install Chrome 59 or greater (preferably the most recent). Install the latest [Chromedriver](https://sites.google.com/a/chromium.org/chromedriver/downloads). Ensure both executables are on your `PATH`. `google-chrome --version` and `chromedriver --version` should work and report the correct version.
OS-specific instructions:
- [Ubuntu 16](https://gist.github.com/ziadoz/3e8ab7e944d02fe872c3454d17af31a5) (Selenium server portion *not* necessary)
- [RHEL/Centos 7](https://stackoverflow.com/a/46686621)
- [RHEL/Centos 7](https://stackoverflow.com/a/46686621)
If you use the Chrome option, specify `driver: chrome` in your `usps` configuration.
## Configuration
## {% linkable_title Configuration %}
To enable this component, add the following lines to your `configuration.yaml`:
@ -62,12 +61,26 @@ usps:
You will see two new sensors, one for packages and one for mail and a camera to rotate through images of incoming mail for the current day.
Configuration options for the USPS component:
- **username** (*Required*): The username to access the MyUSPS service.
- **password** (*Required*): The password for the given username.
- **driver** (*Required*): Specify if you're using `phantomjs` or `chrome`.
- **name** (*Optional*): Prefix for sensor names (defaults to "USPS")
{% configuration %}
username:
description: The username to access the MyUSPS service.
required: true
type: string
password:
description: The password for the given username.
required: true
type: string
driver:
description: Specify if you're using `phantomjs` or `chrome`.
required: false
type: string
default: phantomjs
name:
description: The prefix for sensor names.
required: false
type: string
default: usps
{% endconfiguration %}
<p class='note warning'>
The USPS sensor logs into the MyUSPS website to scrape package data. It does not use an API.

View File

@ -13,8 +13,8 @@ ha_release: 0.44
ha_iot_class: "Local Polling"
---
[ZigBee Home Automation](http://www.zigbee.org/zigbee-for-developers/applicationstandards/zigbeehomeautomation/)
integration for Home Assistant allows you to connect many off-the-shelf ZigBee devices to Home Assistant, using a compatible ZigBee radio.
[Zigbee Home Automation](http://www.zigbee.org/zigbee-for-developers/applicationstandards/zigbeehomeautomation/)
integration for Home Assistant allows you to connect many off-the-shelf Zigbee devices to Home Assistant, using a compatible Zigbee radio.
There is currently support for the following device types within Home Assistant:
@ -24,12 +24,12 @@ There is currently support for the following device types within Home Assistant:
- [Switch](../switch.zha)
- [Fan](../fan.zha)
Known working ZigBee radios:
Known working Zigbee radios:
- Nortek/GoControl Z-Wave & Zigbee USB Adapter - Model HUSBZB-1
- XBee Series 2C
- [Elelabs ZigBee USB Adapter](https://elelabs.com/products/elelabs_usb_adapter.html)
- [Elelabs ZigBee Raspberry Pi Shield](https://elelabs.com/products/elelabs_zigbee_shield.html)
- [Elelabs Zigbee USB Adapter](https://elelabs.com/products/elelabs_usb_adapter.html)
- [Elelabs Zigbee Raspberry Pi Shield](https://elelabs.com/products/elelabs_zigbee_shield.html)
## {% linkable_title Configuration %}

View File

@ -1,7 +1,7 @@
---
layout: page
title: "ZigBee"
description: "Instructions on how to integrate a ZigBee network with Home Assistant."
title: "Zigbee"
description: "Instructions on how to integrate a Zigbee network with Home Assistant."
date: 2016-01-27 17:10
sidebar: true
comments: false
@ -13,7 +13,7 @@ ha_release: 0.12
ha_iot_class: "Local Polling"
---
[ZigBee](http://www.zigbee.org/what-is-zigbee/) integration for Home Assistant allows you to utilize modules such as the [XBee](http://www.digi.com/lp/xbee) as wireless General Purpose Input/Output (GPIO) devices. The component requires a local ZigBee device to be connected to a serial port. Through this it will send and receive commands to and from other devices on the ZigBee mesh network.
[Zigbee](http://www.zigbee.org/what-is-zigbee/) integration for Home Assistant allows you to utilize modules such as the [XBee](http://www.digi.com/lp/xbee) as wireless General Purpose Input/Output (GPIO) devices. The component requires a local Zigbee device to be connected to a serial port. Through this it will send and receive commands to and from other devices on the Zigbee mesh network.
There is currently support for the following device types within Home Assistant:
@ -24,7 +24,7 @@ There is currently support for the following device types within Home Assistant:
## {% linkable_title Configuration %}
The local ZigBee device (assuming XBee) must have an up to date Router or Coordinator API firmware installed.
The local Zigbee device (assuming XBee) must have an up to date Router or Coordinator API firmware installed.
A `zigbee` section must be present in the `configuration.yaml` file and contain the following options as required:
@ -35,12 +35,12 @@ zigbee:
{% configuration %}
device:
description: The serial port to which the local ZigBee device is connected.
description: The serial port to which the local Zigbee device is connected.
required: false
type: string
default: "`/dev/ttyUSB0`"
baud:
description: The baud rate at which to communicate with the local ZigBee device.
description: The baud rate at which to communicate with the local Zigbee device.
required: false
type: integer
default: 9600
@ -53,7 +53,7 @@ $ ls /dev/ttyUSB*
```
<p class='note'>
The port may also appear as /dev/ttyACM* if you're communicating with the ZigBee device through an Arduino.
The port may also appear as /dev/ttyACM* if you're communicating with the Zigbee device through an Arduino.
</p>
### {% linkable_title Example %}

View File

@ -57,10 +57,17 @@ 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
# Example .gitignore file for your config dir. Lines with ! will not be ignored.
*
!*.yaml
!.gitignore
*.conf
*.txt
*.log
.storage
.cloud
.google.token
ip_bans.yaml
secrets.yaml
known_devices.yaml
```

View File

@ -185,7 +185,7 @@ $ docker-compose restart
### {% linkable_title Exposing Devices %}
In order to use Z-Wave, ZigBee or other components that require access to devices, you need to map the appropriate device into the container. Ensure the user that is running the container has the correct privileges to access the `/dev/tty*` file, then add the device mapping to your docker command:
In order to use Z-Wave, Zigbee or other components that require access to devices, you need to map the appropriate device into the container. Ensure the user that is running the container has the correct privileges to access the `/dev/tty*` file, then add the device mapping to your docker command:
```bash
$ docker run -d --name="home-assistant" -v /path/to/your/config:/config \

View File

@ -1,6 +1,6 @@
---
layout: post
title: "0.12: Insteon, LIFX, Twitter and ZigBee"
title: "0.12: Insteon, LIFX, Twitter and Zigbee"
description: "Home Assistant 0.12 brings improved organizational tools and makes writing automation in Python easier."
date: 2016-01-30 00:22:00 -0800
date_formatted: "January 30, 2016"

View File

@ -147,7 +147,7 @@ Hot fix release to fix dependency issues. More detailed information about the is
- Cleanup component track_point_in_utc_time usage ([@pvizeli])
- Discovery fix ([@balloob])
- Test against 3.6-dev ([@balloob])
- Bugfix ZigBee / Move from eventbus to dispatcher ([@pvizeli])
- Bugfix Zigbee / Move from eventbus to dispatcher ([@pvizeli])
- Bump netdisco to 0.9.1 ([@balloob])
- sensor.dovado: compute state in update ([@molobrakos])
- Fix mysensors callback race ([@MartinHjelmare])

View File

@ -57,7 +57,7 @@ Because its based on Zigbee, you dont have to just buy IKEA devices the re
Note that there are reports that the other way around, pairing an IKEA light to the Philips Hue hub is currently not possible. IKEA is working on it according to [a post by Philips Hue support][hue-support]:
<blockquote>
The non-interoperability between the newly launched IKEA smart lighting products and the Philips Hue bridge has been analyzed. One of the issues found is that the IKEA bulbs report their ProfileID as corresponding to the ZigBee Home Automation (ZHA) profile rather than the ZigBee Light Link (ZLL) profile. As the IKEA bulbs do not behave fully compliant with the ZLL standard, they are rejected by the Hue bridge. IKEA is aware of this and informed us their intent is to have the IKEA smart lighting bulbs to work with the Philips Hue bridge.
The non-interoperability between the newly launched IKEA smart lighting products and the Philips Hue bridge has been analyzed. One of the issues found is that the IKEA bulbs report their ProfileID as corresponding to the Zigbee Home Automation (ZHA) profile rather than the Zigbee Light Link (ZLL) profile. As the IKEA bulbs do not behave fully compliant with the ZLL standard, they are rejected by the Hue bridge. IKEA is aware of this and informed us their intent is to have the IKEA smart lighting bulbs to work with the Philips Hue bridge.
</blockquote>
## {% linkable_title Affordable %}

View File

@ -1,6 +1,6 @@
---
layout: post
title: "Home Assistant 0.44: ZigBee, OpenCV and DLib"
title: "Home Assistant 0.44: Zigbee, OpenCV and DLib"
description: "Speak natively with Zigbee network, detect faces with OpenCV: 0.44 is here."
date: 2017-05-06 01:04:05 +0000
date_formatted: "May 6, 2017"
@ -13,7 +13,7 @@ og_image: /images/blog/2017-05-0.44/components.png
<a href='/components/#version/0.44'><img src='/images/blog/2017-05-0.44/components.png' style='border: 0;box-shadow: none;'></a>
This release brings some great new integrations. The biggest one is the [native ZigBee integration][zha docs] by [Russell Cloran][@rcloran]. This will allow Home Assistant to natively control Philips Hue lights without the need for a hub! (IKEA Tradfri lights not yet due to implementing a different profile)
This release brings some great new integrations. The biggest one is the [native Zigbee integration][zha docs] by [Russell Cloran][@rcloran]. This will allow Home Assistant to natively control Philips Hue lights without the need for a hub! (IKEA Tradfri lights not yet due to implementing a different profile)
Another great new addition is [OpenCV][opencv docs] by [Teagan Glenn][@teagan42]. So now you'll be able to unlock all the cool stuff from OpenCV right in Home Assistant. And if OpenCV is not your style, you can try out the new [DLib integration][image_processing.dlib_face_identify docs] added by [Pascal Vizeli][@pvizeli] in this release.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 10 KiB

After

Width:  |  Height:  |  Size: 16 KiB