Brand new to the market is the Aqara FP2 WiFi human presence sensor. It is one of the most exciting smart home products to hit the market in quite a while. It is the successor to the Aqara FP1 which was only officially available in China. This post guides you through setting up the Aqara FP2 from scratch with an iPhone and Home Assistant. If you aren’t using Home Assistant and just use Apple Home, a lot of this guide would apply as well so keep reading.
Update May 5, 2023: I added a section at the end of the article that lists all of the issues I’ve found with the FP2 and the iOS Aqara home app.
Presence vs. Motion Sensors
How is a presence sensor different from a motion sensor? They are VERY different beasts. A presence sensor is different from a motion sensor in that it uses mmWave technology and can continuously monitor a space for multiple people even if they are extremely still (they can be sensitive enough to pick up breathing). You can also setup various presence zones in a room, so you could trigger different home automations based on where in the room people are. In theory, this level of room presence sensing is very exciting and can explode the number of automations you can setup in your house.
When would you use a presence sensor vs. a motion sensor? If you have areas that people are just transiting through, such as a hall, you would NOT want to use the Aqara FP2 presence sensor. Just use a high quality motion sensor which is cheaper and better suited for the job. A presence sensor is for rooms where people sit for long periods of time.
Aqara FP2 Specs
The Aqara FP2 has a few attention grabbing features:
- Multi-person tracking: Unlike the FP1, the FP2 can live track multiple people (up to 5) at once in the room. Great for home automations. I read a future firmware update may enable ‘people counting’, which might be useful.
- Multi-zone tracking: It can monitor a room up to 430SqFt (40 square meters) and up to 30 zones across 320 cells.
- Multi-ecosystem: Supports Homekit, Google Home, Amazon Alexa and IFTTT. Matter support is on their roadmap.
- Built-in Light (lux) sensor: Unlike battery powered lux sensors, the FP2 updates lux readings in near real time. A huge plus.
- Fall-detection: If mounted on a ceiling and zone detection is disabled, it can detect falls. Honestly I’d rely more on an Apple Watch for fall detection since it can call emergency services automatically. Seems like a gimmick.
- WiFi Only: Unlike the FP1, the FP2 requires 2.4GHz WiFi and uses 802.11n. The app gives you good WiFi details such as MAC address, channel, signal strength, IP and BSSID.
- No USB-C PD: Although the FP2 has a USB-C port, you can’t use a USB-C to USB-C cable to power it. You must use USB-C to USB-A and use a dumb 5w USB-A charger. Big fail, IMHO.
My Aqara FP2 First Impressions
The FP2 sensor itself (once setup and tuned) seems pretty solid, but the iOS Aqara Home app is VERY buggy as of April 29, 2023. I am using the very latest app (v3.2) and firmware (1.1.6), which I’ve read did address some very early adopter issues. But firmware and more importantly app improvements are still needed. The most frustrating thing is the Aqara Home app will often freeze when viewing your live location in the room. During the mapping process this is infuriating as I had to force quit the app dozens of times. However, after a few hours of pain and suffering, the live map seemed to be more stable.
My testing is with a single person. Forums have complaints that multi-person tracking is pretty buggy, so beware. Early on in the setup process I saw people ghosts. This seems to have disappeared once I tweaked the room setup and did a number of entry/exit absence resets. I also had to adjust the placement of the FP2 in one room to eliminate ghosts.
After dialing in three rooms the FP2 has been a great performer and is a massive improvement over the Hue Motion sensor for my use cases. The responsiveness in Home Assistant is really astonishing. I can walk around the room and nearly instantly my HA dashboard will register presence/absence. The pinpoint accuracy is also pretty amazing. The FP2 has gotten my creative juices flowing for some super amazing automations that I can now do.
If you setup a Home Assistant dashboard card for the room that you installed the FP2 in, you can view that on your phone while walking around the various zones and see nearly instantaneous clear/detect state. Pretty amazing. I also saw a comment on a Home Assistant forum that the HA developers may add support for more FP2 features like ‘approaching’ or ‘going away’ states which could be great for automations.
What's Covered in this Guide
This guide is broken down in several sections. First, we will provision and setup the FP2. Then I cover a number of tips and best practices I’ve found through trial an error. Then we cover Home Assistant setup and usage. Finally, I compare the FP2 performance with a Hue Motion sensor.
Although this guide is Home Assistant focused, the majority of the content and lessons learned are applicable to any FP2 installation. For the purposes of this guide I’m using an iPhone, have a Homekit Home defined, and will integrate the FP2 into Home Assistant. I don’t know what the Google/Android provisioning experience looks like, so I can’t comment on how to get the FP2 into Home Assistant (since it uses Homekit controller).
- Initial Aqara FP2 Provisioning
- Router Configuration (Optional)
- Aqara FP2 Firmware Update
- Migrating FP2 to Home Assistant
- FP2 Room placement tips
- FP2 Room mapping tips
- Aqara Home fine tuning app tips
- Walk through of my FP2 home office setup
- Home Assistant Zone configuration
- Home Assistant Sensor Groups
- Home Assistant Automations
- Aqara FP2 vs. Hue Motion Sensor
Initial Aqara FP2 Provisioning
1. On your iPhone download the Aqara Home app. If you already have the app, make sure it’s the very latest version.
2. If you have a dedicated 2.4GHz WiFi SSID, connect your iPhone to it.
3. Unbox the Aqara FP2, grab your own power brick (USB-A only, don’t use a USB-C PD power brick, it won’t work) and plug it in. For a flat USB-A wall charger, I really like this 3 pack off Amazon.
4. Open the Aqara app, go to Accessories, and tap the + in the upper right.
5. Tap Add Accessory, then search for the FP2 in the list.
6. Confirm the operation and tap Next step.
7. Confirm adding it to Apple Home.
8. Add the sensor to HomeKit via the QR code.
9. Select the appropriate HomeKit room (Not important).
10. Tap continue to use the default names. Tap through the rest of the HomeKit setup.
11. Aqara binding should immediately start. Enter the accessory name and location.
12. Customize the Aqara cards as you see fit.
13. Once the FP2 is listed on the Aqara accessory list, stop.
Router Configuration (Optional)
1. On your router locate the newly added FP2. I would suggest giving it a DHCP reservation.
2. If you have separate WiFi controller and firewall, rename the FP2 on both.
Aqara FP2 Firmware Update
1. Back in the Aqara app locate the FP2 and tap on it.
2. In the upper right corner tap on the three dots.
3. Scroll down to Version and tap it.
4. If an update is available, update it.
Migrating FP2 to Home Assistant
When you first setup the FP2 it automatically uses Apple Home on an iPhone. The FP2 isn’t yet matter certified, so we need to remove it from Apple Home to add it to Home Assistant. A future Matter firmware update should allow multiple Matter controllers access, in theory.
- In the Apple Home app go to the room where the FP2 was assigned. Along the top banner find Occupancy and long press it.
- Scroll down to Remove Accessory and tap it.
- Switch over to your HA console and you should see a newly discovered integration via HomeKit Controller. Click Configure.
- Enter the pairing code from the QR code on the back of the FP2
- Select the area to place the sensor in HA.
Aqara FP2 Room Placement Tips
Room placement is key to having the sensor perform correctly. Depending on how many zones you want, entrances/exits, etc. those will play a role in where to place the FP2.
- Place the FP2 on a wall approximately 4-6 feet (2 meters) off the floor. Be careful of objects that can cause microwave reflections (TVs and floor standing speakers seem to have confused my FP2).
- Consider deadzones of the FP2, as coverage is approximately 120 degrees.
- Be mindful of obstacles in the room such as floor lamps, tall plants, curtains, etc. to make sure the FP2 has clear line of sight to your zone(s) of interest.
- A future firmware update is supposed to make corner mounting easier by allowing you to change the orientation of the grid in the room map. I did one corner setup and it works OK, even if the grid layout looks a bit weird.
- Obviously the FP2 needs an outlet somewhat near by, so take that into consideration. I extended one FP2 on a 10′ Anker USB-C to USB-A cable without issue.
- I’ve read ensuring the FP2 is parallel with the wall is best, as tilting might degrade performance. I can’t verify that myself, but keep that in mind if you have issues.
- If you decide to move the FP2 during or after you build a room map, re-validate all zone placement. Even minor placement changes can result in the need to tweak your room map.
Aqara FP2 Room Mapping Tips
Room mapping can be time consuming and frustrating. But it is absolutely critical to getting the FP2 dialed in and your zones working properly. Do not rush this step, and don’t be afraid to tweak and adjust. If you adjust the position or angle of the FP2 at all, you will likely need to re-tweak your room map.
During my room mapping I had the Aqara iOS app freeze on me MANY, MANY times and thus my position in the room was not updating in real time. If that happens, force quit the Aqara app and then wait 30-60 seconds after you open the room map for your position to settle down. You may also see ghosts in the room, and for now just ignore them. Mine went away after the room map was perfected and I did an absence reset a few times. I also occasionally ran into an issue where the app would not save my zone. I had to back out of the zone setup, lose my work, and start over for that zone. Yes, the iOS Aqara app is super buggy.
Finally, DO NOT EVER use the automatic room mapping feature. It’s bogus. ALWAYS manually walk around your room mapping out objects and edges.
My suggested room mapping process:
- Launch the Aqara app and open the room map for your sensor. Tap on Zone Management. If a wizard pops up, just skip through it without changing any settings. Do NOT do the automated room edge wizard. It does NOT work.
- Tap on New Zone and change the attribute to Edge.
- Walk around the perimeter of the room and fill in the wall outlines. Fill in boxes close to your location standing next to a wall, but leave a little space between your blue dot and the edge square. Better to have a bit of extra space than standing in an edge zone, confusing the FP2.
- Once you map out the entire perimeter, fill in all the squares from your edges outward. This is important, so the FP2 won’t try and place someone outside a wall. Do NOT just do a single square outline of your edges. FILL IN all squares outside of your edge. I have a screens later in this post you can refer to.
- Map out your major objects in the room using stickers. You can resize (to a limit) and rotate objects. Chairs, desks, counters, tables, curtains, etc. are all important. Walk around the room multiple times to verify all the corners/edges are in a good position.
- Finally, add a zone with attribute entrances and exits. Walk to and stand in locations where people would go in and out of the room. This is very important as it tells the FP2 where to expect people to appear and disappear. Add door stickers as needed.
- If you have an open concept floor plan then I suggest going near the boundaries of the range of the FP2 and map out edges and entrances/exits as appropriate.
- Once you have the edge, exits and entrances, large objects mapped out, we can add zones. Add detection zones as needed, for example, on a couch, in a bed, or at your desk. Label these appropriately and use unique colors. Make sure you label the zones.
- Lastly, add any interferences sources. This could be a ceiling fan, for example. Depending on the interference, you might need to move the sensor. If you move it even a foot or two that can throw off the map. So always re-validate all areas on your map if you move the FP2.
- After you are happy with the room mapping, in the upper right corner tap the square and save the room as a template. Enter a name and take a picture of the location of the FP2 for future reference. Exact positioning is key.
- When, not if, you tweak the room map make sure you periodically take a snapshot and make it a template. You can easily delete old templates, or switch back and forth if you want to try different placement of objects. If you ever hard reset the FP2, your map will disappear unless you made it a template. Back it up!
Aqara Home App Fine Tuning Tips
- Exit the room multiple times and ensure that the app clears your presence indicator on the map. If not, you can tap on the three dots in the upper left on the main screen of the room map, select More Settings, then tap Reset next to Reset Absence State. Wait 15-30 seconds before re-entering the room.
- On the same screen as the Reset option in tip #1, you can fine tune various settings such as sensitivity, distance, and working mode. Modify as needed.
- Within each zone you can customize the sensitivity. I used High in my office and that worked very well.
- For each zone you can also customize the type, such as stairs, desk, sofa area, etc. I don’t know if this plays into the FP2 machine learning, but just to be safe I picked the closest option for each zone.
- If you change the orientation of the FP2, power cycle the FP2 so the Aqara app knows to reconfigure for the new orientation.
- The FP2 is supposed to have some machine learning. So you might need to tweak the room map and absence state over the span of a few days. Don’t give up after one day if you have issues. Make small changes and give it time to ‘learn’.
- If you still see ghosts the following day or two, or presence absence detection is slow, use the Reset Absence State liberally. If ghosts persist, this could be due to mmWave reflections. I had to relocate my TV room FP2 to the top of a corner facing down to fix ghosts. When I did this I had to re-build the entire room map from scratch.
- After day 1 of setup, come back the next day and thoroughly exercise your zones and presence/absence detection. Walk in and out of the space multiple times and verify quick response times (my response times are a second or less after fine tuning). Again, use Reset Absence State liberally to train the FP2 if it’s slow to detect an exit or still shows ghosts.
Home Office Example
To give you a concrete example of how to setup a room, I’ll walk you through my home office setup. A photo of the room is below the room floorplan. A few things to take note of:
- The Edge zone covers all of the squares outside of the physical room. This is very important.
- Populating the room with stickers for curtains, lamps, desks, chairs, etc. is important.
- If you want motion/presence to trigger a light, for example, you can setup the zone as a path to your desk so by the time you sit down it has a chance to detect you and turn the lights on.
- Fine tune the entrances/exits by standing in the doorway/area and walk in and out so you can see where the sensor starts to lose you or pick you up.
- You can’t overlap and interference zone on another zone and you can’t give an interference zone any height information. So you can’t tell the FP2 the interference zone is only on the ceiling, in the case of a ceiling fan. You may need to put the FP2 up higher and point downwards a bit if you are unable to correctly position the interference zone.
Below is a photo of my home office. It’s an open concept office with no wall behind the position where I stood to take the photo. The hall entrance is on the right by the computer desk. The stairs to the loft are right behind where I’m standing in the photo. If you want to learn more about my dream home office setup, including a FULL equipment list, check out my post My Dream Desk Setup (2023 Edition).
I placed my Aqara FP2 mid way up on the narrow wall strip between the two windows. This provided wide coverage of my desk and the hallway leading to the office and the stairs going up to the loft.
Home Assistant Zone Configuration
- On the Integration screen in HA click on the presence sensor name in the HomeKit controller tile.
- Click on the Device entry.
- On the FP2 device page click on the sensors and rename as appropriate. One presence sensor will be for the whole room, and if you setup additional zones each one will have a sensor as well. You can walk around the room to map out your zone(s) and see which sensor registers presence. You can then rename as needed. I would also consider renaming entities as well.
- If you wish, update the sensor icon as well.
In the figure below you can see the naming convention I used for all FP2 entities. I followed this strict naming convention across all FP2 devices. Following a strict entity naming convention in HA will pay large dividends in the long run.
Home Assistant Sensor Groups
Depending on your configuration using Home Assistant Sensor groups might be beneficial. For example, if you have a room with multiple sensors or adjacent rooms with sensors in each one that you want to group together, you can easily do that.
These can be found under Settings -> Devices & Services -> Helpers. For presence/motion groups you can chose Group -> Binary sensor group.
I used a sensor group for my loft stairs. I put one zone from the office that is at the foot of the stairs, and a zone from the loft located right at the door into the group. I made this a binary sensor, so that when either “motion” sensor zone went off the loft stairs lights would turn on. The automation then sensed either zone being triggered again and turned off the light. Pretty cool.
Home Assistant Automations
The super cool part about the FP2 is the power of the automations. I haven’t gone too crazy, but here’s an overview of how I setup my office using both the lux and presence sensing:
- I setup a threshold sensor called Office – Is Cloudy. I configured a Lower limit of 600. This will be used across multiple automations, so that’s why I used a helper and not hard coding the lux value in each separate automation. That way I can adjust the LUX threshold in once place an all automations use it. If the lux value is below 600, the binary sensor turns on.
2. I next created an automation that triggers when I sit down at my desk chair, using a FP2 zone. For conditions I restrict it to 1) When I am home and 2) the cloudy threshold sensor is on. I then use the Light: turn on helper to turn on all the office lights.
3. I created another automation that turns off selective lights in my office if the sun comes out and the lux sensor triggers the threshold for more than 5 minutes. I leave my BenQ monitor light and my desk LED strip on all the time when at my desk.
4. I also created another automation that was the opposite, which turns on the office lights if it gets cloudy for more than 5 minutes.
5. I have another automation that is triggered when I leave my office and turns off all lights after being absent for more than 10 seconds.
6. Lastly, as my office is a partially open room with stairs going up to the loft in the corner, I have a Loft Stairs zone configured. So when I approach the stairs the FP2 triggers and turns on the stairs lights if it’s past sunset and before sunrise.
Aqara FP2 vs. Hue Motion Sensor
I’ve relied on a Hue Motion sensor in my office for quite a while. However, I’ve had to tweak my automations because it would often not see motion even when I was typing away on my computer. So I wanted to compare the FP2 presence with the Hue motion sensor.
As you can see in the image below, the Hue motion sensor would very often not see any motion at my desk even though I was sitting there. However, the FP2 was rock solid and didn’t even blip once. Each FP2 clear/detected band accurately reflected when I was sitting at my desk. This allowed me to remove complexity from my lighting automations.
I have seen Youtube reviews that do show blips in presence sensing, mostly in the bedroom during the night. Perhaps placement, sensitivity, and future firmware updates can address this issue. I read that Aqara is working on a sleeping firmware update to better manage bedtime. I have not done any bedroom testing. But in my office, kitchen, and TV room testing the FP2 is nearly flawless, after a properly tweaked room map and good FP2 room placement.
Aqara FP2 Issues
These are the issues I’ve found with the v3.2 Aqara Home app on iOS, and the 1.1.6 FP2 firmware.
- The iOS Aqara Home app will frequently freeze and not show my location in the room in real time. I have to force quit the Aqara app dozens of times while mapping out a new room. The FP2 seems to be OK, as Homekit/Home Assistant still gets real time updates. This seems to be an iOS App problem, not a sensor problem.
- On a few occasions when saving a zone I get a popup error saying the zone can’t be saved. I have to exit creating the zone (losing my zone work), then re-create the zone. This only happend 3-4 times while setting up several rooms.
- Often the FP2 will show multiple people in the room even though there is just one. A lot of room map changes and setting ‘absence’ state when I leave the room does help, but doesn’t totally resolve the problem.
- Each FP2 calls home to USA Amazon/AWS servers exactly every 15 minutes, even though I have NO cloud integrations configured. I’m ONLY using Homekit.
- Automatic room mapping doesn’t really work at all.
- Although the FP2 has a USB-C port, the FP2 does NOT support USB-C power delivery. You MUST use a USB-C to USB-A cable for power. Big design flaw.
- You can’t add “height” information to Interference sources. So if I have a ceiling fan right over a zone (like a couch), I can NOT add the interference zone as it sees the couch as a zone and I can’t say the interference zone is ‘on the ceiling’. So I’m unable to add ceiling fan interference zones.
- Stickers have a maximum size, which often are not large enough. I have a very large couch and also a kitchen island. None of the stickers can be enlarged enough to match the real physical size.
- You can’t rotate the “door” sticker in all the possible orientations, such as which way the door swings.
- Tracking multiple people in a room is VERY buggy.
- Aqara is a Chinese company, and some of the English localization in the iOS Aqara Home app is awkward. One screen still had some Chinese on it.
- I don’t have any pets, but I’ve read reviews that the FP2 is hit or miss on whether it detects pets or not. Aqara is supposed to release a future update to better detect or ignore pets.
- Using the FP2 in the bedroom for tracking sleep zones can be buggy, and doesn’t always detect presence throughout the whole night. Aqara is supposed to release a firmware update to help ix this.
When it works the FP2 is simply astonishing. Once the FP2 is setup and tuned (over the span of 2-3 days), it’s been very solid solid. However, the Aqara v3.2 iOS app is very buggy, with frequent freezing when viewing your live location on the room map. However, even when the app freezes, Home Assistant does get real time presence information so this appears to be an iOS app issue not a FP2 device problem. The app has other bugs as well, such as throwing a random error when saving a zone.
I’ve only tested the FP2 with a single person, and so far, only two zones in a room. I’ve read in forums that the FP2 can have issues with multiple people or a lot of zones in a room. This seems to be an issue that future firmware updates could help mitigate.
During setup I also had to ‘reset’ my absence state in the app a few times or it would think I was still in the room after I had left. However, fine tuning the entry/exit zones and a couple of resets seem to have mostly taken care of that problem. Again, a firmware update would likely help here.
Overall, I really like the Aqara FP2. If Aqara can fix the buggy iOS app that would go a long ways to making the whole experience better. More complex situations such as multiple people, more interference, or a lot of zones might be problematic with current firmware. If you are interested in the FP2 I would first start with a simpler use case and see how it goes. Time and patience is required to fine tune the room map.
Any ideas what to do if the HomeKit controller is not newly discovered? (Off course after removing from Hone app in iPhone)
You might try a factory reset of the FP2, re-add it to the Aqara app, set it up, then remove it from Homekit again. But make sure you save the room as template so you don’t lose your work. The factory reset wipes the room map unless you save it as a template. Homekit relies on multicast, so sometimes IGMP snooping enabled on switches can cause issues. Or, with Proxmox if you have “vlon aware” enabled at the host level that will mess up multi-cast with some physical ethernet switches. Happened to me and I just disabled IGMP snooping everywhere.
Thanks! Could it be that HA is connect via LAN, and therefore not able to scan the HomeKits that are on WiFi?
No. If everything is working properly, it doesn’t matter what’s on wifi and what’s hard wired. It comes down to multicast.
nope, does not seem to work for me. I even tried to reinstall the FP2 with an old Android device that I had to make sure it is not linked to the apple environment, but still not appearing in HA Homekit.
Not sure what to say. I did read on a forum that a person with an Android device wasn’t able to trigger the Homekit HA integration either. Which would make sense, as the FP2 wasn’t provisioned for Homekit but rather for Google home. Are other Homekit devices working on your network? It could be a multicast/IGMP snooping issue. If HA is on Proxmox, that can add complexity for multicast and VLANs that break Homekit functionality.
not sure about other homekit devices, good question. I think I have a couple, but all are connected via different systems. let me check if I could get one of the others to work (but for sure they dont pop up as “discovered integrations”)
Do you need a HomeKit bridge setup in HA for the HomeKit controller to work with FP2?
No. When you remove the FP2 from Apple Homekit, Home Assistant should auto-detect the FP2 with the “Homekit controller” integration (no need to pre-install any Homekit integrations).
Somehow I got it to work. Restarted like 10 time, but I got it now!
thanks for your website and trying to support!
now thinking about the best automations (and buying more of these… 🙂 )
I have one room with 4 zones. In the app I see myself entering all 4 zones. In HA I also have all 4 zones. 3 work fine. But when I enter zone 4. I do see in the app I’m in there, but Home Assistant doesn’t report presence. I already removed and readded this zone. Of course removing it a syncing it again in HA. Anyone any idea?
Hmm..I’m not sure. I’ve done at most 3 zones in one room.
The weird thing is. I made a fifth zone in the same place and that one works.
OK I added my first FP2 using your method, but I have four by now. I deleted them from the HomeKit app on my Iphone. But now they don’t show up. How do I manually add them using the code?
That could be a networking issue. Homekit uses mDNS and multicast traffic. If you are running HA on Proxmox, in particular, if you have VLANs enabled at the bridge level it can cause IGMP snooping issues on physical switches. I had to turn off IGMP snooping on my physical switches to get Homekit on HA/Proxmox working. But that’s not a universal solution, as only some switches have the IGMP snooping issue with Proxmox.
It is running natively on a RPI4. I do have VLANs but everything is in the same VLAN and IGMP snooping is off. But a second and third FP2 should pop up the same way in HA?
I don’t have any Apple devices. I only have android. Is there anyway to add this device to HA if I don’t have access to HomeKit. Thanks for the help and great review!