​The material contained on this page is informative only. Authoritative compliance information is contained in the applicable Bluetooth specification.


Name: Characteristic Presentation Format

Type: org.bluetooth.descriptor.gatt.characteristic_presentation_formatDownload / View

Assigned Number: 0x2904


The Characteristic Presentation Format descriptor defines the format of the Characteristic Value.

The information contained on this web page is informative.

Informative means that the text may provide background or context to the authoritative text contained in the adopted Bluetooth specification. Informative text is not considered when determining compliance to the Bluetooth specification. Please refer to the adopted Bluetooth specification for the normative (i.e. authoritative) text used to establish compliance. Compliance issues due to errors on this web page are not the responsibility of the Bluetooth SIG and rest solely with the member.


One or more Characteristic Presentation Format descriptors may be present. If multiple of these descriptors are present, then a Aggregate Formate descriptor is present. This descriptor is read only and does not require authentication or authorization to read. This descriptor is composed of five parts: format, exponent, unit, name space and description. The Format field determines how a single value contained in the Characteristic Value is formatted. The Exponent field is used with interger data types to determine how the Characteristic Value is furhter formatted. The actual value = Characteristic Value * 10^Exponent.


When encoding an IPv4 address, the uint32 Format type is used.

When encoding an IPv6 address, the uint128 Format type is used.

When encoding a Bluetooth address (BD_ADDR), the uint48 Format type is used.

For a Characteristic Value of 23 and an Exponent of 2, the actual value is 2300

For a Characteristi Value of 3892 and an Exponent of -3, the actual value is 3.892

Value Fields

Names Field Requirement Format Minimum Value Maximum Value Additional Information
8bit 0 27
Key Value
0 Reserved For Future Use
1 Boolean
2 unsigned 2-bit integer
3 unsigned 4-bit integer
4 unsigned 8-bit integer
5 unsigned 12-bit integer
6 unsigned 16-bit integer
7 unsigned 24-bit integer
8 unsigned 32-bit integer
9 unsigned 48-bit integer
10 unsigned 64-bit integer
11 unsigned 128-bit integer
12 signed 8-bit integer
13 signed 12-bit integer
14 signed 16-bit integer
15 signed 24-bit integer
16 signed 32-bit integer
17 signed 48-bit integer
18 signed 64-bit integer
19 signed 128-bit integer
20 IEEE-754 32-bit floating point
21 IEEE-754 64-bit floating point
22 IEEE-11073 16-bit SFLOAT
23 IEEE-11073 32-bit FLOAT
24 IEEE-20601 format
25 UTF-8 string
26 UTF-16 string
27 Opaque Structure
28 - 255 Reserved
sint8 N/A N/A None
The Unit is a UUID.
uint16 N/A N/A None
The Name Space field is used to indentify the organization that is responsible for defining the enumerations for the description field.
8bit 0 1
Key Value
1 Bluetooth SIG Assigned Numbers
2 - 255 Reserved for future use
The Description is an enumerated value from the organization identified by the Name Space field.
16bit N/A N/A None