Datasheet

Page 59 of 161
nRF8001 Product Specification
Revision 1.2
20 Service pipes
A key activity in a Bluetooth low energy application is accessing and exchanging specific application data
contained in the Server setup and/or the Client. Application data can be stored locally (in the nRF8001)
and remotely (in the peer device).
20.1 Functional description
In nRF8001, the concept of service pipes is used to simplify access to service characteristics in a Client
and/or Server. A service pipe may be considered a data transfer pipe to (or from) a specific characteristic
in a Server or Client.
Note: Service pipe is a concept specific for the nRF8001 ACI - it is not a Bluetooth concept.
Service pipes point to a specific Characteristic declaration in a Service, for example, the Temperature
Characteristic declaration in a Thermometer Service. The value of this Characteristic is transmitted (or
received) through the Pipe. Once you have programmed the service pipes configuration into nRF8001,
they are static for the lifetime of the application. The type and number of service pipes you need to define
is dependant on your application profile requirements. When the application is active, only the application
data of interest is sent through the defined service pipes.
The service pipe setup also defines the following:
Direction of data transfer
This is either transmit or receive. A transmit pipe carries data from the application controller to
a peer device. A receive pipe carries data from a peer device to the application controller.
•Server location
The characteristics value may either be located on the nRF8001 server or on the peer device.
Acknowledgment requirements
The service pipes can be set to require acknowledgment from the peer device that transfers
are successful and data is correctly received. A peer device may also require an acknowledg-
ment to be sent from the nRF8001 application controller.
Auto Acknowledgment
The peer device may require an acknowledgment from nRF8001. It is automatically executed
by nRF8001 without involving the application controller.
Link Authentication
A connection is authenticated by an encrypted link using LTK (Long Term Key).
Broadcast
Data may be sent in the advertisement packets as defined in
Bluetooth Core specification
v4.0, Vol. 3, Part C, section 9.1.1. Data may only be sent in connectable advertisement pack-
ets or un-connectable advertisement packets using the AD type Service Data, see
Bluetooth
Core specification
v4.0 Vol. 3 Part C section 11.
Request initiation
There are two alternatives for transferring data between nRF8001 and a peer device. Data
may either be transmitted from the peer device, or be received by nRF8001 upon it requesting
the peer device to send data.
Acknowledgment and Request are service pipe features that you can enable once the characteristics
value location and direction of data transfer are defined.
Each service pipe is assigned its unique service pipe number. When application data is sent to (or received
from) a service server, the application software uses the service pipe number to map a pipe to a GATT
Characteristic UUID and the service pipe features. A Characteristic is always associated with a specific
Service UUID.