zephyr/samples/bluetooth/bap_unicast_client
Emil Gydesen f57a040808 Bluetooth: BAP: Add bondable requirement for BAP
BAP mandates support for bondable mode for all central and
peripheral roles.

Due to Kconfig circular dependencies, some additional
Kconfig changes had to be made.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2024-09-19 18:27:53 +01:00
..
boards samples: Bluetooth: Fix stack size for unicast audio server 2024-06-11 17:35:30 +03:00
src lib: net_buf: rename header file from zephyr/net/buf.h to zephyr/net_buf.h 2024-09-07 11:19:05 -05:00
CMakeLists.txt samples: Bluetooth: Refactor TX for unicast audio client 2024-06-11 17:35:30 +03:00
Kconfig.sysbuild
overlay-bt_ll_sw_split.conf
prj.conf Bluetooth: BAP: Add bondable requirement for BAP 2024-09-19 18:27:53 +01:00
README.rst doc: sphinx-lint: fix bad usage of "default role" 2024-09-13 11:42:51 -05:00
sample.yaml
sysbuild.cmake

.. zephyr:code-sample:: bluetooth_bap_unicast_client
   :name: Unicast Audio Client
   :relevant-api: bt_bap bt_audio

   Use LE Audio Unicast Client functionality.

Overview
********

Application demonstrating the LE Audio unicast client functionality. Scans for and
connects to a LE Audio unicast server and establishes an audio stream.

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

Check the :ref:`bluetooth samples section <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 ``-DOVERLAY_CONFIG=overlay-bt_ll_sw_split.conf`` to enable the required ISO
feature support.

Building for an nrf52840dk
--------------------------

.. zephyr-app-commands::
   :zephyr-app: samples/bluetooth/bap_unicast_client/
   :board: nrf52840dk/nrf52840
   :goals: build
   :gen-args: -DOVERLAY_CONFIG=overlay-bt_ll_sw_split.conf

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_unicast_client/
   :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_unicast_server/
   :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 nrf52_bsim
-----------------------------------

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

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

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

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

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