Warning: Make sure there is no SD card inserted in the carrier board in order to enter recovery mode properly
If your module still boots, you can use the boot loader to flash your operating system. Refer to the OS specific article how to flash an image.
In case your module doesn't boot at all, you can download the boot loader directly into the modules memory using the serial port UART_A. This article shows how to this.
The Colibri VFxx modules support serial recovery only using UART_A. Serial recovery requires hardware flow control with RTS/CTS signals. As the boot ROM is able to keep up with the incoming data the flow control signals can simply be bridged if required. However we recommend to use RTS/CTS whenever possible. When starting the serial downloader utility remember whether you have RTS/CTS connected or bridged.
Connect UART_A on X13 to your PC. When connecting to PC make sure your serial port is RTS/CTS capable (most USB-to-RS232 converters are). However if you only have an RX/TX capable serial port (albeit still at valid RS-232 voltage levels of course) that will work as long as CTS gets properly asserted (e.g. put to a voltage level of between 3 and 15 volts) or just bridged to RTS. Refer to the Iris Carrier Board Peripherals article how to get a cable.
a) RS-232 Connector (X25, lower connector): JP17/JP19/JP20/JP21 must not be on FTDI. When connecting to PC, make sure your serial port is RTS/CTS capable (most USB-to-RS232 converter are).
b) Recommended: FTDI On-board USB-to-UART converter (X27): JP17/JP19/JP20/JP21 must be on FTDI. RTS/CTS are connected to the FTDI, hence hardware flow control can be used. RTS/CTS must not be shortened on module side.
a) Recommended: RS-232 Connector (X25, lower connector): JP17/JP19 must not be on USB. When connecting to PC, make sure your serial port is RTS/CTS capable (most USB-to-RS232 converter are).
b) FTDI On-board USB-to-UART converter (X27): JP17/JP19 must be on USB. RTS/CTS must be shortened on the module side (this is required since RTS/CTS are NOT connected to the FTDI).
Entering recovery mode is a bit different than on other Toradex modules. Especially power need to be applied after shorten the recovery mode.
Power up Iris board.
Remove the wire.
Press and keep pressed (or hold) recovery mode button SW9
Power on Eval board using SW7
After 1-2 seconds, release recovery mode button SW9.
Note: Using Reset doesn't work! This is since the Vybrid SoC samples the boot mode strapping pins only once when it gets powered-up.
The serial recovery utility uses the serial download protocol used on other NXP/Freescale devices as well, hence the name imx_uart. For a more detailed instruction refer to the operating specific articles.
Note: After using the boot loader (after the module has been re-flashed) the module needs a power cycle! When using reset only the module will again switch to recovery mode. The reason is that the Vybrid SoC stores the flag "enter recovery mode" across a reset no matter if it was a hardware or software reset. The only way to clear the "enter recovery mode" flag is to power the module off and back on.
On Linux, the utility imx_uart is called by our update shell script:
./update.sh -d /dev/ttyS0
In case RTS/CTS are not connected, use the parameter -n:
./update.sh -n -d /dev/ttyUSB0
This downloads U-Boot to the modules memory and starts it from there. On the same serial connection a serial console should appear after downloading the boot loader. The next steps are similar to the conventional flashing procedure. However since the boot loader did not work anymore it is likely that there is something wrong with the initial boot configuration block (BCB). To recreate the BCB use the commands described in the Flashing from Scratch chapter of the Flashing Embedded Linux to Vybrid Modules article.
The imx_uart utility can't use COM ports higher then COM9 with the commonly known syntax. There are two solutions:
To download u-boot (to flash/restore Linux image)
imx_uart.exe COMX: .\vybrid_uboot.conf
To download e-boot and flash/restore Windows CE:
imx_uart.exe COMX: .\vybrid_eboot.conf
Where COMX: is the name of your serial port.
In case RTS/CTS are not connected, use the parameter --no-rtscts. This time, we use a port number >= COM10 in the example:
imx_uart.exe --no-rtscts \\.\COMXX .\vybrid_eboot.conf
For the steps required to completely restore the system as soon as the boot loader is running on the target, refer to the OS-specific articles in our knowledge base.