<?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>nrf connect SDK BLE DFU</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/96128/nrf-connect-sdk-ble-dfu</link><description>I am planning to migrate from nRF5 SDK to nRF connect SDK on nRF52832. 
 I have a question about BLE-DFU of nrf connect SDK. 
 1. Is nrf connect SDK support BLE-DFU? 
 2. Is support dual-bank DFU? 
 3. Is support allication based DFU?(Do DFU at the same</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Wed, 22 Feb 2023 09:30:19 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/96128/nrf-connect-sdk-ble-dfu" /><item><title>RE: nrf connect SDK BLE DFU</title><link>https://devzone.nordicsemi.com/thread/411286?ContentTypeID=1</link><pubDate>Wed, 22 Feb 2023 09:30:19 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:c6a2b61f-ad57-4e32-831c-7ccaf03c2dd0</guid><dc:creator>Shahin97</dc:creator><description>&lt;p&gt;How would I go about merging SPI-NOR example into the DFU example?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nrf connect SDK BLE DFU</title><link>https://devzone.nordicsemi.com/thread/407535?ContentTypeID=1</link><pubDate>Wed, 01 Feb 2023 12:58:59 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:6133b1d9-c71a-47ed-b486-a81b0c8a4a98</guid><dc:creator>loquat</dc:creator><description>&lt;p&gt;OK.&lt;/p&gt;
&lt;p&gt;Thanks.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nrf connect SDK BLE DFU</title><link>https://devzone.nordicsemi.com/thread/407481?ContentTypeID=1</link><pubDate>Wed, 01 Feb 2023 09:04:07 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:902b2eb7-29ca-4bc5-8371-8e1eb1e44426</guid><dc:creator>Vidar Berg</dc:creator><description>&lt;p&gt;Yes, this is indeed a drawback with the new architecture. The solution is often, as you suggested, to include external FLASH in the design&amp;nbsp;to allow for immediate storage of&amp;nbsp;new FW images.&lt;/p&gt;
[quote user="loquat"]&lt;p&gt;my apps are&lt;br /&gt;1. Highly functional apps, spending more than 150KB&lt;br /&gt;2. Use the TimeSlot API&lt;br /&gt;3. (Future) Use PeriodicAdvertising (send/receive)&lt;/p&gt;
&lt;p&gt;Can you suggest a SoC that satisfies these?&lt;/p&gt;[/quote]
&lt;p&gt;All these features are available on the nRF52832. Whether it will have enough FLASH/RAM is&amp;nbsp;dependent on your application. The bootloader is typically around 32kB which leaves 480kB to the application + secondary DFU slot. Note: the secondary slot can optionally be placed in external flash.&lt;/p&gt;
[quote user="loquat"]Is it possible to store DFU images in external FLASH with nRF52833?&lt;br /&gt;If so, is there a list of supported FLASHs?[/quote]
&lt;p&gt;Yes, the DFU solution supports external NOR flash through the SPI NOR driver:&amp;nbsp;&lt;a href="https://developer.nordicsemi.com/nRF_Connect_SDK/doc/2.2.0/zephyr/samples/drivers/spi_flash/README.html"&gt;https://developer.nordicsemi.com/nRF_Connect_SDK/doc/2.2.0/zephyr/samples/drivers/spi_flash/README.html&lt;/a&gt;&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nrf connect SDK BLE DFU</title><link>https://devzone.nordicsemi.com/thread/407442?ContentTypeID=1</link><pubDate>Tue, 31 Jan 2023 23:10:18 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:190280ea-41e7-4c56-9a88-de4c9f5acbf0</guid><dc:creator>loquat</dc:creator><description>&lt;p&gt;I think that&amp;rsquo;s disappointing.&lt;br /&gt;When I do DFU, I rarely update SoftDevices.&lt;br /&gt;Including the same SoftDevice in the two images before and after updating is a waste of FLASH and prevents creating highly functional apps.&lt;/p&gt;
&lt;p&gt;my apps are&lt;br /&gt;1. Highly functional apps, spending more than 150KB&lt;br /&gt;2. Use the TimeSlot API&lt;br /&gt;3. (Future) Use PeriodicAdvertising (send/receive)&lt;/p&gt;
&lt;p&gt;Can you suggest a SoC that satisfies these?&lt;/p&gt;
&lt;p&gt;And then,&lt;br /&gt;Is it possible to store DFU images in external FLASH with nRF52833?&lt;br /&gt;If so, is there a list of supported FLASHs?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nrf connect SDK BLE DFU</title><link>https://devzone.nordicsemi.com/thread/407432?ContentTypeID=1</link><pubDate>Tue, 31 Jan 2023 19:59:19 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:620427e3-c0d7-4d98-9921-667649553d1a</guid><dc:creator>Vidar Berg</dc:creator><description>[quote user="loquat"]1.Will SoftDeviceController and apps be a single image file in the nrf connect SDK?[/quote]
&lt;p&gt;Yes, the Softdevice controller and application are in one FW image.&lt;/p&gt;
[quote user="loquat"]2.In the future, are there any plans to separate apps and enable DFU for apps only, like LegacySoftDevice?[/quote]
&lt;p&gt;The Bluetooth host is a part of Zephyr and relies on the OS to work. In other words, if we were to split the stack into a separate application like with the old architecture, we would end up with 2 apps with Zephyr instead of one.&lt;/p&gt;
[quote user="loquat"]3.Is there support for compressed DFU image files?[/quote]
&lt;p&gt;We do not have support for compressed DFU, unfortunately. Support for the LZ4 algorithm (&lt;a href="https://docs.zephyrproject.org/3.2.0/samples/compression/lz4/README.html"&gt;https://docs.zephyrproject.org/3.2.0/samples/compression/lz4/README.html&lt;/a&gt;) is included with Zephyr, but it has not been evaluated for DFU as far as I know. It may be that the size requirements for the library itself is too big to make sense for this use case. &lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nrf connect SDK BLE DFU</title><link>https://devzone.nordicsemi.com/thread/407399?ContentTypeID=1</link><pubDate>Tue, 31 Jan 2023 15:32:10 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:dcef1c1c-ab4c-4a76-a005-ef3ae4556268</guid><dc:creator>loquat</dc:creator><description>&lt;p&gt;OK.Thanks.&lt;/p&gt;
&lt;p&gt;And more questions.&lt;/p&gt;
&lt;p&gt;1.Will SoftDeviceController and apps be a single image file in the nrf connect SDK?&lt;/p&gt;
&lt;p&gt;2.In the future, are there any plans to separate apps and enable DFU for apps only, like LegacySoftDevice?&lt;/p&gt;
&lt;p&gt;3.Is there support for compressed DFU image files?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nrf connect SDK BLE DFU</title><link>https://devzone.nordicsemi.com/thread/407224?ContentTypeID=1</link><pubDate>Tue, 31 Jan 2023 08:19:25 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:f5c366d6-1201-4bd8-b129-58711f045ab5</guid><dc:creator>Vidar Berg</dc:creator><description>&lt;p&gt;Yes, the main app will be running when you receive the FW image.&lt;/p&gt;
[quote user="loquat"]&lt;span&gt;&lt;span&gt;I plan to use SoftDevice Controller.&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt; &lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;What size applications can be created?&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt; &lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;example:&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt; &lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;nRF52832 FLASH: 512KB&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt; &lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;Apps: 100KB + SoftDevice: 100KB + MCU: 50KB&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt; &lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;remain:512KB-250KB=262KB&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt; &lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;Updatable Apps size is&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt; &lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;262KB-SoftDevice:100KB=162KB?&lt;/span&gt;&lt;/span&gt;[/quote]
&lt;p&gt;The size of the SD controller varies depending on what BT features you have enabled in your application. So, the best way to estimate the size requirements is to build one of the SDK samples.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;You can try the minimal build configuration for the LBS sample (&lt;a href="https://developer.nordicsemi.com/nRF_Connect_SDK/doc/latest/nrf/samples/bluetooth/peripheral_lbs/README.html#minimal-build="&gt;https://developer.nordicsemi.com/nRF_Connect_SDK/doc/latest/nrf/samples/bluetooth/peripheral_lbs/README.html#minimal-build&lt;/a&gt;) to&amp;nbsp;size the memory footprint of an optimized BLE application.&amp;nbsp;&lt;/p&gt;
[quote user="loquat"]And&lt;br /&gt;Is it possible to create a DFU user transport?[/quote]
&lt;p&gt;Yes, there is not requirement to use the SMP transport. You can use the Flash image management APIs here to write your update image to the update slot:&amp;nbsp;&lt;a href="https://developer.nordicsemi.com/nRF_Connect_SDK/doc/latest/zephyr/services/device_mgmt/dfu.html#api-reference"&gt;https://developer.nordicsemi.com/nRF_Connect_SDK/doc/latest/zephyr/services/device_mgmt/dfu.html#api-reference&lt;/a&gt;&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nrf connect SDK BLE DFU</title><link>https://devzone.nordicsemi.com/thread/407077?ContentTypeID=1</link><pubDate>Mon, 30 Jan 2023 11:49:03 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:9fe4d01f-05de-4379-be5e-605ab1259f83</guid><dc:creator>loquat</dc:creator><description>&lt;p&gt;&lt;span class="HwtZe" lang="en"&gt;&lt;span class="jCAhz ChMk0b"&gt;&lt;span class="ryNqvb"&gt;Thank you&lt;/span&gt;&lt;/span&gt;&lt;span class="jCAhz"&gt;&lt;span class="ryNqvb"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class="HwtZe" lang="en"&gt;&lt;span class="jCAhz ChMk0b"&gt;&lt;span class="ryNqvb"&gt;Does it mean DFU in parallel in the background of a application?&lt;/span&gt;&lt;/span&gt;&lt;span class="jCAhz"&gt;&lt;span class="ryNqvb"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class="HwtZe" lang="en"&gt;&lt;span class="jCAhz ChMk0b"&gt;&lt;span class="ryNqvb"&gt;additional question.&lt;/span&gt;&lt;/span&gt;&lt;span class="jCAhz"&gt;&lt;span class="ryNqvb"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class="HwtZe" lang="en"&gt;&lt;span class="jCAhz ChMk0b"&gt;&lt;span class="ryNqvb"&gt;I plan to use SoftDevice Controller.&lt;/span&gt;&lt;/span&gt;&lt;span class="jCAhz"&gt;&lt;span class="ryNqvb"&gt; &lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="jCAhz ChMk0b"&gt;&lt;span class="ryNqvb"&gt;What size applications can be created?&lt;/span&gt;&lt;/span&gt;&lt;span class="jCAhz"&gt;&lt;span class="ryNqvb"&gt; &lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="jCAhz ChMk0b"&gt;&lt;span class="ryNqvb"&gt;example:&lt;/span&gt;&lt;/span&gt;&lt;span class="jCAhz"&gt;&lt;span class="ryNqvb"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span class="jCAhz ChMk0b"&gt;&lt;span class="ryNqvb"&gt;nRF52832 FLASH: 512KB&lt;/span&gt;&lt;/span&gt;&lt;span class="jCAhz"&gt;&lt;span class="ryNqvb"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span class="jCAhz ChMk0b"&gt;&lt;span class="ryNqvb"&gt;Apps: 100KB + SoftDevice: 100KB + MCU: 50KB&lt;/span&gt;&lt;/span&gt;&lt;span class="jCAhz"&gt;&lt;span class="ryNqvb"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span class="jCAhz ChMk0b"&gt;&lt;span class="ryNqvb"&gt;remain:512KB-250KB=262KB&lt;/span&gt;&lt;/span&gt;&lt;span class="jCAhz"&gt;&lt;span class="ryNqvb"&gt; &lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="jCAhz ChMk0b"&gt;&lt;span class="ryNqvb"&gt;Updatable Apps size is&lt;/span&gt;&lt;/span&gt;&lt;span class="jCAhz"&gt;&lt;span class="ryNqvb"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span class="jCAhz ChMk0b"&gt;&lt;span class="ryNqvb"&gt;262KB-SoftDevice:100KB=162KB?&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class="HwtZe" lang="en"&gt;&lt;span class="jCAhz ChMk0b"&gt;&lt;span class="ryNqvb"&gt;And&lt;br /&gt;Is it possible to create a DFU user transport?&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nrf connect SDK BLE DFU</title><link>https://devzone.nordicsemi.com/thread/407046?ContentTypeID=1</link><pubDate>Mon, 30 Jan 2023 09:54:52 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:95d1b419-f20a-454c-8214-cbe230d3ec0d</guid><dc:creator>Vidar Berg</dc:creator><description>&lt;p&gt;Thanks for the answer, Mike. I do not&amp;nbsp;think there is much to add to what you already said.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;1. Please see this guide for instructions on how to add DFU support to an existing application:&amp;nbsp;&amp;nbsp;&lt;a href="https://devzone.nordicsemi.com/guides/nrf-connect-sdk-guides/b/software/posts/ncs-dfu"&gt;Add DFU support to your application&lt;/a&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;2. In the nRF connect SDK, you cannot update the application &amp;quot;in-place&amp;quot; like you could in the nRF5 SDK&amp;nbsp;as&amp;nbsp;the main application needs to be running to receive the update image.&lt;/p&gt;
&lt;p&gt;MCUBoot does not have a built-in BLE DFU transport like the old bootloader had.&lt;/p&gt;
&lt;p&gt;3.&amp;nbsp;The application will continue to run while you receive the update image, but other application tasks may be&amp;nbsp;delayed or blocked&amp;nbsp;by the DFU process as it is quite resource heavy if you try to upload the image as fast as possible (it involves lots of blocking flash operations).&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Best regards,&lt;/p&gt;
&lt;p&gt;Vidar&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nrf connect SDK BLE DFU</title><link>https://devzone.nordicsemi.com/thread/406981?ContentTypeID=1</link><pubDate>Mon, 30 Jan 2023 01:45:26 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:beef3ce7-2124-4a23-8ab6-6b9ed3fabfd1</guid><dc:creator>Mike Austin (LPI)</dc:creator><description>&lt;p&gt;One of the Nordic Engineers will be able to give you a more detailed answer, but from my experience using nRF Connect SDK (I&amp;#39;m currently on v2.2.0) and the nRF52832:&lt;/p&gt;
&lt;p&gt;1. Yes.&amp;nbsp; I can do this both using the nRF Connect App, as well as my custom App&lt;/p&gt;
&lt;p&gt;2. If you mean dual image (so, the new image gets transferred into Flash and then the device reboots, and uses the new image whilst the old image remains in flash), then yes.&amp;nbsp; This is what we are currently doing&lt;/p&gt;
&lt;p&gt;3.&amp;nbsp; Not sure.&amp;nbsp; With our application, things appear to halt whilst the DFU is in process, and then it all restarts (the DFU issues a software reset on completion) at the end&lt;/p&gt;
&lt;p&gt;Hope that helps&lt;/p&gt;
&lt;p&gt;Mike&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>