i.MX 6ULL Evaluation Kit


Before starting to work with imx6ullevk, switch SW601 to device microSD by setting to OFF, OFF, ON, OFF (from 1–4 bit)


Fig. 62 SW601 settings


The instructions in this section also applies to those boards with secure boot enabled. There are references on how to perform common instructions along with the flow. Security details the required background for secure boot.


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-imx6ullevk.tar.gz
  3. Organize all the files, mirroring the tree below:

    ├── lmp-factory-image-imx6ullevk.wic.gz
    ├── u-boot-imx6ullevk.itb
    ├── sit-imx6ullevk.bin
    ├── SPL-imx6ullevk
    └── mfgtool-files-imx6ullevk
         ├── 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 imx6ullevk

  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 J1901. Connect the other end of the cable to a PC acting as a host terminal. One UART connections will appear on the PC. For example, on a Linux host:

    ls -l /dev/serial/by-id/
     total 0
     lrwxrwxrwx 1 root root 13 Dec  3 13:09 usb-Silicon_Labs_CP2102_USB_to_UART_Bridge_Controller_0001-if00-port0 -> ../../ttyUSB2

    Using a serial terminal program like minicom, connect to the port with if00 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 (SW2001)

  3. Put the imx6ullevk into programing mode:

    Switch SW602 to OFF, ON (from 1-2 bit) to Download Mode.


    Location of SW602 dip switch on imx6ullevk

  4. Connect your computer to the imx6ullevk board via the micro-B port 1 Download USB OTG jack.

  5. Connect the 5V power plug to the port 2 Power J2001 jack.

  6. Power on the imx6ullevk board by sliding power switch SW2001 to ON.


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

For instructions on how to sign the required images before flashing them to the board with secure boot enabled, see Machines with Secure Aspects Enabled by FoundriesFactory.

  1. Verify target is present:

    lsusb | grep NXP
     Bus 002 Device 052: ID 15a2:0080 Freescale Semiconductor, Inc.

    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-imx6ullevk/uuu mfgtool-files-imx6ullevk/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 imx6ullevk into run mode by switching SW602 to ON, OFF to set the board to boot from eMMC.

Power on the imx6ullevk board by sliding the power switch SW2001 to ON.