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

NRF_ERROR_TIMEOUT

Hello ,I hope the speed of NUS can be achieved 7K Byte/s. The data form phone to uart is ok,but the data form uart to phone is not.I tested the Bluetooth part separately.Loop to send fixed data by a AT command.There is a errcod (0x13),it means NRF_ERROR_TIMEOUT in the code.How can I deal with it to avoid it.The MTU is 182,and the data rate form MCU Bluetooth RF to Phone is only 3K Byte/s .The time interval for sending data is 58ms (ble_nus_string_send, 3K Byte/s) . Help me please.

  • Forget some internal debugging if you are keen to optimize throughput over the air and get the RF log first (from some radio analyzer, BLE sniffer or whatever similar). You will see quickly what is really happening and which side has reserves compared to theoretical bandwidth.

  • It's a sad story.I have no related equipment.It is too expensive.

  • OK.Maybe I made a mistake. The errcod (0x13) means NRF_ERROR_RESOURCES.

  • Well cheap BLE sniffer means nRF51 DK board (40USD) + Nordic sniffer FW (for free) + Wireshark (for free). Then to your error: yes, it typically means that GATT layer in Soft Device does not have more Tx "slots" (buffers) and you need to wait for TX_COMPLETED event and try again.

  • OK,the problem has been solved.

1 2