<?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>Does NRgo studo program BOOTLOADERADDR?</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/5307/does-nrgo-studo-program-bootloaderaddr</link><description>I have a 256k NRF51822 with S110 installed. 
 I have a small custom bootloader that is located at 0x3f000. 
 I used nrfgo studio to install the S110 stack, then the bootloader. 
 When I use the debugger memory window I can see the bootloader code is</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Wed, 28 Jan 2015 12:02:20 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/5307/does-nrgo-studo-program-bootloaderaddr" /><item><title>RE: Does NRgo studo program BOOTLOADERADDR?</title><link>https://devzone.nordicsemi.com/thread/18564?ContentTypeID=1</link><pubDate>Wed, 28 Jan 2015 12:02:20 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:7fc6e6fc-116d-49ea-a55a-7d51c3ca30ef</guid><dc:creator>Hung Bui</dc:creator><description>&lt;p&gt;You are correct,&lt;/p&gt;
&lt;p&gt;When you compile with that line in the code, the compiler will add into the generated hex file at the address in &amp;quot;NRF_UICR_BOOT_START_ADDRESS&amp;quot; the value REMOTE_BOOTLOADER_ADDR.&lt;/p&gt;
&lt;p&gt;nRFGo Studio doesn&amp;#39;t know if the address is there or not when programming.&lt;/p&gt;
&lt;p&gt;But when it reads there is an address in the UICR, it will display that address as the start of the bootloader.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Does NRgo studo program BOOTLOADERADDR?</title><link>https://devzone.nordicsemi.com/thread/18563?ContentTypeID=1</link><pubDate>Wed, 28 Jan 2015 03:59:26 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:6bcb10cf-49f6-4736-a8c3-49d10bb2165a</guid><dc:creator>Charles Manning</dc:creator><description>&lt;p&gt;Ok, to answer my own question...&lt;/p&gt;
&lt;p&gt;You need to have something like the following in the code:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;uint32_t m_uicr_bootloader_start_address 
    __attribute__((at(NRF_UICR_BOOT_START_ADDRESS))) = REMOTE_BOOTLOADER_ADDR;
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;This creates a record that ends up in the hex file for programming the UICR BOOTLOADERADDR.&lt;/p&gt;
&lt;p&gt;It appears that when NRF studio sees this, it knows it is a bootloader.&lt;/p&gt;
&lt;p&gt;I think it would be a good idea if NRF Studio was to warn that there is no such record in the hex file.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>