How long Sleepy End Device keeps RX On after sending DataReq and receiving Ack from Coordinator?
Is the timeout adjustable?
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
Hi Alex,
Please refer to IEEE802154_MAC_ACK_WAIT_DURATION (symbols) from mac_settings.h, the default is 54 which equates to 864 us. It is not recommended to change this setting.
Regards,
Ryan
ok, it is time to wait for ACK, but I meant the time when ZED is waiting for new data from ZC. For example:
In this sniffer log we see that ZED sent Data Request and obviously that it turned RX On for some time to receive new data from the coordinator. Then ZC sent the new data and it took about 2.7 ms. And then ZED turned RX Off.
But let's imagine that ZC sent ACK, but didn't send "ZCL: Default Response". So the question is how long ZED could stay in mode RX ON after sending Data Request?
Added: In the next pair of packets "Data Request" and "ZCL: Default Response" we see that the transaction took about 4.3 ms. What max response delay is allowed? When does ZED stop waiting for the response?
Thanks for clarifying, this would be the responseWaitTime in zstackstartup.c which sets the MAC_RESPONSE_WAIT_TIME PIB attribute. You can also view the MAC_2P4G_RESPONSE_WAIT_TIME notes, both are default 16 symbols which using the definitions from mac_util.h for BASE_SUPER_FRAME_DURATION and SYMBOL_DURATION_250_kbps equates to 16*16*960= 245.760 ms
Regards,
Ryan