Skip to content
AF

Enhanced Blood Pressure Measurement (0x2B34): byte layout

GATT characteristic · org.bluetooth.characteristic.enhanced_blood_pressure_measurement · read from the Bluetooth SIG’s repository on 2026-10-17 · commit 408f4a0 (2026-10-14)

Enhanced Blood Pressure Measurement is Bluetooth GATT characteristic 0x2B34, org.bluetooth.characteristic.enhanced_blood_pressure_measurement in the Bluetooth SIG's assigned numbers. The SIG's GATT Specification Supplement file lays its value out as 8 fields: Flags, Blood Pressure Measurement Compound Value (mmHg), Blood Pressure Measurement Compound Value (kPa), Time Stamp, Pulse Rate and 3 more. The first, Flags, is a boolean[8]; 7 of the others are present only when a bit of it is set as the field's text states, so after the first of those, a field's offset depends on which bits are set.

UUID
0x2B34
Identifier
org.bluetooth.characteristic.enhanced_blood_pressure_measurement
The SIG’s description
The Enhanced Blood Pressure Measurement characteristic is used to represent data related to a blood pressure measurement that includes a UTC time stamp and a user facing time.The structure of this characteristic is defined below.
Service the SIG’s files tie it to
None: no file in the repository lists this characteristic under a service.
Referenced by
Enhanced Intermediate Cuff Pressure
Source file
gss/org.bluetooth.characteristic.enhanced_blood_pressure_measurement.yaml

Byte layout: 8 fields

In the order the SIG’s structure lists them. Type and size are as published; sizes count octets except where a struct is marked as sized in bits. The offset is printed only where every earlier field has a fixed size; where an earlier field can be absent or vary, the cell names what it depends on. “Present when” is read from the field’s own “Present if” line, shown in full in the field notes below.

OffsetFieldTypeSizePresent whenUnit
0Flagsboolean[8]1Always (fixed size)—
1Blood Pressure Measurement Compound Value (mmHg)struct0 or 6Bit 0 of Flags is 0—
+0↳ Systolic (mmHg)medfloat162Always (fixed size)pressure (millimetre of mercury)org.bluetooth.unit.pressure.millimetre_of_mercury
+2↳ Diastolic (mmHg)medfloat162Always (fixed size)pressure (millimetre of mercury)org.bluetooth.unit.pressure.millimetre_of_mercury
+4↳ Mean Arterial Pressure (mmHg)medfloat162Always (fixed size)pressure (millimetre of mercury)org.bluetooth.unit.pressure.millimetre_of_mercury
Depends on Flags (bit 0)Blood Pressure Measurement Compound Value (kPa)struct0 or 6Bit 0 of Flags is 1—
+0↳ Systolic (kPa)medfloat162Always (fixed size)pressure (pascal)org.bluetooth.unit.pressure.pascal
+2↳ Diastolic (kPa)medfloat162Always (fixed size)pressure (pascal)org.bluetooth.unit.pressure.pascal
+4↳ Mean Arterial Pressure (kPa)medfloat162Always (fixed size)pressure (pascal)org.bluetooth.unit.pressure.pascal
Depends on Flags (bit 0)Time Stampuint320 or 4Bit 1 of Flags is 1—
Depends on Flags (bits 0 and 1)Pulse Ratemedfloat160 or 2Bit 2 of Flags is 1period (beats per minute)org.bluetooth.unit.period.beats_per_minute
Depends on Flags (bits 0, 1 and 2)User IDuint80 or 1Bit 3 of Flags is 1—
Depends on Flags (bits 0, 1, 2 and 3)Measurement Statusboolean[16]0 or 2Bit 4 of Flags is 1—
Depends on Flags (bits 0, 1, 2, 3 and 4)User Facing Timeuint320 or 4Bit 5 of Flags is 1—

Field notes

Each field’s text in the SIG’s file, line by line.

Flags boolean[8] · 1
See Flags.
Blood Pressure Measurement Compound Value (mmHg) struct · 0 or 6
See Blood Pressure Measurement Compound Value (mmHg).Present if bit 0 of Flags field is set to 0
Blood Pressure Measurement Compound Value (kPa) struct · 0 or 6
See Blood Pressure Measurement Compound Value (kPa).Present if bit 0 of Flags field is set to 1
Time Stamp uint32 · 0 or 4
Unit: Seconds, since Epoch StartSee Time Stamp.Present if bit 1 of Flags field is set to 1
Pulse Rate medfloat16 · 0 or 2
Unit: org.bluetooth.unit.period.beats_per_minutePresent if bit 2 of Flags field is set to 1
User ID uint8 · 0 or 1
See User ID in Blood Pressure Measurement.Present if bit 3 of Flags field is set to 1
Measurement Status boolean[16] · 0 or 2
See Measurement Status in Blood Pressure Measurement.Present if bit 4 of Flags field is set to 1
User Facing Time uint32 · 0 or 4
Unit: Seconds, since Epoch StartSee User Facing Time.Present if bit 5 of Flags field is set to 1

Flags and value tables

The definitions the SIG’s file gives for its fields, every row as published. On a flags table the last column lists the fields whose “Present if” line names that bit.

Flags

The bits of this field are defined below.

BitDescriptionFields its condition names
0Blood Pressure Measurement Units Flag0 = Blood pressure for Systolic, Diastolic and MAP in units of mmHg1 = Blood pressure for Systolic, Diastolic and MAP in units of kPaBlood Pressure Measurement Compound Value (mmHg) when 0Blood Pressure Measurement Compound Value (kPa) when 1
1Time Stamp Flag0 = Time Stamp not present1 = Time Stamp presentTime Stamp when 1
2Pulse Rate Flag0 = Pulse Rate not present1 = Pulse Rate presentPulse Rate when 1
3User ID Flag0 = User ID not present1 = User ID presentUser ID when 1
4Measurement Status Flag0 = Measurement Status not present1 = Measurement Status presentMeasurement Status when 1
5User Facing Time Flag0 = User Facing Time not present1 = User Facing Time presentUser Facing Time when 1
6Epoch Start 2000 Flag0 = Epoch start is January 1, 1900 (00:00:00)1 = Epoch start is January 1, 2000 (00:00:00)—
7Reserved for Future Use—

Blood Pressure Measurement Compound Value (mmHg)

The structure of this field is defined below.

FieldData typeSizeDescription
Systolic (mmHg)medfloat162Unit: org.bluetooth.unit.pressure.millimetre_of_mercury
Diastolic (mmHg)medfloat162Unit: org.bluetooth.unit.pressure.millimetre_of_mercury
Mean Arterial Pressure (mmHg)medfloat162Unit: org.bluetooth.unit.pressure.millimetre_of_mercury

Blood Pressure Measurement Compound Value (kPa)

The structure of this field is defined below.

FieldData typeSizeDescription
Systolic (kPa)medfloat162Base Unit: org.bluetooth.unit.pressure.pascal;M = 1, d = 3, and b = 0
Diastolic (kPa)medfloat162Base Unit: org.bluetooth.unit.pressure.pascal;M = 1, d = 3, and b = 0
Mean Arterial Pressure (kPa)medfloat162Base Unit: org.bluetooth.unit.pressure.pascal;M = 1, d = 3, and b = 0

Time Stamp

This field represents the Sensor time in seconds since the epoch start time. The epoch start is on January 1 of 1900, or 2000 at 00:00:00, depending on the value of the Epoch Start 2000 Flag.When both the Time Stamp field and the User Facing Time field are present, the Time Stamp field represents the base time (possibly UTC aligned) and does not take into account time zone, DST adjustments or manual adjustments of the time displayed to a user.

User Facing Time

This field represents the user facing time in seconds since the epoch start time. The epoch start is on January 1 of 1900, or 2000 at 00:00:00, depending on the value of the Epoch Start 2000 Flag.User facing time takes into account time zone, DST adjustments and manual adjustments of the time displayed to a user.

Guides on this site

The metric Enhanced Blood Pressure Measurement carries, on every platform this site covers — each type quoted in its platform's own words:

No guide on this site names 0x2B34 yet. The connected-devices guides cover pairing, subscribing and testing for the device types they do name.

Questions

What is the UUID of the Enhanced Blood Pressure Measurement characteristic?
0x2B34. The Bluetooth SIG's characteristic_uuids.yaml lists Enhanced Blood Pressure Measurement as 0x2B34 with the identifier org.bluetooth.characteristic.enhanced_blood_pressure_measurement. No file in the SIG's repository ties it to a service: the repository lists service and characteristic UUIDs separately. Enhanced Intermediate Cuff Pressure refers to it in its own structure.
Which Enhanced Blood Pressure Measurement fields are optional?
7 of its 8 fields have a published size that can be zero: Blood Pressure Measurement Compound Value (mmHg) (0 or 6; Present if bit 0 of Flags field is set to 0); Blood Pressure Measurement Compound Value (kPa) (0 or 6; Present if bit 0 of Flags field is set to 1); Time Stamp (0 or 4; Present if bit 1 of Flags field is set to 1); Pulse Rate (0 or 2; Present if bit 2 of Flags field is set to 1); User ID (0 or 1; Present if bit 3 of Flags field is set to 1); Measurement Status (0 or 2; Present if bit 4 of Flags field is set to 1); User Facing Time (0 or 4; Present if bit 5 of Flags field is set to 1). Flags (1) has a fixed size.
What units does Enhanced Blood Pressure Measurement use?
The SIG's text names a unit for 1 of the 8 fields: Pulse Rate: period (beats per minute) (org.bluetooth.unit.period.beats_per_minute).
What do the bits of the Enhanced Blood Pressure Measurement Flags field mean?
The SIG defines them as: bit 0, Blood Pressure Measurement Units Flag; 0 = Blood pressure for Systolic, Diastolic and MAP in units of mmHg; 1 = Blood pressure for Systolic, Diastolic and MAP in units of kPa (Blood Pressure Measurement Compound Value (mmHg) when 0, Blood Pressure Measurement Compound Value (kPa) when 1); bit 1, Time Stamp Flag; 0 = Time Stamp not present; 1 = Time Stamp present (Time Stamp when 1); bit 2, Pulse Rate Flag; 0 = Pulse Rate not present; 1 = Pulse Rate present (Pulse Rate when 1); bit 3, User ID Flag; 0 = User ID not present; 1 = User ID present (User ID when 1); bit 4, Measurement Status Flag; 0 = Measurement Status not present; 1 = Measurement Status present (Measurement Status when 1); bit 5, User Facing Time Flag; 0 = User Facing Time not present; 1 = User Facing Time present (User Facing Time when 1); bit 6, Epoch Start 2000 Flag; 0 = Epoch start is January 1, 1900 (00:00:00); 1 = Epoch start is January 1, 2000 (00:00:00). The remaining bits are reserved for future use.

Source

Read on 2026-10-17 from gss/org.bluetooth.characteristic.enhanced_blood_pressure_measurement.yaml and assigned_numbers/uuids/characteristic_uuids.yaml in the Bluetooth SIG’s public repository (branch main, commit 408f4a0, committed 2026-10-14), by scripts/fetch-bluetooth-gatt.mjs. The file’s notice says it is proprietary to Bluetooth SIG, that furnishing it grants no licence, and that it is subject to change without notice; it is © Bluetooth SIG, Inc., and its text is quoted here for identification. Generated by AIFitnessAPI, which is not affiliated with Bluetooth SIG; the SIG’s file remains the authority. The full notice and the conventions used on these pages are on the reference hub.

← All Bluetooth GATT characteristics