Maximum achievable throughput of LE Audio (BAP streaming)

Hi nRF Community,

I'm currently delving into the bandwidth capabilities of LE audio (BAP Streaming), utilizing two nRF5340-DK (PCA10095 2.0.2) Dev-kits flashed with unicast audio server and client  examples from nRF Connect SDK v2.6.0.

Among the significant modifications:

I disabled the LC3 codec by removing CONFIG_LIBLC3=y from the board configuration.

and implemented the following codec configuration:

static struct bt_bap_lc3_preset codec_configuration = BT_BAP_LC3_PRESET(
    BT_AUDIO_CODEC_LC3_CONFIG_16_2(BT_AUDIO_LOCATION_FRONT_LEFT, BT_AUDIO_CONTEXT_TYPE_UNSPECIFIED),
    BT_AUDIO_CODEC_QOS_UNFRAMED(5000u, 251u, 0u, 10u, 40000u));

where:

  • _interval – SDU interval (usec) = 5000
  • _sdu – Maximum SDU Size = 251
  • _rtn – Retransmission number = 0
  • _latency – Maximum Transport Latency (msec) = 10
  • _pd – Presentation Delay (usec) = 40000

I'm transmitting data every 5ms (AUDIO_DATA_TIMEOUT_US 5000). With these adjustments, I managed to achieve approximately ~769 kbps from client to server and ~391 kbps from server to client.

Could anyone offer insights or share experiences on optimizing the throughput of BAP streaming?

What is the theoretical limitation using the current version of nRF Connect SDK?

I'll be glad for any help and ideas!

Related