zephyr/samples/bluetooth/bap_broadcast_assistant
Emil Gydesen c4fbe38219 Bluetooth: BAP: Depend on BT_PER_ADV_SYNC instead of select
Change the select of BT_PER_ADV_SYNC and BT_EXT_ADV to
depends on. This is an effort to reduce the use of
select for Kconfig options.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2024-11-21 09:19:47 +01:00
..
src Bluetooth: Host: Add conversion macros from ms to various units 2024-11-16 14:06:03 -05:00
CMakeLists.txt
Kconfig
prj.conf Bluetooth: BAP: Depend on BT_PER_ADV_SYNC instead of select 2024-11-21 09:19:47 +01:00
README.rst samples: Bluetooth: Audio: Add/fix API includes and references 2024-09-24 09:21:40 -04:00
sample.yaml

.. zephyr:code-sample:: bluetooth_bap_broadcast_assistant
   :name: Basic Audio Profile (BAP) Broadcast Audio Assistant
   :relevant-api: bluetooth bt_audio bt_bap bt_conn

   Use BAP Broadcast Assistant functionality.

Overview
********

Application demonstrating the BAP Broadcast Assistant functionality.

The sample will automatically try to connect to a device in the BAP Scan Delegator
role (advertising support for the Broadcast Audio Scan Service (BASS)).
It will then search for a broadcast source and (if found) add the broadcast ID to
the BAP Scan Delegator.

Practical use of this sample requires a sink (e.g. the BAP Broadcast Audio Sink sample or
a set of BAP Broadcast capable earbuds) and a source (e.g. the BAP Broadcast Audio
Source sample).

This sample can be found under
:zephyr_file:`samples/bluetooth/bap_broadcast_assistant` 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
* Broadcast Audio Source and Sink devices

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

The application will act as a broadcast assistant with optionally preconfigured
filtering of broadcast sink and broadcast source names. By default, the application will
search for and connect to the first broadcast audio sink found (advertising PACS and
BASS UUIDs) and then search for and select the first broadcast audio source found
(advertising a broadcast ID).

Filter these by modifying the following configs:

``CONFIG_SELECT_SINK_NAME``: Substring of BT name of the sink.

and

``CONFIG_SELECT_SOURCE_NAME``: Substring of BT name or broadcast name of the source.

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

.. zephyr-app-commands::
   :zephyr-app: samples/bluetooth/bap_broadcast_assistant/
   :board: nrf52840dk/nrf52840
   :goals: build