src.bluetooth_sig.gatt.characteristics.blood_pressure_record

Blood Pressure Record characteristic implementation.

Implements the Blood Pressure Record characteristic (0x2B36). This is a segmented record container that wraps another characteristic value identified by a 16-bit UUID.

Structure (from GSS YAML):
Segmentation Header (1 byte):

Bit 0: First Segment Bit 1: Last Segment Bits 2-7: Rolling Segment Counter (0-63)

Sequence Number (uint16) UUID (uint16) – identifies the recorded characteristic Recorded Characteristic (variable) – raw bytes of the inner characteristic E2E-CRC (uint16, optional) – presence defined by service

References

Bluetooth SIG Blood Pressure Service 1.1 org.bluetooth.characteristic.blood_pressure_record (GSS YAML)

Classes

Name

Description

BloodPressureRecordCharacteristic

Blood Pressure Record characteristic (0x2B36).

BloodPressureRecordData

Parsed data from Blood Pressure Record characteristic.

Module Contents

class src.bluetooth_sig.gatt.characteristics.blood_pressure_record.BloodPressureRecordCharacteristic(info: src.bluetooth_sig.types.CharacteristicInfo | None = None, validation: src.bluetooth_sig.gatt.characteristics.characteristic_meta.ValidationConfig | None = None)

Bases: src.bluetooth_sig.gatt.characteristics.base.BaseCharacteristic[BloodPressureRecordData]

Blood Pressure Record characteristic (0x2B36).

A segmented record container that wraps another characteristic value. The inner characteristic is identified by the UUID field and its raw bytes are stored in recorded_data.

allow_variable_length: bool = True
expected_type
min_length: int = 5
class src.bluetooth_sig.gatt.characteristics.blood_pressure_record.BloodPressureRecordData

Bases: msgspec.Struct

Parsed data from Blood Pressure Record characteristic.

first_segment

Whether this is the first segment of the record.

last_segment

Whether this is the last segment of the record.

segment_counter

Rolling segment counter (0-63).

sequence_number

Sequence number identifying this record.

uuid

16-bit UUID of the recorded characteristic.

recorded_data

Raw bytes of the recorded characteristic value.

e2e_crc

End-to-end CRC value. None if absent.

e2e_crc: int | None = None
first_segment: bool
last_segment: bool
recorded_data: bytes
segment_counter: int
sequence_number: int
uuid: bluetooth_sig.types.uuid.BluetoothUUID