When trying to receive an LE Audio broadcast, issuing an HCI_LE_BIG_Create_Sync command with parameters obtained after scanning for ISO broadcasts, the
When trying to receive an LE Audio broadcast, issuing an HCI_LE_BIG_Create_Sync command with parameters obtained after scanning for ISO broadcasts, the
Hi
This was tested with nrfConnect SDK 3.0.2, on an nrf52840DK boards, with the BT SoftDevice configuration.
So this was using the Softdevice Controller as well, and not a third party controller? The NRF5340 is what we recommend for LE Audio, though I hear that the zephyr audio samples do work with the 52840. Though I am not 100% sure about the nordic samples for it. It doesn't have the CPU rate like nRF5340, so probably it is hard to broadcast a high quality stream. And we haven't well tested this solution, so it is a hard to give a solid answer regarding the quality.
Is what you are running based on the default nordic audio application/sample?
Regards,
Elfving
Yes, this is using the SoftDevice controller. The error here shouldn't be related to HW capabilities (it's not about an issue with maintaining a high quality stream), it's an error explicitly returned for the command that sets up the ISO stream with encryption (ISO streaming itself works fine, I can receive ISO broadcasts that are not encrypted).
The Zephyr sample app I use here is the `hci_uart` sample (with a configuration that adds support for ISO streams), which lets me send HCI commands over the serial port. the `HCI_LE_BIG_Create_Sync` command ends up calling the SoftDevice lib function `sdc_hci_cmd_le_big_create_sync`.
I have verified that using the same command with a 3rd party controller works just fine, so I know the parameters and command sequence works.
Since the SoftDevice lib is only supplied as a precompiled library, it's hard to troubleshoot and determine what causes it to return the "Encryption Mode Not Acceptable" error.
Is that the case with the zephyr controller as well? I assume this is what the sample selects by default. Audio development is so cutting edge that there might be some differences regarding what the different controllers support, so using the controller that the sample was created for might be best. Though I am not immediately seeing what shouldn't be supported by SDC here.
Regards,
Elfving
I have tried the same thing with the Zephyr controller (`CONFIG_BT_LL_SOFTDEVICE=n`), and in that case I don't get the error. The `HCI_LE_BIG_Create_Sync` command succeeds (I subsequently receive an `HCI_LE_Create_BIG_Complete` event, with `status==SUCCESS`). So this is really just an issue with the SoftDevice controller implementation.
Had a talk with the relevant team here, and LE Audio for nRF52840 is simply not something that we support. Though when it comes to further details than that, nRF52820 and nRF52833 are the nRF52 Series devices that support encrypting and decrypting the Isochronous Channels packets. nRF52840 does not support BIG encryption though. That means that the zephyr controller should complain in this situation as well, so it is odd that it does not. The team is looking into it
I would recommend you to switch to the nRF5340
Regards,
Elfving