<?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>Application is not loading post DFU over serial</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/60713/application-is-not-loading-post-dfu-over-serial</link><description>Hello, 
 I am able to get a successful confirmation that my application has been updated using the nordic secure bootloader over serial code example. However, my application doesn&amp;#39;t load. Here are the steps I followed: 
 1) Created an app package using</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Tue, 09 Nov 2021 07:31:39 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/60713/application-is-not-loading-post-dfu-over-serial" /><item><title>RE: Application is not loading post DFU over serial</title><link>https://devzone.nordicsemi.com/thread/338056?ContentTypeID=1</link><pubDate>Tue, 09 Nov 2021 07:31:39 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:5c99e797-3e13-4931-802c-06b7d78851b3</guid><dc:creator>Einar Thorsrud</dc:creator><description>&lt;p&gt;Good point. I must admit I never noticed that the example documentation does not clearly state that you need to flash the MBR. I will make a ticket for it.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Application is not loading post DFU over serial</title><link>https://devzone.nordicsemi.com/thread/338002?ContentTypeID=1</link><pubDate>Mon, 08 Nov 2021 18:34:44 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:a72274e1-a341-4ad8-91e3-f343186eda39</guid><dc:creator>Dom O</dc:creator><description>&lt;p&gt;WOW - this!!!&lt;br /&gt;&lt;br /&gt;I&amp;#39;ve just spent ***quite a bit of time*** independently discovering exactly the same thing.&lt;br /&gt;&lt;br /&gt;Once you know it&amp;#39;s about mbr_nrf52_2.4.1_mbr.hex - then you can search for the answer - but by then you already know!&lt;br /&gt;&lt;br /&gt;PLEASE, PLEASE update the guidance in the DFU SDK examples to include this information.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Application is not loading post DFU over serial</title><link>https://devzone.nordicsemi.com/thread/248603?ContentTypeID=1</link><pubDate>Thu, 07 May 2020 02:34:26 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:77ecd700-051a-401c-a026-61ac9cbfe0ba</guid><dc:creator>moose</dc:creator><description>&lt;p&gt;So I finally was able to solve the problem. In short the documentation for the serial DFU bootlader with no softdevice is really&amp;nbsp;missing few key steps. I would highly suggest they get updated.&lt;/p&gt;
&lt;p&gt;Basically beside the application hex and the booloader hex you also need the mbr hex. This code that actually reside at memory address 0x0. It is already included in the softdevice but if you are not using a softdevice then you need to do few additional steps:&lt;/p&gt;
&lt;p&gt;1) Add mbr_nrf52_2.4.1_mbr.hex. In segger you could do so under project options, debug, loader, additional load files. The relative path is&amp;nbsp;../../../../../../components/softdevice/mbr/hex/mbr_nrf52_2.4.1_mbr.hex&lt;/p&gt;
&lt;p&gt;2) Add&amp;nbsp;MBR_PRESENT to the preprocessor defines.&amp;nbsp;&lt;span&gt;In segger you could do so under project options, code, preprocessor, preprocessor definitions.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;3) Include mbr and cmsis headers if they are not already included. In segger you could do so under project options, code, preprocessor, user include directories. The relatives file are&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;../../../../../../components/softdevice/mbr/headers&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;../../../../../../components/toolchain/cmsis/include&lt;/p&gt;
&lt;p&gt;4) Change the flash start address to 0x1000 and&amp;nbsp;update the&amp;nbsp;size (substract 0x1000).&amp;nbsp;&lt;span&gt;I&lt;/span&gt;&lt;span&gt;n segger you could do so under project options, code,&amp;nbsp;linker, section placement macros.&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;5) Change the RAM start address to 0x20000010 and&amp;nbsp;update the&amp;nbsp;size (substract 0x10).&amp;nbsp;In segger you could do so under project options, code,&amp;nbsp;linker, section placement macros.&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;This worked for me. You could do the same changes plenty other ways but this is how I did it. Good luck!&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Application is not loading post DFU over serial</title><link>https://devzone.nordicsemi.com/thread/248372?ContentTypeID=1</link><pubDate>Wed, 06 May 2020 09:06:17 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:3adb3a3e-df14-4219-b27f-6d32d9cb1060</guid><dc:creator>Einar Thorsrud</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;This is my current understanding of the situation:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;According to the bootloader log, the application is started and everything looks OK.&lt;/li&gt;
&lt;li&gt;The applications normally toggle a GPIO at the beginning of the main, which works without a bootloader. When using a bootloader, the GPIO is &lt;em&gt;not&lt;/em&gt; toggled indicating that the application is not started or at least not running at this point.&lt;/li&gt;
&lt;li&gt;Anything happening later in your application is irrelevant (at this point) since the GPIO toggling happens first. (So the FreeRTOS scheduler is not started yet, and thus this can be disregarded for).&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;I find this a bit strange and would like to try to debug this on my side. Is it possible to run your code on a DK? If so, can you upload your complete project (both application and bootloader) together with instructions on how to perform the test so that I can do it on my side? You can upload it in a private case if&amp;nbsp;you don&amp;#39;t want it to be public. In so, please refer to this case so that the new case is assigned to me.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Application is not loading post DFU over serial</title><link>https://devzone.nordicsemi.com/thread/248284?ContentTypeID=1</link><pubDate>Tue, 05 May 2020 16:03:13 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:2b75be07-faee-41b3-beca-771f4cc9a603</guid><dc:creator>moose</dc:creator><description>&lt;p&gt;Hello Einar,&lt;/p&gt;
&lt;p&gt;So I did the test you asked me to do. I added the following code right after my main in my application&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;int main(void)
{
    if(!nrfx_gpiote_is_init())
      APP_ERROR_CHECK(nrfx_gpiote_init());
   
    nrfx_gpiote_out_config_t out_config = NRFX_GPIOTE_CONFIG_OUT_SIMPLE(false);
    APP_ERROR_CHECK(nrfx_gpiote_out_init(LED1_PIN , &amp;amp;out_config));

    for(uint16_t i=0; i&amp;lt;1000; i++)
      nrfx_gpiote_out_set(LED1_PIN);
    for(uint16_t i=0; i&amp;lt;1000; i++)
      nrfx_gpiote_out_clear(LED1_PIN);
    for(uint16_t i=0; i&amp;lt;1000; i++)
      nrfx_gpiote_out_set(LED1_PIN);
    for(uint16_t i=0; i&amp;lt;1000; i++)
      nrfx_gpiote_out_clear(LED1_PIN);
    for(uint16_t i=0; i&amp;lt;1000; i++)
      nrfx_gpiote_out_set(LED1_PIN);
    for(uint16_t i=0; i&amp;lt;1000; i++)
      nrfx_gpiote_out_clear(LED1_PIN);
    for(uint16_t i=0; i&amp;lt;1000; i++)
      nrfx_gpiote_out_set(LED1_PIN);
    for(uint16_t i=0; i&amp;lt;1000; i++)
      nrfx_gpiote_out_clear(LED1_PIN);&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;After programming my board and resetting it, I can capture the expected LED pulses on my scope and I can repeat it every time I reset the board.&lt;/p&gt;
&lt;p&gt;I used nrfutil and this new app hex file to generate a new zip package, segger studio to erase and downloaded the debug boatloader and nrfutil to upload the app zip package. Here are the nrfutil commands I used. I skipped the setting.hex since I am just downloading a fresh bootloader.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;nrfutil pkg generate --hw-version 52 --sd-req 0x00 --application-version 1 --application apppulse.hex --key-file private.pem app52_1pulse.zip
nrfutil dfu serial -pkg app52_1pulse.zip -p COM14 -fc 0&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;I was able to get a successful upload but my app is still not loading and I did not detect any LED pulses on my scope. Resetting the board does not help. How would you recommend to proceed? Please keep in mind that my app use freeRTOS. Not sure if that is a factor. Below is the log file for your reference. I did a reset at the end.&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;&amp;lt;info&amp;gt; nrf_dfu_serial_uart: Allocated buffer 20000AF4
&amp;lt;debug&amp;gt; nrf_dfu_req_handler: Handle NRF_DFU_OP_OBJECT_WRITE (data)
&amp;lt;debug&amp;gt; nrf_dfu_flash: nrf_fstorage_write(addr=0x0000D480, src=0x20000B7C, len=64 bytes), queue usage: 1
&amp;lt;info&amp;gt; nrf_dfu_serial_uart: Allocated buffer 20000AF4
&amp;lt;debug&amp;gt; nrf_dfu_flash: Flash write success: addr=0x0000D480, pending 0
&amp;lt;debug&amp;gt; nrf_dfu_req_handler: Request handling complete. Result: 0x1
&amp;lt;debug&amp;gt; nrf_dfu_req_handler: Handle NRF_DFU_OP_CRC_GET (data)
&amp;lt;debug&amp;gt; nrf_dfu_req_handler: Offset:50368, CRC:0x932409F1
&amp;lt;debug&amp;gt; nrf_dfu_req_handler: Request handling complete. Result: 0x1
&amp;lt;debug&amp;gt; nrf_dfu_serial: Sending Response: [0x3, 0x1]
&amp;lt;info&amp;gt; nrf_dfu_serial_uart: Allocated buffer 20000AF4
&amp;lt;debug&amp;gt; nrf_dfu_req_handler: Handle NRF_DFU_OP_OBJECT_EXECUTE (data)
&amp;lt;debug&amp;gt; nrf_dfu_req_handler: Whole firmware image received. Postvalidating.
&amp;lt;debug&amp;gt; nrf_dfu_validation: Hash verification. start address: 0x1000, size: 0xC4C0
&amp;lt;debug&amp;gt; nrf_dfu_validation: Invalidating old application in bank 0.
&amp;lt;debug&amp;gt; nrf_dfu_serial: Sending Response: [0x4, 0x1]
&amp;lt;debug&amp;gt; nrf_dfu_settings: Writing settings...
&amp;lt;debug&amp;gt; nrf_dfu_settings: Erasing old settings at: 0x0007F000
&amp;lt;debug&amp;gt; nrf_dfu_flash: nrf_fstorage_erase(addr=0x0x0007F000, len=1 pages), queue usage: 1
&amp;lt;debug&amp;gt; nrf_dfu_flash: Flash erase success: addr=0x0007F000, pending 0
&amp;lt;debug&amp;gt; nrf_dfu_flash: nrf_fstorage_write(addr=0x0007F000, src=0x20000CE0, len=896 bytes), queue usage: 1
&amp;lt;debug&amp;gt; nrf_dfu_flash: Flash write success: addr=0x0007F000, pending 0
&amp;lt;info&amp;gt; nrf_dfu_settings: Backing up settings page to address 0x7E000.
&amp;lt;debug&amp;gt; nrf_dfu_settings: Writing settings...
&amp;lt;debug&amp;gt; nrf_dfu_settings: Erasing old settings at: 0x0007E000
&amp;lt;debug&amp;gt; nrf_dfu_flash: nrf_fstorage_erase(addr=0x0x0007E000, len=1 pages), queue usage: 1
&amp;lt;debug&amp;gt; nrf_dfu_flash: Flash erase success: addr=0x0007E000, pending 0
&amp;lt;debug&amp;gt; nrf_dfu_flash: nrf_fstorage_write(addr=0x0007E000, src=0x20001060, len=896 bytes), queue usage: 1
&amp;lt;debug&amp;gt; nrf_dfu_flash: Flash write success: addr=0x0007E000, pending 0
&amp;lt;debug&amp;gt; nrf_dfu_req_handler: All flash operations have completed. DFU completed.
&amp;lt;debug&amp;gt; app: Shutting down transports (found: 1)
&amp;lt;debug&amp;gt; app: Resetting bootloader.
&amp;lt;info&amp;gt; app: Inside main
&amp;lt;debug&amp;gt; app: In nrf_bootloader_init
&amp;lt;debug&amp;gt; nrf_dfu_settings: Calling nrf_dfu_settings_init()...
&amp;lt;debug&amp;gt; nrf_dfu_flash: Initializing nrf_fstorage_nvmc backend.
&amp;lt;debug&amp;gt; nrf_dfu_settings: Using settings page.
&amp;lt;debug&amp;gt; nrf_dfu_settings: Copying forbidden parts from backup page.
&amp;lt;debug&amp;gt; nrf_dfu_settings: Destination settings are identical to source, write not needed. Skipping.
&amp;lt;info&amp;gt; nrf_dfu_settings: Backing up settings page to address 0x7E000.
&amp;lt;debug&amp;gt; nrf_dfu_settings: Destination settings are identical to source, write not needed. Skipping.
&amp;lt;debug&amp;gt; app: Enter nrf_bootloader_fw_activate
&amp;lt;debug&amp;gt; app: Valid App
&amp;lt;debug&amp;gt; app: Enter nrf_dfu_app_continue
&amp;lt;debug&amp;gt; app: No copy needed
&amp;lt;debug&amp;gt; app: Setting app as valid
&amp;lt;debug&amp;gt; nrf_dfu_settings: Writing settings...
&amp;lt;debug&amp;gt; nrf_dfu_settings: Erasing old settings at: 0x0007F000
&amp;lt;debug&amp;gt; nrf_dfu_flash: nrf_fstorage_erase(addr=0x0x0007F000, len=1 pages), queue usage: 0
&amp;lt;debug&amp;gt; nrf_dfu_flash: Flash erase success: addr=0x0007F000, pending 0
&amp;lt;debug&amp;gt; nrf_dfu_flash: nrf_fstorage_write(addr=0x0007F000, src=0x20000CE0, len=896 bytes), queue usage: 1
&amp;lt;debug&amp;gt; nrf_dfu_flash: Flash write success: addr=0x0007F000, pending 0
&amp;lt;info&amp;gt; nrf_dfu_settings: Backing up settings page to address 0x7E000.
&amp;lt;debug&amp;gt; nrf_dfu_settings: Writing settings...
&amp;lt;debug&amp;gt; nrf_dfu_settings: Erasing old settings at: 0x0007E000
&amp;lt;debug&amp;gt; nrf_dfu_flash: nrf_fstorage_erase(addr=0x0x0007E000, len=1 pages), queue usage: 1
&amp;lt;debug&amp;gt; nrf_dfu_flash: Flash erase success: addr=0x0007E000, pending 0
&amp;lt;debug&amp;gt; nrf_dfu_flash: nrf_fstorage_write(addr=0x0007E000, src=0x20001060, len=896 bytes), queue usage: 1
&amp;lt;debug&amp;gt; nrf_dfu_flash: Flash write success: addr=0x0007E000, pending 0
&amp;lt;debug&amp;gt; app: Resetting bootloader.
&amp;lt;info&amp;gt; nrf_dfu_settings: Backing up settings page to address 0x7&amp;lt;info&amp;gt; app: Inside main
&amp;lt;debug&amp;gt; app: In nrf_bootloader_init
&amp;lt;debug&amp;gt; nrf_dfu_settings: Calling nrf_dfu_settings_init()...
&amp;lt;debug&amp;gt; nrf_dfu_flash: Initializing nrf_fstorage_nvmc backend.
&amp;lt;debug&amp;gt; nrf_dfu_settings: Using settings page.
&amp;lt;debug&amp;gt; nrf_dfu_settings: Copying forbidden parts from backup page.
&amp;lt;debug&amp;gt; nrf_dfu_settings: Destination settings are identical to source, write not needed. Skipping.
&amp;lt;info&amp;gt; nrf_dfu_settings: Backing up settings page to address 0x7E000.
&amp;lt;debug&amp;gt; nrf_dfu_settings: Destination settings are identical to source, write not needed. Skipping.
&amp;lt;debug&amp;gt; app: Enter nrf_bootloader_fw_activate
&amp;lt;info&amp;gt; app: No firmware to activate.
&amp;lt;debug&amp;gt; app: App is valid
&amp;lt;warning&amp;gt; nrf_dfu_settings: No additional data erased
&amp;lt;info&amp;gt; nrf_dfu_settings: Backing up settings page to address 0x7E000.
&amp;lt;debug&amp;gt; nrf_dfu_settings: Destination settings are identical to source, write not needed. Skipping.
&amp;lt;debug&amp;gt; app: Running nrf_bootloader_app_start with address: 0x00001000
&amp;lt;debug&amp;gt; app: Disabling interrupts. NVIC-&amp;gt;ICER[0]: 0x0
&amp;lt;info&amp;gt; app: Inside main
&amp;lt;debug&amp;gt; app: In nrf_bootloader_init
&amp;lt;debug&amp;gt; nrf_dfu_settings: Calling nrf_dfu_settings_init()...
&amp;lt;debug&amp;gt; nrf_dfu_flash: Initializing nrf_fstorage_nvmc backend.
&amp;lt;debug&amp;gt; nrf_dfu_settings: Using settings page.
&amp;lt;debug&amp;gt; nrf_dfu_settings: Copying forbidden parts from backup page.
&amp;lt;debug&amp;gt; nrf_dfu_settings: Destination settings are identical to source, write not needed. Skipping.
&amp;lt;info&amp;gt; nrf_dfu_settings: Backing up settings page to address 0x7E000.
E000.
001000
&amp;lt;info&amp;gt; app: Inside main
&amp;lt;debug&amp;gt; app: In nrf_bootloader_init
&amp;lt;debug&amp;gt; nrf_dfu_settings: Calling nrf_dfu_settings_init()...
&amp;lt;debug&amp;gt; nrf_dfu_flash: Initializing nrf_fstorage_nvmc backend.
&amp;lt;debug&amp;gt; nrf_dfu_settings: Using settings page.
&amp;lt;debug&amp;gt; nrf_dfu_settings: Copying forbidden parts from backup page.
&amp;lt;debug&amp;gt; nrf_dfu_settings: Destination settings are identical to source, write not needed. Skipping.
&amp;lt;info&amp;gt; nrf_dfu_settings: Backing up settings page to address 0x7E000.
&amp;lt;debug&amp;gt; nrf_dfu_settings: Destination settings are identical to E000.
&amp;lt;debug&amp;gt; nrf_dfu_settings: Destination settings are identical to source, write not needed. Skipping.
&amp;lt;debug&amp;gt; app: Running nrf_bootloader_app_start with address: 0x00001000
&amp;lt;debug&amp;gt; app: Disabling interrupts. NVIC-&amp;gt;ICER[0]: 0x0
&lt;/pre&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Application is not loading post DFU over serial</title><link>https://devzone.nordicsemi.com/thread/248265?ContentTypeID=1</link><pubDate>Tue, 05 May 2020 15:09:04 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:073cdfb1-604c-46db-aa21-0b1af44b30da</guid><dc:creator>Einar Thorsrud</dc:creator><description>&lt;p&gt;Hi,&amp;nbsp;&lt;/p&gt;
[quote user="moose"]I just wanted to point out that according to the nRF connect read image, my application does NOT start at location 0x1000. It show it starting at location 0x0FF8 instead. Is that okay?[/quote]
&lt;p&gt;That is just an issue with nRF Connect Programmer. Since the last two words in the MBR page contain data (which was written either when you programmed the bootloader hex or the first reset after programming the bootloader depending on SDK version), the programmer app thinks the application starts there. But that is not the case. This is not an issue.&lt;/p&gt;
&lt;p&gt;I suspect there is something that causes an error in the application when the bootloader runs first, but it will be interesting to see what you find when trying to verify if the application runs or not.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Application is not loading post DFU over serial</title><link>https://devzone.nordicsemi.com/thread/248207?ContentTypeID=1</link><pubDate>Tue, 05 May 2020 13:44:42 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:ecbf5c5f-e1d7-43ed-b6fe-c7b95678d93e</guid><dc:creator>moose</dc:creator><description>&lt;p&gt;Hello Eina,&lt;/p&gt;
[quote userid="7377" url="~/f/nordic-q-a/60713/application-is-not-loading-post-dfu-over-serial/248107"]If using DFU but no SoftDevice, the application starts at 0x1000,[/quote]
&lt;p&gt;I just wanted to point out that according to the nRF connect read image, my application does NOT start at location 0x1000. It show it starting at location 0x0FF8 instead. Is that okay?&lt;/p&gt;
[quote userid="7377" url="~/f/nordic-q-a/60713/application-is-not-loading-post-dfu-over-serial/248107"]ould it be an issue in the application, that somehow is only triggered when you use a bootloader? How have you verified that the application does not load? [/quote]
&lt;p&gt;When I program my application directly on an erased device (no bootloader), it works fine. I just did that again and read the image and attached it here for reference. The section in the top is my emulated eeprom user parameters. I also added my application code flash placement file for your reference.&lt;/p&gt;
[quote userid="7377" url="~/f/nordic-q-a/60713/application-is-not-loading-post-dfu-over-serial/248107"]Can you&amp;nbsp;try to toggle a GPIO a few times as the very first thing you do in the application, and see if you can detect that from a logic analyzer?[/quote]
&lt;p&gt;I will do that next but I thought I send these info your way first in case it is useful.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://devzone.nordicsemi.com/resized-image/__size/320x240/__key/communityserver-discussions-components-files/4/pastedimage1588685912408v1.png" alt=" " /&gt;&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;&amp;lt;!DOCTYPE Linker_Placement_File&amp;gt;
&amp;lt;Root name=&amp;quot;Flash Section Placement&amp;quot;&amp;gt;
  &amp;lt;MemorySegment name=&amp;quot;FLASH&amp;quot; start=&amp;quot;$(FLASH_PH_START)&amp;quot; size=&amp;quot;$(FLASH_PH_SIZE)&amp;quot;&amp;gt;
    &amp;lt;ProgramSection load=&amp;quot;no&amp;quot; name=&amp;quot;.reserved_flash&amp;quot; start=&amp;quot;$(FLASH_PH_START)&amp;quot; size=&amp;quot;$(FLASH_START)-$(FLASH_PH_START)&amp;quot; /&amp;gt;
    &amp;lt;ProgramSection alignment=&amp;quot;0x100&amp;quot; load=&amp;quot;Yes&amp;quot; name=&amp;quot;.vectors&amp;quot; start=&amp;quot;$(FLASH_START)&amp;quot; /&amp;gt;
    &amp;lt;ProgramSection alignment=&amp;quot;4&amp;quot; load=&amp;quot;Yes&amp;quot; name=&amp;quot;.init&amp;quot; /&amp;gt;
    &amp;lt;ProgramSection alignment=&amp;quot;4&amp;quot; load=&amp;quot;Yes&amp;quot; name=&amp;quot;.init_rodata&amp;quot; /&amp;gt;
    &amp;lt;ProgramSection alignment=&amp;quot;4&amp;quot; load=&amp;quot;Yes&amp;quot; name=&amp;quot;.text&amp;quot; /&amp;gt;
    &amp;lt;ProgramSection alignment=&amp;quot;4&amp;quot; keep=&amp;quot;Yes&amp;quot; load=&amp;quot;Yes&amp;quot; name=&amp;quot;.log_const_data&amp;quot; inputsections=&amp;quot;*(SORT(.log_const_data*))&amp;quot; address_symbol=&amp;quot;__start_log_const_data&amp;quot; end_symbol=&amp;quot;__stop_log_const_data&amp;quot; /&amp;gt;
    &amp;lt;ProgramSection alignment=&amp;quot;4&amp;quot; keep=&amp;quot;Yes&amp;quot; load=&amp;quot;Yes&amp;quot; name=&amp;quot;.log_backends&amp;quot; inputsections=&amp;quot;*(SORT(.log_backends*))&amp;quot; address_symbol=&amp;quot;__start_log_backends&amp;quot; end_symbol=&amp;quot;__stop_log_backends&amp;quot; /&amp;gt;
    &amp;lt;ProgramSection alignment=&amp;quot;4&amp;quot; keep=&amp;quot;Yes&amp;quot; load=&amp;quot;Yes&amp;quot; name=&amp;quot;.nrf_balloc&amp;quot; inputsections=&amp;quot;*(.nrf_balloc*)&amp;quot; address_symbol=&amp;quot;__start_nrf_balloc&amp;quot; end_symbol=&amp;quot;__stop_nrf_balloc&amp;quot; /&amp;gt;
    &amp;lt;ProgramSection alignment=&amp;quot;4&amp;quot; keep=&amp;quot;Yes&amp;quot; load=&amp;quot;No&amp;quot; name=&amp;quot;.nrf_sections&amp;quot; address_symbol=&amp;quot;__start_nrf_sections&amp;quot; /&amp;gt;
    &amp;lt;ProgramSection alignment=&amp;quot;4&amp;quot; keep=&amp;quot;Yes&amp;quot; load=&amp;quot;Yes&amp;quot; name=&amp;quot;.fs_data&amp;quot;  inputsections=&amp;quot;*(.fs_data*)&amp;quot; runin=&amp;quot;.fs_data_run&amp;quot;/&amp;gt;
    &amp;lt;ProgramSection alignment=&amp;quot;4&amp;quot; keep=&amp;quot;Yes&amp;quot; load=&amp;quot;Yes&amp;quot; name=&amp;quot;.log_dynamic_data&amp;quot;  inputsections=&amp;quot;*(SORT(.log_dynamic_data*))&amp;quot; runin=&amp;quot;.log_dynamic_data_run&amp;quot;/&amp;gt;
    &amp;lt;ProgramSection alignment=&amp;quot;4&amp;quot; keep=&amp;quot;Yes&amp;quot; load=&amp;quot;Yes&amp;quot; name=&amp;quot;.log_filter_data&amp;quot;  inputsections=&amp;quot;*(SORT(.log_filter_data*))&amp;quot; runin=&amp;quot;.log_filter_data_run&amp;quot;/&amp;gt;
    &amp;lt;ProgramSection alignment=&amp;quot;4&amp;quot; load=&amp;quot;Yes&amp;quot; name=&amp;quot;.dtors&amp;quot; /&amp;gt;
    &amp;lt;ProgramSection alignment=&amp;quot;4&amp;quot; load=&amp;quot;Yes&amp;quot; name=&amp;quot;.ctors&amp;quot; /&amp;gt;
    &amp;lt;ProgramSection alignment=&amp;quot;4&amp;quot; load=&amp;quot;Yes&amp;quot; name=&amp;quot;.rodata&amp;quot; /&amp;gt;
    &amp;lt;ProgramSection alignment=&amp;quot;4&amp;quot; load=&amp;quot;Yes&amp;quot; name=&amp;quot;.ARM.exidx&amp;quot; address_symbol=&amp;quot;__exidx_start&amp;quot; end_symbol=&amp;quot;__exidx_end&amp;quot; /&amp;gt;
    &amp;lt;ProgramSection alignment=&amp;quot;4&amp;quot; load=&amp;quot;Yes&amp;quot; runin=&amp;quot;.fast_run&amp;quot; name=&amp;quot;.fast&amp;quot; /&amp;gt;
    &amp;lt;ProgramSection alignment=&amp;quot;4&amp;quot; load=&amp;quot;Yes&amp;quot; runin=&amp;quot;.data_run&amp;quot; name=&amp;quot;.data&amp;quot; /&amp;gt;
    &amp;lt;ProgramSection alignment=&amp;quot;4&amp;quot; load=&amp;quot;Yes&amp;quot; runin=&amp;quot;.tdata_run&amp;quot; name=&amp;quot;.tdata&amp;quot; /&amp;gt;
  &amp;lt;/MemorySegment&amp;gt;
  &amp;lt;MemorySegment name=&amp;quot;RAM&amp;quot; start=&amp;quot;$(RAM_PH_START)&amp;quot; size=&amp;quot;$(RAM_PH_SIZE)&amp;quot;&amp;gt;
    &amp;lt;ProgramSection load=&amp;quot;no&amp;quot; name=&amp;quot;.reserved_ram&amp;quot; start=&amp;quot;$(RAM_PH_START)&amp;quot; size=&amp;quot;$(RAM_START)-$(RAM_PH_START)&amp;quot; /&amp;gt;
    &amp;lt;ProgramSection alignment=&amp;quot;0x100&amp;quot; load=&amp;quot;No&amp;quot; name=&amp;quot;.vectors_ram&amp;quot; start=&amp;quot;$(RAM_START)&amp;quot; address_symbol=&amp;quot;__app_ram_start__&amp;quot;/&amp;gt;
    &amp;lt;ProgramSection alignment=&amp;quot;4&amp;quot; keep=&amp;quot;Yes&amp;quot; load=&amp;quot;No&amp;quot; name=&amp;quot;.nrf_sections_run&amp;quot; address_symbol=&amp;quot;__start_nrf_sections_run&amp;quot; /&amp;gt;
    &amp;lt;ProgramSection alignment=&amp;quot;4&amp;quot; keep=&amp;quot;Yes&amp;quot; load=&amp;quot;No&amp;quot; name=&amp;quot;.fs_data_run&amp;quot; address_symbol=&amp;quot;__start_fs_data&amp;quot; end_symbol=&amp;quot;__stop_fs_data&amp;quot; /&amp;gt;
    &amp;lt;ProgramSection alignment=&amp;quot;4&amp;quot; keep=&amp;quot;Yes&amp;quot; load=&amp;quot;No&amp;quot; name=&amp;quot;.log_dynamic_data_run&amp;quot; address_symbol=&amp;quot;__start_log_dynamic_data&amp;quot; end_symbol=&amp;quot;__stop_log_dynamic_data&amp;quot; /&amp;gt;
    &amp;lt;ProgramSection alignment=&amp;quot;4&amp;quot; keep=&amp;quot;Yes&amp;quot; load=&amp;quot;No&amp;quot; name=&amp;quot;.log_filter_data_run&amp;quot; address_symbol=&amp;quot;__start_log_filter_data&amp;quot; end_symbol=&amp;quot;__stop_log_filter_data&amp;quot; /&amp;gt;
    &amp;lt;ProgramSection alignment=&amp;quot;4&amp;quot; keep=&amp;quot;Yes&amp;quot; load=&amp;quot;No&amp;quot; name=&amp;quot;.nrf_sections_run_end&amp;quot; address_symbol=&amp;quot;__end_nrf_sections_run&amp;quot; /&amp;gt;
    &amp;lt;ProgramSection alignment=&amp;quot;4&amp;quot; keep=&amp;quot;Yes&amp;quot; load=&amp;quot;No&amp;quot; name=&amp;quot;.emulated_eeprom&amp;quot; address_symbol=&amp;quot;__emulated_eeprom_start&amp;quot; end_symbol=&amp;quot;__emulated_eeprom_end&amp;quot; size_symbol=&amp;quot;__emulated_eeprom_size&amp;quot;/&amp;gt;
    &amp;lt;ProgramSection alignment=&amp;quot;4&amp;quot; keep=&amp;quot;Yes&amp;quot; load=&amp;quot;No&amp;quot; name=&amp;quot;.emulated_eeprom_crc&amp;quot; address_symbol=&amp;quot;__emulated_eeprom_crc_start&amp;quot; end_symbol=&amp;quot;__emulated_eeprom_crc_end&amp;quot; size_symbol=&amp;quot;__emulated_eeprom_crc_size&amp;quot;/&amp;gt;
    &amp;lt;ProgramSection alignment=&amp;quot;4&amp;quot; load=&amp;quot;No&amp;quot; name=&amp;quot;.fast_run&amp;quot; /&amp;gt;
    &amp;lt;ProgramSection alignment=&amp;quot;4&amp;quot; load=&amp;quot;No&amp;quot; name=&amp;quot;.data_run&amp;quot; /&amp;gt;
    &amp;lt;ProgramSection alignment=&amp;quot;4&amp;quot; load=&amp;quot;No&amp;quot; name=&amp;quot;.tdata_run&amp;quot; /&amp;gt;
    &amp;lt;ProgramSection alignment=&amp;quot;4&amp;quot; load=&amp;quot;No&amp;quot; name=&amp;quot;.bss&amp;quot; /&amp;gt;
    &amp;lt;ProgramSection alignment=&amp;quot;4&amp;quot; load=&amp;quot;No&amp;quot; name=&amp;quot;.tbss&amp;quot; /&amp;gt;
    &amp;lt;ProgramSection alignment=&amp;quot;4&amp;quot; load=&amp;quot;No&amp;quot; name=&amp;quot;.non_init&amp;quot; /&amp;gt;
    &amp;lt;ProgramSection alignment=&amp;quot;4&amp;quot; size=&amp;quot;__HEAPSIZE__&amp;quot; load=&amp;quot;No&amp;quot; name=&amp;quot;.heap&amp;quot; /&amp;gt;
    &amp;lt;ProgramSection alignment=&amp;quot;8&amp;quot; size=&amp;quot;__STACKSIZE__&amp;quot; load=&amp;quot;No&amp;quot; place_from_segment_end=&amp;quot;Yes&amp;quot; name=&amp;quot;.stack&amp;quot;  address_symbol=&amp;quot;__StackLimit&amp;quot; end_symbol=&amp;quot;__StackTop&amp;quot;/&amp;gt;
    &amp;lt;ProgramSection alignment=&amp;quot;8&amp;quot; size=&amp;quot;__STACKSIZE_PROCESS__&amp;quot; load=&amp;quot;No&amp;quot; name=&amp;quot;.stack_process&amp;quot; /&amp;gt;
  &amp;lt;/MemorySegment&amp;gt;
&amp;lt;/Root&amp;gt;
&lt;/pre&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Application is not loading post DFU over serial</title><link>https://devzone.nordicsemi.com/thread/248107?ContentTypeID=1</link><pubDate>Tue, 05 May 2020 09:17:46 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:763bf083-bd14-4cdf-b099-c091b3246a42</guid><dc:creator>Einar Thorsrud</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
[quote user="moose"]I also attached the prompt window output and the nrf Connect read image. Hope this help.[/quote]
&lt;p&gt;Thank you, this is useful in narrowing down the issue, though I don&amp;#39;t understand the problem yet.&lt;/p&gt;
[quote user="moose"]I noticed that the logger saying the bootloader is jumping to address: 0x00001000 which doesn&amp;#39;t match my application start address as I read it from nRFConnect read image. Not sure if this the issue.[/quote]
&lt;p&gt;This is not a problem. The start address is always 0x1000, which is immediately after the MBR (which resides on page 0). This is correct and works the same both when using SoftDevice and not. If using DFU but no SoftDevice, the application starts at 0x1000, and that is started. If using a SoftDevice, the SoftDevice starts at 0x1000, and that will in turn forward interrupts to the application and start the application (which must start immediately after the SoftDevice, with the application start address being&amp;nbsp;identical to the size of the SoftDevice).&lt;/p&gt;
&lt;p&gt;Everything looks good in the bootloader log, and it should have started the application. Could it be an issue in the application, that somehow is only triggered when you use a bootloader? How have you verified that the application does not load? Can you&amp;nbsp;try to toggle a GPIO a few times as the very first thing you do in the application, and see if you can detect that from a logic analyzer? If you do, that would show clearly that the app is started, and then we should continue looking there.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Application is not loading post DFU over serial</title><link>https://devzone.nordicsemi.com/thread/248032?ContentTypeID=1</link><pubDate>Tue, 05 May 2020 00:40:10 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:f7bcc2fa-5442-4b37-a317-4dfba7a7b83c</guid><dc:creator>moose</dc:creator><description>&lt;p&gt;Hello Einar,&lt;/p&gt;
&lt;p&gt;I was able to get the RTT log after getting help from @jeff.scott and here is the log for your info&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt; 0&amp;gt; &amp;lt;info&amp;gt; nrf_dfu_serial_uart: Allocated buffer 20000AF4
 0&amp;gt; &amp;lt;debug&amp;gt; nrf_dfu_req_handler: Handle NRF_DFU_OP_OBJECT_WRITE (data)
 0&amp;gt; &amp;lt;debug&amp;gt; nrf_dfu_flash: nrf_fstorage_write(addr=0x0000D280, src=0x20000B7C, len=64 bytes), queue usage: 1
 0&amp;gt; &amp;lt;debug&amp;gt; nrf_dfu_flash: Flash write success: addr=0x0000D280, pending 0
 0&amp;gt; &amp;lt;debug&amp;gt; nrf_dfu_req_handler: Request handling complete. Result: 0x1
 0&amp;gt; &amp;lt;info&amp;gt; nrf_dfu_serial_uart: Allocated buffer 20000B78
 0&amp;gt; &amp;lt;debug&amp;gt; nrf_dfu_req_handler: Handle NRF_DFU_OP_OBJECT_WRITE (data)
 0&amp;gt; &amp;lt;debug&amp;gt; nrf_dfu_flash: nrf_fstorage_write(addr=0x0000D2C0, src=0x20000AF8, len=64 bytes), queue usage: 1
 0&amp;gt; &amp;lt;debug&amp;gt; nrf_dfu_flash: Flash write success: addr=0x0000D2C0, pending 0
 0&amp;gt; &amp;lt;debug&amp;gt; nrf_dfu_req_handler: Request handling complete. Result: 0x1
 0&amp;gt; &amp;lt;info&amp;gt; nrf_dfu_serial_uart: Allocated buffer 20000AF4
 0&amp;gt; &amp;lt;debug&amp;gt; nrf_dfu_req_handler: Handle NRF_DFU_OP_OBJECT_WRITE (data)
 0&amp;gt; &amp;lt;debug&amp;gt; nrf_dfu_flash: nrf_fstorage_write(addr=0x0000D300, src=0x20000B7C, len=64 bytes), queue usage: 1
 0&amp;gt; &amp;lt;debug&amp;gt; nrf_dfu_flash: Flash write success: addr=0x0000D300, pending 0
 0&amp;gt; &amp;lt;debug&amp;gt; nrf_dfu_req_handler: Request handling complete. Result: 0x1
 0&amp;gt; &amp;lt;info&amp;gt; nrf_dfu_serial_uart: Allocated buffer 20000B78
 0&amp;gt; &amp;lt;debug&amp;gt; nrf_dfu_req_handler: Handle NRF_DFU_OP_OBJECT_WRITE (data)
 0&amp;gt; &amp;lt;debug&amp;gt; nrf_dfu_flash: nrf_fstorage_write(addr=0x0000D340, src=0x20000AF8, len=64 bytes), queue usage: 1
 0&amp;gt; &amp;lt;info&amp;gt; nrf_dfu_serial_uart: Allocated buffer 20000BFC
 0&amp;gt; &amp;lt;info&amp;gt; nrf_dfu_serial_uart: Allocated buffer 20000BFC
 0&amp;gt; &amp;lt;debug&amp;gt; nrf_dfu_flash: Flash write success: addr=0x0000D340, pending 0
 0&amp;gt; &amp;lt;debug&amp;gt; nrf_dfu_req_handler: Request handling complete. Result: 0x1
 0&amp;gt; &amp;lt;debug&amp;gt; nrf_dfu_req_handler: Handle NRF_DFU_OP_OBJECT_WRITE (data)
 0&amp;gt; &amp;lt;debug&amp;gt; nrf_dfu_flash: nrf_fstorage_write(addr=0x0000D380, src=0x20000B7C, len=12 bytes), queue usage: 1
 0&amp;gt; &amp;lt;debug&amp;gt; nrf_dfu_flash: Flash write success: addr=0x0000D380, pending 0
 0&amp;gt; &amp;lt;debug&amp;gt; nrf_dfu_req_handler: Request handling complete. Result: 0x1
 0&amp;gt; &amp;lt;debug&amp;gt; nrf_dfu_req_handler: Handle NRF_DFU_OP_CRC_GET (data)
 0&amp;gt; &amp;lt;debug&amp;gt; nrf_dfu_req_handler: Offset:50060, CRC:0xB8C06AE1
 0&amp;gt; &amp;lt;debug&amp;gt; nrf_dfu_req_handler: Request handling complete. Result: 0x1
 0&amp;gt; &amp;lt;debug&amp;gt; nrf_dfu_serial: Sending Response: [0x3, 0x1]
 0&amp;gt; &amp;lt;info&amp;gt; nrf_dfu_serial_uart: Allocated buffer 20000BFC
 0&amp;gt; &amp;lt;debug&amp;gt; nrf_dfu_req_handler: Handle NRF_DFU_OP_OBJECT_EXECUTE (data)
 0&amp;gt; &amp;lt;debug&amp;gt; nrf_dfu_req_handler: Whole firmware image received. Postvalidating.
 0&amp;gt; &amp;lt;debug&amp;gt; nrf_dfu_validation: Hash verification. start address: 0x1000, size: 0xC38C
 0&amp;gt; &amp;lt;debug&amp;gt; nrf_dfu_validation: Invalidating old application in bank 0.
 0&amp;gt; &amp;lt;debug&amp;gt; nrf_dfu_serial: Sending Response: [0x4, 0x1]
 0&amp;gt; &amp;lt;debug&amp;gt; nrf_dfu_settings: Writing settings...
 0&amp;gt; &amp;lt;debug&amp;gt; nrf_dfu_settings: Erasing old settings at: 0x0007F000
 0&amp;gt; &amp;lt;debug&amp;gt; nrf_dfu_flash: nrf_fstorage_erase(addr=0x0x0007F000, len=1 pages), queue usage: 1
 0&amp;gt; &amp;lt;debug&amp;gt; nrf_dfu_flash: Flash erase success: addr=0x0007F000, pending 0
 0&amp;gt; &amp;lt;debug&amp;gt; nrf_dfu_flash: nrf_fstorage_write(addr=0x0007F000, src=0x20000CE0, len=896 bytes), queue usage: 1
 0&amp;gt; &amp;lt;debug&amp;gt; nrf_dfu_flash: Flash write success: addr=0x0007F000, pending 0
 0&amp;gt; &amp;lt;info&amp;gt; nrf_dfu_settings: Backing up settings page to address 0x7E000.
 0&amp;gt; &amp;lt;debug&amp;gt; nrf_dfu_settings: Writing settings...
 0&amp;gt; &amp;lt;debug&amp;gt; nrf_dfu_settings: Erasing old settings at: 0x0007E000
 0&amp;gt; &amp;lt;debug&amp;gt; nrf_dfu_flash: nrf_fstorage_erase(addr=0x0x0007E000, len=1 pages), queue usage: 1
 0&amp;gt; &amp;lt;debug&amp;gt; nrf_dfu_flash: Flash erase success: addr=0x0007E000, pending 0
 0&amp;gt; &amp;lt;debug&amp;gt; nrf_dfu_flash: nrf_fstorage_write(addr=0x0007E000, src=0x20001060, len=896 bytes), queue usage: 1
 0&amp;gt; &amp;lt;debug&amp;gt; nrf_dfu_flash: Flash write success: addr=0x0007E000, pending 0
 0&amp;gt; &amp;lt;debug&amp;gt; nrf_dfu_req_handler: All flash operations have completed. DFU completed.
 0&amp;gt; &amp;lt;debug&amp;gt; app: Shutting down transports (found: 1)
 0&amp;gt; &amp;lt;debug&amp;gt; app: Resetting bootloader.
 0&amp;gt; &amp;lt;info&amp;gt; app: Inside main
 0&amp;gt; &amp;lt;info&amp;gt; app: Inside main
 0&amp;gt; &amp;lt;debug&amp;gt; app: In nrf_bootloader_init
 0&amp;gt; &amp;lt;debug&amp;gt; nrf_dfu_settings: Calling nrf_dfu_settings_init()...
 0&amp;gt; &amp;lt;debug&amp;gt; nrf_dfu_flash: Initializing nrf_fstorage_nvmc backend.
 0&amp;gt; &amp;lt;debug&amp;gt; nrf_dfu_settings: Using settings page.
 0&amp;gt; &amp;lt;debug&amp;gt; nrf_dfu_settings: Copying forbidden parts from backup page.
 0&amp;gt; &amp;lt;debug&amp;gt; nrf_dfu_settings: Destination settings are identical to source, write not needed. Skipping.
 0&amp;gt; &amp;lt;info&amp;gt; nrf_dfu_settings: Backing up settings page to address 0x7E000.
 0&amp;gt; &amp;lt;debug&amp;gt; nrf_dfu_settings: Destination settings are identical to source, write not needed. Skipping.
 0&amp;gt; &amp;lt;debug&amp;gt; app: Enter nrf_bootloader_fw_activate
 0&amp;gt; &amp;lt;debug&amp;gt; app: Valid App
 0&amp;gt; &amp;lt;debug&amp;gt; app: Enter nrf_dfu_app_continue
 0&amp;gt; &amp;lt;debug&amp;gt; app: No copy needed
 0&amp;gt; &amp;lt;debug&amp;gt; app: Setting app as valid
 0&amp;gt; &amp;lt;debug&amp;gt; nrf_dfu_settings: Writing settings...
 0&amp;gt; &amp;lt;debug&amp;gt; nrf_dfu_settings: Erasing old settings at: 0x0007F000
 0&amp;gt; &amp;lt;debug&amp;gt; nrf_dfu_flash: nrf_fstorage_erase(addr=0x0x0007F000, len=1 pages), queue usage: 0
 0&amp;gt; &amp;lt;debug&amp;gt; nrf_dfu_flash: Flash erase success: addr=0x0007F000, pending 0
 0&amp;gt; &amp;lt;debug&amp;gt; nrf_dfu_flash: nrf_fstorage_write(addr=0x0007F000, src=0x20000CE0, len=896 bytes), queue usage: 1
 0&amp;gt; &amp;lt;debug&amp;gt; nrf_dfu_flash: Flash write success: addr=0x0007F000, pending 0
 0&amp;gt; &amp;lt;info&amp;gt; nrf_dfu_settings: Backing up settings page to address 0x7E000.
 0&amp;gt; &amp;lt;debug&amp;gt; nrf_dfu_settings: Writing settings...
 0&amp;gt; &amp;lt;debug&amp;gt; nrf_dfu_settings: Erasing old settings at: 0x0007E000
 0&amp;gt; &amp;lt;debug&amp;gt; nrf_dfu_flash: nrf_fstorage_erase(addr=0x0x0007E000, len=1 pages), queue usage: 1
 0&amp;gt; &amp;lt;debug&amp;gt; nrf_dfu_flash: Flash erase success: addr=0x0007E000, pending 0
 0&amp;gt; &amp;lt;debug&amp;gt; nrf_dfu_flash: nrf_fstorage_write(addr=0x0007E000, src=0x20001060, len=896 bytes), queue usage: 1
 0&amp;gt; &amp;lt;debug&amp;gt; nrf_dfu_flash: Flash write success: addr=0x0007E000, pending 0
 0&amp;gt; &amp;lt;debug&amp;gt; app: Resetting bootloader.
 0&amp;gt; &amp;lt;info&amp;gt; nrf_dfu_settings: Backing up settings page to address 0x7E000.
 0&amp;gt; &amp;lt;debug&amp;gt; nrf_dfu_settings: D&amp;lt;info&amp;gt; app: Inside main
 0&amp;gt; &amp;lt;debug&amp;gt; app: In nrf_bootloader_init
 0&amp;gt; &amp;lt;debug&amp;gt; nrf_dfu_settings: Calling nrf_dfu_settings_init()...
 0&amp;gt; &amp;lt;debug&amp;gt; nrf_dfu_flash: Initializing nrf_fstorage_nvmc backend.
 0&amp;gt; &amp;lt;debug&amp;gt; nrf_dfu_settings: Using settings page.
 0&amp;gt; &amp;lt;debug&amp;gt; nrf_dfu_settings: Copying forbidden parts from backup page.
 0&amp;gt; &amp;lt;debug&amp;gt; nrf_dfu_settings: Destination settings are identical to source, write not needed. Skipping.
 0&amp;gt; &amp;lt;info&amp;gt; nrf_dfu_settings: Backing up settings page to address 0x7E000.
 0&amp;gt; &amp;lt;debug&amp;gt; nrf_dfu_settings: Destination settings are identical to source, write not needed. Skipping.
 0&amp;gt; &amp;lt;debug&amp;gt; app: Enter nrf_bootloader_fw_activate
 0&amp;gt; &amp;lt;info&amp;gt; app: No firmware to activate.
 0&amp;gt; &amp;lt;debug&amp;gt; app: App is valid
 0&amp;gt; &amp;lt;warning&amp;gt; nrf_dfu_settings: No additional data erased
 0&amp;gt; &amp;lt;info&amp;gt; nrf_dfu_settings: Backing up settings page to address 0x7E000.
 0&amp;gt; &amp;lt;debug&amp;gt; nrf_dfu_settings: Destination settings are identical to source, write not needed. Skipping.
 0&amp;gt; &amp;lt;debug&amp;gt; app: Running nrf_bootloader_app_start with address: 0x00001000
 0&amp;gt; &amp;lt;debug&amp;gt; app: Disabling interrupts. NVIC-&amp;gt;ICER[0]: 0x0
&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;I also attached the prompt window output and the nrf Connect read image. Hope this help. I noticed that the logger saying the bootloader is jumping to address: 0x00001000 which doesn&amp;#39;t match my application start address as I read it from nRFConnect read image. Not sure if this the issue.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://devzone.nordicsemi.com/resized-image/__size/320x240/__key/communityserver-discussions-components-files/4/pastedimage1588649520338v1.png" alt=" " /&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://devzone.nordicsemi.com/resized-image/__size/320x240/__key/communityserver-discussions-components-files/4/pastedimage1588649793900v2.png" alt=" " /&gt;&lt;img src="https://devzone.nordicsemi.com/resized-image/__size/320x240/__key/communityserver-discussions-components-files/4/pastedimage1588649840907v3.png" alt=" " /&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Application is not loading post DFU over serial</title><link>https://devzone.nordicsemi.com/thread/247737?ContentTypeID=1</link><pubDate>Sun, 03 May 2020 12:58:48 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:8fc523d9-b882-458f-a4e8-665f01e21c54</guid><dc:creator>Einar Thorsrud</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
[quote user="moose"]Einar, can I enable the logger even though there is only one UART interface which is used for boot-loading?[/quote]
&lt;p&gt;Yes, but not logging over UART. Instead, you should use RTT logging. The example bootloader projects come in pairs, one with debug logging over RTT and one without. Since you have used &amp;lt;SDK&amp;gt;\examples\dfu\secure_bootloader\pca10040_uart, I would like you to try&amp;nbsp;&amp;lt;SDK&amp;gt;\examples\dfu\secure_bootloader\pca10040_uart_debug instead, and observe the logs using Segger RTT Viewer.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Application is not loading post DFU over serial</title><link>https://devzone.nordicsemi.com/thread/247723?ContentTypeID=1</link><pubDate>Sun, 03 May 2020 01:15:54 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:95814b04-8746-45d5-a98c-0d38b6afb0d3</guid><dc:creator>moose</dc:creator><description>&lt;p&gt;Einar, can I enable the logger even though there is only one UART interface which is used for boot-loading? I have never used the logger before so if you can please send me the steps you need to follow that would be greatly appreciated. I read the info referenced in&amp;nbsp;&lt;a href="https://infocenter.nordicsemi.com/index.jsp?topic=%2Fcom.nordic.infocenter.sdk5.v15.0.0%2Flib_nrf_log.html&amp;amp;cp=4_0_0_3_26"&gt;https://infocenter.nordicsemi.com/index.jsp?topic=%2Fcom.nordic.infocenter.sdk5.v15.0.0%2Flib_nrf_log.html&amp;amp;cp=4_0_0_3_26&lt;/a&gt;&amp;nbsp;and I tried to enable the logger but no luck. Also, do I have to switch to&amp;nbsp;&lt;span&gt;pca10040_uart_debug project or could I just stick with my project which is very similar to pca10040_uart? I see the logger as an option in the sdk_config.h file.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Btw, I am not sure if this is related but I am experiencing the same symptom&amp;nbsp;when I also try to download an example with a softdevice.&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Application is not loading post DFU over serial</title><link>https://devzone.nordicsemi.com/thread/246844?ContentTypeID=1</link><pubDate>Mon, 27 Apr 2020 12:50:47 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:edf8e37c-7180-406f-9fdd-4faa9b5e6ba2</guid><dc:creator>Einar Thorsrud</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;It is difficult to say what the problem is without knowing more. Can you test with the debug bootloader project and upload the log here? You can find the debug bootloader under &amp;lt;SDK&amp;gt;\examples\dfu\secure_bootloader\pca10040_uart_debug\. It would be interesting to see the log both during the DFU, and (even more importantly) afterward, when it should start the application. It should show what the bootloader does, and if there is an error.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>