Search code examples
stm32stm32cubeide

NUCLEO-H723ZG Printf (SWV) not working on STM32CubeIDE


Trying to understand ITM and SWV so that the useful printf function can be used for debugging is well worth while. But it doesn't work on one of ST's latest boards, the NUCLEO-H723ZG. This is a real hair tearing out experience as printf works so easily on another board, the NUCLEO-H743ZI2.

I am using STM32CubeIDE v 1.7.0. Has anyone found a solution to this issue with the H723ZG chip, or more likely, the ST development software for that chip?


Solution

  • ITM and printf do work on the Nucleo-H723ZG.

    Using the STM32CubeIDE v 1.7.0 (the latest version) the default board clock is 550MHz. The Trace clock is however 275MHz as noted on the Clock Configuration diagram. In the Debug Configuration Properties, when enabling SWV, the Core Clock frequency must be set at 275MHz (not 550).

    This is different from configuring the Nucleo-H743ZI2 board for its maximum clock frequency of 480MHz. In this case set the SWV core clock to 480MHz, not the Trace clock frequency.

    Thanks to STM support for helping me solve this conundrum.