Because of the holidays, TI E2E™ design support forum responses will be delayed from Dec. 25 through Jan. 2. Thank you for your patience.

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.

CC2650 - simple ble peripheral getting 3-4mA static current with power saving turned on

Other Parts Discussed in Thread: CC2650, SYSBIOS
Hi there,

We get a fairly high static current on CC2650 (chip id 2550 XC41 AYC2 G4) using Simple BLE peripheral (with the modification recommended in SWRA478. This measurement is done on SmartRF06 + 7ID evaluation board.

Here is what we've done:

1. comment out Util_startClock(&periodicClock);

2. Remove TI_DRIVERS_LCD_INCLUDED define.

3 define DEFAULT_ENABLE_UPDATE_REQUEST FALSE

(power saving is defined) and the default power saving policy is untouched as follows:

var Power = xdc.useModule('ti.sysbios.family.arm.cc26xx.Power');

/* Enable idle task (default). */
Task.enableIdleTask = true;

/* Idle CPU when threads blocked waiting for an interrupt */
Power.idle = true;
Power.policyFunc = Power.standbyPolicy;

Then compile the project using the following setup:

CC26XXWARE = C:\ti\tirtos_simplelink_2_13_00_06\products\cc26xxware_2_21_01_15600

ORIGINAL_PROJECT_ROOT = C:\ti\simplelink\ble_cc26xx_2_01_00_44423\Projects\ble\SimpleBLEPeripheral\CC26xx\CCS\SimpleBLEPeripheral

TI_RTOS_DRIVERS_BASE = \tirtos_simplelink_2_13_00_06\packages

XDC: 3.31.1.33

We get a DC component of 3.5mA + tx/rx current spike when all jumpers are removed.

The way we measure it is slightly different from the application note as the amplifier U504 is not fitted on the RF06 board  we received. So we just used 10 ohm resistor to connect the 2 pins of VDD-EM jumper and then use a cro to measure the voltage on the resistor.

We check the following threads:

e2e.ti.com/.../1558855

e2e.ti.com/.../1486919

The following register values are observed:

AUX_DDI0_OSC.CTL0.SCLK_LF_SCR_SEL = 0x3 (XOSC_LF)
AUX_DDI0_OSC.STAT0.SCLK_LF_SRC == 0x3 (XOSC_LF)

in ccfg.c the folowing config is used:

#define SET_CCFG_MODE_CONF_SCLK_LF_OPTION               0x2        // LF XOSC
//#define SET_CCFG_MODE_CONF_SCLK_LF_OPTION            0x3        //  LF RCOSC

Questions are:

1. is the above register value as expected? [Note using 0x3 for SET_CCFG_MODE_CONF_SCLK_LF_OPTION makes no difference].

2. Do you have a specific version that current measurement works as expected or does it work across all releases (rtos+cc26xx aware)? If not all works, do you have a combo that works for sure?

3. What else could we have missed so that we cannot get the measurement right?

We tried on our own dev board (without connecting any GPIO pins but with 4x4 form factor) and got similar result. That's why we switched to RF06 and surprisingly find it also has high static current.

Your kind help is greatly appreciated.

Regards,

Lichang

  • Hi,

    1. is the above register value as expected? [Note using 0x3 for SET_CCFG_MODE_CONF_SCLK_LF_OPTION makes no difference].

    Yes, the register setting is expected and it will make difference if the device actually goes into sleep. With using XOSCLF [SET_CCFG_MODE_CONF_SCLK_LF_OPTION = 0x2], you got average current consumption 10uA. if you swtich to RCOSCLF as SCLK_LF_OPTION, you got slightly more current(still in uA range), but please be aware that using RCOSCLF as SCLK_LF_OPTION is only supported in PG2.3.

                   2. Do you have a specific version that current measurement works as expected or does it work across all releases (rtos+cc26xx aware)? If not all works, do you have a combo that works for sure?

    Yes, we measured on both our BLE 2.0 stack and BLE 2.1 stack, and both give us the expected result. average current 10uA for 1 second connection event. Can you show the plot. It sounds to me that the device did not go into sleep. 

  • Also, make sure that you have power cycled the board after disconnecting the debugger. Otherwise the device will not go fully into standby.
    We have done these measurements a large number of times on the SmartRF06EB +CC2650EM_7ID so it should work fine out of the box.

    Are you able to share the power plots in a post?

    Thanks,
    Svend
  • Thanks for the quick replies.

    I believe TI must have measured this many times but I need to figure out what I've done wrong both on our dev board and on RF06+7ID. More likely I would say it is the configuration / building of the firmware. 

    I agree that it may not have gone into standby at all. Here is a quick snap shot of the measured waveform for advertisement.

    I did power cycle the board after flashing.

  • This plot is the one on the dev board which has 1-2mA static current (4XS).

    Power plot measured on 7ID is similar but with higher current 3-4mA.

    Thanks,
    Lichang
  • Lichang,

    A good thing to test to rule out SW issues would be to remove everything from main() except for BIOS_start(). This way, only the TI RTOS idle thread will run and put the device directly into standby.
    Using a multimeter instead across the VDD_TO_EM jumper you should see the current around 0-4uA (1uA average).

    Best regards,
    Svend
  • Hi Svend,

    Lichang and I, we both tried to remove everything from the software as you advised but still we could not see a stable current though it is low. Average current swings inbetween 7uA and 0.1uA

    It appears that there is some software component which is turning ON/OFF on a periodic basis to cause the current swing. 

    Please let us know if you have any suggestions. 

    Regards,

    Vivek

  • Hi Vivek,

    The measurements are probably correct. As you can see in the referenced document SWRA478 (Figure 1) there are periodic recharges happening (DCDC is duty cycled on) that causes current spikes of several mA's so when measuring with a multimeter you will not get a stable reading.

    Regards,
    Svend
  • Hi Svend,

    I think, you are correct. That might be the reason for not getting a stable current.

    Thanks a lot  !

    Regards,

    Vivek