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.

BQ25703A: BQ25703A "hangs" in some locked state and doesn't charge at all.

Part Number: BQ25703A

Dear Engineers!

In my design the BQ25703A is used to charge the 1S Li-Ion battery pack (3.6V, 4000 mAh).

The charger is powered by a 6 VAC, 3 Watt generator (bicycle dynamo). The input voltage from the dynamo is clipped to +/- 30V by a bidirectional voltage clipper built of two 3 Watt Zener diodes. After the bidirectional clipper stage there is a 40 Volt-rated bridge rectifier with 470uF Low-ESR filter capacitor and 20 V unidirectional clipper built of 3 W Zener diode.

As expected, the performance of this power source is highly dependant on the bicycle speed.

The CHRG_OK output of the BQ25703A is observed by the microcontroller and when it is asserted high, the micro sends the charge enable command over I2C bus.

When there is enough power comming out from the dynamo, the battery is being charged.

When the bicycle speed is too low the voltage generated by the dynamo drops and the BQ25703A stops the charging process.

We have over 200 bikes testing this solution for over two months and it works quite well but we have found that in some rare cases the BQ25703A enters some strange state when it is unable to charge.

It accepts I2C commands but it is unable to start charging. Then we need to remove the battery pack and put it back. After this it works fine.

I have two questions:

- is it a known behaviour?

- what can I send to BQ25703A over the I2C bus to get it out from this strange state?

I would kindly ask for your help.

Best Regards,

Sebalos

  • Hey Sebalos,

    Do you have a list of all the register writes that are ever sent to the charger, under all operating conditions? 

    Do you also get a register readout of the charger when you see this occurrence?

    We need to confirm this to verify if something else is not being written to the charger forcing either the BATFET (external PMOS) off or disabling charge in some other way.

    Regards,

    Joel H 

  • Hey Joel,

    I am only writing to two registers (16-bit access, LSB first) when I detect CHRG_OK asserted high:
    ChargeOption0() register (addr = 0x00) value is set to 0x820e.
    ChargeCurrent() register (addr = 0x02) is set to one of four values based on bicycle GPS speed. These values are: 0x0100, 0x0200, 0x0300, 0x0400.

    I am not accessing any of other registers (leaving the default values) nor reading anything.

    Do you have any ideas?

    Best Regards,
    Sebalos
  • Hey Sebalos,

    Do you have method for looking at the voltage at VBUS, VSYS, VBAT, and the currents into the charger?

    Also, if you can read the status of the charger, it would helpful in seeing whether the charger is in a deep DPM state whereby the battery is discharging into the system due to a lack of input power. Both VINDPM and INDPM can force the charger to reduce charge current.

    Are your test conditions equivalent for all devices you've tested?


    Regards,
    Joel H
  • Hi there,

    I haven’t heard back from you, I’m assuming you were able to resolve your issue. If not, just post a reply below or create a new thread if the thread has locked due to time-out.

    Regards,
    Joel H
  • Hi Joel,

    I am still working on the issue. Unfortunately I need to add additional circuitry to my hardware to be able to record the voltages and currents. That's the reason I haven't provided the requested information yet.

    I will let you know.

    Best Regards,
  • Hey Sebalos,

    Thanks for letting me know.


    Regards,
    Joel H