zephyr/samples/bluetooth/ibeacon
Marc Herbert 2cd51a33ce samples: make find_package(Zephyr...) REQUIRED
This provides a better error message when building with CMake and
forgetting ZEPHYR_BASE or not registering Zephyr in the CMake package
registry. See parent commit for more details (split from parent for
better readability).

Signed-off-by: Marc Herbert <marc.herbert@intel.com>
2020-05-29 10:47:25 +02:00
..
boards samples: bluetooth: ibeacon: Move dts overlays under boards 2020-04-01 10:44:31 -04:00
src cleanup: include/: move misc/util.h to sys/util.h 2019-06-27 22:55:49 -04:00
CMakeLists.txt samples: make find_package(Zephyr...) REQUIRED 2020-05-29 10:47:25 +02:00
prj.conf samples: bluetooth: ibeacon: change to ADV_NONCONN_IND type 2019-05-03 14:27:34 +03:00
README.rst doc: Bluetooth: Documentation overhaul 2019-03-13 10:40:05 +01:00
sample.yaml samples: add test identifier 2019-03-29 17:44:11 -04:00

.. _bluetooth-ibeacon-sample:

Bluetooth: iBeacon
##################

Overview
********

This simple application demonstrates the BLE Broadcaster role
functionality by advertising an Apple iBeacon. The calibrated RSSI @ 1
meter distance can be set using an IBEACON_RSSI build variable
(e.g. IBEACON_RSSI=0xb8 for -72 dBm RSSI @ 1 meter), or by manually
editing the default value in the ``main.c`` file.

Because of the hard-coded values of iBeacon UUID, major, and minor,
the application is not suitable for production use, but is quite
convenient for quick demonstrations of iBeacon functionality.

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

* A board with Bluetooth LE support, or
* QEMU with BlueZ running on the host

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

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

See :ref:`bluetooth samples section <bluetooth-samples>` for details on how
to run the sample inside QEMU.

For other boards, build and flash the application as follows:

.. zephyr-app-commands::
   :zephyr-app: samples/bluetooth/ibeacon
   :board: <board>
   :goals: flash
   :compact:

Refer to your :ref:`board's documentation <boards>` for alternative
flash instructions if your board doesn't support the ``flash`` target.