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.

TPS65987D: Abnormal Sleep current consumption

Part Number: TPS65987D

Hi Eric,

We are using the TPS65987D in the following manner:

The GPIOs are interfaced to an MCU, and all the pins are configured as high input impedance inputs. To put the PD controller in sleep, we are configuring the Sleep configuration register (0x70) to enable it to go into sleep within 1000 msec of being idle. 

Current is being measured through R107.

When the PD controller is idle, it sinks ~ 5.6 mA and 1 second later, it goes into a state where the power consumption is ~ 1.06 mA. Looking at the behavior of the current profile and the timing, it seems it is going into sleep mode, however the current consumption is higher than expected.

The expected current 55uA (DRP configured) + 14.5uA (ADCIN1 divider) + 400uA (VDX_ILIM because BC1.2 is still enabled??) + 15uA (Sleep current of MX25L8006EM2I-12G) ~= 500 uA

At an hardware level, we have verified that there is no other leakage source by isolating the remaining peripherals on the 3V3_LDO line and the entire current draw is via the USB PD controller. 

1. How can we ensure that the USB PD is going into sleep?

2. Is there any other register that needs to be written over I2C to put the PD controller in sleep to shut down the internal 24 MHz oscillator, there is still leakage that is present. 

3. Does this consumption value ring a bell indicating any other peripheral being turned on? Any pointers to reduce the overall sleep current current consumption?

Awaiting your response, thanks!

  • Hi Rachit,

    The BC1.2 function is only enabled when the PD controller enters an attached state.

    1. Seeing the current decrease lets us know that you are going into sleep

    2. You will only have to write to the 0x70 Sleep Register to enable 

    3. Check you GPIO configurations and verify only ones you need are enabled. 

    Is you I2C master writing anything on the I2C bus when you are taking this measurement?

    Jacob