Home > Support > Knowledge Base > Knowledge Base Article

Brown out issues on ConnectCard (Wi)i.mx28 modules

Description of the problem

Occasionally, there are customers complaining ,targets not booting after receiving modules with the latest U-Boot firmware. The only thing they see at the serial port is:

Battery Voltage = 0.00V
5V source detected. Booting from 5V. Battery powered operation disabled.
Battery Voltage = 0.00V
5V source detected. Booting from 5V. Battery powered operation disabled.
Battery Voltage = 0.00V
5V source detected. Booting from 5V. Battery powered operation disabled.
Battery Voltage = 0.00V
5V source detected. Booting from 5V. Battery powered operation disabled.

in an endless loop.

This message denotes that the CPU has detected a brownout (a sudden voltage drop of a monitored power rail) and causes a controlled reset.


The bootlets code

What are the bootlets?

The bootlets is a Secondary Program Loader (SPL), that is a piece of code that executes right after the CPU's ROM loader and before the primary U-Boot boot loader. It configures the SDRAM controller, the Debug UART (DUART) and the Power Management Unit (PMU or PMIC) of the CPU.

This source code is provided by Freescale.

Where are they?

The source code is provided as a toolchain package with DEL LiveDVD in tgz format. It is important to note that:

The bootlets are merged into U-Boot image during U-Boot compilation. A final step merges the U-Boot binary image (u-boot.bin) with the bootlets to produce an image the iMX28 CPU can boot (u-boot-ivt.sb).

Why & How brown out is caused?

In the previous bootlet versions,  VDDD brownout detector was disabled and in newer version it is enabled for better protection.

The DUART MAX232 on Digi's JSK is powered at +3.3V while on certain customers designs, the MAX232 of the DUART is powered at +5V. The i.mx28 lines support a max voltage of 3.3V. When the DUART MAX232 is powered at 5V the DUART_RX input line is exceeding the 3.3 voltage (it can be configured to 1.8 or 3.3V) and this is causing VDDD brownout  to trigger a CPU reset.

For this reason, the design of a customer may work fine if using old bootlets (the VDDD brownout was not enabled).


Solution

The MAX232 of the customer board must be powered at 3.3V or a voltage limitator introduced on the input lines (like RX).

The same is applicable to other UARTs or input lines.

 

Contact a Digi expert and get started today! CONTACT US

Desktop Site