This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

Throughput of Nrf52832 with MTU 247

I am going to find out an ideal throughput of NRF52832. And my environment is NRF52832/S332/MTU 247/connect interval 20ms.

Finally, i got a maximum value about 23Kb/s. I receive data and record timestamp from PC tools(programmed by C# to receive Nordic nus service notification data), when data transmission done,calculate the transmission speed.

Still confused as 23Kb/s is much lower than the target and I think i did everything in right way.

I found that i have only send one packet per connect interval,It's supposed to be more than one.

I use API: ble_nus_string_send to keep sending 244 bytes data until i get error return. Then I wait for BLE_GATTS_EVT_HVN_TX_COMPLETE to send data again. And I found every function call of ble_nus_string_send, i will get corresponding BLE_GATTS_EVT_HVN_TX_COMPLETE.

In my opnion, or the info i have got, for per connect interval, more than one packets can be transmitted(IOS:4, Android:6).

Follows are my questions:

1.Based on my environment, what is the actual transmission speed of Nordic Nus notification?

2.Is there any detail i forgot?  What should i do to improve the speed to more than 40Kb/s.

Parents Reply
  • Hi, thank you very much.

    280 kbps mean 280 * 1000 / 8 / 1.024 = 34.18 KB/s?

    My experiment speed is 23KB/s. Sorry for my error writing 23kb/s.

    MTU 247,valid user data 244, I expect 4~6 packets per connection interval, means speed can be more than 47KB/s. Is anything wrong with my understanding?

    My connection interval is 20ms and throughput is 23KB/s. It seems like only 2 packets sent per connection interval. 1000/20 * 2 * 244bytes / 1024 = 23.8KB/s. Do you have any ideas to improve the bandwidth to let me send more packets per connection interval ?

Children
Related