Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  1. The first step is to select a microcontroller model

  2. Connect up to 8 devices to the USB ports and run a scan to identify the paths to the ports where the devices are connected. And check MCU connection after scan.

  3. Add the files to be programmed:

    1. Flashloader

    2. Image (.bin, .s19 or .sb)

    3. Fuses values programmed in OTP

  4. Memory Configuration

  5. Memory Erase

  6. Memory Read & Verify

Table of Contents

Selecting target MCU

...

The first mandatory step is to select the microcontroller you want to program. The variants supplied can be found in the field MPU/MCU/Board Type:

...

If the connection fails it will be indicated by (blue star) in the "Final" column

...

Browsing for

...

firmware files

NXP Flasher allows programming of all file types (.bin, .s19, .sb) provided for the iMX.RT family of microcontrollers, including OTP memory. Programming of images and OTP can only be done by connecting to a bootloader application called "Flashloader".

...

If the Flashloader is running it is possible to reset it and return to the primary MCU bootloader. To perform a Flashloader reset, click the (blue star) on the right side of the main window.

...

MCU configuration and programming depends on the image file type selected: .bin, .s19 or .sb.

Binary Image File

A binary file only contains data that is not memory-mapped. To properly upload a .bin file, you must previously configure the memory and set the address of loading the file into memory.

S-record Image File

Secure Binary File

...

Writing Image

The write process of an image depends on the type of image file. The table below summarizes:

Operation

Binary File

S-record File

Secure Binary File

Memory Configuration

User defined

User defined

Included in file

Image Load Address

User defined

Included in file

Included in file

Erase range

User defined

Extracted from the file

Included in file

OTP File

The OTP memory contains fuse bits that configure and protect the program loaded into the internal or external flash memory. In the iMX.RT 10xx family of microcontrollers, there is an OTP area of 64 32-bit words. Generating, modifying, and using fuse bit value files is possible in several ways:

...

  • The "Current Value" column shows the fuse word values read from the selected target.

  • The "Required Value" column displays the fuse word values loaded from the OTP file

  • The window does not display all words at once, to view subsequent values, select the appropriate page by checking the checkbox "Page 1" or "Page 2".

...

Writing OTP

The configuration for writing and verifying values in OTP is in the "OTP Options" section.

...

The first step is to load the OTP data file by “Open OTP File“ button. Acceptable formats are .bin and .json. The .json file is parsed and its data is saved to the .bin file. The format of the .json file is the same as the output file from MCUxpresso Secure Provisioning software.

...

In the second step:

choose to unlock the “Write” button by “Button enable“ checkbox.

...

or allow OTP programming in the "Autoprogram" sequence.

...

In the third step, you can write the OTP values with the "Write" button if the Flashloader is loaded, or via the "Autoprogram" button

Locking MCU

MCU locking is accomplished by setting the fuse bits in the first word of the OTP memory area. This value is also in the OTP file, but is ignored when programming the OTP memory. Locking the processor is the last programming step and can be done manually or as the last "Autoprogram" procedure.

...

Manual CPU locking is available in the "OTP Options" field in the main window. First, make sure that the OTP file is loaded and that the value of the first OTP word is non-zero. Then unlock the "Lock" button by checking the "Button Enable" checkbox.

...

MCU Locking in Autoprogram

...

The current status of the memory configuration can be displayed in the "Reports" field of the main window. To achieve this, click the (blue star) button. Then the report will be displayed for the selected target:

...

Erase Memory

The NXP-flasher allows for whole memory or block erase. Settings of deleting operations are located in "Memory Options" window.

...

Info

For erase to be successful you must:

  • Verify that the connection to the target device was successful.

  • Upload Flashloader

  • Configure memory

  • Set erase range

Read Memory

The memory reading range is defined in the "Memory Options" window.

There are two memory range options to choose from:
User: The user must specify the read starting and ending address.

...

File: The memory range defines the content and size of the file.

Verify Memory

Memory verification compares the memory contents with a file. Verification includes the memory range defined in "Memory Options".