The TI E2E™ design support forums will undergo maintenance from July 11 to July 13. If you need design support during this time, open a new support request with our customer support center.

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.

BQ24157: Unable to program the Safety Limit Register (Memory location: 06)

Part Number: BQ24157

Hi there.

Despite several attempts, we are unable to program the Safety Limit Register (Memory location: 06). We are able to successfully program all the other (writable) registers, but not this one!

We also attempted updating the register immediately after resetting the IC, but no effect. It would be great if anyone could guide us in the right direction, or what we might be missing.

Also, we could not clearly understand what the (READ/WRITE, Write only once after reset!) phrase exactly means. Is it so that in order to update this register more than once, we need to reset the IC?

Looking forward to hearing back soon.

Warm regards,

Abbas Mehdi.

  • Hi Abbas,

    The safety limit register can only be written to once immediately following the CSOUT pin rising above the 2.X V voltage levels as explained in the datasheet.  If you want to reset them, you have to power cycle the device.

    Regards,

    Jeff

  • Hello Jeff.

    Really appreciate your response.

    Tried that as well! Didn't work.

    Could you please elaborate on what do you mean by ”immediately" here? There has to be a time-window right (but I couldn't find that in the datasheet)?

    Also, the datasheet says that this register is the only one in this device that retains it's value even on a POR. We need to give a device reset instruction through I2C to reset this register.

  • Hi Abbas,

    By immediately, I mean before any other write to any register.  If you are using the EVM and its GUI, I recommend

    1. disabling GUI immediate write

    2. removing VBUS and VBAT and ensure that the CSOUT is below 2.0V

    3.  applying VBUS and/or VBAT so CSOUT rises above and stays above 2.5V

    4.   changing the safety limit register

    5.   using the write all button in the GUI.

    Regards,

    Jeff

  • Hello Jeff.

    Thank you for your response. Really appreciate that.

    Through your guidance, we were able to figure out what we were doing wrong. We were resetting the device manually through the Battery Termination/Fast Charge Current Register (Memory Location: 04: B7), after the POR, which itself is a write operation. We were able to program the Safety Limit Register (Memory location: 06) once we removed the manual reset instruction from our code.

    Thanking you once again.

    Warm regards,

    Abbas Mehdi.