FP300 Zigbee Firmwareupdate 0.0.0_6542: PIR/Presense States not cleared after hours of runtime

I recently updated two of my five units of Aqara FP300 from Zigbee Firware 0.0.0_5841 to 0.0.0_6542.
On both units after frequently a few hours of runtime i noticed PIR/Presense States to become stuck and not getting cleared even though rooms are empty. Also temperature/humidity/brightness reporting basically become stuck or very infrequent at best.
Resetting/Repairing is required to recover from this failure state.
No addtional changes have been made. With previous Firmware 0.0.0_5841 this issue was non-present

Seeking for help. As for now i setup an automatic 8 hours reset cycle through Home Assistant hoping to mitigate the issue as otherwise the sensors are basically useless.

Zigbee Coordinator: Home Assistant Connect ZBT-2
Zigbee2MQTT-Version: 2.10.1
Home Assistant (Container) Core: 2026.6.0.dev202605220320

2 Likes

Hi there, we’ll look into this issue shortly. Our support will reach out to you via email later.

4 Likes

hey micharambou - The stuck-presence bug is confirmed across several units in thread #297977, and the release notes for 6542 (item 4: “optimized logic for unoccupied determination period”) acknowledge something was wrong with unoccupied detcetion logic. At least one user had an RMA issued for a replacement unit.

As I understand it, infrared detection automations are “not available in radar-only mode.” If the latest FW accidentally pushed units into radar-only mode, that would explain why infrared states stop clearing. Can you check if your units are still in dual mode?

I also use my FP300s with Zigbee protocol and being fed into HA via M300 hub. Instead of the 8 hour reset, you could watch for the presence entity being stuck in “detached” for like 2+ hours and then trigger the device restart rather on a fixed schedule. Less disruptive and more targeted approach (your automation seems to work fine so just a suggestion).

1 Like

I just received 12 FP300 sensors and hitting this issue, what the ETA for the fix?

It’s an issue with Z2M.

Read this Reddit comment or the whole thread. Looks like they are already working on it.

I had to fix my SmartThings driver for the Aqara FP300 as well and now it works flawlessly. The new firmware is actually more standard conform than the old one.

There is a new development.

Two days ago i migrated all my smarthome related services from a docker environment hosted on a Raspberry PI 4b to a PVE Environment on more scaleable hardware components. This migration included the following changes:

  • Home Assistant (Container) Core: 2026.6.0.dev202605220320 → Home Assistant OS Core 2026.6.0.dev202605220320
  • Zigbee2MQTT-Version: 2.10.1 → Zigbee2MQTT-Version: 2.11.0

I expected the issue to reoccur within no more than 24h hours after migration. However - to my surpise - as of today, the whole system remained completely error free. Note that mitigation measures (8 hours reset schedule) have been disabled since migration.

All of that is great but also makes me wonder, which change actually contributed to this development.
While HA version remained unchanged i suspected the version change of Z2M 2.10.1 to 2.11.0. However, browsing through the release notes i cannot identify a single related commit note.

I’ll keep an eye on this

1 Like

I’m experiencing a similar issue although I’m not using Z2M but HomeAssistant (Docker) + ZHA. What is different in my case, I can’t say that temperature/humidity/brightness are stuck too, only occupancy.

On the image you can see that temperature does change while occupancy doesn’t.

I use one FP300 at the moment to understand how well it works in my environment and so far I’m not that happy. The firmware is up-to-date as I installed it on May 23rd, and the Aqara app flashed the latest one that was available that day during switching the sensor to a Zigbee protocol.

The sensor is installed in a bathroom and I ensured no mirrors or moving appliances could trigger false positives, but still observe the issue a couple of times a day. I have enabled AI adaptive features and excluded some ranges to avoid false detections since the beginning, but they don’t help.

When occupancy gets stuck, I don’t touch the sensor and it self-clears in hour or two, sometimes faster (30-40 mins).

Perhaps ZHA needs to implement some workarounds too to get off of this issue.

1 Like

ZHA and Z2M need to fix it, just like I had to in the SmartThings driver. It won’t resolve on its own, so someone should submit a bug report/issue.

I don’t agree entirely yet. As for now, it’s not even clear yet if the described issue is on the zha/z2m side.
Keep in mind, that - opposing to other failure reports in this or external communities - the “stuck pir/presence states” usually occur after a few hours of error-free runtime.
Also note, that - at least in my case - since smart-home service migration, which at present was six days ago and included the update to Z2M 2.11.0 the issue is completely gone. Even though not a single note in the Z2M release notes mention something related. I’m still missing a valid explanation for that and would appreciate, if someone could enlighten me.

My FP300 is extremely reliable now - no issues anymore.

By the way: the FP300 firmware update didn’t change the presence or motion attributes themselves. From my testing, the important Aqara/Lumi attributes are still there and still readable:

0xFCC0 / 0x0142 = presence
0xFCC0 / 0x014D = PIR motion

The problem seems to be that after the newer firmware, the device no longer reliably sends automatic reports for these manufacturer-specific attributes unless reporting is explicitly configured.

That explains the behaviour perfectly: manual reads still work, refresh still works, temperature/humidity/lux still work, but presence or motion can get stuck because the integration is waiting for reports that never arrive.

The fix in my SmartThings driver was not a timer workaround. I had to explicitly bind and configure reporting for the Aqara manufacturer cluster:

Cluster: 0xFCC0
Manufacturer code: 0x115F

Configure reporting:
0x0142 presence
0x014D PIR motion

Type: Uint8 / 0x20
Min interval: 0
Max interval: 300
Reportable change: 1

After doing that, the device started sending real attribute reports again, and presence/motion updates worked live instead of only after refresh.

So in my opinion, ZHA and Zigbee2MQTT need to make sure their FP300 support does the same thing:

Bind 0xFCC0 / manuSpecificLumi to the coordinator
Configure reporting for 0x0142 and 0x014D
Use manufacturer code 0x115F
Handle both read responses and attribute reports

For ZHA, this probably belongs in the FP300 quirk.
For Zigbee2MQTT, this belongs in the device “configure()” logic for the FP300 converter.

There is also a separate battery issue. The new firmware seems to report confusing battery values: standard Zigbee battery reads as “0”, while Aqara’s manufacturer value may show something like “12”. Aqara’s own app still says the battery is full, so that raw “12” should not simply be displayed as “12%”.

So the real issue is not that the device is “unsupported” or that the attributes are gone. The firmware appears to require explicit manufacturer-specific reporting configuration now. Without that, integrations can still read the values - but they don’t reliably receive live updates.

1 Like

Mine as well. Even without any applied workarounds. Why is that?
Don’t get me wrong. I understand your explanations and applied workarounds. But I still believe, we are talking about different - yet similar - issues. Yet it still might be just some misconception on my side though

I checked the current upstream work, and the specific Zigbee2MQTT / zigbee-herdsman-converters fix for this problem appears to be a separate open PR. The proposed fix is to bind “manuSpecificLumi” and explicitly configure reporting for:

0xFCC0 / 0x0142 = presence
0xFCC0 / 0x014D = PIR detection
manufacturer code 0x115F
type UINT8 / 0x20

That is exactly the same fix I had to add to my SmartThings Edge driver. Before that, manual reads worked, but live reports were unreliable or missing. After configuring reporting for these two manufacturer-specific attributes, the device started sending proper autonomous reports again.

So my guess is that your migration changed one or more surrounding conditions, for example:

  • the device was reconfigured or re-interviewed,
  • Z2M recreated parts of the reporting setup,
  • the new environment has better timing / less load,
  • or the device simply got into a clean state after the migration.

That can absolutely make the issue disappear for a while.

The important thing to check would be the “database.db” entry for the FP300. If the fix is really active, I would expect to see configured reporting for manufacturer cluster “0xFCC0” / “64704”, specifically attributes “322” and “333”:

{“cluster”:64704,“attrId”:322,“minRepIntval”:0,“maxRepIntval”:300,“repChange”:1,“manufacturerCode”:4447}
{“cluster”:64704,“attrId”:333,“minRepIntval”:0,“maxRepIntval”:300,“repChange”:1,“manufacturerCode”:4447}

If those entries are not there, I would still consider the system “currently behaving” rather than “definitively fixed”.

In short: great that it works now, but I would still keep an eye on it. The firmware did not remove the attributes; it seems to require explicit reporting configuration for the Aqara manufacturer-specific presence and PIR attributes now.

1 Like

Yes PR12383 is not merged into master yet

Absolutely.

In regards of the z2m migration i setup an “empty” z2m instance in an lxc and restored a previous backup from pre-migration. So i’d assume, re-interviewing and corresponding reconfiguration might be triggered by that.

No i don’t think so. I just compared current Reporting configuration tp pre migration reporting configuration - looks equal to me.

However, i do see regular attributeReports in z2m logs in my current setup.

Jun 08 18:12:39 zigbee2mqtt pnpm[426]: [2026-06-08 18:12:39] debug: z2m: Received Zigbee message from 'FP300_WZ', type 'attributeReport', cluster 'manuSpecificLumi', data '{"322":0,"333":0}' from endpoint 1 with groupID 0
Jun 08 18:16:17 zigbee2mqtt pnpm[426]: [2026-06-08 18:16:17] debug: z2m: Received Zigbee message from 'FP300_WZ', type 'attributeReport', cluster 'manuSpecificLumi', data '{"322":1}' from endpoint 1 with groupID 0
Jun 08 18:16:36 zigbee2mqtt pnpm[426]: [2026-06-08 18:16:36] debug: z2m: Received Zigbee message from 'FP300_WZ', type 'attributeReport', cluster 'manuSpecificLumi', data '{"322":0,"333":0}' from endpoint 1 with groupID 0
Jun 08 18:18:03 zigbee2mqtt pnpm[426]: [2026-06-08 18:18:03] debug: z2m: Received Zigbee message from 'FP300_WZ', type 'attributeReport', cluster 'manuSpecificLumi', data '{"322":1}' from endpoint 1 with groupID 0
Jun 08 18:20:40 zigbee2mqtt pnpm[426]: [2026-06-08 18:20:40] debug: z2m: Received Zigbee message from 'FP300_WZ', type 'attributeReport', cluster 'manuSpecificLumi', data '{"322":0,"333":0}' from endpoint 1 with groupID 0
Jun 08 18:23:14 zigbee2mqtt pnpm[426]: [2026-06-08 18:23:14] debug: z2m: Received Zigbee message from 'FP300_WZ', type 'attributeReport', cluster 'manuSpecificLumi', data '{"322":1}' from endpoint 1 with groupID 0
Jun 08 18:24:26 zigbee2mqtt pnpm[426]: [2026-06-08 18:24:26] debug: z2m: Received Zigbee message from 'FP300_WZ', type 'attributeReport', cluster 'manuSpecificLumi', data '{"322":0,"333":0}' from endpoint 1 with groupID 0

It might be worth to check post migration logfiles

This might be one of the main culprits in the first case. However, i don’t have enough metric data to prove that which bugs me a bit… but well.

Hi there, it looks like you’re experiencing a support-related issue. We’ve automatically created a support ticket for you and will reach out via the forum email within the next two business days.

If other members have any suggestions or insights on this topic, feel free to share!