Hi everyone,
I’ve already raised this in the Zigbee2MQTT repo on GitHub, but I’m still looking for others who see the same behaviour, or, better yet, have a solution. The more I dig into it, the less it looks like a Z2M problem and the more it looks like a Sonoff problem. So I thought this forum would be more appropriate than the Z2M Repo.
I bought a batch of 44 Sonoff SNZB-04PR2 contact sensors, hoping to finally get rid of the IKEA window sensors that have caused nothing but trouble.
Three problems keep coming up.
1. Missed updates at lower LQI: Below an LQI of roughly 100, you are lucky to get an update at all after a longer period of inactivity. After that, it remains VERY responsive for a while.
2. Multiple reports when the magnet slides past the sensor:
If the magnet does not move straight away from the sensor but slides along or past it, the sensor reports several times in a row and, in the worst case, ends up stuck in the wrong state.
3. Wrong contact state: You open the door, the sensor sends an update and reports the door as still closed.
On the positive side: pairing works really well, the devices stay on the network instead of dropping off, and battery life looks stable for the short time I have been testing. All of that is still infinitely better than the IKEA sensors.
I run two separate Home Assistant systems with different coordinators, a Sonoff P and an SLZB-06p10. Both Zigbee2Mqrr and both show the same behaviour.
Problem 1 in detail
This one is hard to demonstrate. If nothing comes in, nothing comes in.
Problem 2 in detail
I recorded a short video: https://youtu.be/FH2OD0Sem2g
The orientation of the sensor relative to the magnet makes no difference. At 1:07 you can see me changing it, and I tested further orientations off camera with the same result every time.
Why this matters: if the magnet sits on a window frame, you can close the window and the sensor will still show it as open. Or you get so many messages that the actual “window is open” event is buried among them.
What makes it worse is that exactly this type of installation is shown on the Sonoff website.
The installation on the right can lead directly to that problem:
Problem 3 in detail
Yesterday I opened my garage, which has one of these sensors on it. No notification arrived, and I assumed the sensor had simply stayed quiet again. When I checked the Zigbee2MQTT log shortly afterwards, I saw that it had in fact sent something, namely that the garage door was still closed.
For reference: contact: true = closed, contact: false = open.
- 15:37:25 — garage opened, sensor reports
contact: true - 15:42:10 — garage closed, sensor reports
contact: true - 15:42:14 — garage opened again, sensor reports
contact: false(notification received) - 15:42:30 — garage closed again, sensor reports
contact: true
So the open event at 15:37:25 was reported as closed and never corrected until I opened the door a second time.
[2026-08-08 15:37:25] info: z2m:mqtt: MQTT publish: topic 'zigbee2mqtt/GarageDoor', payload '{"battery":100,"battery_low":false,"contact":true,"last_seen":"2026-08-08T13:37:25.869Z","linkquality":61,"tamper":false,"update":{"installed_version":4097,"latest_release_notes":null,"latest_source":null,"latest_version":4097,"state":"idle"},"voltage":3200}'
[2026-08-08 15:42:10] info: z2m:mqtt: MQTT publish: topic 'zigbee2mqtt/GarageDoor', payload '{"battery":100,"battery_low":false,"contact":true,"last_seen":"2026-08-08T13:42:10.468Z","linkquality":65,"tamper":false,"update":{"installed_version":4097,"latest_release_notes":null,"latest_source":null,"latest_version":4097,"state":"idle"},"voltage":3200}'
[2026-08-08 15:42:14] info: z2m:mqtt: MQTT publish: topic 'zigbee2mqtt/GarageDoor', payload '{"battery":100,"battery_low":false,"contact":false,"last_seen":"2026-08-08T13:42:14.868Z","linkquality":65,"tamper":false,"update":{"installed_version":4097,"latest_release_notes":null,"latest_source":null,"latest_version":4097,"state":"idle"},"voltage":3200}'
[2026-08-08 15:42:30] info: z2m:mqtt: MQTT publish: topic 'zigbee2mqtt/GarageDoor', payload '{"battery":100,"battery_low":false,"contact":true,"last_seen":"2026-08-08T13:42:30.149Z","linkquality":65,"tamper":false,"update":{"installed_version":4097,"latest_release_notes":null,"latest_source":null,"latest_version":4097,"state":"idle"},"voltage":3200}'
All sensors are on firmware version 4097.
So here I am with a pile of sensors that report when they feel like it, or simply report the wrong thing.
Does anyone else run these sensors and see the same problems, or have experience to share?
Have a great Sunday,
Andre
