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

nRF528XX Throughput Example - Latest SDK Update?

Is there a planned update to the following repository, to bring it up to the latest version of the SDK?

https://github.com/NordicPlayground/nrf528xx-ble-throughput-demo.git

I've got an nRF52 DK development kit and I'm trying to figure out what the maximum throughput I can achieve is. At the moment, I'm achieving about 0.30KB/s which is pretty woeful really and although I'm using the Adafruit Bluefruit52 library (targets the later versions of the SDK and SoftDevice 6.1.1) plus the Arduino IDE, I would certainly expect to see much much much faster rates than this.

Parents
  • Hi Kevin

    No, there are no plans to update this repo as it's not a demo that is being used actively anymore.

    Have you checked out the ble_app_att_mtu_throughput example in the SDK?

    The demo you linked to is based on this example, but the SDK example is a part of the SDK and will therefore be updated with each new release:
    \nRF5_SDK_15.2.0_9412b96\examples\ble_central_and_peripheral\experimental\ble_app_att_mtu_throughput

    I would recommend you take a look at that and see if it will be sufficient. 

    Best regards
    Torbjørn

Reply
  • Hi Kevin

    No, there are no plans to update this repo as it's not a demo that is being used actively anymore.

    Have you checked out the ble_app_att_mtu_throughput example in the SDK?

    The demo you linked to is based on this example, but the SDK example is a part of the SDK and will therefore be updated with each new release:
    \nRF5_SDK_15.2.0_9412b96\examples\ble_central_and_peripheral\experimental\ble_app_att_mtu_throughput

    I would recommend you take a look at that and see if it will be sufficient. 

    Best regards
    Torbjørn

Children
  • Hello

    Thanks for your reply.

    Unfortunately I did not see that example - I am only developing for a peripheral so I didn't venture into any of the "central" folders.

    I will give this a try.

    Would you agree that I should be able to achieve a much faster data rate?

    Kevin

  • Hi Kevin

    Yes, with our SDK and SoftDevice you should be able to reach much higher speeds. Up to about 700kbps in 1Mbps mode, and up to 1360kbps in the 2Mbps high speed mode. 

    But if you don't use Nordic devices on both sides, or you use some third party Bluetooth stack (like the Bluefruit library), then there might be other limitations that are outside our control. 

    One thing you should double check is your connection parameters and MTU settings. In general you want a small connection interval and a large MTU to ensure the best data throughput. 

    Best regards
    Torbjørn

  • Hi Torbjørn,

    Thanks for confirming the expected transfer speeds.

    One side is an nRF52832 and the other side is either going to be an Android device or an iOS device.

    Obviously, I appreciate that the iOS devices prefer longer connection intervals than the Android devices but I'm hoping that even with a longer connection interval, I can achieve a much faster rate.

    Thanks,

    Kevin

  • Hi Kevin

    To achieve higher transfer rates on phones it is important to use the largest MTU available. 
    As far as I remember iOS supports the maximum MTU size that BLE allows, and the same goes for many of the Android phones. 

    In terms of connection interval you can't go lower than 15ms on iOS, but this setting still provides decent transfer speeds, and should work on Android phones also. 

    When using one of our Bluetooth 5 rated SoftDevices you can also take advantage of the 2Mbps high speed mode, which provides a good speed boost on phones that support it (such as the latest Apple and Samsung phones). 

    In all cases though the speeds will be considerably lower than the absolute maximum, with the exception of a couple of phones (like the Samsung Galaxy S8 or S9) that allow you to get pretty close. 

    Best regards
    Torbjørn

Related