i.MX25 SODIMM PC Windows CE

From Voipac Wiki
Jump to navigation Jump to search

This page guides though Windows CE loading and flashing procedure. Advanced ToolKit Platform is used during this process while running on Windows XP operating system. Newer versions of Windows OP (including Windows 10) are supported utilizing CEDownloader program.

Preparing the host computer

Installing Advanced ToolKit

The Advanced ToolKit package can be obtained from the download section. Unpack and install the executable file FSL_ATK_TOOL_WINS_​STD_INSTALL_1_70.exe. This package also contains detailed documentation concerning the program usage.

Computer reboot after installation is not required. Open and run the program.

Initilization of USB driver

During the install procedure, the USB drivers are installed automatically. To verify that the driver is ready for usage, plug in the board using USB mini cable and navigate to the Device Manager. When the hardware is attached to the computer properly, device named Jungo appears in the list:
i.MX25 SODIMM PC-WinCE-JTAG driver.png


Note: In case the USB driver was not installed successfully, it can be loaded manually by starting wd_install_4NT.bat batch file located in <TOOL_INSTALL_PATH>/windriver/ directory. The same folder also contains bat file wd_uninstall_4NT.bat for uninstalling the driver. Older versions of the USB driver can also be uninstalled using the toolkit utility.

Preparing the development board

Serial Boot option selected by H902 (BOOTMODE) jumper is required. To do so use a link between pins 2 and 3:

i.MX25 SODIMM PC-Development Kit-Serial boot mode.jpg i.MX25 SODIMM PC-Development Kit-Direct boot mode.jpg
Serial Boot Direct Boot


At this moment i.MX25 SODIMM PC - Development Kit will not boot from the stored binary but wait in the serial mode. Connect the board and the host computer with USB mini cable. Power on the board.

Configuring Advanced ToolKit feature

Start Advanced ToolKit program. Upon start set up the settings following this example:
i.MX25 SODIMM PC-WinCE-Configuring ATK.png

Configuration required for i.MX25 SODIMM PC - Development Kit:

  • Select i.MX25_TO1.1 as CPU option
  • Choose Custom Initial File for memory initiation. Files prepared for i.MX25 SODIMM PC Module are located within the feature package
  • Select USB option as the host communication channel
  • Leave 'Bypass the settings' unchecked otherwise the current setup will be ignored


Click Next to finish the configuration. Advanced ToolKit dialog window is shown only if the development kit was connected correctly and the communication was established.

Flashing details and modes of operation

All the program possibilities to communicate with the board can be accessed in Flash tool section. This toolkit enables images to be downloaded, programmed, dumped or erased. Select Flash Tool option and continue with Go button:
i.MX25 SODIMM PC-WinCE-Configuring Flash tool selection.png

Upon opening the following screen is displayed:
i.MX25 SODIMM PC-WinCE-Configuring Flash tool.png

This working environment consists of multiple options. These values are especially important for i.MX25 SODIMM PC - Development Kit setup:

  • Operation Type selects four actions to be performed. Additional four check boxes further customize the operation. Two of them are especially important during programming:
    • BI Swap is the option used for Windows Embedded CE images
    • BBT is chosen in case of Linux images to be flashed
  • Flash Model field determines supported Flash memories:
    • NAND memories with starting address to be 0x00000000
    • MMC/SD devices with available space to start at 0x00000000
  • Image Field chooses a file for programming, downloading and dumping


All options are described in the table below:

Section Option Description
Operation type Download Downloads the image to the address specified, and then executes directly at the

downloaded address.

Dump Dumps a selected area of Flash device to a file.
Program Programs a selected area of Flash from a file.
Erase Erases a selected area of Flash.
BI Swap Swaps Bad block identifier data, which is one solution for Bad block identifier data in the case that Nand Flash is incompatible with Nand Flash Controller.
BBT Bad block Table, which is the table recording all bad block information.
Interleave The are two kind of access mode when they are multiple nand flash chips on board, for example, 4 chips on board.
LBA Logic Block Address, which indicates that the input address is a logic block address if it is checked. This option is only used on wince platform, for Linux, it should be ignored.
Read Back Check Comparing the programmed data with original data in programming process will not be done to speed up the programming speed if this option is un-checked. The option will be visible only when programming option is selected. By default, this option is checked.
Flash Device Flash Model Click the down arrow to select the Flash type for the associated board when the Program, Dump, or Erase Flash operations are selected.
Flash Lib Device program running on the board that handles the communication with the PC host through the protocol to program/dump/erase the flash.
Operation Settings Address The address in the physical memory of the target board where the operation will start.
Size Size in bytes for erase and dump operations.
Image Image file For downloading operations, indicates the image to be downloaded to RAM. For Flash operations, indicates the image to be downloaded to Flash. For dumping operations, indicates the file that is used to store the dumped content.
Process Progress bar Displays the completed percent of the selected operation.
Information Log Displays the execution log.

Storage media partitioning

Note: Make sure that all the valuable information were downloaded prior the start of programming as the flashing procedure also consists of erasing the memory.

Windows CE system uses following partitioning. Bad blocks are handled using BI Swap option.

Address Size File Note
0x0000 0000 0x0000 0800 Directb.nb0 First stage bootloader
0x0018 0000 0x0004 0000 Eboot.nb0 Second stage bootloader
0x0028 0000 0x0200 0000 NK.nb0 Windows CE
0x0228 0000 - Bootloader environment + Persistent storage

Flashing images

Flashing the first stage of the bootloader to address 0x00000000:
i.MX25 SODIMM PC-WinCE-Flashing DIRECTB.png

Flashing the second stage of the bootloader to address 0x00180000:
i.MX25 SODIMM PC-WinCE-Flashing EBOOT.png

Windows CE image is flashed to address 0x00280000:
i.MX25 SODIMM PC-WinCE-Flashing NK.png

After all three images were programmed successfully, turn off the board and change the H902 jumper (BOOTMODE) to select the direct boot. Change the jumper link to connect pins 1 and 2 together.

Open a terminal session in the host computer with these settings:

  • Speed (baud): 115200
  • Data bits: 8
  • Stop bits: 1
  • Parity: None
  • Flow control: None

Turn on the board and press [Space bar] to stop Windows CE booting (Boot delay is set to 3 seconds for fresh binaries.). As the booting device is disabled by default, choosing NK from NAND as boot source is required. This is done by pressing number [5]. Additional configuration like MAC address or network settings can be altered here as well.

i.MX25 SODIMM PC-WinCE-Options.png

After all the options were setup, save these settings by pressing [S]. Selecting [L] key or resetting the board launches the stored images.

Erasing memory

Erasing i.MX25 SODIMM PC Module containing Windows CE images:
i.MX25 SODIMM PC-WinCE-Erasing.png