zephyr/samples/bluetooth/unicast_audio_server
Emil Gydesen 353a05b116 Bluetooth: BAP: Unicast server depend on PACS
When in the BAP unicast server role, at least PAC sink
or PAC source shall be set.

In order to fulfill this new requirement, a few other Kconfig
options had to be changed to a `depends on` from `select` to
avoid recursive Kconfig requirements. This change may require
some applications to update their configurations according
to the migration guide.

The change from `select` to `depends on` is ideal anyhow
as that is the recommended way to add dependencies.

This can checked via the combined BT_PACS Kconfig value.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2024-04-30 14:30:45 -04:00
..
boards samples/tests: Remove REQUIRES_FULL_LIBC=y due to LIBLC3 2023-11-06 10:10:27 +01:00
src Bluetooth: Samples: Remove uses of auto name in AD 2024-04-23 12:42:24 +02:00
CMakeLists.txt
Kconfig.sysbuild tests|samples/bluetooth: Fix sysbuild due to BOAD_IDENTIFIER 2024-03-21 18:44:04 +01:00
overlay-bt_ll_sw_split.conf samples: Bluetooth: Relax Tx ISO SDUs dropped in unicast audio samples 2023-06-08 06:47:25 -04:00
prj.conf Bluetooth: BAP: Unicast server depend on PACS 2024-04-30 14:30:45 -04:00
README.rst samples/bluetooth/unicast_audio_server: Fix nrf5340bsim board name 2024-03-25 18:38:47 -04:00
sample.yaml samples|tests/* yamls: Replace all nrf5340bsim hwmv1 names w hwmv2 version 2024-03-21 15:23:56 +01:00
sysbuild.cmake samples/bluetooth: Reduce sysbuild boilerplate 2023-12-02 07:53:11 -05:00

.. _bluetooth_unicast_audio_server:

Bluetooth: Unicast Audio Server
###############################

Overview
********

Application demonstrating the LE Audio unicast server functionality.
Starts advertising and awaits connection from a LE Audio unicast client.

This sample can be found under
:zephyr_file:`samples/bluetooth/unicast_audio_server` 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/unicast_audio_server/
   :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/unicast_audio_server/
   :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/unicast_audio_server/
   :board: nrf5340dk/nrf5340/cpuapp
   :goals: build

In that case you can pair this application core image with the
:ref:`hci_ipc 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/unicast_audio_server/
   :board: nrf52_bsim
   :goals: build
   :gen-args: -DOVERLAY_CONFIG=overlay-bt_ll_sw_split.conf

Note this will produce a Linux executable in `./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/unicast_audio_server/
   :board: nrf5340bsim/nrf5340/cpuapp
   :goals: build
   :west-args: --sysbuild