What is STM32 ST-LINK utility?

STM32 ST-LINK Utility, also called STSW-LINK004, is a tool for programming (reading, writing, erasing, option words) of the entire STM32 series of chips. It not only provides a graphical interface (GUI), but also provides a command line interface (CLI).

Compared with ST Visual Programmer (STVP), ST-LINK Utility only supports the download debugger of ST-Link (multiple versions), and the only supported chip is STM32.

Programmable Files

  • Motorola S19
  • Bin file
  • Hex file

Functions

  • Erase, Read, Verify
  • One-time automated Programming (download/write)
  • Provides command line interface (CLI)
  • ST-LINK/V2 firmware upgrade
  • Configuration option byte
  • Compare file to target memory
  • Program\erase and verify external memory
  • Can load, edit and save executable and data files
  • Supports memory and core status views in real-time update mode

How to Use STM32 ST-LINK Utility?

As a programming tool, ST-LINK Utility includes conventional reading, writing (downloading / programming), erasing, option byte programming, etc. In this example, we use STM32F411 to show the details:

Tools Required

  • STM32 ST-LINK Utility Software
  • ST LINK /V2 Programmer x1
  • STM32 MCU x1
  • Jumper Wire (Several)

ST-LINK Utility Download

https://www.st.com/en/development-tools/stsw-link004.html

Download the ST-LINK Utility from STMicroelectronics
Download the ST-LINK Utility from STMicroelectronics

ST-LINK Utility installation

The installation package downloaded from the official website is an exe file, which means it only supports Windows and does not support operating systems such as Linux and Mac.

ST-LINK Utility Installation
ST-LINK Utility Installation

Hardware Connection

Connect the STM32 MCU with ST LINK programmer by jumper wires. To do this, you should match the pins with each other. And then, connect them with your PC.

Connect the ST Link Programmer with STM32 or STM8 MCU
Connect the ST Link Programmer with STM32 or STM8 MCU

Check the Connection

Open the ST-LINK Utility and click “Connect” to check the connection status.

Connect the ST-LINK Utility with STM32 Chip by ST-LINK V2 Programmer
Connect the ST-LINK Utility with STM32 Chip by ST-LINK V2 Programmer

If there’re some information like these, the connection is okay.

Connect ST-LINK Utility and STM32 Chip Successfully
Connect ST-LINK Utility and STM32 Chip Successfully

Programming the STM32

In order to program the STM32 with ST-LINK Utility, you need to open the file from your computer. and then click “Download”.

Upload the Files to ST-LINK Utility and Program STM32 Chip
Upload the Files to ST-LINK Utility and Program STM32 Chip

If there’re some information like these, the program is sucessful.

Program STM32 Chip Successfully
Program STM32 Chip Successfully

Engineering checks for STM32 ST-LINK Utility programming and recovery

Before using STM32 ST-LINK Utility programming and recovery in a PCB, firmware, repair, or validation workflow, confirm the details that usually decide whether the design works reliably instead of only reading the headline specification.

Design and troubleshooting checklist

AreaWhat to checkWhy it matters
Connection setupCheck ST-LINK firmware, SWDIO, SWCLK, NRST, target voltage detection, and connect-under-reset modeLocked or low-power STM32 devices often require reset control to regain access
Memory operationsRecord flash size, option bytes, readout protection, erase method, and verify checksum after programmingIncorrect option-byte handling can block debug access or boot from the wrong memory
Migration noteUse STM32CubeProgrammer for newer workflows while keeping ST-LINK Utility for legacy production recordsMany repair benches still receive projects built around the older utility

These checks help connect the search intent around STM32 ST-LINK Utility download with practical board-level decisions, component selection, and failure analysis.

ST-LINK Utility Download and Legacy Support

If you need an ST-LINK Utility download for an older STM32 workflow, note that STM32 ST-LINK Utility is a legacy tool and many new projects now use STM32CubeProgrammer instead. ST-LINK Utility is still useful when maintaining older production procedures, archived tutorials, or existing test fixtures that were built around STSW-LINK004.

When to Use ST-LINK Utility Instead of STM32CubeProgrammer

Use ST-LINK Utility when your existing documentation, operators, or scripts depend on the older interface. Use STM32CubeProgrammer for newer STM32 devices, command-line workflows, USB DFU, UART bootloader programming, and better long-term software support.

Windows Driver and Firmware Update Checklist

ProblemWhat to checkRecommended action
ST-LINK not detectedUSB cable, driver, Device ManagerInstall or repair ST-LINK USB driver
Target not foundSWDIO, SWCLK, GND, target voltageCheck wiring and power before retrying
Programming failsReadout protection, Flash erase, option bytesReview protection state and erase settings
Old firmware on probeST-LINK firmware versionRun ST-LINK firmware update before debugging

ST-LINK Utility Troubleshooting FAQ

Why does ST-LINK Utility show “No target connected”?

This usually means the tool can see the ST-LINK probe but not the STM32 target. Check target power, shared ground, SWDIO/SWCLK orientation, reset wiring, and whether the firmware has disabled the debug pins.

Share to:

Scroll to Top

Instant Quote