<?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>What happens after switching to Bootloader/DFU mode?</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/17636/what-happens-after-switching-to-bootloader-dfu-mode</link><description>Hello again, 
 I&amp;#39;m working with the ble_app_hrs example application with DFU app support. I&amp;#39;m following the DFU procedure and I&amp;#39;ve reached the point where I actually start the DFU process. At this point the application starts the bootloader. 
 My question</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Thu, 10 Nov 2016 11:33:38 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/17636/what-happens-after-switching-to-bootloader-dfu-mode" /><item><title>RE: What happens after switching to Bootloader/DFU mode?</title><link>https://devzone.nordicsemi.com/thread/67823?ContentTypeID=1</link><pubDate>Thu, 10 Nov 2016 11:33:38 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:e3a3fc69-69f3-4098-affd-29e84763451c</guid><dc:creator>Andy</dc:creator><description>&lt;p&gt;Ok, makes sense. Thanks!&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: What happens after switching to Bootloader/DFU mode?</title><link>https://devzone.nordicsemi.com/thread/67822?ContentTypeID=1</link><pubDate>Thu, 10 Nov 2016 11:31:30 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:56b3b12c-f73c-47e9-a711-2661445aebc3</guid><dc:creator>Hung Bui</dc:creator><description>&lt;p&gt;Hi Andy,&lt;/p&gt;
&lt;p&gt;It&amp;#39;s not too important (and we actually ignore it) the second byte you put when you send 0x01 and 0xYY to tell the application to jump from application to the bootloader. We don&amp;#39;t check if the 0xYY would be application or softdevice or bootloader or invalid. We simply switch to bootloader and then when the bootloader started you would need to send again the correct 0x01,0xYY to the bootloader.&lt;/p&gt;
&lt;p&gt;You can implement your own checking, for example if you don&amp;#39;t accept softdevice update you can refuse to jump to bootloader if 0xYY = 0x01 or if 0xYY is not a valid opcode.&lt;/p&gt;
&lt;p&gt;And yes, after you jumped to the bootloader, you start doing DFU as normal, rediscovering service, write to CCCD, and write to Control Point what you want to update, init data , etc&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>