Flashing SD Card with Linux Image Using the USB Serial Downloader

1. Installing Images Using USB Serial Downloader Protocol (SDP)

The preferred method of installing Yocto images to SD card is this: https://voxelbotics.atlassian.net/wiki/spaces/DOC/pages/7340054. However sometimes, extracting the SD card from the kit is not possible (for example, when the kit is installed to a device and is not easily accessible). In this case, use the method below.

Perform the following step-wise procedure to install the Yocto images to SD card installed into i.MX 8M NAVQ Plus kit:

  1. Power the kit off by disconnecting the USB Type C cable from the development host.

  2. Set the target boot mode to the USB serial downloader mode by setting the boot switches as follows:

    • SW2.1 - 1

    • SW2.2 - 0

  3. Power the kit on by connecting the USB Type C cable to the development host. Use the kit port labeled USB1.

  4. Check that the new USB device has appeared on your development host:

    [psl@i7 ~]$ lsusb | grep -i nxp Bus 001 Device 025: ID 1fc9:0146 NXP Semiconductors
  5. On the host, go to the Yocto images directory:

    [psl@i7 ~]$ cd ~/5-15-5-DESKTOP/builddir/tmp/deploy/images/imx8mpnavq [psl@i7 imx8mmnavq]$ ls -1 ... imx-boot-imx8mpnavq-sd.bin-flash_evk imx-image-desktop-ros-imx8mpnavq.wic.zst uuu ...
  6. Unpack the compressed image of the root filesystem:

    [psl@i7 imx8mmnavq]$ zstd -d imx-image-desktop-ros-imx8mpnavq.wic.zst ...
  7. Launch the uuu tool with appropriate script as a parameter for installing the bootable Linux image:

  8. The uuu tool will proceed to install the Production Yocto image to the storage device (SD card) on the target board:

  9. When uuu has finished, the bootable Linux image has been installed to the on-module storage. Given proper setting of the boot switches, next power-on will boot the target board from the SD storage device.

2. Verifying New Installation

Perform the following step-wise procedure to verify boot of the newly installed Linux images from the SD card plugged into the kit:

  1. Power the kit off by disconnecting the USB Type C cable from the development host.

  2. Select the appropriate boot mode (boot from SD) by setting the boot switches as follows:

    • SW2.1 - 1

    • SW2.2 - 1

  3. Power the kit on by connecting the USB Type C cable to the development host.

  4. Verify that the following Linux boot-up messages appear on the serial console:

  5. Enter the Linux session by typing user for both the user name and password.