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.

RTOS/CC2642R: power consumption while slave latency is on

Part Number: CC2642R

Tool/software: TI-RTOS

Hi TI BLE team,

We are checking the power consumption on FOB(peripheral device) with the below conditions.

By the way, there are no big differences between different slave latencies.

I confirmed that the response status of connection parameter update request. You can see the log data through attached log data and pictures below.

Current SW is based on TI SDK simplelink_cc26x2_sdk_2_20_00_36 and POWER_SAVING mode is on.

Even though two devices are in a connection state and connection events continue to occur, I thought that the power consumption should be different according to the slave latency.

Why no big differences at all?

If any, let me know.

Through analyzer, we can confirm that the slave latency operation works.

 8117.slave latency check.zip

With kind regards,

Ji Won Lee

  • Hi Ji-won,
    Have you tried with the latest SDK? You should be able to see an improvement beyond what you are measuring. What equipment do you measure with?
  • Hi Joakim,

    Does it mean that there is some improvement on the latest version with respect to the slave latency?

    a new SDK(simplelink_cc13x2_26x2_sdk_3_10_00_53) or simplelink_cc26x2_sdk_2_30_00_34 SDK?

    which one?

    Thanks in advance,
    Ji-won

  • Hello Ji-won Lee,
    How do you set the slave latency?
    Have you captured a sniffer log (over the air traffic) to verify what the connection parameters actually are?
    The Master will decide the actual connection parameters and may choose to override the slave desired settings.

    simplelink_cc13x2_26x2_sdk_3_10_00_53 is the latest SDK for the release silicon (rev. E).
    simplelink_cc26x2_sdk_2_30_00_34 is the latest sdk for the pre-production evaluation device (rev. C).

    e2e.ti.com/.../767769
  • Hi Eirik,

    You can find the zip file of BLE analyzer log data from my 1st post.

    Regarding the slave latency configured, I attach again with a picture instead of excel sheet table to see easily. And slave latency configuration is mentioned on the table with yellow color I posted.

    And, I confirmed that the slave latency and connection interval changes from peripheral device side work well.

    And Master side didn't override it because master just accepts. Just so you know, when more than 1 peripheral device are connected with master side, it will be override.

    Also, as you can see, there are no big differences in terms of power consumption between different advertising intervals conditions without connection state.

    I already know what SDK is the latest one for each chipsets revision. I just would like to check if the latest SDK Joakim said has an improving thing with respect to the power consumption issue linked with slave latency.

    What should I check for more ? just upgrading to the latest SDK environment?

    Regards,

    Ji-won

  • Hello Ji-won Lee,
    How are you measuring? What type of equipment do you use? There could be an issue with accuracy in the instrument used.
    I checked the sniffer log and can confirm that the slave latency is set to 50 as you described.
  • our HW engineer used Fluke multi meter and Agilent DC Power Analyzer to measure the current consumption of the fob.

    Thanks,
    Ji-won
  • Hello Ji-won Lee,
    Have you enabled only a single advertising set or are both legacy and long range advertising enabled?
    advHandleLegacy
    advHandleLongRange
  • Thanks Eirik,

    as I already mentioned on the above table, they were checked with legacy advertising mode under only 1Mbps PHY.

    Thanks again,

    Ji-won

  • So this is not called anywhere in your code? (enabled and re-enabled by default in simple_peripheral):
    status = GapAdv_enable(advHandleLongRange, GAP_ADV_ENABLE_OPTIONS_USE_MAX , 0);

    If not I will find a power analyzer and do some tests on simplelink_cc26x2_sdk_2_30_00_34.
  • yes, it is called when connection establishment event gets occurred.

    if (U8_NoOfConnectedDevices < MAX_NUM_BLE_CONNS)
    {
    /* Start advertising since there is room for more connections */
    GapAdv_enable(advHandleLegacy, GAP_ADV_ENABLE_OPTIONS_USE_MAX , 0);
    GapAdv_enable(advHandleLongRange, GAP_ADV_ENABLE_OPTIONS_USE_MAX , 0);
    }

    by the way, the GapAdv_create() is not called for the advHandleLongRange.

    Do I need to disable or delete the instruction with advHandleLong ?

    Regards,
    Ji-won

  • it's still same situation without the "GapAdv_enable(advHandleLongRange, GAP_ADV_ENABLE_OPTIONS_USE_MAX , 0);"

    Thanks,
    Ji-won
  • Hi Eirik,

    Coudd you double-confirm if the power consumption really varies according to slave latency and advertising interval on simplelink_cc26x2_sdk_2_30_00_34?

    Thanks in advance,
    Ji-won
  • Hi Eirik,

    I added GPIO toggle to check if the power saving mode(stand-by mode during advertising or connection state) works well or not.

    So, after POR, it will get high in main(), whenever entering power saving mode, it will get low and high shortly in PowerCC26XX_standbyPolicy() in PowerCC26X2_tirtos.c.

     

                    /* go to standby mode */  

                      TurnOffGPIO(0);

                    Power_sleep(PowerCC26XX_STANDBY);

                      TurnOnGPIO(0);

     

    I can capture the timing as per adv interval. They match with the adv interval, but, one pulse between the intervals is ticked, I need to understand why it is kicked off. please refer to red star.

  • Hi Eirik,

    Our HW engineer checked at wrong points, so I will close this question.

    Thanks for your concerns.

    Ji-won