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: 6V at the output

Part Number: BQ25703A
Other Parts Discussed in Thread: BQSTUDIO,

Hi,

I have a desing where the charger output is 6.15 V, so the battery does not charge.

 This is the schematic of the charger. It can be powered by a 12V input or a 2s battery.

When I connect the 12V input, the output of the charger is 6.15V. When I connect the battery without the DC input, the output of the charger is the battery voltage.

If I connect both, the ouput is above 6.15V.

I can't connect by I2C port, and CH_OK pin is HIGH.

Where is the problem?

  • When 12V input is connected only, the output of the charger (system) is regulated to the default minimum system voltage, which is 6.15V for 2s.
    When battery is connected only, the device is in battery supplement mode. System and battery voltage difference the VDS of BATFET.
    When both 12V input and 2s battery is plugged in, if battery voltage is > minimum system voltage, then the system output will be regulated to around 160 mV above battery voltage when BATFET is off (no charging or no supplement current).
  • Thanks, you are very helpful.

    So, my design is good.

    I thought that the output of the charger would be 8.4V constant.

    How can the charger charge the battery. How I know that it is charging?

  • cannot find problem on the schematic. But, what is the battery voltage, if the battery voltage is below 6.15V, the minimum system voltage setting keeps the output at 6.15V.

    Do you use bqstudio talk to the part?

  • It is not possible to increase that minimum voltage?

    So when the battery is charged, what is the output of the system?

    I don't know bqstudio. What is that?
  • Please read the datasheet. Customers can increase the minimum system voltage register setting.
    When the battery is in fast charge, the system voltage is almost same as the battery voltage because the BATFET is fully on.
    When the battery is in pre-charge, the system voltage keeps on the minimum system voltage register setting.
    bqstudio is TI GUI to set or change bq25703A setting. It can be download from TI.com. Please check bq25703A EVM user's guide for bqstudio detail.
  • I can't use bqstudio because I haven't the evaluation board.

    It is necessary to connect to the charger by I2C for charging a battery? If I plug a 2s LiPo battery that have 5.75V, the charger output is 6.15V but it does not charge the battery.

    Thanks for your help. I need it.

  • bq25703A is a host control charger. You have to send a charger current and voltage commands to start charging. If VBAT<Vsys_min, bq25703A charger only provides 128mA wake-up current in first 30minutes.

  • I have connected the charger with an Arduino but It does not detect anything with "I2C Scanner" sketch.
  • What is the "I2C Scanner" sketch? Do you send any I2C command to charge current and voltage register? If the charger cannot receive the command, please monitor the SDA and SCL signal and read out the SDA value.
  • I have not sent any command. I only try to execute this script in Arduino, that tell the directions of I2C device connected.

    What is the I2C adress? Is 0xD6?

    1. / --------------------------------------
    2. // i2c_scanner
    3. //
    4. // Version 1
    5. //    This program (or code that looks like it)
    6. //    can be found in many places.
    7. //    For example on the Arduino.cc forum.
    8. //    The original author is not know.
    9. // Version 2, Juni 2012, Using Arduino 1.0.1
    10. //     Adapted to be as simple as possible by Arduino.cc user Krodal
    11. // Version 3, Feb 26  2013
    12. //    V3 by louarnold
    13. // Version 4, March 3, 2013, Using Arduino 1.0.3
    14. //    by Arduino.cc user Krodal.
    15. //    Changes by louarnold removed.
    16. //    Scanning addresses changed from 0...127 to 1...119,
    17. //    according to the i2c scanner by Nick Gammon
    18. // Version 5, March 28, 2013
    19. //    As version 4, but address scans now to 127.
    20. //    A sensor seems to use address 120.
    21. // Version 6, November 27, 2015.
    22. //    Added waiting for the Leonardo serial communication.
    23. //
    24. //
    25. // This sketch tests the standard 7-bit addresses
    26. // Devices with higher bit address might not be seen properly.
    27. //
    28.  
    29. #include <Wire.h>
    30.  
    31.  
    32. void setup()
    33. {
    34.   Wire.begin();
    35.  
    36.   Serial.begin(9600);
    37.   while (!Serial);             // Leonardo: wait for serial monitor
    38.   Serial.println("\nI2C Scanner");
    39. }
    40.  
    41.  
    42. void loop()
    43. {
    44.   byte error, address;
    45.   int nDevices;
    46.  
    47.   Serial.println("Scanning...");
    48.  
    49.   nDevices = 0;
    50.   for(address = 1; address < 127; address++ )
    51.   {
    52.     // The i2c_scanner uses the return value of
    53.     // the Write.endTransmisstion to see if
    54.     // a device did acknowledge to the address.
    55.     Wire.beginTransmission(address);
    56.     error = Wire.endTransmission();
    57.  
    58.     if (error == 0)
    59.     {
    60.       Serial.print("I2C device found at address 0x");
    61.       if (address<16)
    62.         Serial.print("0");
    63.       Serial.print(address,HEX);
    64.       Serial.println("  !");
    65.  
    66.       nDevices++;
    67.     }
    68.     else if (error==4)
    69.     {
    70.       Serial.print("Unknown error at address 0x");
    71.       if (address<16)
    72.         Serial.print("0");
    73.       Serial.println(address,HEX);
    74.     }    
    75.   }
    76.   if (nDevices == 0)
    77.     Serial.println("No I2C devices found\n");
    78.   else
    79.     Serial.println("done\n");
    80.  
    81.   delay(5000);           // wait 5 seconds for next scan
    82. }