<?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>BLE DFU Speed difference between SDK14.2 and SDK15.3</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/64083/ble-dfu-speed-difference-between-sdk14-2-and-sdk15-3</link><description>Config1: MCU : nRF52840 SDK : SDK15.3 Softdevice : s340_nrf52_6.1.1_softdevice (SDK15.3) Phone: iOS version 12.1 
 Config2: MCU : nRF52832 SDK : SDK14.2 Softdevice : s332_nrf52_5.0.0_softdevice (SDK14.2) Phone: iOS version 12.1 
 We have use SDK Bootloader</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Fri, 28 Aug 2020 09:21:24 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/64083/ble-dfu-speed-difference-between-sdk14-2-and-sdk15-3" /><item><title>RE: BLE DFU Speed difference between SDK14.2 and SDK15.3</title><link>https://devzone.nordicsemi.com/thread/266924?ContentTypeID=1</link><pubDate>Fri, 28 Aug 2020 09:21:24 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:c9df46f9-9af2-40ce-b744-a26376805395</guid><dc:creator>Hung Bui</dc:creator><description>&lt;p&gt;Hi Himasu,&amp;nbsp;&lt;/p&gt;
&lt;p&gt;If you are using nrfutil, please make sure you used the latest version and the softdevice you used for the firmware is &amp;gt;3 . You can find the code where longer data length is requested here:&amp;nbsp;&lt;a href="https://github.com/NordicSemiconductor/pc-nrfutil/blob/master/nordicsemi/dfu/dfu_transport_ble.py#L170"&gt;https://github.com/NordicSemiconductor/pc-nrfutil/blob/master/nordicsemi/dfu/dfu_transport_ble.py#L170&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;On the bootloader side&amp;nbsp;we don&amp;#39;t set a certain data length but simply follow what&amp;#39;s requested and max supported. Check&amp;nbsp;BLE_GAP_EVT_DATA_LENGTH_UPDATE_REQUEST event inside&amp;nbsp;ble_evt_handler() in nrf_dfu_ble.c&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: BLE DFU Speed difference between SDK14.2 and SDK15.3</title><link>https://devzone.nordicsemi.com/thread/266854?ContentTypeID=1</link><pubDate>Fri, 28 Aug 2020 05:21:37 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:dc171586-cc67-47a6-9233-5d8437edd759</guid><dc:creator>Himansu</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;Query: How to Enable Data Length Extension using Application nRF Util?&lt;/p&gt;
&lt;p&gt;- Peripheral Device:&lt;br /&gt;nRF52840 Chip-set&lt;/p&gt;
&lt;p&gt;- Central Device:&lt;br /&gt;nRF52840 DevKit&lt;/p&gt;
&lt;p&gt;- Central Device controlled using Application nRF Util which is useing for testing:&lt;br /&gt;&lt;a href="https://github.com/NordicSemiconductor/pc-nrfutil"&gt;github.com/.../pc-nrfutil&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;- Used Command:&lt;br /&gt;nrfutil dfu ble -ic NRF52 -pkg E:\App.zip -p COM6 -n &amp;quot;DFU&amp;quot; -f -mtu 247&lt;/p&gt;
&lt;p&gt;Regards,&lt;/p&gt;
&lt;p&gt;Himansu&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: BLE DFU Speed difference between SDK14.2 and SDK15.3</title><link>https://devzone.nordicsemi.com/thread/266808?ContentTypeID=1</link><pubDate>Thu, 27 Aug 2020 15:52:02 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:e81ecda5-da36-4930-b5a6-9b3224f3b861</guid><dc:creator>Hung Bui</dc:creator><description>&lt;p&gt;Hi Himansu,&amp;nbsp;&lt;br /&gt;I can see that at test 2 you are achieving&amp;nbsp;quite a good speed of transmitting. However I don&amp;#39;t see using data length extension. This resulted in that the length of a packet is only 23 bytes (27 with the header). If you can update the data length extension (LL_LENGTH_REQ) you may be able to achieve faster DFU transmitting.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Regarding case 3, I think what can be improved here is that instead of requesting min interval of 7.5ms (which will not be accepted by iOS) you can try to request min 30ms max 50 ms for example. Then you will have more chance being granted 30ms , this is much better than 90ms as in your trace.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;In addition, there was quite a lot of retransmission in the trace, seems that the communication was interfered quite a lot or the antenna/radio was not tuned on the NRF52840 DUT board you have. I don&amp;#39;t see that problem in the test 1 and test 2.&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: BLE DFU Speed difference between SDK14.2 and SDK15.3</title><link>https://devzone.nordicsemi.com/thread/266801?ContentTypeID=1</link><pubDate>Thu, 27 Aug 2020 15:25:26 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:ae844185-4c3a-4a3b-84f5-70e0cbf9cd52</guid><dc:creator>Himansu</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;I have taken sniffer log for issue and updating here.&lt;/p&gt;
&lt;p&gt;We have&amp;nbsp;use iphone 11 with latest iOS. so, DFU time is reduce and achieve&amp;nbsp;175&amp;nbsp;seconds. still we want to reduce this time. Please suggest any method or any other parameter we can change in phone app or bootloader. so, we can achieve less time compare to&amp;nbsp;175 seconds. Pleas suggest any applicable solution for achieve minimum time for app update.&lt;/p&gt;
&lt;p&gt;We have do 3 test and result and sniffer log file name here.&lt;/p&gt;
&lt;div class="content"&gt;
&lt;p&gt;MCU : nRF52840&lt;br /&gt;SDK : SDK15.3&lt;br /&gt;Softdevice : s340_nrf52_6.1.1_softdevice (SDK15.3)&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;table width="1133"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td colspan="8" width="1133"&gt;
&lt;p&gt;DFU Test Cases and Sniffer log&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Test#&lt;/td&gt;
&lt;td&gt;Peripheral&lt;/td&gt;
&lt;td&gt;Central&lt;/td&gt;
&lt;td&gt;Conn Interval&lt;/td&gt;
&lt;td&gt;DFU App Size&lt;/td&gt;
&lt;td&gt;Observered Param&lt;/td&gt;
&lt;td&gt;DFU Time&lt;/td&gt;
&lt;td&gt;Sniffer Log File Name&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;1&lt;/td&gt;
&lt;td&gt;nRF52840 Chipset&lt;/td&gt;
&lt;td&gt;nRF52840 DevKit&lt;/td&gt;
&lt;td&gt;Conn. Interval = 30 msec&lt;/td&gt;
&lt;td&gt;241 KBytes&lt;/td&gt;
&lt;td&gt;PHY1M, Conn. Interval = 30 msec&lt;/td&gt;
&lt;td&gt;158 sec&lt;/td&gt;
&lt;td&gt;Test1_nRFDevKit.pcapng&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;2&lt;/td&gt;
&lt;td&gt;nRF52840 Chipset&lt;/td&gt;
&lt;td&gt;nRF52840 DevKit&lt;/td&gt;
&lt;td&gt;Conn. Interval = 7.5 msec&lt;/td&gt;
&lt;td&gt;241 KBytes&lt;/td&gt;
&lt;td&gt;PHY1M, Conn. Interval = 7.5 msec&lt;/td&gt;
&lt;td&gt;122 sec&lt;/td&gt;
&lt;td&gt;Test2_nRFDevKit_Set7p5ConnInt.pcapng&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;3&lt;/td&gt;
&lt;td&gt;nRF52840 Chipset&lt;/td&gt;
&lt;td&gt;iPhone 11&lt;/td&gt;
&lt;td&gt;&amp;nbsp;&lt;/td&gt;
&lt;td&gt;241 KBytes&lt;/td&gt;
&lt;td&gt;PHY2M, Conn. Interval = 90 msec&lt;/td&gt;
&lt;td&gt;174 sec&lt;/td&gt;
&lt;td&gt;Test3_iPhone11.pcapng&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;Thanks,&lt;/p&gt;
&lt;p&gt;Himansu&lt;/p&gt;
&lt;p&gt;&lt;a href="https://devzone.nordicsemi.com/cfs-file/__key/communityserver-discussions-components-files/4/Test3_5F00_iPhone11.pcapng"&gt;devzone.nordicsemi.com/.../Test3_5F00_iPhone11.pcapng&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="https://devzone.nordicsemi.com/cfs-file/__key/communityserver-discussions-components-files/4/Test2_5F00_nRFDevKit_5F00_Set7p5ConnInt.pcapng"&gt;devzone.nordicsemi.com/.../Test2_5F00_nRFDevKit_5F00_Set7p5ConnInt.pcapng&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="https://devzone.nordicsemi.com/cfs-file/__key/communityserver-discussions-components-files/4/Test1_5F00_nRFDevKit.pcapng"&gt;devzone.nordicsemi.com/.../Test1_5F00_nRFDevKit.pcapng&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: BLE DFU Speed difference between SDK14.2 and SDK15.3</title><link>https://devzone.nordicsemi.com/thread/263255?ContentTypeID=1</link><pubDate>Wed, 05 Aug 2020 13:52:05 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:e6dc5411-efbb-4cc7-ace5-47c08f5076a1</guid><dc:creator>Hung Bui</dc:creator><description>&lt;p&gt;Hi Sandip,&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Please try to get the actual connection interval when the DFU is transmitting. It&amp;#39;s the&amp;nbsp;p_ble_evt-&amp;gt;gap_evt.connected.conn_params. min_conn_interval value when you receive BLE_GAP_EVT_CONNECTED event inside&amp;nbsp;ble_evt_handler()&lt;/p&gt;
&lt;p&gt;Or you can capture a sniffer trace. It&amp;nbsp;gives more information with the sniffer trace.&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: BLE DFU Speed difference between SDK14.2 and SDK15.3</title><link>https://devzone.nordicsemi.com/thread/262962?ContentTypeID=1</link><pubDate>Tue, 04 Aug 2020 10:52:23 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:1523fc01-cafe-412f-96c7-a48eb49871d1</guid><dc:creator>SciTER Development Team</dc:creator><description>&lt;p&gt;Hung Bui&lt;/p&gt;
&lt;p&gt;Following is our connection parameter. Is there any wrong?&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;// &amp;lt;h&amp;gt; BLE DFU connection&lt;/p&gt;
&lt;p&gt;//==========================================================&lt;br /&gt;// &amp;lt;o&amp;gt; NRF_DFU_BLE_MIN_CONN_INTERVAL - Minimum connection interval (units). &lt;br /&gt;// &amp;lt;i&amp;gt; Minimum GAP connection interval, in 1.25 ms units.&lt;/p&gt;
&lt;p&gt;#ifndef NRF_DFU_BLE_MIN_CONN_INTERVAL&lt;br /&gt;#define NRF_DFU_BLE_MIN_CONN_INTERVAL 6 //12&lt;br /&gt;#endif&lt;/p&gt;
&lt;p&gt;// &amp;lt;o&amp;gt; NRF_DFU_BLE_MAX_CONN_INTERVAL - Maximum connection interval (units). &lt;br /&gt;// &amp;lt;i&amp;gt; Maximum GAP connection interval, in 1.25 ms units.&lt;/p&gt;
&lt;p&gt;#ifndef NRF_DFU_BLE_MAX_CONN_INTERVAL&lt;br /&gt;#define NRF_DFU_BLE_MAX_CONN_INTERVAL 80 //12&lt;br /&gt;#endif&lt;/p&gt;
&lt;p&gt;// &amp;lt;o&amp;gt; NRF_DFU_BLE_CONN_SUP_TIMEOUT_MS - Supervision timeout (ms). &lt;br /&gt;// &amp;lt;i&amp;gt; GAP connection supervision timeout, in milliseconds.&lt;/p&gt;
&lt;p&gt;#ifndef NRF_DFU_BLE_CONN_SUP_TIMEOUT_MS&lt;br /&gt;#define NRF_DFU_BLE_CONN_SUP_TIMEOUT_MS 4000 //6000&lt;br /&gt;#endif&lt;/p&gt;
&lt;p&gt;// &amp;lt;/h&amp;gt; &lt;br /&gt;//==========================================================&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Thanks,&lt;/p&gt;
&lt;p&gt;Sandip Divani&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: BLE DFU Speed difference between SDK14.2 and SDK15.3</title><link>https://devzone.nordicsemi.com/thread/261385?ContentTypeID=1</link><pubDate>Thu, 23 Jul 2020 13:48:14 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:8e5996d7-6874-4bb4-b960-da90703707e1</guid><dc:creator>Hung Bui</dc:creator><description>&lt;p&gt;Hi,&amp;nbsp;&lt;/p&gt;
&lt;p&gt;12 to 15 minutes is a lot.&amp;nbsp;&lt;br /&gt;There must be something wrong here. I suspect that the connection interval was set to too large.&amp;nbsp;&lt;br /&gt;Could you please check the connection interval when doing DFU ?&amp;nbsp;&lt;/p&gt;
&lt;p&gt;As &lt;a href="https://www.nordicsemi.com/Software-and-Tools/Development-Tools/nRF-Sniffer"&gt;sniffer trace&lt;/a&gt; could be useful to reveal what caused the long DFU.&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>