Hey Aqara and the Community…
I tested the FP400 in the last couple weeks and here is what I have to say:
The FP400 is an amazing device. With 60GHz radar it can reliably detect where you and others are. The zone mapping works perfectly fine for me. It always knows where I stay or sit.
I mainly use this for “two” automations, currently. I may add some more in the future.
Automation 1: Location-based lighting
The first automation is the location-based lighting. For example, the lights from the room entry turn on, if I walk in or out of the room. If I sit on one of the two armchairs, the lights should be dimmed and warm. But if I sit on the desk for a meeting, I don’t want a low dimmed light. Nobody would see me then… so the lights should turn bright and cold.
I split this in two automations: One for the entry, and one for the desk and the armchairs.
I created a small (not so great) video… maybe it helps understanding it better:
YAML Code 1
alias: Büro Eingang Licht
description: ''
triggers:
- trigger: state
entity_id:
- binary_sensor.buro_anwesenheitssensor_eingang
to:
- 'on'
conditions:
- condition: sun.is_set
options: {}
- condition: light.is_off
target:
entity_id:
- light.hue_fugato_color_spot_1
- light.hue_fugato_color_spot_2
options:
behavior: all
for:
hours: 0
minutes: 0
seconds: 30
actions:
- action: light.turn_on
metadata: {}
data:
transition: 0
color_temp_kelvin: 2800
brightness_pct: 100
target:
entity_id:
- light.hue_fugato_color_spot_1
- light.hue_fugato_color_spot_2
- wait_for_trigger:
- trigger: state
entity_id:
- binary_sensor.buro_anwesenheitssensor_eingang
to:
- 'off'
- action: light.turn_off
metadata: {}
data:
transition: 0
target:
entity_id:
- light.hue_fugato_color_spot_1
- light.hue_fugato_color_spot_2
mode: parallel
max: 3
YAML Code 2
alias: Büro Licht
description: ''
triggers:
- trigger: state
entity_id:
- binary_sensor.buro_anwesenheitssensor_sessel
to:
- 'on'
id: Sessel
- trigger: state
entity_id:
- binary_sensor.buro_anwesenheitssensor_tisch
to:
- 'on'
id: Tisch
conditions:
- condition: sun.is_set
options: {}
- condition: or
conditions:
- condition: light.is_off
target:
entity_id:
- light.hue_ensis_down
- light.hue_ensis_up
options:
behavior: all
for:
hours: 0
minutes: 0
seconds: 30
- condition: numeric_state
entity_id: automation.buro_licht
attribute: current
above: 0.5
actions:
- choose:
- conditions:
- condition: trigger
id:
- Sessel
sequence:
- action: light.turn_on
metadata: {}
data:
transition: 0
color_temp_kelvin: 2000
brightness_pct: 35
target:
entity_id:
- light.hue_ensis_down
- light.hue_ensis_up
- wait_for_trigger:
- trigger: state
entity_id:
- binary_sensor.buro_anwesenheitssensor_belegung
for:
hours: 0
minutes: 1
seconds: 0
to:
- 'off'
- action: light.turn_off
metadata: {}
data:
transition: 0
target:
entity_id:
- light.hue_ensis_down
- light.hue_ensis_up
- conditions:
- condition: trigger
id:
- Tisch
sequence:
- action: light.turn_on
metadata: {}
data:
transition: 0
color_temp_kelvin: 3000
brightness_pct: 100
target:
entity_id:
- light.hue_ensis_down
- light.hue_ensis_up
- wait_for_trigger:
- trigger: state
entity_id:
- binary_sensor.buro_anwesenheitssensor_belegung
for:
hours: 0
minutes: 1
seconds: 0
to:
- 'off'
- action: light.turn_off
metadata: {}
data:
transition: 0
target:
entity_id:
- light.hue_ensis_down
- light.hue_ensis_up
mode: restart
Automation 2:
The second automation is not really new, but the FP400 enhances it. We had a nice and warm summer here in Germany, which was really great. But what is not so good is when the sun sizzles on the roof windows all day long. So I created an automation to shut the covers, as soon as it reaches 23°C in the room.
But this also created a new problem: If you’re in a meeting, you don’t want to close the covers and sit in a dark room.
So here comes the FP400: Stop the covers from closing, if somebody is in the room.
Now everything works fine.
YAML Code
I shortened the code a little bit. There were some more if-blocks in the parallel section.
alias: Rollläden schließen bei Hitze
description: ''
triggers:
- trigger: temperature.crossed_threshold
target:
floor_id: dachboden
options:
behavior: each
threshold:
type: above
value:
active_choice: number
number: 23
unit_of_measurement: °C
- trigger: temperature.changed
target:
floor_id: dachboden
options:
threshold:
type: above
value:
active_choice: number
number: 23.25
unit_of_measurement: °C
conditions:
- condition: sun.is_up
options: {}
- condition: temperature.is_value
target:
floor_id: aussen
options:
behavior: all
threshold:
type: above
value:
active_choice: number
number: 22.5
unit_of_measurement: °C
- condition: state
entity_id: sensor.jahreszeit
state:
- spring
- summer
- autumn
- condition: template
value_template: >-
{% set covers = expand(floor_entities('Dachboden') +
area_entities('Flur')) %}
{{ covers
| selectattr('domain', 'eq', 'cover')
| selectattr('attributes.current_position', 'defined')
| map(attribute='attributes.current_position')
| max > 25 }}
actions:
- parallel:
- if:
- condition: window.is_closed
target:
entity_id: binary_sensor.flur_dachfenster_sensor_tur
options:
behavior: any
for: '00:00:00'
then:
- action: cover.set_cover_position
metadata: {}
target:
entity_id: cover.flur_dachfenster_rollladen
data:
position: 25
alias: Flur Rollladen
- alias: Büro Rollladen
if:
- condition: window.is_closed
target:
entity_id: binary_sensor.buro_dachfenster_sensor_tur
options:
behavior: any
for: '00:00:00'
- condition: state
entity_id:
- binary_sensor.buro_anwesenheitssensor_belegung
- binary_sensor.buro_anwesenheitssensor_tisch
- binary_sensor.buro_anwesenheitssensor_sessel
state:
- 'off'
for:
hours: 0
minutes: 10
seconds: 0
then:
- action: switch.turn_on
metadata: {}
target:
entity_id: switch.buro_dachfenster_rollladen_silent_operation
data: {}
- action: cover.set_cover_position
metadata: {}
target:
entity_id: cover.buro_dachfenster_rollladen
data:
position: 25
- action: switch.turn_off
metadata: {}
target:
entity_id: switch.buro_dachfenster_rollladen_silent_operation
data: {}
mode: single
—
Hope this gives you guys a litte Inspiration and let me know what you think.
Can only recommend the new FP400!
Can’t wait for the next Aqara Product testing period, especially the U250
…