<?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>DFU</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/525/dfu</link><description>Hi, 
 I expected a bit more fanfare for the BLE-based DFU, but eventually found it in the 4.4 SDK after my sales rep told me it was there ;) 
 Some questions: 
 (1) Is there a plan to support DFU over BLE without the need to physically press a button</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Thu, 30 Mar 2017 11:12:09 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/525/dfu" /><item><title>RE: DFU</title><link>https://devzone.nordicsemi.com/thread/2736?ContentTypeID=1</link><pubDate>Thu, 30 Mar 2017 11:12:09 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:eeed0496-59e6-431f-8fab-a9c6e08f2e85</guid><dc:creator>king001</dc:creator><description>&lt;p&gt;Did you solve this problem? can you share it?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: DFU</title><link>https://devzone.nordicsemi.com/thread/2731?ContentTypeID=1</link><pubDate>Mon, 28 Apr 2014 11:21:58 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:5f7cf5f3-835c-46ca-b029-6aedd21a75ad</guid><dc:creator>Ole Morten</dc:creator><description>&lt;p&gt;I&amp;#39;m not quite sure I understand what you mean, but you choose yourself where you store the received data. You just need to make sure to place the data outside the existing application. If you have any further questions, I&amp;#39;d suggest that you post a question separately.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: DFU</title><link>https://devzone.nordicsemi.com/thread/2730?ContentTypeID=1</link><pubDate>Fri, 25 Apr 2014 19:12:13 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:fd1e00d6-5f36-4f13-9fbb-87e52aa770b6</guid><dc:creator>julian</dc:creator><description>&lt;p&gt;if we go with include the bootloader service , how to make sure we download and verified app without damage current app?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: DFU</title><link>https://devzone.nordicsemi.com/thread/2735?ContentTypeID=1</link><pubDate>Wed, 09 Oct 2013 11:45:06 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:06ed7ff5-558c-424b-89db-e5863f0df1af</guid><dc:creator>balaji</dc:creator><description>&lt;p&gt;I tried as you said, but it is not working. I just modified the ble_app_hrs code as follows,
static void on_write(ble_evt_t * p_ble_evt)
{
ble_gatts_evt_write_t * p_evt_write = &amp;amp;p_ble_evt-&amp;gt;evt.gatts_evt.params.write;
if (p_evt_write-&amp;gt;handle == 3)&lt;br /&gt;
{
NRF_POWER-&amp;gt;GPREGRET = 1;
sd_nvic_SystemReset();
}&lt;/p&gt;
&lt;p&gt;when i update the device name, it should set the register and reset the device, then the bootloader mode will take place.
I also modified the bootloader code as you said.
while debugging i can see that the device enters into the bootloader mode, when reset happens.  but, when testing with the master control pannel, system reset happens, but it is not entering into the bootloader mode.
could you please help me get over this. and also tell me the source file location from where you are entering into the bootloader mode(i.e location to set NRF_POWER-&amp;gt;GPREGRET == 1).&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: DFU</title><link>https://devzone.nordicsemi.com/thread/2734?ContentTypeID=1</link><pubDate>Wed, 25 Sep 2013 19:47:21 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:764a134c-fd8e-4e43-818d-91cb4c03e654</guid><dc:creator>Marc Nicholas</dc:creator><description>&lt;p&gt;I wish I could accept two answers...that&amp;#39;s awesome, Jörgen!! :D&lt;/p&gt;
&lt;p&gt;-m&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: DFU</title><link>https://devzone.nordicsemi.com/thread/2733?ContentTypeID=1</link><pubDate>Wed, 25 Sep 2013 19:43:29 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:adcabef6-cd63-4387-8bec-e05fca0e0631</guid><dc:creator>J&amp;#246;rgen</dc:creator><description>&lt;p&gt;I did a small test and it´s working. Don´t know if it´s the best solution but it works for me.&lt;/p&gt;
&lt;p&gt;Change this in the bootloader app. it will still trigger on button 7 put it´s easy to take away.&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;    if (bootloader_is_pushed || (!bootloader_app_is_valid(DFU_BANK_0_REGION_START)) || NRF_POWER-&amp;gt;GPREGRET == 1)
    {
        nrf_gpio_pin_set(LED1);
	NRF_POWER-&amp;gt;GPREGRET = 0;
        // Initiate an update of the firmware.
        err_code = bootloader_dfu_start();
        APP_ERROR_CHECK(err_code);

        nrf_gpio_pin_clear(LED1);
    }
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Add this in your normal code for tigger bootloader
NRF_POWER-&amp;gt;GPREGRET = 1;
NVIC_SystemReset();&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: DFU</title><link>https://devzone.nordicsemi.com/thread/2732?ContentTypeID=1</link><pubDate>Wed, 25 Sep 2013 16:44:53 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:c0e715af-58bf-438d-9fbb-0ff309909baa</guid><dc:creator>Marc Nicholas</dc:creator><description>&lt;p&gt;Hi Ole! Long time, no speak :)&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;If you can report that as a feature request, that&amp;#39;d be great. For those of us building &amp;quot;appcessories&amp;quot;, the thought of having to include a) a button b) have the user press it to update the firmware is scary.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;I&amp;#39;ll have our developer try what you suggested.&lt;/p&gt;
&lt;ol start="2"&gt;
&lt;li&gt;Looking forward to the demo code.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Thanks for the super-swift response. I&amp;#39;m starting to wonder if a big &amp;quot;N&amp;quot; gets projected in the sky when there&amp;#39;s a question that you could answer, and then you rush to your computer to respond when you see it ;)&lt;/p&gt;
&lt;p&gt;Cheers,&lt;/p&gt;
&lt;p&gt;-m&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: DFU</title><link>https://devzone.nordicsemi.com/thread/2729?ContentTypeID=1</link><pubDate>Wed, 25 Sep 2013 16:26:56 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:c2bddd3d-3ee0-47f6-ad67-383236f5c53b</guid><dc:creator>Ole Morten</dc:creator><description>&lt;p&gt;You should have received an e-mail that there was an SDK update, but that doesn&amp;#39;t yet include any changelog, so I see it wasn&amp;#39;t easy to know. :)&lt;/p&gt;
&lt;p&gt;Anyway:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;I can report it as a feature request, but it should be fairly straightforward to add. I think the easiest methods would be to use the GPREGRET register. Write a special value when you want to jump to the bootloader, and just reset. Change the bootloader so that your special value is also considered a reason for staying in bootloader mode.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Another option would actually be to include the bootloader service and its dependencies in your application, so that you just stay in application mode while doing the download and then reset only when finished and verified. This would also require some changes to the bootloader though.&lt;/p&gt;
&lt;ol start="2"&gt;
&lt;li&gt;This is definitely something we wish to do, but there hasn&amp;#39;t been set any dates for it yet, so I can&amp;#39;t promise anything.&lt;/li&gt;
&lt;/ol&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>