<?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>BLE Bootloader FDU Example Verification Error</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/111084/ble-bootloader-fdu-example-verification-error</link><description>Hi, 
 I am looking into adding BLE OTA firmware update functionality and started by exploring the example provided in Nordic SDK (SDK v16.0.0) while following the documentation provided here. 
 I ensure that the BLE Secure DFU Bootloader (from examples</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Fri, 24 May 2024 08:53:25 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/111084/ble-bootloader-fdu-example-verification-error" /><item><title>RE: BLE Bootloader FDU Example Verification Error</title><link>https://devzone.nordicsemi.com/thread/485751?ContentTypeID=1</link><pubDate>Fri, 24 May 2024 08:53:25 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:f72efd0c-59cf-4e95-b6dc-a7cbdad54b06</guid><dc:creator>Einar Thorsrud</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;I see. Good you got it working with the mobile for now. And good that the example seems to fullfill your needs. It is a quite generic bootloder, so that is what I expected as well. Most will typically use the example bootloader with few or no changes.&lt;/p&gt;
&lt;p&gt;If you want to use nrfutil or nRF Dekstop to perform DFU via a DK, it can be worth tryign to disable the mass storage device feature of the DK, as that often improves reliability. You can do that by opening J-Link Commander, and typing the&amp;nbsp;&lt;code&gt;MSDDisable&lt;/code&gt; command.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: BLE Bootloader FDU Example Verification Error</title><link>https://devzone.nordicsemi.com/thread/485656?ContentTypeID=1</link><pubDate>Thu, 23 May 2024 13:43:01 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:9251ab48-af16-425f-9b31-26bf4af398ac</guid><dc:creator>AndrewJKnowles</dc:creator><description>&lt;p&gt;Hi&lt;/p&gt;
&lt;p&gt;the nRF connect desktop app generated an error when trying to set up the second device&lt;/p&gt;
&lt;p&gt;&lt;img style="max-height:240px;max-width:320px;" src="https://devzone.nordicsemi.com/resized-image/__size/640x480/__key/communityserver-discussions-components-files/4/pastedimage1716471632145v1.png" alt=" " /&gt;&lt;/p&gt;
&lt;p&gt;However, i downloaded the nRF DFU mobile app and was successfully able to preform an AOT DFU. I am not sure why my bootloader app isn&amp;#39;t functioning properly. However judging by the simplicity of the bootloaders implementation, i cant see why the&amp;nbsp;&lt;span&gt;&amp;quot;secure_bootloader_ble_s140_pca10056&amp;quot; example wouldn&amp;#39;t full fill our needs.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Thank you.&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: BLE Bootloader FDU Example Verification Error</title><link>https://devzone.nordicsemi.com/thread/485624?ContentTypeID=1</link><pubDate>Thu, 23 May 2024 11:51:35 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:3b2476a7-f730-4448-bc9f-a941bfa4f7f4</guid><dc:creator>Einar Thorsrud</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;nrfutil has a probelm with connecting to the board running the connectivity firmware for some reason. To reduce the number of unknown, can you use &lt;a href="https://infocenter.nordicsemi.com/index.jsp?topic=%2Fug_nrfconnect_ble%2FUG%2FnRF_Connect_BLE%2FnRF_Connect_intro.html"&gt;nRF Connect for Dekstop Bluetooth&lt;/a&gt; intsead for now to test DFU? (nrfutil support for the old nRF5 SDK is archived and not maintained).&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: BLE Bootloader FDU Example Verification Error</title><link>https://devzone.nordicsemi.com/thread/485616?ContentTypeID=1</link><pubDate>Thu, 23 May 2024 11:28:41 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:5612ae5e-e1d3-4ba2-b599-2951a12aef1f</guid><dc:creator>AndrewJKnowles</dc:creator><description>&lt;p&gt;Ah thank you for pointing that out, so the process should be:&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;1. Generate bootloader settings from bootloader.hex using 
    nrfutil settings generate --family NRF52840 --application Application.hex --application-version 0 --bootloader-version 0 --bl-settings-version 2 --softdevice softdevice.hex --sd-boot-validation VALIDATE_GENERATED_CRC --app-boot-validation VALIDATE_GENERATED_CRC App_Settings.hex
2. Merge bootloader.hex, App_settings.hex, Application.hex, Softdevice.hex
3. program merged hex file to device and reset&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;With regards to running the debug example. I flashed the example &amp;quot;secure_bootloader_ble_s140_pca10056&amp;quot; (SDK 16.0.0) to the development board. The device appears within my mobile ble scanner as &amp;quot;DfuTarg&amp;quot; and is connectable with a primary 0xFE59 service. However, following the processes in nrfutil_v6.1.0&amp;nbsp;(sections 4 and 5.1) to update the device using a secondary dev board nrfutil provide an error.&lt;/p&gt;
&lt;p&gt;&lt;img style="max-height:240px;max-width:320px;" src="https://devzone.nordicsemi.com/resized-image/__size/640x480/__key/communityserver-discussions-components-files/4/pastedimage1716463653617v1.png" alt=" " /&gt;&lt;a href="https://devzone.nordicsemi.com/cfs-file/__key/communityserver-discussions-components-files/4/nrfutil_5F00_v6.1.0.pdf"&gt;devzone.nordicsemi.com/.../nrfutil_5F00_v6.1.0.pdf&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="https://devzone.nordicsemi.com/cfs-file/__key/communityserver-discussions-components-files/4/0434.dfu_5F00_update.zip"&gt;devzone.nordicsemi.com/.../0434.dfu_5F00_update.zip&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: BLE Bootloader FDU Example Verification Error</title><link>https://devzone.nordicsemi.com/thread/485605?ContentTypeID=1</link><pubDate>Thu, 23 May 2024 11:03:41 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:38f9251a-f301-4110-b98e-d31354c81888</guid><dc:creator>Einar Thorsrud</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;The approach you describe is mostly correct (though you also need to merge with the SoftDevice if that is used). However, there is one important error. You point to the bootloader hex file when you generate the setting page, but you should provide the &lt;em&gt;application&lt;/em&gt; hex file.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: BLE Bootloader FDU Example Verification Error</title><link>https://devzone.nordicsemi.com/thread/485594?ContentTypeID=1</link><pubDate>Thu, 23 May 2024 10:25:08 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:0f846cad-9b7d-4481-a56d-c84241b7521c</guid><dc:creator>AndrewJKnowles</dc:creator><description>&lt;p&gt;Hi,&amp;nbsp;&lt;/p&gt;
&lt;p&gt;I will reply with more detail once i have completed more testing. In the meantime, could I ask for some advice about adding the bootloader too an existing app? I believe that the process (Using nRF52840 softdevice v7.0.1) is as follows:&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;1. Generate bootloader settings from bootloader.hex using 
    nrfutil settings generate --family NRF52840 --application Bootloader.hex --application-version 0 --bootloader-version 0 --bl-settings-version 2 --softdevice softdevice.hex --sd-boot-validation VALIDATE_GENERATED_CRC --app-boot-validation VALIDATE_GENERATED_CRC Bootloader_Settings.hex
2. Merge bootloader.hex, bootloader_settings.hex, Application.hex
3. program merged hex file to device and reset&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;However this process doesnt seem to load the application upon reset? See attached combined hex and memory usage:&lt;/p&gt;
&lt;p&gt;&lt;a href="https://devzone.nordicsemi.com/cfs-file/__key/communityserver-discussions-components-files/4/New_5F00_App.hex"&gt;devzone.nordicsemi.com/.../New_5F00_App.hex&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;img style="max-height:240px;max-width:320px;" alt=" " src="https://devzone.nordicsemi.com/resized-image/__size/640x480/__key/communityserver-discussions-components-files/4/pastedimage1716460481639v1.png" /&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: BLE Bootloader FDU Example Verification Error</title><link>https://devzone.nordicsemi.com/thread/485562?ContentTypeID=1</link><pubDate>Thu, 23 May 2024 08:36:22 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:e07e94c7-1725-4eb4-a3af-987c431872ec</guid><dc:creator>Einar Thorsrud</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;If a hardfault is caused by the call to&amp;nbsp;crc32_compute(), that is likely because p_data is invalid (or somwere after p_data wihin the length specified by data_len), causing an invalid memory access. That should not happen, though. Which changes have you made to the example bootloader?&lt;/p&gt;
&lt;p&gt;If you don&amp;#39;t make progress, can you test with the example debug&amp;nbsp; bootloader (suffixed _debug) that has RTT logging, and share the RTT log here along with a detailed description of the firmware you are using, how you programmed and how you are testing?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: BLE Bootloader FDU Example Verification Error</title><link>https://devzone.nordicsemi.com/thread/485477?ContentTypeID=1</link><pubDate>Wed, 22 May 2024 15:24:50 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:7ec182f3-7082-4a89-adfe-4e9efbe5e607</guid><dc:creator>AndrewJKnowles</dc:creator><description>&lt;p&gt;Additionally i have found that nrf_dfu_validation_boot_validate calls a hardfault from line 971&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;uint32_t crc = crc32_compute(p_data, data_len, NULL);&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;&lt;img style="max-height:240px;max-width:320px;" src="https://devzone.nordicsemi.com/resized-image/__size/640x480/__key/communityserver-discussions-components-files/4/pastedimage1716391296602v1.png" alt=" " /&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;despite having a valid CRC&lt;/p&gt;
&lt;p&gt;&lt;img style="max-height:240px;max-width:320px;" src="https://devzone.nordicsemi.com/resized-image/__size/640x480/__key/communityserver-discussions-components-files/4/pastedimage1716391485869v2.png" alt=" " /&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: BLE Bootloader FDU Example Verification Error</title><link>https://devzone.nordicsemi.com/thread/485472?ContentTypeID=1</link><pubDate>Wed, 22 May 2024 15:09:08 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:ab2d1721-94f3-4a7b-ba29-0e8a1b318192</guid><dc:creator>AndrewJKnowles</dc:creator><description>&lt;p&gt;Hi,&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Apologies for the delayed response, Ive been out of office. This has been resolved due to a hardware issue. Whe have current generated a bootloader with settings and an active softdevice. However, the boot loader will not execute the app (after power up). The app in this case is the simple peripheral blinky example.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;img style="max-height:240px;max-width:320px;" src="https://devzone.nordicsemi.com/resized-image/__size/640x480/__key/communityserver-discussions-components-files/4/pastedimage1716390303232v1.png" alt=" " /&gt;&lt;/p&gt;
&lt;p&gt;Using NRF Connect programmer i can see that the structure of the device is correct however on debugging the bootloader in keil, the boot loader returns &amp;quot;ACTIVATION_NONE&amp;quot; in&amp;nbsp;nrf_bootloader_fw_activate (nrf_bootloader_fw_activation.c) after calling&amp;nbsp;p_bank-&amp;gt;bank_code&lt;/p&gt;
&lt;p&gt;would you have any suggestions?&lt;/p&gt;
&lt;p&gt;Thanks&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: BLE Bootloader FDU Example Verification Error</title><link>https://devzone.nordicsemi.com/thread/482935?ContentTypeID=1</link><pubDate>Mon, 13 May 2024 07:11:08 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:91f445f4-bedc-4982-ac3f-18f122cd3ecd</guid><dc:creator>Einar Thorsrud</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;Yes, that indicate a fatal error. Have you checked which error occured? One way to find out is to make a debug build (define DEBUG for the project) and enable logging, and observe the log output. Then you should see the file name and line number and error code. Alternatively, check with a debugger (then you should also disable optimization).&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: BLE Bootloader FDU Example Verification Error</title><link>https://devzone.nordicsemi.com/thread/482852?ContentTypeID=1</link><pubDate>Fri, 10 May 2024 15:39:13 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:84d6e6d5-1a13-438d-a57d-175c2abccaeb</guid><dc:creator>AndrewJKnowles</dc:creator><description>&lt;p&gt;Hi Einar,&lt;/p&gt;
&lt;p&gt;Ive successfully programmed the development board using:&lt;/p&gt;
&lt;p&gt;&lt;img style="max-height:240px;max-width:320px;" src="https://devzone.nordicsemi.com/resized-image/__size/640x480/__key/communityserver-discussions-components-files/4/pastedimage1715355124888v1.png" alt=" " /&gt;&lt;/p&gt;
&lt;p&gt;However, when i power cycle the board. All LEDs are solidly illuminated which according to this table:&lt;/p&gt;
&lt;p&gt;&lt;img style="max-height:240px;max-width:320px;" src="https://devzone.nordicsemi.com/resized-image/__size/640x480/__key/communityserver-discussions-components-files/4/pastedimage1715355211439v2.png" alt=" " /&gt;&lt;/p&gt;
&lt;p&gt;indicates that either&amp;nbsp;&lt;span&gt;BSP_INDICATE_FATAL_ERROR or&amp;nbsp;BSP_INDICATE_USER_STATE_3 or&amp;nbsp;BSP_INDICATE_USER_STATE_ON. When using the mobile app nRF Toolbox, the device name &amp;quot;Nordic_Buttonless&amp;#39;&amp;quot; cannot be seen so i think it may be a fatal error. I have tried this on two different BL654 dev boards, both respond with the same led behaviour.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Running the command again with --log provides the following log file.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&lt;a href="https://devzone.nordicsemi.com/cfs-file/__key/communityserver-discussions-components-files/4/7585.log.log"&gt;devzone.nordicsemi.com/.../7585.log.log&lt;/a&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: BLE Bootloader FDU Example Verification Error</title><link>https://devzone.nordicsemi.com/thread/482831?ContentTypeID=1</link><pubDate>Fri, 10 May 2024 13:59:20 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:d33d1d45-142a-45ce-8ae2-1aaeb8e00e1e</guid><dc:creator>Einar Thorsrud</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;Have you made sure that the flash is erased before you try to program it? If it is not, that could explain the mismatch. Try adding &amp;quot;--recover&amp;quot; to the nrfjprog command you use, or do an &amp;quot;nrfjprog --recover&amp;quot; separately before this step.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>