Bluetooth GATT Characteristic Reference
Body Composition Feature (0x2A9B)
Body Composition Feature is defined in the Bluetooth GATT XML specification with type org.bluetooth.characteristic.body_composition_feature and UUID 0x2A9B.
Quick Summary
Payload length is 4 bytes. 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 | Body Composition Feature |
| UUID | 0x2A9B |
| Type | org.bluetooth.characteristic.body_composition_feature |
| XML Root | Characteristic |
| Source File | org.bluetooth.characteristic.body_composition_feature.xml |
| Field Count | 1 |
Field Specification
Parsed field definitions from the source XML value structure.
| Field | Requirement | Format | Unit | Exponent | Notes |
|---|---|---|---|---|---|
| Body Composition Feature | Mandatory | 32bit | - | - | - |
Bit Map
Bit-level enumerations extracted from the XML BitField definition.
| Field | Bit | Size | Name | 0 Means | 1 Means |
|---|---|---|---|---|---|
| Body Composition Feature | 0 | 1 | Time Stamp Supported | False | True |
| Body Composition Feature | 1 | 1 | Multiple Users Supported | False | True |
| Body Composition Feature | 2 | 1 | Basal Metabolism Supported | False | True |
| Body Composition Feature | 3 | 1 | Muscle Percentage Supported | False | True |
| Body Composition Feature | 4 | 1 | Muscle Mass Supported | False | True |
| Body Composition Feature | 5 | 1 | Fat Free Mass Supported | False | True |
| Body Composition Feature | 6 | 1 | Soft Lean Mass Supported | False | True |
| Body Composition Feature | 7 | 1 | Body Water Mass Supported | False | True |
| Body Composition Feature | 8 | 1 | Impedance Supported | False | True |
| Body Composition Feature | 9 | 1 | Weight Supported | False | True |
| Body Composition Feature | 10 | 1 | Height Supported | False | True |
| Body Composition Feature | 11 | 4 | Mass Measurement Resolution | Not Specified | Resolution of 0.5 kg or 1 lb |
| Body Composition Feature | 15 | 3 | Height Measurement Resolution | Not Specified | Resolution of 0.01 meter or 1 inch |
Byte Layout and Decode
Payload length is 4 bytes.
function decodePayload(dataView, offset = 0) {
// Parse body_composition_feature (32bit) according to Bluetooth format rules.
return { body_composition_feature };
}
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 Body Composition Feature in Bluetooth GATT?
Body Composition Feature is defined as a Bluetooth GATT characteristic entry with type org.bluetooth.characteristic.body_composition_feature and UUID 0x2A9B.
What UUID identifies Body Composition Feature?
The UUID for Body Composition Feature is 0x2A9B.
How should I parse Body Composition Feature?
Payload length is 4 bytes.
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.