If you're working with STM32 microcontrollers, you'll need a reliable tool to flash your compiled code onto the hardware. One of the most popular and versatile options is the official STM32CubeProgrammer (STM32CubeProg) from STMicroelectronics.
What is STM32CubeProgrammer?
STM32CubeProgrammer is STMicroelectronics' free, all-in-one programming tool. It's a powerful utility that allows you to:
-
Program Your Device: Flash firmware files (like
.bin,.hex) to STM32 microcontrollers. -
Multiple Connection Methods: Use ST-LINK/V2/V3 debuggers (via JTAG/SWD), USB DFU, UART, or even SPI.
-
Perform Key Operations: Erase memory, verify programming, read/write device memory and Option Bytes.
-
Cross-Platform Support: It runs on Windows, Linux, and macOS.
Step 1: Download the Correct Version
You can download STM32CubeProgrammer directly from our download page.
On our Download Page, you will find the following versions:
-
For Linux (64-bit systems):
STM32CubeProgrammer_STOfficial_Installer_Linux_x64.zip -
For macOS (Intel-based Macs):
STM32CubeProgrammer_STOfficial_Installer_macOS_x86_64.zip -
For macOS (Apple Silicon Macs: M1, M2, M3, etc.):
STM32CubeProgrammer_STOfficial_Installer_macOS_AppleSilicon.zip
Go to our Download page to get the installer for your system
Note: The software is developed and maintained by STMicroelectronics. We simply provide the official installation packages for easy access. Please refer to ST's official documentation for the most detailed and updated information.
Step 2: Installation Guide
-
Windows: The process is straightforward. Run the downloaded
.exeinstaller and follow the on-screen instructions. The installer will typically set up the necessary USB drivers (for ST-LINK) as well. -
Linux & macOS: For these systems, you usually download a compressed archive (
.zipor.tgz).-
Extract the downloaded archive to a folder of your choice.
-
Open a terminal, navigate to the extracted folder.
-
Run the installation script (e.g.,
./SetupSTM32CubeProgrammer-*.linux) or install the contained package. You may need to grant it execution permissions first (e.g.,chmod +x Setup*). -
Please check the
readmefile included in the package for any system-specific dependencies or steps.
-
Step 3: Basic Tutorial - Flashing a Board via ST-LINK
Here’s a simple walkthrough to program a common STM32 development board (like a Nucleo board with an integrated ST-LINK).
-
Launch and Connect:
-
Open STM32CubeProgrammer.
-
Connect your STM32 board to your computer via USB.
-
In the upper-left "Connectivity" section, select "ST-LINK" as the mode.
-
Click the "Refresh" button in the "Port" section, then click "Connect". The device information should populate, indicating a successful connection.
-
-
Erase the Chip (Optional but Recommended):
-
Before loading new software, it's good practice to perform a full erase. Navigate to the "Erasing & Programming" tab or find the "Full Chip Erase" option and click it.
-
-
Load and Program Your Firmware:
-
In the "Erasing & Programming" tab, click "Browse" next to the "File path" field and select your compiled firmware file (e.g.,
YourProject.bin). -
It's good practice to enable the "Verify programming" option. You can also check "Run after programming" to start the application immediately.
-
Click the large "Start Programming" button.
-
-
Verify Success:
-
The operation log at the bottom will show the process. Look for messages like "File download complete" and "Verification… OK" to confirm a successful flash. Your board should now be running the new firmware.
-
Troubleshooting Tips
-
ST-LINK Not Recognized (Windows): You might need to manually install USB drivers. They are often located in the
Driversfolder within your STM32CubeProgrammer installation directory. -
macOS Security Warning: The first time you run it, you may need to authorize it in System Preferences > Security & Privacy.
-
Connection Errors: Double-check your USB cable, ensure the board is powered, and that you've selected the correct interface (ST-LINK, UART, etc.) matching your physical connection.
We hope this guide and the provided download links help you get started with STM32 development more quickly. For advanced features, detailed configuration, and official support, please refer to the documentation and resources provided by STMicroelectronics.
Leave a Reply
- <> Malahit-DSP2 >
- <> PORTXVNSA SA5 >
- <> ATS25-XF >
- <> MLite-880 >
- <> March 2026 >
- <> May 2026 >
- <> February 2026 >
- <> May 2025 >
- <> January 2025 >
- <> July 2024 >
