<?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>Peripheral HR Coded Execution failure</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/106045/peripheral-hr-coded-execution-failure</link><description>I&amp;#39;ve just loaded 2.5.0 onto my system - a Windows 11 laptop running VSCode 1.84.2). 
 I&amp;#39;m trying to implement DFU. 
 In recreating the environment described in https://developer.nordicsemi.com/nRF_Connect_SDK/doc/2.5.0/nrf/device_guides/working_with_nrf</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Mon, 27 Nov 2023 17:14:46 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/106045/peripheral-hr-coded-execution-failure" /><item><title>RE: Peripheral HR Coded Execution failure</title><link>https://devzone.nordicsemi.com/thread/457669?ContentTypeID=1</link><pubDate>Mon, 27 Nov 2023 17:14:46 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:557c54cf-9f8a-4a8d-8bab-10dd03bc98bc</guid><dc:creator>KentOverton</dc:creator><description>&lt;p&gt;That did the trick - I used nRFConnect&amp;nbsp; on my phone.&lt;/p&gt;
&lt;p&gt;I made the same changes in my application and they also seemed to work.&lt;/p&gt;
&lt;p&gt;Thank yo for your help.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Peripheral HR Coded Execution failure</title><link>https://devzone.nordicsemi.com/thread/457614?ContentTypeID=1</link><pubDate>Mon, 27 Nov 2023 15:03:47 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:1103d9f1-6264-4434-86ab-ab48924a1ec6</guid><dc:creator>Vidar Berg</dc:creator><description>&lt;p&gt;It seems like your&amp;nbsp;phone&amp;nbsp;is attempting to perform Device Firmware Update (DFU) using the secure DFU protocol from the nRF5 SDK. For DFU over BLE, the MCU manager protocol in the nRF Connect SDK should be used. Have you selected the MCU Manager app in the nRF Toolbox? If not, please do so. If that doesn&amp;#39;t resolve the issue, attempt the update using the nRF Connect or nRF Device Manager app.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Peripheral HR Coded Execution failure</title><link>https://devzone.nordicsemi.com/thread/457611?ContentTypeID=1</link><pubDate>Mon, 27 Nov 2023 14:58:21 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:756a280a-7630-4383-a495-da5a26e340fb</guid><dc:creator>KentOverton</dc:creator><description>&lt;p&gt;So - I added&lt;/p&gt;
&lt;div&gt;
&lt;div&gt;&lt;span&gt;CONFIG_BOOTLOADER_MCUBOOT&lt;/span&gt;&lt;span&gt;=y&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;CONFIG_NCS_SAMPLE_MCUMGR_BT_OTA_DFU&lt;/span&gt;&lt;span&gt;=y&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;to the HRM sample - Zephyr Heartrate Sensor&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;I&amp;#39;ve built in in VSCode for a PCA10040 (nrf52dk_nrf52832)&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;I&amp;#39;ve flashed the PCA10040 using the VSCode flash.&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;I&amp;#39;ve loaded the dfu_application zip file to my android phone.&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;/div&gt;
&lt;div&gt;When I run NRF Toolbox and select Firmware Update I can&lt;/div&gt;
&lt;div&gt;1. Select the Zip file&lt;/div&gt;
&lt;div&gt;2. Select the device (ZEPHYR HEARTRATE SENSOR)&lt;/div&gt;
&lt;div&gt;&lt;/div&gt;
&lt;div&gt;But when I select &amp;quot;START&amp;quot; it doesn&amp;#39;t do anything - the red X next to &amp;#39;Enabling Bootloader&amp;#39; never changes&lt;/div&gt;
&lt;div&gt;&lt;/div&gt;
&lt;div&gt;&lt;/div&gt;
&lt;div&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;i&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Peripheral HR Coded Execution failure</title><link>https://devzone.nordicsemi.com/thread/457587?ContentTypeID=1</link><pubDate>Mon, 27 Nov 2023 13:53:17 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:743e3b6d-e3a5-4662-9f23-b84784761a90</guid><dc:creator>Vidar Berg</dc:creator><description>[quote userid="66554" url="~/f/nordic-q-a/106045/peripheral-hr-coded-execution-failure/457582"]The &amp;#39;merged.hex&amp;#39;&amp;nbsp; is two bootloaders and the application - correct?[/quote]
&lt;p&gt;If you are enabling MCUBoot (&lt;a href="https://developer.nordicsemi.com/nRF_Connect_SDK/doc/latest/kconfig/index.html#CONFIG_BOOTLOADER_MCUBOOT"&gt;CONFIG_BOOTLOADER_MCUBOOT&lt;/a&gt;=y) and the &lt;a href="https://developer.nordicsemi.com/nRF_Connect_SDK/doc/latest/nrf/samples/bootloader/README.html"&gt;nRF Secure Immutable Bootloader&lt;/a&gt;&amp;nbsp;(CONFIG_SECURE_BOOT=y), then yes. However, most 52832 applications will only include MCUBoot as the only bootloader due to memory constrains.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;The build system in the nRF Connect SDK is far more advanced, allowing for the automation of the bootloader, application build, firmware signing, and other steps in a single build process.&amp;nbsp;Whereas with&amp;nbsp;the old SDK, you had to build the application and bootloader separately, and then manually sign the application and create firmware distribution packets using nrfutil.&amp;nbsp;&lt;/p&gt;
[quote userid="66554" url="~/f/nordic-q-a/106045/peripheral-hr-coded-execution-failure/457582"]When I wanted a firmware update my application notified the boot loader to load the DFU application - which handled the Bluetooth transport, validation and installation of the update and then rebooted my (updated) application.[/quote]
&lt;p&gt;The bootloader (MCUBoot) is still responsible for booting the application. They key difference now is that the FW updates are received by the application and not by the bootloader when you perform DFU over BLE. The bootloader will validate and activate by the update received by the application.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;The DFU service (SMP) to receive the FW updates is added automatically to the app when you build with CONFIG_NCS_SAMPLE_MCUMGR_BT_OTA_DFU=y&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Peripheral HR Coded Execution failure</title><link>https://devzone.nordicsemi.com/thread/457582?ContentTypeID=1</link><pubDate>Mon, 27 Nov 2023 13:40:40 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:6fb45aea-e950-4cdb-8f06-ab69e66f0643</guid><dc:creator>KentOverton</dc:creator><description>&lt;p&gt;I sort-of understand this.&lt;/p&gt;
&lt;p&gt;The &amp;#39;merged.hex&amp;#39;&amp;nbsp; is two bootloaders and the application - correct?&lt;/p&gt;
&lt;p&gt;But I&amp;#39;m afraid I still don&amp;#39;t understand the mechanics (or for that matter the real world implementation) of the new construct..&lt;/p&gt;
&lt;p&gt;I did an NRF51 implementation six years ago where there was a bootloader, the stack, my application and a DFU application.&lt;/p&gt;
&lt;p&gt;On a normal boot the bootloader loaded my application.&lt;/p&gt;
&lt;p&gt;When I wanted a firmware update my application notified the boot loader to load the DFU application - which handled the Bluetooth transport, validation and installation of the update and then rebooted my (updated) application.&lt;/p&gt;
&lt;p&gt;It seems to me that there has to be some module that actually handles these same mechanics - but I don&amp;#39;t see any reference to it in the documentation.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Peripheral HR Coded Execution failure</title><link>https://devzone.nordicsemi.com/thread/457535?ContentTypeID=1</link><pubDate>Mon, 27 Nov 2023 11:41:27 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:a84b3e71-c1af-44f2-99a0-c9cfc10fb670</guid><dc:creator>Vidar Berg</dc:creator><description>&lt;p&gt;Hello,&lt;/p&gt;
&lt;p&gt;West flash or the flash button in the vs code extension will automatically&amp;nbsp;load the &amp;#39;merged.hex&amp;#39; file which contains the FW images included in your build (i.e. bootloader and application). For a detailed&amp;nbsp;overview of the other files generated by the build, please refer to this section of the SDK documentation:&amp;nbsp;&lt;a href="https://developer.nordicsemi.com/nRF_Connect_SDK/doc/2.5.0/nrf/config_and_build/multi_image.html#what-image-files-are"&gt;https://developer.nordicsemi.com/nRF_Connect_SDK/doc/2.5.0/nrf/config_and_build/multi_image.html#what-image-files-are&lt;/a&gt;&amp;nbsp;and this:&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/pastedimage1701085227606v1.png" alt=" " /&gt;&lt;/p&gt;
&lt;p&gt;The app_update.bin is the DFU file which you can upload with the nRF Connect app or nRF Device manager app on Android or iOS.&lt;/p&gt;
&lt;p&gt;Best regards,&lt;/p&gt;
&lt;p&gt;Vidar&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Peripheral HR Coded Execution failure</title><link>https://devzone.nordicsemi.com/thread/457369?ContentTypeID=1</link><pubDate>Fri, 24 Nov 2023 15:09:01 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:12cf2427-4013-47c4-beb3-af9d489ae4ad</guid><dc:creator>KentOverton</dc:creator><description>&lt;p&gt;Thank&amp;nbsp;&amp;nbsp;you. I loaded the. Zephyr HRM example and it works for me.&lt;/p&gt;
&lt;p&gt;Can you comment on my DFU question&amp;#39;s - or should I submit a new ticket?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Peripheral HR Coded Execution failure</title><link>https://devzone.nordicsemi.com/thread/457351?ContentTypeID=1</link><pubDate>Fri, 24 Nov 2023 14:09:28 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:11a5d7c5-ef41-4708-afb5-2c600dc47e4c</guid><dc:creator>PaKa</dc:creator><description>&lt;p&gt;That sample is using coded PHY. This is not available on the nRF52832 so explains why that won&amp;#39;t run the code.&lt;/p&gt;
&lt;p&gt;For cell phones, not many phones support Coded PHY so you must check your phone. You can check this from the nRF Connect app, it&amp;#39;s under &amp;quot;Device Information&amp;quot;. If your phone doesn&amp;#39;t support Coded Phy (the long range mode) then I suggest you try with a normal HR sample instead.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>