pawr_sync_conn doesn't work for nrf5340 audio dk

I have tried zephyr/sample/bluetooth/periodic_sync_conn in nrfsdk v2.7 and test on nrf5340 audio dk, and doens't work. the output is:

*** Using Zephyr OS v3.6.99-100befc70c74 ***
Starting Periodic Advertising with Responses Synchronization Demo
[00:00:00.390,350] <inf> bt_hci_core: HW Platform: Nordic Semiconductor (0x0002)
[00:00:00.390,380] <inf> bt_hci_core: HW Variant: nRF53x (0x0003)
[00:00:00.390,411] <inf> bt_hci_core: Firmware: Standard Bluetooth controller (0x00) Version 214.51162 B0
[00:00:00.426,483] <inf> bt_hci_core: Identity: E3:56:6A:09:47:E1 (random)
[00:00:00.426,513] <inf> bt_hci_core: HCI: version 5.4 (0x0d) revision 0x21fb, manufacturer 0x0059
[00:00:00.426,544] <inf> bt_hci_core: LMP: version 5.4 (0x0d) subver 0x21fb
Found periodic advertising.
Creating Periodic Advertising SyncWaiting for periodic sync
Synced to 69:3D:3A:3B:A1:BF (random) with 0 subevents
[00:00:00.696,502] <wrn> bt_hci_core: opcode 0x2084 status 0x01
Failed to set subevents to sync to (err -5)
Periodic sync established.
Stopped scanning
Responding with own addr: 55:C0:52:42:E2:F9 (random).

Suspect it is caused by some configuration.

 Please help on it.

Thanks,

Chen Yang

  • Hi Chen, 
    What you are seeing is that the opcode BT_HCI_OP_LE_SET_PER_ADV_SYNC_SUBEVENT (0x2084 ) is not supported (status 0x01)
    Most likely it's the stack on the netcore has not been configured to support PAWR. Please check your configuration for the netcore. 
    If you use sysbuild it should be added to ipc_radio.conf: 


    CONFIG_BT_EXT_ADV=y
    CONFIG_BT_CTLR_ADV_EXT=y

  • Tried your solution, still same error. And I think CONFIG_BT_CTLR_ADV_EXT is an option for opensource LL. Default, the sample should use SoftDevice.

    Here is my ipc_radio.conf

    yangchen@yangchen-Standard-PC-Q35-ICH9-2009:~/nrfsdk/zephyr/samples/bluetooth/periodic_sync_conn$cat sysbuild/ipc_radio.conf
    CONFIG_BT_EXT_ADV=y
    CONFIG_BT_PER_ADV=y
    CONFIG_BT_PER_ADV_SYNC=y
    CONFIG_BT_PER_ADV_SYNC_RSP=y
    CONFIG_BT_CTLR_ADV_EXT=y

  • Hi Chen, 
    Please try adding this: 

    CONFIG_BT_PER_ADV_SYNC_BUF_SIZE=247
    CONFIG_BT_PER_ADV_SYNC_TRANSFER_SENDER=y
    CONFIG_BT_PER_ADV_SYNC_TRANSFER_RECEIVER=y

    I did a test here and it seems it solved the issue with  opcode 0x2084 status 0x01. But it then run into issue with 
    opcode 0x2083 status 0x46 

     0x2083 = BT_HCI_OP_LE_SET_PER_ADV_RESPONSE_DATA


    0x46 means 
    BT_HCI_ERR_TOO_LATE

    But it could be something to do with the PAWR configuration. I need to investigate this a bit more but you can try increasing the response delay. It simply means that by the time the controller received the response data from the host, it was too late to be able to send it.

  • I also encountered error 0x2083 0x46 with the following details:
    W: opcode 0x2083 status 0x46
    E: Failed to send response (err -5)
    I: Indication: subevent 0, responding in slot 0
    0xFF: 5900BE
    But when I reset it a few times, it seems to work with some probability, at which point the details are as follows:
    I: Indication: subevent 0, responding in slot 1
    0xFF: 590033
    It didn't have any errors, and coincidentally, once it worked, I reset it several times without getting the error again, until I reset central and the problem reappeared.
    Do you have the same problem as me?
    How can I fix this?

Related