<?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>How to resolve packet drops during large data transfer?</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/79394/how-to-resolve-packet-drops-during-large-data-transfer</link><description>Hi there, 
 I need to transmit 33995520 bytes from nrf52 peripheral device to a Windows/Android device. Currently it takes about 13 to 14 minutes to complete the data transfer with some packet drops. My connection parameters are as follows- 
 
 
 
 Overall</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Thu, 23 Sep 2021 12:49:48 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/79394/how-to-resolve-packet-drops-during-large-data-transfer" /><item><title>RE: How to resolve packet drops during large data transfer?</title><link>https://devzone.nordicsemi.com/thread/330857?ContentTypeID=1</link><pubDate>Thu, 23 Sep 2021 12:49:48 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:ebb71c1a-6227-4600-8eba-796813640457</guid><dc:creator>Simonr</dc:creator><description>&lt;p&gt;Hi&lt;/p&gt;
&lt;p&gt;This is described in the&lt;a href="https://infocenter.nordicsemi.com/topic/sdk_nrf5_v17.1.0/lib_dfu_transport_ble.html"&gt; DFU BLE module&lt;/a&gt;. The&amp;nbsp;transfer itself is described in detail in the message sequence chart there as well. Basically, they&amp;#39;re using the secure DFU service where the DFU controller check all returned values and restarts the transfer if they differ from the expected values.&lt;/p&gt;
&lt;p&gt;Best regards,&lt;/p&gt;
&lt;p&gt;Simon&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How to resolve packet drops during large data transfer?</title><link>https://devzone.nordicsemi.com/thread/330725?ContentTypeID=1</link><pubDate>Wed, 22 Sep 2021 20:19:35 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:82c7f964-cf0e-40a5-a77a-6f729b4b2341</guid><dc:creator>bscdb</dc:creator><description>&lt;p&gt;&lt;span&gt;I&amp;#39;m wondering how does the firmware update over ble without any packet drops?&amp;nbsp;How were you able to achieve that with the dfu service&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;?&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How to resolve packet drops during large data transfer?</title><link>https://devzone.nordicsemi.com/thread/329635?ContentTypeID=1</link><pubDate>Wed, 15 Sep 2021 13:16:18 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:43c30014-c125-4507-83d9-06831107d590</guid><dc:creator>Simonr</dc:creator><description>&lt;p&gt;The OTS example is located in &lt;strong&gt;&amp;lt;SDK_FOLDER&amp;gt;\examples\ble_peripheral\experimental\ble_app_ots&lt;/strong&gt;.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;I&amp;#39;m afraid nothing else comes to mind. Making sure the TX_COMPLETE events should be eliminate the lost packets as far as I know. You can try to sniff the connection with I.E. the &lt;a href="https://infocenter.nordicsemi.com/topic/ug_sniffer_ble/UG/sniffer_ble/intro.html"&gt;nRF Sniffer&lt;/a&gt; so we can see what&amp;#39;s going on over the air. That way we can see if they&amp;#39;re lost at the receiving end or if they&amp;#39;re not sent at all.&lt;/p&gt;
&lt;p&gt;Best regards,&lt;/p&gt;
&lt;p&gt;Simon&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How to resolve packet drops during large data transfer?</title><link>https://devzone.nordicsemi.com/thread/329293?ContentTypeID=1</link><pubDate>Tue, 14 Sep 2021 03:08:07 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:f5a30b11-5f1c-4280-83dd-451afc891a7a</guid><dc:creator>bscdb</dc:creator><description>&lt;p&gt;Can you point me to the location of ots example?&lt;br /&gt;&lt;br /&gt;I thought I saw some improvement but it was a false alarm. I&amp;#39;m losing around 6-7 packets. Anything else I should try?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How to resolve packet drops during large data transfer?</title><link>https://devzone.nordicsemi.com/thread/328988?ContentTypeID=1</link><pubDate>Fri, 10 Sep 2021 10:27:13 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:727fdb34-1e49-4dea-b877-b7016ccded42</guid><dc:creator>Simonr</dc:creator><description>&lt;p&gt;Yes, the OTS should be fast, and is also available in SDK v16.0.0. Please note that it is an experimental example project, and thus is more likely to contain bugs than other examples due to the limited testing it&amp;#39;s undergone.&lt;/p&gt;
&lt;p&gt;Can you clarify what you mean by &amp;quot;some improvement&amp;quot;? How many packets are you missing?&lt;/p&gt;
&lt;p&gt;Best regards,&lt;/p&gt;
&lt;p&gt;Simon&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How to resolve packet drops during large data transfer?</title><link>https://devzone.nordicsemi.com/thread/328688?ContentTypeID=1</link><pubDate>Thu, 09 Sep 2021 03:28:58 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:1444fb34-9499-4d10-a40d-e14e59b9661b</guid><dc:creator>bscdb</dc:creator><description>&lt;p&gt;Is the OTS fast and reliable? I&amp;#39;m using SDK 16, can I use OTS with SDK 16?&lt;br /&gt;&lt;br /&gt;Random packets are dropped. As per your advice, I&amp;#39;m checking for TX_COMPLETE after sending a packet and I see some improvement.&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How to resolve packet drops during large data transfer?</title><link>https://devzone.nordicsemi.com/thread/328606?ContentTypeID=1</link><pubDate>Wed, 08 Sep 2021 12:39:29 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:e9140a86-147c-41b3-9834-e0d84a0a06ef</guid><dc:creator>Simonr</dc:creator><description>&lt;p&gt;Hi&lt;/p&gt;
&lt;p&gt;Have you checked out the &lt;a href="https://infocenter.nordicsemi.com/topic/sdk_nrf5_v17.0.2/ble_sdk_app_ots.html"&gt;Object transfer service&lt;/a&gt; example we have available in the SDK, which is made specifically to transfer larger files safely over established L2CAP channel(s), with an event triggering on the server-side when the write is complete.&lt;/p&gt;
&lt;p&gt;Regarding the lost packets you&amp;#39;re seeing. Is this consistent or seemingly random? Do you see the lost ones come at the end of the transaction for example? It seems very strange that the checks would cause you to lose more data. The only thing that would make sense there would be that you start sending before the TX complete event is triggered. Do you wait for the TX_COMPLETE event before sending the next packet in these cases, or not?&lt;/p&gt;
&lt;p&gt;Best regards,&lt;/p&gt;
&lt;p&gt;Simon&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>