wakeup end device using pin hibernate and send data

i need to send data from end device to router.when button pressed in end device hardware data is send to router is worked fine,but after a long time end device sleeps.The end device not sending data to router in first wakeup.Can any provide possible reasons for that and please share end device configuration setting in API mode.

Make sure you set SP/SN on your Routers and Coordinators to match the maximum sleep length on your End Devices. It is possible that your End Device is getting cleared from the parent’s child table. When that happens the End Device needs to rejoin the network to find a new parent. This takes longer than a normal wake and likely you aren’t giving it enough time resulted in a failed TX. Once it finds new parent all would work again until a sufficiently long sleep triggers another rejoin.

If there is no maximum sleep cycle (device could sleep for days/weeks) then you might want to still have the XBee wake periodically to refresh its parent so it doesn’t get expired.

i checked Both SP AND SN are same on all router and coordinators,
sleep settings is assigned as
SP=7D0
SN=10E0
SM=0
ST=1388
SO,SW,PO are zero
but have issue.

And your End Devices aren’t sleeping for more than a day? Are they stationary or moving around? Any chance the routers could be going offline forcing them to find a new parent?

The max sleep cycle in end device is 24hr ie, 7D0 *10 ms * 10E0.Which is same as router and co-ordinator.
End device may not manually wakeup,it may sleep more than a day.
should i increase or decrease the SP or SN value is in all device.
End device some time movable.

Your end devices should wake at least once within the SP/SN configuration of your network. The actual timeout is a 3x multiple of your SP/SN configuration but that leaves no margin for error.

https://www.digi.com/resources/documentation/digidocs/90002002/default.htm#Reference/r_extended_sleep.htm