This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts
This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

BLE TX buffer overflow

Hi,

I want to send a continuous stream of data very quickly into the nRF51 through SPI and then dispatching it to a smartphone via BLE.

However I keep getting BLE no buffer error. What is the quickest way to empty the BLE TX Buffer?

Thanks

Edit: I've forgotten to add that I have tried emptying the buffer by waiting for ble tx complete. However by doing that I filled up a circular buffer that I had to store the data from SPI.

  • I believe there are a number of questions with answers that you can find here on the Devzone if you search for "BLE_ERROR_NO_TX_BUFFERS". That said, the brief answer is that there really are two things you can do:

    1. Stuff as many packets as you can onto the radio until you get the no buffer error. Then wait for the TX complete event. When you get the TX complete event, start stuffing buffers onto the radio again as fast as possible until you get the next buffer full error. Repeat as long as necessary.

    2. Set the connection interval as low as possible. Some central devices will allow you to go down as low as 7.5mS between connect events. The radio will be able to transmit another burst of packets every time it gets a connect event.

  • What is your connection interval set to as it looks like you are already doing #1 below. What data rate are you attempting to achieve?

Related