<?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 increase throughput of TCP connection?</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/36656/how-to-increase-throughput-of-tcp-connection</link><description>Hi, 
 I used IOT TCP Server example of nRF5 SDK(Ver.15.0) to complete the communication 
 between the Raspberry Pi and the PCA10040. 
 But I found that the communication speed is too slow，only about 1000 bytes per second. 
 Far less than the optimized</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Thu, 02 Aug 2018 14:24:26 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/36656/how-to-increase-throughput-of-tcp-connection" /><item><title>RE: How to increase throughput of TCP connection?</title><link>https://devzone.nordicsemi.com/thread/142654?ContentTypeID=1</link><pubDate>Thu, 02 Aug 2018 14:24:26 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:04b19b02-e341-491d-9937-443887fb8be9</guid><dc:creator>bjorn-spockeli</dc:creator><description>&lt;p&gt;HI Michael,&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Q1: No, it just means that you cannot perform advertising on the 2M PHY, you can advertise and initiate a connection using the 1M PHY and then switch to the 2M PHY once the connection is established.&lt;/p&gt;
&lt;p&gt;Q2: It is possible, see Q1, but this at the GAP layer of the Bluetooth Stack, the IoT examples&amp;nbsp;sets up a&amp;nbsp;&amp;nbsp;L2CAP channel layer, hence we cannot use any of the GAP related APIs. This also explains why&amp;nbsp;increasing the&amp;nbsp; NRF_SDH_BLE_GATT_MAX_MTU_SIZE did not lead to any increased throughput as GATT is also above the L2CAP layer.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Q3: As far as I can see there are no L2CAP functions in the SoftDevice API that allows you to select which PHY layer youre using. I will have to ask the IoT SDK devs regarding this&lt;/p&gt;
&lt;p&gt;Meanwhile, could you try to increase the payload sizes used by the IPSP service, i.e.&amp;nbsp; BLE_IPSP_TX_MPS and the&amp;nbsp;BLE_IPSP_RX_MPS in ble_ipsp.h?&lt;/p&gt;
&lt;p&gt;Best regards&lt;/p&gt;
&lt;p&gt;Bjørn&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How to increase throughput of TCP connection?</title><link>https://devzone.nordicsemi.com/thread/141839?ContentTypeID=1</link><pubDate>Mon, 30 Jul 2018 07:59:07 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:1e29094e-6973-43e5-9a1e-e1ccfd3b53fc</guid><dc:creator>michael lee</dc:creator><description>&lt;p&gt;Hi,Bjorn&lt;br /&gt;Thank you for your reply！&lt;br /&gt;I tried to set NRF_SDH_BLE_GATT_MAX_MTU_SIZE=251 and MAX_CONN_INTERVAL=6(7.5ms)，&lt;br /&gt;and found no improvement of communication speed. And I tried to change the Border Router(Pi)&lt;br /&gt;parameters of BLE connection, the communication speed increased to more than 5K bytes per&lt;br /&gt;second. But still less than the optimized NORDIC UART with about 8K bytes per second.&lt;br /&gt;In the TCP Server example, I found the BLE_GAP_PHY_2MBPS can&amp;#39;t be used according to&lt;br /&gt;the following code comment of struct ble_gap_adv_params_t in ble_gap.h:&lt;/p&gt;
&lt;p style="padding-left:30px;"&gt;uint8_t primary_phy;&lt;br /&gt;/**&amp;lt; Indicates the PHY on which the primary advertising channel packets&lt;br /&gt;are transmitted. If set to @ref BLE_GAP_PHY_AUTO, @ref BLE_GAP_PHY_1MBPS&lt;br /&gt;will be used.The only supported value by this SoftDevice is @ref BLE_GAP_PHY_1MBPS. */&lt;/p&gt;
&lt;p&gt;I want to get higher communication speed, so I want to discuss the following questions.&lt;br /&gt;&amp;nbsp; &amp;nbsp; 1. Does this mean that BLE 6LoWPAN can only work at 1M PHY?&lt;br /&gt;&amp;nbsp; &amp;nbsp; 2. Why can&amp;#39;t set it to 2M PHY, is it a specification limit, or a softdvice limit?&lt;br /&gt;&amp;nbsp; &amp;nbsp; 3. Is there a way to set it to 2M PHY?&lt;/p&gt;
&lt;p&gt;Best regards&lt;br /&gt;Michael&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How to increase throughput of TCP connection?</title><link>https://devzone.nordicsemi.com/thread/141383?ContentTypeID=1</link><pubDate>Wed, 25 Jul 2018 15:18:24 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:8d82f271-0172-46ab-9207-facdb4baabec</guid><dc:creator>bjorn-spockeli</dc:creator><description>&lt;p&gt;What happens if you try to increase the&amp;nbsp;NRF_SDH_BLE_GATT_MAX_MTU_SIZE in sdk_config.h to something larger than 23, e.g. 46? Do you see an improvement then? You could also try to reduce the&amp;nbsp;MAX_CONN_INTERVAL to lower the connection interval.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Best regards&lt;/p&gt;
&lt;p&gt;Bjørn&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>