
August 2016 DocID16987 Rev 22 1/49
UM0892
User manual
STM32 ST-LINK utility software description
Introduction
The STM32 ST-LINK utility software facilitates fast in-system programming of the STM32
microcontroller families in development environments via the ST-LINK and ST-LINK/V2
tools.
This user manual describes the software functions of the STM32 ST-LINK utility. When
working with the STM32 ST-LINK utility, it is recommended to download the ST-LINK in-
circuit debugger/programmer for STM8 and STM32 microcontrollers User manual
(UM0627) or the ST-LINK/V2 in-circuit debugger/programmer for STM8 and STM32 User
manual (UM1075), which provides more information about the ST-LINK tools.
Note: The part number of the STM32 ST-LINK utility software is STSW-LINK004.
www.st.com

Contents UM0892
2/49 DocID16987 Rev 22
Contents
1 Getting started . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.1 System requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.2 Hardware requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.3 Installing the STM32 ST-LINK utility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.4 Uninstalling the STM32 ST-LINK utility . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2 STM32 ST-LINK utility user interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
2.1 Main window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
2.2 Menu bar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
2.2.1 File menu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
2.2.2 Edit menu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
2.2.3 View menu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
2.2.4 Target menu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
2.2.5 ST-LINK menu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2.2.6 External Loader menu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2.2.7 Help menu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
3 STM32 ST-LINK utility features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
3.1 Device information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
3.2 Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
3.3 Memory display and modification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
3.4 Flash memory erase . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
3.5 Device programming . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
3.6 Option bytes configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
3.7 MCU core functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
3.8 Automatic mode functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
3.9 Developing customized loaders for external memory . . . . . . . . . . . . . . . 30
3.10 Printf via SWO viewer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
4 STM32 ST-LINK utility command line interface (CLI) . . . . . . . . . . . . . . 32
4.1 Command line usage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
4.1.1 Connection and memory manipulation commands . . . . . . . . . . . . . . . . 32
4.1.2 Core commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34

DocID16987 Rev 22 3/49
UM0892 Contents
3
4.1.3 Flash commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
4.1.4 Miscellaneous commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
4.1.5 Option bytes commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
4.1.6 External memory command25 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
4.1.7 ST-LINK_CLI return codes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
5 Revision history . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45

List of tables UM0892
4/49 DocID16987 Rev 22
List of tables
Table 1. nBoot1 configuration for STM32F04x . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
Table 2. nBoot1 configuration for STM32F0 and STM32F3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
Table 3. ST-LINK_CLI return codes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
Table 4. Document revision history . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45

DocID16987 Rev 22 5/49
UM0892 List of figures
5
List of figures
Figure 1. STM32 ST-LINK utility user interface main window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
Figure 2. Menu bar. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
Figure 3. File menu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
Figure 4. Edit menu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
Figure 5. View menu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
Figure 6. Target menu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
Figure 7. ST-LINK menu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
Figure 8. External Loader menu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
Figure 9. External Loader window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
Figure 10. External Loader submenus. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
Figure 11. External memory grid . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
Figure 12. Help menu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
Figure 13. Device information zone in the main user interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
Figure 14. Settings dialog box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
Figure 15. STM32 ST-LINK utility user interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
Figure 16. Flash memory mapping dialog box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
Figure 17. Open file dialog box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
Figure 18. Device programming dialog box (programming). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
Figure 19. Option bytes dialog box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
Figure 20. Read/write protection mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
Figure 21. MCU Core panel dialog box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
Figure 22. Automatic mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
Figure 23. Serial wire viewer window (SWV) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31