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.

CC3120: Listen Interval sent in the Association request

Part Number: CC3120

Tool/software:

HI TI Team,

  I have a query on the handling of listen interval parameter on CC3120. Here is the application flow.

Establish connection to access point, fetch the Ip address and the once this is successful, set the MaxSleepTimeMs using the sl_WlanPolicySet() API to  value  600ms. This will be done post connection to the access point and after fetch of IP address.

When we took a Wireshark trace of the wireless traffic we found that the association request sent by our device is setting the listen interval parameter to 0x03. Later when we change the 

MaxSleepTimeMs we actually don't see any updates to listen interval sent to the router. 
Here are the questions we have:
1. Why is the chip sending the 0x03 as the listen interval parameter during association?
2.After we change the MaxSleepTimeMs  parameter, how is the listen interval being interpreted? Is this value taking any effect from the  routers perspective?
3.Does the listen interval parameter sent to router have any correlation with the MaxSleepTimeMs or how is MaxSleepTimeMs  being handled by the chip?
 
Thanks
  • Hi,

    Where did you take the listen interval from? it is not transmitted in association request to the AP.

    I assume you refer to the LONG_SLEEP_INTERVAL feature, right?

    If so, LSI feature does not involve the AP at all. It is based on the beacon interval and DTIM interval from the AP and calculates when to wake up for beacon (and DTIM) recption.

    As example, if you set to 600mSec and the AP uses beacon interval of 102.4mSec and DTIM period of 2 beacons, it means that you would be able to get 2 DTIMs in 600mSec (the 3rd DTIM would pass 600mSec since it is 614.4mSec).

    Regards,

    Shlomi

  • Hi Shlomi, Thanks for the response.

    I was able to see the listen interval in the wire shark trace of association request. I believe that's the only frame in which client device sends it listen interval to the router.

    Yes, I am talking about the long sleep interval here but for the implementation to function properly, I believe the router is going to buffer the unicast packets for listen interval period shared by the device in its association request. So if we have send the association request with LI -3 and if we keep the client wake interval as 600ms then there are chances where the router may not buffer the packets for us until we read it.

    Regards,

    Soundarya

  • Hi,

    The listen interval on the association request is is used to indicate to the AP how often a STA in power save mode wakes to listen to Beacon management frames. An AP may use the Listen Interval information in determining the lifetime of frames that it buffers for a STA. I didn't see any issues with this number and usually it would take much more for the AP to discard frames.

    I would not worry about setting LSI to 600mSec.

    Shlomi

  • Hi,

    Okay, that makes sense. What is the max listen interval value we can possibly use? I agree that 600ms is quite small but is there a max limit that we can set to safely avoid loosing buffered data from router?

    Soundarya

  • Hi,

    from our IOP lab tests we did, we noticed that up to 2 seconds should be fine.

    using larger numbers may cause some APs to de-authenticate the stations.

    Regards,

    Shlomi

  • Hi Shlomi, Thanks for you responses. Is there any plan to update this listen interval value sent in the association request going forward or will it be set to 3 as it is not causing any issues?

    Soundarya

  • there is no plan to change it as APs do not really use it.

    If you are using Long Sleep Interval API and wake up every few DTIM beacons, it is all proprietary implementation and the AP is not aware of it.

  • Thank you. This answers all my questions.