<?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>Sending large file with BLE notifications: throughput seems limited</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/90306/sending-large-file-with-ble-notifications-throughput-seems-limited</link><description>Hello, 
 I am trying to send a large file through BLE from an nRF52811 to a Raspberry Pi 4. File size is about 77 kilobytes. 
 Here is BLE setup on the nRF side: 
 
 Custom profile 
 Data characteristic has a 509 bytes length 
 Notifications enabled </description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Tue, 16 Aug 2022 12:40:08 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/90306/sending-large-file-with-ble-notifications-throughput-seems-limited" /><item><title>RE: Sending large file with BLE notifications: throughput seems limited</title><link>https://devzone.nordicsemi.com/thread/381782?ContentTypeID=1</link><pubDate>Tue, 16 Aug 2022 12:40:08 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:229420cf-ac08-47c6-8064-7137ef5f9bd1</guid><dc:creator>Kenneth</dc:creator><description>&lt;p&gt;If you compile in SES you should for instance see something like:&lt;br /&gt;&lt;img style="max-height:240px;max-width:320px;" src="https://devzone.nordicsemi.com/resized-image/__size/640x480/__key/communityserver-discussions-components-files/4/4466.pastedimage1660653570864v1.png" alt=" " /&gt;&lt;/p&gt;
&lt;p&gt;then, it depends on whether you also have a bootloader at the end of flash how much flash will be availble for FDS.&lt;/p&gt;
&lt;p&gt;Typically the *.map file in your build output should give information about RAM and code usage, look for &amp;#39;Image component sizes&amp;#39; for instance if compiled with Keil.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Kenneth&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Sending large file with BLE notifications: throughput seems limited</title><link>https://devzone.nordicsemi.com/thread/381096?ContentTypeID=1</link><pubDate>Thu, 11 Aug 2022 06:49:51 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:43d81e60-966c-41d7-bdf6-721a0516423c</guid><dc:creator>JuanHG</dc:creator><description>&lt;p&gt;Hi Kenneth,&lt;/p&gt;
&lt;p&gt;Do you have an idea of how I may solve the described issue ?&lt;/p&gt;
&lt;p&gt;Thanks in advance&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;div id="ConnectiveDocSignExtentionInstalled" data-extension-version="1.0.4"&gt;&lt;/div&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Sending large file with BLE notifications: throughput seems limited</title><link>https://devzone.nordicsemi.com/thread/378670?ContentTypeID=1</link><pubDate>Tue, 26 Jul 2022 10:11:51 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:8adfb339-e748-4f0a-b117-35afeeee5d7a</guid><dc:creator>JuanHG</dc:creator><description>&lt;p&gt;Hi Kenneth,&lt;/p&gt;
&lt;p&gt;Thanks a lot for your answer !&lt;/p&gt;
&lt;p&gt;I have succeeded in using the BLE sniffer and thus saw that notification payloads are indeed split into multiple PHY packets.&lt;/p&gt;
&lt;p&gt;I was able to switch to S113 but unfortunately this leads to the following runtime error because of lack of flash:&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;&amp;lt;error&amp;gt; peer_manager_pds: Could not initialize flash storage. fds_init() returned 0x860A.
&amp;lt;error&amp;gt; peer_manager: pm_init failed because pds_init() returned NRF_ERROR_STORAGE_FULL.
&amp;lt;error&amp;gt; app: Fatal error
&amp;lt;warning&amp;gt; app: System reset&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;How can I know how much data I need to save in my code to make the peer manager have enough memory available ?&lt;/p&gt;
&lt;p&gt;Thanks in advance&lt;/p&gt;
&lt;p&gt;Best regards&lt;/p&gt;
&lt;div id="ConnectiveDocSignExtentionInstalled" data-extension-version="1.0.4"&gt;&lt;/div&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Sending large file with BLE notifications: throughput seems limited</title><link>https://devzone.nordicsemi.com/thread/378526?ContentTypeID=1</link><pubDate>Mon, 25 Jul 2022 11:28:51 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:2974410e-89c6-42a5-83ed-589fcc367827</guid><dc:creator>Kenneth</dc:creator><description>&lt;p&gt;Hello,&lt;/p&gt;
&lt;p&gt;An on-air sniffer log, e.g. using &lt;a href="https://www.nordicsemi.com/Products/Development-tools/nrf-sniffer-for-bluetooth-le"&gt;nRF sniffer for BLE&lt;/a&gt; could be helpful to understand what may be limiting the throughput in specific.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;There is a nice blogpost here that describe how to improve throughput:&lt;br /&gt;&lt;a href="https://novelbits.io/bluetooth-5-speed-maximum-throughput/"&gt;https://novelbits.io/bluetooth-5-speed-maximum-throughput/&lt;/a&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Have in mind that S112 does not support Data Length Extension (DLE), which means the maximum packet that can be sent on-air is only 23bytes (so the ~500byte MTU will be split into several 23byte on-air packets), this will decrease the throughput a lot. I recommend to consider the S113 that support up to 244bytes of data in each packet.&lt;/p&gt;
&lt;p&gt;Best regards,&lt;br /&gt;Kenneth&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>