zephyr/samples/bluetooth/pbp_public_broadcast_source
Andrej Butok 6857a37d19 doc: Use EXTRA_CONF_FILE in .rst/.md files
Use EXTRA_CONF_FILE in documentation .rst/.md files,
that replaced deprecated OVERLAY_CONFIG since the Zephyr v3.4 release.

Signed-off-by: Andrej Butok <andrey.butok@nxp.com>
2024-10-21 12:34:38 +02:00
..
src samples: Bluetooth: Audio: Avoid uisng K_FOREVER in syswq 2024-10-02 15:53:37 +02:00
CMakeLists.txt
Kconfig.sysbuild
README.rst doc: Use EXTRA_CONF_FILE in .rst/.md files 2024-10-21 12:34:38 +02:00
overlay-bt_ll_sw_split.conf
prj.conf
sample.yaml
sysbuild.cmake

README.rst

.. zephyr:code-sample:: bluetooth_public_broadcast_source
   :name: Public Broadcast Profile (PBP) Public Broadcast Source
   :relevant-api: bluetooth bt_audio bt_bap bt_pbp

   Use PBP Public Broadcast Source functionality.

Overview
********

Application demonstrating the PBP Public Broadcast Source functionality.
Will start advertising extended advertising and includes a Broadcast Audio Announcement.
The advertised broadcast audio stream quality will cycle between high and standard quality
every 15 seconds.

This sample can be found under
:zephyr_file:`samples/bluetooth/pbp_public_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.

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/pbp_public_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/pbp_public_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/pbp_public_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/pbp_public_broadcast_source/
   :board: nrf52_bsim
   :goals: build
   :gen-args: -DEXTRA_CONF_FILE=overlay-bt_ll_sw_split.conf