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: Reinitialization impossible to 1S-4S cell default values

Part Number: BQ25703A

Hello,

I had an electronic module bq25703a working fine, but some days ago the charger would not start and no adc measurement are possible.

I used to initialize the module by resetting all registers by 0x35[6] = 1, and then setting 0x05/04[15…0] = 0 to reset MaxChargeVoltage to 4S default value. After initialization, I used to charge the battery by setting 0x05/04[15…0] = 7680mV.

Now everytime I send 0x05/04[15…0] = 0, the register remains at previous value non-null value set. There is no way to get 4S cell default value that is 16800 mV.

I have the same problem with MinSystemVoltage 0x0D/0C which should be 12288 mV at the end of initialization.

I join an history of the I2C register. During init I send one time 0x05/04[15…0] = 0 and just before end of init, 0x05/04[15…0] = 7680mV whereas it should be 16800mV.

Please can you tell me if a register value may prevent the reinitialization to 4S default values after POR ?

Thank you,

The history of the I2C register is the following I2C register listing. From first line to «EndInit … Endinit» is the register state before entering repeatitive task. The register state is displayed another time and then only modifications are listed. At t=23:58:05.939, Vadapter is set at 5V and input is open at 23:58:52.919.

23:57:53.505 -> 0 : 1110
23:57:53.550 -> 1 : 10
23:57:53.550 -> 2 & 3 ChargeCurrentRqst : 0 mA
23:57:53.550 -> 4 & 5 ChargeVoltageRqst: 7680 mV
23:57:53.550 -> 6 : 0
23:57:53.550 -> 7 : 0
23:57:53.550 -> 8 : 0
23:57:53.550 -> 9 : 0
23:57:53.550 -> A & B minInVoltRqst: 3200 mV
23:57:53.550 -> A & B minInVoltRqst: 3200 mV
23:57:53.550 -> C & D minSystVoltRqst: 0 mV
23:57:53.550 -> C & D minSystVoltRqst: 0 mV
23:57:53.550 -> E & F maxInputCurrent: 3300 mA
23:57:53.550 -> E & F maxInputCurrent: 3300 mA
23:57:53.550 -> 20 : 0
23:57:53.550 -> 21 : 100000
23:57:53.550 -> 22 : 1
23:57:53.550 -> 23 : 0
23:57:53.550 -> 24 : 0
23:57:53.550 -> 25 inputCurrentDPM: 3300 mA
23:57:53.550 -> 26 : 0
23:57:53.550 -> 27 inputVoltMeas: 3200 mV
23:57:53.550 -> 28 dischrgCurrentMeas: 0 mA
23:57:53.550 -> 29 chrgCurrentMeas: 0 mA
23:57:53.550 -> 2A : 0
23:57:53.550 -> 2B inputCurrentMeas: 0 mA
23:57:53.550 -> 2C battVoltMeas: 2880 mV
23:57:53.550 -> 2D systVoltMeas: 3200 mV
23:57:53.550 -> 2E : 1000000
23:57:53.550 -> 2F : 1111000
23:57:53.550 -> 30 : 0
23:57:53.550 -> 31 : 10
23:57:53.550 -> 32 : 1110010
23:57:53.550 -> 33 : 10
23:57:53.550 -> 34 : 0
23:57:53.550 -> 35 : 0
23:57:53.550 -> 36 : 111100
23:57:53.550 -> 37 : 1001010
23:57:53.550 -> 38 : 0
23:57:53.550 -> 39 : 10000001
23:57:53.550 -> 3A : 11111111
23:57:53.550 -> 3B : 10100000
23:57:53.550 -> bq25703a digout: not_proc_hot/ChrgOK : 0
23:57:53.550 -> EndInit EndInit EndInit EndInit EndInit EndInit EndInit
23:57:53.781 -> 0 : 1110
23:57:53.781 -> 1 : 10
23:57:53.781 -> 2 & 3 ChargeCurrentRqst : 0 mA
23:57:53.781 -> 4 & 5 ChargeVoltageRqst: 7680 mV
23:57:53.781 -> 6 : 0
23:57:53.781 -> 7 : 0
23:57:53.781 -> 8 : 0
23:57:53.781 -> 9 : 0
23:57:53.781 -> A & B minInVoltRqst: 3200 mV
23:57:53.781 -> A & B minInVoltRqst: 3200 mV
23:57:53.781 -> C & D minSystVoltRqst: 0 mV
23:57:53.781 -> C & D minSystVoltRqst: 0 mV
23:57:53.781 -> E & F maxInputCurrent: 3300 mA
23:57:53.781 -> E & F maxInputCurrent: 3300 mA
23:57:53.781 -> 20 : 0
23:57:53.781 -> 21 : 100000
23:57:53.781 -> 22 : 0
23:57:53.781 -> 23 : 0
23:57:53.781 -> 24 : 0
23:57:53.781 -> 25 inputCurrentDPM: 3300 mA
23:57:53.781 -> 26 : 0
23:57:53.781 -> 27 inputVoltMeas: 3200 mV
23:57:53.781 -> 28 dischrgCurrentMeas: 0 mA
23:57:53.781 -> 29 chrgCurrentMeas: 0 mA
23:57:53.781 -> 2A : 0
23:57:53.781 -> 2B inputCurrentMeas: 0 mA
23:57:53.781 -> 2C battVoltMeas: 2880 mV
23:57:53.781 -> 2D systVoltMeas: 3200 mV
23:57:53.781 -> 2E : 1000000
23:57:53.781 -> 2F : 1111000
23:57:53.781 -> 30 : 0
23:57:53.781 -> 31 : 10
23:57:53.781 -> 32 : 1110010
23:57:53.781 -> 33 : 10
23:57:53.781 -> 34 : 0
23:57:53.781 -> 35 : 0
23:57:53.781 -> 36 : 111100
23:57:53.781 -> 37 : 1001010
23:57:53.781 -> 38 : 0
23:57:53.781 -> 39 : 10000001
23:57:53.781 -> 3A : 11111111
23:57:53.781 -> 3B : 10100000
23:58:05.839 -> 31 : 10
23:58:05.839 -> 32 : 1110010
23:58:05.839 -> 33 : 10
23:58:05.839 -> 34 : 0
23:58:05.839 -> 35 : 0
23:58:05.839 -> 36 : 111100
23:58:05.839 -> 37 : 1001010
23:58:05.839 -> 38 : 0
23:58:05.839 -> 39 : 10000001
23:58:05.839 -> 3A : 11111111
23:58:05.839 -> 3B : 10100000
23:58:05.839 -> 31 : 10
23:58:05.839 -> 32 : 1110010
23:58:05.839 -> 33 : 10
23:58:05.839 -> 34 : 0
23:58:05.839 -> 35 : 0
23:58:05.839 -> 36 : 111100
23:58:05.839 -> 37 : 1001010
23:58:05.839 -> 38 : 0
23:58:05.839 -> 39 : 10000001
23:58:05.839 -> 3A : 11111111
23:58:05.839 -> 3B : 10100000
23:58:05.939 -> 21 : 10100000
23:58:05.939 -> bq25703a digout: not_proc_hot/ChrgOK : 1
23:58:06.072 -> C & D minSystVoltRqst: 1280 mV
23:58:06.105 -> E & F maxInputCurrent: 1150 mA
23:58:06.105 -> 25 inputCurrentDPM: 1150 mA
23:58:06.837 -> 3B : 11100000
23:58:12.359 -> 2 & 3 ChargeCurrentRqst : 64 mA
23:58:15.560 -> 2 & 3 ChargeCurrentRqst : 128 mA
23:58:52.919 -> 21 : 100000
23:58:52.919 -> 25 inputCurrentDPM: 3300 mA
23:58:52.919 -> bq25703a digout: not_proc_hot/ChrgOK : 0
23:58:53.085 -> 2 & 3 ChargeCurrentRqst : 0 mA
23:58:53.085 -> E & F maxInputCurrent: 3300 mA

  • Hey Alain,

    Does this happen on every charger you have, or just on this single device?

    Does it no longer respond to any of your I2C commands? Or can you still write a sequence, but all subsequent commands are ignored?

    Regards,

    Joel H

  • Hello,

    The problem happens on my prototype, it is a single device before producing some more.

    All commands sent to the bq25703a seem to be correctly set when they are read back, except the commands that should get default values according 1S-4S cell configuration : MinSystemVoltage 0x0D/0x0C and MaxChargeVoltage 0x05/0x04 after POR. Also when I command 0x05/0x04 = 0, it should « set REG0x05/04() to default value on CELL_BATPRESZ pin» but in fact the register keeps previous value.

    Then there is no charging whereas 21[7] gets to 1 as Vbus get above 3.2V, 0x0F/0x0E is set to 1150 mA and 0x05/0x04 is set to 7680 mV. Also 0x3B[6] set to 1 does not start any adc measurement.

    I am wondering if there are some register commands that force to ignore CELL_BATPRESZ pin, so no reinitialization to CELL_BATPRESZ default values are possible ?

  • Hey Alain,

    If you write the RESET_REG bit in ChargeOption3() bit 6, do the values return to their default state?

    I also wonder if any functions of the charger are operating. Do you have as schematic you can provide of your board? What do you do to POR the charger? Do you remove both VBUS and VBAT?

    Regards,

    Joel H

  • Hello,

    In order to perform a POR, I remove first VBUS and then VBAT. Then when I want to use again the converter, I start to plug VBAT and I wait a little before plugging in VBUS.

    I did try to restart the bq25703a and then 13s later I plug VBUS and then I sent a RESET_REG 1 minute later. I did also another test : I restart the bq25703a and then 1 minute and a half later I send a RESET_REG.

    In both cases, register 0x01, 0x30, 0x32, 0x36, 0x38, 0x3A and 0x3B get updated to default values. But 0x05/04[15…0] MaxChargeVoltage and 0x0D/0x0C MinSystemVoltage do not get default values.

    I join you the I2C evolution of both experiments, and also a schematic I did for the module.

    I hope it may help,

    Vincent

    ResetWhileNotCharging.txt
    19:15:21.076 -> 0 : 1110
    19:15:21.076 -> 1 : 10
    19:15:21.076 -> 2 & 3 ChargeCurrentRqst : 0 mA
    19:15:21.076 -> 4 & 5 ChargeVoltageRqst: 0 mV
    19:15:21.076 -> 6 : 0
    19:15:21.076 -> 7 : 0
    19:15:21.076 -> 8 : 0
    19:15:21.076 -> 9 : 0
    19:15:21.076 -> A & B minInVoltRqst: 3200 mV
    19:15:21.076 -> A & B minInVoltRqst: 3200 mV
    19:15:21.076 -> C & D minSystVoltRqst: 0 mV
    19:15:21.076 -> C & D minSystVoltRqst: 0 mV
    19:15:21.076 -> E & F maxInputCurrent: 3300 mA
    19:15:21.076 -> E & F maxInputCurrent: 3300 mA
    19:15:21.076 -> 20 : 0
    19:15:21.076 -> 21 : 100000
    19:15:21.076 -> 22 : 1
    19:15:21.076 -> 23 : 0
    19:15:21.076 -> 24 : 0
    19:15:21.076 -> 25 inputCurrentDPM: 3300 mA
    19:15:21.076 -> 26 : 0
    19:15:21.076 -> 27 inputVoltMeas: 3200 mV
    19:15:21.109 -> 28 dischrgCurrentMeas: 0 mA
    19:15:21.109 -> 29 chrgCurrentMeas: 0 mA
    19:15:21.109 -> 2A : 0
    19:15:21.109 -> 2B inputCurrentMeas: 0 mA
    19:15:21.109 -> 2C battVoltMeas: 2880 mV
    19:15:21.109 -> 2D systVoltMeas: 3200 mV
    19:15:21.109 -> 2E : 1000000
    19:15:21.109 -> 2F : 1111000
    19:15:21.109 -> 30 : 0
    19:15:21.109 -> 31 : 10
    19:15:21.109 -> 32 : 1110010
    19:15:21.109 -> 33 : 10
    19:15:21.109 -> 34 : 0
    19:15:21.109 -> 35 : 0
    19:15:21.109 -> 36 : 111100
    19:15:21.109 -> 37 : 1001010
    19:15:21.109 -> 38 : 0
    19:15:21.109 -> 39 : 10000001
    19:15:21.109 -> 3A : 11111111
    19:15:21.109 -> 3B : 10100000
    19:15:21.109 -> bq25703a digout: not_proc_hot/ChrgOK : 0
    19:15:21.109 -> EndInit EndInit EndInit EndInit EndInit EndInit EndInit
    19:15:21.276 -> 0 : 1110
    19:15:21.276 -> 1 : 10
    19:15:21.276 -> 2 & 3 ChargeCurrentRqst : 0 mA
    19:15:21.276 -> 4 & 5 ChargeVoltageRqst: 0 mV
    19:15:21.276 -> 6 : 0
    19:15:21.276 -> 7 : 0
    19:15:21.276 -> 8 : 0
    19:15:21.276 -> 9 : 0
    19:15:21.276 -> A & B minInVoltRqst: 3200 mV
    19:15:21.321 -> A & B minInVoltRqst: 3200 mV
    19:15:21.321 -> C & D minSystVoltRqst: 0 mV
    19:15:21.321 -> C & D minSystVoltRqst: 0 mV
    19:15:21.321 -> E & F maxInputCurrent: 3300 mA
    19:15:21.321 -> E & F maxInputCurrent: 3300 mA
    19:15:21.321 -> 20 : 0
    19:15:21.321 -> 21 : 100000
    19:15:21.321 -> 22 : 0
    19:15:21.321 -> 23 : 0
    19:15:21.321 -> 24 : 0
    19:15:21.321 -> 25 inputCurrentDPM: 3300 mA
    19:15:21.321 -> 26 : 0
    19:15:21.321 -> 27 inputVoltMeas: 3200 mV
    19:15:21.321 -> 28 dischrgCurrentMeas: 0 mA
    19:15:21.321 -> 29 chrgCurrentMeas: 0 mA
    19:15:21.321 -> 2A : 0
    19:15:21.321 -> 2B inputCurrentMeas: 0 mA
    19:15:21.321 -> 2C battVoltMeas: 2880 mV
    19:15:21.321 -> 2D systVoltMeas: 3200 mV
    19:15:21.321 -> 2E : 1000000
    19:15:21.321 -> 2F : 1111000
    19:15:21.321 -> 30 : 0
    19:15:21.321 -> 31 : 10
    19:15:21.321 -> 32 : 1110010
    19:15:21.321 -> 33 : 10
    19:15:21.321 -> 34 : 0
    19:15:21.321 -> 35 : 0
    19:15:21.321 -> 36 : 111100
    19:15:21.321 -> 37 : 1001010
    19:15:21.321 -> 38 : 0
    19:15:21.321 -> 39 : 10000001
    19:15:21.321 -> 3A : 11111111
    19:15:21.321 -> 3B : 10100000
    19:16:52.978 -> Reset Reg 0x35 6
    19:16:53.112 -> 1 : 11100010
    19:16:53.112 -> 30 : 10001
    19:16:53.112 -> 32 : 10110111
    19:16:53.112 -> 36 : 1010100
    19:16:53.112 -> 38 : 100000
    19:16:53.112 -> 3A : 0
    19:16:53.112 -> 3B : 100000
    19:16:53.112 -> bq25703a digout: not_proc_hot/ChrgOK : 10
    19:17:20.877 -> 21 : 10100000
    19:17:20.877 -> bq25703a digout: not_proc_hot/ChrgOK : 11
    19:17:21.010 -> 4 & 5 ChargeVoltageRqst: 7680 mV
    19:17:21.010 -> C & D minSystVoltRqst: 1280 mV
    19:17:21.010 -> E & F maxInputCurrent: 1150 mA
    19:17:21.010 -> 25 inputCurrentDPM: 1150 mA
    19:17:21.774 -> 3B : 11100000
    19:17:27.261 -> 2 & 3 ChargeCurrentRqst : 64 mA
    19:17:27.261 -> 30 : 10000
    19:17:30.487 -> 2 & 3 ChargeCurrentRqst : 128 mA
    19:18:08.121 -> E & F maxInputCurrent: 3300 mA
    19:18:08.121 -> 21 : 100000
    19:18:08.121 -> 25 inputCurrentDPM: 3300 mA
    19:18:08.121 -> bq25703a digout: not_proc_hot/ChrgOK : 10
    19:18:24.972 -> Reset Reg 0x35 6
    19:18:25.105 -> 2 & 3 ChargeCurrentRqst : 0 mA
    19:18:25.105 -> C & D minSystVoltRqst: 0 mV
    19:18:25.105 -> 3B : 100000
    
    
    ResetWhileCharging.txt
    19:34:26.139 -> ⸮0 : 1110
    19:34:33.984 -> 1 : 10
    19:34:33.984 -> 2 & 3 ChargeCurrentRqst : 0 mA
    19:34:33.984 -> 4 & 5 ChargeVoltageRqst: 0 mV
    19:34:33.984 -> 6 : 0
    19:34:33.984 -> 7 : 0
    19:34:33.984 -> 8 : 0
    19:34:33.984 -> 9 : 0
    19:34:33.984 -> A & B minInVoltRqst: 3200 mV
    19:34:33.984 -> A & B minInVoltRqst: 3200 mV
    19:34:33.984 -> C & D minSystVoltRqst: 0 mV
    19:34:33.984 -> C & D minSystVoltRqst: 0 mV
    19:34:33.984 -> E & F maxInputCurrent: 3300 mA
    19:34:33.984 -> E & F maxInputCurrent: 3300 mA
    19:34:33.984 -> 20 : 0
    19:34:33.984 -> 21 : 100000
    19:34:33.984 -> 22 : 1
    19:34:33.984 -> 23 : 0
    19:34:33.984 -> 24 : 0
    19:34:33.984 -> 25 inputCurrentDPM: 3300 mA
    19:34:33.984 -> 26 : 0
    19:34:33.984 -> 27 inputVoltMeas: 3200 mV
    19:34:33.984 -> 28 dischrgCurrentMeas: 0 mA
    19:34:34.017 -> 29 chrgCurrentMeas: 0 mA
    19:34:34.017 -> 2A : 0
    19:34:34.017 -> 2B inputCurrentMeas: 0 mA
    19:34:34.017 -> 2C battVoltMeas: 2880 mV
    19:34:34.017 -> 2D systVoltMeas: 3200 mV
    19:34:34.017 -> 2E : 1000000
    19:34:34.017 -> 2F : 1111000
    19:34:34.017 -> 30 : 0
    19:34:34.017 -> 31 : 10
    19:34:34.017 -> 32 : 1110010
    19:34:34.017 -> 33 : 10
    19:34:34.017 -> 34 : 0
    19:34:34.017 -> 35 : 0
    19:34:34.017 -> 36 : 111100
    19:34:34.017 -> 37 : 1001010
    19:34:34.017 -> 38 : 0
    19:34:34.017 -> 39 : 10000001
    19:34:34.017 -> 3A : 11111111
    19:34:34.017 -> 3B : 10100000
    19:34:34.017 -> bq25703a digout: not_proc_hot/ChrgOK : 0
    19:34:34.017 -> EndInit EndInit EndInit EndInit EndInit EndInit EndInit
    19:34:34.183 -> 0 : 1110
    19:34:34.183 -> 1 : 10
    19:34:34.183 -> 2 & 3 ChargeCurrentRqst : 0 mA
    19:34:34.183 -> 4 & 5 ChargeVoltageRqst: 0 mV
    19:34:34.183 -> 6 : 0
    19:34:34.183 -> 7 : 0
    19:34:34.183 -> 8 : 0
    19:34:34.183 -> 9 : 0
    19:34:34.183 -> A & B minInVoltRqst: 3200 mV
    19:34:34.183 -> A & B minInVoltRqst: 3200 mV
    19:34:34.183 -> C & D minSystVoltRqst: 0 mV
    19:34:34.183 -> C & D minSystVoltRqst: 0 mV
    19:34:34.183 -> E & F maxInputCurrent: 3300 mA
    19:34:34.226 -> E & F maxInputCurrent: 3300 mA
    19:34:34.226 -> 20 : 0
    19:34:34.226 -> 21 : 100000
    19:34:34.226 -> 22 : 0
    19:34:34.226 -> 23 : 0
    19:34:34.226 -> 24 : 0
    19:34:34.226 -> 25 inputCurrentDPM: 3300 mA
    19:34:34.226 -> 26 : 0
    19:34:34.226 -> 27 inputVoltMeas: 3200 mV
    19:34:34.226 -> 28 dischrgCurrentMeas: 0 mA
    19:34:34.226 -> 29 chrgCurrentMeas: 0 mA
    19:34:34.226 -> 2A : 0
    19:34:34.226 -> 2B inputCurrentMeas: 0 mA
    19:34:34.226 -> 2C battVoltMeas: 2880 mV
    19:34:34.226 -> 2D systVoltMeas: 3200 mV
    19:34:34.226 -> 2E : 1000000
    19:34:34.226 -> 2F : 1111000
    19:34:34.226 -> 30 : 0
    19:34:34.226 -> 31 : 10
    19:34:34.226 -> 32 : 1110010
    19:34:34.226 -> 33 : 10
    19:34:34.226 -> 34 : 0
    19:34:34.226 -> 35 : 0
    19:34:34.226 -> 36 : 111100
    19:34:34.226 -> 37 : 1001010
    19:34:34.226 -> 38 : 0
    19:34:34.226 -> 39 : 10000001
    19:34:34.226 -> 3A : 11111111
    19:34:34.226 -> 3B : 10100000
    19:34:47.292 -> 21 : 10100000
    19:34:47.292 -> bq25703a digout: not_proc_hot/ChrgOK : 1
    19:34:47.458 -> 4 & 5 ChargeVoltageRqst: 7680 mV
    19:34:47.458 -> C & D minSystVoltRqst: 1280 mV
    19:34:47.458 -> E & F maxInputCurrent: 1150 mA
    19:34:47.458 -> 25 inputCurrentDPM: 1150 mA
    19:34:48.256 -> 3B : 11100000
    19:34:53.686 -> 2 & 3 ChargeCurrentRqst : 64 mA
    19:34:56.902 -> 2 & 3 ChargeCurrentRqst : 128 mA
    19:36:05.887 -> Reset Reg 0x35 6
    19:36:06.020 -> 1 : 11100010
    19:36:06.020 -> 30 : 10000
    19:36:06.020 -> 32 : 10110111
    19:36:06.020 -> 36 : 1010100
    19:36:06.020 -> 38 : 100000
    19:36:06.020 -> 3A : 0
    19:36:06.020 -> 3B : 100000
    19:36:06.020 -> bq25703a digout: not_proc_hot/ChrgOK : 11
    19:36:06.352 -> 3B : 11100000
    19:36:44.390 -> E & F maxInputCurrent: 3300 mA
    19:36:44.390 -> 21 : 100000
    19:36:44.425 -> 25 inputCurrentDPM: 3300 mA
    19:36:44.425 -> bq25703a digout: not_proc_hot/ChrgOK : 10
    
    

  • hey Alain,

    I noticed in your register dumps that you set VSYSMIN to 0mV during your initialization. And I also notice you don't read 0x20 later in the register dump, only 0x21. I have a suspicion that your 0mV is tripping the SYS SHORT protection, and preventing those two reigsters from being set.

    Additionally, I would have you compare your schematic against our checklist here in this FAQ: 

    Regards,

    Joel H

  • Hello,

    Thanks for your remark. I was not initializing at all VSYSMIN at start but now I tried to set it to 4352mV and also to 12544mV (batteries are at 6.3 V, 5 NIMH cells).

    The charger did not start, I join the register dumps for 4352mV. It is the same sequence for 12544 mV. I could see that when a RESET_REG is done, the VSYSMIN is set to 0V. After initialization I read once all registers, then I display every register changes. 0x21 changes as soon as CHRG_OK 0x21[7] is set to 1 or reset to 0. No status error appear so 0x20 remain to latest display value, 0.

    ResetWhileChargingMinSys4352.txt
    18:30:25.380 -> 0 : 1110
    18:30:25.380 -> 1 : 10
    18:30:25.380 -> 2 & 3 ChargeCurrentRqst : 0 mA
    18:30:25.380 -> 4 & 5 ChargeVoltageRqst: 7680 mV
    18:30:25.380 -> 6 : 0
    18:30:25.380 -> 7 : 0
    18:30:25.380 -> 8 : 0
    18:30:25.380 -> 9 : 0
    18:30:25.380 -> A & B minInVoltRqst: 3200 mV
    18:30:25.380 -> A & B minInVoltRqst: 3200 mV
    18:30:25.380 -> C & D minSystVoltRqst: 4352 mV
    18:30:25.380 -> C & D minSystVoltRqst: 4352 mV
    18:30:25.380 -> E & F maxInputCurrent: 3300 mA
    18:30:25.380 -> E & F maxInputCurrent: 3300 mA
    18:30:25.413 -> 20 : 0
    18:30:25.413 -> 21 : 100000
    18:30:25.413 -> 22 : 1
    18:30:25.413 -> 23 : 0
    18:30:25.413 -> 24 : 0
    18:30:25.413 -> 25 inputCurrentDPM: 3300 mA
    18:30:25.413 -> 26 : 0
    18:30:25.413 -> 27 inputVoltMeas: 3200 mV
    18:30:25.413 -> 28 dischrgCurrentMeas: 0 mA
    18:30:25.413 -> 29 chrgCurrentMeas: 0 mA
    18:30:25.413 -> 2A : 0
    18:30:25.413 -> 2B inputCurrentMeas: 0 mA
    18:30:25.413 -> 2C battVoltMeas: 2880 mV
    18:30:25.413 -> 2D systVoltMeas: 3200 mV
    18:30:25.413 -> 2E : 1000000
    18:30:25.413 -> 2F : 1111000
    18:30:25.413 -> 30 : 0
    18:30:25.413 -> 31 : 10
    18:30:25.413 -> 32 : 1110010
    18:30:25.413 -> 33 : 10
    18:30:25.413 -> 34 : 0
    18:30:25.413 -> 35 : 0
    18:30:25.413 -> 36 : 111100
    18:30:25.413 -> 37 : 1001010
    18:30:25.413 -> 38 : 0
    18:30:25.413 -> 39 : 10000001
    18:30:25.413 -> 3A : 11111111
    18:30:25.413 -> 3B : 10100000
    18:30:25.413 -> bq25703a digout: not_proc_hot/ChrgOK : 0
    18:30:25.413 -> EndInit EndInit EndInit EndInit EndInit EndInit EndInit
    18:30:25.579 -> 0 : 1110
    18:30:25.579 -> 1 : 10
    18:30:25.579 -> 2 & 3 ChargeCurrentRqst : 0 mA
    18:30:25.579 -> 4 & 5 ChargeVoltageRqst: 7680 mV
    18:30:25.579 -> 6 : 0
    18:30:25.579 -> 7 : 0
    18:30:25.579 -> 8 : 0
    18:30:25.579 -> 9 : 0
    18:30:25.579 -> A & B minInVoltRqst: 3200 mV
    18:30:25.579 -> A & B minInVoltRqst: 3200 mV
    18:30:25.579 -> C & D minSystVoltRqst: 4352 mV
    18:30:25.579 -> C & D minSystVoltRqst: 4352 mV
    18:30:25.579 -> E & F maxInputCurrent: 3300 mA
    18:30:25.579 -> E & F maxInputCurrent: 3300 mA
    18:30:25.579 -> 20 : 0
    18:30:25.579 -> 21 : 100000
    18:30:25.579 -> 22 : 0
    18:30:25.579 -> 23 : 0
    18:30:25.579 -> 24 : 0
    18:30:25.579 -> 25 inputCurrentDPM: 3300 mA
    18:30:25.579 -> 26 : 0
    18:30:25.579 -> 27 inputVoltMeas: 3200 mV
    18:30:25.621 -> 28 dischrgCurrentMeas: 0 mA
    18:30:25.621 -> 29 chrgCurrentMeas: 0 mA
    18:30:25.621 -> 2A : 0
    18:30:25.621 -> 2B inputCurrentMeas: 0 mA
    18:30:25.621 -> 2C battVoltMeas: 2880 mV
    18:30:25.621 -> 2D systVoltMeas: 3200 mV
    18:30:25.621 -> 2E : 1000000
    18:30:25.621 -> 2F : 1111000
    18:30:25.621 -> 30 : 0
    18:30:25.621 -> 31 : 10
    18:30:25.621 -> 32 : 1110010
    18:30:25.621 -> 33 : 10
    18:30:25.621 -> 34 : 0
    18:30:25.621 -> 35 : 0
    18:30:25.621 -> 36 : 111100
    18:30:25.621 -> 37 : 1001010
    18:30:25.621 -> 38 : 0
    18:30:25.621 -> 39 : 10000001
    18:30:25.621 -> 3A : 11111111
    18:30:25.621 -> 3B : 10100000
    18:30:37.326 -> 21 : 10100000
    18:30:37.326 -> bq25703a digout: not_proc_hot/ChrgOK : 1
    18:30:37.493 -> E & F maxInputCurrent: 1150 mA
    18:30:37.493 -> 25 inputCurrentDPM: 1150 mA
    18:30:38.248 -> 3B : 11100000
    18:30:43.750 -> 2 & 3 ChargeCurrentRqst : 64 mA
    18:30:46.942 -> 2 & 3 ChargeCurrentRqst : 128 mA
    18:31:57.296 -> Reset Reg 0x35 6
    18:31:57.429 -> 1 : 11100010
    18:31:57.429 -> C & D minSystVoltRqst: 0 mV
    18:31:57.429 -> 30 : 10000
    18:31:57.429 -> 32 : 10110111
    18:31:57.429 -> 36 : 1010100
    18:31:57.429 -> 38 : 100000
    18:31:57.429 -> 3A : 0
    18:31:57.429 -> 3B : 100000
    18:31:57.429 -> bq25703a digout: not_proc_hot/ChrgOK : 11
    18:31:58.194 -> 3B : 11100000
    18:32:45.441 -> E & F maxInputCurrent: 3300 mA
    18:32:45.441 -> 21 : 100000
    18:32:45.441 -> 25 inputCurrentDPM: 3300 mA
    18:32:45.441 -> bq25703a digout: not_proc_hot/ChrgOK : 10
    18:33:29.280 -> Reset Reg 0x35 6
    18:33:29.423 -> 2 & 3 ChargeCurrentRqst : 0 mA
    18:33:29.423 -> 3B : 100000
    
    

  • Hello,

    I write back because I do not understand why the charger is not working. I do not know why the ADC measurement does not start after I set register 3B : 0b11100000, and 3A : 11111111.

    I know that could happen if I was in low power mode (REG0x01[7] = 1), but my register 0x01 is 0b00000010.

    Do anyone would have a reason why the measurement ADC is not launched ? Thank you,

  • Hi, Alain,

    This is weird, especially it worked previously. I checked your register settings, didn't see any unusual. Could you check if Vin, REGN, ILIM-HIZ and CELL-BATPRESZ voltage in the range? 

  • Hello,

    I could perform measurements on REGN and CELL-BATPRESZ, with 4 NiMH batteries plugged via Batfet.

    Then I set Vin to 4.98V, so I get pin CHRG_OK turning on. At that moment, no measurement are launched while I have registers 3A : 11111111 & 3B : 11100000.

    In those conditions, I measure REGN pin voltage and I get less than 50mV, far from the 6V LDO announced in the datasheet. Then I measure CELL-BATPRESZ and I get nearly 0V, very lower with regards to the Vdda voltage that should be a few volts. This Vdda is also near 0V.

    The register 0x32[7] is set to 1 in order to disable ILIM_HIZ pin, so I use to set it to GND. Even when I set it higher than 4.0V, the adc converters do not start and I still have same voltage values for REGN, CELL-BATPRESZ and Vdda.

    I suppose the LDO is blown out, what do you think ?

    Vincent,

    20200426_RegisterHistory.txt
    5.09 V battery
    
    4.98 V input
    
    0 : 1110
    1 : 10
    2 & 3 ChargeCurrentRqst : 0 mA
    4 & 5 ChargeVoltageRqst: 5632 mV
    6 : 0
    7 : 0
    8 : 0
    9 : 0
    A & B minInVoltRqst: 3200 mV
    A & B minInVoltRqst: 3200 mV
    C & D minSystVoltRqst: 4352 mV
    C & D minSystVoltRqst: 4352 mV
    E & F maxInputCurrent: 3300 mA
    E & F maxInputCurrent: 3300 mA
    20 : 0
    21 : 100000
    22 : 0
    23 : 0
    24 : 0
    25 inputCurrentDPM: 3300 mA
    26 : 0
    27 inputVoltMeas: 3200 mV
    28 dischrgCurrentMeas: 0 mA
    29 chrgCurrentMeas: 0 mA
    2A : 0
    2B inputCurrentMeas: 0 mA
    2C battVoltMeas: 2880 mV
    2D systVoltMeas: 3200 mV
    2E : 1000000
    2F : 1111000
    30 : 0
    31 : 10
    32 : 1110010
    33 : 10
    34 : 0
    35 : 0
    36 : 111100 
    37 : 1001010
    38 : 0
    39 : 10000001
    3A : 11111111
    3B : 11100000
    bq25703a digout: not_proc_hot/ChrgOK : 0
    EndInit EndInit EndInit EndInit EndInit EndInit EndInit
    0 : 1110
    1 : 10
    2 & 3 ChargeCurrentRqst : 0 mA
    4 & 5 ChargeVoltageRqst: 5632 mV
    6 : 0
    7 : 0
    8 : 0
    9 : 0
    A & B minInVoltRqst: 3200 mV
    A & B minInVoltRqst: 3200 mV
    C & D minSystVoltRqst: 4352 mV
    C & D minSystVoltRqst: 4352 mV
    E & F maxInputCurrent: 3300 mA
    E & F maxInputCurrent: 3300 mA
    20 : 0
    21 : 100000
    22 : 0
    23 : 0
    24 : 0
    25 inputCurrentDPM: 3300 mA 
    26 : 0
    27 inputVoltMeas: 3200 mV
    28 dischrgCurrentMeas: 0 mA
    29 chrgCurrentMeas: 0 mA
    2A : 0
    2B inputCurrentMeas: 0 mA
    2C battVoltMeas: 2880 mV
    2D systVoltMeas: 3200 mV
    2E : 1000000
    2F : 1111000
    30 : 0
    31 : 10
    32 : 1110010
    33 : 10
    34 : 0
    35 : 0
    36 : 111100
    37 : 1001010
    38 : 0
    39 : 10000001
    3A : 11111111
    3B : 11100000
    21 : 10100000
    bq25703a digout: not_proc_hot/ChrgOK : 1
    2 & 3 ChargeCurrentRqst : 64 mA
    2 & 3 ChargeCurrentRqst : 128 mA

  • Hi, Alain,

    That is what I worried. REGN is the most important voltage for the function of BQ25703A. It provides the gate drive current as well as the power for VDDA rail.  It looks to me the part was damaged during the troubleshooting. Please replace the IC or work on a new prototype.