i.MX 8 ULP Evaluation Kit


The instructions in this section show the preparation before the flashing procedure.


Ensure you replace <factory> placeholder below with the name of your Factory.

  1. Download the necessary files from https://app.foundries.io/factories/<factory>/targets:

    1. Click the latest Target with the platform trigger.

    2. Expand the run in the Runs section which corresponds with the name of the board. Download the Factory image for that machine. For example:



    The compressed image (.wic.gz) is used since LmP v92. Before, the scripts required a compressed file image (.wic).

  2. Download and extract the file mfgtool-files-<machine_name>.tar.gz:

    tar -zxvf mfgtool-files-imx8ulp-lpddr4-evk.tar.gz
  3. Organize all the files, mirroring the tree below:

    ├── lmp-factory-image-imx8ulp-lpddr4-evk.wic.gz
    ├── u-boot-imx8ulp-lpddr4-evk.itb
    ├── imx-boot-imx8ulp-lpddr4-evk
    └── mfgtool-files-imx8ulp-lpddr4-evk
         ├── bootloader.uuu
         ├── full_image.uuu
         ├── SPL-mfgtool
         ├── u-boot-mfgtool.itb
         ├── uuu
         └── uuu.exe

Hardware Preparation

Set up the board for updating using the manufacturing tools:


Top view of i.MX 8 ULP EVK

  1. OPTIONAL. Only required if you have problems or want to see the boot console output.

    Connect the micro-B end of the USB cable into debug port J17. Connect the other end of the cable to a PC acting as a host terminal. Three UART connections will appear on the PC. For example, on a Linux host:

    ls -l /dev/serial/by-id/
    otal 0
    rwxrwxrwx 1 root root 13 Feb 13 12:59 usb-0403_FT4232H_9266A2-if00-port0 -> ../../ttyUSB0
    rwxrwxrwx 1 root root 13 Feb 13 12:59 usb-0403_FT4232H_9266A2-if02-port0 -> ../../ttyUSB2
    rwxrwxrwx 1 root root 13 Feb 13 12:59 usb-0403_FT4232H_9266A2-if03-port0 -> ../../ttyUSB3

    Using a serial terminal program like minicom, connect to the port with if02 in the name (in this example ttyUSB2). Apply the following configuration:

    • Baud rate: 115200
    • Data bits: 8
    • Stop bit: 1
    • Parity: None
    • Flow control: None
  2. Ensure that the power is off (SW10)

  3. Put the i.MX 8 ULP EVK into programing mode:

    Switch SW5 to X, X, X, X, X, X, ON, OFF (from 1-8 bit) to Download Mode.


    Location of SW5 dip switch on i.MX 8 ULP EVK

  4. Connect your computer to the i.MX 8 ULP EVK board via the USB-C port 1 Download J15 jack.

  5. Connect the USB-C power plug to the port 2 Power SW10 jack.

  6. Power on the i.MX 8 ULP EVK board by sliding power switch SW10 to ON.


Once in serial downloader mode and connected to your PC, the evaluation board should show up as an NXP® USB device.

Follow the instruction below.

  1. Verify target is present:

    lsusb | grep NXP
     Bus 001 Device 023: ID 1fc9:012b NXP Semiconductors i.MX 8M Dual/8M QuadLite/8M Quad Serial Downloader

    In this mode you will use the uuu tools to program the images to the eMMC. The USB ID may differ if a different SoC is used.

  2. To program the LmP to the EMMC run

    $ sudo mfgtool-files-imx8ulp-lpddr4-evk/uuu mfgtool-files-imx8ulp-lpddr4-evk/full_image.uuu
      uuu (Universal Update Utility) for nxp imx chips -- libuuu_1.4.243-0-ged48c51
      Success 1    Failure 0
      1:92     6/ 6 [Done                                  ] FB: done
  3. Turn off the power

  4. Put the board into run mode

Put the i.MX 8 ULP EVK into run mode by switching SW5 to OFF, OFF, X, X, OFF, OFF, OFF, ON to set the board to boot from eMMC.

Power on the i.MX 8 ULP EVK board by sliding the power switch SW10 to ON.