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.

BQ25601: intermittent rebooting without battery

Part Number: BQ25601

Hi TI team,

We are using bq25601 for our product. The product has a 630mAh battery and works fine.

Recently we are preparing the same product just by removing battery - no change in hardware basically(jumper is ok if necessary).

To run the product without battery/with 5V1A adapter only, I've disabled some functions related to charging by setting the registers (REG00 ~ REG07) as shown in picture below.

The problem is it reboots intermittently. When the system reboots, VSYS is droping to 0.5V for 52mSec but this is not a cause but a result of other cause.

The main cause is, in my guess, peak power which may be caused by wifi module or whatever. Normally the current consumption is about 140mA which looks enough.

So I've tried to change the input selection from 500mA USB to 2.4A adapter even though PSEL is pulled up in the circuit.

1) Set IINDPM value as 1000mA --> This will set up the input current limit from 500mA to 1000mA but it didn't work. I'm not sure the setting is done well.

2) Pull down PSEL by soldering PSEL to GND (PSEL is currently pulled up to REGN.) --> It didn't work. It boots after 10 seconds because of watch dog timer.

    Strangely, the resultant power selection was not adapter but OTG.

Can you help me to fix this issue?

Best regards,

Konan Kim

 

  • As the picture in the body text is not seen, I'm attaching the picture.

  • Hi Konan,

    If PSEL is low at power up, input current is set to 1A and should not reset after watchdog expires.  You only need to write to IINDET_EN if you change PSEL setting and then want to force the IINDPM register change. 

    Can you send what the registers are, i.e. perform a register read? 

    I do not see why the charger would be in OTG unless there is an I2C write to the OTG enable register.

    Regards,

    Jeff 

  • Hi Jeff,

    If PSEL is high at power up and want to change the input current limit, set the value in IINDPM[4..0] and FORCE IINDET_EN = 1. Is this correct and only things to do to set input current limit as 1000mA when PSEL is high at power up?

    In the code, I2C write of OTG was disabled. The code above is the 2nd step of the init code especially for the case that there is no battery. The 1st step is the init code for battery. If there is no battery, the 1st step is executed and the 2nd step(above) is executed additionally.

    When PSEL is low at power up, the register REG08 has 0x65, which means VBUS status register = 011. This is not 010(Adapter 2.4A), nor 111(OTG). Our code printed it as OTG. Is this a bug?

    Please see the boot log below.

    Best regards,

    Konan Kim

  • Hi Konan,

    What does the input current limit register report?  With PSEL low and assuming the code does not overwrite the register, the register should report 2400mA.  

    I think the 010: Adapter 2.4A is a typo and should read 011: Adapter: 2.4A.

    Regards,

    Jeff

  • Hi Jeff,

    With PSEL low, the current limit register reported 1000mA as I wrote it as such.

    Because PSEL low was not working (rebooted after one hour), after modifying the PSEL back to HIGH, I've modified the initialization code by not taking the previous two steps - 1st step : init for battery, 2nd step: additional partial init for no battery if the hardware number is of no battery. I think this two step init is not right method for no battery case. I tried init-for-no-battery instead of init-for-battery ,which made a short watch dog timer expiration(about 2 sec) when booting. The following message shows that current limit register was set properly. This time I set it as 1600mA.

    I will test it again.

    Best regards,

    Konan

  • Konan,

    We haven’t heard back from you for a while. The tread is considered resolved and closed.

    Thanks,

    Ning.