<?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>Understanding connection interval, nRF Sniffer and transfer speed</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/46902/understanding-connection-interval-nrf-sniffer-and-transfer-speed</link><description>Hi everyone, 
 
 I&amp;#39;m trying to understand how BLE connection interval works and why my long read is so slow. My slave is nrf51822 with Softdevice 130 v2 and nRF5 SDK v11, and my master is an Android smartphone. The default GATT_MTU_SIZE_DEFAULT is 23</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Thu, 16 May 2019 11:34:48 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/46902/understanding-connection-interval-nrf-sniffer-and-transfer-speed" /><item><title>RE: Understanding connection interval, nRF Sniffer and transfer speed</title><link>https://devzone.nordicsemi.com/thread/187520?ContentTypeID=1</link><pubDate>Thu, 16 May 2019 11:34:48 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:f9511d33-d4be-4709-acd8-3c5e1edc26d0</guid><dc:creator>Stian R&amp;#248;ed Hafskjold</dc:creator><description>&lt;p&gt;Are you requesting data to be sent every time you send a notification? If so, it will require two connection events. An then you will always get two empty packets because of how the RX/TX pair work.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Understanding connection interval, nRF Sniffer and transfer speed</title><link>https://devzone.nordicsemi.com/thread/186681?ContentTypeID=1</link><pubDate>Mon, 13 May 2019 11:54:54 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:36ca8361-fcb5-459f-8608-7911006031b1</guid><dc:creator>Burgers</dc:creator><description>&lt;p&gt;Hey Stian, thanks!&lt;/p&gt;
&lt;p&gt;I checked my code, and I&amp;#39;m using notifications,&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="c_cpp"&gt;hvx_param.type&amp;#160; &amp;#160; &amp;#160; = BLE_GATT_HVX_NOTIFICATION
hvx_param.p_data    = value;&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;where value is my buffer (486 bytes), and,&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="c_cpp"&gt;sd_ble_gatts_hvx(pressure_service-&amp;gt;conn_handle, &amp;amp;hvx_param)&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;I don&amp;#39;t know why I get the empty packets.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Understanding connection interval, nRF Sniffer and transfer speed</title><link>https://devzone.nordicsemi.com/thread/186666?ContentTypeID=1</link><pubDate>Mon, 13 May 2019 11:24:28 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:36a742c4-1352-46e7-acd8-14f55cd53c6b</guid><dc:creator>Stian R&amp;#248;ed Hafskjold</dc:creator><description>&lt;p&gt;So one connection interval consists of a RX and TX pair. Seen from the slave, the radio is receiving the request, then switches over to TX immediately. It has not processed the request yet, so sends an empty packet. Then the next connection interval the slave receives an empty packet from the master, and then sends the payload when switching over to TX. So yes doing it this way it requires two connection intervals to send the payload. However, when using notifications you do not have to wait for a request to send data. You just put all the data you want to send in the TX buffer and the slave will burst out the data every TX event.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>