<?xml-stylesheet type="text/xsl" href="https://devzone.nordicsemi.com/cfs-file/__key/system/syndication/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Debugging nRF52 series devices using Trace</title><link>/nordic/nordic-blog/b/blog/posts/debugging-nrf52-series-devices-using-trace</link><description>#Why use trace
&amp;quot;Embedded Trace Macrocell (ETM) allows to capture information on the processor’s state without affecting the processor’s performance. Microcontrollers that include an ETM allow detailed program execution to be recorded and saved ...</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><item><title>RE: Debugging nRF52 series devices using Trace</title><link>https://devzone.nordicsemi.com/nordic/nordic-blog/b/blog/posts/debugging-nrf52-series-devices-using-trace</link><pubDate>Wed, 28 Sep 2022 19:12:59 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:54d9564e-d6a5-4108-84bb-81f4f714f742</guid><dc:creator>thiago_hd</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;What about nRF Connect SDK?&lt;/p&gt;&lt;img src="https://devzone.nordicsemi.com/aggbug?PostID=1145&amp;AppID=4&amp;AppType=Weblog&amp;ContentType=0" width="1" height="1"&gt;</description></item><item><title>RE: Debugging nRF52 series devices using Trace</title><link>https://devzone.nordicsemi.com/nordic/nordic-blog/b/blog/posts/debugging-nrf52-series-devices-using-trace</link><pubDate>Wed, 24 Jan 2018 08:59:34 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:54d9564e-d6a5-4108-84bb-81f4f714f742</guid><dc:creator>Quentin Bodinier</dc:creator><slash:comments>1</slash:comments><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;Thank you so much for your blog post. It just so happens that I am currently investigating ways to access TRACE on a nRF52832 DK.&lt;/p&gt;
&lt;p&gt;Thus, I am currently choosing what debugger to buy. From my understanding of your article, I could achieve what I am trying to do with the following:&lt;/p&gt;
&lt;p&gt;1: J-Trace Pro Cortex- M - &lt;a rel="nofollow" target="_blank" href="https://www.segger.com/products/debug-probes/j-trace/models/j-trace/"&gt;www.segger.com/.../&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;2: J-Link 19 Pin Cortex-M adapter - &lt;a rel="nofollow" target="_blank" href="https://www.segger.com/products/debug-probes/j-link/accessories/adapters/19-pin-cortex-m-adapter/"&gt;www.segger.com/.../&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;3- Some custom wiring to reproduce the scheme you have detailed in your post.&lt;/p&gt;
&lt;p&gt;Is that it ? I just want to make sure that I am not missing anything before going for it.&lt;/p&gt;
&lt;p&gt;Thank you very much in advance !&lt;/p&gt;
&lt;p&gt;Quentin&lt;/p&gt;
&lt;img src="https://devzone.nordicsemi.com/aggbug?PostID=1145&amp;AppID=4&amp;AppType=Weblog&amp;ContentType=0" width="1" height="1"&gt;</description></item><item><title>RE: Debugging nRF52 series devices using Trace</title><link>https://devzone.nordicsemi.com/nordic/nordic-blog/b/blog/posts/debugging-nrf52-series-devices-using-trace</link><pubDate>Tue, 03 May 2016 00:33:42 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:54d9564e-d6a5-4108-84bb-81f4f714f742</guid><dc:creator>RK</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;The onboard debugger supports everything on the 10 pin cortex debug header, which includes SWO (P0.18) and nRESET (P0.21) which are routed to the correct pins, so output from the ITM and DWT can be captured via SWO. The 4 TRACEDATA pins however don&amp;#39;t go anywhere, so you if you want to use those you need a capable debugger, like one of the Seggers with Trace (out of my budget).&lt;/p&gt;
&lt;p&gt;Technically it&amp;#39;s supposed to be possible to configure the TPIU to SWO mode but not bypass the formatter, so multiplexing ETM data onto SWO as well. That&amp;#39;s probably not actually practical as a 1-bit wide trace port wouldn&amp;#39;t be able to handle the data. I also have some doubt whether any IDE would expect formatted data out of SWO and handle it properly. If I get bored one day ...&lt;/p&gt;
&lt;p&gt;I just checked to see that Segger Embedded Studio, like Crossworks, has the Instrument Functions option which sends ITM stimulus to channels 30 and 29 and does rudimentary function tracing. There&amp;#39;s another couple of ITM channels it recognises, 0 is printf() style, 28 is program counter values and 31 is thread scheduling. I don&amp;#39;t know what writes to 28 or 31 nor what format channel 31 expects, probably the Crossworks Tasking Library (their RTOS) uses it.&lt;/p&gt;
&lt;p&gt;I suspect there are lots of cool things you can do with SWO and cheap trace units tend to support it where they don&amp;#39;t support TRACE. Even CMSIS-DAP, ARM&amp;#39;s own debug interface, only just supports SWO and doesn&amp;#39;t support TRACE yet.&lt;/p&gt;
&lt;img src="https://devzone.nordicsemi.com/aggbug?PostID=1145&amp;AppID=4&amp;AppType=Weblog&amp;ContentType=0" width="1" height="1"&gt;</description></item><item><title>RE: Debugging nRF52 series devices using Trace</title><link>https://devzone.nordicsemi.com/nordic/nordic-blog/b/blog/posts/debugging-nrf52-series-devices-using-trace</link><pubDate>Wed, 27 Apr 2016 08:27:13 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:54d9564e-d6a5-4108-84bb-81f4f714f742</guid><dc:creator>Michael Dietz</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;KLWP: That&amp;#39;s a very good point. Some trace functionality is availalbe without an external debugger like J-Trace or ULink 2. I will look into this and post exactly what can be used with the on board debugger, but for now I think it is only ETM that requires an external debugger.&lt;/p&gt;
&lt;img src="https://devzone.nordicsemi.com/aggbug?PostID=1145&amp;AppID=4&amp;AppType=Weblog&amp;ContentType=0" width="1" height="1"&gt;</description></item><item><title>RE: Debugging nRF52 series devices using Trace</title><link>https://devzone.nordicsemi.com/nordic/nordic-blog/b/blog/posts/debugging-nrf52-series-devices-using-trace</link><pubDate>Wed, 27 Apr 2016 05:55:24 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:54d9564e-d6a5-4108-84bb-81f4f714f742</guid><dc:creator>KLWP0101</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;Hello,
just want to point out that the SWO traces, i.e.&lt;/p&gt;
&lt;p&gt;&lt;em&gt;•Debug message: Generated by ITM, provides message output such as printf in the debugger GUI.&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;seem to work with Nordic on-board debugger. I am using those just now.&lt;/p&gt;
&lt;img src="https://devzone.nordicsemi.com/aggbug?PostID=1145&amp;AppID=4&amp;AppType=Weblog&amp;ContentType=0" width="1" height="1"&gt;</description></item><item><title>RE: Debugging nRF52 series devices using Trace</title><link>https://devzone.nordicsemi.com/nordic/nordic-blog/b/blog/posts/debugging-nrf52-series-devices-using-trace</link><pubDate>Tue, 26 Apr 2016 11:59:48 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:54d9564e-d6a5-4108-84bb-81f4f714f742</guid><dc:creator>Michael Dietz</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;Matts:&lt;/p&gt;
&lt;p&gt;&lt;img src="/cfs-file/__key/communityserver-blogs-components-weblogfiles/00-00-00-00-04-DZ-620/6433.jtrace_5F00_pins.png" alt="image description" /&gt;&lt;/p&gt;
&lt;p&gt;That is from the SEGGER manual. Looking at it I would expect you to need to connect the SWD Lines, Trace Lines, nReset, VTref and GND. But I&amp;#39;m not sure, I just used the connector board I was given. Don&amp;#39;t let the fact that the 19pin and 9pin ports were used confuse you - its because the trace lines are on the GPIOs and the SWD lines are on the Debug In port and this was the easy way to connect all the lines.&lt;/p&gt;
&lt;p&gt;Sven:&lt;/p&gt;
&lt;p&gt;Yes this is supported in the SEGGER IDE. I have been meaning to test it out. Looks like it is very easy to enable in that IDE, you could look at the documentation here and search for trace: &lt;a rel="nofollow" target="_blank" href="https://www.segger.com/downloads/embeddedstudio/segger_embedded_studio_manual.pdf."&gt;www.segger.com/.../segger_embedded_studio_manual.pdf.&lt;/a&gt;&lt;/p&gt;
&lt;img src="https://devzone.nordicsemi.com/aggbug?PostID=1145&amp;AppID=4&amp;AppType=Weblog&amp;ContentType=0" width="1" height="1"&gt;</description></item><item><title>RE: Debugging nRF52 series devices using Trace</title><link>https://devzone.nordicsemi.com/nordic/nordic-blog/b/blog/posts/debugging-nrf52-series-devices-using-trace</link><pubDate>Tue, 26 Apr 2016 08:27:40 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:54d9564e-d6a5-4108-84bb-81f4f714f742</guid><dc:creator>Sven</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;What about SEGGER IDE?&lt;/p&gt;
&lt;img src="https://devzone.nordicsemi.com/aggbug?PostID=1145&amp;AppID=4&amp;AppType=Weblog&amp;ContentType=0" width="1" height="1"&gt;</description></item><item><title>RE: Debugging nRF52 series devices using Trace</title><link>https://devzone.nordicsemi.com/nordic/nordic-blog/b/blog/posts/debugging-nrf52-series-devices-using-trace</link><pubDate>Fri, 22 Apr 2016 10:52:00 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:54d9564e-d6a5-4108-84bb-81f4f714f742</guid><dc:creator>Matts</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;You seem to have both 9-pin and 19 pin connectors. What lines have you connected? for 19 pin are only the 5 trace lines required or also the VTref and 5V supply?&lt;/p&gt;
&lt;img src="https://devzone.nordicsemi.com/aggbug?PostID=1145&amp;AppID=4&amp;AppType=Weblog&amp;ContentType=0" width="1" height="1"&gt;</description></item><item><title>RE: Debugging nRF52 series devices using Trace</title><link>https://devzone.nordicsemi.com/nordic/nordic-blog/b/blog/posts/debugging-nrf52-series-devices-using-trace</link><pubDate>Thu, 21 Apr 2016 12:18:17 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:54d9564e-d6a5-4108-84bb-81f4f714f742</guid><dc:creator>Michael Dietz</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;Yes, you will have to look at the schematic for the development kit. It&amp;#39;s here: &lt;a href="/cfs-file/__key/communityserver-blogs-components-weblogfiles/00-00-00-00-04-DZ-612/1031.nRF52-Development-Kit-_2D00_-Hardware-files-1_5F00_1_5F00_0.zip"&gt;nRF52 Development Kit - Hardware files 1_1_0.zip&lt;/a&gt;.&lt;/p&gt;
&lt;img src="https://devzone.nordicsemi.com/aggbug?PostID=1145&amp;AppID=4&amp;AppType=Weblog&amp;ContentType=0" width="1" height="1"&gt;</description></item><item><title>RE: Debugging nRF52 series devices using Trace</title><link>https://devzone.nordicsemi.com/nordic/nordic-blog/b/blog/posts/debugging-nrf52-series-devices-using-trace</link><pubDate>Thu, 21 Apr 2016 11:41:01 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:54d9564e-d6a5-4108-84bb-81f4f714f742</guid><dc:creator>Matts</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;Hi.&lt;/p&gt;
&lt;p&gt;Would it be possible to get link to pin list that has ALL the board pin names also. The one you linked only doesn&amp;#39;t have them all (fe SWDIO and SWDCLK don&amp;#39;t have the pin name). Mapping to J-Link 19-pin Cortex-M Adapter is littlebit difficult without it.&lt;/p&gt;
&lt;img src="https://devzone.nordicsemi.com/aggbug?PostID=1145&amp;AppID=4&amp;AppType=Weblog&amp;ContentType=0" width="1" height="1"&gt;</description></item></channel></rss>