These devices are sent the default configuration like switches, sending reports at 5 minute intervals.
I would like to see the pairing logs to see if it is accepted by the device.
In case anyone is interested, this is my experience. I have spent a lot of time looking may logs, firmware lua zigbee libraries and trying with several devices to understand a little about the offline and online process on zigbee devices and I have managed to identify two different cases.
This was the case until recently, but may have changed at any time without notice.
As an example, for devices that have configured some attribute with reports of maximum intervals of 5 minutes:
If the device remains offline after about 23 minutes, the reports are not received every 5 minutes, but if the sensor opens or closes, it will be marked online:
When no reports are received from the attribute for 1.5 times the configured interval, (about 8 minutes), then the Health check is started and the attribute is read every 8 minutes for a response.
If the reading is not answered twice, 16 minutes, it is marked as offline and the attribute continues to be read indefinitely or until a message from the attribute is received, then it is marked online and the process is reset.
If a message is received from another attribute, battery for example, then it is also marked online but the health check process continues for the attribute that does not answer and it will be marked offline again after the established time.
In these cases, it is not a signal problem, it is a configuration not accepted by the device.
This is the case with some Sonoff sensors, they do not accept the IASZone configuration (300 sec interval) and the solution is to configure the battery attribute to report at intervals less than 12 minutes, the stock driver configures it every 10 minutes. But you have to pair it directly with the stock driver, a driver change is not worth it
Something similar also happens to some TS0207 water detectors or some Heiman smoke or CO sensors.
If device is marked offline and it is not return to online again when the sensor is opened or closed, then it is more of a zigbee network problem, weak signal, … and it should be possible to solve it with zigbee repeaters or rebuilding the zigbee mesh
Reviewing the data I had, zigbee devices powered by external energy, light bulbs, plugs, switches are marked Offline after 20 or 25 minutes without receiving messages.
Zigbee devices powered by battery, smoke, contact, fingerbot, … are marked Offline after approximately 2 hours 30 minutes without receiving messages from the device
For zwave devices, I do not understand what the offline marking process is, since the externally powered devices do not send periodic reports and are not read it periodically, they are only read after a command is sent to device or a refresh command is performed and their status is updated.
The battery-powered zwave devices have a wakeUp interval established, and it can be understood that this interval is taken into account to mark it offline.
What I have noticed is that some zwave devices that are working fine, if I change the driver, for example to zwave thing, when you go back to the original driver they start to be marked offline and they are marked online when wake it up or do some action on it.
The solution, exclude it and pair it directly with the driver again.