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.

TPS6594-Q1: How to detect missing of backup RTC battery for TPS6594

Part Number: TPS6594-Q1
Other Parts Discussed in Thread: TPS6593-Q1, , AM69

Tool/software:

Hi,

How is it possible to detect missing of battery or dead battery (when Vbat is eg. less than 2.7V) for TPS6594 ?

I use also charger functionality and charger indication bit

However when battery is not connected this bit return also 1  same as when battery reached termination voltage.

Of course is possible to get the start point (based on RTC_STATUS RUN bit) when RTC is first time initialized (and time is run from 2000) but this is executed also when battery is inserted first time after power up.
Additionally I observe that FIRST_STARTUP_DONE is always set to1 after power up reset with or without battery. I clear it only before RTC initialization and set to 1 after this initialization one time. 
Is it possible to read FIRST_STARTUP_DONE= 0 after power up ?
My observation:
RTC start UP is FIRST_STARTUP_DONE value
RTC status is RUN bit in RTC_STATUS register
1) power on without battery
---- RTC start UP 1
---- RTC status 0
RTC initialization


2) reset without battery
---- RTC start UP 1
---- RTC status 1
RTC running (without RTC initialization)

3) then first time insert battery
---- RTC start UP 1
---- RTC status 0
RTC initialization

4) next power on with battery
---- RTC start UP 1
---- RTC status 1
RTC running (without RTC initialization)
So, I'am looking way how detect missing of battery. Could you please help ?
BR,
Dariusz Gasiorowski
  • Hello Dariusz,

    On all our catalog products, the BB_CHARGER_EN is set to value 0x0, which is disabled by default, which sets value of BB_EOC_RDY to 0x0.

    The RTC backup batter charger is not meant to be a replacement for a Battery Management System.

    The BB_EOC_RDY works independently of the RTC functionality. You can have RTC functionality without ever touching this functionality, as for the having the the value coming off as 1, have you measured the voltage at this pin, is it at the target voltage, then it will signal as high.

    So if the charger is active and there's nothing there on the pin, then it reached the target voltage, it reads high and if the battery is connected and reaches the target voltage, same thing.

    Of course is possible to get the start point (based on RTC_STATUS RUN bit) when RTC is first time initialized (and time is run from 2000) but this is executed also when battery is inserted first time after power up.
    Additionally I observe that FIRST_STARTUP_DONE is always set to1 after power up reset with or without battery. I clear it only before RTC initialization and set to 1 after this initialization one time. 
    Is it possible to read FIRST_STARTUP_DONE= 0 after power up ?

    By default FIRST_STARTUP_DONE is 0x0. FIRST_STARTUP_DONE is set by the external device none of the catalog flavors of the TPS6594-Q1 or TPS6593-Q1 have this on default, some software something is setting this value to 1. FIRST_STARTUP_DONE only controls the inclusion or exclusion of the registers when a reset occurs for VCCA < UVLO_VCCA

    So, I'am looking way how detect missing of battery. Could you please help ?
    BR,

    In short, this is not the circuit to detect if there's a missing battery.

    BR,

    Nicholas McNamara

  • Hi Nicholas,

    Thank you for your explanation.

    So is there any other method of functionality that can be used to detect the lack of a battery ?

    BR.
    Dariusz Gasiorowski
  • Hello Dariusz,

    For any of catalog parts with preprogrammed sequencing, it depends one of the methods available would require a freely available power rails, explanation below. If you could provide me a specific part number or target SoC (if you can't say it publicly, please email me n-mcnamara@ti.com )

    Now for a custom programmed part, a voltage monitor from one of the power resources could be used to have a voltage monitor arbitrarily set a nominal voltage and see if this falls within an OV/UV condition, this would allow for a better set target if whether of not a battery is present.

    BR,

    Nicholas 

  • Hi Nicholas,
    I use PMIC TPS6594-Q1 connected to TDA88/AM69 SOC via 2C bus.  All is powered up from an external power supply.  Could help to describe a way to detect a missing battery in the slot or to check if it is within the correct voltage range ?
    BR,
    Dariusz Gasiorowski
  • Hello Daiusz,

    If I'm not mistaken, you're using TPS6594133A as the PMIC, correct?

    If you are not using the other lower power modes such as the GPIO or DDR retention they maybe one of the GPIOs that would normally be dedicated to that feature can be used to detect a high level ~1.2V, while I wouldn't advise this, it is the only route as everything else is fixed for this particular PDN.

    I'm not too familiar with all of the features of the SoCs, but doesn't the AM69/TDA88 have an ADC available, would that not work? For that question I'll move this over to the processor team.

    BR,

    Nicholas McNamara

  • Hi Nicholas,

    Thank you for reply.  Yes I use TPS6594133A as the PMIC. 

    I was wondering if there are any registers (read by I2C) in PMIC that can be used to detect a missing battery?

    It is not clear regarding of usage of PMIC GPIO/DDR  - is there any such functionality to use GPIO as detector of lacking PMIC backup battery?  What you mean by PMIC DDR ? There is also SCRATCH_PAD_REG_x registers:

    "Scratchpad for temporary data storage. The register is reset only
    when VRTC is disabled. The data is maintained when VINT regulator
    is disabled, for example during LP_STANDBY state."

    I'm not sure if this can be used, is it possible in this case?

    If I understand correctly you suggest using an ADC eg. from SoC connected to Vbackup of RTC PMIC  (to monitor this voltage by reading  via ADC) ?

    If yes, This suggest that there is no such PMIC internal  monitor of Vbackup functionally ? 

    BR,

    Dariusz Gasiorowski

  • Hello Dariusz,

    There are no register's on the PMIC that allow for a direct indication of a battery's status. Only whether or not that the VBACKUP pin has reached it's charging level (Through set voltage level). See the below states:

    1. If there is no battery (pin is floating), the pin will be at the target level,

    2. else if there is a battery at full charge, the pin will be at the target level,

    3. & else would indicate the pin has not reached the target level and will provide charge.

    From 1 & 2, without any other context there is no way to tell if there is a battery, this is without the consideration of other failure modes of the battery such as leaking cells lowering the threshold placing the charge pin & battery system into state 3

    It is not clear regarding of usage of PMIC GPIO/DDR  - is there any such functionality to use GPIO as detector of lacking PMIC backup battery?  What you mean by PMIC DDR ? There is also SCRATCH_PAD_REG_x registers:

    "Scratchpad for temporary data storage. The register is reset only
    when VRTC is disabled. The data is maintained when VINT regulator
    is disabled, for example during LP_STANDBY state."

    I'm not sure if this can be used, is it possible in this case?

    If I understand correctly you suggest using an ADC eg. from SoC connected to Vbackup of RTC PMIC  (to monitor this voltage by reading  via ADC) ?

    If yes, This suggest that there is no such PMIC internal  monitor of Vbackup functionally ? 

    Yes, my suggestion is to use the ADC from SoC to monitor the battery voltage from the battery, although I'm not sure of the recommend operating conditions from the ADC.

    My point is that if you want a way to tell if a battery is present you'll need more than the VBACKUP pin registers as it is not a battery management system. There is an internal monitor, hence the register to tell if the pin has reached the target voltage level, again it's not a full battery management system to detect failure modes.

    If this functionality off backup battery state is that important, I would do the above as the ADC with an algorithm would suit it better than relying on a single PMIC register. As this would allow for logging of the times when there might be issues regarding the battery anyhow and when that event occurs do fault handling.

    The VBACKUP pin is for providing power to the RTC block of the PMIC and providing (when elected to) charge to the backup source, IT IS NOT A BATTERY MANAGEMENT SYSTEM.

    BR,

    Nicholas McNamara

  • Hello Darius,

    Sorry if the previous came off as rude, just want to make it clear.

    From my understanding the company works on safety products and we don't want to create false expectations on features so that it doesn't become an issue later in development. Such as when failure modes are being investigated and this oversight comes to light.