Lancaster University's fork of the mbed BLE API. Lives on github, https://github.com/lancaster-university/BLE_API

Dependents:   microbit-dal microbit-dal microbit-ble-open microbit-dal ... more

Fork of BLE_API by Bluetooth Low Energy

Committer:
vcoubard
Date:
Mon Jan 11 08:52:02 2016 +0000
Revision:
1118:88af68f0226b
Parent:
1053:ec4a5b9b254e
Synchronized with git rev 42a202e0
Author: Andres Amaya Garcia
Finilise Whitelisting experimental API

This is the finilised experimental API that introduces support for
whitelisting. The changes are focused in Gap and introduces the following
functions, that are expected to be implemented by each of the vendor specific
glue code (e.g. ble-nrf51822 module):

- getMaxWhitelistSize(): Get the maximum whitelist size, this can be set by
using a yotta config definition.
- getWhitelist(): Gets a copy of the internal whitelist containing BLE
addresses.
- setWhitelist(): Replace the whitelist with new addresses.
- setAdvertisingPolicyMode(), setScanningPolicyMode() and
setInitiatorPolicyMode(): Functions used to set the relevan policy filter
mode as described in the BLE Specification v4.2 Vol 6, Part B, Section 4.2.1.
- getAdvertisingPolicyMode(), getScanningPolicyMode() and
getInitiatorPolicyMode(): Functions used to get the relevan policy filter
mode as described in the BLE Specification v4.2 Vol 6, Part B, Section 4.2.1.

The following enumerators were added to Gap to describe the desired policy
filter mode:

- AdvertisingPolicyMode_t
- ScanningPolicyMode_t
- InitiatorPolicyMode_t

Finally, the following typedef was added to provide a view of the
underlying implementation's internal whitelist:

- Whitelist_t

**NOTE:** Clearly, these API additions require changes to the underlying
implementation!

Who changed what in which revision?

UserRevisionLine numberNew contents of line
rgrover1 125:aae3f50670c9 1 # mbed Bluetooth Low Energy Stack
vcoubard 1052:b55e1ad3e1b3 2 This is the Github repo for the `BLE_API` used by developer.mbed.org. Please see the [mbed BLE Homepage](https://developer.mbed.org/teams/Bluetooth-Low-Energy/) for all documentation, code examples and general help.
rgrover1 125:aae3f50670c9 3
rgrover1 125:aae3f50670c9 4 # Supported Services
vcoubard 1053:ec4a5b9b254e 5 Supported GATT services and constantly being added and can be found in the [ble/services/](https://github.com/ARMmbed/ble/tree/master/ble/services) folder.
vcoubard 1052:b55e1ad3e1b3 6
vcoubard 1052:b55e1ad3e1b3 7 Currently supported services include:
vcoubard 1052:b55e1ad3e1b3 8 * Battery
rgrover1 125:aae3f50670c9 9 * Device Firmware Update (DFU)
vcoubard 1052:b55e1ad3e1b3 10 * Device Information
vcoubard 1052:b55e1ad3e1b3 11 * Eddystone Configuration Service
rgrover1 125:aae3f50670c9 12 * Health Thermometer
rgrover1 125:aae3f50670c9 13 * Heart Rate
vcoubard 1052:b55e1ad3e1b3 14 * Link Loss
rgrover1 125:aae3f50670c9 15 * UART
Rohit Grover 241:00f2410ad9cc 16 * UriBeacon
Rohit Grover 241:00f2410ad9cc 17 * iBeacon
rgrover1 125:aae3f50670c9 18
vcoubard 1053:ec4a5b9b254e 19 The [documentation](https://docs.mbed.com/docs/ble-intros/en/latest/AdvSamples/Overview/)
vcoubard 1053:ec4a5b9b254e 20 contains an overview on how to create new, application-specific services.
vcoubard 1053:ec4a5b9b254e 21
vcoubard 1052:b55e1ad3e1b3 22 # Getting Started
vcoubard 1052:b55e1ad3e1b3 23 The mbed BLE API is meant to be used in projects on developer.mbed.org. Please see examples and sample project files there.
rgrover1 125:aae3f50670c9 24 A good starting point are these pages:
vcoubard 1052:b55e1ad3e1b3 25 * [mbed BLE Homepage](https://developer.mbed.org/teams/Bluetooth-Low-Energy/) for all things BLE
vcoubard 1052:b55e1ad3e1b3 26 * [mbed BLE Getting Started Guide](https://developer.mbed.org/forum/team-63-Bluetooth-Low-Energy-community/topic/5262/) a wonderful primer on using BLE with mbed
vcoubard 1052:b55e1ad3e1b3 27 * [mbed BLE doc](https://docs.mbed.com/docs/ble-intros/en/latest/) for an introduction to mbed BLE
vcoubard 1053:ec4a5b9b254e 28 * [mbed BLE API page](https://docs.mbed.com/docs/ble-api/en/latest/api/index.html) for the Doxygen API documentation