VelocAI logo Bluetooth Explorer Documentation

Bluetooth GATT Characteristic Reference

Cycling Power Control Point (0x2A66)

org.bluetooth.characteristic.cycling_power_control_point

The Cycling Power Control Point characteristic is used to request a specific function to be executed on the receiving device.

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.

PropertyValue
NameCycling Power Control Point
UUID0x2A66
Typeorg.bluetooth.characteristic.cycling_power_control_point
XML RootCharacteristic
Source Fileorg.bluetooth.characteristic.cycling_power_control_point.xml
Field Count5

Field Specification

Parsed field definitions from the source XML value structure.

Field Requirement Format Unit Exponent Notes
Op CodesMandatoryuint8---
Parameter ValueOptionalvariable---
Request Op CodeC1uint8--The Request Op Code is a sub field of the Parameter Value for "Response Code" Op Code.
Response ValueC1uint8--The Response Value is a sub field of the Parameter Value for "Response Code" Op Code
Response ParameterC2variable--The Response Parameter is a sub field of the Parameter Value for "Response Code" Op Code.

Byte Layout and Decode

Payload length is profile-defined or variable based on field formats.

function decodePayload(dataView, offset = 0) {
  const op_codes = dataView.getUint8(offset + 0);
  // Parse parameter_value (variable) according to Bluetooth format rules.
  const request_op_code = dataView.getUint8(offset + 1);
  const response_value = dataView.getUint8(offset + 2);
  // Parse response_parameter (variable) according to Bluetooth format rules.
  return { op_codes, parameter_value, request_op_code, response_value, response_parameter };
}

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 Cycling Power Control Point in Bluetooth GATT?

Cycling Power Control Point is defined as a Bluetooth GATT characteristic entry with type org.bluetooth.characteristic.cycling_power_control_point and UUID 0x2A66.

What UUID identifies Cycling Power Control Point?

The UUID for Cycling Power Control Point is 0x2A66.

How should I parse Cycling Power Control Point?

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.