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.

BQ24295: Help with BQ24295 USB Data Lines, PMID Capacitance

Part Number: BQ24295

Hey there,

We just wanted to run our project by you and ask a few questions :)

We are designing an AVR based device that uses the BQ24295 to charge lithium cells ranging from 4.2 - 4.35v, and 1400 - 10000mAh. The packs usually contain Gas Gauge IC's (such as the BQ275xx).

Assuming we understand the datasheet, this is how we plan to achieve this:
Note: OTG will always be pulled LOW. We will not be using Battery Boost Mode.

  • CE is pulled HIGH by default from power-up, disabling Charging. (BATFET should be OFF, BAT should be 0V if no Battery is present) .
  • Detect the presence of Battery (Check for Gas Gauge on HDQ bus > Check for Gas Gauge on I2C bus > Check Voltage at BAT with ADC > LOOP).
  • If Gas Gauge is found, obtain Charging Voltage / Design Capacity / Taper Current.
  • Set Charge Voltage Limit (REG04) using Charging Voltage from Gas Gauge, else Default to 4.208V.
  • Set Fast Charge Current Limit (REG02) to 0.5C of Design Capacity, else Default to 512mA.
  • Set Termination Current Limit (REG03) using Taper Current, else Default to 256mA.
  • Pull CE LOW to begin the charging process.


The device will operate in one of two modes.

  1. Connected to a computer with a current limit of around 500mA, providing a continuous stream of data after a few seconds of startup delay.
  2. Connected to a USB Charger as a standalone device, with higher but appropriately limited charging current according to D+/D- detection.

At least, that's the plan. Heres our schematic:



So now for our questions..

  1. Does our flow look correct? We can just leave CE HIGH, set the appropriate values in the register, and then pull it low to begin the charge cycle?
  2. Are we correct in assuming that with CE HIGH, BATFET is OFF, and BAT should be 0V? Should we also be be setting REG07[5] to 1?
  3. Is connecting D+/D- to another device (FT232R) going to cause issues with Charger Detection? If so, do you have any suggestions of a workaround?
  4. Is it acceptable to use resistors (R3/R4) in-line with D+/D- to reduce parasitic capacitance? Maybe lower values?The BQ24295 will be located much further from the USB port than the FT232R. We are hoping to avoid any unnecessary capacitance causing issues with USB Communication, not that there will be much.
  5. PMIDrequires a minimum capacitance of 20uF, but we couldn't find a maximum. Is 100uF too much?
  6. And finally, just a sanity check :) Do you have any suggestions? Does everything look/sound right?

Thanks in advance!

Bill

  • Hey Bill,

    1. You can leave /CE high. I just want to be clear that you may not find the exact register setting for those charging parameters are your are reading from the gauge. I.e. you read a taper current of 141mA on the gauge, you cannot program that in the charger. You will have to find the closest approximation to the charger's settings.

    2. When /CE is high, the BATFET is off in the charging direction. However, if there is a scenario where the system is overloading the input source, the battery is allowed to discharge to supplement the system load. The voltage at BAT will match whatever the battery voltage is.

    3. Attaching a device on the D+/D- lines is only acceptable if that device can keep the D+/D- line high impedance for the first second when the input source on VBUS is plugged in. During this time, the charger will perform the USB BC1.2 detection to determine the input current limit. After that, the device may take over the D+/D- lines. If this device does not do this, I would suggesting utilizing a USB switch with MCU control.

    4. These values are way too high. I would suggest limiting the series resistance to no more 150-Ohms as to not impact the input current detection.

    5. 100uF should be since you are not using the boost mode operation. The PMID capacitance here filters out high-frequency content during the HSFET turn-on/turn-off. So adding more capacitance here will only benefit.

    6. Suggestions: I do not see pull-ups on STAT, SDA, SCL, or /INT, but I assume you have these populated elsewhere. I would also ask about the TS pin selector your have. I am not sure how that is implemented, or if it just for testing purposes.


    Regards,
    Joel H
  • Hey Joel, thanks for the response!

    1. Yeah we know we cant set the exact values in the register. Basically we plan to get it "close enough", and then monitor the gas gauge. So in the case of 141mA taper current, the host would set the termination current limit on the BQ24295 to 128mA, or whatever the next lowest figure is below the actual taper current. When the gas gauge detects the Average Current <= Taper Current for >= Current Taper Window, the FC bit of Flags() will be set (Full-charged is detected). The host would then pull /CE high again terminating the charge cycle.
    2. Basically we wont be taking any power from PMID, or SYS at all. All other devices on the PCB will be powered from the same rail as VBUS. The BQ24295 will be used exclusively for charging the battery. The hope is that we can use an ADC to sense the voltage at BAT. If there is a battery present, regardless of BATFETs state, we can sense the voltage. If there is no battery present, and /CE is HIGH, there should be no voltage on BAT.

      This way we can sense the presence of a battery without a gas gauge. So if there is never any discharge via the BQ24295, and /CE is HIGH, BATFET should remain off? Then i guess the only reason BAT would have voltage with no battery connected is due to charge remaining in C12, assuming its completely isolated when BATFET is off. But in that case we could add a resistor, say 100K to discharge it  right?
    3. The FT232R (sorry, nothing to do with TI) we are using does start in a reasonably high impedance state, but that state lasts a few ms at most. However, i have just done a quick test and can confirm that the host can hold the FT232RQ in a reset state for as long as needed during power-up. So i can easily program a second or two delay without the need for additional hardware. I'm just not sure if its high enough impedance to be acceptable. With the device held in a reset state, i measure 15MΩ at D+, and 100K at D-, relative to ground. Do you think this would be acceptable?
    4. We have some 100Ω resistors placed on this PCB already, so it would be a convenient value to use. Do you think we should do so, or just omit them?
    5. Great :)
    6. Yes we have those populated close the the AVR, which is centralized to other devices that share the bus. With the exception of STAT, which connects to the cathode of an LED, the anode of which has a pullup.

      The TS pin switch is used to select the source of the 10K thermistor. Some packs have a suitable thermistor already, in an ideal location (generally on the battery protection PCB). For those that do not, we intend to use an external probe. In theory if the pack does not contain a thermistor, or the thermistor is out of range, the LED attached to STAT will blink at 1Hz, and the interrupt will inform the host. Thats our understanding anyway.

    Thanks!


    Bill

  • Hey Bill,

    1. This sounds fine if you have it figured out in firmware.

    2. Just keep in mind that there is still a large decoupling capacitor on VBAT of 10uF that is required for proper operation. This could potentially have some voltage when your ADC measures it. But like you said, adding a 100k in parallel can help discharge that. And yes, the BATFET should be off if you are not pulling current.

    3. D+ should be fine. However, I am uncertain about the 100k at D-. I believe this should not impact the BC1.2 detection, but you may want to check with different adapter types and USB ports to be sure. This 100k may impact the detection of non-standard adapters like Apple and Samsung ones which have different resistor divider ratios for their adapters. Using a USB switch will likely be your safest option.

    4. If R3 and R4 are 100-Ohm, thats fine. In your schematic, they look like 10kOhm resistors.

    6. You are correct about the TS functionality.


    Regards,
    Joel H
  • Hi Joel,

    Thanks for all the information. You have been a great help.

    In regards to the resistance of D- effecting detection of non-standard adapter (Apple, Samsung) you are absolutely correct. It didn't occur to me at the time, but that value will definitely effect the voltage presented on D-.

    We will add a USB Switch accordingly. As such, we will not need R3/R4.

    We will also add a 100k in parallel with the 10uF BAT capacitor to handle ADC readings, and potentially tweak the value if need be.

    Once again, we appreciate your help.


    Thanks

    Bill