dw1000 reception issue

[size=small][font=Courier New]Hi,[/font][/size]
[size=small][font=Courier New]We are using DW1000 chips connected to host STM32l152 (arm cortex m3). Under normal operation, we send and receive data between devices which works good. The issue is seen when we send data from a transmitter who is in “always on” mode (no sleep), to a receiver who comes out of Standby mode of STM32l152. It is as explained below.[/font][/size]

[size=small][font=Courier New]Receive device is in low power Standby mode with a periodic wake-up after every 2 seconds which is configurable (wake-up from standby mode of the STM is through system reset). Upon wake-up it transmits broadcast data (called Blink), after which it enables its receiver for 10ms. Now, from the Transmit device, on receiving the Blink, we would send data (eg, information requests) to the receive device within the 10ms window, to which the receive device responds with the correct information. Hence now every 2 seconds the receive device wakes up and sends a blink to which the Tx device sends data requests and receive device responds with requested data.[/font][/size]
[size=small][font=Courier New]However it is seen that this process works well only for about 30seconds of power reset. So within about first 30seconds of operation, the Rx device responds to the received data requests from transmit device (who transmits the data request upon reception of Blink). After this it always fails. It is to be noted that in this 30seconds, on the receiver there would be multiple Blinks transmitted and each time it would have been a system reset. This behaviour is observed irrespective of the Blink interval rate of the low power device or the number of data requests we send from the transmit device.[/font][/size]

[size=small][font=Courier New]In each system reset, the DW1000 chip is also reset and configured. The DW sleep is being configured as “dwt_configuresleep( 0, DWT_WAKE_CS | DWT_SLP_EN );”. The behaviour of code seen on the low power device, when failing, is that the code goes into the “Tx confirmation event” instead of the “RX good event frame” in the “dwt_isr()” function![/font][/size]
[size=small][font=Courier New]Now, we have a workaround for this where we are introducing a nominal delay of about 1.7ms from the transmitting device once it receives the Blink from the low power device. With this delay added, the system works. But we are trying to find out any possible reasons for the above failure mode (i.e, without the need for this delay), as it is confusing that it works well for an initial time (approx around 30sec) of power-on reset. Any ideas as to why this behaviour would help.[/font][/size]
[size=small][font=Courier New][Also this works ok if the receive device is in Stop Mode of the STM uC, instead of Standby mode of the STM uC - Stop mode does not initiate system reset as part of wake up.][/font][/size]

[size=small][font=Courier New]Thanks very much in advance.[/font][/size]