cancel
Showing results for 
Search instead for 
Did you mean: 

BlueNRG BLE Throughput

dudul
Associate
Posted on December 13, 2016 at 12:50

Hi,

What is the maximum throughput one can achieve with either BlueNRG-MS or BlueNRG-1?

I read that some BLE ICs has a chipset limitation on the number of packets transmitted in a single connection event (e.g., cannot handle more than 6 packets per connection event). Is there a similar limitation in BlueNRG-MS or BlueNRG-1?

Thanks.

#throughput #bluenrg-1 #bluenrg-ms #ble #bluenrg
10 REPLIES 10
Nick Ushakov
Associate II
Posted on December 13, 2016 at 13:30

With regard BlueNRG-MS (Bluetooth 4.0 and Bluetooth 4.1)

https://atmosphere.anaren.com/wiki/Data_rates_using_BLE

.

At the expense of BlueNRG-1, i can not be sure, because is a Bluetooth 4.2, data transfer has been

http://www.semiconductorstore.com/blog/2015/BLE-4-2-vs-BLE-4-1/1548

.
Posted on December 14, 2016 at 06:07

Thank you Nick.

In the article you mentioned it says that: '

According to the Bluetooth specification, the maximum packets per connection interval is 6'. However, I could not find this in Bluetooth Core Specification V4.1 Vol 6. Furthermore, according to the specification (Vol 6, Part B, Section 4.5.3), the transmitWindowSize parameter can be up to 10ms, which is much longer than 6 BLE V4.1 packets. Am I missing something here? Even if there is such limitation, concerning specifically the BlueNRG-MS and BlueNRG-1, how many packets per connection interval can be transmitted? 4? 6?

Best regards.

Posted on December 14, 2016 at 13:17

I apologize for the inaccuracy of the article, but I am not the author of this article.

Personally, my observation, I have 2 phones Nexus6 and Iphone5S. Iphone5S transmits 6 packets per connection interval, the Nexus6 transmits 4 packets per interval.

Possibly, the number of packets per interval connection depends on the hardware implementation.

Also, I think it will be interesting to

https://punchthrough.com/blog/posts/maximizing-ble-throughput-on-ios-and-android

. (I am not the author)
Keith Folske
Associate II
Posted on March 07, 2017 at 01:15

The number of packets allowed per connection interval is typically limited by the mobile OS.  Apple limits it to 6.  Various Android hardware and software combinations have various different limits.  In general, the more expensive the Android device, the more packets per interval I have seen.

grzegorz
Associate III
Posted on March 15, 2017 at 01:39

I got around 150 bytes/second.

Posted on March 16, 2017 at 10:48

Dear customers,

the BluNRG device has not any limitation on the number of packets transmitted in a single connection event, the limitation is due to the peer device.

For example, an Android smartphone cannot handle more than 6 packets per connection event.

The maximum throughput one can achive using two BlueNRG devices is about 220 kbps (unidirectional - only server notification to clien side).

Inside BlueNRG-1 package there is a Throughput demo that shows how to implement a simple throughput test between two BlueNRG devices.

Regards,

Graziella Marchese
Posted on March 16, 2017 at 16:55

That is uncommonly slow and not representative of typical throughput.

Posted on May 11, 2017 at 09:29

Dear Graziella,

I'm studing the sample application that you suggested and

noticed a behavior of witch can not find the cause. Understanding the reason would certainly be useful for teaching purposes.

For my tests I'm using two Nucleo L053R8 with IDB05A1 boards and Keil v. 5.23.

By loading the binary files provided in the project (from STM32CubeExpansion_BLE1_V2.8.0), I get a throughput of about 210 kbps and no packets loss.

By compiling the source files instead, obviously without appending any changes, I get a throughput about four times lower and many packet loss in each transmission.

T

ried to modify the compiler optimization level (from level 3, default, to level 0) with limited (but not null) performance effects (about 53 kbps vs. 43 kbps).

Do you have any idea about what might be the source of the anomaly?

BR,

Danilo

Posted on December 18, 2017 at 15:28

That's the speed for indicate. For notify I get around 1,1 kB/s.