| nRF5 SDK v12.0.0 |

Choose documentation: | nRF5 SDK | S130 SoftDevice API | S132 SoftDevice API | S212 SoftDevice API | S332 SoftDevice API

All Data Structures Functions Variables Typedefs Enumerations Enumerator Groups Pages
BLE Heart Rate Collector Example
This example requires one of the following SoftDevices: S130, S132

Important: Before you run this example, make sure to program the SoftDevice.

The BLE Heart Rate Collector application implements the Heart Rate Collector Role.

GAP role implemented is the Central role. GATT role implemented is the Client role.

The Heart Rate Collector application implements the Collector role for the Heart Rate Profile. It scans peripheral devices, connects to the device advertising with Heart Rate Service UUID in its advertisement report, and discovers and configures the Heart Rate Service to start sending Notifications of Heart Rate Measurement. The Heart Rate Measurement received is logged on UART interface. This application will also discover and configure Battery Service at the peer.

The application includes the two services in the Heart Rate profile:

- Heart Rate Service Client
- Battery Service Client

Note
  The application currently does not support connecting to multiple peripherals. Handling Connection Parameters Update and Pairing/Bonding are not implemented. Once connected, the application does not initiate disconnection but is capable of handling disconnection event initiated by peer or triggered unexpectedly.

# Setup

You can find the source code and the project file of the example in the following folder: `<InstallFolder>\examples\ble_central\ble_app_hrs_c`

Button assignments: BSP BLE Button Assignments

The application uses the following UART settings:

- Baud rate: 115.200
- 8 data bits
- 1 stop bit
- No parity
- HW flow control: RTS/CTS

# Testing

Two boards are needed to perform this test:

- Collector Board: nRF5 development board containing the S13x SoftDevice.
- Sensor Board: nRF5 development board containing the S13x SoftDevice and the Heart Rate Application provided with the nRF5 SDK.

The application running on the Sensor Board is intended to serve as a peer (i.e. Heart Rate Sensor role) to this Heart Rate Collector application.

Test the BLE Heart Rate Collector Example application by performing the following steps:

1. Compile the BLE Heart Rate Collector Example application and program both SoftDevice and application on the Collector Board.
2. On the Collector board, observe that the BSP_INDICATE_ADVERTISING state is indicated. This shows that the application is scanning for Heart Rate Sensors.
3. Compile the Heart Rate Sensor application and program both SoftDevice and application on the Sensor Board.
4. Observe that the Heart Rate Sensor is advertising.
5. Once the connection is established, the BSP_INDICATE_CONNECTED state is indicated on the Collector Board.
6. After a few seconds, observe Heart Rate measurements displayed on the UART.