Primary Git Repository for the Zephyr Project. Zephyr is a new generation, scalable, optimized, secure RTOS for multiple hardware architectures.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
Vinayak Kariappa Chettimada d8cd8ddc51 samples: Bluetooth: bap_broadcast_source nRF5340 audio dk + nRF21540 FEM 3 months ago
..
boards samples: Bluetooth: bap_broadcast_source nRF5340 audio dk + nRF21540 FEM 3 months ago
src samples: Bluetooth: Support interleaved packing in BIS samples 4 months ago
CMakeLists.txt samples: Bluetooth: BAP: Broadcast source use next USB stack 5 months ago
Kconfig samples: Bluetooth: Support interleaved packing in BIS samples 4 months ago
Kconfig.sysbuild
README.rst samples: Bluetooth: Support interleaved packing in BIS samples 4 months ago
app.overlay samples: Bluetooth: BAP: Broadcast source use next USB stack 5 months ago
overlay-bt_ll_sw_split.conf samples: Bluetooth: Support interleaved packing in BIS samples 4 months ago
overlay-interleaved.conf tests: bsim: Bluetooth: broadcast_audio_source interleaved/sequential 4 months ago
overlay-sequential.conf tests: bsim: Bluetooth: broadcast_audio_source interleaved/sequential 4 months ago
prj.conf samples: Bluetooth: Support interleaved packing in BIS samples 4 months ago
sample.yaml samples: Bluetooth: bap_broadcast_source nRF5340 audio dk + nRF21540 FEM 3 months ago
sysbuild.cmake

README.rst

.. zephyr:code-sample:: bluetooth_bap_broadcast_source
:name: Basic Audio Profile (BAP) Broadcast Audio Source
:relevant-api: bluetooth bt_audio bt_bap

Use BAP Broadcast Source functionality.

Overview
********

Application demonstrating the BAP Broadcast Source functionality.
Will start advertising extended advertising with audio flags, periodic advertising with the
Broadcast Audio Source Endpoint (BASE) and finally the BIGinfo together with
(mock) Audio (ISO) data.

The BAP Broadcast Source will reset every 30 seconds to show the full API.

This sample can be found under
:zephyr_file:`samples/bluetooth/bap_broadcast_source` in the Zephyr tree.

Check the :zephyr:code-sample-category:`bluetooth` samples for general information.

Requirements
************

* BlueZ running on the host, or
* A board with Bluetooth Low Energy 5.2 support

Building and Running
********************

When building targeting an nrf52 series board with the Zephyr Bluetooth Controller,
use ``-DEXTRA_CONF_FILE=overlay-bt_ll_sw_split.conf`` to enable the required ISO
feature support.
The sample defaults to sequential packing of BIS subevents, add
``-DCONFIG_ISO_PACKING_INTERLEAVED=y`` to use interleaved packing.

Building for an nrf5340dk
-------------------------

You can build both the application core image and an appropriate controller image for the network
core with:

.. zephyr-app-commands::
:zephyr-app: samples/bluetooth/bap_broadcast_source/
:board: nrf5340dk/nrf5340/cpuapp
:goals: build
:west-args: --sysbuild

If you prefer to only build the application core image, you can do so by doing instead:

.. zephyr-app-commands::
:zephyr-app: samples/bluetooth/bap_broadcast_source/
:board: nrf5340dk/nrf5340/cpuapp
:goals: build

In that case you can pair this application core image with the
:zephyr:code-sample:`bluetooth_hci_ipc` sample
:zephyr_file:`samples/bluetooth/hci_ipc/nrf5340_cpunet_iso-bt_ll_sw_split.conf` configuration.

Building for a simulated nrf5340bsim
------------------------------------

Similarly to how you would for real HW, you can do:

.. zephyr-app-commands::
:zephyr-app: samples/bluetooth/bap_broadcast_source/
:board: nrf5340bsim/nrf5340/cpuapp
:goals: build
:west-args: --sysbuild

Note this will produce a Linux executable in :file:`./build/zephyr/zephyr.exe`.
For more information, check :ref:`this board documentation <nrf5340bsim>`.

Building for a simulated nrf52_bsim
-----------------------------------

.. zephyr-app-commands::
:zephyr-app: samples/bluetooth/bap_broadcast_source/
:board: nrf52_bsim
:goals: build
:gen-args: -DEXTRA_CONF_FILE=overlay-bt_ll_sw_split.conf