Skip to content

Commit e5f324b

Browse files
committed
Bluetooth: GATT: Clarify start and end handles
Clarifies what does start_handle and end_handle means in the GATT API. Signed-off-by: Omkar Kulkarni <[email protected]>
1 parent 2efc859 commit e5f324b

File tree

1 file changed

+36
-13
lines changed
  • include/zephyr/bluetooth

1 file changed

+36
-13
lines changed

include/zephyr/bluetooth/gatt.h

+36-13
Original file line numberDiff line numberDiff line change
@@ -330,9 +330,9 @@ struct bt_gatt_service_val {
330330
struct bt_gatt_include {
331331
/** Service UUID. */
332332
const struct bt_uuid *uuid;
333-
/** Service start handle. */
333+
/** Starting attribute handle for included service. */
334334
uint16_t start_handle;
335-
/** Service end handle. */
335+
/** Ending attribute handle for included service. */
336336
uint16_t end_handle;
337337
};
338338

@@ -633,8 +633,8 @@ typedef uint8_t (*bt_gatt_attr_func_t)(const struct bt_gatt_attr *attr,
633633
*
634634
* Iterate attributes in the given range matching given UUID and/or data.
635635
*
636-
* @param start_handle Start handle.
637-
* @param end_handle End handle.
636+
* @param start_handle Starting attribute handle.
637+
* @param end_handle Ending attribute handle.
638638
* @param uuid UUID to match, passing NULL skips UUID matching.
639639
* @param attr_data Attribute data to match, passing NULL skips data matching.
640640
* @param num_matches Number matches, passing 0 makes it unlimited.
@@ -651,8 +651,8 @@ void bt_gatt_foreach_attr_type(uint16_t start_handle, uint16_t end_handle,
651651
*
652652
* Iterate attributes in the given range.
653653
*
654-
* @param start_handle Start handle.
655-
* @param end_handle End handle.
654+
* @param start_handle Starting attribute handle.
655+
* @param end_handle Ending attribute handle.
656656
* @param func Callback function.
657657
* @param user_data Data to pass to the callback.
658658
*/
@@ -1657,15 +1657,20 @@ struct bt_gatt_discover_params {
16571657
struct {
16581658
/** Include service attribute declaration handle */
16591659
uint16_t attr_handle;
1660-
/** Included service start handle */
1660+
/** Starting attribute handle for included service */
16611661
uint16_t start_handle;
1662-
/** Included service end handle */
1662+
/** Ending attribute handle for included service */
16631663
uint16_t end_handle;
16641664
} _included;
1665-
/** Discover start handle */
1665+
/** Starting attribute handle to begin discovery */
16661666
uint16_t start_handle;
16671667
};
1668-
/** Discover end handle */
1668+
/** Ending attribute handle to stop discovery at
1669+
*
1670+
* @note When discovery begins this can be set to
1671+
* @ref BT_ATT_LAST_ATTRIBUTE_HANDLE to discover all attributes
1672+
* in the service.
1673+
*/
16691674
uint16_t end_handle;
16701675
/** Discover type */
16711676
uint8_t type;
@@ -1772,9 +1777,27 @@ struct bt_gatt_read_params {
17721777
bool variable;
17731778
} multiple;
17741779
struct {
1775-
/** First requested handle number. */
1780+
/** @brief requested start attribute handle number.
1781+
*
1782+
* @details The starting handle is set to the starting point of the range
1783+
* over which this read should be performed. For example, this could be
1784+
* set to @ref BT_ATT_FIRST_ATTRIBUTE_HANDLE to set the starting point of
1785+
* the range at the beginning of the GATT database, or to the starting
1786+
* handle of a service after discovery.
1787+
*
1788+
* This value is also automatically incremented by the stack after
1789+
* processing each matching handle-value pair returned by the server.
1790+
*/
17761791
uint16_t start_handle;
1777-
/** Last requested handle number. */
1792+
/** @brief requested end attribute handle number.
1793+
*
1794+
* @details The ending handle is set to the ending point of the range over
1795+
* which this read should be performed. For example, this could be set to
1796+
* @ref BT_ATT_LAST_ATTRIBUTE_HANDLE to set the ending point of the range
1797+
* at the end of the GATT database, or to the end handle for service after
1798+
* discovery, where the end_handle is available in the
1799+
* @ref bt_gatt_service_val.
1800+
*/
17781801
uint16_t end_handle;
17791802
/** 2 or 16 octet UUID. */
17801803
const struct bt_uuid *uuid;
@@ -1789,7 +1812,7 @@ struct bt_gatt_read_params {
17891812

17901813
/** @brief Read Attribute Value by handle
17911814
*
1792-
* This procedure read the attribute value and return it to the callback.
1815+
* This procedure reads the attribute value and returns it to the callback.
17931816
*
17941817
* When reading attributes by UUID the callback can be called multiple times
17951818
* depending on how many instances of given the UUID exists with the

0 commit comments

Comments
 (0)