Heart Rate Service: Bluetooth®
Heart Rate Service: Bluetooth®
Heart Rate Service: Bluetooth®
BLUETOOTH® DOC
2011-07-12 Adopted V10r00 HRS_SPEC
Prepared By E-mail Address N.B.
MED WG med-feedback@bluetooth.org
Abstract:
This service exposes heart rate and other data from a Heart Rate
Sensor intended for fitness applications.
BLUETOOTH SERVICE SPECIFICATION Page 2 of 15
Heart Rate Service
Revision History
Revision Date Comments
(yyyy-mm-dd)
D09r00 2011-02-04 Initial Draft from Health Thermometer Service.
D09r01 2011-02-06 Incorporated feedback from Wicentric. Version used at IOP
D09r02 2011-02-13 Incorporated feedback from IOP. Accepted all changes.
D09r03 2011-03-14 Updated to align with latest Thermometer Service changes.
D09r04 2011-03-23 Incorporated feedback from MED WG reviews.
D09r05 2011-04-01 Incorporated feedback from BARB and MED WG reviews.
Incorporated feedback from Bob, Guillaume and Vishwanath.
D09r06 2011-04-08 Accepted all changes. Prepared for BARB review. Incorporated
feedback from BARB review. Prepared for IOP.
D09r07 2011-05-11 Accepted all changes. Prepared for resubmission to BARB. Minor
editorial updates to align with recent changes to HTS.
D09r08 2011-05-11 Accepted all changes. Submitted to BARB for review.
D09r09 2011-05-18 Incorporated feedback from BARB. Version approved by BARB
and Board.
D10r00 2011-06-22 Updated to draft 1.0. Changed names of Control Point and Sensor
Location characteristics to be more specific to Heart Rate. Minor
changes to align with adopted version of HTS. Applied changes
recommended by tech pubs.
D10r01 2011-06-28 Version submitted to BARB for approval. Incorporated feedback
from GPA WG.
D10r02 2011-06-28 Accepted all changes.
V10r00 2011-07-12 Adopted by the Bluetooth SIG Board of Directors
Contributors
Name Company
Amit Gupta CSR
Robert Hughes Intel Corporation
Krishna Shingala MindTree
Leif-Alexandre Aschehoug Nordic Semiconductor
Guillaume Schatz Polar
Jason Hillyard Wicentric
Niclas Granqvist Polar
Jari Miettinen Polar
Marko Tilvis Polar
Matti Sipola Polar
BLUETOOTH SERVICE SPECIFICATION Page 3 of 15
Heart Rate Service
Document Terminology
The Bluetooth SIG has adopted Section 13.1 of the IEEE Standards Style Manual, which
dictates use of the words ``shall’’, ``should’’, ``may’’, and ``can’’ in the development of
documentation, as follows:
The word shall is used to indicate mandatory requirements strictly to be followed in order to
conform to the standard and from which no deviation is permitted (shall equals is required to).
The use of the word must is deprecated and shall not be used when stating mandatory
requirements; must is used only to describe unavoidable situations.
The use of the word will is deprecated and shall not be used when stating mandatory
requirements; will is only used in statements of fact.
The word should is used to indicate that among several possibilities one is recommended as
particularly suitable, without mentioning or excluding others; or that a certain course of action is
preferred but not necessarily required; or that (in the negative form) a certain course of action is
deprecated but not prohibited (should equals is recommended that).
The word may is used to indicate a course of action permissible within the limits of the standard
(may equals is permitted).
The word can is used for statements of possibility and capability, whether material, physical, or
causal (can equals is able to).
BLUETOOTH SERVICE SPECIFICATION Page 5 of 15
Heart Rate Service
Table of Contents
1 Introduction .................................................................................................................................... 6
1.1 Conformance ............................................................................................................................. 6
1.2 Service Dependency ................................................................................................................. 6
1.3 Bluetooth Specification Release Compatibility .......................................................................... 6
1.4 GATT Sub-Procedure Requirements ........................................................................................ 6
1.5 Transport Dependencies ........................................................................................................... 6
1.6 Error Codes ............................................................................................................................... 7
1.7 Byte Transmission Order ........................................................................................................... 7
2 Service Declaration ........................................................................................................................ 8
3 Service Characteristics ................................................................................................................. 9
3.1 Heart Rate Measurement .......................................................................................................... 9
3.1.1 Characteristic Behavior ..................................................................................................... 10
3.1.1.1 Flags Field .................................................................................................................. 10
3.1.1.2 Heart Rate Measurement Value Field ........................................................................ 11
3.1.1.3 Energy Expended Field .............................................................................................. 11
3.1.1.4 RR-Interval Field ......................................................................................................... 11
3.1.1.5 Transmission Interval ................................................................................................. 12
3.1.2 Characteristic Descriptors ................................................................................................. 12
3.1.2.1 Client Characteristic Configuration Descriptor ........................................................... 12
3.2 Body Sensor Location ............................................................................................................. 12
3.2.1 Characteristic Behavior ..................................................................................................... 12
3.3 Heart Rate Control Point ......................................................................................................... 12
3.3.1 Characteristic Behavior ..................................................................................................... 12
3.4 Requirements for Time-Sensitive Data ................................................................................... 13
4 Acronyms and Abbreviations ..................................................................................................... 14
5 References .................................................................................................................................... 15
BLUETOOTH SERVICE SPECIFICATION Page 6 of 15
Heart Rate Service
1 Introduction
The Heart Rate Service exposes heart rate and other data related to a heart rate sensor
intended for fitness applications.
1.1 Conformance
If a device claims conformance to this service, all capabilities indicated as mandatory for
this service shall be supported in the specified manner (process-mandatory). This also
applies for all optional and conditional capabilities for which support is indicated. All
mandatory capabilities, and optional and conditional capabilities for which support is
indicated, are subject to verification as part of the Bluetooth qualification program.
2 Service Declaration
The Heart Rate Service shall be instantiated as a «Primary Service».
The service UUID shall be set to «Heart Rate Service». The UUID value assigned to
«Heart Rate Service» is defined in [2].
BLUETOOTH SERVICE SPECIFICATION Page 9 of 15
Heart Rate Service
3 Service Characteristics
The following characteristics are exposed in the Heart Rate Service. Unless otherwise
specified, only one instance of each characteristic is permitted within this service.
Characteristic Requirement Mandatory Optional Security
Name Properties Properties Permissions
Heart Rate M Notify None.
Measurement
Heart Rate M Read, Write None.
Measurement Client
Characteristic
Configuration descriptor
Body Sensor Location O Read None.
Heart Rate Control C.1 Write None.
Point
Table 3.1: Heart Rate Service characteristics
C.1: Mandatory if the Energy Expended feature is supported, otherwise excluded.
Notes:
Security Permissions of “None” means that this service does not impose any requirements.
Properties not listed as Mandatory or Optional are Excluded.
The RR-Interval field is variable length and, for a 23-octet ATT_MTU, may contain 0 or
up to 8 or 9 RR-Interval sub-fields depending upon the Heart Rate Measurement Value
format and if the Energy Expended field is present or not.
BLUETOOTH SERVICE SPECIFICATION Page 10 of 15
Heart Rate Service
present is 8 and the maximum number of RR-Interval Values that can be notified if
Energy Expended is not present is 9.
For a 23-octet ATT_MTU and the Heart Rate Measurement Value format set to UINT16,
when notifying the Heart Rate Measurement characteristic, the maximum number of
RR-Interval values that can be contained within a single Heart Rate Measurement
characteristic with Energy Expended is 7 and the maximum number of RR-Interval
values that can be notified if Energy Expended is not present is 8.
If more RR-Interval values are measured since the last notification than fit into one
Heart Rate Measurement characteristic, then the remaining RR-Interval values should
be included in the next available Heart Rate Measurement characteristic.
If there is no available space in the internal buffer of the Heart Rate Sensor, it may
discard the oldest RR-Interval values.
3.1.1.5 Transmission Interval
In typical applications, the Heart Rate Measurement characteristic is notified
approximately 1 time per second and includes the Heart Rate Measurement Value field
and, if supported, the RR-Interval field. The Energy Expended field, if supported, is
typically included in the Heart Rate Measurement characteristic for transmission
approximately 1 time per every 10 seconds. These intervals may vary and are
determined by the Server and are not configurable by the Client.
If the Client attempts to write a value to the Heart Rate Control Point characteristic that
is not supported by the Server, the Server shall send an error response with the error
code set to Control Point Not Supported.
If supported by the Server, when a value of 0x01 is written to the Heart Rate Control
Point characteristic (Reset Energy Expended), the Server shall restart the accumulation
of energy expended from zero.
5 References
[1] Bluetooth Core Specification v4.0
[2] Characteristic and Descriptor descriptions are accessible via the Bluetooth SIG Assigned Numbers.