Datasheet
Page 60 of 161
nRF8001 Product Specification
Revision 1.2
Multiple service pipes can be assigned to a specific characteristic value depending on the application. The
transmit and receive service pipes are described in section 20.4 on page 61
and section 20.5 on page 66.
Figure 26. on page 60
illustrates how different service pipes can be assigned to two separate
characteristics. Both service pipe 1 and 2 will access the same data, but with different pipe features.
Service pipe 3 is linked to a separate characteristics value and has a different feature.
Figure 26. Service pipes assigned to characteristics under a service
20.2 Defining Service pipes
You need to define the services in the local GATT server and the service pipes associated to a remote or
local GATT server according to your application requirements and then program them into nRF8001.
nRFgo Studio is a software program that lets you construct the nRF8001 GATT server and define the peer
GATT server characteristics required for your application. This program is available from
www.nordicsemi.com
and is used for nRF8001 configuration. nRFgo Studio features predefined services
that automatically define and set up the required service pipes.
Once you have defined the service pipes and device setup in nRFgo Studio, the service pipe configuration
can be exported and downloaded into nRF8001 using the ACI command
Setup.
20.3 Data transfer on a service pipe
In normal operating mode, application data transfer is controlled by data commands. The data commands
reference the defined service pipes when sending and receiving data. For example, the command
SendData(4, 0xF5) will send 0xF5 through service pipe number 4. The service pipe number is used to
identify the specific Characteristic declaration associated with the transmitted/received data.
To transmit or receive data on a service pipe, the service pipe must be open and the nRF8001 in the
connected state. For service pipes associated with a remote GATT server, Service Discovery is
automatically executed in order to connect the service pipes.
Service
Characteristic Declaration
Characteristic Value
Characteristic Declaration
Characteristic Value
Service pipe #1
(Receive, no ACK)
Service pipe #2
(Receive, w. ACK)
Service pipe #3
(Transmit, no ACK)