Perform a Generic Attribute (GATT) call to retrieve a list of characteristics for a provided primary service.
Synopsis:
#include <btapi/btgatt.h>
int bt_gatt_characteristics(int instance, bt_gatt_characteristic_t *characteristics, uint16_t size)
Arguments:
- instance
-
The identifier used to reference the connected primary service.
- characteristics
-
An array of characteristics that is populated when the function completes successfully.
- size
-
The size of the array passed to the function.
Library:
libbtapi (For the qcc command, use the -l btapi option to link against this library)
Returns:
The number of characteristics retrieved when the function is successfully completed,
-1 with the
errno set otherwise. The error codes that can be returned are as follows:
- EACCESS: Insufficient authentication or authorization.
- EBUSY: The stack was busy performing another operation. You can try again later.
- EDEADLK: A potential deadlock has been avoided.
- EINVAL: The arguments passed are invalid or the connection to the remote Bluetooth-enabled device is unavailable.
- ENODEV: Unable to find the service connection defined by the instance argument.
- ENOMEM: Insufficient memory to perform the request.
- ENOSYS: The operation failed at the stack level.
- EPROTO: The operation failed because the response from remote Bluetooth-enabled device had a protocol error.
- ESRCH: The service connection was not available.
- ESRVRFAULT: An internal error has occurred.