LinkFlash is a powerful graphical utility designed to simplify flash programming tasks for NXP microcontrollers. Whether you're programming, erasing, verifying, or recovering devices, LinkFlash provides a user-friendly interface to perform these operations efficiently. This guide walks you through its features and how to use them effectively.
LinkFlash can be launched from the LinkServer directory via terminal using:
./LinkFlash
or
./LinkServer gui flash
It interfaces with LinkServer probes and supports a wide range of NXP devices, offering a visual alternative to command-line flash operations.
The LinkFlash interface is organized into five main sections:
The menu bar provides access to configuration management and help:
- **File**
- **Load Configuration...**: Load a previously saved setup.
- **Save Configuration...**: Save the current setup.
- **Reset Configuration**: Revert to default settings.
- **Help**
- **About**: Displays application information.
This section allows you to select the hardware and connection settings:
- **Probe**: Choose from connected LinkServer probes. Use **Refresh** to rescan.
- **Device**: Select your target MCU from a searchable dropdown.
- **Protocol**: Choose between `SWD` or `JTAG` (typically `SWD`).
- **Wirespeed**: Set the communication speed in Hz, or leave blank to use the default.
LinkFlash supports five main flash operations, each accessible via tabs:
Upload a file to flash memory.
- **File**: Select or drag-and-drop the file.
- **Address**: Required for binary files (not ELF/HEX/SREC).
- **Mass erase before programming**: Optional full erase.
- **Reset target after programming**: Auto-reset post-programming.
Perform a mass erase of the flash memory.
Recover locked devices (MCXC and Kinetis series only).
Extract a flash memory region to a file.
- **Address**: Start address.
- **Size**: Region size.
- **File**: Destination file.
Check if flash contents match a given file.
- **File**: Reference file.
- **Address**: Required for binary files.
> **Note:** Input validation occurs only upon execution. Errors like missing files or invalid formats will trigger a pop-up.
Two tabs provide feedback and traceability:
- **Log**: Displays detailed output of the last command.
- **Commands**: Shows a history of executed commands, which can be reused in CLI.
Displays the result of the most recent operation, helping you quickly verify success or failure.
LinkFlash automatically saves your session to:
<user_home>/.linkserver/.gui_flash_last_sess.json
You can also load a specific configuration at startup:
./LinkServer gui flash --config my_saved_state.json
For advanced users, LinkFlash supports CLI options:
Load a specific configuration.
--config <file>
Display help information.
--help
LinkFlash is a versatile and intuitive tool for developers working with NXP microcontrollers. Its GUI simplifies complex flash operations, making it ideal for both beginners and experienced users. Whether you're debugging, programming, or recovering a device, LinkFlash streamlines the process with clarity and control.