
* Add Xiaomi docs for platforms * Add service details * Add Aqara Wireless Switch * Escape templates * Update 'ha_iot_class'
294 lines
8.3 KiB
Markdown
294 lines
8.3 KiB
Markdown
---
|
|
layout: page
|
|
title: "Xiaomi Binary Sensor"
|
|
description: "Instructions how to setup the Xiaomi binary sensors within Home Assistant."
|
|
date: 2017-07-21 16:34
|
|
sidebar: true
|
|
comments: false
|
|
sharing: true
|
|
footer: true
|
|
logo: xiaomi.png
|
|
ha_category: Binary Sensor
|
|
ha_release: "0.50"
|
|
ha_iot_class: "Local Polling"
|
|
---
|
|
|
|
|
|
The `xiaomi` binary sensor platform allows you to get data from your [Xiaomi](http://www.mi.com/en/) binary sensors.
|
|
|
|
The requirement is that you have setup the [`xiaomi` component](/components/xiaomi/).
|
|
|
|
|
|
### {% linkable_title Type of sensors supported %}
|
|
- Motion
|
|
- Door / Window
|
|
- Smoke
|
|
- Gas
|
|
- Xiaomi Wireless Button
|
|
- Xiaomi Cube
|
|
|
|
### {% linkable_title Automation examples %}
|
|
|
|
#### {% linkable_title Motion %}
|
|
|
|
```yaml
|
|
- alias: If there is motion and its dark turn on the gateway light
|
|
trigger:
|
|
platform: state
|
|
entity_id: binary_sensor.motion_sensor_158d000xxxxxc2
|
|
from: 'off'
|
|
to: 'on'
|
|
condition:
|
|
condition: numeric_state
|
|
entity_id: sensor.illumination_34ce00xxxx11
|
|
below: 300
|
|
action:
|
|
service: light.turn_on
|
|
entity_id: light.gateway_light_34ce00xxxx11
|
|
data:
|
|
brightness: 5
|
|
- alias: If there no motion for 5 minutes turn off the gateway light
|
|
trigger:
|
|
platform: state
|
|
entity_id: binary_sensor.motion_sensor_158d000xxxxxc2
|
|
from: 'on'
|
|
to: 'off'
|
|
for:
|
|
minutes: 5
|
|
action:
|
|
service: light.turn_off
|
|
entity_id: light.gateway_light_34ce00xxxx11
|
|
```
|
|
|
|
#### {% linkable_title Door and/or Window %}
|
|
|
|
```yaml
|
|
- alias: If the window is open turn off the radiator
|
|
trigger:
|
|
platform: state
|
|
entity_id: binary_sensor.door_window_sensor_158d000xxxxxc2
|
|
from: 'off'
|
|
to: 'on'
|
|
action:
|
|
service: climate.set_operation_mode
|
|
entity_id: climate.livingroom
|
|
data:
|
|
operation_mode: 'Off'
|
|
- alias: If the window is closed for 5 minutes turn on the radiator again
|
|
trigger:
|
|
platform: state
|
|
entity_id: binary_sensor.door_window_sensor_158d000xxxxxc2
|
|
from: 'on'
|
|
to: 'off'
|
|
for:
|
|
minutes: 5
|
|
action:
|
|
service: climate.set_operation_mode
|
|
entity_id: climate.livingroom
|
|
data:
|
|
operation_mode: 'Smart schedule'
|
|
```
|
|
|
|
#### {% linkable_title Smoke %}
|
|
|
|
```yaml
|
|
- alias: Send notification on fire alarm
|
|
trigger:
|
|
platform: state
|
|
entity_id: binary_sensor.smoke_sensor_158d0001574899
|
|
from: 'off'
|
|
to: 'on'
|
|
action:
|
|
- service: notify.html5
|
|
data:
|
|
title: Fire alarm!
|
|
message: Fire/Smoke detected!
|
|
- service: xiaomi.play_ringtone
|
|
data:
|
|
gw_mac: xxxxxxxxxxxx
|
|
ringtone_id: 2
|
|
ringtone_vol: 100
|
|
```
|
|
|
|
#### {% linkable_title Gas %}
|
|
|
|
```yaml
|
|
- alias: Send notification on gas alarm
|
|
trigger:
|
|
platform: state
|
|
entity_id: binary_sensor.natgas_sensor_158dxxxxxxxxxx
|
|
from: 'off'
|
|
to: 'on'
|
|
action:
|
|
- service: notify.html5
|
|
data_template:
|
|
title: Gas alarm!
|
|
message: 'Gas with a density of {% raw %}{{ states.binary_sensor.natgas_sensor_158dxxxxxxxxxx.attributes.density }}{% endraw %} detected.'
|
|
```
|
|
|
|
#### {% linkable_title Xiaomi Wireless Button %}
|
|
|
|
Available events are `single`, `double`, `hold`, `long_click_press` and `long_click_release`. For Square version (Aqara brand) only `single` and `double` events are supported. Furthermore the space between two clicks to generate a double click must be quite large now.
|
|
|
|
```yaml
|
|
- alias: Toggle dining light on single press
|
|
trigger:
|
|
platform: event
|
|
event_type: click
|
|
event_data:
|
|
entity_id: binary_sensor.switch_158d000xxxxxc2
|
|
click_type: single
|
|
action:
|
|
service: switch.toggle
|
|
entity_id: switch.wall_switch_left_158d000xxxxx01
|
|
- alias: Toggle couch light on double click
|
|
trigger:
|
|
platform: event
|
|
event_type: click
|
|
event_data:
|
|
entity_id: binary_sensor.switch_158d000xxxxxc2
|
|
click_type: double
|
|
action:
|
|
service: switch.toggle
|
|
entity_id: switch.wall_switch_right_158d000xxxxx01
|
|
- alias: Let a dog bark on long press
|
|
trigger:
|
|
platform: event
|
|
event_type: click
|
|
event_data:
|
|
entity_id: binary_sensor.switch_158d000xxxxxc2
|
|
click_type: long_click_press
|
|
action:
|
|
service: xiaomi.play_ringtone
|
|
data:
|
|
gw_mac: xxxxxxxxxxxx
|
|
ringtone_id: 8
|
|
ringtone_vol: 8
|
|
```
|
|
|
|
#### {% linkable_title Xiaomi Cube %}
|
|
|
|
Available events are `flip90`, `flip180`, `move`, `tap_twice`, `shake_air`, `swing`, `alert`, `free_fall` and `rotate`.
|
|
|
|
```yaml
|
|
- alias: Cube event flip90
|
|
trigger:
|
|
platform: event
|
|
event_type: cube_action
|
|
event_data:
|
|
entity_id: binary_sensor.cube_15xxxxxxxxxxxx
|
|
action_type: flip90
|
|
action:
|
|
- service: light.turn_on
|
|
entity_id: light.gateway_light_28xxxxxxxxxx
|
|
data:
|
|
color_name: "springgreen"
|
|
- alias: Cube event flip180
|
|
trigger:
|
|
platform: event
|
|
event_type: cube_action
|
|
event_data:
|
|
entity_id: binary_sensor.cube_15xxxxxxxxxxxx
|
|
action_type: flip180
|
|
action:
|
|
- service: light.turn_on
|
|
entity_id: light.gateway_light_28xxxxxxxxxx
|
|
data:
|
|
color_name: "darkviolet"
|
|
- alias: Cube event move
|
|
trigger:
|
|
platform: event
|
|
event_type: cube_action
|
|
event_data:
|
|
entity_id: binary_sensor.cube_15xxxxxxxxxxxx
|
|
action_type: move
|
|
action:
|
|
- service: light.turn_on
|
|
entity_id: light.gateway_light_28xxxxxxxxxx
|
|
data:
|
|
color_name: "gold"
|
|
- alias: Cube event tap_twice
|
|
trigger:
|
|
platform: event
|
|
event_type: cube_action
|
|
event_data:
|
|
entity_id: binary_sensor.cube_15xxxxxxxxxxxx
|
|
action_type: tap_twice
|
|
action:
|
|
- service: light.turn_on
|
|
entity_id: light.gateway_light_28xxxxxxxxxx
|
|
data:
|
|
color_name: "deepskyblue"
|
|
- alias: Cube event shake_air
|
|
trigger:
|
|
platform: event
|
|
event_type: cube_action
|
|
event_data:
|
|
entity_id: binary_sensor.cube_15xxxxxxxxxxxx
|
|
action_type: shake_air
|
|
action:
|
|
- service: light.turn_on
|
|
entity_id: light.gateway_light_28xxxxxxxxxx
|
|
data:
|
|
color_name: "blue"
|
|
```
|
|
#### #### {% linkable_title Aqara Wireless Switch %}
|
|
|
|
The Aqara Wireless Switch is available as single-key and double-key version. Each key behaves like the Wireless Button limited to the click event `single`. The double key version adds a third device called `binary_sensor.wall_switch_both_158xxxxxxxxx12` which reports a click event called `both` if both keys are pressed.
|
|
|
|
```yaml
|
|
- alias: Decrease brightness of the gateway light
|
|
trigger:
|
|
platform: event
|
|
event_type: click
|
|
event_data:
|
|
entity_id: binary_sensor.wall_switch_left_158xxxxxxxxx12
|
|
click_type: single
|
|
action:
|
|
service: light.turn_on
|
|
entity_id: light.gateway_light_34xxxxxxxx13
|
|
data_template:
|
|
brightness: {% raw %}>-
|
|
{% if states.light.gateway_light_34xxxxxxxx13.attributes.brightness %}
|
|
{% if states.light.gateway_light_34xxxxxxxx13.attributes.brightness - 60 >= 10 %}
|
|
{{states.light.gateway_light_34xxxxxxxx13.attributes.brightness - 60}}
|
|
{% else %}
|
|
{{states.light.gateway_light_34xxxxxxxx13.attributes.brightness}}
|
|
{% endif %}
|
|
{% else %}
|
|
10
|
|
{% endif %}{% endraw %}
|
|
|
|
- alias: Increase brightness of the gateway light
|
|
trigger:
|
|
platform: event
|
|
event_type: click
|
|
event_data:
|
|
entity_id: binary_sensor.wall_switch_right_158xxxxxxxxx12
|
|
click_type: single
|
|
action:
|
|
service: light.turn_on
|
|
entity_id: light.gateway_light_34xxxxxxxx13
|
|
data_template:
|
|
brightness: {% raw %}>-
|
|
{% if states.light.gateway_light_34xxxxxxxx13.attributes.brightness %}
|
|
{% if states.light.gateway_light_34xxxxxxxx13.attributes.brightness + 60 <= 255 %}
|
|
{{states.light.gateway_light_34xxxxxxxx13.attributes.brightness + 60}}
|
|
{% else %}
|
|
{{states.light.gateway_light_34xxxxxxxx13.attributes.brightness}}
|
|
{% endif %}
|
|
{% else %}
|
|
10
|
|
{% endif %}{% endraw %}
|
|
|
|
- alias: Turn off the gateway light
|
|
trigger:
|
|
platform: event
|
|
event_type: click
|
|
event_data:
|
|
entity_id: binary_sensor.wall_switch_both_158xxxxxxxxx12
|
|
click_type: both
|
|
action:
|
|
service: light.turn_off
|
|
entity_id: light.gateway_light_34xxxxxxxx13
|
|
```
|