<?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>OTA DFU bootloader</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/65861/ota-dfu-bootloader</link><description>I am having some success with custom hardware running an OTA DFU bootloader from the SDK17 by Hung Bui March 2017 within a nRF52832. I utilize the bootloader to program the ble_app_uart into the hardware and things work as expected. I do have trouble</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Mon, 21 Sep 2020 05:53:20 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/65861/ota-dfu-bootloader" /><item><title>RE: OTA DFU bootloader</title><link>https://devzone.nordicsemi.com/thread/270440?ContentTypeID=1</link><pubDate>Mon, 21 Sep 2020 05:53:20 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:9a5371e4-5b9c-4a25-b767-0f8939ae1836</guid><dc:creator>Amanda Hsieh</dc:creator><description>&lt;p&gt;Could you try again or other browsers? I can open them on my side.&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: OTA DFU bootloader</title><link>https://devzone.nordicsemi.com/thread/270360?ContentTypeID=1</link><pubDate>Fri, 18 Sep 2020 14:14:52 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:04028d12-6c2f-47bc-be78-92743b133306</guid><dc:creator>Cy</dc:creator><description>&lt;p&gt;that link is dead or something, at least today.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: OTA DFU bootloader</title><link>https://devzone.nordicsemi.com/thread/270225?ContentTypeID=1</link><pubDate>Fri, 18 Sep 2020 07:17:18 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:2f73cf44-b574-40f1-b0f5-e43b9744b873</guid><dc:creator>Amanda Hsieh</dc:creator><description>&lt;p&gt;Hi Cy,&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Because the size of each SoftDevice is different (See&amp;nbsp;&lt;a href="https://devzone.nordicsemi.com/nordic/short-range-guides/b/getting-started/posts/adjustment-of-ram-and-flash-memory"&gt;Adjustment of RAM and Flash memory&lt;/a&gt;), the&lt;span&gt;&amp;nbsp;flash and ram values are different in each SD.&lt;/span&gt;&amp;nbsp;However, it is still good feedback to consider that.&amp;nbsp;&lt;/p&gt;
[quote user="drollinger"]Is there a detailed and comprehensive explanation of the bootloader design?[/quote]
&lt;p&gt;Please see the&amp;nbsp;&lt;a title="Bootloader and DFU modules" href="https://infocenter.nordicsemi.com/topic/sdk_nrf5_v17.0.2/lib_bootloader_modules.html?cp=7_1_3_5"&gt;Bootloader and DFU modules&lt;/a&gt;&amp;nbsp;documentation.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;-Amanda H.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: OTA DFU bootloader</title><link>https://devzone.nordicsemi.com/thread/270148?ContentTypeID=1</link><pubDate>Thu, 17 Sep 2020 14:59:58 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:26018497-beec-4bff-92be-b8a287f6627c</guid><dc:creator>Cy</dc:creator><description>&lt;p&gt;So, from my point of view, worth about $0.02, it would seem if I can make a zip based on a working hex within the nrfutil and the option - - softdevice 0x00 than it should have made the flash and ram values correct.&amp;nbsp;&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: OTA DFU bootloader</title><link>https://devzone.nordicsemi.com/thread/270143?ContentTypeID=1</link><pubDate>Thu, 17 Sep 2020 14:42:36 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:82ea0fc7-b958-4e3c-8d51-75d9a0e38ced</guid><dc:creator>Cy</dc:creator><description>&lt;p&gt;Thank you, I develop with visual code and command line tools, I apologize for not including it in my original post. I use the makefile inside the armgcc folder of the projects. When following a recipe on how to do things, as in Hung Bui&amp;#39;s, there is no information on the design or development of the project itself and is quite abstract. It ok to be abstract when everything just works but when it does not, fine detail on the design and development is needed.&lt;/p&gt;
&lt;p&gt;Is there a detailed and comprehensive explanation of the bootloader design?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: OTA DFU bootloader</title><link>https://devzone.nordicsemi.com/thread/270007?ContentTypeID=1</link><pubDate>Thu, 17 Sep 2020 08:42:14 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:38e544b8-4133-4572-bf92-76de18c1f8b7</guid><dc:creator>Amanda Hsieh</dc:creator><description>&lt;p&gt;Hi Cy,&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Sorry for misunderstanding your situation.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;--sd-req should be the same version as the softdevice on the chip because the bootloader will check the version number. But it doesn&amp;#39;t care the app will use it late or not.&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
[quote user="drollinger"]I have a situation where the application useful to me does not require a soft device. Well, I guess it is prudent to dig into the bootloader program and the linker script to figure out where, what, and how.&amp;nbsp;[/quote]
&lt;p&gt;&amp;nbsp;Yeah, I agree with Jörg Fischer&amp;#39;s suggestion. You can&lt;span&gt;&amp;nbsp;have an application that doesn&amp;#39;t use the SoftDevice.&amp;nbsp;You only need to change the FLASH and RAM start address and size. You can test and modify&amp;nbsp;nRF5_SDK_17.0\examples\peripheral\blinky\pca10040\mbr with the&amp;nbsp;FLASH and RAM start address and size in&amp;nbsp;nRF5_SDK_17.0\examples\peripheral\blinky\pca10040\s132.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Right-click on the project -&amp;gt; Common -&amp;gt; Linker -&amp;gt; Section Placement Macros&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&lt;img alt=" " src="https://devzone.nordicsemi.com/resized-image/__size/320x240/__key/support-attachments/beef5d1b77644c448dabff31668f3a47-fd44494962f44ac4b942f33fefa98953/256272.PNG" /&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;-Amanda H.&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: OTA DFU bootloader</title><link>https://devzone.nordicsemi.com/thread/269438?ContentTypeID=1</link><pubDate>Mon, 14 Sep 2020 14:35:09 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:8d74895f-f1a1-45f6-bec4-58312aaccef0</guid><dc:creator>Cy</dc:creator><description>&lt;p&gt;Hmm, I have no use for hrs_application_s132.hex, and that is a soft device application. I have a situation where the application useful to me does not require a soft device. Well, I guess it is prudent to dig into the bootloader program and the linker script to figure out where, what, and how.&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: OTA DFU bootloader</title><link>https://devzone.nordicsemi.com/thread/269359?ContentTypeID=1</link><pubDate>Mon, 14 Sep 2020 11:44:19 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:834b0675-278d-474d-98bc-b98a06d57f22</guid><dc:creator>Amanda Hsieh</dc:creator><description>&lt;p&gt;Hi,&amp;nbsp;&lt;/p&gt;
[quote user="drollinger"]&lt;span&gt;nrfutil&amp;nbsp;pkg&amp;nbsp;generate&amp;nbsp;--hw-version&amp;nbsp;&lt;/span&gt;&lt;span&gt;52&lt;/span&gt;&lt;span&gt;&amp;nbsp;--application-version&amp;nbsp;&lt;/span&gt;&lt;span&gt;1&lt;/span&gt;&lt;span&gt;&amp;nbsp;--application&amp;nbsp;_build/nrf52832_xxaa.hex&amp;nbsp;--sd-req&amp;nbsp;&lt;/span&gt;&lt;span&gt;0xCB&lt;/span&gt;&lt;span&gt;&amp;nbsp;--key-file&amp;nbsp;private.key&amp;nbsp;app_dfu_package.zip&lt;/span&gt;[/quote]
&lt;p&gt;If you already programmed the&amp;nbsp;&amp;nbsp;s132_nrf52_7.0.1_softdevice.hex and only want to only update the app, your commend is correct. You can test with the&amp;nbsp;hrs_application_s132.hex nRF5_SDK_17.0.0\examples\dfu\secure_dfu_test_images\ble\nrf52832&lt;/p&gt;
&lt;p&gt;-Amanda H.&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: OTA DFU bootloader</title><link>https://devzone.nordicsemi.com/thread/269257?ContentTypeID=1</link><pubDate>Sat, 12 Sep 2020 22:50:41 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:c6bc69c6-86da-4565-a7bc-c1e0baca2356</guid><dc:creator>Cy</dc:creator><description>&lt;p&gt;Well, utilizing the nrfutil and the 0x00 on the sd option will zip and data transfers but will not run the application.&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: OTA DFU bootloader</title><link>https://devzone.nordicsemi.com/thread/269256?ContentTypeID=1</link><pubDate>Sat, 12 Sep 2020 22:41:58 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:4610aa6d-b94a-4376-94af-2a2ca0b768b2</guid><dc:creator>Cy</dc:creator><description>&lt;p&gt;The tutorial utilizes the&amp;nbsp;&lt;/p&gt;
&lt;div&gt;
&lt;div&gt;&lt;span&gt;nrfutil&amp;nbsp;pkg&amp;nbsp;generate&amp;nbsp;--hw-version&amp;nbsp;&lt;/span&gt;&lt;span&gt;52&lt;/span&gt;&lt;span&gt;&amp;nbsp;--application-version&amp;nbsp;&lt;/span&gt;&lt;span&gt;1&lt;/span&gt;&lt;span&gt;&amp;nbsp;--application&amp;nbsp;_build/nrf52832_xxaa.hex&amp;nbsp;--sd-req&amp;nbsp;&lt;/span&gt;&lt;span&gt;0xCB&lt;/span&gt;&lt;span&gt;&amp;nbsp;--key-file&amp;nbsp;private.key&amp;nbsp;app_dfu_package.zip&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 zip the application. Can this same utility be used to zip the app in the correct way? The option of the --sd with the version 7.0.1 is being used but I dont think it will run properly without the option, but will run with the option being 0x00.&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: OTA DFU bootloader</title><link>https://devzone.nordicsemi.com/thread/269254?ContentTypeID=1</link><pubDate>Sat, 12 Sep 2020 21:56:16 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:8d81deeb-593e-4ca7-8591-d6e3854ff1b4</guid><dc:creator>Turbo J</dc:creator><description>&lt;p&gt;You need to modify the linker script/settings for the application.&lt;/p&gt;
&lt;p&gt;Reason: The SD has to stay in place - otherwise the OTA DFU bootloader won&amp;#39;t work. Thus the application has to occupy the flash area &lt;em&gt;after&lt;/em&gt; the SD. You also need to reserve a small amount of RAM (8 bytes IIRC) for the Softdevice - even when it is disabled - in order to use interrupt forwarding.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;An unmodified app would occupy the space for the SD in flash - this should be rejected in the bootloader logic. And no, cannot run a statically linked app from a flash address other than it was linked to.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>