Skip to content

Commit

Permalink
tests: bsim: Bluetooth: Enable some high reliability CAP tests
Browse files Browse the repository at this point in the history
Enable some high reliability CAP tests by increasing ISO Tx
buffer counts in the Controller to sufficiently generate
number of complete when multiple SDUs are transmitted in
single ISO interval with use of pre-transmissions.

Signed-off-by: Vinayak Kariappa Chettimada <[email protected]>
  • Loading branch information
cvinayak committed Nov 5, 2024
1 parent 5a7f0f7 commit c133cd2
Show file tree
Hide file tree
Showing 8 changed files with 54 additions and 41 deletions.
2 changes: 1 addition & 1 deletion tests/bsim/bluetooth/audio/overlay-bt_ll_sw_split.conf
Original file line number Diff line number Diff line change
Expand Up @@ -100,7 +100,7 @@ CONFIG_BT_CTLR_CONN_ISO_LOW_LATENCY_POLICY=y

# ISO Transmissions
CONFIG_BT_CTLR_ISOAL_SOURCES=4
CONFIG_BT_CTLR_ISO_TX_BUFFERS=12
CONFIG_BT_CTLR_ISO_TX_BUFFERS=18
CONFIG_BT_CTLR_ISO_TX_BUFFER_SIZE=255

# ISO Receptions
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
CONFIG_BT_CTLR_ISO_TX_BUFFERS=18
2 changes: 1 addition & 1 deletion tests/bsim/bluetooth/audio/prj.conf
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@ CONFIG_BT_BAP_BROADCAST_SRC_SUBGROUP_COUNT=1
CONFIG_BT_BAP_BROADCAST_SNK_SUBGROUP_COUNT=1
CONFIG_BT_BAP_BROADCAST_SNK_STREAM_COUNT=2
CONFIG_BT_ISO_PERIPHERAL=y
CONFIG_BT_ISO_TX_BUF_COUNT=4
CONFIG_BT_ISO_TX_BUF_COUNT=36
CONFIG_BT_ISO_MAX_CHAN=4
CONFIG_BT_ISO_TX_MTU=310
CONFIG_BT_ISO_RX_MTU=310
Expand Down
11 changes: 10 additions & 1 deletion tests/bsim/bluetooth/audio/src/cap_acceptor_test.c
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,15 @@
#include "bap_common.h"

#if defined(CONFIG_BT_CAP_ACCEPTOR)
/* Zephyr Controller works best while Extended Advertising interval to be a multiple
* of the ISO Interval minus 10 ms (max. advertising random delay). This is
* required to place the AUX_ADV_IND PDUs in a non-overlapping interval with the
* Broadcast ISO radio events.
*/
#define BT_LE_ADV_CONN_CUSTOM \
BT_LE_ADV_PARAM(BT_LE_ADV_OPT_CONN, \
0x00e0, 0x00e0, NULL)

Check notice on line 49 in tests/bsim/bluetooth/audio/src/cap_acceptor_test.c

View workflow job for this annotation

GitHub Actions / Run compliance checks on patch series (PR)

You may want to run clang-format on this change

tests/bsim/bluetooth/audio/src/cap_acceptor_test.c:49 -#define BT_LE_ADV_CONN_CUSTOM \ - BT_LE_ADV_PARAM(BT_LE_ADV_OPT_CONN, \ - 0x00e0, 0x00e0, NULL) +#define BT_LE_ADV_CONN_CUSTOM BT_LE_ADV_PARAM(BT_LE_ADV_OPT_CONN, 0x00e0, 0x00e0, NULL)
extern enum bst_result_t bst_result;

#define SINK_CONTEXT \
Expand Down Expand Up @@ -638,7 +647,7 @@ void test_start_adv(void)
struct bt_le_ext_adv *ext_adv;

/* Create a connectable non-scannable advertising set */
err = bt_le_ext_adv_create(BT_LE_ADV_CONN_FAST_1, NULL, &ext_adv);
err = bt_le_ext_adv_create(BT_LE_ADV_CONN_CUSTOM, NULL, &ext_adv);
if (err != 0) {
FAIL("Failed to create advertising set (err %d)\n", err);

Expand Down
8 changes: 4 additions & 4 deletions tests/bsim/bluetooth/audio/src/cap_initiator_broadcast_test.c
Original file line number Diff line number Diff line change
Expand Up @@ -40,15 +40,15 @@
*/
#define BT_LE_EXT_ADV_CUSTOM \
BT_LE_ADV_PARAM(BT_LE_ADV_OPT_EXT_ADV, \
0x0080, 0x0080, NULL)
0x00e0, 0x00e0, NULL)

#define BT_LE_PER_ADV_CUSTOM \
BT_LE_PER_ADV_PARAM(0x0048, \
0x0048, \
BT_LE_PER_ADV_PARAM(0x0078, \
0x0078, \
BT_LE_PER_ADV_OPT_NONE)

Check notice on line 49 in tests/bsim/bluetooth/audio/src/cap_initiator_broadcast_test.c

View workflow job for this annotation

GitHub Actions / Run compliance checks on patch series (PR)

You may want to run clang-format on this change

tests/bsim/bluetooth/audio/src/cap_initiator_broadcast_test.c:49 -#define BT_LE_EXT_ADV_CUSTOM \ - BT_LE_ADV_PARAM(BT_LE_ADV_OPT_EXT_ADV, \ - 0x00e0, 0x00e0, NULL) - -#define BT_LE_PER_ADV_CUSTOM \ - BT_LE_PER_ADV_PARAM(0x0078, \ - 0x0078, \ - BT_LE_PER_ADV_OPT_NONE) +#define BT_LE_EXT_ADV_CUSTOM BT_LE_ADV_PARAM(BT_LE_ADV_OPT_EXT_ADV, 0x00e0, 0x00e0, NULL) + +#define BT_LE_PER_ADV_CUSTOM BT_LE_PER_ADV_PARAM(0x0078, 0x0078, BT_LE_PER_ADV_OPT_NONE)
#define BROADCAST_STREMT_CNT CONFIG_BT_BAP_BROADCAST_SRC_STREAM_COUNT
#define BROADCAST_ENQUEUE_COUNT 2U
#define BROADCAST_ENQUEUE_COUNT 18U
#define TOTAL_BUF_NEEDED (BROADCAST_ENQUEUE_COUNT * BROADCAST_STREMT_CNT)
#define CAP_AC_MAX_STREAM 2
#define LOCATION (BT_AUDIO_LOCATION_FRONT_LEFT | BT_AUDIO_LOCATION_FRONT_RIGHT)
Expand Down
5 changes: 5 additions & 0 deletions tests/bsim/bluetooth/audio/sysbuild.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,11 @@ if(SB_CONFIG_NET_CORE_IMAGE_HCI_IPC)
CACHE INTERNAL ""
)

set(${NET_APP}_EXTRA_CONF_FILE
${APP_DIR}/overlay-nrf5340_cpunet_iso-bt_ll_sw_split.conf
CACHE INTERNAL ""
)

native_simulator_set_child_images(${DEFAULT_IMAGE} ${NET_APP})
endif()

Expand Down
32 changes: 16 additions & 16 deletions tests/bsim/bluetooth/audio/test_scripts/cap_broadcast_ac_12.sh
Original file line number Diff line number Diff line change
Expand Up @@ -51,19 +51,19 @@ Execute_AC_12 48_5_1
Execute_AC_12 48_6_1

# High reliability
# Execute_AC_12 8_1_2 # BT_ISO_FLAGS_ERROR
# Execute_AC_12 8_2_2 # BT_ISO_FLAGS_ERROR
# Execute_AC_12 16_1_2 # BT_ISO_FLAGS_ERROR
# Execute_AC_12 16_2_2 # BT_ISO_FLAGS_ERROR
# Execute_AC_12 24_1_2 # BT_ISO_FLAGS_ERROR
# Execute_AC_12 24_2_2 # BT_ISO_FLAGS_ERROR
# Execute_AC_12 32_1_2 # BT_ISO_FLAGS_ERROR
# Execute_AC_12 32_2_2 # BT_ISO_FLAGS_ERROR
# Execute_AC_12 441_1_2 # BT_ISO_FLAGS_ERROR
# Execute_AC_12 441_2_2 # BT_ISO_FLAGS_ERROR
# Execute_AC_12 48_1_2 # BT_ISO_FLAGS_ERROR
# Execute_AC_12 48_2_2 # BT_ISO_FLAGS_ERROR
# Execute_AC_12 48_3_2 # BT_ISO_FLAGS_ERROR
# Execute_AC_12 48_4_2 # BT_ISO_FLAGS_ERROR
# Execute_AC_12 48_5_2 # BT_ISO_FLAGS_ERROR
# Execute_AC_12 48_6_2 # BT_ISO_FLAGS_ERROR
Execute_AC_12 8_1_2
Execute_AC_12 8_2_2
Execute_AC_12 16_1_2
Execute_AC_12 16_2_2
Execute_AC_12 24_1_2
Execute_AC_12 24_2_2
Execute_AC_12 32_1_2
Execute_AC_12 32_2_2
# Execute_AC_12 441_1_2 # BT_ISO_FLAGS_LOST
# Execute_AC_12 441_2_2 # BT_ISO_FLAGS_LOST
Execute_AC_12 48_1_2
Execute_AC_12 48_2_2
Execute_AC_12 48_3_2
Execute_AC_12 48_4_2
Execute_AC_12 48_5_2
Execute_AC_12 48_6_2
34 changes: 16 additions & 18 deletions tests/bsim/bluetooth/audio/test_scripts/cap_broadcast_ac_14.sh
Original file line number Diff line number Diff line change
Expand Up @@ -41,9 +41,7 @@ Execute_AC_14 24_1_1
Execute_AC_14 24_2_1
Execute_AC_14 32_1_1
Execute_AC_14 32_2_1
# ASSERTION FAIL [err == ((isoal_status_t) 0x00) || err == ((isoal_status_t) 0x04)]
# @ WEST_TOPDIR/zephyr/subsys/bluetooth/controller/hci/hci_driver.c:513
# Execute_AC_14 441_1_1
Execute_AC_14 441_1_1
# ASSERTION FAIL [err == ((isoal_status_t) 0x00) || err == ((isoal_status_t) 0x04)]
# @ WEST_TOPDIR/zephyr/subsys/bluetooth/controller/hci/hci_driver.c:513
# Execute_AC_14 441_2_1
Expand All @@ -55,19 +53,19 @@ Execute_AC_14 48_5_1
Execute_AC_14 48_6_1

# High reliability
# Execute_AC_14 8_1_2 # BT_ISO_FLAGS_ERROR
# Execute_AC_14 8_2_2 # BT_ISO_FLAGS_ERROR
# Execute_AC_14 16_1_2 # BT_ISO_FLAGS_ERROR
# Execute_AC_14 16_2_2 # BT_ISO_FLAGS_ERROR
# Execute_AC_14 24_1_2 # BT_ISO_FLAGS_ERROR
# Execute_AC_14 24_2_2 # BT_ISO_FLAGS_ERROR
# Execute_AC_14 32_1_2 # BT_ISO_FLAGS_ERROR
# Execute_AC_14 32_2_2 # BT_ISO_FLAGS_ERROR
# Execute_AC_14 441_1_2 # BT_ISO_FLAGS_ERROR
Execute_AC_14 8_1_2
Execute_AC_14 8_2_2
Execute_AC_14 16_1_2
Execute_AC_14 16_2_2
Execute_AC_14 24_1_2
Execute_AC_14 24_2_2
Execute_AC_14 32_1_2
Execute_AC_14 32_2_2
# Execute_AC_14 441_1_2 # BT_ISO_FLAGS_LOST
# Execute_AC_14 441_2_2 # BT_ISO_FLAGS_ERROR
# Execute_AC_14 48_1_2 # BT_ISO_FLAGS_ERROR
# Execute_AC_14 48_2_2 # BT_ISO_FLAGS_ERROR
# Execute_AC_14 48_3_2 # BT_ISO_FLAGS_ERROR
# Execute_AC_14 48_4_2 # BT_ISO_FLAGS_ERROR
# Execute_AC_14 48_5_2 # BT_ISO_FLAGS_ERROR
# Execute_AC_14 48_6_2 # BT_ISO_FLAGS_ERROR
Execute_AC_14 48_1_2
# Execute_AC_14 48_2_2 # BT_ISO_FLAGS_ERROR
Execute_AC_14 48_3_2
Execute_AC_14 48_4_2
# Execute_AC_14 48_5_2 # BT_ISO_FLAGS_ERROR
# Execute_AC_14 48_6_2 # BT_ISO_FLAGS_ERROR

0 comments on commit c133cd2

Please sign in to comment.