nRF Audio: Broadcast sink

The nRF Audio broadcast sink application implements the BIS headset mode. In this mode, receiving broadcast audio happens using Broadcast Isochronous Stream (BIS) and Broadcast Isochronous Group (BIG).

The following limitations apply to this application:

  • One BIG, one of the two BIS streams or a mixed stereo comprising of the two (selectable). See overlay-broadcast_sink.conf for more information.

  • Audio output: I2S/Analog headset output.

  • Configuration: 16-bit, several bit rates ranging from 32 kbps to 124 kbps.

Requirements

The application shares the requirements common to all nRF Audio application.

User interface

Most of the user interface mappings are common across all nRF Audio applications. See the User interface page for detailed overview.

This application uses specific mapping for the following user interface elements:

  • Long-pressed on the broadcast sink device during startup:

    • VOL- - Changes the headset location to left.

    • VOL+ - Changes the headset location to right.

  • Pressed on the broadcast sink device during playback:

    • PLAY/PAUSE - Starts or pauses listening to the stream.

    • VOL- - Turns the playback volume down.

    • VOL+ - Turns the playback volume up.

    • BTN 5 - Changes the gateway, if more than one is available.

  • LED1:

    • Solid blue - Devices have synchronized with a broadcasted stream.

    • Blinking blue - Devices have started streaming audio (BIS mode).

  • LED2 - Solid green - Sync achieved (both drift and presentation compensation are in the LOCKED state).

  • RGB:

    • Solid blue - The device is programmed as the left headset.

    • Solid magenta - The device is programmed as the right headset.

Configuration

The application requires the CONFIG_TRANSPORT_BIS Kconfig option to be set to y in the applications/nrf_audio/prj.conf file for Building and running to succeed.

For other configuration options, see Configuring the nRF Audio applications.

For information about how to configure applications in the nRF Connect SDK, see Configuring and building.

Stereo configuration

The broadcast sink can receive audio from two BISes and play it on the left and right channels of the audio output. In this mode, the I2S output is stereo, but nRF5340 Audio DK still only has one audio output channel, since it has a mono codec (CS47L63).

To configure stereo, program the correct headset location for each headset.

See also overlay-broadcast_sink.conf for more information.

Building and running

This application can be found under applications/nrf_audio/broadcast_sink in the nRF Connect SDK folder structure, but it uses .conf files at applications/nrf_audio/.

The nRF5340 Audio DK comes preprogrammed with basic firmware that indicates if the kit is functional. See Testing out of the box for more information.

To build the application, complete the following steps:

  1. Select the BIS mode by setting the CONFIG_TRANSPORT_BIS Kconfig option to y in the applications/nrf_audio/prj.conf file for the debug version and in the applications/nrf_audio/prj_release.conf file for the release version.

  2. Complete the steps for building and programming common to all audio applications using one of the following methods:

Testing

Note

Nordic Semiconductor seeks to provide seamless interoperability with as many LE Audio devices as possible. However, vendors have reached different levels of maturity in their implementation. Also, different platforms have different methods of connecting, pairing, and streaming. For these reasons, providing a general guide on how to test with external devices is challenging. The suggested approach is to test with Nordic Semiconductor devices on both sides first to verify basic functionalities and get familiar with the solution before using custom devices. Contact Technical Support team if you need assistance.

To test the broadcast sink application, complete the following steps:

  1. Make sure you have another nRF5340 Audio DK for testing purposes.

  2. Program the other DK with the broadcast source application. The broadcast sink device automatically synchronizes with the broadcast source after programming.

  3. Proceed to testing the devices using the User interface buttons and LEDs.

Dependencies

For the list of dependencies, check the application’s source files under applications/nrf_audio/broadcast_sink.