Electronic – MCU HIB pin only pulls Buck/Boost EN pin every-other Hibernation

logic-levelmicrocontrollerpulldown

MCU: TM4C1294NCPDT

Buck/Boost Converter: TPS63051

Hib dedicated LDO: MIC5504-3.3YM5-TR

I have a LiPo battery coming into the board, feeding both the TPS63051 and the MIC5504. Tiva's HIB pin is connected to the TPS63051 EN pin (Active High). When Tiva goes into Hibernate, HIB pin is pulled low. This should disable the TPS63051. However, it only does this exactly every-other-time. The MIC5504 should always be on, to provide power to the HIB module (plus RTCC.)

I have an LED connected to the +3v3 output of the TPS (for indicating that it's on) and one connected to an MCU output pin (which should shut off during hibernate)

Here's how it looks:
Multimeter on HIB pin, plug in LiPo:

  1. HIB High @ +3.331V

  2. MCU hits hibernation

  3. HIB Low @ 0.01V

  4. All LEDs dim (should be off…)

  5. Hibernation ends, LEDs are full brightness, HIB is back to +3.331V

  6. MCU hits hibernation

  7. HIB Low @ 0.01V

  8. All LEDs fully off

Rinse, repeat.

When the LEDs only partially dim, the TPS63051 output reads +2.195V…

I'm stumped. What's going on?!

Here's the relevant parts of the schematic. Note: The LiPo battery connects to a (not shown) BQ24232 Battery Charger IC, which provides VSYS to the Buck/Boost Converter and the Bat. LDO Regulator.

HIB Schematic

Best Answer

I suspect that in step (4) the Vbat supply is drooping too low and the MCU is entering brown-out, hence the dim LEDs (GPIO in reset tends to drive LEDs weakly). I suspect it's doing this because according to the Tiva datasheet, the GPIO remains active during hibernation, so that LED you have connected to GPIO doesn't necessarily shut off as you claim.

So as you enter hibernation, the HIB pin will go low, causing the 3.3V to fall. The MCU will switch to Vbat but because there is a 51R in series, it will droop trying to supply the GPIO which is still on. It'll hit brown-out, and some oscillation could occur.

Maybe the second time around the GPIO has switched off and so the switch over to Vbat succeeds.