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

What is the maximum size of data can be transferred over BLE?

Hi,

I am trying to send stream of data over BLE. I am using nRF52 development kit and in that ble_app_uart code is running. I want to send continuous data to the UART and then it should be send over BLE communication. I have checked the data rate by sending bulk of data which is 20 Bytes data in a frame. So each of the data is about 20Bytes only (20Bytes then new line then 20Bytes- this sequence continues). In this case I am not getting any issue.

While sending without newline I can send upto 220 bytes at a time. If it is more than that BLE getting disconnected from the connected device.

How to overcome this issue, if I am sending continuous data(may be around 200KB of data at instance). How to handle large amount of incoming data?

How to handle the BLE disconnecting issue in case of large incoming data?

Parents
  • There should be no limit of the amount of data, but it is indeed in throughput (amount of data per time frame). So I suspect you have some problem in flow management of your data through NUS Tx/Rx "pipes" and the limit of 220B is just artifact of e.g. running out of Tx buffers or loosing some context/overflow in your APP code. From what I see Nordic is using this in their BT 4.2/5.0 throughput demos and they transport large chunks of data (1MB) without visible problems - see here.

  • I have seen the demo. But what is the size of payload?. In case of UART_BLE communication what is the maximum data size to be transferred?

    Is there any defined solution by using buffer sequence to handle bulk data?. Since I have done several tests using ble_app_uart code but I could not send the large amount of data. In my testing I am trying to send Operating system's booting log's over the BLE. So the actual data is bigger in size. In this case only BLE gets disconnected from the BLE sniffer dongle.

Reply
  • I have seen the demo. But what is the size of payload?. In case of UART_BLE communication what is the maximum data size to be transferred?

    Is there any defined solution by using buffer sequence to handle bulk data?. Since I have done several tests using ble_app_uart code but I could not send the large amount of data. In my testing I am trying to send Operating system's booting log's over the BLE. So the actual data is bigger in size. In this case only BLE gets disconnected from the BLE sniffer dongle.

Children
No Data
Related