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.

BQ76925: How to Reset BQ76925 after I2C Failed

Part Number: BQ76925

Hi Team,

My customer have some questions:

1. How to deal with the BQ76925 when I2C failed happened? The fail is that the I2C bus transient short firstly, then recover by software.

2. How to reset the BQ76925?

The background is that my customer found that after the I2C fail, they still could use the I2C communication, but the voltage sensing data is remain the data before fail and not update. They want to know how to resolve this issue.

Thanks!

Best Regards,

Xing

  • Hi Xing,

    1. The BQ76925 has no reset pin.  If I2C is stuck due to a glitch or transient short causing a responder device like BQ76925 to hold the bus low the host should clear the bus by sending clocks until the slave releases the bus.  It sounds like the host is doing this.  The BQ76925 may have had it status changed by the bus errors, so all registers should be re-written to the desired values.

    2. The BQ76925 has 2 reset methods, one is the connection of the cells, the other is the wake up from shutdown. Connection of cells is not practical in the system.  If the host is powered from a separate supply the part can be reset by sending it to sleep, waiting for the V3P3 to fall and waking the part with the ALERT signal.  This resets the logic and the POR bit is set.  If the host is powered from the V3P3 some other intervention would be required to wake from sleep.

    The BQ76925 is an analog output monitor.  It is the MCU which must digitize the output for a value.  If the transients only lock the bus, they may not change the settings for the CELL_CTL register which determines which cell or source is output on VCOUT and the POWER_CTL register which has the enable bit for the VCOUT driver. If those registers were not changed in the transient event the BQ76925 should output the same analog value.  If the transient was so sever it caused the BQ76925 to reset, the POR bit should be se tin the STATUS register and all register values will need to be restored.  It is likely a good practice to restore the 5 control registers to a known value after a fault recovery.  Cell voltages are read in a system with the BQ76925 by the host MCU setting the VCOUT to the desired selection, converting the value in the MCU, calculating the voltage and advancing the CELL_CTL register to the next value and repeating.  If the cell voltages do not update, check the sequence routine or ADC for upset.  VSS and reference voltages are also available in CELL_CTL for output on VCOUT for diagnostic checks.