Dear Team,
Is it possible to run BIS and PAwR concurrently while using PAST for synchronization?
I am using the nRF52840 DK and NCS 2.8.
I managed to start two periodic advertising trains (BIS and PAwR) concurrently without any issues (both are working as expected). However, when I attempt to create a connection to a peer device (for PAST) afterwards, it fails with error 0x0C (command disallowed).
After some debugging, I may have found the cause of this problem. To support PAwR, the configuration CONFIG_BT_PER_ADV_RSP is required. This configuration extends the struct bt_le_per_adv_param with fields related to PAwR. When setting the parameters for my periodic advertisements used for BIS, I initially set those values to zero, as I do not need them (which works without problems). However, when doing so I cannot connect with any device anymore. If I set those values to meaningful numbers, I can successfully establish a connection again, but I can no longer create a BIG (as I now have two PAwR trains).
Note: The advertising does not need to be started to resolve this issue; it is sufficient to set the parameters using bt_le_per_adv_set_param() and set the PAwR related fileds of bt_le_per_adv_param to zero.
This issue can be recreated by using the existing zephyr sample (zephyr/samples/bluetooth): periodic_adv_rsp & periodic_sync_rsp.
Just change the periodic advertising parameters in main.c of the periodic_adv_rsp sample to:
static const struct bt_le_per_adv_param per_adv_params = {
.interval_min = 0xFF,
.interval_max = 0xFF,
.options = 0,
.num_subevents = 0,
.subevent_interval = 0,
.response_slot_delay = 0,
.response_slot_spacing = 0,
.num_response_slots = 0,
};
As result, a connection cannot be established anymore:
*** Booting nRF Connect SDK v2.8.0-a2386bfc8401 ***
*** Using Zephyr OS v3.7.99-0bc3393fb112 ***
Starting Periodic Advertising Demo
[00:00:00.000,671] <inf> bt_sdc_hci_driver: SoftDevice Controller build revision:
fe 2c f9 6a 7f 36 22 2e a0 79 c0 40 be 2c 03 20 |.,.j.6". .y.@.,.
40 c2 f3 32 |@..2
[00:00:00.003,021] <inf> bt_hci_core: HW Platform: Nordic Semiconductor (0x0002)
[00:00:00.003,051] <inf> bt_hci_core: HW Variant: nRF52x (0x0002)
[00:00:00.003,082] <inf> bt_hci_core: Firmware: Standard Bluetooth controller (0x00) Version 254.63788 Build 573996906
[00:00:00.003,997] <inf> bt_hci_core: Identity: E7:C1:B9:C8:AB:0B (random)
[00:00:00.004,058] <inf> bt_hci_core: HCI: version 6.0 (0x0e) revision 0x104e, manufacturer 0x0059
[00:00:00.004,089] <inf> bt_hci_core: LMP: version 6.0 (0x0e) subver 0x104e
Start Periodic Advertising
Start Extended Advertising
Scanning successfully started
[00:00:00.219,116] <wrn> bt_hci_core: opcode 0x2043 status 0x0c
Create conn to ø$ failed (4294967283)
Thanks,
Rainer