STM32WB Bluetooth® LE – Heart Rate Sensor Project

Revision as of 17:56, 26 January 2022 by Registered User (→‎Heart Rate Profile Presentation)

1. Heart Rate Profile Presentation

Heart Rate Profile (HRP) [1] is a Generic Attribute Profile (GATT) based low energy profile defined by the Bluetooth® Special Interest Group[2].
The HRP defines the communication between a GATT-server of a heart rate sensor device, such as a wrist band, and a GATT-client, such as a smart phone or tablet. The HRP is widely used in fitness applications to collect heart rate measurements. Heart Rate Sensor is the device that measures heart rate and other information, it can be defined as a GAP peripheral and GATT server.


Heart Rate Profile is a Generic Attribute Profile (GATT) based profile defined by the Bluetooth® Special Interest Group (Bluetooth® SIG[3]).

The Heart Rate profile defines 2 roles, Sensor and Collector.

The Collector is a GAP Central and GATT Client which receives heart rate measurement and other data.

Bluetooth® LE Heart Rate profile overview
Connectivity Heart-Rate-Profile-Overview.png


The HRP is widely used in fitness applications to collect heart rate measurements.

2. Heart Rate Example

2.1. Requirements

2.1.1. Software and System requirements

Software required are the following:
minimum IDEs version:

  • IAR Embedded Workbench for ARM (EWARM) toolchain V8.20.2
  • RealView Microcontroller Development Kit (MDK-ARM) toolchain V5.31
  • STM32CubeIDE toolchain V1.7.0 [4].


Programmer:

  • STM32CubeProgrammer[5] : To flash the board with an already generated binary

2.1.2. Hardware requirements

A Nucleo board[6], a STM32WB USB dongle[6], or a STM32WB Discovery Kit[7] is necessary to install the application.

Hardware platforms illustration
Connectivity hardware-presentation.png


Plus a smartphone with ST BLE Sensor application (for Android[8], or iOS[9]).

2.1.3. Project Directory

The "BLE_HeartRate" application is available by downloading STM32CubeWB MCU Package[10].

Heart Rate project directory
Connectivity heartRate.png

2.2. Project Description

2.2.1. Structure

2.2.2. Application Initialization

2.2.3. GAP & GATT Initialization & Interaction

Interaction between Middleware and User Application is described in the following illustration. lionel to explain...

Heart Rate project architecture
Connectivity HeartRate-Project.png


2.3. Build and Install

Follow steps described in Bluetooth® LE Build and Install Application page, applying it for BLE_HeartRate project.

2.4. Handle

Once the BLE Heart Rate application installed on the STM32WB platform, launch the ST BLE Sensor smartphone application.

Click on Connect one Device interface:

Heart Rate application interface 1
Connectivity Heart-Rate-screen-cap-1.jpg


Your device should be visible from this interface, connect to it:

Heart Rate application interface 2
Connectivity Heart-Rate-application-2.jpg


Now bpm measurement is displayed in real time.

Heart Rate application interface 3
Connectivity Heart-Rate-App-3.jpg


With Discovery Kit Platform, the Heart Rate is also visible from the board LCD screen, and Heart pulse is illustrated:

Heart Rate on DK illustration
Connectivity heart-rate-DK.png


3. References