TPS25751: System shuts down without battery connected

Part Number: TPS25751
Other Parts Discussed in Thread: BQ25798, , TPS25750

Tool/software:

Hi there,

We are using the TPS25751 together with the BQ25798 charger IC on a custom NXP-based board. The TPS25751 is configured to operate as both a source and a sink.

Our issue is that when running without a battery (battery not connected with board), the system shuts down immediately after loading the TPS25751 patch. With a battery connected, the system boots successfully. It seems the problem is related to the voltage switch that happens during fast charging.

Our requirement is that

1. Without battery connected : system should be able to boot from the USB-C power supply (through PD) even when no battery is connected. 

2.With battery connected : system should support fast charging as expected.

Currently, if we do not load the TPS25751 configuration patch, the system powers up correctly without the battery.

Could you advise which configuration settings are required to support both no-battery operation and fast charging when a battery is present?

Thanks,

Pratham

  • Hello,

    Could you advise which configuration settings are required to support both no-battery operation and fast charging when a battery is present?

    I would need to understand why the system is shutting down.

    Even without the battery the PD controller will attempt to write to the BQ25798 after the patch is loaded. 

    Does the BQ device still acknowledge the I2C writes (pd will think there is an error and shut down if NACK)?

    If you do not load the patch, then the device will operate based upon the dead-battery configuration defined by ADCINx.  Which configuration are you using? AlwaysEnableSink or NegotiateHighVoltage?  What minimum voltage do you require in the no-battery operation?

    Is there any other interaction with the PD controller, ie a MCU which clears the dead-battery flag or writes to any registers?

    In your system, can you withhold the configuration patch so that it is only available when the battery is present?  (if using an EEPROM tie to VIN_3V3 instead of LDO_3V3).

    Regards,
    Chris

  • Hi  

    Thanks for your prompt response,Here's the information you have asked for,

    If you do not load the patch, then the device will operate based upon the dead-battery configuration defined by ADCINx.  Which configuration are you using? AlwaysEnableSink or NegotiateHighVoltage?  What minimum voltage do you require in the no-battery operation?

     I have attached the snap from the schematic for your reference. The minimum voltage required in no-battery operation is around 5V.

    Is there any other interaction with the PD controller, ie a MCU which clears the dead-battery flag or writes to any registers?

    Yes, the PD controller is interfaced with the MPU over I2Ct for patch loading and register configuration, We are using the TPS25750 linux kernel driver for it.

    Here's the link for the driver (https://lists.openwall.net/linux-kernel/2023/08/20/86).

    In your system, can you withhold the configuration patch so that it is only available when the battery is present?  (if using an EEPROM tie to VIN_3V3 instead of LDO_3V3).

    Unfortunately, Our design does not support that. 

    Thanks and Regards,

    Pratham

  • Hello,

    The resistor divider on ADCIN2 is 200k/(200k+499K) = 0.286 and results in decode value of '4'. https://www.ti.com/lit/ds/symlink/tps25751.pdf#page=39

    This is not a valid decode value for ADCIN2.  https://www.ti.com/lit/ds/symlink/tps25751.pdf#page=45

    Can you change the ADCIN1 and ADCIN2 configuration for AlwaysEnableSink with the appropriate I2C address for your application?

    Also, can you monitor I2Cc on the PD controller?

    Thanks and Regards,
    Chris