| 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
Running Speed and Cadence Application
This example requires one of the following SoftDevices: S130, S132, S332

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

The Running Speed and Cadence Application is an example that implements the Running Speed and Cadence profile using the hardware delivered in the nRF5 Development Kit.

The application includes the two services in the Running Speed and Cadence profile:

- Running Speed and Cadence Service
- Device Information Service

In addition, use of the Battery Service is also demonstrated.

When the application starts, it starts a timer to simulate Running Speed and Cadence Measurements.

Also, a timer for generating battery measurements is started.

The sensor measurements are simulated the following way:

- Instantaneous speed and instantaneous cadence: see Sensor Data Simulator.
- Battery Level: see Sensor Data Simulator.

When notification of Running Speed and Cadence Measurement characteristic is enabled, the Running Speed and Cadence Measurement, containing the current value for all the components of the Running Speed and Cadence Measurement characteristic, is notified each time the Running Speed and Cadence measurement timer expires. When notification of Battery Level characteristic is enabled, the Battery Level is notified each time the Battery Level measurement timer expires.

Note
  This application is not power optimized!
  The application will stop advertising after 3 minutes and go to system-off mode. Push the button 1 restart advertising.

# Setup

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

Button assignments: BSP BLE Button Assignments

# Testing

Test the Running Speed and Cadence Application with the Master Control Panel by performing the following steps:

1. Compile and program the application. Observe that the BSP_INDICATE_ADVERTISING state is indicated.
2. Connect to the device from Master Control Panel (the device will be advertising as 'Nordic_RSC'), then perform service discovery. Observe that the BSP_INDICATE_CONNECTED state is indicated.
3. Click the 'Enable services' button on the Master Control Panel. Observe that Running Speed and Cadence notifications are received every second, and Battery Level notifications are received every two seconds.