<?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>Secure DFU Bootloader ROM / RAM configurations for nRF51822_xxAA</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/18507/secure-dfu-bootloader-rom-ram-configurations-for-nrf51822_xxaa</link><description>Hi, 
 I have a problem with Secure DFU Bootloader available from SDK 12.1 on nRF51822_xxAA SoC. I use example in SDK 12.1 and when i download it to nRF51822_xxAA it isn&amp;#39;t working properly. SoC isn&amp;#39;t advertising, and when i go to Debug in Keil uVision</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Mon, 18 May 2020 06:47:56 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/18507/secure-dfu-bootloader-rom-ram-configurations-for-nrf51822_xxaa" /><item><title>RE: Secure DFU Bootloader ROM / RAM configurations for nRF51822_xxAA</title><link>https://devzone.nordicsemi.com/thread/250350?ContentTypeID=1</link><pubDate>Mon, 18 May 2020 06:47:56 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:bf3292d5-f7b3-4243-8aa6-6bb1120448a0</guid><dc:creator>bjorn-spockeli</dc:creator><description>&lt;p&gt;Which SDK and SoftDevice version are you using? What RAM and ROM configuration are you using?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Secure DFU Bootloader ROM / RAM configurations for nRF51822_xxAA</title><link>https://devzone.nordicsemi.com/thread/250293?ContentTypeID=1</link><pubDate>Sat, 16 May 2020 11:08:33 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:feabc520-2853-4f03-9b14-84ab308ddb64</guid><dc:creator>mac</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;can you give me the final configuration of RAM,ROM for your custom board and the SDK (and sofdevice) version used?&lt;/p&gt;
&lt;p&gt;I&amp;#39;ve same problem with my board (I&amp;#39;m using a module&amp;nbsp;nRF51822_04AT xxAA ) but the upload procedure stops immediatly , DfuTargs service seems active but I think to have some problem with stack and heap.&lt;/p&gt;
&lt;p&gt;To build the bootloader I&amp;#39;ve reduced Heap to 0x500 and stack to 0x600.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Secure DFU Bootloader ROM / RAM configurations for nRF51822_xxAA</title><link>https://devzone.nordicsemi.com/thread/71420?ContentTypeID=1</link><pubDate>Thu, 06 Jul 2017 07:05:43 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:65232e35-c779-4cdb-aeaa-6d1ae765d9d5</guid><dc:creator>sosse</dc:creator><description>&lt;p&gt;Here is much simple way to implement secure bootloader without changing the RAM/ROM size.
&lt;a href="https://github.com/CHAKAK/bootloader_secure_custom"&gt;https://github.com/CHAKAK/bootloader_secure_custom&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Secure DFU Bootloader ROM / RAM configurations for nRF51822_xxAA</title><link>https://devzone.nordicsemi.com/thread/71419?ContentTypeID=1</link><pubDate>Tue, 04 Apr 2017 09:18:32 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:3103b992-4b60-4498-81f9-ad7d80a106d8</guid><dc:creator>bjorn-spockeli</dc:creator><description>&lt;p&gt;@rogerclark: Its to late to add this to the SKD v13 release as it is already out and we&amp;#39;re not going to do another SDK v12.x.x release. However, I will report this internally and hopefully its added in a future release, but keep in mind that the Secure Bootloader is not really designed for the nRF51x22 xxAA variants.  I will update my answer with the correct RAM settings. :)&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Secure DFU Bootloader ROM / RAM configurations for nRF51822_xxAA</title><link>https://devzone.nordicsemi.com/thread/71418?ContentTypeID=1</link><pubDate>Thu, 02 Mar 2017 02:28:36 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:13d283fd-27c5-4f54-8834-3af807ecda78</guid><dc:creator>Roger Clark</dc:creator><description>&lt;p&gt;Bjørn&lt;/p&gt;
&lt;p&gt;Would it be possible for you to fix this in either SDK13 or if you release another version of SDK12, by either setting the QFAC address to the same as you indicated above, and using LENGTH of 0x5A20, as I presume there are no negative side effects of just optimising the RAM start and length&lt;/p&gt;
&lt;p&gt;Otherwise people will need to do what I&amp;#39;ve had to do, which is to search for some time to find this comment.&lt;/p&gt;
&lt;p&gt;You could update to update the answer to include the QFAA values, as that would make it slighly easier to find.&lt;/p&gt;
&lt;p&gt;PS. I know I could edit your answer, but I don&amp;#39;t feel comfortable doing that, as I&amp;#39;m not an expert like you are ;-)&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Secure DFU Bootloader ROM / RAM configurations for nRF51822_xxAA</title><link>https://devzone.nordicsemi.com/thread/71417?ContentTypeID=1</link><pubDate>Wed, 04 Jan 2017 14:49:39 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:a7b11960-b563-42a2-a7c6-a0c065113fc8</guid><dc:creator>bjorn-spockeli</dc:creator><description>&lt;p&gt;@derpmo: I managed to compile the Secure bootloader for a nRF51 variant with 16kB RAM by lowering the RAM start address. The SoftDevice returns the application ram base address in the app_ram_base parameter given to sd_ble_enable. Thus, if you debug the Secure Bootloader and set a breakpoint after sd_ble_enable and add a watch to app_ram_base, you will see that the application RAM start address can be set to 0x200025E0 and the size can be set to 0x1A20, i.e.&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;RAM (rwx) :  ORIGIN = 0x200025E0, LENGTH = 0x1A20
&lt;/code&gt;&lt;/pre&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Secure DFU Bootloader ROM / RAM configurations for nRF51822_xxAA</title><link>https://devzone.nordicsemi.com/thread/71421?ContentTypeID=1</link><pubDate>Wed, 04 Jan 2017 12:41:14 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:09c100f0-bf61-412f-89be-b0b6cd351f5f</guid><dc:creator>Aply</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;Finally I solved the problem. It wasn&amp;#39;t a problem with the ROM/RAM settings or lack of external LFCLK on my custom board with nRF51822_xxAA SoC. I was analyzing code line by line and i detected that the problem was made by Scheduler. Scheduler Queue Size was to big.&lt;/p&gt;
&lt;p&gt;To solve this problem was enought to reduce the size of Scheduler Queue. In file nrf_dfu.c need to be changed line 28 from:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;#define SCHED_QUEUE_SIZE                20
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;to&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;#define SCHED_QUEUE_SIZE                10
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Due to this change secure bootloader work properly on my custom board, I was able to download new application with nRF Connect on Android.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Secure DFU Bootloader ROM / RAM configurations for nRF51822_xxAA</title><link>https://devzone.nordicsemi.com/thread/71416?ContentTypeID=1</link><pubDate>Wed, 04 Jan 2017 09:44:02 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:f82bb187-ffab-47b0-b82b-a14204e97210</guid><dc:creator>DerPMO</dc:creator><description>&lt;p&gt;Hi Bjørn,&lt;/p&gt;
&lt;p&gt;I&amp;#39;ve ran into the same problem, but am using armgcc to compile the bootloader.
On the nRF51 DK everything works fine, but I wasn&amp;#39;t able to get it to work (at first) on my BlueEva+S which is also based on the nRF51822 xxAA.&lt;/p&gt;
&lt;p&gt;I assumed that I could just copy the values you provided into my linker script, whis is included in the example in SDK 12.2.0.&lt;/p&gt;
&lt;p&gt;But RAM seems to be too small, it won&amp;#39;t link that way, the stack with size 0x800 doesn&amp;#39;t fit.
The absolute minimum value for RAM length is 0x14AC, which makes the origin 0x20002AD4 when also leaving the space for the NOINIT region of length 0x80 (origin at 0x20003F80).&lt;/p&gt;
&lt;p&gt;I haven&amp;#39;t checked SDK 12.1 or the arm compiler, so I don&amp;#39;t know why this extra space is needed, but thought I leave this here for future reference.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Secure DFU Bootloader ROM / RAM configurations for nRF51822_xxAA</title><link>https://devzone.nordicsemi.com/thread/71415?ContentTypeID=1</link><pubDate>Wed, 21 Dec 2016 11:54:07 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:d69ca99d-d7cf-4e32-9d0d-264402d56157</guid><dc:creator>bjorn-spockeli</dc:creator><description>&lt;p&gt;Hi Aply,&lt;/p&gt;
&lt;p&gt;I managed to compile the Secure bootloader for a nRF51 variant with 16kB RAM by lowering the RAM start address. The SoftDevice returns the application ram base address in the app_ram_base parameter given to sd_ble_enable. Thus, if you debug the Secure Bootloader and set a breakpoint after sd_ble_enable and add a watch to app_ram_base, you will see that the application RAM start address can be set to 0x200025E0 and the size can be set to 0x1A20, i.e. the correct ROM/RAM settings for the Secure Bootloader on a nRF51822 xxAA variant are:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;IROM1 Start: 0x3A000 Size:0x5000
IRAM1 Start: 0x200025E0 Size: 0x1A20
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Is there a specific reason to why you&amp;#39;re using the synthesized LFCLK instead of the internal RC oscillator(RCOSC)? Synthesizing the LFCLK from the HFCLK source will keep the 16MHz running at while the chip is in sleep mode(System On: Low Power), i.e. its not going to be low power anymore.&lt;/p&gt;
&lt;p&gt;I would recommend using the &lt;code&gt;NRF_CLOCK_LFCLKSRC_RC_250_PPM_4000MS_CALIBRATION&lt;/code&gt; as clock source if your device is a battery powered device.&lt;/p&gt;
&lt;p&gt;Best regards&lt;/p&gt;
&lt;p&gt;Bjørn&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>