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.

BQ27520-G4: Time from enabling CE to obtaining SOC data

Part Number: BQ27520-G4

Tool/software:

Dear Sirs and Madams,

We are debugging the BQ27520-G4.

The sequence of steps to obtain the SOC is listed below.

(1) Voltage is supplied to the BQ27520-G4 when the battery is inserted. At this time, the CE of the BQ27520-G4 remains 'L'.Insert battery.

(2) After 3.5 seconds, CE of BQ27520-G4 goes 'H'.

(3) After another 2.2 seconds, a command is issued to the BQ27520-G4, but no ACK is returned.

(4) After 0.8 seconds, an ACK is returned, but the battery voltage, remaining charge, and SOC values ​​are returned as 0x0.

(5) After 2.5 seconds, the correct values ​​for battery voltage, remaining charge, and SOC are returned.

So We would like to confirm, how long does it take after setting CE on the BQ27520-G4 to 'H' until the remaining amount IC returns the correct value?

Currentrly, it takes about 5.5 sec based on actual measurements.

Regards,

Masashi

  • It takes less than a second for the gauge to boot up and respond on the bus (ACK).

    The gauge runs on a 1 second cycle for data conversion so depending on your timing, it can take up to 1 second from enabling the gauge until it replies with correct measurements.

  • Hi Dominik,

    If we want to get data as quickly as possible, does that mean we can get it by issuing a command about 1 second after enabling CE on the BQ27520-G4?

    Regards,

    Masashi

  • Correct, you should get a response within 1 second of enabling CE.

  • Hi Dominik,

    We connected the BQ27520-G4 to a battery, and one second after CE transitioned to 'H', we issued the Voltage(), RemainingCapacity(), and StateOfCharge() commands, but all returned '0'.

    Similarly, two seconds later, all '0' was returned, and from three seconds onwards the correct values ​​were returned.

    In other words, the correct value is returned 3 seconds after CE is set to 'H', but is there a way to shorten this time?

    /* Operation flow */

    1. Connect battery

    2. Set CE to ’H'

    3. After 1 sec, 

     When the Voltage() command is sent, 0 is returned.

     When the RemainingCapacity() command is sent, 0 is returned.

     When the StateOfCharge() command is sent, 0 is returned.

    4. Another 1 second later (2 seconds after CE transitions to 'H'), 

     When the Voltage() command is sent, 0 is returned.

     When the RemainingCapacity() command is sent, 0 is returned.

     When the StateOfCharge() command is sent, 0 is returned.

    5. Another 1 second later (3 seconds after CE transitions to 'H'), 

     When the Voltage() command is sent, 0x1910 is returned.

     When the RemainingCapacity() command is sent,  0x8703 is returned.

     When the StateOfCharge() command is sent, 0x5F00 is returned.

    Regards,

    Masashi

  • Please provide a scope screenshot that shows when the CE pin is enabled and when the gauge starts ACK'ing data on the bus.

  • Hi Dominik,

    Would the following screenshot be okay?

    Regards,

    Masashi

  • Hi Dominik,

    Do you have any update?

    Were you able to obtain correct data 1 second after CE transitioned to 'H'?

    Regards,

    Masashi

  • There are several times:

    1. Time until the gauge ACKs. This is what you show in the screenshot. At this time, the firmware is up and running fully. This means that the embedded CPU booted up and that it's ready to communicate.

    2. After #1, the gauge needs to acquire data. This runs on a 1 second measurement cycle. Therefore the measurements will not be meaningful until at least 1 second expired after #1. The gauge will report accurate measurement: Current, voltage and temperature 1 second after #1.

    3. After #2, the gauge algorithm needs to run a discharge simulation using the reference point that it established with the measurements from #2. The gauge will complete this after N seconds if the measurements aren't stable - it will require that the reference point (depth of discharge) doesn't change significantly. N depends on how stable the measurements are. If you have a load that causes voltage swings above a few mV then this may take several seconds. You will read correct measurements during this time.

  • Hello Dominik,

    Thanks for your confirmation.

    We also checked "A.1.3 OCV Timing" in the TRM.

    bq27520-G4 Technical Reference Manual

    We understood that being able to read correct data 3 seconds after POR ( = CE goes 'H') is generally correct.

    We understand that there is a difference in N, but is there a way for the gauge IC to know when the correct data is set?

    Regards,

    Masashi

  • Yes, you can read 2.1.1 CONTROL_STATUS and check bit INITCOMP. This bit will turn 1 when data is accurate.