Intermediate Temperature (0x2A1E): byte layout
GATT characteristic · org.bluetooth.characteristic.intermediate_temperature · read from the Bluetooth SIG’s repository on 2026-10-17 · commit 408f4a0 (2026-10-14)
Intermediate Temperature is Bluetooth GATT characteristic 0x2A1E, org.bluetooth.characteristic.intermediate_temperature in the Bluetooth SIG's assigned numbers. The SIG's GATT Specification Supplement file lays its value out as 5 fields: Flags, Intermediate Temperature (Celsius), Intermediate Temperature (Fahrenheit), Time Stamp and Temperature Type. The first, Flags, is a boolean[8]; 4 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
- 0x2A1E
- Identifier
org.bluetooth.characteristic.intermediate_temperature- The SIG’s description
- The Intermediate Temperature characteristic is used to send intermediate temperature values to a device for display purposes while a measurement is in progress. The Intermediate Temperature characteristic has the same format as the Temperature Measurement characteristic in Temperature Measurement (0x2A1C) except that, due to a different context, the Measurement Value field is referred to as the Intermediate Temperature field.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.
- Source file
- gss/org.bluetooth.characteristic.intermediate_temperature.yaml
Byte layout: 5 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.
| Offset | Field | Type | Size | Present when | Unit |
|---|---|---|---|---|---|
| 0 | Flags | boolean[8] | 1 | Always (fixed size) | — |
| 1 | Intermediate Temperature (Celsius) | medfloat32 | 0 or 4 | Bit 0 of Flags is 0 | Celsius temperature (degree Celsius)org.bluetooth.unit.thermodynamic_temperature.degree_celsius |
| Depends on Flags (bit 0) | Intermediate Temperature (Fahrenheit) | medfloat32 | 0 or 4 | Bit 0 of Flags is 1 | thermodynamic temperature (degree Fahrenheit)org.bluetooth.unit.thermodynamic_temperature.degree_fahrenheit |
| Depends on Flags (bit 0) | Time Stamp | struct | 0 or 7 | Bit 1 of Flags is 1 | — |
| Depends on Flags (bits 0 and 1) | Temperature Type | uint8 | 0 or 1 | Bit 2 of Flags is 1 | — |
Field notes
Each field’s text in the SIG’s file, line by line.
- Flags boolean[8] · 1
- See Flags.
- Intermediate Temperature (Celsius) medfloat32 · 0 or 4
- This field contains a measurement value.Unit: org.bluetooth.unit.thermodynamic_temperature.degree_celsius.Present if bit 0 of Flags field is set to 0
- Intermediate Temperature (Fahrenheit) medfloat32 · 0 or 4
- This field contains a measurement value.Unit: org.bluetooth.unit.thermodynamic_temperature.degree_fahrenheit.Present if bit 0 of Flags field is set to 1
- Time Stamp struct · 0 or 7
- Refer to Date Time characteristic in Date Time (0x2A08).Present if bit 1 of Flags field is set to 1
- Temperature Type uint8 · 0 or 1
- The format of this field is the same as the format of the Temperature Type characteristic in Temperature Type (0x2A1D).Present if bit 2 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.
| Bit | Description | Fields its condition names |
|---|---|---|
| 0 | Temperature Units Flag0 = Intermediate Temperature in units of Celsius1 = Intermediate Temperature in units of Fahrenheit | Intermediate Temperature (Celsius) when 0Intermediate Temperature (Fahrenheit) when 1 |
| 1 | Time Stamp Flag0 = Time Stamp field not present1 = Time Stamp field present | Time Stamp when 1 |
| 2 | Temperature Type Flag0 = Temperature Type field not present1 = Temperature Type field present | Temperature Type when 1 |
| 3–7 | Reserved for Future Use | — |
Guides on this site
The metric Intermediate Temperature carries, on every platform this site covers — each type quoted in its platform's own words:
No guide on this site names 0x2A1E yet. The connected-devices guides cover pairing, subscribing and testing for the device types they do name.
Questions
- What is the UUID of the Intermediate Temperature characteristic?
- 0x2A1E. The Bluetooth SIG's characteristic_uuids.yaml lists Intermediate Temperature as 0x2A1E with the identifier org.bluetooth.characteristic.intermediate_temperature. No file in the SIG's repository ties it to a service: the repository lists service and characteristic UUIDs separately.
- Which Intermediate Temperature fields are optional?
- 4 of its 5 fields have a published size that can be zero: Intermediate Temperature (Celsius) (0 or 4; Present if bit 0 of Flags field is set to 0); Intermediate Temperature (Fahrenheit) (0 or 4; Present if bit 0 of Flags field is set to 1); Time Stamp (0 or 7; Present if bit 1 of Flags field is set to 1); Temperature Type (0 or 1; Present if bit 2 of Flags field is set to 1). Flags (1) has a fixed size.
- What units does Intermediate Temperature use?
- The SIG's text names a unit for 2 of the 5 fields: Intermediate Temperature (Celsius): Celsius temperature (degree Celsius) (org.bluetooth.unit.thermodynamic_temperature.degree_celsius); Intermediate Temperature (Fahrenheit): thermodynamic temperature (degree Fahrenheit) (org.bluetooth.unit.thermodynamic_temperature.degree_fahrenheit).
- What do the bits of the Intermediate Temperature Flags field mean?
- The SIG defines them as: bit 0, Temperature Units Flag; 0 = Intermediate Temperature in units of Celsius; 1 = Intermediate Temperature in units of Fahrenheit (Intermediate Temperature (Celsius) when 0, Intermediate Temperature (Fahrenheit) when 1); bit 1, Time Stamp Flag; 0 = Time Stamp field not present; 1 = Time Stamp field present (Time Stamp when 1); bit 2, Temperature Type Flag; 0 = Temperature Type field not present; 1 = Temperature Type field present (Temperature Type when 1). The remaining bits are reserved for future use.
Source
Read on 2026-10-17 from gss/org.bluetooth.characteristic.intermediate_temperature.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.