mirror of
https://github.com/home-assistant/home-assistant.io.git
synced 2025-07-23 01:06:52 +00:00
Merge branch 'current' into next
This commit is contained in:
commit
9d5d88986f
@ -1,17 +0,0 @@
|
||||
---
|
||||
layout: page
|
||||
title: "Blink Alarm Control Panel"
|
||||
description: "Instructions for how to setup Blink alarm control panel within Home Assistant."
|
||||
date: 2018-10-01 22:13
|
||||
sidebar: true
|
||||
comments: false
|
||||
sharing: true
|
||||
footer: true
|
||||
logo: blink.png
|
||||
ha_category: Alarm
|
||||
ha_release: "0.80"
|
||||
---
|
||||
|
||||
<p class='note'>
|
||||
To get your Blink alarm control panel working with Home Assistant, follow the instructions for the general [Blink component](/components/blink/).
|
||||
</p>
|
@ -1,35 +0,0 @@
|
||||
---
|
||||
layout: page
|
||||
title: "Verisure Alarm"
|
||||
description: "Instructions on how to setup the Verisure Alarm control panel within Home Assistant."
|
||||
date: 2016-02-15 22:00
|
||||
sidebar: true
|
||||
comments: false
|
||||
sharing: true
|
||||
footer: true
|
||||
logo: verisure.png
|
||||
ha_category: Alarm
|
||||
ha_release: 0.7.3
|
||||
ha_iot_class: "Cloud Polling"
|
||||
---
|
||||
|
||||
The Verisure alarm control panel platform allows you to control your [Verisure](https://www.verisure.com/) Alarms.
|
||||
|
||||
The requirement is that you have setup your [Verisure hub](/components/verisure/).
|
||||
|
||||
The `changed_by` attribute enables one to be able to take different actions depending on who armed/disarmed the alarm in [automation](/getting-started/automation/).
|
||||
|
||||
```yaml
|
||||
automation:
|
||||
- alias: Alarm status changed
|
||||
trigger:
|
||||
- platform: state
|
||||
entity_id: alarm_control_panel.alarm_1
|
||||
action:
|
||||
- service: notify.notify
|
||||
data_template:
|
||||
message: >
|
||||
{% raw %}Alarm changed from {{ trigger.from_state.state }}
|
||||
to {{ trigger.to_state.state }}
|
||||
by {{ trigger.to_state.attributes.changed_by }}{% endraw %}
|
||||
```
|
@ -1,27 +0,0 @@
|
||||
---
|
||||
layout: page
|
||||
title: "Wink Alarm"
|
||||
description: "Instructions on how to setup the Wink alarms within Home Assistant."
|
||||
date: 2017-01-14 12:00
|
||||
sidebar: true
|
||||
comments: false
|
||||
sharing: true
|
||||
footer: true
|
||||
logo: wink.png
|
||||
ha_category: Alarm
|
||||
ha_release: 0.37
|
||||
---
|
||||
|
||||
No Wink hub is required to support these devices.
|
||||
|
||||
The Wink alarm platform allows you to control your [Wink](http://www.wink.com/) Canary all-in-one security camera.
|
||||
|
||||
The requirement is that you have setup [Wink](/components/wink/).
|
||||
|
||||
### {% linkable_title Supported devices %}
|
||||
|
||||
- Canary all-in-one security camera
|
||||
|
||||
<p class='note'>
|
||||
The above devices are confirmed to work, but others may work as well.
|
||||
</p>
|
@ -8,15 +8,32 @@ comments: false
|
||||
sharing: true
|
||||
footer: true
|
||||
logo: android_ip_webcam.png
|
||||
ha_category: Hub
|
||||
ha_category:
|
||||
- Hub
|
||||
- Binary Sensor
|
||||
- Camera
|
||||
- Sensor
|
||||
- Switch
|
||||
ha_release: "0.40"
|
||||
ha_iot_class: "Local Polling"
|
||||
redirect_from:
|
||||
- /components/binary_sensor.android_ip_webcam/
|
||||
- /components/camera.android_ip_webcam/
|
||||
- /components/sensor.android_ip_webcam/
|
||||
- /components/switch.android_ip_webcam/
|
||||
---
|
||||
|
||||
The `android_ip_webcam` component turns any Android phone or tablet into a network camera with multiple viewing options.
|
||||
|
||||
It's setup as an MJPEG camera and all settings as switches inside of Home Assistant. You can also expose the sensors. If you have multiple phones, you can use all options inside a list.
|
||||
|
||||
There is currently support for the following device types within Home Assistant:
|
||||
|
||||
- Binary Sensor
|
||||
- Camera
|
||||
- Sensor
|
||||
- Switch
|
||||
|
||||
## {% linkable_title Setup %}
|
||||
|
||||
Download [the IP Webcam app](https://play.google.com/store/apps/details?id=com.pas.webcam) and launch the app. When you press 'Start Server', it will start streaming video from your phone and the IP address of the device will be shown on screen.
|
||||
@ -153,3 +170,44 @@ android_ip_webcam:
|
||||
- torch
|
||||
```
|
||||
|
||||
## {% linkable_title Binary Sensor %}
|
||||
|
||||
The `android_ip_webcam` binary sensor platform lets you observe the motion state of [Android IP webcam](https://play.google.com/store/apps/details?id=com.pas.webcam) sensors through Home Assistant. Devices will be configured automatically.
|
||||
|
||||
## {% linkable_title Examples %}
|
||||
|
||||
You can also setup the binary motion sensor with the following script:
|
||||
|
||||
{% raw %}
|
||||
|
||||
```yaml
|
||||
binary_sensor:
|
||||
- platform: rest
|
||||
name: Kitchen Motion
|
||||
sensor_class: motion
|
||||
resource: http://IP:8080/sensors.json?sense=motion_active
|
||||
value_template: '{{ value_json.motion_active.data[0][1][0] | round(0) }}'
|
||||
```
|
||||
|
||||
{% endraw %}
|
||||
|
||||
## {% linkable_title Camera %}
|
||||
|
||||
The `android_ip_webcam` component adds a camera by default if you choose not to use the component but still want to see the video feed then the [`mjpeg` camera](/components/camera.mjpeg/) platform can be used.
|
||||
|
||||
## {% linkable_title Configuration %}
|
||||
|
||||
To enable only the camera in your installation, add the following to your `configuration.yaml` file:
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
camera:
|
||||
- platform: mjpeg
|
||||
mjpeg_url: http://IP_ADDRESS:8080/video
|
||||
```
|
||||
|
||||
## {% linkable_title Sensor %}
|
||||
|
||||
The `android_ip_webcam` sensor platform lets you observe states of [Android IP webcam](https://play.google.com/store/apps/details?id=com.pas.webcam) sensors through Home Assistant. Devices will be configured automatically.
|
||||
|
||||
You can setup your own sensors by examining the JSON file from the webcam server: http://IP:8080/sensors.json
|
@ -1,33 +0,0 @@
|
||||
---
|
||||
layout: page
|
||||
title: "Android IP Webcam Binary Sensor"
|
||||
description: "Instructions on how to integrate binary motion sensors for Android IP webcam within Home Assistant."
|
||||
date: 2017-03-10 00:00
|
||||
sidebar: true
|
||||
comments: false
|
||||
sharing: true
|
||||
footer: true
|
||||
logo: android_ip_webcam.png
|
||||
ha_category: Binary Sensor
|
||||
ha_release: "0.40"
|
||||
ha_iot_class: "Local Polling"
|
||||
---
|
||||
|
||||
The `android_ip_webcam` binary sensor platform lets you observe the motion state of [Android IP webcam](https://play.google.com/store/apps/details?id=com.pas.webcam) sensors through Home Assistant.
|
||||
|
||||
Devices will be configured automatically. Please refer to the [Android IP webcam](/components/android_ip_webcam/) configuration on how to setup.
|
||||
|
||||
## {% linkable_title Examples %}
|
||||
|
||||
You can also setup the binary motion sensor with the following script:
|
||||
|
||||
{% raw %}
|
||||
```yaml
|
||||
binary_sensor:
|
||||
- platform: rest
|
||||
name: Kitchen Motion
|
||||
sensor_class: motion
|
||||
resource: http://IP:8080/sensors.json?sense=motion_active
|
||||
value_template: '{{ value_json.motion_active.data[0][1][0] | round(0) }}'
|
||||
```
|
||||
{% endraw %}
|
@ -1,17 +0,0 @@
|
||||
---
|
||||
layout: page
|
||||
title: "Blink Binary Sensor"
|
||||
description: "Instructions for how to setup Blink binary sensors within Home Assistant."
|
||||
date: 2017-03-05 22:13
|
||||
sidebar: true
|
||||
comments: false
|
||||
sharing: true
|
||||
footer: true
|
||||
logo: blink.png
|
||||
ha_category: Binary Sensor
|
||||
ha_release: "0.40"
|
||||
---
|
||||
|
||||
<p class='note'>
|
||||
To get your Blink binary sensors working with Home Assistant, follow the instructions for the general [Blink component](/components/blink/).
|
||||
</p>
|
@ -13,7 +13,7 @@ ha_iot_class: "Local Push"
|
||||
ha_release: "0.81"
|
||||
---
|
||||
|
||||
The `rflink` component supports devices that use [RFLink gateway firmware](http://www.nemcon.nl/blog2/), for example, the [Nodo RFLink Gateway](https://www.nodo-shop.nl/nl/21-rflink-gateway). RFLink gateway is an Arduino firmware that allows two-way communication with a multitude of RF wireless devices using cheap hardware (Arduino + transceiver).
|
||||
The `rflink` component supports devices that use [RFLink gateway firmware](http://www.nemcon.nl/blog2/), for example the [Nodo RFLink Gateway](https://www.nodo-shop.nl/nl/21-rflink-gateway). RFLink gateway is an Arduino firmware that allows two-way communication with a multitude of RF wireless devices using cheap hardware (Arduino + transceiver).
|
||||
|
||||
First, you have to set up your [RFLink hub](/components/rflink/).
|
||||
|
||||
@ -37,7 +37,7 @@ binary_sensor:
|
||||
devices:
|
||||
description: A list of binary sensors.
|
||||
required: false
|
||||
type: map
|
||||
type: list
|
||||
keys:
|
||||
rflink_ids:
|
||||
description: RFLink ID of the device
|
||||
@ -45,15 +45,16 @@ devices:
|
||||
type: map
|
||||
keys:
|
||||
name:
|
||||
description: Name of the device, defaults to RFLink ID.
|
||||
description: Name for the device.
|
||||
required: false
|
||||
default: RFLink ID
|
||||
type: string
|
||||
aliases:
|
||||
description: Alternative RFLink ID's this device is known by.
|
||||
required: false
|
||||
type: list
|
||||
device_class:
|
||||
description: The [type or class of the sensor](/components/binary_sensor/) to set the icon in the frontend.
|
||||
description: The [type or class of the sensor](/components/binary_sensor/#device-class) to set the icon in the frontend.
|
||||
required: false
|
||||
type: string
|
||||
off_delay:
|
||||
|
@ -1,19 +0,0 @@
|
||||
---
|
||||
layout: page
|
||||
title: "Verisure Binary Sensor"
|
||||
description: "Instructions on how to integrate Verisure binary sensors into Home Assistant."
|
||||
date: 2016-02-23 21:31 +0100
|
||||
sidebar: true
|
||||
comments: false
|
||||
sharing: true
|
||||
footer: true
|
||||
logo: verisure.png
|
||||
ha_category: Binary Sensor
|
||||
ha_iot_class: "Cloud Polling"
|
||||
---
|
||||
|
||||
Integrates Verisure binary sensors into Home Assistant. See the [main component](/components/verisure/) for configuration instructions.
|
||||
|
||||
The following binary sensor types are supported:
|
||||
|
||||
- Door & Window
|
@ -1,69 +0,0 @@
|
||||
---
|
||||
layout: page
|
||||
title: "W800rf32 Binary Sensor"
|
||||
description: "Instructions on how to integrate W800rf32 binary sensors into Home Assistant."
|
||||
date: 2018-10-16 12:45
|
||||
sidebar: true
|
||||
comments: false
|
||||
sharing: true
|
||||
footer: true
|
||||
logo: w800rf32.png
|
||||
ha_category: Binary Sensor
|
||||
ha_release: 0.83
|
||||
ha_iot_class: "Local Push"
|
||||
---
|
||||
|
||||
The `w800rf32` platform supports X10 RF binary sensors such as Palm Pad
|
||||
remotes, key chain remotes, Hawkeye motion detectors, and many, many other X10 RF devices.
|
||||
Some that have specifically been used with this are the KR19A keychain, MS16A motion detector
|
||||
and the RSS18 four button wall mount keypad.
|
||||
|
||||
# Setting up your devices
|
||||
|
||||
Once you have set up your [w800rf32 hub](/components/w800rf32/), add the
|
||||
binary sensors to your `configuration.yaml`:
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
binary_sensor:
|
||||
- platform: w800rf32
|
||||
devices:
|
||||
a1:
|
||||
name: motion_hall
|
||||
a2:
|
||||
name: motion_kitchen
|
||||
```
|
||||
|
||||
{% configuration %}
|
||||
devices:
|
||||
description: A list of devices.
|
||||
required: true
|
||||
type: map
|
||||
keys:
|
||||
name:
|
||||
description: Override the name to use in the frontend.
|
||||
required: false
|
||||
type: string
|
||||
device_class:
|
||||
description: "The [type or class of the sensor](/components/binary_sensor/) to set the icon in the frontend."
|
||||
required: false
|
||||
type: device_class
|
||||
off_delay:
|
||||
description: For sensors that only sends 'On' state updates, this variable sets a delay after which the sensor state will be updated back to 'Off'.
|
||||
required: false
|
||||
type: integer
|
||||
{% endconfiguration %}
|
||||
|
||||
|
||||
Binary sensors have only two states - "on" and "off". Many door or window
|
||||
opening sensors will send a signal each time the door/window is open or closed.
|
||||
However, depending on their hardware or on their purpose,
|
||||
some sensors are only able to signal their "on" state:
|
||||
|
||||
- Most motion sensors send a signal each time they detect motion. They stay "on" for a few seconds and go back to sleep, ready to signal other motion events. Usually, they do not send a signal when they go back to sleep.
|
||||
|
||||
For those devices, use the *off_delay* parameter.
|
||||
It defines a delay after which a device will go back to an "Off" state.
|
||||
That "Off" state will be fired internally by Home Assistant, just as if
|
||||
the device fired it by itself. If a motion sensor can only send signals
|
||||
once every 5 seconds, sets the *off_delay* parameter to *seconds: 5*.
|
@ -1,18 +0,0 @@
|
||||
---
|
||||
layout: page
|
||||
title: "Belkin WeMo Binary Sensor"
|
||||
description: "Instructions on how to integrate Belkin WeMo binary sensors into Home Assistant."
|
||||
date: 2016-02-20 00:45
|
||||
sidebar: true
|
||||
comments: false
|
||||
sharing: true
|
||||
footer: true
|
||||
logo: belkin_wemo.png
|
||||
ha_category: Binary Sensor
|
||||
ha_iot_class: "Local Push"
|
||||
ha_release: 0.14
|
||||
---
|
||||
|
||||
The `wemo` platform allows you to monitor your Belkin WeMo Binary Sensor from within Home Assistant.
|
||||
|
||||
WeMo devices are automatically discovered if the `discovery` component is enabled. For more configuration information, see the [WeMo component](/components/wemo/) documentation.
|
@ -1,36 +0,0 @@
|
||||
---
|
||||
layout: page
|
||||
title: "Wink Binary Sensor"
|
||||
description: "Instructions on how to setup the Wink binary sensors within Home Assistant."
|
||||
date: 2015-01-20 22:36
|
||||
sidebar: true
|
||||
comments: false
|
||||
sharing: true
|
||||
footer: true
|
||||
logo: wink.png
|
||||
ha_category: Binary Sensor
|
||||
ha_release: 0.14
|
||||
ha_iot_class: "Cloud Polling"
|
||||
---
|
||||
|
||||
The Wink binary sensor platform allows you to get data from your [Wink](http://www.wink.com/) binary sensors.
|
||||
|
||||
The requirement is that you have setup [Wink](/components/wink/).
|
||||
|
||||
### {% linkable_title Supported Binary sensor devices %}
|
||||
|
||||
- Smoke and CO detectors (No Wink hub required for Nest)
|
||||
- Window/Door sensors
|
||||
- Motion sensors
|
||||
- Ring Door bells (No hub required)
|
||||
- Liquid presence sensors
|
||||
- Z-wave lock key codes
|
||||
- Lutron connected bulb remote buttons
|
||||
- Wink Relay buttons and presence detection
|
||||
- Wink spotter loudness and vibration (No Wink hub required)
|
||||
- Wink hub devices connection status. This includes any paired hubs like Hue, Wink v1, Wink v2, Wink Relay...
|
||||
- Dropcam sensors
|
||||
|
||||
<p class='note'>
|
||||
The above devices are confirmed to work, but others may work as well.
|
||||
</p>
|
@ -8,9 +8,19 @@ comments: false
|
||||
sharing: true
|
||||
footer: true
|
||||
logo: blink.png
|
||||
ha_category: Hub
|
||||
ha_category:
|
||||
- Hub
|
||||
- Alarm
|
||||
- Binary Sensor
|
||||
- Camera
|
||||
- Sensor
|
||||
ha_release: "0.40"
|
||||
ha_iot_class: "Cloud Polling"
|
||||
redirect_form:
|
||||
- /components/alarm_control_panel.blink/
|
||||
- /components/binary_sensor.blink/
|
||||
- /components/camera.blink/
|
||||
- /components/sensor.blink/
|
||||
---
|
||||
|
||||
The `blink` component lets you view camera images and motion events from [Blink](http://blinkforhome.com) camera and security systems.
|
||||
|
@ -1,27 +0,0 @@
|
||||
---
|
||||
layout: page
|
||||
title: "Android IP Webcam Camera"
|
||||
description: "Instructions on how to integrate Android IP Webcam cameras within Home Assistant."
|
||||
date: 2015-07-11 0:36
|
||||
sidebar: true
|
||||
comments: false
|
||||
sharing: true
|
||||
footer: true
|
||||
ha_category: Camera
|
||||
logo: android_ip_webcam.png
|
||||
ha_release: "0.40"
|
||||
ha_iot_class: "Local Polling"
|
||||
---
|
||||
|
||||
The `android_ip_webcam` component adds a camera by default if you choose not to use the component but still want to see the video feed then the [`mjpeg` camera](/components/camera.mjpeg/) platform can be used.
|
||||
|
||||
## {% linkable_title Configuration %}
|
||||
|
||||
To enable only the camera in your installation, add the following to your `configuration.yaml` file:
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
camera:
|
||||
- platform: mjpeg
|
||||
mjpeg_url: http://IP_ADDRESS:8080/video
|
||||
```
|
@ -1,18 +0,0 @@
|
||||
---
|
||||
layout: page
|
||||
title: "Blink Camera"
|
||||
description: "Instructions for how to setup Blink cameras within Home Assistant."
|
||||
date: 2017-03-05 22:13
|
||||
sidebar: true
|
||||
comments: false
|
||||
sharing: true
|
||||
footer: true
|
||||
logo: blink.png
|
||||
ha_category: Camera
|
||||
ha_release: "0.40"
|
||||
ha_iot_class: "Cloud Polling"
|
||||
---
|
||||
|
||||
<p class='note'>
|
||||
To get your Blink cameras working with Home Assistant, follow the instructions for the general [Blink component](/components/blink/).
|
||||
</p>
|
@ -46,7 +46,7 @@ password:
|
||||
type: string
|
||||
default: 888888
|
||||
port:
|
||||
description: The port for the camera.
|
||||
description: The (HTTP) port for the camera.
|
||||
required: false
|
||||
type: integer
|
||||
default: 5000
|
||||
|
@ -15,6 +15,10 @@ ha_iot_class: "Local Polling"
|
||||
|
||||
The `synology` camera platform allows you to watch the live streams of your [Synology](https://www.synology.com/) Surveillance Station based IP cameras in Home Assistant.
|
||||
|
||||
<p class='note'>
|
||||
Synology has disabled the livestreaming API and the component is currently broken if you are using Surveillance Station version 8.2.3-5828.
|
||||
</p>
|
||||
|
||||
## {% linkable_title Configuration %}
|
||||
|
||||
To enable your Surveillance Station cameras in your installation, add the following to your `configuration.yaml` file:
|
||||
|
@ -1,18 +0,0 @@
|
||||
---
|
||||
layout: page
|
||||
title: "Verisure Camera"
|
||||
description: "Instructions on how to setup the Verisure cameras within Home Assistant."
|
||||
date: 2016-10-22 09:00
|
||||
sidebar: true
|
||||
comments: false
|
||||
sharing: true
|
||||
footer: true
|
||||
logo: verisure.png
|
||||
ha_category: Camera
|
||||
ha_release: 0.31
|
||||
ha_iot_class: "Local Polling"
|
||||
---
|
||||
|
||||
The `verisure` camera platform allows you to control your [Verisure](https://www.verisure.com/) cameras.
|
||||
|
||||
The requirement is that you have setup your [Verisure hub](/components/verisure/).
|
@ -1,35 +0,0 @@
|
||||
---
|
||||
layout: page
|
||||
title: "Wink Climate"
|
||||
description: "Instructions on how to setup the Wink climate devices within Home Assistant."
|
||||
date: 2016-11-01 22:36
|
||||
sidebar: true
|
||||
comments: false
|
||||
sharing: true
|
||||
footer: true
|
||||
logo: wink.png
|
||||
ha_category: Climate
|
||||
ha_release: 0.32
|
||||
ha_iot_class: "Cloud Polling"
|
||||
---
|
||||
|
||||
|
||||
The Wink climate platform allows you to get data from your [Wink](http://www.wink.com/) thermostats and air conditioners.
|
||||
|
||||
The requirement is that you have setup [Wink](/components/wink/).
|
||||
|
||||
|
||||
### {% linkable_title Supported climate devices %}
|
||||
|
||||
- Nest (No Wink hub required)
|
||||
- Ecobee (No Wink hub required)
|
||||
- Sensi (No Wink hub required)
|
||||
- Carrier (Unconfirmed)
|
||||
- Honeywell (No Wink hub required)
|
||||
- Generic Z-Wave
|
||||
- Quirky Aros window AC unit
|
||||
|
||||
<p class='note'>
|
||||
The above devices are confirmed to work, but others may work as well.
|
||||
</p>
|
||||
|
@ -13,11 +13,11 @@ ha_release: 0.55
|
||||
---
|
||||
|
||||
|
||||
The `rflink` cover platform supports devices that use [RFLink gateway firmware](http://www.nemcon.nl/blog2/), for example, the [Nodo RFLink Gateway](https://www.nodo-shop.nl/nl/21-rflink-gateway). RFLink gateway is an Arduino firmware that allows two-way communication with a multitude of RF wireless devices using cheap hardware (Arduino + transceiver).
|
||||
The `rflink` component supports devices that use [RFLink gateway firmware](http://www.nemcon.nl/blog2/), for example the [Nodo RFLink Gateway](https://www.nodo-shop.nl/nl/21-rflink-gateway). RFLink gateway is an Arduino firmware that allows two-way communication with a multitude of RF wireless devices using cheap hardware (Arduino + transceiver).
|
||||
|
||||
First, you have to set up your [rflink hub](/components/rflink/).
|
||||
First, you have to set up your [RFLink hub](/components/rflink/).
|
||||
|
||||
After configuring the RFLink hub covers will be automatically discovered and added. Except the Somfy RTS devices.
|
||||
After configuring the RFLink hub, covers will be automatically discovered and added. Except the Somfy RTS devices.
|
||||
|
||||
### {% linkable_title Setting up a Somfy RTS device %}
|
||||
|
||||
@ -29,7 +29,7 @@ Press the Learn button on the original Somfy remote enter the following code wit
|
||||
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.
|
||||
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
|
||||
@ -61,72 +61,105 @@ RFLink cover ID's are composed of: protocol, id, and gateway. For example: `RTS_
|
||||
|
||||
Once the ID of a cover is known, it can be used to configure the cover in Home Assistant, for example, to add it to a different group, hide it or set a nice name.
|
||||
|
||||
Assigning a name to a cover:
|
||||
Configuring devices as a cover:
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
cover:
|
||||
- platform: rflink
|
||||
devices:
|
||||
RTS_0100F2_0:
|
||||
name: SunShade
|
||||
bofumotor_455201_0f:
|
||||
name: Sovrumsgardin
|
||||
RTS_0100F2_0: {}
|
||||
bofumotor_455201_0f: {}
|
||||
```
|
||||
|
||||
{% 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.
|
||||
description: The defaults for the devices.
|
||||
required: false
|
||||
type: list
|
||||
type: map
|
||||
keys:
|
||||
fire_event:
|
||||
description: The default `fire_event` for Rflink cover devices.
|
||||
description: Set default `fire_event` for RFLink cover devices.
|
||||
required: false
|
||||
default: false
|
||||
type: boolean
|
||||
signal_repetitions:
|
||||
description: The default `signal_repetitions` for Rflink cover devices.
|
||||
description: Set default `signal_repetitions` for RFLink cover devices.
|
||||
required: false
|
||||
default: 1
|
||||
type: integer
|
||||
devices:
|
||||
description: A list of covers.
|
||||
required: false
|
||||
type: list
|
||||
keys:
|
||||
rflink_ids:
|
||||
description: RFLink ID of the device
|
||||
required: true
|
||||
type: map
|
||||
keys:
|
||||
name:
|
||||
description: Name for the device.
|
||||
required: false
|
||||
default: RFLink ID
|
||||
type: string
|
||||
aliases:
|
||||
description: Alternative RFLink ID's this device is known by.
|
||||
required: false
|
||||
type: [list, string]
|
||||
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, string]
|
||||
no_group_aliases:
|
||||
description: The `aliases` which do not respond to group commands.
|
||||
required: false
|
||||
type: [list, string]
|
||||
{% endconfiguration %}
|
||||
|
||||
### {% linkable_title Device support %}
|
||||
|
||||
See [device support](/components/rflink/#device-support).
|
||||
|
||||
### {% linkable_title Additional configuration examples %}
|
||||
|
||||
Multiple covers with custom names and aliases
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
cover:
|
||||
- platform: rflink
|
||||
devices:
|
||||
RTS_0A8720_0:
|
||||
name: enanos
|
||||
aliases:
|
||||
- rts_31e53f_01
|
||||
- rts_32e53f_01
|
||||
RTS_30E542_0:
|
||||
name: comedor
|
||||
aliases:
|
||||
- rts_33e53f_01
|
||||
- rts_fa872e_01
|
||||
RTS_33E542_0:
|
||||
name: dormitorio
|
||||
aliases:
|
||||
- rts_30e53f_01
|
||||
- rts_32e53f_01
|
||||
RTS_32E542_0:
|
||||
name: habitaciones
|
||||
fire_event: true
|
||||
```
|
@ -1,32 +0,0 @@
|
||||
---
|
||||
layout: page
|
||||
title: "Wink Cover"
|
||||
description: "Instructions on how to setup the Wink garage doors within Home Assistant."
|
||||
date: 2016-06-28 17:30
|
||||
sidebar: true
|
||||
comments: false
|
||||
sharing: true
|
||||
footer: true
|
||||
logo: wink.png
|
||||
ha_category: Cover
|
||||
ha_release: 0.13
|
||||
ha_iot_class: "Cloud Polling"
|
||||
---
|
||||
|
||||
Wink Cover garage door functionality varies on the product. Home Assistant can open, close, and view state of GoControl/Linear openers. For Chamberlain MyQ-enabled openers, Home Assistant is limited to show current state (open or closed) only using this Wink cover. This restriction was imposed by Chamberlain for third party control. Wink suggests that MyQ customers should contact Chamberlain directly to inquire about expanding permissions.
|
||||
|
||||
The [MyQ Cover](/components/cover.myq/) does provide full functionality for opening and closing Chamberlain MyQ-enabled garage doors. If installed along with the Wink Component, a duplicate garage door entity may exist. In that case, the semi-functional Wink garage door entity can be hidden via customize.yaml.
|
||||
|
||||
The requirement is that you have setup [Wink](/components/wink/).
|
||||
|
||||
### {% linkable_title Supported cover devices %}
|
||||
|
||||
- Bali window treatments
|
||||
- Lutron shades
|
||||
- Pella motorized blinds and shades
|
||||
- GoControl garage door opener
|
||||
- Chamberlain MyQ (Limited functionality) (No Wink hub required)
|
||||
|
||||
<p class='note'>
|
||||
The above devices are confirmed to work, but others may work as well.
|
||||
</p>
|
@ -30,7 +30,7 @@ elkm1:
|
||||
|
||||
{% configuration %}
|
||||
host:
|
||||
description: Connection string to Elk of the form `<method>://<address>[:port]`. `<method>` is `elk` for non-secure connection, `elks` for secure connection, and `serial` for serial port connection. `<address>` is IP address or domain or for `serial` the serial port that the Elk is connected to. Optional `<port>` is the port to connect to on the Elk, defaulting to 2101 for `elk` and 2601 for `elks`.
|
||||
description: Connection string to Elk of the form `<method>://<address>[:port]`. `<method>` is `elk` for non-secure connection, `elks` for secure connection, and `serial` for serial port connection. `<address>` is IP address or domain or for `serial` the serial port that the Elk is connected to. Optional `<port>` is the port to connect to on the Elk, defaulting to 2101 for `elk` and 2601 for `elks`. For `serial` method, _address_ is the path to the tty _/dev/ttyS1_ for example and `[:baud]` is the baud rate to connect with.
|
||||
required: true
|
||||
type: string
|
||||
username:
|
||||
@ -251,3 +251,19 @@ elkm1:
|
||||
include: [a1-d16, 192]
|
||||
exclude: [b12-d5]
|
||||
```
|
||||
|
||||
Example for a serial port instance on /dev/ttyS1 at 9600 baud:
|
||||
```yaml
|
||||
elkm1:
|
||||
host: serial://dev/ttyS1:9600
|
||||
username: USERNAME
|
||||
password: PASSWORD
|
||||
area:
|
||||
exclude: [5-8]
|
||||
zone:
|
||||
exclude: [11-16, 19-192, 199-208]
|
||||
plc:
|
||||
include: [a1-d16, 192]
|
||||
exclude: [b12-d5]
|
||||
```
|
||||
|
||||
|
@ -14,7 +14,7 @@ ha_iot_class: "Local Push"
|
||||
---
|
||||
|
||||
This component integrates an emulated Roku API into Home Assistant,
|
||||
so remotes such as Harmony and Android apps can connect to it through WiFi as it were a Roku player.
|
||||
so remotes such as Harmony and Android apps can connect to it through WiFi as if it were a Roku player.
|
||||
Home Assistant will see key presses and app launches as Events, which you can use as triggers for automations.
|
||||
Multiple Roku servers may be started if you run out of buttons by specifying multiple server entries.
|
||||
|
||||
@ -25,7 +25,7 @@ Windows is not supported because Home Assistant uses `ProactorEventLoop` which d
|
||||
<p class='note warning'>
|
||||
This component opens an unauthenticated API on the host, allowing anything on the local network to access
|
||||
your Home Assistant instance through the automations you create with emulated Roku as the trigger.
|
||||
Using a proxy with whitelist for IP addresses is recommended. (set `advertise_ip` to the proxy's ip or DNS name)
|
||||
Using a proxy with whitelisted IP addresses is recommended. (set `advertise_ip` to the proxy's ip or DNS name)
|
||||
</p>
|
||||
|
||||
## {% linkable_title Configuration %}
|
||||
|
@ -1,45 +0,0 @@
|
||||
---
|
||||
layout: page
|
||||
title: "Belkin WeMo (Holmes) Smart Humidifier"
|
||||
description: "Instructions on how to integrate Belkin WeMo humidifiers into Home Assistant."
|
||||
date: 2018-10-29 19:58
|
||||
sidebar: true
|
||||
comments: false
|
||||
sharing: true
|
||||
footer: true
|
||||
logo: belkin_wemo.png
|
||||
ha_category: Fan
|
||||
ha_iot_class: "Local Push"
|
||||
ha_release: 0.82
|
||||
---
|
||||
|
||||
|
||||
The `wemo` platform allows you to control your [Belkin WeMo](http://www.belkin.com/us/p/P-F7C027/) humidifiers from within Home Assistant. This includes support for the [Holmes Smart Humidifier](https://www.holmesproducts.com/wemo-humidifier.html).
|
||||
|
||||
WeMo devices are automatically discovered if the `discovery` component is enabled. For more configuration information, see the [WeMo component](/components/wemo/) documentation.
|
||||
|
||||
### {% linkable_title Attributes %}
|
||||
|
||||
There are several attributes which can be used for automations and templates:
|
||||
|
||||
| Attribute | Description |
|
||||
| --------- | ----------- |
|
||||
| `current_humidity` | An integer that indicates the current relative humidity percentage of the room, as determined by the device's onboard humidity sensor.
|
||||
| `fan_mode` | String that indicates the current fan speed setting, as reported by the WeMo humidifier.
|
||||
| `filter_expired` | A boolean that indicates whether the filter has expired and needs to be replaced.
|
||||
| `filter_life` | The used life of the filter (as a percentage).
|
||||
| `target_humidity` | An integer that indicates the desired relative humidity percentage (this is constrained to the humidity settings of the device, which are 45, 50, 55, 60, and 100).
|
||||
| `water level` | String that indicates whether the water level is Good, Low, or Empty.
|
||||
|
||||
### {% linkable_title Services %}
|
||||
|
||||
There are several services which can be used for automations and control of the humidifier:
|
||||
|
||||
| Service | Description |
|
||||
| --------- | ----------- |
|
||||
| `set_speed` | Calling this service sets the fan speed (entity_id and speed are required parameters, and speed must be one of the following: off, low, medium, or high). When selecting low for the speed, this will map to the WeMo humidifier speed of minimum. When selecting high for the speed, this will map to the WeMo humidifier speed of maximum. The WeMo humidifier speeds of low and high are unused due to constraints on which fan speeds Home Assistant supports.
|
||||
| `toggle` | Calling this service will toggle the humidifier between on and off states.
|
||||
| `turn_off` | Calling this service will turn the humidifier off (entity_id is required).
|
||||
| `turn_on` | Calling this service will turn the humidifier on and set the speed to the last used speed (defaults to medium, entity_id is required).
|
||||
| `wemo_set_humidity` | Calling this service will set the desired relative humidity setting on the device (entity_id is a required list of 1 or more entities to set humidity on, and target_humidity is a required float value between 0 and 100 (this value will be rounded down and mapped to one of the valid desired humidity settings of 45, 50, 55, 60, or 100 that are supported by the WeMo humidifier)).
|
||||
| `wemo_reset_filter_life` | Calling this service will reset the humdifier's filter life back to 100% (entity_id is a required list of 1 or more entities to reset the filter life on). Call this service when you change the filter on your humidifier.
|
@ -1,32 +0,0 @@
|
||||
---
|
||||
layout: page
|
||||
title: "Wink Fan"
|
||||
description: "Instructions on how to setup the Wink fans within Home Assistant."
|
||||
date: 2017-01-14 12:00
|
||||
sidebar: true
|
||||
comments: false
|
||||
sharing: true
|
||||
footer: true
|
||||
logo: wink.png
|
||||
ha_category: Fan
|
||||
ha_release: 0.36
|
||||
ha_iot_class: "Cloud Polling"
|
||||
---
|
||||
|
||||
|
||||
The Wink fan platform allows you to control your [Wink](http://www.wink.com/) fans.
|
||||
|
||||
The requirement is that you have setup [Wink](/components/wink/).
|
||||
|
||||
|
||||
### {% linkable_title Supported fan devices %}
|
||||
|
||||
- Home Decorator Wink-enabled Gardinier ceiling fan
|
||||
- Hampton Bay ceiling fan module
|
||||
|
||||
|
||||
<p class='note'>
|
||||
The above devices are confimed to work, but others may work as well.
|
||||
</p>
|
||||
|
||||
|
@ -37,7 +37,7 @@ If you are using [Hass.io](/hassio/) then just move forward to the configuration
|
||||
Create a symlink to the `cec` installation including the _cec.so file. Keep in mind different installation methods will result in different locations of cec.
|
||||
|
||||
```bash
|
||||
$ ln -s /path/to/your/installation/of/cec /path/to/your/venv/lib/python*/site-packages
|
||||
$ ln -s /path/to/your/installation/of/cec.py /path/to/your/venv/lib/python*/site-packages
|
||||
$ ln -s /path/to/your/installation/of/_cec.so /path/to/your/venv/lib/python*/site-packages
|
||||
|
||||
```
|
||||
@ -47,7 +47,7 @@ $ ln -s /path/to/your/installation/of/_cec.so /path/to/your/venv/lib/python*/sit
|
||||
For the default virtual environment of a [HASSbian Image for Raspberry Pi](/docs/installation/raspberry-pi/) the command would be as follows.
|
||||
|
||||
```bash
|
||||
$ ln -s /usr/local/lib/python*/dist-packages/cec /srv/homeassistant/lib/python*/site-packages
|
||||
$ ln -s /usr/local/lib/python*/dist-packages/cec.py /srv/homeassistant/lib/python*/site-packages
|
||||
$ ln -s /usr/local/lib/python*/dist-packages/_cec.so /srv/homeassistant/lib/python*/site-packages
|
||||
|
||||
```
|
||||
|
@ -124,7 +124,7 @@ homekit:
|
||||
type: list
|
||||
keys:
|
||||
feature:
|
||||
description: Name of the feature to add to the entity representation. Valid features are `on_off`, `play_pause`, `play_stop` and `toogle_mute`. The media_player entity must support the feature to be valid.
|
||||
description: Name of the feature to add to the entity representation. Valid features are `on_off`, `play_pause`, `play_stop` and `toggle_mute`. The media_player entity must support the feature to be valid.
|
||||
required: true
|
||||
type: string
|
||||
type:
|
||||
|
@ -10,7 +10,7 @@ footer: true
|
||||
logo: apple-homekit.png
|
||||
ha_category:
|
||||
- Hub
|
||||
- Alarm Panel Control
|
||||
- Alarm
|
||||
- Climate
|
||||
- Cover
|
||||
- Light
|
||||
|
@ -13,91 +13,109 @@ ha_release: 0.38
|
||||
ha_iot_class: "Assumed state"
|
||||
---
|
||||
|
||||
The `rflink` component support devices that use [RFLink gateway firmware](http://www.nemcon.nl/blog2/), for example the [Nodo RFLink Gateway](https://www.nodo-shop.nl/nl/21-rflink-gateway). RFLink gateway is an Arduino firmware that allows two-way communication with a multitude of RF wireless devices using cheap hardware (Arduino + transceiver).
|
||||
The `rflink` component supports devices that use [RFLink gateway firmware](http://www.nemcon.nl/blog2/), for example the [Nodo RFLink Gateway](https://www.nodo-shop.nl/nl/21-rflink-gateway). RFLink gateway is an Arduino firmware that allows two-way communication with a multitude of RF wireless devices using cheap hardware (Arduino + transceiver).
|
||||
|
||||
First you have to set up your [rflink hub](/components/rflink/).
|
||||
First, you have to set up your [RFLink hub](/components/rflink/).
|
||||
|
||||
After configuring the RFLink hub lights will be automatically discovered and added.
|
||||
After configuring the RFLink hub, lights will be automatically discovered and added.
|
||||
|
||||
RFLink switch/light ID's are composed of: protocol, id, switch. For example: `newkaku_0000c6c2_1`.
|
||||
RFLink binary_sensor/switch/light ID's are composed of: protocol, id, switch/channel. For example: `newkaku_0000c6c2_1`.
|
||||
|
||||
Once the ID of a light is known it can be used to configure the light in HA, for example to add it to a different group, hide it or configure a nice name.
|
||||
Once the ID of a light is known, it can be used to configure the light in HA, for example to add it to a different group, hide it or configure a nice name.
|
||||
|
||||
Configuring a device as light with a nice name:
|
||||
Configuring devices as a light:
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
light:
|
||||
- platform: rflink
|
||||
device_defaults:
|
||||
fire_event: true
|
||||
signal_repetitions: 2
|
||||
devices:
|
||||
newkaku_0000c6c2_1:
|
||||
name: Living room
|
||||
NewKaku_02a48800_0: {}
|
||||
newkaku_0000c6c2_1: {}
|
||||
Ansluta_ce30_0: {}
|
||||
Maclean_0d82_01: {}
|
||||
```
|
||||
|
||||
{% configuration %}
|
||||
device_defaults:
|
||||
description: The defaults for the devices.
|
||||
required: false
|
||||
type: list
|
||||
type: map
|
||||
keys:
|
||||
fire_event:
|
||||
description: Set default `fire_event` for Rflink switch devices (see below).
|
||||
description: Set default `fire_event` for RFLink switch devices (see below).
|
||||
required: false
|
||||
default: False
|
||||
type: boolean
|
||||
signal_repetitions:
|
||||
description: Set default `signal_repetitions` for Rflink switch devices (see below).
|
||||
description: Set default `signal_repetitions` for RFLink switch devices (see below).
|
||||
required: false
|
||||
default: 1
|
||||
type: integer
|
||||
automatic_add:
|
||||
description: Automatically add new/unconfigured devices to HA if detected.
|
||||
description: Automatically add new/unconfigured devices to Home Assistant if detected.
|
||||
required: false
|
||||
default: true
|
||||
type: boolean
|
||||
devices:
|
||||
description: A list of devices with their name to use in the frontend.
|
||||
description: A list of lights.
|
||||
required: false
|
||||
type: list
|
||||
keys:
|
||||
name:
|
||||
description: Name for the device.
|
||||
required: false
|
||||
default: Rflink ID
|
||||
type: string
|
||||
type:
|
||||
description: "Override automatically detected type of the light device, can be: switchable, dimmable, hybrid or toggle. See 'Light Types' below."
|
||||
required: false
|
||||
default: switchable
|
||||
type: string
|
||||
aliases:
|
||||
description: (deprecated) Alternative Rflink ID's this device is known by.
|
||||
required: false
|
||||
type: [list, string]
|
||||
group_aliases:
|
||||
description: "(deprecated) `aliases` which only respond to group commands."
|
||||
required: false
|
||||
type: [list, string]
|
||||
no_group_aliases:
|
||||
description: "(deprecated) `aliases` which do not respond to group commands."
|
||||
required: false
|
||||
type: [list, string]
|
||||
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: Repeat every Rflink command this number of times.
|
||||
required: false
|
||||
default: 1
|
||||
type: integer
|
||||
group:
|
||||
description: Allow light to respond to group commands (ALLON/ALLOFF).
|
||||
required: false
|
||||
default: true
|
||||
type: boolean
|
||||
rflink_ids:
|
||||
description: RFLink ID of the device
|
||||
required: true
|
||||
type: map
|
||||
keys:
|
||||
name:
|
||||
description: Name for the device.
|
||||
required: false
|
||||
default: RFLink ID
|
||||
type: string
|
||||
type:
|
||||
description: "Override automatically detected type of the light device, can be: switchable, dimmable, hybrid or toggle. See [Light Types](/components/light.rflink/#light-types) below."
|
||||
required: false
|
||||
default: switchable
|
||||
type: string
|
||||
aliases:
|
||||
description: Alternative RFLink ID's this device is known by.
|
||||
required: false
|
||||
type: [list, string]
|
||||
group_aliases:
|
||||
description: "`aliases` which only respond to group commands."
|
||||
required: false
|
||||
type: [list, string]
|
||||
no_group_aliases:
|
||||
description: "`aliases` which do not respond to group commands."
|
||||
required: false
|
||||
type: [list, string]
|
||||
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: Repeat every RFLink command this number of times.
|
||||
required: false
|
||||
default: 1
|
||||
type: integer
|
||||
group:
|
||||
description: Allow light to respond to group commands (ALLON/ALLOFF).
|
||||
required: false
|
||||
default: true
|
||||
type: boolean
|
||||
aliasses:
|
||||
description: (**deprecated**) Alternative RFLink ID's this device is known by.
|
||||
required: false
|
||||
type: [list, string]
|
||||
group_aliasses:
|
||||
description: "(**deprecated**) `aliases` which only respond to group commands."
|
||||
required: false
|
||||
type: [list, string]
|
||||
no_group_aliasses:
|
||||
description: "(**deprecated**) `aliases` which do not respond to group commands."
|
||||
required: false
|
||||
type: [list, string]
|
||||
{% endconfiguration %}
|
||||
|
||||
### {% linkable_title Light state %}
|
||||
@ -112,14 +130,9 @@ light:
|
||||
- platform: rflink
|
||||
devices:
|
||||
newkaku_0000c6c2_1:
|
||||
name: Living room
|
||||
aliases:
|
||||
- newkaku_000000001_2
|
||||
- kaku_000001_a
|
||||
Ansluta_ce30_0:
|
||||
name: Kitchen Under Counter Lights
|
||||
Maclean_0d82_01:
|
||||
name: Bedroom Lamp
|
||||
```
|
||||
|
||||
Any on/off command from any alias ID updates the current state of the light. However when sending a command through the frontend only the primary ID is used.
|
||||
@ -146,3 +159,30 @@ Lights are added automatically when the RFLink gateway intercepts a wireless com
|
||||
### {% linkable_title Device support %}
|
||||
|
||||
See [device support](/components/rflink/#device-support)
|
||||
|
||||
### {% linkable_title Additional configuration examples %}
|
||||
|
||||
Multiple lights with `signal_repetitions` and custom names
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
light:
|
||||
- platform: rflink
|
||||
device_defaults:
|
||||
fire_event: true
|
||||
signal_repetitions: 2
|
||||
automatic_add: true
|
||||
devices:
|
||||
NewKaku_02a48800_0:
|
||||
name: Kitchen
|
||||
type: hybrid
|
||||
newkaku_0000c6c2_1:
|
||||
name: Living room
|
||||
aliases:
|
||||
- newkaku_000000001_2
|
||||
- kaku_000001_a
|
||||
Ansluta_ce30_0:
|
||||
name: Kitchen Under Counter Lights
|
||||
Maclean_0d82_01:
|
||||
name: Bedroom Lamp
|
||||
```
|
@ -1,19 +0,0 @@
|
||||
---
|
||||
layout: page
|
||||
title: "Belkin WeMo Lights"
|
||||
description: "Instructions on how to integrate Belkin WeMo LED lights and WeMo Dimmer Switch into Home Assistant."
|
||||
date: 2016-02-20 00:45
|
||||
sidebar: true
|
||||
comments: false
|
||||
sharing: true
|
||||
footer: true
|
||||
logo: belkin_wemo.png
|
||||
ha_category: Light
|
||||
ha_iot_class: "Local Push"
|
||||
ha_release: 0.14
|
||||
---
|
||||
|
||||
|
||||
The `wemo` platform allows you to control your Belkin WeMo [LED lights](http://www.belkin.com/us/p/P-F5Z0489/) and [Smart Dimmer Switch](http://www.belkin.com/us/F7C059-Belkin/p/P-F7C059/) from within Home Assistant.
|
||||
|
||||
WeMo devices are automatically discovered if the `discovery` component is enabled. For more configuration information, see the [WeMo component](/components/wemo/) documentation.
|
@ -1,34 +0,0 @@
|
||||
---
|
||||
layout: page
|
||||
title: "Wink Light"
|
||||
description: "Instructions on how to setup the Wink lights within Home Assistant."
|
||||
date: 2015-01-20 22:36
|
||||
sidebar: true
|
||||
comments: false
|
||||
sharing: true
|
||||
footer: true
|
||||
logo: wink.png
|
||||
ha_category: Light
|
||||
ha_iot_class: "Cloud Polling"
|
||||
ha_release: pre 0.7
|
||||
---
|
||||
|
||||
|
||||
The `wink` light platform allows you to use your [Wink](http://www.wink.com/) lights.
|
||||
|
||||
The requirement is that you have setup [Wink](/components/wink/).
|
||||
|
||||
|
||||
### {% linkable_title Supported light devices %}
|
||||
|
||||
- Z-wave switches with dimming
|
||||
- Hue
|
||||
- Lightify
|
||||
- GE link
|
||||
- Wink light groups (User created groups of lights)
|
||||
|
||||
<p class='note'>
|
||||
The above devices are confirmed to work, but others may work as well.
|
||||
</p>
|
||||
|
||||
|
@ -19,13 +19,6 @@ Locative is no longer under active development. See https://blog.locative.io/bye
|
||||
|
||||
This platform allows you to detect presence using [Locative](https://my.locative.io/). Locative is an open source app for [iOS](https://github.com/LocativeHQ/ios-app) and [Android](https://github.com/LocativeHQ/Locative-Android) that allows users to set up a `GET` or `POST` request when a geofence is entered or exited. This can be configured with Home Assistant to update your location.
|
||||
|
||||
To integrate Locative in Home Assistant, add the following section to your `configuration.yaml` file:
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
locative:
|
||||
```
|
||||
|
||||
Install on your smartphone:
|
||||
|
||||
- [Android](https://play.google.com/store/apps/details?id=io.locative.app)
|
||||
|
@ -1,20 +0,0 @@
|
||||
---
|
||||
layout: page
|
||||
title: "Verisure Lock"
|
||||
description: "Instructions on how to setup the Verisure locks within Home Assistant."
|
||||
date: 2016-02-12 06:00
|
||||
sidebar: true
|
||||
comments: false
|
||||
sharing: true
|
||||
footer: true
|
||||
logo: verisure.png
|
||||
ha_category: Lock
|
||||
ha_release: 0.13
|
||||
ha_iot_class: "Cloud Polling"
|
||||
---
|
||||
|
||||
|
||||
The Verisure lock platform allows you to control your [Verisure](https://www.verisure.com/) locks.
|
||||
|
||||
The requirement is that you have setup your [Verisure hub](/components/verisure/).
|
||||
|
@ -1,147 +0,0 @@
|
||||
---
|
||||
layout: page
|
||||
title: "Wink Lock"
|
||||
description: "Instructions on how to setup the Wink locks within Home Assistant."
|
||||
date: 2015-11-20 12:00
|
||||
sidebar: true
|
||||
comments: false
|
||||
sharing: true
|
||||
footer: true
|
||||
logo: wink.png
|
||||
ha_category: Lock
|
||||
ha_release: 0.9
|
||||
ha_iot_class: "Cloud Polling"
|
||||
---
|
||||
|
||||
The Wink lock platform allows you to control your [Wink](http://www.wink.com/) locks.
|
||||
|
||||
The requirement is that you have setup [Wink](/components/wink/).
|
||||
|
||||
### {% linkable_title Supported lock devices %}
|
||||
|
||||
- Kwikset
|
||||
- Schlage
|
||||
- August (No Wink hub required) (August Connect required)
|
||||
- Generic Z-wave
|
||||
|
||||
<p class='note'>
|
||||
The following services have only been confirmed on Schlage locks.
|
||||
</p>
|
||||
|
||||
### {% linkable_title Service `wink_set_lock_alarm_mode` %}
|
||||
|
||||
You can use the service wink/wink_set_lock_alarm_mode to set the alarm mode of your lock.
|
||||
|
||||
| Service data attribute | Optional | Description |
|
||||
| ---------------------- | -------- | ----------- |
|
||||
| `mode` | no | String one of tamper, activity, or forced_entry
|
||||
| `entity_id` | yes | String or list of strings that point at `entity_id`s of locks.
|
||||
|
||||
Example:
|
||||
|
||||
```yaml
|
||||
script:
|
||||
set_locks_to_tamper:
|
||||
sequence:
|
||||
- service: wink.wink_set_lock_alarm_mode
|
||||
data:
|
||||
mode: "tamper"
|
||||
```
|
||||
|
||||
### {% linkable_title Service `wink_set_lock_alarm_sensitivity` %}
|
||||
|
||||
You can use the service wink/wink_set_lock_alarm_sensitivity to set the alarm sensitivity of your lock.
|
||||
|
||||
| Service data attribute | Optional | Description |
|
||||
| ---------------------- | -------- | ----------- |
|
||||
| `sensitivity` | no | String one of low, medium_low, medium, medium_high, high.
|
||||
| `entity_id` | yes | String or list of strings that point at `entity_id`s of locks.
|
||||
|
||||
Example:
|
||||
|
||||
```yaml
|
||||
script:
|
||||
set_locks_to_high_sensitivity:
|
||||
sequence:
|
||||
- service: wink.wink_set_lock_alarm_sensitivity
|
||||
data:
|
||||
sensitivity: "high"
|
||||
```
|
||||
|
||||
### {% linkable_title Service `wink_set_lock_alarm_state` %}
|
||||
|
||||
You can use the service wink/wink_set_lock_alarm_state to set the alarm state of your lock.
|
||||
|
||||
| Service data attribute | Optional | Description |
|
||||
| ---------------------- | -------- | ----------- |
|
||||
| `enabled` | no | Boolean enabled or disabled, true or false
|
||||
| `entity_id` | yes | String or list of strings that point at `entity_id`s of locks.
|
||||
|
||||
Example:
|
||||
|
||||
```yaml
|
||||
script:
|
||||
disable_all_locks_alarm:
|
||||
sequence:
|
||||
- service: wink.wink_set_lock_alarm_state
|
||||
data:
|
||||
enabled: false
|
||||
```
|
||||
|
||||
### {% linkable_title Service `wink_set_lock_beeper_state` %}
|
||||
|
||||
You can use the service wink/wink_set_lock_beeper_state to set the beeper state of your lock.
|
||||
|
||||
| Service data attribute | Optional | Description |
|
||||
| ---------------------- | -------- | ----------- |
|
||||
| `enabled` | no | Boolean enabled or disabled, true or false
|
||||
| `entity_id` | yes | String or list of strings that point at `entity_id`s of locks.
|
||||
|
||||
Example:
|
||||
|
||||
```yaml
|
||||
script:
|
||||
disable_all_locks_beepers:
|
||||
sequence:
|
||||
- service: wink.wink_set_lock_beeper_state
|
||||
data:
|
||||
enabled: false
|
||||
```
|
||||
|
||||
### {% linkable_title Service `wink_set_lock_vacation_mode` %}
|
||||
|
||||
You can use the service wink/wink_set_lock_vacation_mode to set the vacation mode of your lock.
|
||||
|
||||
| Service data attribute | Optional | Description |
|
||||
| ---------------------- | -------- | ----------- |
|
||||
| `enabled` | no | Boolean enabled or disabled, true or false
|
||||
| `entity_id` | yes | String or list of strings that point at `entity_id`s of locks.
|
||||
|
||||
Example:
|
||||
|
||||
```yaml
|
||||
script:
|
||||
enabled_vacation_mode_on_all_locks:
|
||||
sequence:
|
||||
- service: wink.wink_set_lock_vacation_mode
|
||||
data:
|
||||
enabled: false
|
||||
```
|
||||
|
||||
### {% linkable_title Service `wink_add_new_lock_key_code` %}
|
||||
|
||||
You can use the service wink/wink_add_new_lock_key_code to add a new user code to your Wink lock.
|
||||
|
||||
| Service data attribute | Optional | Description |
|
||||
| ---------------------- | -------- | ----------- |
|
||||
| `entity_id` | no | String or list of strings that point at `entity_id`s of locks.
|
||||
| `name` | no | the name of the new key code
|
||||
| `code` | no | The new code. Must match length of existing codes.
|
||||
|
||||
<p class='note'>
|
||||
Calling service wink/pull_newly_added_wink_devices will add the new key code to Home Assistant. The device will also show up on the next restart of Home Assistant.
|
||||
</p>
|
||||
|
||||
<p class='note'>
|
||||
If supported by your lock, a binary sensor will be created for each user key code you have defined. These key codes will turn on when the code is entered and automatically turn off after a few seconds.
|
||||
</p>
|
@ -107,6 +107,7 @@ Currently tested but not working models:
|
||||
- JS8005 - State tracking working but unable to control (but port 8001 *is* open)
|
||||
- JS9000 - State is always "on" and unable to control (but port 8001 *is* open)
|
||||
- JS9500 - State is always "on" and unable to control (but port 8001 *is* open)
|
||||
- JU6800 - Unable to see state and unable to control
|
||||
- JU7000 - Unable to see state and unable to control (but port 8001 *is* open)
|
||||
- JU7500 - Unable to see state and unable to control
|
||||
- MU6300 - Port set to 8001, `pip3 install websocket-client` must be executed, turning on works, status not working reliably, turning off is not permanent (it comes back on)
|
||||
|
@ -14,6 +14,7 @@ ha_category:
|
||||
- Sensor
|
||||
ha_release: 0.76
|
||||
ha_iot_class: "Cloud Polling"
|
||||
ha_config_flow: true
|
||||
redirect_from:
|
||||
- /components/binary_sensor.openuv/
|
||||
- /components/sensor.openuv/
|
||||
|
@ -25,8 +25,8 @@ By default the integration will listen for incoming messages from OwnTracks via
|
||||
1. Open the Home Assistant frontend
|
||||
1. Open Settings -> integrations
|
||||
1. If you see an Owntracks component under 'Configured', delete it.
|
||||
- CLick on it.
|
||||
- Click o the trashcan icon in the upper right corner.
|
||||
- Click on it.
|
||||
- Click on the trashcan icon in the upper right corner.
|
||||
1. Now, look for Owntracks in 'Setup new integration' and click on CONFIGURE.
|
||||
1. The login credentials and configuration for owntracks will be presented to you.
|
||||
in a popup window. You will need these in the configuration for the app as mentioned below.
|
||||
|
@ -1,19 +0,0 @@
|
||||
---
|
||||
layout: page
|
||||
title: "Wink Scene"
|
||||
description: "Instructions on how to setup the Wink scenes(shortcuts) within Home Assistant."
|
||||
date: 2017-04-01 16:45
|
||||
sidebar: true
|
||||
comments: false
|
||||
sharing: true
|
||||
footer: true
|
||||
logo: wink.png
|
||||
ha_category: Scene
|
||||
ha_release: 0.41
|
||||
ha_iot_class: "Cloud Polling"
|
||||
---
|
||||
|
||||
|
||||
The Wink scene platform allows you to control your [Wink](http://www.wink.com/) shortcuts.
|
||||
|
||||
The requirement is that you have setup [Wink](/components/wink/).
|
@ -17,8 +17,10 @@ The `airvisual` sensor platform queries the [AirVisual](https://airvisual.com/)
|
||||
|
||||
This platform requires an AirVisual API key, which can be obtained [here](https://airvisual.com/api). Note that the platform was designed using the "Community" package; the "Startup" and "Enterprise" package keys should continue to function, but actual results may vary (or not work at all).
|
||||
|
||||
The Community API key is valid for 12 months after which it will expire. You must then go back to the Airvisual website, delete your old key, create a new one following the same steps and update your configuration with the new key.
|
||||
|
||||
<p class='note warning'>
|
||||
The "Community" API key is limited to 10,000 calls per month. In order to leave a buffer, the `airvisual` platform queries the API every 10 minutes by default. Modification of this (via the `scan_interval` key) to a too-low value may result in your API key being deactivated.
|
||||
The "Community" API key is limited to 10,000 calls per month. In order to leave a buffer, the `airvisual` platform queries the API every 10 minutes (600 seconds) by default. Modification of this (via the `scan_interval` key) to a too-low value may result in your API key being deactivated.
|
||||
</p>
|
||||
|
||||
## {% linkable_title Configuration %}
|
||||
@ -47,7 +49,7 @@ show_on_map:
|
||||
type: boolean
|
||||
default: true
|
||||
scan_interval:
|
||||
description: "The rate at which AirVisual should be polled for new data."
|
||||
description: "The rate in seconds at which AirVisual should be polled for new data."
|
||||
required: optional
|
||||
type: integer
|
||||
default: 600
|
||||
@ -86,7 +88,7 @@ sensor:
|
||||
monitored_conditions:
|
||||
- cn
|
||||
show_on_map: false
|
||||
scan_interval: 30
|
||||
scan_interval: 300
|
||||
latitude: 42.81212
|
||||
longitude: 108.12422
|
||||
```
|
||||
@ -100,7 +102,7 @@ sensor:
|
||||
monitored_conditions:
|
||||
- us
|
||||
show_on_map: false
|
||||
scan_interval: 30
|
||||
scan_interval: 300
|
||||
city: Los Angeles
|
||||
state: California
|
||||
country: USA
|
||||
|
@ -1,21 +0,0 @@
|
||||
---
|
||||
layout: page
|
||||
title: "Android IP Webcam Sensor"
|
||||
description: "Instructions on how to integrate sensors for Android IP webcam within Home Assistant."
|
||||
date: 2017-03-10 00:00
|
||||
sidebar: true
|
||||
comments: false
|
||||
sharing: true
|
||||
footer: true
|
||||
logo: android_ip_webcam.png
|
||||
ha_category: Sensor
|
||||
ha_release: "0.40"
|
||||
ha_iot_class: "Local Polling"
|
||||
---
|
||||
|
||||
|
||||
The `android_ip_webcam` sensor platform lets you observe states of [Android IP webcam](https://play.google.com/store/apps/details?id=com.pas.webcam) sensors through Home Assistant.
|
||||
|
||||
Devices will be configured automatically. Please refer to the [component](/components/android_ip_webcam/) configuration on how to setup.
|
||||
|
||||
You can setup your own sensors by examining the JSON file from the webcam server: http://IP:8080/sensors.json
|
@ -1,18 +0,0 @@
|
||||
---
|
||||
layout: page
|
||||
title: "Blink Sensor"
|
||||
description: "Instructions for how to setup Blink sensors within Home Assistant."
|
||||
date: 2017-03-05 22:13
|
||||
sidebar: true
|
||||
comments: false
|
||||
sharing: true
|
||||
footer: true
|
||||
logo: blink.png
|
||||
ha_category: Sensor
|
||||
ha_release: "0.40"
|
||||
ha_iot_class: "Cloud Polling"
|
||||
---
|
||||
|
||||
<p class='note'>
|
||||
To get your Blink sensors working with Home Assistant, follow the instructions for the general [Blink component](/components/blink/).
|
||||
</p>
|
@ -35,6 +35,8 @@ $ curl -X GET http://IP_ADDRESS:61208/api/2/mem/free
|
||||
{"free": 203943936}
|
||||
```
|
||||
|
||||
If this doesn't work, try changing the `2` for `3`, if you have installed the latest verison of Glances.
|
||||
|
||||
For details about auto-starting `glances`, please refer to [Start Glances through Systemd](https://github.com/nicolargo/glances/wiki/Start-Glances-through-Systemd).
|
||||
|
||||
## {% linkable_title Configuration %}
|
||||
|
@ -54,7 +54,7 @@ name:
|
||||
required: false
|
||||
type: string
|
||||
travel_mode:
|
||||
description: "You can choose between: `driving`, `walking`, `bicycling` or `transit`."
|
||||
description: "You can choose between: `driving`, `walking`, `bicycling` or `transit`. This method is now deprecated, use `mode` under `options`."
|
||||
required: false
|
||||
type: string
|
||||
options:
|
||||
|
@ -55,7 +55,7 @@ password:
|
||||
description: Password for the IMAP server.
|
||||
required: true
|
||||
type: string
|
||||
password:
|
||||
folder:
|
||||
description: Folder to get mails from.
|
||||
required: false
|
||||
default: INBOX
|
||||
|
@ -13,25 +13,24 @@ ha_release: 0.38
|
||||
ha_iot_class: "Local Polling"
|
||||
---
|
||||
|
||||
The `rflink` component support devices that use [RFLink gateway firmware](http://www.nemcon.nl/blog2/), for example the [Nodo RFLink Gateway](https://www.nodo-shop.nl/nl/21-rflink-gateway). RFLink gateway is an Arduino firmware that allows two-way communication with a multitude of RF wireless devices using cheap hardware (Arduino + transceiver).
|
||||
The `rflink` component supports devices that use [RFLink gateway firmware](http://www.nemcon.nl/blog2/), for example the [Nodo RFLink Gateway](https://www.nodo-shop.nl/nl/21-rflink-gateway). RFLink gateway is an Arduino firmware that allows two-way communication with a multitude of RF wireless devices using cheap hardware (Arduino + transceiver).
|
||||
|
||||
First you have to set up your [rflink hub](/components/rflink/).
|
||||
First, you have to set up your [RFLink hub](/components/rflink/).
|
||||
|
||||
After configuring the RFLink hub sensors will be automatically discovered and added.
|
||||
After configuring the RFLink hub, sensors will be automatically discovered and added.
|
||||
|
||||
RFLink sensor ID's are composed of: protocol, id and type (optional). For example: `alectov1_0334_temp`. Some sensors emit multiple types of data. Each will be created as its own
|
||||
RFLink sensor ID's are composed of: protocol, id and type (optional). For example: `alectov1_0334_temp`. Some sensors emit multiple types of data. Each will be created as its own.
|
||||
|
||||
Once the ID of a sensor is known it can be used to configure the sensor in HA, for example to add it to a different group, hide it or configure a nice name.
|
||||
Once the ID of a sensor is known, it can be used to configure the sensor in Home Assistant, for example to add it to a different group, hide it or configure a nice name.
|
||||
|
||||
Assigning name to a sensor:
|
||||
Configuring a device as a sensor:
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
sensor:
|
||||
- platform: rflink
|
||||
devices:
|
||||
alectov1_0334_temp:
|
||||
sensor_type: temperature
|
||||
alectov1_0334_temp: {}
|
||||
```
|
||||
|
||||
{% configuration %}
|
||||
@ -41,29 +40,40 @@ automatic_add:
|
||||
default: true
|
||||
type: boolean
|
||||
devices:
|
||||
description: A list of devices with their name to use in the frontend.
|
||||
description: A list of sensors.
|
||||
required: false
|
||||
type: list
|
||||
keys:
|
||||
name:
|
||||
description: Name for the device.
|
||||
required: false
|
||||
default: RFLink ID
|
||||
type: string
|
||||
sensor_type:
|
||||
description: Override automatically detected type of sensor. For list of values see below.
|
||||
rflink_ids:
|
||||
description: RFLink ID of the device
|
||||
required: true
|
||||
type: string
|
||||
unit_of_measurement:
|
||||
description: Override automatically detected unit of sensor.
|
||||
required: false
|
||||
type: string
|
||||
aliases:
|
||||
description: "(deprecated) Alternative RFLink ID's this device is known by."
|
||||
required: false
|
||||
type: [list, string]
|
||||
type: map
|
||||
keys:
|
||||
name:
|
||||
description: Name for the device.
|
||||
required: false
|
||||
default: RFLink ID
|
||||
type: string
|
||||
sensor_type:
|
||||
description: Override automatically detected type of sensor. For list of [values](components/sensor.rflink/#sensors-types) see below.
|
||||
required: true
|
||||
type: string
|
||||
unit_of_measurement:
|
||||
description: Override automatically detected unit of sensor.
|
||||
required: false
|
||||
type: string
|
||||
aliases:
|
||||
description: "Alternative RFLink ID's this device is known by."
|
||||
required: false
|
||||
type: [list, string]
|
||||
aliasses:
|
||||
description: "(**deprecated**) Alternative RFLink ID's this device is known by."
|
||||
required: false
|
||||
type: [list, string]
|
||||
{% endconfiguration %}
|
||||
|
||||
### {% linkable_title Sensors types%}
|
||||
|
||||
Sensor type values:
|
||||
|
||||
- average_windspeed
|
||||
@ -110,3 +120,32 @@ Sensors are added automatically when the RFLink gateway intercepts a wireless co
|
||||
### {% linkable_title Device support %}
|
||||
|
||||
See [device support](/components/rflink/#device-support)
|
||||
|
||||
### {% linkable_title Additional configuration examples %}
|
||||
|
||||
Multiple sensors with `automatic_add` disabled and `aliases`
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
sensor:
|
||||
- platform: rflink
|
||||
automatic_add: false
|
||||
devices:
|
||||
oregontemp_0d93_temp:
|
||||
sensor_type: temperature
|
||||
oregontemp_0d93_bat:
|
||||
sensor_type: battery
|
||||
tunex_c001_temp:
|
||||
sensor_type: temperature
|
||||
aliases:
|
||||
- xiron_4001_temp
|
||||
tunex_c001_hum:
|
||||
sensor_type: humidity
|
||||
aliases:
|
||||
- xiron_4001_hum
|
||||
tunex_c001_bat:
|
||||
sensor_type: battery
|
||||
aliases:
|
||||
- xiron_4001_bat
|
||||
```
|
||||
|
||||
|
@ -1,22 +0,0 @@
|
||||
---
|
||||
layout: page
|
||||
title: "Verisure Sensor"
|
||||
description: "Instructions on how to integrate Verisure sensors into Home Assistant."
|
||||
date: 2016-02-23 21:31 +0100
|
||||
sidebar: true
|
||||
comments: false
|
||||
sharing: true
|
||||
footer: true
|
||||
logo: verisure.png
|
||||
ha_category: Sensor
|
||||
ha_iot_class: "Cloud Polling"
|
||||
---
|
||||
|
||||
Integrates Verisure sensors into Home Assistant. See the [main component](/components/verisure/) for configuration instructions.
|
||||
|
||||
The following sensor types are supported:
|
||||
|
||||
* Thermometers
|
||||
* Hygrometers
|
||||
* Mouse detectors
|
||||
|
@ -1,35 +0,0 @@
|
||||
---
|
||||
layout: page
|
||||
title: "Wink Sensor"
|
||||
description: "Instructions on how to setup the Wink sensors within Home Assistant."
|
||||
date: 2015-01-20 22:36
|
||||
sidebar: true
|
||||
comments: false
|
||||
sharing: true
|
||||
footer: true
|
||||
logo: wink.png
|
||||
ha_category: Sensor
|
||||
ha_iot_class: "Cloud Polling"
|
||||
ha_release: pre 0.7
|
||||
---
|
||||
|
||||
|
||||
The Wink sensor platform allows you to get data from your [Wink](http://www.wink.com/) sensors.
|
||||
|
||||
The requirement is that you have setup [Wink](/components/wink/).
|
||||
|
||||
|
||||
### Supported sensor devices
|
||||
|
||||
- Wink Relay temperature, proximity, and humidity
|
||||
- Wink Spotter temperature, humidity, and brightness (No Wink hub required)
|
||||
- Wink Porkfolio balance (No Wink hub required)
|
||||
- Wink eggminder (No Wink hub required)
|
||||
- Nest protect Smoke and CO severity (No confirmation that this is actually reported) (No Wink hub required)
|
||||
- Motion sensor temperature
|
||||
- Quirky refuel propane tank monitor (No Wink hub required)
|
||||
|
||||
<p class='note'>
|
||||
The above devices are confirmed to work, but others may work as well.
|
||||
</p>
|
||||
|
@ -1,19 +0,0 @@
|
||||
---
|
||||
layout: page
|
||||
title: "Android IP Webcam Settings"
|
||||
description: "Instructions on how to integrate settings for Android IP webcam as switch within Home Assistant."
|
||||
date: 2017-03-10 00:00
|
||||
sidebar: true
|
||||
comments: false
|
||||
sharing: true
|
||||
footer: true
|
||||
logo: android_ip_webcam.png
|
||||
ha_category: Switch
|
||||
ha_release: "0.40"
|
||||
ha_iot_class: "Local Polling"
|
||||
---
|
||||
|
||||
|
||||
The `android_ip_webcam` switch platform lets you control settings of [Android IP webcam](https://play.google.com/store/apps/details?id=com.pas.webcam) through Home Assistant.
|
||||
|
||||
Devices will be configured automatically. Please refer to the [component](/components/android_ip_webcam/) configuration on how to setup.
|
@ -49,10 +49,10 @@ host:
|
||||
required: false
|
||||
default: 127.0.0.1
|
||||
type: string
|
||||
host:
|
||||
port:
|
||||
description: Port of the gateway.
|
||||
required: false
|
||||
default: depends on the gateway model
|
||||
default: Depends on the gateway model.
|
||||
type: integer
|
||||
switches:
|
||||
description: List of switches that can be controlled with this gateway.
|
||||
|
@ -12,85 +12,97 @@ ha_category: Switch
|
||||
ha_release: 0.38
|
||||
---
|
||||
|
||||
The `rflink` component support devices that use [RFLink gateway firmware](http://www.nemcon.nl/blog2/), for example, the [Nodo RFLink Gateway](https://www.nodo-shop.nl/nl/21-rflink-gateway). RFLink gateway is an Arduino firmware that allows two-way communication with a multitude of RF wireless devices using cheap hardware (Arduino + transceiver).
|
||||
The `rflink` component supports devices that use [RFLink gateway firmware](http://www.nemcon.nl/blog2/), for example, the [Nodo RFLink Gateway](https://www.nodo-shop.nl/nl/21-rflink-gateway). RFLink gateway is an Arduino firmware that allows two-way communication with a multitude of RF wireless devices using cheap hardware (Arduino + transceiver).
|
||||
|
||||
## {% linkable_title Configuration %}
|
||||
First, you have to set up your [RFLink hub](/components/rflink/).
|
||||
|
||||
First, you have to set up your [rflink hub](/components/rflink/).
|
||||
The RFLink component does not know the difference between a `switch`, a `binary_sensor` and a `light`. Therefore all switchable devices are automatically added as `light` by default.
|
||||
|
||||
The RFLink component does not know the difference between a `switch` and a `light`. Therefore all switchable devices are automatically added as `light` by default.
|
||||
RFLink binary_sensor/switch/light ID's are composed of: protocol, id, switch/channel. For example: `newkaku_0000c6c2_1`.
|
||||
|
||||
RFLink switch/light ID's are composed of: protocol, id, switch. For example: `newkaku_0000c6c2_1`.
|
||||
Once the ID of a switch is known, it can be used to configure it as a switch type in HA and, for example, to add it to a different group, hide it or configure a nice name.
|
||||
|
||||
Once the ID of a switch is known it can be used to configure it as a switch type in HA, for example, to add it to a different group, hide it or configure a nice name.
|
||||
|
||||
Configuring a device as switch with a nice name:
|
||||
Configuring devices as switch :
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
switch:
|
||||
platform: rflink
|
||||
device_defaults:
|
||||
fire_event: true
|
||||
signal_repetitions: 2
|
||||
devices:
|
||||
newkaku_0000c6c2_1:
|
||||
name: Ceiling fan
|
||||
conrad_00785c_0a:
|
||||
name: Motion sensor kitchen
|
||||
- platform: rflink
|
||||
devices:
|
||||
newkaku_0000c6c2_1: {}
|
||||
conrad_00785c_0a: {}
|
||||
```
|
||||
|
||||
{% configuration %}
|
||||
device_defaults:
|
||||
description: The defaults for all listed devices.
|
||||
description: The defaults for the devices.
|
||||
required: false
|
||||
type: list
|
||||
type: map
|
||||
keys:
|
||||
fire_event:
|
||||
description: Set default `fire_event` for Rflink switch devices (see below).
|
||||
description: Set default `fire_event` for RFLink switch devices (see below).
|
||||
required: false
|
||||
type: boolean
|
||||
signal_repetitions:
|
||||
description: Set default `signal_repetitions` for Rflink switch devices (see below).
|
||||
required: false
|
||||
type: integer
|
||||
devices:
|
||||
description: A list of devices with their name to use in the frontend.
|
||||
required: false
|
||||
type: list
|
||||
keys:
|
||||
name:
|
||||
description: Name for the device.
|
||||
required: false
|
||||
default: Rflink ID
|
||||
type: string
|
||||
aliases:
|
||||
description: (deprecated) Alternative Rflink ID's this device is known by.
|
||||
required: false
|
||||
type: [list, string]
|
||||
group_aliases:
|
||||
description: "(deprecated) `aliases` which only respond to group commands."
|
||||
required: false
|
||||
type: [list, string]
|
||||
no_group_aliases:
|
||||
description: "(deprecated) `aliases` which do not respond to group commands."
|
||||
required: false
|
||||
type: [list, string]
|
||||
fire_event:
|
||||
description: Fire a `button_pressed` event if this device is turned on or off.
|
||||
required: false
|
||||
default: false
|
||||
default: False
|
||||
type: boolean
|
||||
signal_repetitions:
|
||||
description: Set default `signal_repetitions` for RFLink switch devices (see below).
|
||||
required: false
|
||||
default: 1
|
||||
type: integer
|
||||
group:
|
||||
description: Allow light to respond to group commands (ALLON/ALLOFF).
|
||||
required: false
|
||||
default: true
|
||||
type: boolean
|
||||
devices:
|
||||
description: A list of switches.
|
||||
required: false
|
||||
type: list
|
||||
keys:
|
||||
rflink_ids:
|
||||
description: RFLink ID of the device
|
||||
required: true
|
||||
type: map
|
||||
keys:
|
||||
name:
|
||||
description: Name for the device.
|
||||
required: false
|
||||
default: RFLink ID
|
||||
type: string
|
||||
aliases:
|
||||
description: Alternative RFLink ID's this device is known by.
|
||||
required: false
|
||||
type: [list, string]
|
||||
group_aliases:
|
||||
description: "`aliases` which only respond to group commands."
|
||||
required: false
|
||||
type: [list, string]
|
||||
no_group_aliases:
|
||||
description: "`aliases` which do not respond to group commands."
|
||||
required: false
|
||||
type: [list, string]
|
||||
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: Set default `signal_repetitions` for RFLink switch devices (see below).
|
||||
required: false
|
||||
default: 1
|
||||
type: integer
|
||||
group:
|
||||
description: Allow light to respond to group commands (ALLON/ALLOFF).
|
||||
required: false
|
||||
default: true
|
||||
type: boolean
|
||||
aliases:
|
||||
description: "(**deprecated**) Alternative RFLink ID's this device is known by."
|
||||
required: false
|
||||
type: [list, string]
|
||||
group_aliases:
|
||||
description: "(**deprecated**) `aliases` which only respond to group commands."
|
||||
required: false
|
||||
type: [list, string]
|
||||
no_group_aliases:
|
||||
description: "(**deprecated**) `aliases` which do not respond to group commands."
|
||||
required: false
|
||||
type: [list, string]
|
||||
{% endconfiguration %}
|
||||
|
||||
## {% linkable_title Switch state %}
|
||||
@ -102,14 +114,13 @@ Sometimes a switch is controlled by multiple wireless remotes, each remote has i
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
switch:
|
||||
platform: rflink
|
||||
devices:
|
||||
newkaku_0000c6c2_1:
|
||||
name: Ceiling fan
|
||||
icon: mdi:fan
|
||||
aliases:
|
||||
- newkaku_000000001_2
|
||||
- kaku_000001_a
|
||||
- platform: rflink
|
||||
devices:
|
||||
newkaku_0000c6c2_1:
|
||||
name: Ceiling fan
|
||||
aliases:
|
||||
- newkaku_000000001_2
|
||||
- kaku_000001_a
|
||||
```
|
||||
|
||||
Any on/off command from any alias ID updates the current state of the switch. However, when sending a command through the frontend only the primary ID is used.
|
||||
@ -117,3 +128,21 @@ Any on/off command from any alias ID updates the current state of the switch. Ho
|
||||
## {% linkable_title Device support %}
|
||||
|
||||
See [device support](/components/rflink/#device-support)
|
||||
|
||||
### {% linkable_title Additional configuration examples %}
|
||||
|
||||
Multiple switches with signal repetitions and custom names
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
switch:
|
||||
- platform: rflink
|
||||
device_defaults:
|
||||
fire_event: true
|
||||
signal_repetitions: 2
|
||||
devices:
|
||||
newkaku_0000c6c2_1:
|
||||
name: Ceiling fan
|
||||
conrad_00785c_0a:
|
||||
name: Motion sensor kitchen
|
||||
```
|
||||
|
@ -1,17 +0,0 @@
|
||||
---
|
||||
layout: page
|
||||
title: "Verisure SmartPlug"
|
||||
description: "Instructions on how to setup the Verisure SmartPlug within Home Assistant."
|
||||
date: 2016-02-15 22:00
|
||||
sidebar: true
|
||||
comments: false
|
||||
sharing: true
|
||||
footer: true
|
||||
logo: verisure.png
|
||||
ha_category: Switch
|
||||
ha_iot_class: "Cloud Polling"
|
||||
---
|
||||
|
||||
The Verisure switch platform allows you to control your [Verisure](https://www.verisure.com/) SmartPlugs.
|
||||
|
||||
The requirement is that you have set up your [Verisure hub](/components/verisure/).
|
@ -1,17 +0,0 @@
|
||||
---
|
||||
layout: page
|
||||
title: "Belkin WeMo Switch"
|
||||
description: "Instructions on how to integrate Belkin WeMo switches into Home Assistant."
|
||||
date: 2016-02-20 00:47
|
||||
sidebar: true
|
||||
comments: false
|
||||
sharing: true
|
||||
footer: true
|
||||
logo: belkin_wemo.png
|
||||
ha_category: Switch
|
||||
ha_iot_class: "Local Push"
|
||||
---
|
||||
|
||||
The `wemo` platform allows you to control your [Belkin WeMo](http://www.belkin.com/us/p/P-F7C027/) switches from within Home Assistant. This includes support for Wemo enabled [Mr. Coffee](http://www.mrcoffee.com/wemo-landing-page.html) smart coffee makers.
|
||||
|
||||
WeMo devices are automatically discovered if the `discovery` component is enabled. For more configuration information, see the [WeMo component](/components/wemo/) documentation.
|
@ -1,27 +0,0 @@
|
||||
---
|
||||
layout: page
|
||||
title: "Wink Switch"
|
||||
description: "Instructions on how to setup the Wink switches within Home Assistant."
|
||||
date: 2015-01-20 22:36
|
||||
sidebar: true
|
||||
comments: false
|
||||
sharing: true
|
||||
footer: true
|
||||
logo: wink.png
|
||||
ha_category: Switch
|
||||
ha_release: pre 0.7
|
||||
ha_iot_class: "Cloud Polling"
|
||||
---
|
||||
|
||||
The Wink switch platform allows you to control your [Wink](http://www.wink.com/) switches.
|
||||
|
||||
The requirement is that you have set up [Wink](/components/wink/).
|
||||
|
||||
## {% linkable_title Supported switch devices %}
|
||||
|
||||
- Wink Pivot power genius (No Wink hub required)
|
||||
- non-dimming Z-wave in-wall switches (dimming switches show up as lights)
|
||||
- Wink Relay load controlling switches
|
||||
- Rachio sprinkler controller (No Wink hub required)
|
||||
- iHome smart plug (No Wink hub required)
|
||||
- Wink switch groups (User created groups of switches)
|
@ -49,7 +49,7 @@ host:
|
||||
required: false
|
||||
type: string
|
||||
update_interval:
|
||||
description: Interval (in seconds) for polling the Telldus Live server (or the local server). Minimal value can't be less then 300.
|
||||
description: Interval (in seconds) for polling the Telldus Live server (or the local server).
|
||||
required: false
|
||||
type: integer
|
||||
default: 60
|
||||
|
@ -27,7 +27,7 @@ The `tradfri` component support the IKEA Trådfri Gateway (a.k.a. IKEA Tradfri h
|
||||
You will be prompted to configure the gateway through the Home Assistant interface. The configuration process is very simple, when prompted, enter the security key printed on the physical sticker that is on the bottom of the IKEA Trådfri Gateway, then click configure.
|
||||
|
||||
<p class='note'>
|
||||
If you see an "Unable to connect" message, restart the gateway and try again. Don't forget to assign a permanent IP to your IKEA Trådfri Gateway in your router / DHCP-server.
|
||||
If you see an "Unable to connect" message, restart the gateway and try again. Don't forget to assign a permanent IP address to your IKEA Trådfri Gateway in your router / DHCP-server.
|
||||
</p>
|
||||
|
||||
## {% linkable_title Configuration %}
|
||||
@ -60,6 +60,10 @@ After updating the firmware of your IKEA Trådfri Gateway it might be necessary
|
||||
|
||||
### {% linkable_title Compilation issues %}
|
||||
|
||||
<p class='note'>
|
||||
This does not apply to Hass.io or Docker.
|
||||
</p>
|
||||
|
||||
Please make sure you have `autoconf` installed (`$ sudo apt-get install autoconf`) if you want to use this component. Also, installing some dependencies might take considerable time (>1 h) on slow devices.
|
||||
|
||||
### {% linkable_title Setting the `api_key` %}
|
||||
|
@ -8,21 +8,35 @@ comments: false
|
||||
sharing: true
|
||||
footer: true
|
||||
logo: verisure.png
|
||||
ha_category: Hub
|
||||
ha_category:
|
||||
- Hub
|
||||
- Alarm
|
||||
- Binary Sensor
|
||||
- Camera
|
||||
- Lock
|
||||
- Sensor
|
||||
- Switch
|
||||
ha_release: pre 0.7
|
||||
ha_iot_class: "Cloud Polling"
|
||||
redirect_from:
|
||||
- /components/alarm_control_panel.verisure/
|
||||
- /components/binary_sensor.verisure/
|
||||
- /components/camera.verisure/
|
||||
- /components/lock.verisure/
|
||||
- /components/sensor.verisure/
|
||||
- /components/switch.verisure/
|
||||
---
|
||||
|
||||
Home Assistant has support to integrate your [Verisure](https://www.verisure.com/) devices.
|
||||
|
||||
We support:
|
||||
There is currently support for the following device types within Home Assistant:
|
||||
|
||||
- [Alarm](/components/alarm_control_panel.verisure/)
|
||||
- [Smartplugs](/components/switch.verisure/)
|
||||
- Reading from thermometers and hygrometers integrated in various [devices](/components/sensor.verisure/)
|
||||
- Mouse Detector
|
||||
- [Locks](/components/lock.verisure/)
|
||||
- [Door & Window](/components/binary_sensor.verisure/)
|
||||
- Alarm
|
||||
- Camera
|
||||
- Switch (Smartplug)
|
||||
- Sensor (Thermometers, Hygrometers and Mouse detectors)
|
||||
- Lock
|
||||
- Binary Sensor (Door & Window)
|
||||
|
||||
## {% linkable_title Configuration %}
|
||||
|
||||
@ -93,3 +107,26 @@ giid:
|
||||
required: false
|
||||
type: string
|
||||
{% endconfiguration %}
|
||||
|
||||
## {% linkable_title Alarm Control Panel %}
|
||||
|
||||
The Verisure alarm control panel platform allows you to control your [Verisure](https://www.verisure.com/) Alarms.
|
||||
|
||||
The requirement is that you have setup your Verisure hub first, with the instruction above.
|
||||
|
||||
The `changed_by` attribute enables one to be able to take different actions depending on who armed/disarmed the alarm in [automation](/getting-started/automation/).
|
||||
|
||||
```yaml
|
||||
automation:
|
||||
- alias: Alarm status changed
|
||||
trigger:
|
||||
- platform: state
|
||||
entity_id: alarm_control_panel.alarm_1
|
||||
action:
|
||||
- service: notify.notify
|
||||
data_template:
|
||||
message: >
|
||||
{% raw %}Alarm changed from {{ trigger.from_state.state }}
|
||||
to {{ trigger.to_state.state }}
|
||||
by {{ trigger.to_state.attributes.changed_by }}{% endraw %}
|
||||
```
|
@ -8,13 +8,17 @@ comments: false
|
||||
sharing: true
|
||||
footer: true
|
||||
logo: w800rf32.png
|
||||
ha_category: Hub
|
||||
ha_category:
|
||||
- Hub
|
||||
- Binary Sensor
|
||||
ha_release: 0.83
|
||||
ha_iot_class: "Local Push"
|
||||
redirect_from:
|
||||
- /components/binary_sensor.w800rf32/
|
||||
---
|
||||
|
||||
The `w800rf32` component supports W800RF32 devices by [WGL Designs](http://www.wgldesigns.com/w800.html) which
|
||||
communicate in the frequency range of 310MHz or if you are outside Canada or the U.S., 433.92 MHz.
|
||||
communicate in the frequency range of 310MHz or if you are outside Canada or the U.S., 433.92 MHz.
|
||||
|
||||
The W800 family of RF receivers are designed to receive X10 RF signals generated from X10 products: Palm Pad
|
||||
remotes, key chain remotes, Hawkeye motion detectors, and many, many other X10 RF devices.
|
||||
@ -33,3 +37,48 @@ device:
|
||||
required: true
|
||||
type: string
|
||||
{% endconfiguration %}
|
||||
|
||||
## {% linkable_title Binary Sensor %}
|
||||
|
||||
The `w800rf32` platform supports X10 RF binary sensors such as Palm Pad remotes, key chain remotes, Hawkeye motion detectors, and many, many other X10 RF devices. Some that have specifically been used with this are the KR19A keychain, MS16A motion detector and the RSS18 four button wall mount keypad.
|
||||
|
||||
## {% linkable_title Setting up your devices %}
|
||||
|
||||
Once you have set up your [w800rf32 hub](/components/w800rf32/), add the binary sensors to your `configuration.yaml`:
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
binary_sensor:
|
||||
- platform: w800rf32
|
||||
devices:
|
||||
a1:
|
||||
name: motion_hall
|
||||
a2:
|
||||
name: motion_kitchen
|
||||
```
|
||||
|
||||
{% configuration %}
|
||||
devices:
|
||||
description: A list of devices.
|
||||
required: true
|
||||
type: map
|
||||
keys:
|
||||
name:
|
||||
description: Override the name to use in the frontend.
|
||||
required: false
|
||||
type: string
|
||||
device_class:
|
||||
description: "The [type or class of the sensor](/components/binary_sensor/) to set the icon in the frontend."
|
||||
required: false
|
||||
type: device_class
|
||||
off_delay:
|
||||
description: For sensors that only sends 'On' state updates, this variable sets a delay after which the sensor state will be updated back to 'Off'.
|
||||
required: false
|
||||
type: integer
|
||||
{% endconfiguration %}
|
||||
|
||||
Binary sensors have only two states, "on" and "off". Many door or window opening sensors will send a signal each time the door/window is open or closed. However, depending on their hardware or on their purpose, some sensors are only able to signal their "on" state:
|
||||
|
||||
- Most motion sensors send a signal each time they detect motion. They stay "on" for a few seconds and go back to sleep, ready to signal other motion events. Usually, they do not send a signal when they go back to sleep.
|
||||
|
||||
For those devices, use the *off_delay* parameter. It defines a delay after which a device will go back to an "Off" state. That "Off" state will be fired internally by Home Assistant, just as if the device fired it by itself. If a motion sensor can only send signals once every 5 seconds, sets the *off_delay* parameter to *seconds: 5*.
|
@ -1,26 +0,0 @@
|
||||
---
|
||||
layout: page
|
||||
title: "Wink Water Heater"
|
||||
description: "Instructions on how to set up the Wink water heaters within Home Assistant."
|
||||
date: 2016-11-01 22:36
|
||||
sidebar: true
|
||||
comments: false
|
||||
sharing: true
|
||||
footer: true
|
||||
logo: wink.png
|
||||
ha_category: Water heater
|
||||
ha_release: 0.32
|
||||
ha_iot_class: "Cloud Polling"
|
||||
---
|
||||
|
||||
The Wink water heater platform allows you to get data from your [Wink](http://www.wink.com/) Water Heaters.
|
||||
|
||||
The requirement is that you have set up [Wink](/components/wink/).
|
||||
|
||||
## {% linkable_title Supported water heaters %}
|
||||
|
||||
- Rheem Econet water heaters (No Wink hub required)
|
||||
|
||||
<p class='note'>
|
||||
Wink water heaters use to live under the `climate` platform prior to release 0.81.
|
||||
</p>
|
@ -8,13 +8,30 @@ comments: false
|
||||
sharing: true
|
||||
footer: true
|
||||
logo: belkin_wemo.png
|
||||
ha_category: Hub
|
||||
ha_category:
|
||||
- Hub
|
||||
- Binary Sensor
|
||||
- Fan
|
||||
- Light
|
||||
- Switch
|
||||
featured: true
|
||||
ha_release: pre 0.7
|
||||
redirect_from:
|
||||
- /components/fan.wemo/
|
||||
- /components/binary_sensor.wemo/
|
||||
- /components/light.wemo/
|
||||
- /components/switch.wemo/
|
||||
---
|
||||
|
||||
The `wemo` component is the main component to integrate various [Belkin WeMo](http://www.belkin.com/us/Products/home-automation/c/wemo-home-automation/) devices with Home Assistant.
|
||||
|
||||
There is currently support for the following device types within Home Assistant:
|
||||
|
||||
- Binary Sensor
|
||||
- Fan (Belkin WeMo (Holmes) Smart Humidifier)
|
||||
- Light (Belkin WeMo LED lights and [Smart Dimmer Switch](http://www.belkin.com/us/F7C059-Belkin/p/P-F7C059/))
|
||||
- Switch ([Belkin WeMo Switches](https://www.belkin.com/us/Products/home-automation/c/wemo-home-automation/) and includes support for Wemo enabled [Mr. Coffee](http://www.mrcoffee.com/wemo-landing-page.html) smart coffee makers.)
|
||||
|
||||
## {% linkable_title Configuration %}
|
||||
|
||||
{% configuration %}
|
||||
@ -66,3 +83,35 @@ wemo:
|
||||
- 192.168.1.23:52001
|
||||
- 192.168.52.172:52002
|
||||
```
|
||||
|
||||
## {% linkable_title Fan %}
|
||||
|
||||
The `wemo` platform allows you to control your Belkin WeMo humidifiers from within Home Assistant. This includes support for the [Holmes Smart Humidifier](https://www.holmesproducts.com/wemo-humidifier.html).
|
||||
|
||||
WeMo devices are automatically discovered if the `discovery` component is enabled.
|
||||
|
||||
### {% linkable_title Attributes %}
|
||||
|
||||
There are several attributes which can be used for automations and templates:
|
||||
|
||||
| Attribute | Description |
|
||||
| --------- | ----------- |
|
||||
| `current_humidity` | An integer that indicates the current relative humidity percentage of the room, as determined by the device's onboard humidity sensor.
|
||||
| `fan_mode` | String that indicates the current fan speed setting, as reported by the WeMo humidifier.
|
||||
| `filter_expired` | A boolean that indicates whether the filter has expired and needs to be replaced.
|
||||
| `filter_life` | The used life of the filter (as a percentage).
|
||||
| `target_humidity` | An integer that indicates the desired relative humidity percentage (this is constrained to the humidity settings of the device, which are 45, 50, 55, 60, and 100).
|
||||
| `water level` | String that indicates whether the water level is Good, Low, or Empty.
|
||||
|
||||
### {% linkable_title Services %}
|
||||
|
||||
There are several services which can be used for automations and control of the humidifier:
|
||||
|
||||
| Service | Description |
|
||||
| --------- | ----------- |
|
||||
| `set_speed` | Calling this service sets the fan speed (entity_id and speed are required parameters, and speed must be one of the following: off, low, medium, or high). When selecting low for the speed, this will map to the WeMo humidifier speed of minimum. When selecting high for the speed, this will map to the WeMo humidifier speed of maximum. The WeMo humidifier speeds of low and high are unused due to constraints on which fan speeds Home Assistant supports.
|
||||
| `toggle` | Calling this service will toggle the humidifier between on and off states.
|
||||
| `turn_off` | Calling this service will turn the humidifier off (entity_id is required).
|
||||
| `turn_on` | Calling this service will turn the humidifier on and set the speed to the last used speed (defaults to medium, entity_id is required).
|
||||
| `wemo_set_humidity` | Calling this service will set the desired relative humidity setting on the device (entity_id is a required list of 1 or more entities to set humidity on, and target_humidity is a required float value between 0 and 100 (this value will be rounded down and mapped to one of the valid desired humidity settings of 45, 50, 55, 60, or 100 that are supported by the WeMo humidifier)).
|
||||
| `wemo_reset_filter_life` | Calling this service will reset the humdifier's filter life back to 100% (entity_id is a required list of 1 or more entities to reset the filter life on). Call this service when you change the filter on your humidifier.
|
@ -8,10 +8,34 @@ comments: false
|
||||
sharing: true
|
||||
footer: true
|
||||
logo: wink.png
|
||||
ha_category: Hub
|
||||
ha_category:
|
||||
- Hub
|
||||
- Alarm
|
||||
- Binary Sensor
|
||||
- Climate
|
||||
- Cover
|
||||
- Fan
|
||||
- Light
|
||||
- Lock
|
||||
- Scene
|
||||
- Sensor
|
||||
- Switch
|
||||
- Water heater
|
||||
featured: true
|
||||
ha_iot_class: "Cloud Polling"
|
||||
ha_release: pre 0.7
|
||||
redirect_from:
|
||||
- /components/alarm_control_panel.wink/
|
||||
- /components/binary_sensor.wink/
|
||||
- /components/climate.wink/
|
||||
- /components/cover.wink/
|
||||
- /components/fan.wink/
|
||||
- /components/light.wink/
|
||||
- /components/lock.wink/
|
||||
- /components/scene.wink/
|
||||
- /components/sensor.wink/
|
||||
- /components/switch.wink/
|
||||
- /components/water_heater.wink/
|
||||
---
|
||||
|
||||
[Wink](http://www.wink.com/) is a home automation hub that can control a whole wide range of devices on the market. Or, as they say in their own words:
|
||||
@ -22,7 +46,19 @@ ha_release: pre 0.7
|
||||
|
||||
Home Assistant integrates with the Wink API and automatically sets up any switches, lights, locks, fans, climate devices (thermostats, air conditioners, and water heaters), covers, sensors, alarms, and sirens.
|
||||
|
||||
Check the related components pages for actual devices that are supported.
|
||||
There is currently support for the following device types within Home Assistant:
|
||||
|
||||
- Alarm
|
||||
- Binary Sensor
|
||||
- Climate
|
||||
- Cover
|
||||
- Fan
|
||||
- Light
|
||||
- Lock
|
||||
- Scene
|
||||
- Sensor
|
||||
- Switch
|
||||
- Water heater
|
||||
|
||||
## {% linkable_title Authenticate using [developer.wink.com](https://developer.wink.com) %}
|
||||
|
||||
@ -351,3 +387,298 @@ script:
|
||||
entity_id: wink.nimbus_dial_1
|
||||
rotation: 'ccw'
|
||||
```
|
||||
|
||||
## {% linkable_title Alarm Control Panel %}
|
||||
|
||||
The Wink alarm platform allows you to control your [Wink](http://www.wink.com/) Canary all-in-one security camera.
|
||||
|
||||
The requirement is that you have setup [Wink](/components/wink/) from above.
|
||||
|
||||
### {% linkable_title Supported devices %}
|
||||
|
||||
- Canary all-in-one security camera
|
||||
|
||||
<p class='note'>
|
||||
The above devices are confirmed to work, but others may work as well.
|
||||
</p>
|
||||
|
||||
## {% linkable_title Binary Sensor %}
|
||||
|
||||
The Wink binary sensor platform allows you to get data from your [Wink](http://www.wink.com/) binary sensors.
|
||||
|
||||
The requirement is that you have setup [Wink](/components/wink/) from above.
|
||||
|
||||
### {% linkable_title Supported Binary sensor devices %}
|
||||
|
||||
- Smoke and CO detectors (No Wink hub required for Nest)
|
||||
- Window/Door sensors
|
||||
- Motion sensors
|
||||
- Ring Door bells (No hub required)
|
||||
- Liquid presence sensors
|
||||
- Z-wave lock key codes
|
||||
- Lutron connected bulb remote buttons
|
||||
- Wink Relay buttons and presence detection
|
||||
- Wink spotter loudness and vibration (No Wink hub required)
|
||||
- Wink hub devices connection status. This includes any paired hubs like Hue, Wink v1, Wink v2, Wink Relay...
|
||||
- Dropcam sensors
|
||||
|
||||
<p class='note'>
|
||||
The above devices are confirmed to work, but others may work as well.
|
||||
</p>
|
||||
|
||||
## {% linkable_title Climate %}
|
||||
|
||||
The Wink climate platform allows you to get data from your [Wink](http://www.wink.com/) thermostats and air conditioners.
|
||||
|
||||
The requirement is that you have setup [Wink](/components/wink/) from above.
|
||||
|
||||
### {% linkable_title Supported climate devices %}
|
||||
|
||||
- Nest (No Wink hub required)
|
||||
- Ecobee (No Wink hub required)
|
||||
- Sensi (No Wink hub required)
|
||||
- Carrier (Unconfirmed)
|
||||
- Honeywell (No Wink hub required)
|
||||
- Generic Z-Wave
|
||||
- Quirky Aros window AC unit
|
||||
|
||||
<p class='note'>
|
||||
The above devices are confirmed to work, but others may work as well.
|
||||
</p>
|
||||
|
||||
## {% linkable_title Cover %}
|
||||
|
||||
Wink Cover garage door functionality varies on the product. Home Assistant can open, close, and view state of GoControl/Linear openers. For Chamberlain MyQ-enabled openers, Home Assistant is limited to show current state (open or closed) only using this Wink cover. This restriction was imposed by Chamberlain for third party control. Wink suggests that MyQ customers should contact Chamberlain directly to inquire about expanding permissions.
|
||||
|
||||
The [MyQ Cover](/components/cover.myq/) does provide full functionality for opening and closing Chamberlain MyQ-enabled garage doors. If installed along with the Wink Component, a duplicate garage door entity may exist. In that case, the semi-functional Wink garage door entity can be hidden via customize.yaml.
|
||||
|
||||
The requirement is that you have setup [Wink](/components/wink/) from above.
|
||||
|
||||
### {% linkable_title Supported cover devices %}
|
||||
|
||||
- Bali window treatments
|
||||
- Lutron shades
|
||||
- Pella motorized blinds and shades
|
||||
- GoControl garage door opener
|
||||
- Chamberlain MyQ (Limited functionality) (No Wink hub required)
|
||||
|
||||
<p class='note'>
|
||||
The above devices are confirmed to work, but others may work as well.
|
||||
</p>
|
||||
|
||||
## {% linkable_title Fan %}
|
||||
|
||||
The Wink fan platform allows you to control your [Wink](http://www.wink.com/) fans.
|
||||
|
||||
The requirement is that you have setup [Wink](/components/wink/) from above.
|
||||
|
||||
### {% linkable_title Supported fan devices %}
|
||||
|
||||
- Home Decorator Wink-enabled Gardinier ceiling fan
|
||||
- Hampton Bay ceiling fan module
|
||||
|
||||
<p class='note'>
|
||||
The above devices are confimed to work, but others may work as well.
|
||||
</p>
|
||||
|
||||
## {% linkable_title Light %}
|
||||
|
||||
The `wink` light platform allows you to use your [Wink](http://www.wink.com/) lights.
|
||||
|
||||
The requirement is that you have setup [Wink](/components/wink/) from above.
|
||||
|
||||
### {% linkable_title Supported light devices %}
|
||||
|
||||
- Z-wave switches with dimming
|
||||
- Hue
|
||||
- Lightify
|
||||
- GE link
|
||||
- Wink light groups (User created groups of lights)
|
||||
|
||||
<p class='note'>
|
||||
The above devices are confirmed to work, but others may work as well.
|
||||
</p>
|
||||
|
||||
## {% linkable_title Lock %}
|
||||
|
||||
The Wink lock platform allows you to control your [Wink](http://www.wink.com/) locks.
|
||||
|
||||
The requirement is that you have setup [Wink](/components/wink/) from above.
|
||||
|
||||
### {% linkable_title Supported lock devices %}
|
||||
|
||||
- Kwikset
|
||||
- Schlage
|
||||
- August (No Wink hub required) (August Connect required)
|
||||
- Generic Z-wave
|
||||
|
||||
<p class='note'>
|
||||
The following services have only been confirmed on Schlage locks.
|
||||
</p>
|
||||
|
||||
### {% linkable_title Service `wink_set_lock_alarm_mode` %}
|
||||
|
||||
You can use the service wink/wink_set_lock_alarm_mode to set the alarm mode of your lock.
|
||||
|
||||
| Service data attribute | Optional | Description |
|
||||
| ---------------------- | -------- | ----------- |
|
||||
| `mode` | no | String one of tamper, activity, or forced_entry
|
||||
| `entity_id` | yes | String or list of strings that point at `entity_id`s of locks.
|
||||
|
||||
Example:
|
||||
|
||||
```yaml
|
||||
script:
|
||||
set_locks_to_tamper:
|
||||
sequence:
|
||||
- service: wink.wink_set_lock_alarm_mode
|
||||
data:
|
||||
mode: "tamper"
|
||||
```
|
||||
|
||||
### {% linkable_title Service `wink_set_lock_alarm_sensitivity` %}
|
||||
|
||||
You can use the service wink/wink_set_lock_alarm_sensitivity to set the alarm sensitivity of your lock.
|
||||
|
||||
| Service data attribute | Optional | Description |
|
||||
| ---------------------- | -------- | ----------- |
|
||||
| `sensitivity` | no | String one of low, medium_low, medium, medium_high, high.
|
||||
| `entity_id` | yes | String or list of strings that point at `entity_id`s of locks.
|
||||
|
||||
Example:
|
||||
|
||||
```yaml
|
||||
script:
|
||||
set_locks_to_high_sensitivity:
|
||||
sequence:
|
||||
- service: wink.wink_set_lock_alarm_sensitivity
|
||||
data:
|
||||
sensitivity: "high"
|
||||
```
|
||||
|
||||
### {% linkable_title Service `wink_set_lock_alarm_state` %}
|
||||
|
||||
You can use the service wink/wink_set_lock_alarm_state to set the alarm state of your lock.
|
||||
|
||||
| Service data attribute | Optional | Description |
|
||||
| ---------------------- | -------- | ----------- |
|
||||
| `enabled` | no | Boolean enabled or disabled, true or false
|
||||
| `entity_id` | yes | String or list of strings that point at `entity_id`s of locks.
|
||||
|
||||
Example:
|
||||
|
||||
```yaml
|
||||
script:
|
||||
disable_all_locks_alarm:
|
||||
sequence:
|
||||
- service: wink.wink_set_lock_alarm_state
|
||||
data:
|
||||
enabled: false
|
||||
```
|
||||
|
||||
### {% linkable_title Service `wink_set_lock_beeper_state` %}
|
||||
|
||||
You can use the service wink/wink_set_lock_beeper_state to set the beeper state of your lock.
|
||||
|
||||
| Service data attribute | Optional | Description |
|
||||
| ---------------------- | -------- | ----------- |
|
||||
| `enabled` | no | Boolean enabled or disabled, true or false
|
||||
| `entity_id` | yes | String or list of strings that point at `entity_id`s of locks.
|
||||
|
||||
Example:
|
||||
|
||||
```yaml
|
||||
script:
|
||||
disable_all_locks_beepers:
|
||||
sequence:
|
||||
- service: wink.wink_set_lock_beeper_state
|
||||
data:
|
||||
enabled: false
|
||||
```
|
||||
|
||||
### {% linkable_title Service `wink_set_lock_vacation_mode` %}
|
||||
|
||||
You can use the service wink/wink_set_lock_vacation_mode to set the vacation mode of your lock.
|
||||
|
||||
| Service data attribute | Optional | Description |
|
||||
| ---------------------- | -------- | ----------- |
|
||||
| `enabled` | no | Boolean enabled or disabled, true or false
|
||||
| `entity_id` | yes | String or list of strings that point at `entity_id`s of locks.
|
||||
|
||||
Example:
|
||||
|
||||
```yaml
|
||||
script:
|
||||
enabled_vacation_mode_on_all_locks:
|
||||
sequence:
|
||||
- service: wink.wink_set_lock_vacation_mode
|
||||
data:
|
||||
enabled: false
|
||||
```
|
||||
|
||||
### {% linkable_title Service `wink_add_new_lock_key_code` %}
|
||||
|
||||
You can use the service wink/wink_add_new_lock_key_code to add a new user code to your Wink lock.
|
||||
|
||||
| Service data attribute | Optional | Description |
|
||||
| ---------------------- | -------- | ----------- |
|
||||
| `entity_id` | no | String or list of strings that point at `entity_id`s of locks.
|
||||
| `name` | no | the name of the new key code
|
||||
| `code` | no | The new code. Must match length of existing codes.
|
||||
|
||||
<p class='note'>
|
||||
Calling service wink/pull_newly_added_wink_devices will add the new key code to Home Assistant. The device will also show up on the next restart of Home Assistant.
|
||||
</p>
|
||||
|
||||
<p class='note'>
|
||||
If supported by your lock, a binary sensor will be created for each user key code you have defined. These key codes will turn on when the code is entered and automatically turn off after a few seconds.
|
||||
</p>
|
||||
|
||||
## {% linkable_title Sensor %}
|
||||
|
||||
The Wink sensor platform allows you to get data from your [Wink](http://www.wink.com/) sensors.
|
||||
|
||||
The requirement is that you have setup [Wink](/components/wink/) from above.
|
||||
|
||||
### {% linkable_title Supported sensor devices %}
|
||||
|
||||
- Wink Relay temperature, proximity, and humidity
|
||||
- Wink Spotter temperature, humidity, and brightness (No Wink hub required)
|
||||
- Wink Porkfolio balance (No Wink hub required)
|
||||
- Wink eggminder (No Wink hub required)
|
||||
- Nest protect Smoke and CO severity (No confirmation that this is actually reported) (No Wink hub required)
|
||||
- Motion sensor temperature
|
||||
- Quirky refuel propane tank monitor (No Wink hub required)
|
||||
|
||||
<p class='note'>
|
||||
The above devices are confirmed to work, but others may work as well.
|
||||
</p>
|
||||
|
||||
## {% linkable_title Switch %}
|
||||
|
||||
The Wink switch platform allows you to control your [Wink](http://www.wink.com/) switches.
|
||||
|
||||
The requirement is that you have set up [Wink](/components/wink/) from above.
|
||||
|
||||
## {% linkable_title Supported switch devices %}
|
||||
|
||||
- Wink Pivot power genius (No Wink hub required)
|
||||
- non-dimming Z-wave in-wall switches (dimming switches show up as lights)
|
||||
- Wink Relay load controlling switches
|
||||
- Rachio sprinkler controller (No Wink hub required)
|
||||
- iHome smart plug (No Wink hub required)
|
||||
- Wink switch groups (User created groups of switches)
|
||||
|
||||
## {% linkable_title Water heater %}
|
||||
|
||||
The Wink water heater platform allows you to get data from your [Wink](http://www.wink.com/) Water Heaters.
|
||||
|
||||
The requirement is that you have set up [Wink](/components/wink/) from above.
|
||||
|
||||
## {% linkable_title Supported water heaters %}
|
||||
|
||||
- Rheem Econet water heaters (No Wink hub required)
|
||||
|
||||
<p class='note'>
|
||||
Wink water heaters use to live under the `climate` platform prior to release 0.81.
|
||||
</p>
|
@ -1,156 +0,0 @@
|
||||
---
|
||||
layout: page
|
||||
title: "Dynamic input select with Kodi media"
|
||||
description: "How to configure an `input_select` that can play in Kodi the latest entries added to the library"
|
||||
date: 2017-05-16 19:05
|
||||
sidebar: true
|
||||
comments: false
|
||||
sharing: true
|
||||
footer: true
|
||||
ha_category: Automation Examples
|
||||
---
|
||||
|
||||
This requires a [Kodi](/components/media_player.kodi/) media player, and consists of commands that perform queries in the Kodi library, and a selection box (`input_select`) that shows the available options. By clicking the commands, the selection box is updated, and when selecting an option, Kodi plays the media.
|
||||
|
||||
Option filling is done in an [AppDaemon](/docs/ecosystem/appdaemon/tutorial/) app, which listens for events that are triggered with the results of the Kodi JSONRPC API queries when scripts run. This application also listens to the selection box and calls the play media service with the corresponding parameters.
|
||||
|
||||
The media player yaml config:
|
||||
|
||||
```yaml
|
||||
media_player:
|
||||
- platform: kodi
|
||||
name: Kodi
|
||||
host: 192.168.0.123
|
||||
```
|
||||
|
||||
The `input_select` with the scripts and a group:
|
||||
|
||||
```yaml
|
||||
input_select:
|
||||
kodi_results:
|
||||
name: Kodi API results
|
||||
options:
|
||||
- Nothing to do
|
||||
|
||||
script:
|
||||
get_recent_movies:
|
||||
alias: Last added movies
|
||||
sequence:
|
||||
- service: media_player.kodi_call_method
|
||||
data:
|
||||
entity_id: media_player.kodi
|
||||
method: VideoLibrary.GetRecentlyAddedMovies
|
||||
properties:
|
||||
- title
|
||||
- year
|
||||
- file
|
||||
- lastplayed
|
||||
|
||||
get_recent_episodes:
|
||||
alias: Last TV shows
|
||||
sequence:
|
||||
- service: media_player.kodi_call_method
|
||||
data:
|
||||
entity_id: media_player.kodi
|
||||
method: VideoLibrary.GetRecentlyAddedEpisodes
|
||||
properties:
|
||||
- showtitle
|
||||
- file
|
||||
- lastplayed
|
||||
- firstaired
|
||||
|
||||
get_pvr_channels:
|
||||
alias: TV Channels
|
||||
sequence:
|
||||
- service: media_player.kodi_call_method
|
||||
data:
|
||||
entity_id: media_player.kodi
|
||||
method: PVR.GetChannels
|
||||
channelgroupid: 1
|
||||
|
||||
group:
|
||||
Media Select:
|
||||
control: hidden
|
||||
entities:
|
||||
- input_select.kodi_results
|
||||
- script.get_recent_movies
|
||||
- script.get_recent_episodes
|
||||
- script.get_pvr_channels
|
||||
```
|
||||
|
||||
The AppDaemon app:
|
||||
|
||||
```python
|
||||
import appdaemon.appapi as appapi
|
||||
from homeassistant.components.media_player.kodi import (
|
||||
EVENT_KODI_CALL_METHOD_RESULT)
|
||||
|
||||
ENTITY = 'input_select.kodi_results'
|
||||
MEDIA_PLAYER = 'media_player.kodi'
|
||||
DEFAULT_ACTION = "Nothing to do"
|
||||
MAX_RESULTS = 20
|
||||
|
||||
class DynamicKodiInputSelect(appapi.AppDaemon):
|
||||
"""AppDaemon app to dynamically populate an `input_select`."""
|
||||
_ids_options = None
|
||||
|
||||
def initialize(self):
|
||||
"""Set up appdaemon app."""
|
||||
self.listen_event(self._receive_kodi_result,
|
||||
EVENT_KODI_CALL_METHOD_RESULT)
|
||||
self.listen_state(self._change_selected_option, ENTITY)
|
||||
# Input select:
|
||||
self._ids_options = {DEFAULT_ACTION: None}
|
||||
|
||||
def _receive_kodi_result(self, event_id, payload_event, *args):
|
||||
result = payload_event['result']
|
||||
method = payload_event['input']['method']
|
||||
|
||||
assert event_id == EVENT_KODI_CALL_METHOD_RESULT
|
||||
if method == 'VideoLibrary.GetRecentlyAddedMovies':
|
||||
values = result['movies'][:MAX_RESULTS]
|
||||
data = [('{} ({})'.format(r['label'], r['year']),
|
||||
('MOVIE', r['file'])) for r in values]
|
||||
self._ids_options.update(dict(zip(*zip(*data))))
|
||||
labels = list(list(zip(*data))[0])
|
||||
self.call_service('input_select/set_options',
|
||||
entity_id=ENTITY,
|
||||
options=[DEFAULT_ACTION] + labels)
|
||||
self.set_state(ENTITY,
|
||||
attributes={"friendly_name": 'Recent Movies',
|
||||
"icon": 'mdi:movie'})
|
||||
elif method == 'VideoLibrary.GetRecentlyAddedEpisodes':
|
||||
values = list(filter(lambda r: not r['lastplayed'],
|
||||
result['episodes']))[:MAX_RESULTS]
|
||||
data = [('{} - {}'.format(r['showtitle'], r['label']),
|
||||
('TVSHOW', r['file'])) for r in values]
|
||||
self._ids_options.update(dict(zip(*zip(*data))))
|
||||
labels = list(list(zip(*data))[0])
|
||||
self.call_service('input_select/set_options',
|
||||
entity_id=ENTITY,
|
||||
options=[DEFAULT_ACTION] + labels)
|
||||
self.set_state(ENTITY,
|
||||
attributes={"friendly_name": 'Recent TvShows',
|
||||
"icon": 'mdi:play-circle'})
|
||||
elif method == 'PVR.GetChannels':
|
||||
values = result['channels']
|
||||
data = [(r['label'], ('CHANNEL', r['channelid']))
|
||||
for r in values]
|
||||
self._ids_options.update(dict(zip(*zip(*data))))
|
||||
labels = list(list(zip(*data))[0])
|
||||
self.call_service('input_select/set_options',
|
||||
entity_id=ENTITY,
|
||||
options=[DEFAULT_ACTION] + labels)
|
||||
self.set_state(ENTITY,
|
||||
attributes={"friendly_name": 'TV channels',
|
||||
"icon": 'mdi:play-box-outline'})
|
||||
|
||||
def _change_selected_option(self, entity, attribute, old, new, kwargs):
|
||||
selected = self._ids_options[new]
|
||||
if selected:
|
||||
mediatype, file = selected
|
||||
self.call_service('media_player/play_media',
|
||||
entity_id=MEDIA_PLAYER,
|
||||
media_content_type=mediatype,
|
||||
media_content_id=file)
|
||||
```
|
@ -74,7 +74,7 @@ automation:
|
||||
above: 17
|
||||
below: 25
|
||||
|
||||
# If given, will trigger when condition has been for X time.
|
||||
# If given, will trigger when condition has been for X time, can also use days and milliseconds.
|
||||
for:
|
||||
hours: 1
|
||||
minutes: 10
|
||||
@ -87,6 +87,25 @@ Listing above and below together means the numeric_state has to be between the t
|
||||
In the example above, a numeric_state that goes to 17.1-24.9 (from 17 or below, or 25 or above) would fire this trigger.
|
||||
</p>
|
||||
|
||||
The `for:` can also be specified as `HH:MM:SS` like this:
|
||||
|
||||
{% raw %}
|
||||
```yaml
|
||||
automation:
|
||||
trigger:
|
||||
platform: numeric_state
|
||||
entity_id: sensor.temperature
|
||||
# Optional
|
||||
value_template: '{{ state.attributes.battery }}'
|
||||
# At least one of the following required
|
||||
above: 17
|
||||
below: 25
|
||||
|
||||
# If given, will trigger when condition has been for X time.
|
||||
for: '01:10:05'
|
||||
```
|
||||
{% endraw %}
|
||||
|
||||
### {% linkable_title State trigger %}
|
||||
|
||||
Triggers when the state of a given entity changes. If only `entity_id` is given trigger will activate for all state changes, even if only state attributes change.
|
||||
@ -102,10 +121,7 @@ automation:
|
||||
to: 'home'
|
||||
|
||||
# If given, will trigger when state has been the to state for X time.
|
||||
for:
|
||||
hours: 1
|
||||
minutes: 10
|
||||
seconds: 5
|
||||
for: '01:10:05'
|
||||
```
|
||||
|
||||
<p class='note warning'>
|
||||
|
@ -10,12 +10,12 @@ footer: true
|
||||
redirect_from: /topics/templating/
|
||||
---
|
||||
|
||||
This is an advanced feature of Home Assistant. You'll need a basic understanding of the following things:
|
||||
This is an advanced feature of Home Assistant. You'll need a basic understanding of:
|
||||
|
||||
- [Home Assistant architecture](/developers/architecture/), especially states.
|
||||
- [State object](/topics/state_object/)
|
||||
- The [State object](/topics/state_object/).
|
||||
|
||||
Templating is a powerful feature in Home Assistant that allows the user control over information that is going into and out of the system. It is used for:
|
||||
Templating is a powerful feature that allows you to control information going into and out of the system. It is used for:
|
||||
|
||||
- Formatting outgoing messages in, for example, the [notify](/components/notify/) platforms and [alexa](/components/alexa/) component.
|
||||
- Process incoming data from sources that provide raw data, like [MQTT](/components/mqtt/), [`rest` sensor](/components/sensor.rest/) or the [`command_line` sensor](/components/sensor.command_line/).
|
||||
@ -23,11 +23,16 @@ Templating is a powerful feature in Home Assistant that allows the user control
|
||||
|
||||
## {% linkable_title Building templates %}
|
||||
|
||||
Templating in Home Assistant is powered by the [Jinja2](http://jinja.pocoo.org/) templating engine. This means that we are using their syntax and make some custom Home Assistant variables available to templates during rendering. We will not go over the basics of the syntax, as Jinja2 does a lot better job at this in their [Jinja2 documentation](http://jinja.pocoo.org/docs/dev/templates/).
|
||||
Templating in Home Assistant is powered by the [Jinja2](http://jinja.pocoo.org/) templating engine. This means that we are using their syntax and make some custom Home Assistant variables available to templates during rendering. Jinja2 supports a wide variety of operations:
|
||||
|
||||
- [Mathematical operation](http://jinja.pocoo.org/docs/dev/templates/#math)
|
||||
- [Comparisons](http://jinja.pocoo.org/docs/dev/templates/#comparisons)
|
||||
- [Logic](http://jinja.pocoo.org/docs/dev/templates/#logic)
|
||||
|
||||
We will not go over the basics of the syntax, as Jinja2 does a great job of this in their [templates documentation](http://jinja.pocoo.org/docs/dev/templates/).
|
||||
|
||||
The frontend has a template editor tool to help develop and debug templates. Click on the <img src='/images/screenshots/developer-tool-templates-icon.png' alt='template developer tool icon' class="no-shadow" height="38" /> icon, create your template in the _Template editor_ and check the results on the right.
|
||||
|
||||
<p class='note'>
|
||||
The frontend has a template editor developer tool to help develop and debug templates.
|
||||
</p>
|
||||
|
||||
Templates can get big pretty fast. To keep a clear overview, consider using YAML multiline strings to define your templates:
|
||||
|
||||
@ -47,17 +52,11 @@ script:
|
||||
```
|
||||
{% endraw %}
|
||||
|
||||
[Jinja2](http://jinja.pocoo.org/) supports a wide variety of operations:
|
||||
|
||||
- [Mathematical operation](http://jinja.pocoo.org/docs/dev/templates/#math)
|
||||
- [Comparisons](http://jinja.pocoo.org/docs/dev/templates/#comparisons)
|
||||
- [Logic](http://jinja.pocoo.org/docs/dev/templates/#logic)
|
||||
|
||||
|
||||
## {% linkable_title Home Assistant template extensions %}
|
||||
|
||||
Home Assistant adds extensions to allow templates to access all of the current states:
|
||||
Extensions allow templates to access all of the Home Assistant specific states and adds other convenience functions and filters.
|
||||
|
||||
### {% linkable_title States %}
|
||||
- Iterating `states` will yield each state sorted alphabetically by entity ID.
|
||||
- Iterating `states.domain` will yield each state of that domain sorted alphabetically by entity ID.
|
||||
- `states.sensor.temperature` returns the state object for `sensor.temperature`.
|
||||
@ -65,76 +64,12 @@ Home Assistant adds extensions to allow templates to access all of the current s
|
||||
- `is_state('device_tracker.paulus', 'home')` will test if the given entity is the specified state.
|
||||
- `state_attr('device_tracker.paulus', 'battery')` will return the value of the attribute or None if it doesn't exist.
|
||||
- `is_state_attr('device_tracker.paulus', 'battery', 40)` will test if the given entity attribute is the specified state (in this case, a numeric value).
|
||||
- `now()` will be rendered as current time in your time zone.
|
||||
- For specific values: `now().second`, `now().minute`, `now().hour`, `now().day`, `now().month`, `now().year`, `now().weekday()` and `now().isoweekday()`
|
||||
- `utcnow()` will be rendered as UTC time.
|
||||
- For specific values: `utcnow().second`, `utcnow().minute`, `utcnow().hour`, `utcnow().day`, `utcnow().month`, `utcnow().year`, `utcnow().weekday()` and `utcnow().isoweekday()`.
|
||||
- `as_timestamp()` will convert datetime object or string to UNIX timestamp
|
||||
- `distance()` will measure the distance in kilometers between home, entity, coordinates.
|
||||
- `closest()` will find the closest entity.
|
||||
- `float` will format the output as float.
|
||||
- `strptime(string, format)` will parse a string to a datetime based on a [format][strp-format].
|
||||
- `log(value, base)` will take the logarithm of the input. When the base is omitted, it defaults to `e` - the natural logarithm. Can also be used as a filter.
|
||||
- `sin(value)` will return the sine of the input. Can be used as a filter.
|
||||
- `cos(value)` will return the cosine of the input. Can be used as a filter.
|
||||
- `tan(value)` will return the tangent of the input. Can be used as a filter.
|
||||
- `sqrt(value)` will return the square root of the input. Can be used as a filter.
|
||||
- `e` mathematical constant, approximately 2.71828.
|
||||
- `pi` mathematical constant, approximately 3.14159.
|
||||
- `tau` mathematical constant, approximately 6.28318.
|
||||
- Filter `round(x)` will convert the input to a number and round it to `x` decimals.
|
||||
- Filter `timestamp_local` will convert an UNIX timestamp to local time/data.
|
||||
- Filter `timestamp_utc` will convert an UNIX timestamp to UTC time/data.
|
||||
- Filter `timestamp_custom(format_string, local_boolean)` will convert an UNIX timestamp to a custom format, the use of a local timestamp is default, supporting [Python format options](https://docs.python.org/3/library/time.html#time.strftime).
|
||||
- Filter `max` will obtain the largest item in a sequence.
|
||||
- Filter `min` will obtain the smallest item in a sequence.
|
||||
- Filter `regex_match(string, find, ignorecase=FALSE)` will match the find expression at the beginning of the string using regex.
|
||||
- Filter `regex_search(string, find, ignorecase=FALSE)` will match the find expression anywhere in the string using regex.
|
||||
- Filter `regex_replace(string, find='', replace='', ignorecase=False)` will replace the find expression with the replace string using regex.
|
||||
- Filter `regex_findall_index(string, find='', index=0, ignorecase=False)` will find all regex matches of find in string and return the match at index (findall returns an array of matches).
|
||||
- Filter `bitwise_and(value_one, value_two)` perform a bitwise and(&) operation with two values.
|
||||
- Filter `bitwise_or(value_one, value_two)` perform a bitwise or(\|) operation with two values.
|
||||
- Filter `base64_encode` convert given value to a Base64 encoded string.
|
||||
- Filter `base64_decode` convert given Base64 value to a regulary string.
|
||||
- Filter `ordinal` convert a number into a speakable ordinal text.
|
||||
|
||||
[strp-format]: https://docs.python.org/3.6/library/datetime.html#strftime-and-strptime-behavior
|
||||
Besides the normal [state object methods and properties](/topics/state_object/), `states.sensor.temperature.state_with_unit` will print the state of the entity and, if available, the unit.
|
||||
|
||||
<p class='note'>
|
||||
If your template uses an `entity_id` that begins with a number (example: `states.device_tracker.2008_gmc`) you must use a bracket syntax to avoid errors caused by rendering the `entity_id` improperly. In the example given, the correct syntax for the device tracker would be: `states.device_tracker['2008_gmc']`
|
||||
</p>
|
||||
|
||||
## {% linkable_title Templates using `now()` %}
|
||||
|
||||
<p class='note warning'>
|
||||
Rendering templates with time (`now()`) is dangerous as updates only trigger templates in sensors based on entity state changes.
|
||||
</p>
|
||||
|
||||
## {% linkable_title Priority of operators %}
|
||||
|
||||
The default priority of operators is that the filter (`|`) has priority over everything except brackets. This means that:
|
||||
|
||||
{% raw %}
|
||||
```yaml
|
||||
{{ states('sensor.temperature') | float / 10 | round(2) }}
|
||||
```
|
||||
{% endraw %}
|
||||
|
||||
Would round `10` to 2 decimal places, then divide `states('sensor.temperature')` by that.
|
||||
|
||||
## {% linkable_title Home Assistant template extensions %}
|
||||
|
||||
In templates, besides the normal [state object methods and properties](/topics/state_object/), there are also some extra things available:
|
||||
|
||||
- `states.sensor.temperature.state_with_unit` will print the state of the entity and, if available, the unit.
|
||||
|
||||
## {% linkable_title Examples %}
|
||||
|
||||
To test a template, go to the <img src='/images/screenshots/developer-tool-templates-icon.png' alt='template developer tool icon' class="no-shadow" height="38" /> template developer tools, create your template in the _Template editor_ and check the results on the right.
|
||||
|
||||
### {% linkable_title States %}
|
||||
|
||||
The next two statements result in same value if state exists. The second one will result in an error if state does not exist.
|
||||
#### {% linkable_title States examples %}
|
||||
The next two statements result in the same value if the state exists. The second one will result in an error if the state does not exist.
|
||||
|
||||
{% raw %}
|
||||
```text
|
||||
@ -143,44 +78,20 @@ The next two statements result in same value if state exists. The second one wil
|
||||
```
|
||||
{% endraw %}
|
||||
|
||||
### {% linkable_title Attributes %}
|
||||
|
||||
Print an attribute if state is defined. Both will return the same thing but the last one you can specify entity_id from a variable.
|
||||
|
||||
{% raw %}
|
||||
```text
|
||||
{% if states.device_tracker.paulus %}
|
||||
{{ state_attr('device_tracker.paulus', 'battery') }}
|
||||
{% else %}
|
||||
??
|
||||
{% endif %}
|
||||
```
|
||||
{% endraw %}
|
||||
|
||||
With strings
|
||||
|
||||
{% raw %}
|
||||
```text
|
||||
{% set tracker_name = "paulus"%}
|
||||
|
||||
{% if states("device_tracker." + tracker_name) != "unknown" %}
|
||||
{{ state_attr("device_tracker." + tracker_name, "battery")}}
|
||||
{% else %}
|
||||
??
|
||||
{% endif %}
|
||||
```
|
||||
{% endraw %}
|
||||
|
||||
### {% linkable_title Sensor states %}
|
||||
|
||||
Print out a list of all the sensor states.
|
||||
Print out a list of all the sensor states:
|
||||
|
||||
{% raw %}
|
||||
```text
|
||||
{% for state in states.sensor %}
|
||||
{{ state.entity_id }}={{ state.state }},
|
||||
{% endfor %}
|
||||
```
|
||||
{% endraw %}
|
||||
|
||||
Other state examples:
|
||||
{% raw %}
|
||||
|
||||
```text
|
||||
{% if is_state('device_tracker.paulus', 'home') %}
|
||||
Ha, Paulus is home!
|
||||
{% else %}
|
||||
@ -201,9 +112,55 @@ Print out a list of all the sensor states.
|
||||
```
|
||||
{% endraw %}
|
||||
|
||||
### {% linkable_title Distance examples %}
|
||||
|
||||
If only 1 location is passed in, Home Assistant will measure the distance from home.
|
||||
### {% linkable_title Attributes %}
|
||||
|
||||
You can print an attribute with `state_attr` if state is defined.
|
||||
|
||||
#### {% linkable_title Attributes examples %}
|
||||
|
||||
{% raw %}
|
||||
```text
|
||||
{% if states.device_tracker.paulus %}
|
||||
{{ state_attr('device_tracker.paulus', 'battery') }}
|
||||
{% else %}
|
||||
??
|
||||
{% endif %}
|
||||
```
|
||||
{% endraw %}
|
||||
|
||||
With strings:
|
||||
|
||||
{% raw %}
|
||||
```text
|
||||
{% set tracker_name = "paulus"%}
|
||||
|
||||
{% if states("device_tracker." + tracker_name) != "unknown" %}
|
||||
{{ state_attr("device_tracker." + tracker_name, "battery")}}
|
||||
{% else %}
|
||||
??
|
||||
{% endif %}
|
||||
```
|
||||
{% endraw %}
|
||||
|
||||
|
||||
### {% linkable_title Time %}
|
||||
- `now()` will be rendered as the current time in your time zone.
|
||||
- For specific values: `now().second`, `now().minute`, `now().hour`, `now().day`, `now().month`, `now().year`, `now().weekday()` and `now().isoweekday()`
|
||||
- `utcnow()` will be rendered as UTC time.
|
||||
- For specific values: `utcnow().second`, `utcnow().minute`, `utcnow().hour`, `utcnow().day`, `utcnow().month`, `utcnow().year`, `utcnow().weekday()` and `utcnow().isoweekday()`.
|
||||
- `as_timestamp()` will convert datetime object or string to UNIX timestamp.
|
||||
- `strptime(string, format)` will parse a string to a datetime based on a [format](https://docs.python.org/3.6/library/datetime.html#strftime-and-strptime-behavior).
|
||||
- Filter `timestamp_local` will convert an UNIX timestamp to local time/data.
|
||||
- Filter `timestamp_utc` will convert a UNIX timestamp to UTC time/data.
|
||||
- Filter `timestamp_custom(format_string, local_boolean)` will convert a UNIX timestamp to a custom format, the use of a local timestamp is default. Supports the standard [Python time formatting options](https://docs.python.org/3/library/time.html#time.strftime).
|
||||
|
||||
### {% linkable_title Distance %}
|
||||
- `distance()` will measure the distance in kilometers between home, entity, coordinates.
|
||||
- `closest()` will find the closest entity.
|
||||
|
||||
#### {% linkable_title Distance examples %}
|
||||
If only one location is passed in, Home Assistant will measure the distance from home.
|
||||
|
||||
{% raw %}
|
||||
```text
|
||||
@ -217,8 +174,6 @@ These can also be combined in any combination:
|
||||
```
|
||||
{% endraw %}
|
||||
|
||||
### {% linkable_title Closest examples %}
|
||||
|
||||
Find entities closest to the Home Assistant location:
|
||||
|
||||
{% raw %}
|
||||
@ -230,7 +185,7 @@ Query all entities in group.children: {{ closest(states.group.children) }}
|
||||
```
|
||||
{% endraw %}
|
||||
|
||||
Find entities closest to a coordinate or another entity. All previous arguments still apply for 2nd argument.
|
||||
Find entities closest to a coordinate or another entity. All previous arguments still apply for second argument.
|
||||
|
||||
{% raw %}
|
||||
```text
|
||||
@ -240,8 +195,6 @@ Closest to an entity: {{ closest(states.zone.school, 'group.children') }}
|
||||
```
|
||||
{% endraw %}
|
||||
|
||||
### {% linkable_title Combined %}
|
||||
|
||||
Since closest returns a state, we can combine it with distance too.
|
||||
|
||||
{% raw %}
|
||||
@ -250,9 +203,36 @@ Since closest returns a state, we can combine it with distance too.
|
||||
```
|
||||
{% endraw %}
|
||||
|
||||
|
||||
### {% linkable_title Formatting %}
|
||||
- `float` will format the output as float.
|
||||
|
||||
### {% linkable_title Numeric functions and filters %}
|
||||
Some of these functions can also be used in a [filter](http://jinja.pocoo.org/docs/dev/templates/#id11). This means they can act as a normal function like this `sqrt(2)`, or as part of a filter like this `2|sqrt`.
|
||||
|
||||
- `log(value, base)` will take the logarithm of the input. When the base is omitted, it defaults to `e` - the natural logarithm. Can also be used as a filter.
|
||||
- `sin(value)` will return the sine of the input. Can be used as a filter.
|
||||
- `cos(value)` will return the cosine of the input. Can be used as a filter.
|
||||
- `tan(value)` will return the tangent of the input. Can be used as a filter.
|
||||
- `sqrt(value)` will return the square root of the input. Can be used as a filter.
|
||||
- `e` mathematical constant, approximately 2.71828.
|
||||
- `pi` mathematical constant, approximately 3.14159.
|
||||
- `tau` mathematical constant, approximately 6.28318.
|
||||
- Filter `round(x)` will convert the input to a number and round it to `x` decimals.
|
||||
- Filter `max` will obtain the largest item in a sequence.
|
||||
- Filter `min` will obtain the smallest item in a sequence.
|
||||
- Filter `value_one|bitwise_and(value_two)` perform a bitwise and(&) operation with two values.
|
||||
- Filter `value_one|bitwise_or(value_two)` perform a bitwise or(\|) operation with two values.
|
||||
|
||||
### {% linkable_title Regular expressions %}
|
||||
- Filter `string|regex_match(find, ignorecase=FALSE)` will match the find expression at the beginning of the string using regex.
|
||||
- Filter `string|regex_search(find, ignorecase=FALSE)` will match the find expression anywhere in the string using regex.
|
||||
- Filter `string|regex_replace(find='', replace='', ignorecase=False)` will replace the find expression with the replace string using regex.
|
||||
- Filter `string|regex_findall_index(find='', index=0, ignorecase=False)` will find all regex matches of find in string and return the match at index (findall returns an array of matches).
|
||||
|
||||
## {% linkable_title Processing incoming data %}
|
||||
|
||||
The other part of templating is processing incoming data. It will allow you to modify incoming data and extract only the data you care about. This will work only for platforms and components that mentioned support for this in their documentation.
|
||||
The other part of templating is processing incoming data. It allows you to modify incoming data and extract only the data you care about. This will only work for platforms and components that mention support for this in their documentation.
|
||||
|
||||
It depends per component or platform, but it is common to be able to define a template using the `value_template` configuration key. When a new value arrives, your template will be rendered while having access to the following values on top of the usual Home Assistant extensions:
|
||||
|
||||
@ -329,7 +309,7 @@ The following overview contains a couple of options to get the needed values:
|
||||
{% raw %}{{ value_json.tst | timestamp_custom('%Y' True) }}{% endraw %}
|
||||
```
|
||||
|
||||
To evaluate a response, go to the <img src='/images/screenshots/developer-tool-templates-icon.png' alt='template developer tool icon' class="no-shadow" height="38" /> template developer tools, create your output into "Template", and check the result.
|
||||
To evaluate a response, go to the <img src='/images/screenshots/developer-tool-templates-icon.png' alt='template developer tool icon' class="no-shadow" height="38" /> template developer tools, create your output in "Template", and check the result.
|
||||
|
||||
{% raw %}
|
||||
```yaml
|
||||
@ -344,3 +324,28 @@ To evaluate a response, go to the <img src='/images/screenshots/developer-tool-t
|
||||
{{value_json.data.hum[:-1]}}
|
||||
```
|
||||
{% endraw %}
|
||||
|
||||
## {% linkable_title Some more things to keep in mind %}
|
||||
|
||||
### {% linkable_title `entity_id` that begins with a number %}
|
||||
If your template uses an `entity_id` that begins with a number (example: `states.device_tracker.2008_gmc`) you must use a bracket syntax to avoid errors caused by rendering the `entity_id` improperly. In the example given, the correct syntax for the device tracker would be: `states.device_tracker['2008_gmc']`
|
||||
|
||||
|
||||
|
||||
### {% linkable_title Templates using `now()` %}
|
||||
|
||||
Rendering templates with time (`now()`) is dangerous as updates only trigger templates in sensors based on entity state changes.
|
||||
|
||||
|
||||
### {% linkable_title Priority of operators %}
|
||||
|
||||
The default priority of operators is that the filter (`|`) has priority over everything except brackets. This means that:
|
||||
|
||||
{% raw %}
|
||||
```yaml
|
||||
{{ states('sensor.temperature') | float / 10 | round(2) }}
|
||||
```
|
||||
{% endraw %}
|
||||
|
||||
Would round `10` to 2 decimal places, then divide `states('sensor.temperature')` by that.
|
||||
|
||||
|
@ -11,55 +11,41 @@ redirect_from: /getting-started/installation/
|
||||
---
|
||||
|
||||
<p class='note'>
|
||||
Beginners should check our [Getting started guide](/getting-started/) first. This is for users that require advanced installations.
|
||||
Beginners should check our [Getting started guide](/getting-started/) first.
|
||||
</p>
|
||||
|
||||
Home Assistant provides multiple ways to be installed. A requirement is that you have [Python 3.5.3 or later](https://www.python.org/downloads/) installed.
|
||||
Home Assistant provides multiple ways to be installed. The first start may take up to 20 minutes because the required packages will be downloaded and installed. The web interface will be served on `http://ip.add.re.ss:8123/` - replace `ip.add.re.ss` with the IP of the computer you installed it on.
|
||||
|
||||
<p class='note warning'>
|
||||
Please remember to [secure your installation](/docs/configuration/securing/) once you've finished with the installation process.
|
||||
</p>
|
||||
|
||||
## {% linkable_title Recommended options %}
|
||||
## {% linkable_title Recommended %}
|
||||
|
||||
<div class="text-center hass-option-cards" markdown="0">
|
||||
<a class='option-card' href='/getting-started/'>
|
||||
<div class='img-container'>
|
||||
<img src='/images/supported_brands/home-assistant.png' />
|
||||
</div>
|
||||
<div class='title'>Hass.io<br>(Beginner friendly)</div>
|
||||
</a>
|
||||
<a class='option-card' href='/docs/hassbian/installation/'>
|
||||
<div class='img-container'>
|
||||
<img src='/images/supported_brands/home-assistant.png' />
|
||||
</div>
|
||||
<div class='title'>Hassbian (for the Raspberry Pi)</div>
|
||||
</a>
|
||||
<a class='option-card' href='/docs/installation/docker/'>
|
||||
<div class='img-container'>
|
||||
<img src='/images/supported_brands/docker.png' />
|
||||
</div>
|
||||
<div class='title'>Docker</div>
|
||||
</a>
|
||||
</div>
|
||||
These install options are fully supported by Home Assistant's documentation. For example, if a component requires that you install something to make it work on one of these methods then the component page will document the steps required.
|
||||
|
||||
**Method**|**You have**|**Recommended for**
|
||||
:-----|:-----|:-----
|
||||
[Hass.io](https://www.home-assistant.io/hassio/installation/)|Raspberry Pi<br>VM|Anybody
|
||||
[Docker](https://www.home-assistant.io/docs/installation/docker/)|Docker|Anybody already running Docker
|
||||
[Hassbian](https://www.home-assistant.io/docs/hassbian/installation/)|Raspberry Pi|Those who want a more traditional Linux experience and either have experience with Linux, or intend to learn
|
||||
|
||||
## {% linkable_title Alternative installs %}
|
||||
|
||||
The following installs are only recommended for experienced users of those platforms.
|
||||
If you use these install methods, we assume that you know how to manage and administer the operating system you're using. Due to the range of platforms on which these install methods can be used, component documentation may only tell you what you have to install, not how to install it.
|
||||
|
||||
**Method**|**You have**|**Recommended for**
|
||||
:-----|:-----|:-----
|
||||
[Virtualenv<BR>(as another user)](https://www.home-assistant.io/docs/installation/raspberry-pi/)|Any Linux, Python 3.5.3 or later|Those familiar with their operating system
|
||||
[Virtualenv<BR>(as your user)](https://www.home-assistant.io/docs/installation/virtualenv/)|Any Python 3.5.3 or later|Developers
|
||||
|
||||
<HR>
|
||||
|
||||
## {% linkable_title Community provided guides %}
|
||||
|
||||
These guides are provided as-is. Some of these install methods are more limited than the methods above - some components may not work due to limitations of the platform or because required Python packages aren't available for that platform.
|
||||
|
||||
<div class="text-center hass-option-cards" markdown="0">
|
||||
<a class='option-card' href='/docs/installation/raspberry-pi/'>
|
||||
<div class='img-container'>
|
||||
<img src='/images/supported_brands/raspberry-pi.png' />
|
||||
</div>
|
||||
<div class='title'>Raspbian (but applies to any Debian based Linux)</div>
|
||||
</a>
|
||||
<a class='option-card' href='/docs/installation/virtualenv/'>
|
||||
<div class='img-container'>
|
||||
<img src='/images/supported_brands/python.svg' />
|
||||
</div>
|
||||
<div class='title'>On top of an existing Python 3.5.3+ installation</div>
|
||||
</a>
|
||||
<a class='option-card' href='/docs/installation/armbian/'>
|
||||
<div class='img-container'>
|
||||
<img src='/images/supported_brands/armbian.png' />
|
||||
@ -115,19 +101,3 @@ The following installs are only recommended for experienced users of those platf
|
||||
<div class='title'>FreeNAS</div>
|
||||
</a>
|
||||
</div>
|
||||
|
||||
## {% linkable_title After installation %}
|
||||
|
||||
Once Home Assistant is installed, execute the following code in a console/terminal to check if the setup was successful:
|
||||
|
||||
```bash
|
||||
$ hass
|
||||
```
|
||||
|
||||
The first start may take up to 20 minutes because the needed packages will be downloaded and installed. The web interface will be served on [http://localhost:8123](http://localhost:8123).
|
||||
|
||||
For more details about `hass`, please refer to the [tools section](/docs/tools/hass/).
|
||||
|
||||
If you're running a Linux-based platform, we suggest you follow the [VirtualEnv instructions](/docs/installation/virtualenv/) to avoid using `root`.
|
||||
|
||||
You may need to install additional libraries depending on the platforms/components you want to use.
|
||||
|
@ -13,7 +13,7 @@ redirect_from: /docs/hassbian/installation/
|
||||
One of the easiest ways to install Home Assistant on your Raspberry Pi Zero, 2, 3 and 3B+ is by using Hassbian: a Raspberry Pi image with Home Assistant built-in. The image will install the latest version of Home Assistant on initial boot (~10 minutes).
|
||||
|
||||
1. [Download the Hassbian image][image-download]
|
||||
2. Use [Etcher][etcher] to flash the image to your SD card. We recommend at least a 32 GB SD card to avoid running out of space.
|
||||
2. Use [balenaEtcher][balenaEtcher] to flash the image to your SD card. We recommend at least a 32 GB SD card to avoid running out of space.
|
||||
3. Ensure your Raspberry Pi has wired access to the internet for the entire process or configure your [wireless network settings](#wireless-network) **before proceeding to step 4**.
|
||||
4. Insert SD card to Raspberry Pi and turn it on. Initial installation of Home Assistant will take about 10 minutes.
|
||||
|
||||
@ -73,7 +73,7 @@ To unblock it, execute `$ sudo rfkill unblock wifi`.
|
||||
- The configuration is located at `/home/homeassistant/.homeassistant`
|
||||
|
||||
[image-download]: https://github.com/home-assistant/pi-gen/releases/latest
|
||||
[etcher]: https://etcher.io/
|
||||
[balenaEtcher]: https://www.balena.io/etcher
|
||||
[http://hassbian.local:8123]: http://hassbian.local:8123
|
||||
[wifi-setup]: https://www.raspberrypi.org/documentation/configuration/wireless/wireless-cli.md
|
||||
|
||||
|
@ -61,7 +61,9 @@ As long as your device lists Hail or Association in its Controlled Command Class
|
||||
|
||||
Where a device doesn't send updates on status changes to the controller, you can work around this by using a thing called Polling. That causes the controller to ask the device to provide an update on all its sensors and states. This will cause a lot of traffic on the network, and if you poll too many devices too quickly, you can effectively break your Z-Wave network. Polling should only be used where there is no other choice, and you should use as large a polling interval as possible. Ideally you should replace the device.
|
||||
|
||||
For example, with `polling_interval=60000` (which is the default) if you have 10 devices that are being polled, if a device can receive and acknowledge the poll within one second, then it will take 10 seconds to complete the polling list, which leaves 50 seconds left for normal traffic. The more devices you poll, and the shorter the interval, the less bandwidth that's available for normal traffic.
|
||||
For example, with `polling_interval=60000` (which is the default) if you have 10 devices that are being polled at every interval, and each polling takes one secound (request/response round trip), then it will take 10 seconds to complete the polling list. This only leaves 50 seconds left for normal traffic. The more devices you poll, and the shorter the interval, the less bandwidth that's available for normal traffic.
|
||||
|
||||
Polling needs to be enabled per device, you can control this through the *polling intensity* (interval) of the device. See the [Node Management](/docs/z-wave/control-panel#z-wave-node-management) docs for details.
|
||||
|
||||
## {% linkable_title Central Scene support %}
|
||||
|
||||
|
@ -18,10 +18,11 @@ Installing the drivers might require some extra packages to be installed. Check
|
||||
|
||||
### {% linkable_title Linux (except Hass.io) %}
|
||||
|
||||
On Linux platforms (other than Hass.io) there is one dependency you will need to have installed ahead of time (included in `systemd-devel` on Fedora/RHEL systems):
|
||||
On Linux platforms (other than Hass.io) there two dependencies you will need to have installed ahead of time (included in `systemd-devel` on Fedora/RHEL systems):
|
||||
|
||||
```bash
|
||||
$ sudo apt-get install libudev-dev
|
||||
$ sudo apt-get install libopenzwave1.5-dev
|
||||
```
|
||||
|
||||
On Python 3.6 you may also have to install `libpython3.6-dev`, and possibly `python3.6-dev`.
|
||||
|
@ -33,7 +33,7 @@ First, download the HASSbian 1.21 image from [here](https://github.com/home-assi
|
||||
|
||||
Unzip it.
|
||||
|
||||
Flash it to the microSD card. If you need a flash tool, try [Etcher](https://etcher.io/)
|
||||
Flash it to the microSD card. If you need a flash tool, try [balenaEtcher](https://www.balena.io/etcher)
|
||||
|
||||
When the flashing finishes, remove it and plug it back in. You should see a drive called "boot".
|
||||
|
||||
|
@ -19,7 +19,7 @@ This blog post is about the setup of Home Assistant on an [Orange Pi Zero](http:
|
||||
|
||||
<!--more-->
|
||||
|
||||
Download the [Armbian](https://www.armbian.com/orange-pi-zero/) and create the SD card with [Etcher](https://etcher.io/). There is no possibility to connect a display to the Orange Pi Zero. This means that you need a wired network setup with DHCP server. After your Orange Pi Zero is running, give it some time, and look for its IP address. The hostname is `orangepizero`.
|
||||
Download the [Armbian](https://www.armbian.com/orange-pi-zero/) and create the SD card with [balenaEtcher](https://www.balena.io/etcher). There is no possibility to connect a display to the Orange Pi Zero. This means that you need a wired network setup with DHCP server. After your Orange Pi Zero is running, give it some time, and look for its IP address. The hostname is `orangepizero`.
|
||||
|
||||
If you found the IP address then use your SSH client to connect to the Orange Pi Zero. The default password is `1234`.
|
||||
|
||||
|
@ -38,7 +38,7 @@ You need to perform the following steps to upgrade:
|
||||
1. If you have installed the Bluetooth add-on, please remove it, since it is no longer required.
|
||||
2. Make a Hass.io snapshot of your current system and download it to your computer.
|
||||
3. Download the latest [Hass.io stable][installation] version.
|
||||
4. Flash the downloaded Hass.io image with [Etcher] to your SD card.
|
||||
4. Flash the downloaded Hass.io image with [balenaEtcher] to your SD card.
|
||||
5. Raspberry Pi: In case you have modified the `config.txt` (in the boot partition), you will also need to apply these changes to HassOS. Do **NOT** simply copy the file from your old setup into HassOS! Apply those changes manually!
|
||||
6. If you use a custom network configuration or have configured SSH development access, you need to create a configuration [USB stick]. Copy the resin-sample into the `network` folder on a USB stick and insert it into your device.
|
||||
7. Take the freshly flashed SD card with HassOS and place it into your device, and boot it by turning it on.
|
||||
@ -61,4 +61,4 @@ Feel free to jump into the project and help us to improve the documentation or o
|
||||
[AppArmor]: https://gitlab.com/apparmor/apparmor/wikis/home/
|
||||
[USB stick]: https://github.com/home-assistant/hassos/blob/rel-1/Documentation/configuration.md#automatic
|
||||
[installation]: /hassio/installation/
|
||||
[Etcher]: https://etcher.io/
|
||||
[balenaEtcher]: https://www.balena.io/etcher
|
||||
|
183
source/_posts/2019-02-04-introducing-home-assistant-cli.markdown
Normal file
183
source/_posts/2019-02-04-introducing-home-assistant-cli.markdown
Normal file
@ -0,0 +1,183 @@
|
||||
---
|
||||
layout: post
|
||||
title: "Introducing Home Assistant CLI aka. hass-cli"
|
||||
description: "Interact with Home Assistant on a new level"
|
||||
date: 2019-02-04 00:01:00
|
||||
date_formatted: "February 4, 2018"
|
||||
author: Max Rydahl Andersen
|
||||
author_twitter: maxandersen
|
||||
comments: true
|
||||
categories: Announcements
|
||||
---
|
||||
|
||||
When I started using Home Assistant (HA) I was missing a way to interact with HA via a command
|
||||
line (CLI). A CLI allows you to utilize the power of auto-completion, scripting and direct access.
|
||||
|
||||
Thus I started working on [Home Assistant CLI][github-hass-cli], a project that
|
||||
was initially started by [Fabian Affolter][@fabaff].
|
||||
|
||||
The great thing about `hass-cli` is that it uses the exact same API's as the other UI's and integration uses thus it makes a great complement to the Home Assistant family of tools.
|
||||
|
||||
Last week we released version 0.4, which provides majority of the features I was
|
||||
looking for to do from a CLI.
|
||||
|
||||
## Feature highlights:
|
||||
|
||||
- Get configuration info (`hass-cli config`)
|
||||
- List, get, edit and delete state for entities (`hass-cli entity`')
|
||||
- Query history with relative time ('hass-cli entity history')
|
||||
- List and run services (`hass-cli services`)
|
||||
- Execute templates locally and remotely (`hass-cli template`)
|
||||
- Control over columns, sorting, etc. (`hass-cli --columns attr1,attr2 --sort-by attr3`)
|
||||
- Shell completion for most commands and arguments (`hass-cli completion zsh`)
|
||||
- Get logs (`hass-cli system log`)
|
||||
- Run discovery (`hass-cli discover`)
|
||||
- Show map for zone (`hass-cli map`)
|
||||
- Call raw api directly (`hass-cli raw`)
|
||||
- ... and more
|
||||
|
||||
## Usage
|
||||
|
||||
For the basic intro to `hass-cli` see the docs at https://github.com/home-assistant/home-assistant-cli.
|
||||
|
||||
## Installation
|
||||
|
||||
Install latest `homeassistant-cli` by pip:
|
||||
|
||||
$ pip3 install homeassistant-cli
|
||||
|
||||
or if upgrade use:
|
||||
|
||||
$ pip3 install --upgrade homeassistant-cli
|
||||
|
||||
or if you like an isolated install you can use [pipsi][pipsi]
|
||||
|
||||
$ pipsi install --python python3 homeassistant-cli
|
||||
|
||||
or if you are adventurous you can build it from [source][github-hass-cli] at.
|
||||
|
||||
## Changes since 0.1-0.3
|
||||
|
||||
The first thing is that the commands have been cleaned up to be more logcial/explicit.
|
||||
|
||||
$ hass-cli
|
||||
...
|
||||
...
|
||||
Commands:
|
||||
completion Output shell completion code for the specified shell (bash or...
|
||||
config Get configuration from a Home Assistant instance.
|
||||
discover Discovery for the local network.
|
||||
entity Get info and operate on entities from Home Assistant.
|
||||
event Interact with events.
|
||||
info Get basic info from Home Assistant.
|
||||
map Print the current location on a map.
|
||||
raw Call the raw API (advanced).
|
||||
service Call and work with services.
|
||||
system System details and operations for Home Assistant.
|
||||
template Render templates on server or locally.
|
||||
|
||||
Rather than using generic terms (eg. get, list), the commands are now explicit
|
||||
and have further sub-commands.
|
||||
|
||||
The biggest change is that most operations, by default now use
|
||||
"table" mode. i.e., instead of getting a yaml or json dump you get a more concise view:
|
||||
|
||||
$ hass-cli entity list winter
|
||||
ENTITY DESCRIPTION STATE
|
||||
timer.timer_winter_garden idle
|
||||
group.winter_garden_lights Winter Garden Lights off
|
||||
group.winter_garden_motionview winter garden off
|
||||
light.winter_garden_light_2 Winter Garden Light 2 off
|
||||
light.winter_garden_light_5 Winter Garden Light 5 off
|
||||
light.winter_garden_light_1 Winter Garden Light 1 off
|
||||
light.winter_garden_light_3 Winter Garden Light 3 off
|
||||
light.winter_garden_light_4 Winter Garden Light 4 off
|
||||
media_player.winter_garden Winter Garden paused
|
||||
sensor.lightlevel_winter_garden Winter Garden Motion 1.0
|
||||
sensor.temperature_winter_garden Winter Garden Temperature 5.0
|
||||
|
||||
On top of better tables you can also use `--sort-by` to sort by an attribute and you can use `--columns` to control which attributes to show.
|
||||
|
||||
You can combine it all and do history querying with things like:
|
||||
|
||||
$ hass-cli --sort-by last_changed entity history \
|
||||
--since 50m light.kitchen_light_1 binary_sensor.presence_kitchen
|
||||
ENTITY DESCRIPTION STATE
|
||||
binary_sensor.presence_kitchen Kitchen Motion off
|
||||
light.kitchen_light_1 Kitchen Light 1 on
|
||||
binary_sensor.presence_kitchen Kitchen Motion on
|
||||
binary_sensor.presence_kitchen Kitchen Motion off
|
||||
light.kitchen_light_1 Kitchen Light 1 off
|
||||
|
||||
If you still want to get all the glory details you can use `-o yaml` to get the full details.
|
||||
|
||||
## Frequently Asked Questions
|
||||
|
||||
A few frequent asked questions we've seen the last months are as follows:
|
||||
|
||||
### Why would anyone use this ?
|
||||
|
||||
This is not removing or trying to compete with existing ways to access Home
|
||||
Assistant - this is a complementary way to access Home Assistant. If you like to
|
||||
use CLI's and its power of auto-completion you'll find `hass-cli` to be awesome;
|
||||
if not and you prefer the browser UI you just continue using it. We still use it
|
||||
for normal interactions, but when we want to be fast or script things `hass-cli`
|
||||
is great.
|
||||
|
||||
### Why not just use the REST API's directly via curl or similar ?
|
||||
|
||||
You can most definitely use `curl` or similar to access REST API directly - its
|
||||
basically what `hass-cli` does behind the scenes. `hass-cli` give though a few
|
||||
advantages. Firstly that you do not need to remember the exact commands,
|
||||
`hass-cli` have contextual help and auto completion to make it super easy to
|
||||
type out. Finally over time as `hass-cli` will get support for utilizing the
|
||||
more extensive websocket API's `hass-cli` will be more consistent and simpler to
|
||||
use than using "raw" access via `curl`.
|
||||
|
||||
### Does this only work with HTTPS and hass.io ?
|
||||
|
||||
No, it works with *any* Home Assistant that has REST API exposed - something
|
||||
that is done by default. In short - if you can access Home Assistant with your
|
||||
browser and see the UI `hass-cli` can communicate and control it too.
|
||||
|
||||
Thus http, https, hass.io, non-hass.io, etc. are all supported by `hass-cli`
|
||||
|
||||
### Do I need to install Home Assistant to use this ?
|
||||
|
||||
No, `hass-cli` does not require Home Assistant installed on the computer you
|
||||
want to run it on. It should run on any install with Python 3.5 or higher on all
|
||||
major operating systems.
|
||||
|
||||
### Does this work with client-generated certificates ?
|
||||
|
||||
It should, but we have not yet been able to verify it. If you would like to help
|
||||
us try it run with `--cert <certificate.pem>` and let us know if it works on
|
||||
issue [#66][client-cert-git].
|
||||
|
||||
## Next steps
|
||||
|
||||
Personally the next feature I would like to add is more specific support for
|
||||
system control commands (like refreshing groups, restarting, etc.) but also for
|
||||
accessing hass.io add-ons. Also having an easy way to hook into the event bus
|
||||
(via websocket) to see what is happening live.
|
||||
|
||||
What would you like to see ?
|
||||
|
||||
## Feedback
|
||||
|
||||
If you have questions for feedback you can put a comment on this blog, use the
|
||||
[hass-cli forum thread][forum-thread-hasscli] or open issues or pull-requests at
|
||||
[github][github-hass-cli].
|
||||
|
||||
Have fun!
|
||||
|
||||
[Max Rydahl Andersen][@maxandersen]
|
||||
|
||||
|
||||
[pipsi]: https://github.com/mitsuhiko/pipsi
|
||||
[github-hass-cli]: https://github.com/home-assistant/home-assistant-cli
|
||||
[github-hass-issues]: https://github.com/home-assistant/home-assistant-cli/issues
|
||||
[@fabaff]: https://github.com/fabaff
|
||||
[forum-thread-hasscli]: https://community.home-assistant.io/t/resurrected-feature-home-assistant-cli/84107
|
||||
[client-cert-git]: https://github.com/home-assistant/home-assistant-cli/issues/66
|
||||
[@maxandersen]: https://xam.dk/about
|
@ -30,15 +30,15 @@ We will need a few things to get started with installing Home Assistant. For bes
|
||||
### {% linkable_title Software requirements %}
|
||||
|
||||
- Download the Hass.io image for [your device](/hassio/installation/)
|
||||
- Download [Etcher] to write the image to an SD card
|
||||
- Download [balenaEtcher] to write the image to an SD card
|
||||
- Text Editor like [Visual Studio Code](https://code.visualstudio.com/)
|
||||
|
||||
[Etcher]: https://etcher.io/
|
||||
[balenaEtcher]: https://www.balena.io/etcher
|
||||
|
||||
### {% linkable_title Installing Hass.io %}
|
||||
|
||||
1. Put the SD card in your SD card reader.
|
||||
1. Open Etcher, select the Hass.io image and flash it to the SD card.
|
||||
1. Open balenaEtcher, select the Hass.io image and flash it to the SD card.
|
||||
1. WiFi and Static IP setup only: Format a USB-Stick with name `CONFIG`, create a folder named `network` and within that folder a file named `my-network`. Copy one of [the examples] to the `my-network` file.
|
||||
1. Unmount the SD card and remove it from your SD card reader.
|
||||
1. Insert the SD card into your Raspberry Pi 3. If you are going to use an Ethernet cable, connect that too.
|
||||
|
@ -21,22 +21,22 @@ The following will take you through the steps required to install Hass.io.
|
||||
- [Raspberry Pi 2 Model B][pi2]
|
||||
- [Raspberry Pi 3 Model B and B+ 32bit][pi3-32] (recommended)
|
||||
- [Raspberry Pi 3 Model B and B+ 64bit][pi3-64]
|
||||
- [Tinkerboard (Beta)][tinker]
|
||||
- [Odroid-C2 (Beta)][odroid-c2]
|
||||
- [Odroid-XU4 (Beta)][odroid-xu4]
|
||||
- [OrangePi-Prime (Beta)][opi-prime]
|
||||
- [Intel-Nuc (Beta)][intel-nuc]
|
||||
- [Tinkerboard][tinker]
|
||||
- [Odroid-C2][odroid-c2]
|
||||
- [Odroid-XU4][odroid-xu4]
|
||||
- [OrangePi-Prime][opi-prime]
|
||||
- [Intel-Nuc][intel-nuc]
|
||||
|
||||
- As a virtual appliance:
|
||||
|
||||
- [VMDK][vmdk] (VMWare Workstation)
|
||||
- [VHDX (beta)][vhdx]
|
||||
- [VDI (beta)][vdi]
|
||||
- [VHDX][vhdx]
|
||||
- [VDI][vdi]
|
||||
- [OVA][Virtual Appliance] (not available at this time!)
|
||||
|
||||
2. Install Hass.io:
|
||||
|
||||
- Flash the downloaded image to an SD card using [Etcher][etcher]. We recommend at least a 32 GB SD card to avoid running out of space.
|
||||
- Flash the downloaded image to an SD card using [balenaEtcher][balenaEtcher]. We recommend at least a 32 GB SD card to avoid running out of space.
|
||||
- Load the appliance image into your virtual machine software.
|
||||
|
||||
3. Optional - set up the WiFi or static IP: On a USB stick, create the `network/my-network` file and follow the [HassOS howto][hassos-network].
|
||||
@ -112,22 +112,22 @@ When you use this installation method, the core SSH add-on may not function corr
|
||||
|
||||
A detailed guide about running Hass.io as a virtual machine is available in the [blog][hassio-vm].
|
||||
|
||||
[etcher]: https://etcher.io/
|
||||
[balenaEtcher]: https://www.balena.io/etcher
|
||||
[Virtual Appliance]: https://github.com/home-assistant/hassos/blob/dev/Documentation/boards/ova.md
|
||||
[hassos-network]: https://github.com/home-assistant/hassos/blob/dev/Documentation/network.md
|
||||
[pi0-w]: https://github.com/home-assistant/hassos/releases/download/1.13/hassos_rpi0-w-1.13.img.gz
|
||||
[pi1]: https://github.com/home-assistant/hassos/releases/download/1.13/hassos_rpi-1.13.img.gz
|
||||
[pi2]: https://github.com/home-assistant/hassos/releases/download/1.13/hassos_rpi2-1.13.img.gz
|
||||
[pi3-32]: https://github.com/home-assistant/hassos/releases/download/1.13/hassos_rpi3-1.13.img.gz
|
||||
[pi3-64]: https://github.com/home-assistant/hassos/releases/download/1.13/hassos_rpi3-64-1.13.img.gz
|
||||
[tinker]: https://github.com/home-assistant/hassos/releases/download/2.7/hassos_tinker-2.7.img.gz
|
||||
[odroid-c2]: https://github.com/home-assistant/hassos/releases/download/2.7/hassos_odroid-c2-2.7.img.gz
|
||||
[odroid-xu4]: https://github.com/home-assistant/hassos/releases/download/2.7/hassos_odroid-xu4-2.7.img.gz
|
||||
[opi-prime]: https://github.com/home-assistant/hassos/releases/download/2.7/hassos_opi-prime-2.7.img.gz
|
||||
[intel-nuc]: https://github.com/home-assistant/hassos/releases/download/2.7/hassos_intel-nuc-2.7.img.gz
|
||||
[vmdk]: https://github.com/home-assistant/hassos/releases/download/1.13/hassos_ova-1.13.vmdk.gz
|
||||
[vhdx]: https://github.com/home-assistant/hassos/releases/download/2.7/hassos_ova-2.7.vhdx.gz
|
||||
[vdi]: https://github.com/home-assistant/hassos/releases/download/2.7/hassos_ova-2.7.vdi.gz
|
||||
[pi0-w]: https://github.com/home-assistant/hassos/releases/download/2.8/hassos_rpi0-w-2.8.img.gz
|
||||
[pi1]: https://github.com/home-assistant/hassos/releases/download/2.8/hassos_rpi-2.8.img.gz
|
||||
[pi2]: https://github.com/home-assistant/hassos/releases/download/2.8/hassos_rpi2-2.8.img.gz
|
||||
[pi3-32]: https://github.com/home-assistant/hassos/releases/download/2.8/hassos_rpi3-2.8.img.gz
|
||||
[pi3-64]: https://github.com/home-assistant/hassos/releases/download/2.8/hassos_rpi3-64-2.8.img.gz
|
||||
[tinker]: https://github.com/home-assistant/hassos/releases/download/2.8/hassos_tinker-2.8.img.gz
|
||||
[odroid-c2]: https://github.com/home-assistant/hassos/releases/download/2.8/hassos_odroid-c2-2.8.img.gz
|
||||
[odroid-xu4]: https://github.com/home-assistant/hassos/releases/download/2.8/hassos_odroid-xu4-2.8.img.gz
|
||||
[opi-prime]: https://github.com/home-assistant/hassos/releases/download/2.8/hassos_opi-prime-2.8.img.gz
|
||||
[intel-nuc]: https://github.com/home-assistant/hassos/releases/download/2.8/hassos_intel-nuc-2.8.img.gz
|
||||
[vmdk]: https://github.com/home-assistant/hassos/releases/download/2.8/hassos_ova-2.8.vmdk.gz
|
||||
[vhdx]: https://github.com/home-assistant/hassos/releases/download/2.8/hassos_ova-2.8.vhdx.gz
|
||||
[vdi]: https://github.com/home-assistant/hassos/releases/download/2.8/hassos_ova-2.8.vdi.gz
|
||||
[linux]: https://github.com/home-assistant/hassio-build/tree/master/install#install-hassio
|
||||
[local]: http://hassio.local:8123
|
||||
[samba]: /addons/samba/
|
||||
|
@ -18,7 +18,7 @@ zwave:
|
||||
|
||||
### {% linkable_title RAZBERRY BOARD %}
|
||||
|
||||
If you need GPIO on Raspberry Pi 3 for your Z-Wave module, add the following line into `config.txt` (you have to access that on the SD card directly. Simply plug it into your PC and edit it there. The `config.txt` is not accessible from your Linux system, you may need to open the SD card on a Windows system.):
|
||||
If you need GPIO on Raspberry Pi 3 for your Z-Wave module, add the following line into `config.txt` (you have to access that on the SD card directly. Simply plug it into your PC and edit it there. The `config.txt` is not accessible from your Hass.io system, you may need to open the SD card on a Windows or Linux system.):
|
||||
|
||||
```
|
||||
dtoverlay=pi3-miniuart-bt
|
||||
|
Loading…
x
Reference in New Issue
Block a user