From b42549f071124cd5b598a0c3f756ce5790be0130 Mon Sep 17 00:00:00 2001 From: Abderrahmane Jarmouni Date: Fri, 23 Aug 2024 22:28:17 +0200 Subject: [PATCH] doc: flash_debug: document stm32cubeprogrammer Document STM32CubeProgrammer installation & usage with Zephyr. Signed-off-by: Abderrahmane Jarmouni --- doc/develop/flash_debug/host-tools.rst | 66 ++++++++++++++++++++++++++ 1 file changed, 66 insertions(+) diff --git a/doc/develop/flash_debug/host-tools.rst b/doc/develop/flash_debug/host-tools.rst index a18ae880979..1ad2751582e 100644 --- a/doc/develop/flash_debug/host-tools.rst +++ b/doc/develop/flash_debug/host-tools.rst @@ -475,6 +475,54 @@ Check `probe-rs Installation`_ for more setup details. Check if your SoC is listed in `probe-rs Supported Devices`_. +.. _stm32cubeprog-flash-host-tools: + +STM32CubeProgrammer Flash Host Tools +************************************ + +STMicroelectronics provides `STM32CubeProgrammer`_ (STM32CubeProg) as an official programming tool +for STM32 boards on Linux|r|, macOS|r|, and Windows|r| operating systems. + +It provides an easy-to-use and efficient environment for reading, writing, and verifying device memory +through both the debug interface (JTAG and SWD) and the bootloader interface (UART and USB DFU, I2C, SPI, and CAN). + +It offers a wide range of features to program STM32 internal memories (such as flash, RAM, and OTP) +as well as external memories. + +It also allows option programming and upload, programming content verification, and programming automation +through scripting. + +It is delivered in GUI (graphical user interface) and CLI (command-line interface) versions. + +It is compatible with the following debug probes: + +- :ref:`stlink-v21-onboard-debug-probe` +- :ref:`jlink-external-debug-probe` +- Standalone `ST-LINK-V2`_, `ST-LINK-V3`_, and `STLINK-V3PWR`_ probes + +Install STM32CubeProgrammer +--------------------------- + +The easiest way to get `STM32CubeProgrammer`_ is to download it from STMicroelectronics website. +A valid email address is needed to receive the downloading link. + +Alternatively, it can be installed as part of `STM32CubeCLT`_ all-in-one multi-OS command-line toolset +which also includes GDB debugger client and server. + +If you have STM32CubeIDE installed on your system, then STM32CubeProg is already present. + +Basic usage +----------- + +`STM32CubeProgrammer`_ is setup as the default west runner for all active STM32 boards supported by Zephyr. +It can be used through the ``west flash`` command to flash Zephyr applications. + +.. code-block:: console + + west flash --runner stm32cubeprogrammer + +For advanced usage via the GUI or CLI, check out the `STM32CubeProgrammer User Manual`_. + .. _J-Link Software and Documentation Pack: https://www.segger.com/downloads/jlink/#J-LinkSoftwareAndDocumentationPack @@ -525,3 +573,21 @@ Check if your SoC is listed in `probe-rs Supported Devices`_. .. _probe-rs Supported Devices: https://probe.rs/targets/ + +.. _STM32CubeProgrammer: + https://www.st.com/en/development-tools/stm32cubeprog.html + +.. _STM32CubeCLT: + https://www.st.com/en/development-tools/stm32cubeclt.html + +.. _STM32CubeProgrammer User Manual: + https://www.st.com/resource/en/user_manual/um2237-stm32cubeprogrammer-software-description-stmicroelectronics.pdf + +.. _ST-LINK-V2: + https://www.st.com/en/development-tools/st-link-v2.html + +.. _ST-LINK-V3: + https://www.st.com/en/development-tools/stlink-v3set.html + +.. _STLINK-V3PWR: + https://www.st.com/en/development-tools/stlink-v3pwr.html