<?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>Instrumenting with Segger SystemView</title><link>/nordic/nordic-blog/b/blog/posts/instrumenting-with-segger-systemview</link><description>Segger has recently released a number of tools, some of them free, which work with Segger&amp;#39;s JLink debuggers, One of those is SystemView, a real-time analysis and visualisation tool. It&amp;#39;s cross platform and Segger&amp;#39;s page for it is here .
SystemView us</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><item><title>RE: Instrumenting with Segger SystemView</title><link>https://devzone.nordicsemi.com/nordic/nordic-blog/b/blog/posts/instrumenting-with-segger-systemview</link><pubDate>Thu, 19 Jan 2023 16:55:57 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:4ede12c4-e96f-41bd-9393-8ce94a608296</guid><dc:creator>ColinC</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;Hello Everyone,&lt;/p&gt;
&lt;p&gt;Is this feature also supported with the nRF Connect SDK? If yes, could you provide a guide as how to get the tracing going with an nRF board?&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Many Thanks&lt;/p&gt;
&lt;p&gt;Colin&lt;/p&gt;&lt;img src="https://devzone.nordicsemi.com/aggbug?PostID=931&amp;AppID=4&amp;AppType=Weblog&amp;ContentType=0" width="1" height="1"&gt;</description></item><item><title>RE: Instrumenting with Segger SystemView</title><link>https://devzone.nordicsemi.com/nordic/nordic-blog/b/blog/posts/instrumenting-with-segger-systemview</link><pubDate>Fri, 14 Oct 2016 20:16:19 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:4ede12c4-e96f-41bd-9393-8ce94a608296</guid><dc:creator>Nicolas Tzovanis</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;Hi RK, what address are you using as SYSVIEW_RAM_BASE?&lt;/p&gt;
&lt;img src="https://devzone.nordicsemi.com/aggbug?PostID=931&amp;AppID=4&amp;AppType=Weblog&amp;ContentType=0" width="1" height="1"&gt;</description></item><item><title>RE: Instrumenting with Segger SystemView</title><link>https://devzone.nordicsemi.com/nordic/nordic-blog/b/blog/posts/instrumenting-with-segger-systemview</link><pubDate>Tue, 30 Aug 2016 12:18:28 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:4ede12c4-e96f-41bd-9393-8ce94a608296</guid><dc:creator>Susheel Nuguru</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;will take the conversation offline now, We can comeback and update this thread after we come to some conclusion.&lt;/p&gt;
&lt;img src="https://devzone.nordicsemi.com/aggbug?PostID=931&amp;AppID=4&amp;AppType=Weblog&amp;ContentType=0" width="1" height="1"&gt;</description></item><item><title>RE: Instrumenting with Segger SystemView</title><link>https://devzone.nordicsemi.com/nordic/nordic-blog/b/blog/posts/instrumenting-with-segger-systemview</link><pubDate>Mon, 29 Aug 2016 23:36:15 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:4ede12c4-e96f-41bd-9393-8ce94a608296</guid><dc:creator>RK</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;.. taking this conversation offline to figure this out .. will post if we get to some resolution which might be useful for others.&lt;/p&gt;
&lt;img src="https://devzone.nordicsemi.com/aggbug?PostID=931&amp;AppID=4&amp;AppType=Weblog&amp;ContentType=0" width="1" height="1"&gt;</description></item><item><title>RE: Instrumenting with Segger SystemView</title><link>https://devzone.nordicsemi.com/nordic/nordic-blog/b/blog/posts/instrumenting-with-segger-systemview</link><pubDate>Mon, 29 Aug 2016 13:01:24 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:4ede12c4-e96f-41bd-9393-8ce94a608296</guid><dc:creator>RK</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;I could do so - I hadn&amp;#39;t done so because the assembler code uses various undocumented things I have learned about the softdevice over the last couple of years from inspecting it and or actually single stepping odd bits of it . eg it has some code to deal with sd_app_evt_wait() which only works because I figured out what it does, in the current softdevice at least.&lt;/p&gt;
&lt;p&gt;Since the assembler is peppered with comments about all that I was a bit hesitant to share it and wasn&amp;#39;t really sure Nordic would like my guesses about the softdevice internals to be posted.&lt;/p&gt;
&lt;img src="https://devzone.nordicsemi.com/aggbug?PostID=931&amp;AppID=4&amp;AppType=Weblog&amp;ContentType=0" width="1" height="1"&gt;</description></item><item><title>RE: Instrumenting with Segger SystemView</title><link>https://devzone.nordicsemi.com/nordic/nordic-blog/b/blog/posts/instrumenting-with-segger-systemview</link><pubDate>Mon, 29 Aug 2016 12:22:43 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:4ede12c4-e96f-41bd-9393-8ce94a608296</guid><dc:creator>Susheel Nuguru</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;Hi RK,
Is it possible to share the assembler code? just curious to see how you hooked it up to the vector table.&lt;/p&gt;
&lt;img src="https://devzone.nordicsemi.com/aggbug?PostID=931&amp;AppID=4&amp;AppType=Weblog&amp;ContentType=0" width="1" height="1"&gt;</description></item><item><title>RE: Instrumenting with Segger SystemView</title><link>https://devzone.nordicsemi.com/nordic/nordic-blog/b/blog/posts/instrumenting-with-segger-systemview</link><pubDate>Mon, 29 Aug 2016 08:11:39 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:4ede12c4-e96f-41bd-9393-8ce94a608296</guid><dc:creator>RK</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;Happy you found it useful, it was quite a while ago I did this but it was easier than I initially expected. There&amp;#39;s some vile assembler code in there to hook the vector table without the softdevice noticing, most of the rest of it was quite straightforward.&lt;/p&gt;
&lt;img src="https://devzone.nordicsemi.com/aggbug?PostID=931&amp;AppID=4&amp;AppType=Weblog&amp;ContentType=0" width="1" height="1"&gt;</description></item><item><title>RE: Instrumenting with Segger SystemView</title><link>https://devzone.nordicsemi.com/nordic/nordic-blog/b/blog/posts/instrumenting-with-segger-systemview</link><pubDate>Mon, 29 Aug 2016 08:03:52 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:4ede12c4-e96f-41bd-9393-8ce94a608296</guid><dc:creator>Christopher</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;Great work, thanks for your post @rols !&lt;/p&gt;
&lt;p&gt;Nordic, it would be great if you could officially support the Segger SystemView and for instance provide a modified version of the SoftDevice with instrumentation code ;)&lt;/p&gt;
&lt;img src="https://devzone.nordicsemi.com/aggbug?PostID=931&amp;AppID=4&amp;AppType=Weblog&amp;ContentType=0" width="1" height="1"&gt;</description></item><item><title>RE: Instrumenting with Segger SystemView</title><link>https://devzone.nordicsemi.com/nordic/nordic-blog/b/blog/posts/instrumenting-with-segger-systemview</link><pubDate>Mon, 29 Aug 2016 07:47:25 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:4ede12c4-e96f-41bd-9393-8ce94a608296</guid><dc:creator>Susheel Nuguru</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;OK, seems that you have added this, also looks like you have experimented quite much. Amazing article.&lt;/p&gt;
&lt;img src="https://devzone.nordicsemi.com/aggbug?PostID=931&amp;AppID=4&amp;AppType=Weblog&amp;ContentType=0" width="1" height="1"&gt;</description></item><item><title>RE: Instrumenting with Segger SystemView</title><link>https://devzone.nordicsemi.com/nordic/nordic-blog/b/blog/posts/instrumenting-with-segger-systemview</link><pubDate>Mon, 29 Aug 2016 07:28:50 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:4ede12c4-e96f-41bd-9393-8ce94a608296</guid><dc:creator>Susheel Nuguru</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;nice work RK
I did not know that segger have API like this&lt;/p&gt;
&lt;p&gt;sysview_irq_log( RADIO_IRQn, true );&lt;/p&gt;
&lt;p&gt;Was this added in the latest version or did i just missed to see it?&lt;/p&gt;
&lt;img src="https://devzone.nordicsemi.com/aggbug?PostID=931&amp;AppID=4&amp;AppType=Weblog&amp;ContentType=0" width="1" height="1"&gt;</description></item><item><title>RE: Instrumenting with Segger SystemView</title><link>https://devzone.nordicsemi.com/nordic/nordic-blog/b/blog/posts/instrumenting-with-segger-systemview</link><pubDate>Wed, 22 Jun 2016 01:04:29 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:4ede12c4-e96f-41bd-9393-8ce94a608296</guid><dc:creator>wslkh</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;Really love the tool by looking into its features. Hope Nordic could give some official examples ASAP in the SDK, or github. Could not wait to use it.&lt;/p&gt;
&lt;img src="https://devzone.nordicsemi.com/aggbug?PostID=931&amp;AppID=4&amp;AppType=Weblog&amp;ContentType=0" width="1" height="1"&gt;</description></item><item><title>RE: Instrumenting with Segger SystemView</title><link>https://devzone.nordicsemi.com/nordic/nordic-blog/b/blog/posts/instrumenting-with-segger-systemview</link><pubDate>Sat, 11 Jun 2016 05:43:46 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:4ede12c4-e96f-41bd-9393-8ce94a608296</guid><dc:creator>WestCoastDaz</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;RK,&lt;/p&gt;
&lt;p&gt;Thanks for the inspiration!  I have added this to my project and it is working great.  I was considering investing in FreeRTOS+Trace but this is free and has almost exactly the same functionality minus the many views that come with FreeRTOS+Trace.&lt;/p&gt;
&lt;p&gt;Cheers,
Darren&lt;/p&gt;
&lt;img src="https://devzone.nordicsemi.com/aggbug?PostID=931&amp;AppID=4&amp;AppType=Weblog&amp;ContentType=0" width="1" height="1"&gt;</description></item><item><title>RE: Instrumenting with Segger SystemView</title><link>https://devzone.nordicsemi.com/nordic/nordic-blog/b/blog/posts/instrumenting-with-segger-systemview</link><pubDate>Fri, 10 Jun 2016 05:29:32 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:4ede12c4-e96f-41bd-9393-8ce94a608296</guid><dc:creator>RK</dc:creator><slash:comments>2</slash:comments><description>&lt;p&gt;No if you&amp;#39;re instrumenting app-level code no need for any assembler, just compile the SYSVIEW and RTT sources, include the header and call the SEGGER_SYSVIEW_Record ... () functions. The event id goes in your mapping txt file so you can map to an API call. You can get fancy and call task start and other stuff but if you just want a list of called functions, that&amp;#39;s enough. You have a choice whether to start with their NoOS example which is a OS-style instrumentation or use the &amp;#39;module&amp;#39; instrumentation one. They&amp;#39;re both in the manual, I&amp;#39;d use the noOS one myself, gives you more flexibility.&lt;/p&gt;
&lt;p&gt;The assembler is only there to intercept all the IRQs and SVC calls as it has to do a load of stack and LR manipulation to interpose itself before and after the softdevice handlers whilst appearing not to be there at all. So API level, no need for that.&lt;/p&gt;
&lt;img src="https://devzone.nordicsemi.com/aggbug?PostID=931&amp;AppID=4&amp;AppType=Weblog&amp;ContentType=0" width="1" height="1"&gt;</description></item><item><title>RE: Instrumenting with Segger SystemView</title><link>https://devzone.nordicsemi.com/nordic/nordic-blog/b/blog/posts/instrumenting-with-segger-systemview</link><pubDate>Fri, 10 Jun 2016 05:20:15 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:4ede12c4-e96f-41bd-9393-8ce94a608296</guid><dc:creator>WestCoastDaz</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;RK,&lt;/p&gt;
&lt;p&gt;This is really impressive.  I was actually looking at FreeRTOS+Trace to do some better debugging but I like this more since it doesn&amp;#39;t require a license.  Do you still need the assembly shim if you are planning on instrumenting application level code?&lt;/p&gt;
&lt;p&gt;Thanks,
Darren&lt;/p&gt;
&lt;img src="https://devzone.nordicsemi.com/aggbug?PostID=931&amp;AppID=4&amp;AppType=Weblog&amp;ContentType=0" width="1" height="1"&gt;</description></item><item><title>RE: Instrumenting with Segger SystemView</title><link>https://devzone.nordicsemi.com/nordic/nordic-blog/b/blog/posts/instrumenting-with-segger-systemview</link><pubDate>Thu, 09 Jun 2016 12:29:02 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:4ede12c4-e96f-41bd-9393-8ce94a608296</guid><dc:creator>Adrian Eggenberger</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;Impressive work!&lt;/p&gt;
&lt;img src="https://devzone.nordicsemi.com/aggbug?PostID=931&amp;AppID=4&amp;AppType=Weblog&amp;ContentType=0" width="1" height="1"&gt;</description></item></channel></rss>