Skip to main content
Associate
August 11, 2026
Question

Standalone Bare-Metal Debug of Cortex-M33 Core via ST-LINK

  • August 11, 2026
  • 0 replies
  • 66 views

I am working with an STM32MP257F-EV1 Evaluation Board (board reference MB1936, target device STM32MP257FAI3) and am trying to debug a standalone bare-metal application running on the Cortex-M33 core directly over SWD using ST-Link.

Current Setup

  • Board: STM32MP257F-EV1
  • Board reference: MB1936
  • Target: STM32MP257FAI3
  • Tools: STM32CubeIDE and STM32CubeProgrammer
  • Boot configuration (SW1): Development boot
    • Boot0 = 1
    • Boot1 = 1
    • Boot2 = 0
    • Boot3 = 0
  • JP3: No jumper fitted (STLINK-V3EC active)
  • CubeIDE Debug Configuration:
    • Load Mode = "thru JTAG/SWD link (Engineering mode)"
    • Access Port = "8 - Cortex-M33"
    • Debug interface = SWD

I have also attached a screenshot of the debug error I am receiving.

Current Observation

I am able to debug the Cortex-M33 successfully when the board is first booted from an SD card. After the SD-card boot completes, I can connect to and debug the M33 core from CubeIDE.

However, my requirement is to debug the M33 without booting the board from an SD card, eMMC, or QSPI.

Specifically, I would like to use the STM32MP257F-EV1 as a target for a standalone/bare-metal M33 application, with the debugger connecting directly over SWD and downloading/debugging the application.

Questions

Could you please clarify the following:

  1. Is it possible to debug the Cortex-M33 directly via SWD/JTAG on the STM32MP257F-EV1 without booting from SD card, eMMC, QSPI, or another non-volatile boot source?
  2. What is the recommended and officially supported procedure for debugging a standalone/bare-metal Cortex-M33 application over SWD?​

Any guidance on the required boot process, debug settings, or device configuration would be greatly appreciated.