cancel
Showing results for 
Search instead for 
Did you mean: 

Using STM32F103 as ST-LINK Programmer – Bootloader and Driver Clarification

vd3
Associate

Hello Sir,

I would like to request your guidance regarding the use of an STM32F103 microcontroller as an ST-LINK programmer. I have already flashed a bootloader HEX file intended for ST-LINK functionality into the STM32F103 device. However, I would like to confirm the following points: Is any additional driver, firmware, or configuration file required on the PC side or MCU side to make the STM32F103 work properly as an ST-LINK programmer? Is the flashed bootloader alone sufficient, or are there any specific steps or tools recommended by ST to complete the setup? Could you please provide or point me to the official/original ST-LINK bootloader or firmware source for STM32F103, if available? Are there any reference documents or application notes that explain this implementation in detail? Your support and clarification on this matter would be highly appreciated. Thank you for your time and assistance.

2 REPLIES 2
TDK
Super User

The official ST-Link firmware and source code are not distributed.

For official ST-Link programmers, you will also need drivers on the PC as well as a suitable program such as STM32CubeProgrammer for them to work.

STSW-LINK009 | Software - STMicroelectronics

If you feel a post has answered your question, please click "Accept as Solution".
Andrew Neil
Super User

As @TDK said, ST do not release the ST-Link firmware - see:

https://community.st.com/t5/stm32-mcus-boards-and-hardware/diy-st-link-v3/m-p/674695/highlight/true#M19049

So anything you do have is not legitimate.

Therefore there is no support for creating your own "clone" ST-Link.

Note also that ST tools may detect unofficial/unauthorised ST-links, and may not work properly/fully with them.

 

If you really must make a DIY debug probe, there are open-source projects available; see:

https://community.st.com/t5/stm32-mcus-boards-and-hardware/diy-st-link-v3/m-p/674707/highlight/true#M19051

A complex system that works is invariably found to have evolved from a simple system that worked.
A complex system designed from scratch never works and cannot be patched up to make it work.