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

nRF52 sending large bulk data

I have read these the following posts:

devzone.nordicsemi.com/.../ devzone.nordicsemi.com/.../

But, most of the answers are quite old. I am wondering if the solution to send multiple notifications is still an valid answer.

Thank you.

Parents
  • Hi Jack,

    Short answer is YES.

    Long answer follows:

    • If you want to use BT LE and at the same time being interoperable with platforms such as Android, iOS, Windows etc. then you have almost no other choice then to deploy application on top of GATT layer (so it will be using GATT Server or GATT Client role).
    • Then to optimize throughput you want to use WRITE without response method from GATT Client side and VALUE NOTIFICATION (HVX) from GATT Server side.
    • And in case that your data could be in principal larger then (ATT_MTU - 3) size you will need to develop some kind of fragmentation/reassembly protocol on top of these GATT methods (note that default ATT_MTU size is 23 bytes).
    • If you want to see some practical examples and throughput numbers then please download latest S13x SoftDevice Specification v3.0 and refer to chapter 18 (there aren't all possible combinations but these values illustrate both "theoretical" and "practical" limits very well).

    Cheers Jan

  • I just implemented mine following this example devzone.nordicsemi.com/.../ Jack - have you tried this one?

    I don't update my 'last synchronized' pointer until it all goes through, that way it ends up starting over if it gets interrupted. (I may change that and have it start where it left off, idk yet) I will probably also implement a way for the app/client to ask for prior data, just in case something goes awry on the app side.

Reply Children
No Data
Related