2025-03-04 3:51 PM - last edited on 2025-03-06 5:57 AM by Andrew Neil
Hi,
Compiler: ARM Keil MDKv5 version 5.41
When using Embedded Trace (Sync Trace with 4-bit) and the Debug Description file (.dbgconf Configuration File) from the STM32U5A5 DFP v3.0.0 pack is enabled, the processor enter debug mode, but no trace data is send from processor. The SWD debugger works correctly and it is possible to step through the code, breakpoints, etc.
Once in debug mode, a breakpoint is placed on the code, and the GPIOE_MODER register is read back as 0xFFFFFFFF, which indicates that the .dbgconf file is somehow incorrect. The Log Sequence shows that the .dbgconf file is read and executed but the trace signals are not enabled.
If the GPIO_MODER register is changed manually (selecting the alternate function mode for PE2, PE3, PE4, PE5 and PE6), the Trace signals are enabled (seen on the oscilloscope) and the Trace data is read correctly in uVision.
Do you have an updated .dbgconf file or a different workaround to enable the Trace Signals for the STM32U5xx processor in uVision?
Thanks!
Solved! Go to Solution.
2025-03-11 11:10 AM
Hi
I submitted this issue to ARM directly, and they were able to reproduce and fix the issue.
The issue is in the PACK files provided by ARM to support the U5 processors: Keil.STM32U5xx_DFP.pdsc for STM32U5A5 DFP v3.0.0
“From Andreas Barth - Arm Partner Enablement Group
Dear Alexander,
I now found a NUCLEO-U575ZI board in the office and could reproduce the issue. After looking closer at the pdsc and the ConfigureTraceTPIUPins sequence in there I think the RCC_AHB2ENR1 used in there is wrong. Used is there 0x4002108C, while correct seems to be 0x46020C8C. After modifying the ConfigureTraceTPIUPins sequence accordingly, I see the trace pins configured, when the debug session started.
I attached the modified Keil.STM32U5xx_DFP.pdsc here to the case for reference, so that you can give it a try. You need to replace the file in the respective pack folder. Let me know, how it goes.
Kind regards,
Andreas”
After changing the .pdsc file to the supplied one by ARM, it was possible to see the trace pins configured correctly and the trace data/code coverage information in uVision.
Regards,
Alex R.
2025-03-06 5:50 AM - last edited on 2025-03-06 6:01 AM by Saket_Om
Hi @Alex R,
The .dbgconf file is part for enabling trace GPIOs (PE2, PE3, PE4, PE5 and PE6).
This file is given by Keil.
2025-03-06 12:18 PM
@Chiheb_M: Thanks. The file is indeed provided by Keil. However, it is not working correctly, and do not configure the trace pins for trace alternate function.
The reason for asking in this forum is to see of other members have had similar issues enabling trace functionality (whether with Keil or Segger), and if there is possible workarounds. STM32CubeIDE do not support trace functionality, unfortunately.
Also, have ST tried the STM32U5 processors and Keil ULINKPro (or Segger J-Trace) for Embedded Trace successfully? Is there a working example that can be shared with the community? Surely, the trace features must have been tested.
Thanks!
2025-03-11 11:10 AM
Hi
I submitted this issue to ARM directly, and they were able to reproduce and fix the issue.
The issue is in the PACK files provided by ARM to support the U5 processors: Keil.STM32U5xx_DFP.pdsc for STM32U5A5 DFP v3.0.0
“From Andreas Barth - Arm Partner Enablement Group
Dear Alexander,
I now found a NUCLEO-U575ZI board in the office and could reproduce the issue. After looking closer at the pdsc and the ConfigureTraceTPIUPins sequence in there I think the RCC_AHB2ENR1 used in there is wrong. Used is there 0x4002108C, while correct seems to be 0x46020C8C. After modifying the ConfigureTraceTPIUPins sequence accordingly, I see the trace pins configured, when the debug session started.
I attached the modified Keil.STM32U5xx_DFP.pdsc here to the case for reference, so that you can give it a try. You need to replace the file in the respective pack folder. Let me know, how it goes.
Kind regards,
Andreas”
After changing the .pdsc file to the supplied one by ARM, it was possible to see the trace pins configured correctly and the trace data/code coverage information in uVision.
Regards,
Alex R.