Bluetooth GATT Characteristic Reference
CGM Session Start Time (0x2AAA)
CGM Session Start Time is defined in the Bluetooth GATT XML specification with type org.bluetooth.characteristic.cgm_session_start_time and UUID 0x2AAA.
Quick Summary
Payload length is profile-defined or variable based on field formats. This page is generated from official GATT XML and presented as implementation-ready guidance.
At a Glance
Key reference details for BLE implementation, interoperability testing, and AI-assisted troubleshooting.
| Property | Value |
|---|---|
| Name | CGM Session Start Time |
| UUID | 0x2AAA |
| Type | org.bluetooth.characteristic.cgm_session_start_time |
| XML Root | Characteristic |
| Source File | org.bluetooth.characteristic.cgm_session_start_time.xml |
| Field Count | 4 |
Field Specification
Parsed field definitions from the source XML value structure.
| Field | Requirement | Format | Unit | Exponent | Notes |
|---|---|---|---|---|---|
| Session Start Time | Mandatory | N/A | - | - | Same format as the Date Time Characteristic, smallest unit in seconds |
| Time Zone | Mandatory | N/A | - | - | Same format as the Time Zone Characteristic |
| DST-Offset | Mandatory | N/A | - | - | Same format as the DST Offset Characteristic |
| E2E-CRC | C1 | uint16 | - | - | If the device supports E2E-safety (E2E-CRC-Supported bit is set in CGM Feature), the session start time is secured by a CRC calculated over all fields. |
Byte Layout and Decode
Payload length is profile-defined or variable based on field formats.
function decodePayload(dataView, offset = 0) {
// Parse session_start_time (N/A) according to Bluetooth format rules.
// Parse time_zone (N/A) according to Bluetooth format rules.
// Parse dst_offset (N/A) according to Bluetooth format rules.
const e2e_crc = dataView.getUint16(offset + 0, true);
return { session_start_time, time_zone, dst_offset, e2e_crc };
}
Use Cases and Integration Notes
BLE Telemetry
Map characteristic values into dashboards and alerts for device observability.
Firmware Regression
Compare decoded fields across builds to detect protocol or scaling changes.
App Integration
Build stable parsing paths that convert raw payloads into typed app models.
Implementation Checklist
- Validate payload length and mandatory fields before decode.
- Decode with Bluetooth-specified signedness, unit, and exponent handling.
- Convert units at presentation boundaries to avoid drift in business logic.
- Persist raw packets and decoded values for reproducible troubleshooting.
FAQ
What is CGM Session Start Time in Bluetooth GATT?
CGM Session Start Time is defined as a Bluetooth GATT characteristic entry with type org.bluetooth.characteristic.cgm_session_start_time and UUID 0x2AAA.
What UUID identifies CGM Session Start Time?
The UUID for CGM Session Start Time is 0x2AAA.
How should I parse CGM Session Start Time?
Payload length is profile-defined or variable based on field formats.
Where does this definition come from?
This page is generated from the Bluetooth SIG mirror XML in the oesmith/gatt-xml repository.
How does this page support BLE implementation?
The page combines structured tables, practical Q&A, and JSON-LD metadata to help teams validate integrations and troubleshoot consistently.