How works the Broadcast Source Device with Broadcast Audio Assistant and non-nordic headset compatible Auracast.

nrf Toolchain: 2.7.0
nrf Connect SDK : 2.7.0
Gateway: nrF5340 Audio DK
Headset: Earbud 'MOMENTUM TW 4' (Sennheiser)

I try to run and test this following application "Broadcast Source"  into the nrF5340 Audio DK (as role gateway) which should interact with auracast earbuds 'MOMENTUM TW 4' (as role headset).

As far as I understand , we need an intermediate "Broadcast Audio Assistant Device" which can be a smartphone (using nrf Connect Mobile ?), a PC, or a nrf-DK with LE audio support:

Use Case 1: Try to use the nrF5340 Audio DK (running "Broadcast Source" app) as gateway, my smartphone as Broadcast Audio Assistant Device and my auracast eardbud 'MOMENTUM TW 4' as headset.
The broadcast service of nrF5340 is published and detected by the nrf Connect mobile app. but my smartphone doesn't support the LE audio support. Is it necessary for the smartphone to support the LE Audio to manage the nrF5340 broadcast service and be able to select the advertisement or the channel wished to be listened ?

Use Case 2: Try to use a 1st nrF5340 Audio DK as gateway, a second nrF5340 Audio DK as Broadcast Audio Assistant, and auracast Headset 'MOMENTUM TW 4'
"Broadcast Audio Assistant" provided by Zephyr Project seems not working into the 2nd nrF5340-Audio-DK which play the role of the Assistant. According the doc, only nrf52840dk is supported.

*** Booting nRF Connect SDK v2.7.0-5cb85570ca43 ***
*** Using Zephyr OS v3.6.99-100befc70c74 ***
[00:00:00.415,588] <inf> bt_hci_core: HW Platform: Nordic Semiconductor (0x0002)
[00:00:00.415,649] <inf> bt_hci_core: HW Variant: nRF53x (0x0003)
[00:00:00.415,649] <inf> bt_hci_core: Firmware: Standard Bluetooth controller (0x00) Version 214.51162 Build 1926957230
[00:00:00.417,419] <inf> bt_hci_core: Identity: C6:95:06:0E:89:94 (random)
[00:00:00.417,449] <inf> bt_hci_core: HCI: version 5.4 (0x0d) revision 0x21fb, manufacturer 0x0059
[00:00:00.417,480] <inf> bt_hci_core: LMP: version 5.4 (0x0d) subver 0x21fb
Bluetooth initialized
[00:00:00.419,738] <wrn> bt_hci_core: opcode 0x2041 status 0x01
Scanning failed to start (err -5)

First, what I try to achieve makes sense ? if yes, can you help me to understand this issue of running an Broadcast Audio Assistant into a nrF5340-Audio-DK.

Thank in advance for your answers and Best Regards.

Parents Reply Children
  • Why this ticket has been closed ?
    this use case has nothing to do with the Unicast Client which implements CIS gateway mode. I'm testing here the Auracast mode which implements BIS gateway mode.

    # Enable the Auracast/Broadcast mode
    CONFIG_TRANSPORT_BIS=y


    Logs:
    GW [00:00:01.361,206] <inf> audio_usb: USB RX first data received.
    *** Booting nRF Connect SDK v2.7.0-5cb85570ca43 ***
    *** Using Zephyr OS v3.6.99-100befc70c74 ***
    GW [00:00:00.270,294] <inf> board_version: Compatible board/HW version found: 1.0.0
    GW [00:00:00.306,060] <inf> sd_card: SD card volume size: 15280 MB
    GW [00:00:00.311,523] <inf> fw_info: 
             nRF5340 Audio nRF5340 Audio DK cpuapp                      
             NCS base version: 2.7.0                            
             Cmake run : Thu Aug 15 18:55:15 2024
    GW [00:00:00.311,523] <inf> fw_info: ------- DEBUG BUILD -------
    GW [00:00:00.311,523] <inf> fw_info: Compiled for GATEWAY device
    GW [00:00:00.341,644] <inf> bt_mgmt_ctlr_cfg: Controller: SoftDevice: Version 5.4 (0x0d), Revision 8699
    GW [00:00:00.341,827] <inf> bt_mgmt: Local identity addr: C1:4B:5C:B4:E1:AF (random)
    GW [00:00:00.341,949] <inf> audio_usb: Ready for USB host to send/receive.
    GW [00:00:00.342,285] <inf> broadcast_source: Enabling broadcast_source NRF5340_BROADCASTER
    GW [00:00:00.346,130] <inf> bt_mgmt_adv: Local addr: 39:01:2E:90:44:4B (random)
    GW [00:00:00.348,205] <inf> main: Ext adv ready
    GW [00:00:00.348,937] <inf> bt_mgmt_adv: Advertising successfully started
    GW [00:00:00.356,628] <inf> broadcast_source: Broadcast source 0x2000d5ac started
    GW [00:00:00.356,658] <inf> le_audio: LC3 codec config for source:
    GW [00:00:00.356,658] <inf> le_audio:   Frequency: 48000 Hz
    GW [00:00:00.356,658] <inf> le_audio:   Duration: 10000 us
    GW [00:00:00.356,658] <inf> le_audio:   Channel allocation: 0x3
    GW [00:00:00.356,689] <inf> le_audio:   Octets per frame: 120 (96000 bps)
    GW [00:00:00.356,689] <inf> le_audio:   Frames per SDU: 1
    GW [00:00:00.357,116] <inf> broadcast_source: Broadcast source 0x2000d5d4 started
    GW [00:00:00.357,116] <inf> le_audio: LC3 codec config for source:
    GW [00:00:00.357,147] <inf> le_audio:   Frequency: 48000 Hz
    GW [00:00:00.357,147] <inf> le_audio:   Duration: 10000 us
    GW [00:00:00.357,147] <inf> le_audio:   Channel allocation: 0x3
    GW [00:00:00.357,147] <inf> le_audio:   Octets per frame: 120 (96000 bps)
    GW [00:00:00.357,147] <inf> le_audio:   Frames per SDU: 1
    GW [00:00:00.698,516] <inf> audio_usb: USB RX first data received.

    Can please inform me if we need an intermediate "Broadcast Audio Assistant Device" for this Use-Case ?

  • Sorry for misunderstand the issue. 

    No, The BIS gateway can function independently, broadcasting one or more audio streams from a source device to an unlimited number of receivers that are not connected to the source. See the test section in the Broadcast source sample. 

  • Earbuds 'MOMENTUM TW 4' is compatible auracast but doesn't react at all to the stream sent by Broadcast source. Have you ever tested the Broadcast Source app runing inside nrF5340-Audio-DK with non-nordic headset compatible auracast ? if yes, can you give an example of headset mark (non-nordic) which is compatible with your product ?
    Best Regards.

  • Hi,

    Hi,

    I go through this case again and try to clear more.

    Is it necessary for the smartphone to support the LE Audio to manage the nrF5340 broadcast service and be able to select the advertisement or the channel wished to be listened ?

    Yes, it needs the smartphone to support the LE audio. 

    what I try to achieve makes sense ? if yes, can you help me to understand this issue of running an Broadcast Audio Assistant into a nrF5340-Audio-DK.

    Try to add the following configs to the Zephyr sample "Broadcast Audio Assistant"

    CONFIG_BT_PER_ADV_SYNC_TRANSFER_RECEIVER=n
    CONFIG_BT_PER_ADV_SYNC_TRANSFER_SENDER=n
    CONFIG_SELECT_SOURCE_NAME="NRF5340_BROADCASTER"
    CONFIG_SELECT_SINK_NAME="MOMENTUM TW 4"

    Since this is a Zephyr sample, it would not load the netcore image correctly. You can 

    1. in zephyr/samples/bluetooth/broadcast_audio_assistant
      $ west build nrf5340_audio_dk/nrf5340/cpuapp -p
      $ west flash --domain broadcast_audio_assistant  # this make sure we only program the APP, won't touch the NET
    2. in ncs_dev/nrf/applications/nrf5340_audio
      $ west build -b nrf5340_audio_dk/nrf5340/cpuapp -p 
      $ west flash --domain ipc_radio                             # only program the NET

    Then you can get the log like this

    selim.pousse said:
    Have you ever tested the Broadcast Source app runing inside nrF5340-Audio-DK with non-nordic headset compatible auracast ? if yes, can you give an example of headset mark (non-nordic) which is compatible with your product ?

    We have tested Samsung S24 and Sony Xperia 5IV as broadcast assistant with earbuds: Samsung Bud2 pro and Sony WF-LS900N. 

    -Amanda H.

  • Hi,
    thank you very much for your answers. I followed your instructions to program the broadcast_audio_assistant app into the nrF5340 audio DK,
    Now I'm using 2 nrF5340-audio-DKs :

    • one DK playing the role of the gateway and running the Broadcast source app
    • one other DK playing the role of the Bluetooth assistant and running the broadcast_audio_assistant app

    Now, I have other issues :
    1) the assistant DK should detect the service 'NRF5340_BROADCASTER' published by the Broadcast source DK. Why the assistant doesn't react at all in the logs ?
    2) the headset (set of LE Audio Broadcast capable earbuds) should connect (or pair) to the assistant DK, why I don't see it in my provided logs above ?

Related