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.

TPS25751: TPS25751S + BQ25731 UVLO setting

Part Number: TPS25751
Other Parts Discussed in Thread: BQ25731, , BQ25730

Tool/software:

Hey Guys, 

I designed a board using the two ICs (TPS25751S + BQ25731). It's working.. but the most important thing,

There is no way for me to set the UVLO for the '31 device.

I've been using the USBCPD customization tool to make the file for the EEPROM. There is no such setting that i can see, for the UVLO (battery low cutoff) 

How can i get this going? 

I'm so suprised the setting is missing.


~James

  • Hi James, 

    Thank you for reaching out!

    Could you specify which BQ25731 register you are looking to set for UVLO? 

    Best Regards, 

    Aya Khedr 

  • Hi Aya, I’m asking about configuring the BQ25731’s UVLO (Under-Voltage Lockout) through the TPS25751’s EEPROM settings using the USBCPD customization tool. There doesn’t seem to be an option for it. If it’s not configurable there, how is the UVLO threshold determined for the BQ25731 in this setup?

  • Hi James, 

    There are some BQ registers that are automatically configured by the TPS25751. 

    Are you referring to the Input Voltage (VINDPM) register? 

    Best Regards, 

    Aya Khedr

  • Hi Aya,


    How can I get the system to turn off at 10.8v? 

    on page 26 of the BQ'31 IC, it states: 

    "Host can adjust VINDPM threshold after device POR through InputVoltage register(0x0B/0Ah[]), range from 3.2V to 19.52V with LSB 64mV."

    Are we able to set this using the customization tool? I'm using an SLA battery.

    Thanks

  • Hi James,

    Aya is currently out of office and will be returning next week, so please expect some delays in response. I'll try to help where possible.

    The system currently does not support setting the VINDPM register to a fixed value. Setting this is not an option in the customization tool. The VINDPM register is currently being used to actively prevent UVLO due to excessive current draw. The value get's programmed based off of the active PD contract and changes with PD contract voltages.

    Do you have an MCU in your system that can act as an I2C host?

    Thanks and Regards,

    Chris

  • Hey Chris, I could implement and MCU, if that's what it takes to get it working. Could you provide some sample C code at all?

    Also,. I've tried to read back some key data through the I2Ct line, but the numbers are always incorrect. 

    And if I have to use an MCU to set some BQ registers, which of the i2c lines should I use? And should I keep the eeprom IC or discard it? 

    Cheers

  • Hi James,

    I could implement and MCU, if that's what it takes to get it working.

    This might be required, but might not be simple. My current concern is that the PD controller updates this register every time a new contract has been negotiated which would mean that the MCU would need to update it every time as well. I'm not sure if we have a good indicator/interrupt of this event that would guarantee the correct timing after the PD controller has sent the I2C command. Please give us a couple days to review this and we will try to get back to you next week. I want to discuss this with the team next week before deciding anything.

    Could you provide some sample C code at all?

    Unfortunately we do not have sample C code to share.

    Also,. I've tried to read back some key data through the I2Ct line, but the numbers are always incorrect. 

    Can you elaborate? Share an example of what you are reading and what you are expecting.

    Keep in mind the I2C payloads have a specific format. (image from TRM)

    And if I have to use an MCU to set some BQ registers, which of the i2c lines should I use? And should I keep the eeprom IC or discard it? 

    If you use an MCU, it would depend on the application and how much control you want. If you want the PD controller to maintain some control over the BQ regarding the active contracts and power, you would want to leave the TPS25751 I2Cc connected to the BQs I2Ct lines. In this configuration, you can leverage the I2Cw and I2Cr 4CC commands to write I2C through the tps25751 to the BQ if and when needed.

    If you want full control, you can remove the TPS25751 I2Cc to BQ I2Ct I2C connection, and have the MCU directly connected to both devices I2Ct lines.

    Thanks and Regards,

    Chris

  • Hi Chris, 

    Okey, I'll wait for your reply. 

    The more I look into the datasheets, the more confused I am about this setup.

     VINDPM doesn't seem to be the right register for UVLO. I wanted to use the BQ25730 ic for it's BATFET, and then I could also use the switched SYS net for other things, but it's not supported by the customization tool. 

    In the tool, 

    If the team could add UVLO setting for the BQ'31 IC and hysteresis to prevent oscillation when battery load drops and vbatt rises,
    and add support for the BQ25730, that would be really convenient, and turn this setup into a comprehensive solution.

    Apart from the lack of undervoltage lockout, the circuit is working well enough. Getting high 90's efficiency at 100W and haven't starting tweaking with things yet.



  • Hi James,

    VINDPM doesn't seem to be the right register for UVLO.

    Do you know what register might be affecting UVLO? I primarily support the PD controller devices, and am by no means an expert with the BQ parts. You had mentioned it in the past to Aya so we were checking there. I'll also check internally. VINDPM does seem to affect some form of undervoltage monitoring, but if it is not the correct register, please let us know.

    Thanks and Regards,

    Chris

  • Hey Chris, 

    I think VSYS_MIN Register (0x3E) of the BQ'31 should be set to 0x2A00 for 10.8v shutoff. I've been trying to set the value directly on the shared I2Cc line, but have had no luck,.. I'm hoping one of your team knows the answer.  
    The VINPDM is usefull if the TPS IC is only supplying one fixed voltage, but i'm trying to make this work as a battery bank. Everything else is working ok. Just no UVLO. I think you guys should really add into the USBCPD tool, some commands for the TPS'51 IC to explicitly set VSYS_MIN.

    If you could tell me, where in the bin file, VSYS_MIN setting is, and hopefully it is in there, and being read, that would be great. 

    Hoping for some good news,

    Cheers from down under, James

  • Hey James,

    Thanks for pointing out that register, let me check with the team and get back to you tomorrow.

    Thanks and Regards,

    Chris

  • Hey Chris, any update? 

    It's been a few weeks now.

    Cheers

  • Chris is out of office this week. 

  • Hi James, 

    Thank you for your patience. 

    I am going to loop in a battery charger expert to better understand the requirement for VSYSMIN. From my understanding, it looks like there isn't a way to configure the VSYSMIN value on the BQ25731. 

    Best Regards, 

    Aya Khedr 

  • HI Aya and James,

    BQ25731 does not have a battery FET so it is not an NVDC charger.  Therefore there is no VSYSMIN.  The output of the charger is the battery voltage.

    Regards,

    Jeff