<?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 in multiprotocol BLE/Thread application</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/37366/dfu-in-multiprotocol-ble-thread-application</link><description>Hi, 
 1. I&amp;#39;m developing multiprotocol BLE/Thread app with Thread SDK 1.0 and I want to ask if there&amp;#39;s a possibilty to perform DFU over Thread in that case? In Thread Secure DFU Example description there&amp;#39;s something like this written: 
 &amp;quot;The Thread stack</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Fri, 07 Sep 2018 07:57:48 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/37366/dfu-in-multiprotocol-ble-thread-application" /><item><title>RE: DFU in multiprotocol BLE/Thread application</title><link>https://devzone.nordicsemi.com/thread/147721?ContentTypeID=1</link><pubDate>Fri, 07 Sep 2018 07:57:48 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:aa6e46c2-f4aa-472a-97e8-87bcf2584d2d</guid><dc:creator>Edvin</dc:creator><description>&lt;p&gt;Hello,&lt;/p&gt;
&lt;p&gt;So you want to use the Thread Bootloader and DFU, right, You only want the application that is running and updated to to include the softdevice?&lt;/p&gt;
&lt;p&gt;Try to use the flash_placement and thumb files for the DFU projects, and adjust the FLASH_START and FLASH_SIZE parameters in your project settings to match the multiprotocol example&amp;#39;s settings.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;I believe you should use the same CoAP UDP port. Have you tested?&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;It might be easier to try to get the DFU up and running first, using the example, to ensure that everything is right there before mixing in the multiprotocol example.&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: DFU in multiprotocol BLE/Thread application</title><link>https://devzone.nordicsemi.com/thread/147634?ContentTypeID=1</link><pubDate>Thu, 06 Sep 2018 14:34:16 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:36e344db-eb5c-4698-95e9-eda620c81039</guid><dc:creator>Edvin</dc:creator><description>&lt;p&gt;Hello,&lt;/p&gt;
&lt;p&gt;Sorry for the late reply. I have been out traveling. I am back now, and will look into this as soon as possible.&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: DFU in multiprotocol BLE/Thread application</title><link>https://devzone.nordicsemi.com/thread/146959?ContentTypeID=1</link><pubDate>Mon, 03 Sep 2018 11:46:46 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:4b601ceb-b87c-4a61-9041-8bab4d1bbfe8</guid><dc:creator>marmio</dc:creator><description>&lt;p&gt;Few more questions, because I still didn&amp;#39;t make this work and I didn&amp;#39;t see any more questions and tutorials on this topic.&lt;/p&gt;
&lt;p&gt;1. How should the linker script and flash_placement.xml look like? Especially memory sections adresses and sizes. There are different linker scripts and files for multiprotocol and DFU for Thread examples&lt;/p&gt;
&lt;p&gt;2. How should the app look like if I&amp;#39;m already using CoAP? Should I bind to the same or different UDP port?&lt;/p&gt;
&lt;p&gt;3. thumb_crt0.s, there are also differences between DFU example and multiprotocol examples&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Regards,&lt;/p&gt;
&lt;p&gt;Marek&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: DFU in multiprotocol BLE/Thread application</title><link>https://devzone.nordicsemi.com/thread/143904?ContentTypeID=1</link><pubDate>Mon, 13 Aug 2018 10:20:07 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:c5862ee0-0ec8-4ce5-b93d-b56e38bb3408</guid><dc:creator>Edvin</dc:creator><description>&lt;p&gt;I have not tested the Thread DFU yet, but I see that it uses the same bootloader library as the BLE bootloader, so I assume that it is only the transport layer that is changed.&lt;/p&gt;
&lt;p&gt;So if your application requires a softdevice, which it does if you use BLE, you must use --sd-req 0xNN, which matches the softdevice that you are using.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;You need to use coap_dfu_init(), yes. Just remember to also flash the bootloader before you run the project. At least in the regular BLE bootloader projects, it will return an error if it can&amp;#39;t find any bootloader.&lt;/p&gt;
&lt;p&gt;I can&amp;#39;t see that it uses the same function to look for the bootloader, but I assume it has the same check. Either way, you would need the bootloader in order to perform the DFU.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;I suggest that you try the guide for the &lt;a href="http://infocenter.nordicsemi.com/index.jsp?topic=%2Fcom.nordic.infocenter.thread_zigbee.v1.0.0%2Fthread_example_dfu.html"&gt;Thread DFU example &lt;/a&gt;first, just to see that you get the bootloader is up and running before you try to implement it in a BLE + Thread project.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&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: DFU in multiprotocol BLE/Thread application</title><link>https://devzone.nordicsemi.com/thread/143749?ContentTypeID=1</link><pubDate>Fri, 10 Aug 2018 14:08:04 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:e06ae947-b89c-458a-8eee-4c7ce654366d</guid><dc:creator>marmio</dc:creator><description>&lt;p&gt;And what do I have to add to my app, only coap dfu init, process and trigger functions, and all their dependencies?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: DFU in multiprotocol BLE/Thread application</title><link>https://devzone.nordicsemi.com/thread/143744?ContentTypeID=1</link><pubDate>Fri, 10 Aug 2018 13:47:11 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:2b22a98d-28cf-4c22-a377-832dd1f15f6a</guid><dc:creator>Edvin</dc:creator><description>&lt;p&gt;Hello Marek,&lt;/p&gt;
&lt;p&gt;This field used in nrfutil, --sd-req 0xNN is used only for the bootloader to not accept a DFU pack that does not fulfill the requirements.&lt;/p&gt;
&lt;p&gt;So if your application is using multiprotocol; BLE and Thread, and the BLE part requires the softdevice (which it probably does), then you should use the --sd-req that fits to&amp;nbsp;that softdevice.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;You may know this, but you can see the list of softdevice IDs by typing:&lt;/p&gt;
&lt;p&gt;nrfutil pkg generate --help&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&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></channel></rss>