Add missing GATT descriptor UUIDs
- 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