2016 Microchip Technology Inc.
DS50002547A-page 53
RN4870/71 PICtail™/PICtail PLUS
DAUGHTER BOARD USER’S GUIDE
Appendix C. Bluetooth Low Energy Primer
C.1
GAP ROLES: PERIPHERAL AND CENTRAL
When two Bluetooth Low Energy (BLE) devices want to be connected, one device must
be in Central role and the other in Peripheral role. The Peripheral device advertises to
show its connectable status, while Central device scans service advertisements, and if
needed, initiates a connection to the Peripheral device. Once connected, either end of
the connection can choose to bond. Once bonded, all security related keys are saved
and security process are waived when reconnecting. Bonded peripheral device can
only perform direct advertise, therefore, unable to connect to a device other than its
bonded peer.
C.2
GATT SERVICE: CLIENT AND SERVER
Similar to Bluetooth Classic, BLE uses the concept of profiles to ensure interoperability
between different devices. As illustrated in
, BLE profiles are collection of
services. All BLE services are built on top of Generic Attribute Profile (GATT) where
GATT defines accessibility of attributes called characteristics. The main functionality of
the BLE profiles, therefore, is built around the characteristics. For those devices that
maintain the value of characteristics in a service, such device is the
Server
of the
service. On the other hand, devices that acquire data from their peer are called
Client
.
Each service and its characteristics can be identified by their Universally Unique Iden-
tifier (UUID). The UUID can be a short form (16-bit) or long form (128-bit). As specified
by Bluetooth Core Specifications, all Bluetooth SIG adopted (public) services and char-
acteristics have short UUID (16-bit), while user defined private UUIDs are in long form
(128-bit). For the details of Bluetooth SIG adopted services and characteristics, refer
to
https://developer.bluetooth.org/gatt/profiles/Pages/ProfilesHome.aspx
.
The accessibility of each characteristic is defined by a 8-bit characteristic property in
bitmap format as shown in
TABLE C-1:
CHARACTERISTIC PROPERTIES
Property
Bitmap Value
Description
Extended Property
(
1
)
0x80
Additional property available
Authenticated Write
(
1
)
0x40
Write characteristic with authentication from GATT
client to GATT server
Indicate
0x20
Indicate value of characteristic with
acknowledgment from GATT server to GATT client
Notify
0x10
Notify value of characteristic without
acknowledgment from GATT server to GATT client
Write
0x08
Write value of characteristic with acknowledgment
from GATT client to GATT server
Write without response 0x04
Write value of characteristic without
acknowledgment from GATT client to GATT server
Read
0x02
Read value of characteristic. Value is sent from
GATT server to GATT client
Broadcast
(
1
)
0x01
Broadcast value of characteristic
Note 1:
These features are supported in future firmware releases