Skip to main content

Production Programming for Tegra Modules

This article describes the process for production programming of the Toradex Tegra modules:

  • Colibri T20
  • Colibri T30
  • Apalis T30


  • This production programming process requires Update Tool 6.0.1 or later. Get the latest version here.
  • USB, SD or other mass storage device. We call it production programming storage device in the following.
  • Production programming template. This template contains a AutoRun script as well as a folder template.


Production programming requires three steps:

  1. Configure a master module.
  2. Create a backup of your master module and setup a production programming storage device.
  3. Deploy the master module backup to your target devices.

Setup an Original Master Module

Create a module with all the required settings. The following regions will be considered by the Update Tool when creating a backup of your master module: OS Image, Bootloader, Splash Screen, Config Block, Registry and File System.

In order to keep your backup small and the production programming fast format the File System before you start coping files to it.

Create Backup and Configure Production Programming

Create Backup of Master Module

After you setup the master module you are ready to create a backup:

  1. Get the latest Update Tool and copy UpdateTool.exe (CE6CE7 folder) and the DLLs to the storage device. If you already copied the _production programming template earlier to the storage device, make sure you rename the AutoRun folder before inserting it to your master module.
  2. Boot your master module and insert the drive with the Update Tool.
  3. Start the Update Tool select Backup.
  4. Select Backup All. We do not recommend to do selective region backups for production programming.
  5. Select the external drive as backup location. As several files will be created by the backup, the Name of the file (FlashBackup by default) is only a prefix which is used for all the files generated.
  6. Start the backup process.

After the backup is done you should have the following files on your external drive:

File NameDescription
FlashBackup.cfgConfiguration file that links to the according files. Do not touch this file if you don't know what you are doing.
FlashBackup_config_block.nb0Bootloader Configuration. Serial number and MAC address of the module will not be overwritten.
FlashBackup_filesystem.nb0File System
FlashBackup_os_image.nb0WinCE OS image
FlashBackup_splash_screen.bmzSplash Screen
FlashBackup_registry.nb0Registry (only since v2.0 beta 1), before registry was stored in File System and is automatically stored in FlashBackup_filesystem.nb0

Setup Production Programming Storage Device

  1. Download the production programming template and extract it to your production programming storage device.
  2. Copy all the files created during the backup process above into the folder Backup.
  3. Copy the latest UpdateTool.exe and all the DLLs that come with it into the folder UpdateTool
  4. Adjust ProductionProgramming.bat as described bellow.
Configure ProductionProgramming.bat

The config section of the file AutoRun\ProductionProgramming.bat. No changes are required if you use the same locations as proposed in the template as well as if you use the default name prefix for your backup.

**Important Note for Colibri T20 flashing image V1.3 and older**

If you program a Colibri T20 with an image V1.3 and older you need to set the _IS_T20_BEFORE_1_4_ flag to 1. The reason therefore is that with image V 1.4 an improved NAND flash error correction (ECC) was introduced on Colibri T20 modules. The Update Tool sets the ECC handling always to the best possible mode for the flash on the module. Image 1.3 and before only supported RS4 error correction, so it can not handle newer ECC handling. We recommend you to use images 1.4 and later with using the new ECC handling.

See all the configuration options bellow:

Variable NameDescription
IS_T20_BEFORE_1_4Set to 1 for Colibri T20 with target image V1.3 and older, set to 0 otherwise (see note above).
BACKUPFOLDERPath to backup location (relative to Update Tool)
CONFIGFILEName of the backup cfg file (FlashBackup.cfg by default)
PATH_UPDATETOOLPath to UpdateTool.exe (relative to this batch file)

Programming Modules in Production

You should now have a production programming storage device that contains the a backup of your master module, the latest Update Tool and a proper config in AutoRun\ProductionProgramming.bat.

The programming process looks as the following:

  1. Insert a Tegra module into your carrier board.
  2. Power up the device with the production programming storage device inserted.
  3. Programming starts automatically, wait until programming is done.
  4. Power of device and remove module.
  5. Done

Production Programming FAQ

Production programming takes long, why?

Make sure you started coping files to your master module having a clean file system. Format the File System before you start coping files to it. This ensures your file system backup is kept as small as possible, which saves time during the restore process.

Why I can't access the File System after or during running Update Tool?

The Update Tool has to unmount the file system in order to make sure no operations are done on it during the backup / restore. Reboot your device after using the Update Tool. So also make sure no application tries to access the file system during the backup or production programming process.

Why does Boot fails with "SpinForever..." when booting after production programming?

This could be related to the fact that you try to flash an image 1.3 or older on a Colibri T20 and missed to set flag IS_T20_BEFORE_1_4 to 1 in the batch script.

Send Feedback!