Loading Toradex Easy Installer
Introduction
The goal of this article is to guide you to the process of loading the Toradex Easy Installer tool to the RAM of your System on Module.
Why do I have to (re)load the Toradex Easy Installer?
As explained in the Toradex Easy Installer Overview, Tezi comes pre-installed in all new Toradex modules. It runs completely in memory so that the complete internal flash can be erased, (re)partitioned, formatted, or written.
You will need to load Tezi to your module again if you need to install a new operating system image and your module does not boot to Toradex Easy Installer by defaul. In other words, your system is already running a previously installed OS, for instance, Linux or Torizon OS instead. In this case, you must enter in recovery mode and load it in memory from a host computer, using the USB OTG approach or the external media approach.
Requirements
USB OTG Approach
- Regular USB to micro USB or USB to USB-C cable
- Carrier board that provides access to the USB OTG interface
External Media Approach
- A FAT formatted (e.g. FAT-32) USB Stick or SD Card.
- Carrier board with either an SD Card or USB host.
- Access to serial port debug UART (for booting via USB).
- Avoid using a USB Hub between the PC and the USB OTG port.
- Avoid using Virtual Machines.
Setup Cables
Connect all the cables to your Carrier Board, as demonstrated on the Quickstart Guide for your Carrier Board. Don't forget to connect the display/monitor to the carrier board before power on. HDMI hotplug is not supported.
If don't have a display/monitor available, you can access the user interface remotely over the network using VNC.
Download Tezi
Download a Toradex Easy Installer image from Download Toradex Easy Installer.
Put your SoM in Recovery Mode
Don't expect any menu on the Display/Monitor at this moment. The Tezi GUI will only show up after the software be loaded on the next step.
Enter Recovery Mode
Toradex System on Modules are easy to put in recovery mode, so you can flash a new image. We provide simple step-by-step guides to put your module in recovery mode.
Select your module and carrier board below:
Direct links to enter Recovery Mode
Verdin Recovery Mode
Verdin AM62 Recovery Mode
Verdin AM62 and Dahlia Carrier Board Recovery ModeEnter Recovery Mode using a Verdin AM62 with a Dahlia Carrier Board.
Verdin AM62 and Verdin Development Board Recovery ModeEnter Recovery Mode using a Verdin AM62 with a Verdin Development Board.
Verdin AM62 and Yavia Recovery ModeEnter Recovery Mode using a Verdin AM62 with a Yavia.
Verdin iMX8M Mini Recovery Mode
Verdin iMX8M Mini and Dahlia Carrier Board Recovery ModeEnter Recovery Mode using a Verdin iMX8M Mini with a Dahlia Carrier Board.
Verdin iMX8M Mini and Verdin Development Board Recovery ModeEnter Recovery Mode using a Verdin iMX8M Mini with a Verdin Development Board.
Verdin iMX8M Mini and Yavia Recovery ModeEnter Recovery Mode using a Verdin iMX8M Mini with a Yavia.
Verdin iMX8M Plus Recovery Mode
Verdin iMX8M Plus and Dahlia Carrier Board Recovery ModeEnter Recovery Mode using a Verdin iMX8M Plus with a Dahlia Carrier Board.
Verdin iMX8M Plus and Verdin Development Board Recovery ModeEnter Recovery Mode using a Verdin iMX8M Plus with a Verdin Development Board.
Verdin iMX8M Plus and Yavia Recovery ModeEnter Recovery Mode using a Verdin iMX8M Plus with a Yavia.
Apalis Recovery Mode
Apalis iMX6 Recovery Mode
Apalis iMX6 Dual/Quad and Apalis Evaluation Board Recovery ModeEnter Recovery Mode using an Apalis iMX6 Dual/Quad with an Apalis Evaluation Board.
Apalis iMX6 Dual/Quad and Ixora Carrier Board Recovery ModeEnter Recovery Mode using an Apalis iMX6 Dual/Quad with an Ixora Carrier Board.
Apalis iMX8 QuadMax Recovery Mode
Apalis iMX8 QuadMax and Apalis Evaluation Board Recovery ModeEnter Recovery Mode using an Apalis iMX8 QuadMax with an Apalis Evaluation Board.
Apalis iMX8 QuadMax and Ixora Carrier Board Recovery ModeEnter Recovery Mode using an Apalis iMX8 QuadMax with an Ixora Carrier Board.
Colibri Recovery Mode
Colibri iMX6 Recovery Mode
Colibri iMX6 DualLite and Aster Carrier Board Recovery ModeEnter Recovery Mode using a Colibri iMX6 DualLite with an Aster Carrier Board.
Colibri iMX6 DualLite and Colibri Evaluation Board Recovery ModeEnter Recovery Mode using a Colibri iMX6 DualLite with a Colibri Evaluation Board.
Colibri iMX6 DualLite and Iris Carrier Board Recovery ModeEnter Recovery Mode using a Colibri iMX6 DualLite with an Iris Carrier Board.
Colibri iMX6ULL Recovery Mode
Colibri iMX6ULL and Aster Carrier Board Recovery ModeEnter Recovery Mode using a Colibri iMX6ULL with an Aster Carrier Board.
Colibri iMX6ULL and Colibri Evaluation Board Recovery ModeEnter Recovery Mode using a Colibri iMX6ULL with a Colibri Evaluation Board.
Colibri iMX6ULL and Iris Carrier Board Recovery ModeEnter Recovery Mode using a Colibri iMX6ULL with an Iris Carrier Board.
Colibri iMX7 Recovery Mode
Colibri iMX7 and Aster Carrier Board Recovery ModeEnter Recovery Mode using a Colibri iMX7 with an Aster Carrier Board.
Colibri iMX7 and Colibri Evaluation Board Recovery ModeEnter Recovery Mode using a Colibri iMX7 with a Colibri Evaluation Board.
Colibri iMX7 and Iris Carrier Board Recovery ModeEnter Recovery Mode using a Colibri iMX7 with an Iris Carrier Board.
Colibri iMX8X Recovery Mode
Colibri iMX8X and Aster Carrier Board Recovery ModeEnter Recovery Mode using a Colibri iMX8X with an Aster Carrier Board.
Colibri iMX8X and Colibri Evaluation Board Recovery ModeEnter Recovery Mode using a Colibri iMX8X with a Colibri Evaluation Board.
Colibri iMX8X and Iris Carrier Board Recovery ModeEnter Recovery Mode using a Colibri iMX8X with an Iris Carrier Board.
No module and carrier board were selected. Please choose one option from each list above.
Load TEZI
Load through the USB OTG Interface
Unzip the Toradex Easy Installer package you downloaded at the beginning of the article. Change to this directory, and use one of the following scripts on the host machine to load and execute the tool via the USB OTG interface:
$ cd <unzipped directory>
$ ./recovery-linux.sh
$ cd <unzipped directory>
$ recovery-windows.bat
Apalis TK1 does not have a script for Windows. If you want to load Toradex Easy Installed on an Apalis TK1 module, use a Linux PC.
This process might cause multiple device detections on Windows. Avoid using virtualization since the individual re-enumerated USB devices get not routed through to the virtual machine guest automatically.
During the recovery process, the module connected via USB may re-enumerate several times.
If downloading gets stuck or fails with an error, try starting over from the recovery mode article.
Load from External Media (SD Card/USB Stick)
This section describes an alternative method, not officially supported by Toradex, as we technically cannot guarantee that this works all the time and also across different versions. This method relies on Distro Boot, which is configured to boot in the following order on our BSP:
- SD Card
- internal eMMC
- USB Stick
Why would you use an unsupported method, though? Because you are in a situation that does not meet the requirements above or, in other words:
- You have a carrier board that does not allow you to enter recovery mode, or the product enclosing makes it inviable on the field.
- Your product does not allow one to easily use a desktop PC to load Toradex Easy Installer into the SoM on the field.
Prepare the External Media
Unzip Easy Installer into the root directory of the external media (USB stick or SD Card). You will see the following contents, or similar:
$ tree
.
├── boot-tezi.scr
├── image.json
├── imx-boot
├── imx-boot-v10b
├── overlays.txt
├── recovery
│ ├── uuu
│ ├── uuu.auto
│ ├── uuu.auto-v10b
│ └── uuu.exe
├── recovery-linux.sh
├── recovery-windows.bat
├── tezi.itb
├── tezi.png
├── u-boot.bin
└── wrapup.sh
Rename the file boot-tezi.scr
to boot.scr
. This is the name used by the U-Boot bootloader in our BSP.
Boot Easy Installer
Booting Easy Installer with an image based on our BSP Layers and Reference Images for Yocto Project should work, but keep in mind to match the versions of Tezi and the BSP image. If you mismatch the versions things may still work, but the likelihood is lower.
You might need to adapt the boot.scr
to make things work. For this, refer to Distro Boot or ask for help from our developers in the Toradex Community.
And as soon as you have boot.scr
in place you can boot Tezi:
From the SD Card:
- Insert the external media on the carrier board.
- power on the carrier board.
From the USB Stick:
- Set up the access to the U-Boot console through the serial port debug UART.
- Insert the USB stick on the carrier board.
- Power on the carrier board.
- Stop U-Boot from booting by pressing any key on your keyboard.
- Run the command
run bootcmd_usb0
. It will skip trying to boot from the SD Card and internal eMMC flash, and try to boot directly from the USB.
Using Toradex Easy Installer
After loading the Toradex Easy Installer into the module's RAM memory, the Tezi GUI will show up in your Display/Monitor.
This process does not write the Toradex Easy Installer to flash. You will have to redo these steps if you power off your module.
You are ready to install images using the tool. See Flash a New Image Using Toradex Easy Installer for instructions on how to proceed.
Troubleshoot on Windows
Failure to Open the USB Device
To download the tezi.itb
file, U-Boot uses the Fastboot protocol to communicate with UUU. In some cases, Windows does not automatically install the necessary driver, leading the recovery-windows.bat
script to the "Failure open usb device" error, as follows:
When that happens, the SoM appears as a USB Download Gadget
on Device Manager:
If the SoM appears as a different type of device, it means Windows has assigned the wrong driver to it. If this is your case, you must uninstall that driver, as described in the Device with the incorrect driver section, before continuing with the steps below.
The following video provides the steps to manually select the correct driver:
The steps are also described in detail below:
Open Device Manager.
On Device Manager, right-click on
USB Download Gadget
and choose "Updated Driver".Select "Browse my computer for drivers" → "Let me pick from a list of available drivers on my computer”.
You will see a list of hardware types. If there is a checkbox with “Show compatible hardware”, uncheck it. Select "Universal Serial Bus Devices".
Choose “WinUSB Device” → "ADB device". Click "Next".
Select "yes" to the pop-up window. This will set the USB as an ADB device.
Reboot your SoM and the error should be fixed.
If step 3 fails and you can not find the driver from hardware types list, download it from the Android documentation:
Download the zip file and extract its contents.
After selecting "Universal Serial Bus Devices" again as earlier, instead of choosing "ADB devices", click the "Have Disk..." button.
Select the
android_winusb.inf
file.Finally, Windows will display the "Android ADB" option. Select it and proceed with the driver installation.
Reboot your SoM and the error should be fixed.
Device with the incorrect driver
In some cases, Windows automatically assigs the wrong driver to the device, leading the recovery-windows.bat
installation script also to the Failure to Open the USB Device error. Here, the difference is that device will appear as something different from USB Download Gadget
.
To solve this issue, you must uninstall the incorrect driver before installing the ADB device driver, as shown in the video below:
The steps are also described in detail below:
Open Device Manager.
On Device Manager, right-click on your device and choose "Uninstall Device".
A window will pop-up. Check the "Delete the driver software for this device" checkbox. Click "Uninstall".
Install the ADB Device driver as described in Failure to Open the USB Device.
(AM62-only) Cannot Open DFU Device
For the Verdin AM62, the recovery-windows.bat
script uses the DFU tool to load the Toradex Easy Installer image. On Windows, the DFU mode device does not have a dedicated driver and appears in Device Manager as AM62x DFU
with an exclamation mark next to it. The required WinUSB driver is already present in the system but must be manually assigned to the device. The video below details the driver installation steps.
The steps to solve that issue are also described below:
Open Device Manager.
Right-click on
AM62x DFU
and choose "Update driver".Select "Browse my computer for drivers" → "Let me pick from a list of available drivers on my computer”.
Choose “WinUSB Device” → "WinUSB Device". Click "Next".
Select "yes" to the pop-up window. This will set the USB as an WinUSB device.
The
recovery-windows.bat
script shoudl now be able to copy the Toradex Easy Installer image to your SoM.
This may need to be done twice: once for the DFU server in the Boot-ROM and once for the DFU server in U-Boot.
Alternatively, you can use Zadig to install the WinUSB driver using a user-friendly interface.
After using DFU to download the Toradex Easy Installer image, U-Boot uses the Fastboot protocol to communicate with UUU. If that does not work automatically, you might have to manually select the correct driver in Device Manager, as described in Failure to Open the USB Device.