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.

BQ25896EVM-664: Problem reading REG0E and REG12 when charging

Part Number: BQ25896EVM-664

Hi,

I have been trying to read ADC values while charging. The PG LED glows, the STAT LED glows, REG0B reads the charging status to be fast charging, the battery voltage increases gradually when measured via a voltmeter but REG0E(VBAT) and REG12(ICHGR) read only zero's. 

Please help!

Thanks,

Archita

  • Archita,

    Have you set CONV_START (REG02[7])=1? Please refer to the d/s 8.2.8 Battery Monitor for the details.

    For one-shot conversion (CONV_RATE = 0), the CONV_START bit can be set to start the conversion. During the conversion, the CONV_START is set and it is cleared by the device when conversion is completed. The conversion result is ready after tCONV (maximum 1 second).

    For continuous conversion (CONV_RATE = 1), the CONV_RATE bit can be set to initiate the conversion. During active conversion, the CONV_START is set to indicate conversion is in progress. The battery monitor provides conversion result every 1 second automatically. The battery monitor exits continuous conversion mode when CONV_RATE is cleared.

    Thanks,

    Ning.

  • Hi Ning,

    I have read through the datasheet already(a good number of times by now, obviously) and programmed the host controller accordingly. My controller is currently programmed for continuous conversion, 

    CONV_START = 1
    CONV_RATE = 1

    When the battery is discharging am able to read values from REG0E, REG0B, REG12.
    But, when battery is charging I am unable to read correct values from REG0E and REG12(both reading only zero's) but REG0B values are read correctly. 

    Any other register setting that I am missing out maybe? Hope to get some heads up in your next reply.

    Thanks, 

    Archita

  • Archita,

    What are the test conditions (VBUS, VBAT, IBAT, VSYS, ISYS). Could you please share all the register values?

    Thanks,

    Ning.

  • Hi Ning, 

    The issue has been solved long back. The problem occurred because the values written to the register via I2C during initialization were being corrupted somewhere in between the loop.

    Thanks, 
    Archita

  • Archita,

    Thank you very much for the update. The thread is closed.

    Ning.