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.

TPS65217C USB Power path current limit question

Other Parts Discussed in Thread: TPS65217, TPS2061

Hello,


We have custom AM335X design that employes TPS65217C PMIC. Device can be powered through USB connector as well as DC jack. Initial idea was to be able to power it up via USB charger that can deliver ~2A. As for AC path everything works as desired, but USB one gives us a constant problem when both Ethernet cables plugged and  USB host connector has WiFi dongle plugged. Our current reading on AC path shows ~500ma with two network cables on, and ~800ma with two network cables and WiFi dongle on. So, our USB power path should be ok as well since our PPATH register settings are 0x3E (2.5A for AC and 1.3A for USB power path). These settings performed in uboot, before even CPU Linux load. It evident that TPS65217 is still limited to 500ma (our WiFi dongle clearly shows powering issues and we sense V_USB drops upon plugging it in). Why???? Do we miss something? We tried everything, and at the point to dump the whole TPS65217C arrangement thing and move to discrete design, it's just the rest of design is solely TI based, and we really wanted to keep it this way.


Any suggestions from community? From TI? Any help? Any known issues?

i2get -f 0 0x24 1

0x3e

  • Alexander,

    The PMIC's I2C lines are only accessible once it is in ACTIVE state, is it in ACTIVE state when in uboot? (ACTIVE = Power event + PWR_EN pulled high within 5s of power event). Can you confirm that once you have written these settings that they stick, before plugging in the USB, the register reads 1.3A instead of it's default value of 500mA? Also, keep in mind since this isn't the default value the registers will be reset every time the device comes out of ACTIVE mode (i.e. SLEEP) the I2C commands must be rewritten to the device every time ACTIVE mode is entered to ensure that they are the values you want. If you confirm that the USB is set to 1.3A in ACTIVE mode before plugging in the USB, then this tells me there is another issue. I just wanted to confirm these things before we move forward with debugging, to ensure we are narrowing down the cause of this issue. 

    Janice 

  • Alexander,

    What kind of USB host are you plugged into?

    Janice

  • Hello Janice,


    Thanks a bunch for the quick response. Our PPATH register settings are performed in u-boot bootloader, and stay intact thereafter. USB WiFi dongle is plugged after complete boot is finalized and we can check and assure that USB current limit is set to 1.3A, i.e. i2cget utility always gives 0x3E value. We did try 1.8A settings just before plugging the dongle (i2cset to 0x3F), but behavior is the same. The only thing that we can observe is that less powerful WiFi dongle works just fine (looks like we are on a hairy edge here), but any of long range ones would fail. At first we suspected particular issues with drivers (like Atheros, Realtek etc.), but supplying power to AC works just fine with any - so driver's issues are off the table. We do have power switch TPS2061 with current limit of 500ma, but none of our WiFi dongles takes amount of current exceeding this amount.

    And as for PMIC itself:

    Failure happens regardless to USB power source - USB host post of PC or USB charger capable of 2.5A (and we tried at least 3-4 of them just to eliminate any chance of extra variable in the equation). Everything leads to conclusion that PMIC still limits current to 500ma, even though PPATH settings instruct it to be capable of 1.3A.

    Cheers,

    Alex

  • Variety. We do understand the limitations of 500ma when it comes to standard computing device port, but with 3-4 different USB chargers? Each is capable of delivering > 2A of current. Do we miss something here? Maybe some errata that we are not aware of?

    We can send you schematic (off channel - please provide your direct email) - maybe you will see something we don't. We can post findings in this forum in case it will be some.
  • Alexander,

    Send me a private message to which you can send your schematic. When plugging in all these USB devices, you measured the current on the USB pin and see that is isn't exceeding the programmed load? If you take an electronic load and sweep across loads, does the PMIC die at 500mA? Is it possible that the in-rush current is higher than the programmed load, what is the size of your input cap on the USB pin? Can you send me scope shot of the current and voltage on the USB pin when it crashes?

    Janice
  • Janice,

    Thanks a lot for looking into this. I just sent you schematic  embedded into private message. Please let me know if resolution was sufficient (it didn't allow attachment, but insertion only). We do have 10uF electrolytic cap and 0.1 uF ceramic - do you think electrolytic should be bigger? What we also noticed is the following message in Linux dmesg:

    [   32.165824] musb-hdrc musb-hdrc.0.auto: VBUS_ERROR in a_host (91, <VBusValid), retry #1, port1 00000507

    which means that we do indeed have voltage drop.

    Cheers,

    Alex

  • Janice,

    BTW - what are recommended minimal values for capacitors on AC and USB inputs of TPS65217C? I can't find this info anywhere.
  • Thanks to Janice's help and support, we did few measurements and tests. Turned out that our older revision board had current leakage on PCB level (nothing to do with schematic or components, just bad batch of PCBs), which was fixed manually. On the other hand, it made us thinking towards overall "safe" design. After careful study of current PMIC based designs (AM335X), we decided to place 47uF capacitor on VBUS sensing line (off USB host connector), plus add extra 10uF to incoming USB power path. So far everything looks  good now.

    Thanks a lot, Janice!

    We did run into some other problem that is now purely in software land and I will post separate question in this forum.