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.

TPS65950 Charging Options

Other Parts Discussed in Thread: TPS65950, DM3725, TPS65930, OMAP3530

In the Data Manual for the TPS65950, Figure 8-1 shows typical application schematics.  Are these the only 4 operating modes for this device?  Is it possible to combine figure 8-1C and 8-1D to support both USB and AC charging with nonlimited chargers?

 

Thanks

  • Yes it is possible to combine figure 8-1C and 8-1D inorder to support both USB and AC charging with non-limited chargers.Basically there can be 6 operating modes

    1.Both AC charging and USB charging present with current limited chargers

    2.Only VAC charging present with charging support for CV mode

    3.Only VAC charging present with support for current nonlimited chargers

    4.Only VBUS charging present with support for current nonlimited chargers

    5.VAC charging supporting CV mode with USB charging present too

    6 VAC charging and USB charging present with support for current nonlimited chargers

    Thanks

  • Thanks for the prompt response!

     

    Nate

  • I have a customer that would like to use the TPS65950 for USB charging with the DM3725.

     

    They would like to be able to detect the AC-USB charger with shorted D+/D- pins and increase current to 950mA for a fast charge mode. Do you have recommendations on how to detect the USB charging only via USB connector?

  • Hi,

    I didnt understand your question correctly. I think you are looking for steps to detect DP-DM short on the USB charger.

    You can use the following steps for detecting D+ and D- short, hope this helps:

    Normal 0 false false false MicrosoftInternetExplorer4

    The following test was done with a regular Blackberry charger on which the DP and DM pins were shorted.

    Step 1 (Set D+ low and check if D- also goes low):

    Set OTGCTRL=2 (DMPULLDOWN=0|DPPULLDOWN=1)

    Set FUNC_CTRL=0x41 (SUSPENDM=1|OPMODE=0|TERMSELECT=0|XCVRSELECT=1)

    Read DM_HI in OTHER_INT_STS

    Step 2 (Set D+ high and check if D- also goes high):

    Set OTGCTRL=0 (DMPULLDOWN=0|DPPULLDOWN=0)

    Read DM_HI in OTHER_INT_STS

    Read the register OTHER_INT_STS for checking the status of DM based on the steps above. If the signals are shorted then the results should be as follows:

     

    DM_HI in the step 1 => 0

    DM_HI in the step 2 => 1

     

    Since DP and DM are shorted on the charger the user can check the status of DP_HI in OTHER_INT_STS register. The values read will be the same as DM.

     

     


  • I understand that detection is possible. Is it possible after detection on AC –USB charger to increase current to 950mA for a fast charge mode or VBUS is limited to 500mA?

     

  • Yes - No problem - Of cause take care not to bring your battery into any kind of stressed mode by charging too fast and make sure your FETs can handle the current. Other than this it's definitely possible.  I do unfortunately not know if it's supported by the current SW drivers or if you would need to make some modification yourself in order to make it work, but seen from a HW point of view nothing is stopping you...

    Best regards - Good luck
      Søren

  • Hi ,


    My board is under following configuration: OMAP3530+TPS65930+BSP6.14.01. I'm trying to differentiate the USB connection with AC charger with the method gave upstairs, since my charger also has the D+ and D- shorted together.

    However all the register I read out are valued as 0x1C, the FUNC_CTRL, the OTG_CTRL... are all same value 0x1C. Below is the output from the DumpULPIRegs func:
    TPS659XX ULPI Register
        ULPI_VID=(1c,1c)
        ULPI_PID=(1c,1c)
        Function Control=1c
        Interface Control=1c
        OTG Control(1c)=4fb0003
        Interrupt Enable rising=1c
        Interrupt Enable Falling=1c
        Interrupt Status=1c
        Interrupt Latch=1c
        Debug=1c
        Scratch=1c
        Power=1c

    Do anyone know the reason?

    Thanks & regards

    Luo Yang

     

     

     

  • Hi,

    I'm able to access the regs after enabling the corresponding functional clock(EnableFClock(TRUE)).

    Now I can see I have set the registers correctly as

     

  • Hi,

    After inserting a 100ms delay between step 1 and step2, I'm now able to differentiate the PC connection from the AC charger in WINCE.

    However I'm not able to do the same thing in the EBOOT/XLDR. Step 1 is successful but step 2 alway gave 0x82  for OTHER_INT_STS. Looks like it is unable to output a HIGH when pulldown disabled.

    I've measured USB 1V8, 1V5 and 3V1 are supplied. And I also supplied clock by updatingTWL_PHY_CLK_CTRL.

    Did I miss anything?

    Thanks & regards

    Luo Yang

     

    ==========================Added on Nov 9 2010=========================

    I'm able to get the DM_HI value 1, after I set register TWL_OTHER_FUNC_CTRL_SET[0].DP_PULLUP. I found this in a PDF document @ this website. In my experiment, this step is not necessary when doing charger detection in WINCE, but is needed if you want to do charger detect in XLDR or EBOOT.