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:
- Configure a master module.
- Create a backup of your master module and setup a production programming storage device.
- 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:
- 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.
- Boot your master module and insert the drive with the Update Tool.
- Start the Update Tool select Backup.
- Select Backup All. We do not recommend to do selective region backups for production programming.
- 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.
- Start the backup process.
After the backup is done you should have the following files on your external drive:
|FlashBackup.cfg||Configuration file that links to the according files. Do not touch this file if you don't know what you are doing.|
|FlashBackup_config_block.nb0||Bootloader Configuration. Serial number and MAC address of the module will not be overwritten.|
|FlashBackup_os_image.nb0||WinCE OS image|
|FlashBackup_registry.nb0||Registry (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
- Download the production programming template and extract it to your production programming storage device.
- Copy all the files created during the backup process above into the folder Backup.
- Copy the latest UpdateTool.exe and all the DLLs that come with it into the folder UpdateTool
- Adjust ProductionProgramming.bat as described bellow.
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:
|IS_T20_BEFORE_1_4||Set to 1 for Colibri T20 with target image V1.3 and older, set to 0 otherwise (see note above).|
|BACKUPFOLDER||Path to backup location (relative to Update Tool)|
|CONFIGFILE||Name of the backup cfg file (FlashBackup.cfg by default)|
|PATH_UPDATETOOL||Path 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:
- Insert a Tegra module into your carrier board.
- Power up the device with the production programming storage device inserted.
- Programming starts automatically, wait until programming is done.
- Power of device and remove module.
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.