zephyr/samples/bluetooth/peripheral_accept_list
Aleksander Wasaznik 8cfad44852 Bluetooth: Deprecate adv auto-resume
The host-based adv auto-resume function has both a problematic
implementation and disagreement in the community around how it should
behave. See the issue linked resolved below for details.

This patch makes the deprecation visible to the user. The user will be
better served by a auto-resume tailored their applications use case,
based on more primitive host API like `conn_cb.recycled`, which has
obvious behavior that is unlikely to change.

Resolves: https://github.com/zephyrproject-rtos/zephyr/issues/72567

Signed-off-by: Aleksander Wasaznik <aleksander.wasaznik@nordicsemi.no>
2024-10-08 16:57:01 +02:00
..
src Bluetooth: Deprecate adv auto-resume 2024-10-08 16:57:01 +02:00
CMakeLists.txt
README.rst
prj.conf
sample.yaml

README.rst

.. zephyr:code-sample:: ble_peripheral_accept_list
   :name: Peripheral Accept List
   :relevant-api: bt_conn bt_gatt bluetooth

   Advertise and accept connections only from devices on an accept list.

Overview
********

This application demonstrates the Bluetooth LE advertising accept filter list feature.
If no device is bonded to the peripheral, casual advertising will be performed.
Once a device is bonded, on subsequent boots, connection requests will only be
accepted if the central device is on the accept list. Additionally, scan response
data will only be sent to devices that are on the accept list. As a result, some
BLE central devices (such as Android smartphones) might not display the device
in the scan results if the central device is not on the accept list.

This sample also provides two Bluetooth LE characteristics. To perform a write, devices need
to be bonded, while a read can be done immediately after a connection
(no bonding required).

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

* A board with Bluetooth LE support
* Second Bluetooth LE device acting as a central. For example another Zephyr board or smartphone

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

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

See :zephyr:code-sample-category:`bluetooth` samples for details.