<?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>Adding DFU over BLE to my application</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/97317/adding-dfu-over-ble-to-my-application</link><description>Hello! I want to know how to properly add secure DFU over BLE to my application. I have an application already working and tested developed in nrf5 sdk 17.1.0 using SES. It has BLE functionality so it uses the Softdevice, now I want to add DFU suppport</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Mon, 06 Mar 2023 23:09:25 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/97317/adding-dfu-over-ble-to-my-application" /><item><title>RE: Adding DFU over BLE to my application</title><link>https://devzone.nordicsemi.com/thread/413662?ContentTypeID=1</link><pubDate>Mon, 06 Mar 2023 23:09:25 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:0e919307-8c12-4292-b4c1-cc5105a9ce4c</guid><dc:creator>Edvin</dc:creator><description>&lt;p&gt;I agree with everything already suggested. In addition, I would like to make you aware of &lt;a href="https://devzone.nordicsemi.com/guides/short-range-guides/b/software-development-kit/posts/getting-started-with-nordics-secure-dfu-bootloader"&gt;this guide&lt;/a&gt;. It is old, but still very relevant for the nRF5 SDK bootloader.&lt;/p&gt;
&lt;p&gt;You say that you want to stay clear of nRF Connect for Desktop -&amp;gt; programmer. I can understand that. I suggest you look unto using nRF Command Line Tools for working with bootloadr. It is a simple command line tool used to program .hex files to the nRF. You can easily script this as well. In addition, I believe you can add &amp;quot;post build commands/scripts&amp;quot; in SES, that can generate the DFU images, sign the application, generate bootloader settings or whatever you like.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Best regards,&lt;/p&gt;
&lt;p&gt;Edvin&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Adding DFU over BLE to my application</title><link>https://devzone.nordicsemi.com/thread/413544?ContentTypeID=1</link><pubDate>Mon, 06 Mar 2023 13:06:06 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:b22b0c8d-979f-488e-9cb6-56cb870c7240</guid><dc:creator>fhfs</dc:creator><description>&lt;p&gt;&amp;quot;1) In the example, the secure bootloader and the application were on separate projects, how do I add bootloader to my current app project? As in, having all of the code in a single project and not having to merge the hex files like the tutorial mentioned, also doing it all in SES and not having to use the nrf connect programmer.&amp;quot;&lt;/p&gt;
&lt;p&gt;I don&amp;#39;t think you should do that, the bootloader is responsible for updating the applications and validating the updates and more.&lt;/p&gt;
&lt;p&gt;&amp;quot;2) What are all the options for entering DFU mode during application runtime, like I want to be able to say press a button or send a command via BLE characteristic and put the device in DFU mode.&amp;quot;&lt;/p&gt;
&lt;p&gt;There are multiple ways of entering DFU mode, using a Button, Pinreset, GPREGRET registers and Buttonless. See &lt;a href="https://infocenter.nordicsemi.com/topic/sdk_nrf5_v17.1.0/lib_bootloader_modules.html?cp=9_1_3_5"&gt;docs&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&amp;quot;3) How do I change the&amp;nbsp;settings of the bootloader phase, like the Advertising name, adding a GPIO to exit the DFU in case it was entered unexpectedly/on accident, etc and what other options do I have I&amp;#39;d lke to know&amp;quot;&lt;/p&gt;
&lt;p&gt;With buttonless DFU Service you can use DFU_OP_SET_ADV_NAME to set the adv name in DFU mode.&lt;br /&gt;Exiting the DFU mode with a GPIO, could be done with the reset pin, or add a GPIO interrupt in the bootloader code and reset there. I&amp;#39;ve never had to use a reset button for dfu, only cycling the power.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>