About the function "LatencyCheck" in sdr_mac_rx.c RRS feed

  • Question

  • In sdr_mac_rx.c, MAC will call "LatencyCheck" function when receive a data packet. In this funciton body, if (DecodeTime<ACK_MIN_TIMEOUT + SendTime), it will then call "SoraSpinSleep" to delay some microseconds. However, I have two questions in there:

    1.  SoraSpinSleep's first parameter is 2 or 3 us, that means sleep only 2 or 3 us, but it finished at about 9 ms later. Why?

    2. Which thread will sleep for some time by callig "SoraSpinSleep", "LatencyCheck" or others?

    Thanks, and Happy New Year for all


    Friday, January 6, 2012 8:55 AM


  • Hi,

    1. Thanks for your information. I think the code is correctly programmed. I will figure out what really happended inside.

    2. The state machine thread invokes SoraSpinSleep and LatencyCheck. It receives the packet and responses the ACK directly.


    Saturday, January 14, 2012 4:12 AM