I have several Zigbee devices (temperature sensors, switches, light sensors, …). They are connected to HA via Zigbee2MQTT and I see them sending some information from time to time (even when the state did not change, like for a switch that has not been used for quite some time but still was last seen a few minutes ago.
This “Last seen” time is between an hour and “just now”.
Except for one - a water leak sensor. It has been seen last time a week ago.
First test: put it in “water leak” mode by short-circuiting the sensors. Nothing is reported.
After pressing its button, it reported back (with a battery level of 100%) and the water leak test was successful.
This worries me somehow, especially for a device such as this one. As a workaround, I will add to my monitoring a check on the “last seen” of these devices but as a general question: how often should a Zigbee device call home to report its state?
I think it depends on the device and the kind of thing it reports. So like a motion sensor will likely report many more things than just motion (battery, light level, temperature etc), so it will report motion as and when it detects it, and probably has a threshold for how much the temperature and battery it will report in-between motion events.
I would certainly be expecting your water leak sensor to be reporting more than once a week though. In fact I would be expecting an update every couple of hours at the longest.
Sounds more like the device dropped off the network and couldn’t get back on, which you’ve now rectified by pressing the button and effectively forcing it to reconnect. This can sometimes happen (particularly with battery operated devices) if the device itself or the device it was connecting to is moved, as some devices will pick their route when they first connect and won’t look for another route until they’re reset.