Skip to main content
Associate III
June 19, 2024
Solved

Implementing SWD programming protocol for flashing STM32 chips

  • June 19, 2024
  • 1 reply
  • 4707 views

Hello.

I am developing a development board (to sell to customers eventually), for which I want to have my own flashing dongle. Now, I have posted in another thread asking about the software that is in the ST-Link devices, and the response I got is that it's not available for the public.

But so the SWD protocol is an open standard if I understand things correctly, developed by ARM. Is the "protocol" for flashing the STM32 chips open so that I can implement my own SWD flasher, given the SWD protocol, my binary file and the specifications on how STM32 chips are flashed with SWD?

Regards,

Daniel

Best answer by Andrew Neil

@DanielPi wrote:

the SWD protocol is an open standard if I understand things correctly, developed by ARM.


Correct:

https://developer.arm.com/documentation/ihi0031/a

 

I pointed you to several open-source implementations - including ARM's own CMSIS-DAP - in your previous thread:

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

 

There's also the Segger option - did you get anywhere with that?

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

1 reply

Andrew Neil
Andrew NeilBest answer
Super User
June 19, 2024

@DanielPi wrote:

the SWD protocol is an open standard if I understand things correctly, developed by ARM.


Correct:

https://developer.arm.com/documentation/ihi0031/a

 

I pointed you to several open-source implementations - including ARM's own CMSIS-DAP - in your previous thread:

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

 

There's also the Segger option - did you get anywhere with that?

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

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.
DanielPiAuthor
Associate III
June 19, 2024

Guess I should have done some more homework ;) Thanks again Andrew!