apache / apache/mynewt-nimble

Add missing GATT descriptor UUIDs

Open
#217 2 comments 1 reaction 0 assignees View on GitHub
enhancement
Dominant language
C
Stars
893
Forks
512
Avg merge
13d 31m
Merged PRs (30d)
7

Description

The current release of nimble includes a define for the [client characteristic configuration descriptor (0x2902)](https://github.com/apache/mynewt-nimble/blob/master/nimble/host/include/host/ble_gatt.h#L46). None of the other [official descriptor UUIDs](https://www.bluetooth.com/specifications/gatt/descriptors) are present in `ble_gatt.h`.

In order to make use of the [characteristic user description (0x2901)](https://www.bluetooth.com/specifications/gatt/viewer?attributeXmlFile=org.bluetooth.descriptor.gatt.characteristic_user_description.xml), I currently have to define this myself or hard-code the value, both of which seem unfortunate.

Would it be appropriate to add at least the more commonly used ones, or does the current code operate under the premise that defines are only added as they are needed in the library itself or the larger mynewt-core repository? As limiting as that may be, I understand the goal of avoiding code bloat.

Contributor guide

No contributing guide indexed for this repository

Research direction

Start with nimble/host/include/host/ble_gatt.h and compare its existing client characteristic configuration descriptor define with the official Bluetooth GATT descriptor UUID list linked in the issue. Determine which descriptors should be included under the project's stated policy, then add the agreed missing defines and verify the header remains consistent.

Written by the indexing model from the issue text.

Assessment

Tech stack
c
Domain
embedded-iot
Issue type
Feature
Difficulty
2/5
Estimated time
1-3 hours
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
38/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.