<?xml version="1.0" encoding="UTF-8" ?>
<?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/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>How does the SoftDevice transfer control to the app at startup?</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/22681/how-does-the-softdevice-transfer-control-to-the-app-at-startup</link><description>Hello, 
 I started with example apps and have got one working with the supplied makefiles, gcc, and Eclipse. I&amp;#39;m able to debug my code without trouble, and have succeeded in creating multiple BLE characteristics. 
 So I wanted to create an Eclipse </description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Mon, 12 Jun 2017 17:36:08 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/22681/how-does-the-softdevice-transfer-control-to-the-app-at-startup" /><item><title>RE: How does the SoftDevice transfer control to the app at startup?</title><link>https://devzone.nordicsemi.com/thread/89160?ContentTypeID=1</link><pubDate>Mon, 12 Jun 2017 17:36:08 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:77a289e0-f6eb-44c6-b374-b92a4d1c0aec</guid><dc:creator>Jandyman</dc:creator><description>&lt;p&gt;Excellent. Thanks so much. The code now makes sense and I see that the destination is the Reset_Handler of the app. Now if could just get the Eclipse debugger to display little endian in memory window!&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How does the SoftDevice transfer control to the app at startup?</title><link>https://devzone.nordicsemi.com/thread/89161?ContentTypeID=1</link><pubDate>Mon, 12 Jun 2017 01:47:39 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:5c0bdf29-7395-419c-ae8c-cba2d7a5ee01</guid><dc:creator>RK</dc:creator><description>&lt;p&gt;the known address is the start of the flash section for that softdevice, so probably 0x1b000 in your case, depends on the exact version of the exact softdevice you&amp;#39;re using and it&amp;#39;s in the release notes. The reset handler isn&amp;#39;t the first 4 bytes of the vector table, that&amp;#39;s the stack address (which in your case is 0x20008000, little endian remember). The reset handler address is the NEXT 4 bytes.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How does the SoftDevice transfer control to the app at startup?</title><link>https://devzone.nordicsemi.com/thread/89162?ContentTypeID=1</link><pubDate>Mon, 12 Jun 2017 01:42:36 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:434322a6-9a97-4128-aebc-b2a1318a8934</guid><dc:creator>Jandyman</dc:creator><description>&lt;p&gt;How do I figure out what that &amp;quot;known address&amp;quot; is (for SD130)? From the map file of the app, I would guess the address is 0x1b000, which is the beginning of the FLASH section. The contents of location 0x1b000 is 0x800020. However, there is no executable code at 0x800020, and this doesn&amp;#39;t correspond to any symbols in the .text section of the app makefile. So I have to conclude that the &amp;quot;known address&amp;quot; is not 0x1b000. This is all on the version of the code that works properly. Unless I can figure out how this works on the code which works properly, it is going to be hard to figure out why the non-working code is different. Is this documented anywhere?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How does the SoftDevice transfer control to the app at startup?</title><link>https://devzone.nordicsemi.com/thread/89159?ContentTypeID=1</link><pubDate>Sat, 10 Jun 2017 04:07:47 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:761d9c42-7260-49be-82f9-bae69d4a425e</guid><dc:creator>RK</dc:creator><description>&lt;p&gt;When the soft device finishes init it looks at the application vector table which is at a known address (depending on the actual softdevice) and jumps to the reset handler. That simple.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>