3.3 KiB
layout, title, description, date, sidebar, comments, sharing, footer, ha_category, logo
layout | title | description | date | sidebar | comments | sharing | footer | ha_category | logo |
---|---|---|---|---|---|---|---|---|---|
page | Template Binary Sensor | Instructions how to integrate Template binary sensors into Home Assistant. | 2016-02-25 15:00 | true | false | true | true | Binary Sensor | home-assistant.png |
The template
platform supports sensors which breaks out the state and state_attributes
from other entities.
To enable Template binary sensors in your installation, add the following to your configuration.yaml
file:
# Example configuration.yaml entry
binary_sensor:
- platform: template
sensors:
sun_up:
value_template: {% raw %}'{{ states.sun.sun.attributes.elevation > 0}}'{% endraw %}
friendly_name: 'Sun is up'
Configuration variables:
- sensors array (Required): List of your sensors.
- friendly_name (Optional): Name to use in the Frontend.
- device_class (Optional): The type/class of the sensor to set the icon in the frontend.
- value_template (Optional): Defines a template to extract a value from the payload.
- entity_id (Optional): Add a list of entity IDs so the sensor only reacts to state changes of these entities. This will reduce the number of times the sensor will try to update it's state.
{% linkable_title Examples %}
In this section you find some real life examples of how to use this sensor.
{% linkable_title Sensor threshold %}
This example indicates true if a sensor is above a given threshold. Assuming a sensor of furnace
that provides a current reading for the fan motor, we can determine if the furnace is running by checking that it is over some threshold:
sensor:
- platform: template
sensors:
furnace_on:
value_template: {% raw %}{{ states.sensor.furnace.state > 2.5 }}{% endraw %}
friendly_name: 'Furnace Running
device_class: heat
{% linkable_title Switch as sensor %}
Some movement sensors and door/window sensors will appear as a switch. By using a template binary sensor, the switch can be displayed as a binary sensors. The original switch can then be hidden by customizing.
binary_sensor:
- platform: template
sensors:
movement:
value_template: {% raw %}"{{ states.switch.movement.state == 'on' }}"{% endraw %}
device_class: motion
door:
value_template: {% raw %}"{{ states.switch.door.state == 'on' }}"{% endraw %}
device_class: opening
{% linkable_title Combining multiple sensors, and using entity_id: %}
This example combines multiple CO sensors into a single overall status. It also shows how to use entity_id
binary_sensor:
- platform: template
sensors:
co:
friendly_name: 'CO'
device_class: 'gas'
value_template: {% raw %}>-
{%- if is_state("sensor.bedroom_co_status", "Ok")
and is_state("sensor.kitchen_co_status", "Ok")
and is_state("sensor.wardrobe_co_status", "Ok") -%}
Off
{%- else -%}
On
{%- endif %}{% endraw %}
entity_id:
- sensor.bedroom_co_status
- sensor.kitchen_co_status
- sensor.wardrobe_co_status