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

Srecord Image 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 MCU locking

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 MCU lockout procedure can be invoked as the last step of the Auto Program sequence. In order to lock the processor it is necessary to check the "Lock in Autoprogram" checkbox.

...

Memory Configuration

Memory configuration is necessary for devices with external flash memory and must be done if .bin or .s19 files are to be written. The .sb files contain memory configuration commands, so it is possible to skip the memory configuration commands.

Setting the memory configuration words

Boot device

Address →

...

Running Configure memory

After setting the Configuration Words in the "Memory Configuration" window and starting Flashloader, you can configure the external memory by clicking the (blue star) button

Checking memory configuration

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".