Skip to main content


Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Language IDEs » C / C++ IDE (CDT) » Debugging and tracepoints(MCU debugging using tracepoints )
Debugging and tracepoints [message #1843700] Sat, 14 August 2021 12:05 Go to next message
Zocsi DiGiorgio is currently offline Zocsi DiGiorgioFriend
Messages: 4
Registered: April 2021
Junior Member
First time that I try using Eclipse CDT plugin and OpenOCD for bare metal ARM devlopment (STM32f769 discovery board) on Windows 10. Ordinary debugging works well, but I am interested to try tracepoints. I found some recipes regarding tracepoints and when tried I noticed in console window announcement of starting gdbserver with some arguments. My understanding is that it should be arm-none-eabi-gdbserver, but I neither find any nor I have some as result of plugin installation.
One more question regarding debugging. I noticed when created debug configuration that I had to define "config options", which was stm32f769i-disco.cfg for my board. What should I change in config if I make some board of my own with the same MPU ?
Re: Debugging and tracepoints [message #1843705 is a reply to message #1843700] Sat, 14 August 2021 17:31 Go to previous messageGo to next message
Tauno Voipio is currently offline Tauno VoipioFriend
Messages: 742
Registered: August 2014
Senior Member
OpenOCD contains the server for GDB remote protocol. There should be no other gdbservers.

It may be that STM has called OpenOCD as 'gdbserver', the configuration argument instructions point that way.

The debugging chain is as follows: Eclipse - GDB - OpenOCD - hardware. The protocol in the first step is GDB MI, in the second step GDB remote and in the third step JTAG or ARM serial wire debug.

You should be able to connect to OpenOCD from a Telnet terminal to localhost port 4444. The standard port for Eclipse MI is localhost:3333.

For your own hardware you may need to write an own configuration file for OpenOCD. Please get OpenOCD manual and read it.



--

Tauno Voipio
Re: Debugging and tracepoints [message #1843709 is a reply to message #1843705] Sat, 14 August 2021 20:13 Go to previous messageGo to next message
Zocsi DiGiorgio is currently offline Zocsi DiGiorgioFriend
Messages: 4
Registered: April 2021
Junior Member
Having that description of debugging concept, I am still confused why, after starting Window/Show View/Trace Control I received message saying "Tracing is not supported".
The appropriate server (OpenOCD) was started, along with listening sockets, breakpoints works well, but no success with trace points.
Must continue digging ...
Re: Debugging and tracepoints [message #1843716 is a reply to message #1843709] Sun, 15 August 2021 17:04 Go to previous messageGo to next message
Tauno Voipio is currently offline Tauno VoipioFriend
Messages: 742
Registered: August 2014
Senior Member
The trace points are a special service which is not available in all configurations. According to my copies of GDB and OpenOCD documentations, tracepoints work only with remote targets and they need support from the remote GDB stub, which is OpenOCD in this case.

In the versions I have, there is no way to do tracing. Please check the manuals of the versions in your system.


--

Tauno Voipio
Re: Debugging and tracepoints [message #1843726 is a reply to message #1843716] Mon, 16 August 2021 07:44 Go to previous messageGo to next message
Zocsi DiGiorgio is currently offline Zocsi DiGiorgioFriend
Messages: 4
Registered: April 2021
Junior Member
Huh, you probably saved my time and efforts. I thought it is here by default. Must doublecheck the matter. Thanks a lot.

Edit: When I post gdb command "tstart" which starts data collection, I receive an answer "Target does not support this command". By my opinion, the meaning of "Target" here relates to openOCD, debug adapter and MPU all together.
If I am right, then the question is who exactly doesn't support tracepoints (although MPU, being Cortex M7 probably supports them).

[Updated on: Mon, 16 August 2021 08:28]

Report message to a moderator

Re: Debugging and tracepoints [message #1843745 is a reply to message #1843726] Mon, 16 August 2021 15:44 Go to previous message
Tauno Voipio is currently offline Tauno VoipioFriend
Messages: 742
Registered: August 2014
Senior Member
From the processor hardware point of view, a tracepoint is just a specially handled breakpoint. The module in the debug chain responsible for the tracepoint mechanism is the GDB stub, in this embedded processor case OpenOCD.

As far as I know, the tracepoint mechanism is only in some versions of Intel x86 processor GDB stubs, e.g. some of the Linux kernel stubs.


--

Tauno Voipio
Previous Topic:Need support with opening my old .bpr files on Eclipse
Next Topic:Segmentation fault with Qt library
Goto Forum:
  


Current Time: Thu Apr 25 16:40:09 GMT 2024

Powered by FUDForum. Page generated in 0.03972 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software

Back to the top