The GTA02 Charger Issue

This is a brief summary of the GTA02 charger problems we are currently investigating.

What's The Problem ?

We observed that GTA02 fails to power up or to charge a sufficiently depleted battery. [EXPLAIN] The behaviour of an empty battery can be approximated by simply removing the battery.

Further investigation revealed that the GTA02 turns off immediately if removing the battery and then activating the charger. The test procedure for this can be found here.

Furthermore, we observed that GTA02 would not start from USB if there is no battery present. We concluded that the charging issue and the failure to power on may have the same cause or are at least closely related. [JUSTIFY] We therefore focus now on solving the failure to power on.

VB_SYS Bypass

NXP recommend that VB_SYS be bypassed with 22uF to GND, as shown in the figure below.

This bypass exists in all GTA02v5 and GTA02v6 MP devices. Development prototypes may or may not have such a bypass.

The GTA02v5 device used in the experiments below has been reworked with a 10uF bypass. In some of the experiments, we add more capacitors.

VB_SYS Breakdown

When we add a 100uF bypass, GTA02v5 can start successfully without a battery. The yellow curve in the image shows what VB_SYS looks like. For reference, the blue curve shows the nRESET line.


The strong noise visible in these measurements is caused by external sources which have no significant effect on device behaviour.

Timeline (time is relative to the trigger, "t"):

We now remove the 100uF bypass, so VB_SYS is only bypassed with 10uF.


We now see that the VB_SYS drop is much deeper. This causes the PMU to abort the power-up process, and to retry after a few milliseconds. The exact interval seems to be variable. In the example shown here, it was measured to be exactly 100.64ms, but in most other experiments it was found to be around 34ms.

Note that the system never leaves reset. It is therefore not possible for the CPU to do anything at this point in time.

When we zoom into the VB_SYS drop, we see something like the following:

Note: this is a simplified view with a lot of averaging (to reduce the noise). The actual waveform can be more complex.

VB_SYS Drop Analysis

We measure that VB_SYS drops by a total of 2.6V (from 4.84V to 2.24V) in 66.4us. If we assume that the total bypass capacity is 10uF, this would correspond to an energy difference of 92uJ and an average power of 1.4W (during the drop).


If we add another bypass of 10uF, thus increasing the total capacity to 20uF, we drop from 4.86V to 2.38V in 120us, corresponding to 1.5W.


The following picture shows what we think happens in the various stages of the drop event:

The orange curve is VB_SYS, the blue curve IO_3V3.

Effect of PMU Settings

Andy observed that the behaviour between the backup battery being charged and it being empty. (Link)

Werner noticed that enabling/disabling the charger changes how VB_SYS recovers after a drop, but does not affect the overall result. [ADD GRAPH]

Where Does The Power Go ?

Andy has observed that externally supplying power helps: Furthermore, Andy suggested that, if there is a large drain on VB_SYS or the secondary side of the PMU, this would activate the USB current limiter, and thus reduce the voltage on VB_SYS. (Link)

It Worked in GTA02v3

Graeme reported that his GTA02v3 can power up without a battery.

This has now also been confirmed with Werner's GTA02v3. It survives enabling the charger while running as well, giving credibility to the theory that the two problems are closely related.

Unfortunately, as can be seen in the images below, it seems that the underlying problem also exists in GTA02v3. It just isn't bad enough to make the PMU abort the power-up sequence.


The yellow curve is VB_SYS on a GTA02v3 with a 10uF bypass on VB_SYS. The blue curve shows nRESET.

At least some GTA02v4 exhibit the problem as well in the same way as GTA02v5 and beyond.

Not Guilty

Removing the following components did not substantially change device behaviour:

The Suspect

We currently assume that all this is caused by an excessive inrush current needed to charge the bypass capacitors on the power rails.

Since we cannot change the inrush current limit for the secondary side of the PMU until after the system has come out of reset, we are considering to increase the VB_SYS bypass.

The effect changing the VB_SYS bypass has on USB inrush current is analyzed here.


Fri Jul 11 09:23:30 UTC 2008