<?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>BLE4 transfer speed slower on iPhone8/X than 5/6/7.</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/42624/ble4-transfer-speed-slower-on-iphone8-x-than-5-6-7</link><description>Hello- 
 Recently, we optimized our BLE4 transfer settings. With the same device, firmware, and payload, we get better transfer rates on iPhone5,6,7 than iPhone 8/X. On all systems the parameter settings requested by peripheral are accepted by iPhone</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Thu, 05 Dec 2019 19:38:50 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/42624/ble4-transfer-speed-slower-on-iphone8-x-than-5-6-7" /><item><title>RE: BLE4 transfer speed slower on iPhone8/X than 5/6/7.</title><link>https://devzone.nordicsemi.com/thread/224029?ContentTypeID=1</link><pubDate>Thu, 05 Dec 2019 19:38:50 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:499c35b5-5335-4c56-aef2-0f18c2b3938e</guid><dc:creator>mfdevzone</dc:creator><description>&lt;p&gt;Replying to my own post, even though it&amp;#39;s very old.&lt;/p&gt;
&lt;p&gt;Short version: Nothing to see here, expected behavior as I understand it. Anecdotally, earlier iphones seem to allow you to squeeze the throughput harder, while newer phones will ACK the param change request though you dont actually see as much of a boost. With newer phones, just use DLE (data length extension). &lt;/p&gt;
&lt;p&gt;Longer version:&lt;/p&gt;
&lt;p&gt;I found this very helpful: &lt;a href="https://punchthrough.com/maximizing-ble-throughput-on-ios-and-android/"&gt;https://punchthrough.com/maximizing-ble-throughput-on-ios-and-android/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;It turns out we DID NOT need to bump the SDK to get DLE working, and with some minor tweaks we were able to get iphone5s/6/7 up to 10-12KB/s and able to get iPhone8 and above all the way to 50KB/s.&lt;/p&gt;
&lt;p&gt;&lt;a href="https://devzone.nordicsemi.com/members/aryan"&gt;Susheel Nuguru&lt;/a&gt;&amp;#39;s recommendation to actually use the sniffer is a good one, though I did not need to go that far to fix my own problem. Only so much you can infer from aggregate measurements. When all else fails, try measuring ;)&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: BLE4 transfer speed slower on iPhone8/X than 5/6/7.</title><link>https://devzone.nordicsemi.com/thread/167590?ContentTypeID=1</link><pubDate>Thu, 24 Jan 2019 10:15:27 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:71b2e5b2-a20f-4784-9e79-188c1f4bd29b</guid><dc:creator>Susheel Nuguru</dc:creator><description>&lt;p&gt;I think the best is to get the sniffer trace for&amp;nbsp;&lt;span&gt;&amp;nbsp;iPhone7&amp;nbsp; and iPhone8/X and compare the procedures and their differences. Most of the time it is the phone that is deciding on the connection parameters. The faster connection interval has always been meant for HID devices, so in the later versions of some phones, they might have limited the number of packets you can send at faster interval. Nevertheless, these all are theories, and it should all be revealed once you do a detailed analysis of the sniffer traces between those two phones.&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: BLE4 transfer speed slower on iPhone8/X than 5/6/7.</title><link>https://devzone.nordicsemi.com/thread/166377?ContentTypeID=1</link><pubDate>Thu, 17 Jan 2019 22:18:50 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:e270889f-3273-4f2d-b6ff-876e94706b22</guid><dc:creator>awneil</dc:creator><description>&lt;p&gt;There goes that idea, then.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: BLE4 transfer speed slower on iPhone8/X than 5/6/7.</title><link>https://devzone.nordicsemi.com/thread/166375?ContentTypeID=1</link><pubDate>Thu, 17 Jan 2019 22:08:30 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:89c7ce1a-f1b7-42b4-9f41-9a6e9e506d08</guid><dc:creator>mfdevzone</dc:creator><description>&lt;p&gt;Thanks for the great questions @awneil. I will edit the original text to add this detail back in to the main ticket. The reason I believe the GAP param update request is acknowledged is because one of my BLE message handlers handles this message:&lt;/p&gt;
&lt;p&gt;case BLE_GAP_EVT_CONN_PARAM_UPDATE:&lt;/p&gt;
&lt;p&gt;//and in this message I check (and report over UART) this result:&lt;/p&gt;
&lt;p&gt;p_ble_evt-&amp;gt;evt.gap_evt.params.conn_param_update.conn_params.max_conn_interval * 125 / 100);&lt;/p&gt;
&lt;p&gt;This reports as 15ms for both iPhone5/6/7 where I see the speedboost and on 8/X, where I do not.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: BLE4 transfer speed slower on iPhone8/X than 5/6/7.</title><link>https://devzone.nordicsemi.com/thread/166183?ContentTypeID=1</link><pubDate>Thu, 17 Jan 2019 10:30:39 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:15887948-ed8c-4927-8294-d1d2285a4435</guid><dc:creator>awneil</dc:creator><description>&lt;p&gt;Do you mean that the phone has actually&amp;nbsp;granted&amp;nbsp;the requested parameters?&lt;/p&gt;
&lt;p&gt;How have you demonstrated that?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: BLE4 transfer speed slower on iPhone8/X than 5/6/7.</title><link>https://devzone.nordicsemi.com/thread/166100?ContentTypeID=1</link><pubDate>Wed, 16 Jan 2019 22:41:32 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:1135308e-921a-45f2-9ec4-6de099a51b87</guid><dc:creator>mfdevzone</dc:creator><description>&lt;p&gt;In all systems the parameter change requests are accepted.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: BLE4 transfer speed slower on iPhone8/X than 5/6/7.</title><link>https://devzone.nordicsemi.com/thread/166097?ContentTypeID=1</link><pubDate>Wed, 16 Jan 2019 21:46:33 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:fce88ad6-f7d5-4615-b9ca-0f69e6d43a83</guid><dc:creator>awneil</dc:creator><description>[quote userid="18847" url="~/f/nordic-q-a/42624/ble4-transfer-speed-slower-on-iphone8-x-than-5-6-7"]we optimized our BLE4 transfer settings[/quote]
&lt;p&gt;You can only &lt;em&gt;&lt;strong&gt;request&lt;/strong&gt; &lt;/em&gt;these parameters - the phone is &lt;strong&gt;not&lt;/strong&gt; bound to grant them!&lt;/p&gt;
&lt;p&gt;So you need to check what settings are actually being granted.&lt;/p&gt;
[quote userid="18847" url="~/f/nordic-q-a/42624/ble4-transfer-speed-slower-on-iphone8-x-than-5-6-7"]Has anyone seen this problem?[/quote]
&lt;p&gt;On Android - Yes!&lt;/p&gt;
&lt;p&gt;Even the exact same phone can give different settings on subsequent connections - so you need to also try disconnecting &amp;amp; reconnecting.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>