My Automations and Review for the FP400

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 :partying_face:…


More from the forum:

7 Likes

I’m liking these a lot.

Currently in smart home infancy, but your implementation looks like something I caould adapt.

2 Likes