New Aqara Human Presence Sensor FP1

Yeah, it is. I was hyped when I first saw FP1 but then reality came. There’s one thing that I didn’t check for presence detection yet. It’s using camera with AI detection (Frigate + Coral) - I’ve seen examples of it being really good at it. For my case it can’t be used though (bathroom).

You could try to set photocell type of sensors in places where you would like it to trigger, near the floor. So it would trigger when someone would go through. If you would pair it with the enter event from FP1 you’d know if you should turn on or off. Long shot but worth a try.

Just chiming in here, i have 2 of those FP1 sensor, and overall im very dissapointed
So i started looking at other ways to detect presence

For those with deep pockets out there
I am currently testing espresence with my oura ring
I bought a bunch of ATOM-U and its not that bad at detecting presence
It requires alot of tweaking around but the results are acceptable
With some custom rules with node red it can become quite accurate
If you have multiple floors it might be an issue

I’m using Monitor with Pi ZeroW for home presence detection. I know it can be used for room as well but those type of sensors don’t detect people but devices. So they have their share of issues where whole household have to have monitored device with them for this work properly…which won’t the case all the time.

I had the same exact issue. It was working perfectly fine for weeks and out of no where I started having issues with the occupancy staying stuck on detected.

I was messing with it for a couple of hours today. I did a few things and it’s back to working the same way. I don’t know what fixed it but I’ll list everything I did in order…

-Pair to ZHA again (don’t remove from zigbee network. Just re add it)
-multiple times hitting the button to reset occupancy
-disconnect and leave disconnected for about 10 minutes
-reconnect and try to manually reset occupancy again
-move to a dark room with 0 movement. Face device to wall about 2 inches away.
-trigger occupancy by moving by it.
-wait 10 minutes to see if it’ll clear
-manually clear occupancy
-leave undisturbed and untriggered for about 15-30minutes
-trigger occupancy by walking to room.
-leave for 5 minutes and the thing automatically cleared!!
-tested 2 more times and they both worked without having to manually clear the occupancy.
-moved the device back and tested occupancy
-reconsider getting more fp1s…

1 Like

For those who are using it to turn on some lights etc. and having some false positives e.g. because something else is moving during the night, I want to share an idea how to combine a normal motion sensor with the FP1 by not just adding it to a group:

template:
  - trigger:
      - platform: state
        entity_id: binary_sensor.living_room_motion_occupancy
      - platform: state
        entity_id: binary_sensor.aqara_fp1_occupancy
    binary_sensor:
      - name: Living Room Presence
        device_class: occupancy
        delay_off: 15
        state: >
          {% if is_state('binary_sensor.living_room_motion_occupancy','on') %}
          on
          {% else %}
          {% if is_state('binary_sensor.aqara_fp1_occupancy','off') %}
          off
          {% else %}
          {{ states('binary_sensor.aqara_fp1_occupancy') and states('binary_sensor.living_room_presence') }}
          {% endif %}
          {% endif %}

which will result in the following state diagram:

To summarize it: With the delay_off you can control after what time another presence event is
discarded if there was no other motion or presence beforehand.

8 Likes

For those of you having issues with it getting stuck on “detected” see my post on this thread. I ended up disassembling mine and have had much better success with it running with the bare circuit board exposed. I believe that the plastic housing was somehow triggering false detections causing it to constantly stay on “detected.”

1 Like

When I first got the 4 FP1, I tried pairing them with ZHA and Z2M, keep getting false presence readings.

The problems were solved when I actually connect to the Aqara app via the M1S hub. (HA pick up the M1S via wifi). This way, I can figure the best placement of the sensor and map out the detection area on the app. The important thing is to identify the “interferences” zones in the app.

Since then, I never have any false presence reading.

I received one last week and sadly not good, the presence-detection is below 2.5 m (half the spec) and even when I sit next to it, it stops detecting me after a few minutes. Also (mentioned above too), when I move it may take 2 sec. before it actually shows something. I also removed it from its plastic hull but no change.
Sadly, the Ali-return costs are too high so will keep it and hope to find a solution… or use it in the toilet?

I am actually using it with frigate and coral. Still not fantastic. Frigate isn’t bulletproof either. I actually started out with presence sensing with frigate

The guys from the Home Assistant podcast did an episode on one of their ‘All Things Smart Home’ youtube video (Unboxing and installing the Xiaomi FP1 Presence Sensor | All Things Smart Home - YouTube). Looks like they had similar issues to those in this thread. At the end however they did discover something useful - HA Events when using the FP1 with ZHA integration. Has anybody had any luck with that?

To update the firmware:
I think you’d need to get an Aqara hub, connect it to that, and then use the phone app to update the firmware. Then you can re-pair it to your Home Assistant Zigbee network.

So you define the exclusion zone in the Aqara app? Also, how’s the experience for HA talking to FP1 through the Aqara hub? Is it responsive? I’m thinking to do the same with the Aqara E1 USB stick to map to add the exclusion zone where my swing fan is.

I completely understand the temptation to purchase an Aqara hub like @cdrstevehk did, however I’m also a firm believer of ‘voting with my wallet’ and so fear that the more we accept third party hubs the more we are discouraging companies from helping open source communities integrate with their products.

2 Likes

I simply set this as a trigger in the automation for turning the lights on:

  - platform: event
    event_type: zha_event
    event_data:
      device_ieee: "54:ef:44:10:00:4d:2b:b7"
      device_id: "ba21cbb9325bd0bf494096512a6b8a0e"
      endpoint_id: 1
      cluster_id: 64704
      command: "Enter"

You can set other FP1 events this way as well.

I’ve also set up a sensor for different usage that maps events to more standard naming scheme.

alias: FP1 Events to Sensor
id: 1d24ab11-ede2-4ecf-836d-3c7333ea0f7b
mode: queued
trigger:
  - platform: event
    event_type: zha_event
    event_data:
      device_ieee: '54:ef:44:10:00:4d:2b:b7'
      device_id: 'ba21cbb9325bd0bf494096512a6b8a0e'
      endpoint_id: 1
      cluster_id: 64704
action:
- service: input_select.select_option
  data:
    entity_id: input_select.fp1_event_helper
    option: >
      {% if trigger.event.data.command == "Leave" %}
        off
      {% else %}
        on
      {% endif %}
1 Like

I have been using the FP1, the RTCGQ13LM and an old aqara sensor. What I can tell is that they behave very different. In my hands, the FP1 has been incredible reliable. It doesn’t have false positives and it is very sensitive to presence. It stays detecting me without dropping a single time for hours, when with very low movement. The RTCGQ13LM is way more sensitive than a normal aqara sensor. However, from time to time it stops to see me and pick-up detection a few minutes latter. These intervals are not more than 10min. Therefore, if you give a buffer of 10min of absence of detection before turning off lights, it works great. The normal aqara sensor sometimes fail to see me when I am not moving for long periods of time (reading or watching TV, for instances. I will put some examples bellow.
First in my TV room I put a FP1 above a normal aqara sensor, since the aqara is faster for detection than the FP1. Bellow is a picture from a 2h period where I was watching a movie.


The movie started at 9:05 and ended 11:05. The FP1 is labelled as wave sensor and the normal aqara is labelled as sensor sala TV. As you can see the FP1 see me for the how 2h. There is a single point where for about 30sec it says unknown (is gray on the graphic). This is not normal and I don’t know what happened on this occasion. The normal aqara sensor miss me for 20min at some times… Ah, be aware that the colors are inverted on the graphic between the sensors (green is detected for FP1 but for the normal aqara green is not detected).
Bellow I put a graphic of the the same sensors during the night:

None of them detected false positives.
As for the RTCGQ13LM, I have one above my bed. Therefore I have picked a similar 2h period during the night and pasted bellow:

As you can see, there is a maximum 10min interval where it miss me.

I think they have different technologies and have both advantages and disadvantages. The FP1 is direct on the outlet, therefore it doesn’t need to economize power. I believe the others have periods of sleep to economize battery and may be the reason why the turn off from time to time. But the other side, it not always that you have a outlet where you want to detect movement. Then, the other options are better. Also there is the question of the mmwaves been bad for healthy that may limit their use… The normal aqara is much cheaper, therefore you can use more of them on your home… Only to cite some differences…

4 Likes

I just bought the Aqara M2 hub and paired it with homeassistant through the Homekit intergration, and I must say, the FP1 works a LOT better.

If the homekit integration could pass through zone information, that would be incredibly usefull since Z2M doesn’t support zones or regions. But with the zoning and exclusion ranges that’s possible with the app, I’m no longer getting false detections with my curtains. I’m also no longer false negatives.

I’ve only been testing it for a couple of hours, but it has been incredibly reliable with the M2 hub.

I have tried event states with Z2M, but it was still unreliable due to the lack of zone feature. If they ever get zones to work well in Z2M, I’ll ditch the hub, but so far, I have over $200 worth of FP1s and if paying for a $80 hub to make them all actually work, it’s worth it.

I’ll be happy to ditch the hub once Z2M supports zones.

My main problem seems to be the detection distance which, with less than 2.5m, makes it hardly usable… for 60EUR this is now just a very expensive motion detector.
Do you have a better range with hub vs. z2m?

I just measured the distance between my sofa and detector. They are 4.8m apart and the detection has been working very well. I am using zigbee2mqtt version 1.28.0-1, with a Slaesh’s CC2652RB stick, updated recently to the last firmware. The lqi of the FP1 is 160. Also, I performed the OTA update of the sensor in zigbee2mqtt when I installed it (current version of the FP1 firmware is 20210121). Ah, another thing that I have just remembered reading somewhere is that the power of the adapter is important… There are versions of the FP1 that don’t come with the USB adapter. They recommend that you use one that is 5v 1A, otherwise too low power can affect product performance…

1 Like

Thanks and I changed adapter to one indicating 2.4A… no change. I have the same FP1 firmware and Z2M (doubting that Z2M has anything to do with this)
So I continue to suspect mal/poor-function of this particular device.

Which region do you have set up in your M2 Hub?