<?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>Improve BLE throughput in react-native-ble-plx mobile app</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/32449/improve-ble-throughput-in-react-native-ble-plx-mobile-app</link><description>We are developing a React Native mobile application for iOS and Android, making use of the react-native-ble-plx library to interface with the BLE UART service from the examples as a communication method. We transmit the contents of a csv in 24B chunks</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Mon, 19 Mar 2018 13:43:47 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/32449/improve-ble-throughput-in-react-native-ble-plx-mobile-app" /><item><title>RE: Improve BLE throughput in react-native-ble-plx mobile app</title><link>https://devzone.nordicsemi.com/thread/125008?ContentTypeID=1</link><pubDate>Mon, 19 Mar 2018 13:43:47 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:39f523f6-5670-4a29-b39d-3aa75a864be6</guid><dc:creator>MartinBL</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;There are several factors that determine the effective throughput. Some of them depends on the app, others on the BLE stack and chipset. Here is a good blog post that sums it up:&amp;nbsp;Bluetooth 5 speed: &lt;a href="https://www.novelbits.io/bluetooth-5-speed-maximum-throughput/"&gt;How to achieve maximum throughput for your BLE application&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;The three most prominent factors are the MTU size, connection intervals, Data length extension, and the 2Mbps mode. Some of this is handle behind the scenes by the nRF Connect app and/or in the&amp;nbsp;FW in our SDK. After skimming through the react-native-ble-plx documentation there seems to be little you can do to tweak these factors in the API. The only tweakable thing seems to be the MTU size, and the rest is left to the underlying BLE stack. So if it is possible I would advise you to try increasing the MTU size. Don&amp;#39;t expect any radical increases in throughput though, because increasing MTU isn&amp;#39;t that effective unless you can enable data length extension and adjust connection interval accordingly.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Note also that different phones and OSs ship with different chipsets and BLE stacks, and different chipsets and stacks don&amp;#39;t necessarily support all the features required for optimal throughputs. So one can never expect to get the same throughput on all devices, no matter how much you optimize your device firmware and mobile application.&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>