Skip to main content
DS.4
Senior
Jun 2, 2021 8:37 AM UTC
Solved

BLE hci command aci_gatt_update_char_value_ext

Can anyone tell me what Update_Type parameter does in this fucntion?

tBleStatus aci_gatt_update_char_value_ext( uint16_t Conn_Handle_To_Notify,
 
 uint16_t Service_Handle,
 
 uint16_t Char_Handle,
 
 uint8_t Update_Type, // -------> What values can it get? What does it do?
 
 uint16_t Char_Length,
 
 uint16_t Value_Offset,
 
 uint8_t Value_Length,
 
 const uint8_t* Value )
 

Is there any description documentation regarding the hci BLE messaging to BLE side?

Thansk?

This topic has been closed for replies.
BStic.1
BStic.1Best answer
Associate II
Jun 9, 2021 9:04 PM UTC

Check out the header file that contains the prototype, it explains the options.

/**
 * @brief ACI_GATT_UPDATE_CHAR_VALUE_EXT
 * This command is a more flexible version of ACI_GATT_UPDATE_CHAR_VALUE to
 * support update of long attribute up to 512 bytes and indicate selectively
 * the generation of Indication/Notification.
 * 
 * @param Conn_Handle_To_Notify Connection handle to notify. Notify all
 * subscribed clients if equal to 0x0000
 * @param Service_Handle Handle of service to which the characteristic belongs
 * @param Char_Handle Handle of the characteristic declaration
 * @param Update_Type Allow Notification or Indication generation,
 * if enabled in the client characteristic configuration descriptor
 * Flags:
 * - 0x00: Do not notify
 * - 0x01: Notification
 * - 0x02: Indication
 * @param Char_Length Total length of the characteristic value.
 * In case of a variable size characteristic, this field specifies the
 * new length of the characteristic value after the update; in case of
 * fixed length characteristic this field is ignored.
 * @param Value_Offset The offset from which the attribute value has to be
 * updated.
 * @param Value_Length Length of the Value parameter in octets
 * @param Value Updated characteristic value
 * @return Value indicating success or error code.
 */
tBleStatus aci_gatt_update_char_value_ext( uint16_t Conn_Handle_To_Notify,
 uint16_t Service_Handle,
 uint16_t Char_Handle,
 uint8_t Update_Type,
 uint16_t Char_Length,
 uint16_t Value_Offset,
 uint8_t Value_Length,
 const uint8_t* Value );

1 reply

BStic.1
BStic.1Best answer
Associate II
Jun 9, 2021 9:04 PM UTC

Check out the header file that contains the prototype, it explains the options.

/**
 * @brief ACI_GATT_UPDATE_CHAR_VALUE_EXT
 * This command is a more flexible version of ACI_GATT_UPDATE_CHAR_VALUE to
 * support update of long attribute up to 512 bytes and indicate selectively
 * the generation of Indication/Notification.
 * 
 * @param Conn_Handle_To_Notify Connection handle to notify. Notify all
 * subscribed clients if equal to 0x0000
 * @param Service_Handle Handle of service to which the characteristic belongs
 * @param Char_Handle Handle of the characteristic declaration
 * @param Update_Type Allow Notification or Indication generation,
 * if enabled in the client characteristic configuration descriptor
 * Flags:
 * - 0x00: Do not notify
 * - 0x01: Notification
 * - 0x02: Indication
 * @param Char_Length Total length of the characteristic value.
 * In case of a variable size characteristic, this field specifies the
 * new length of the characteristic value after the update; in case of
 * fixed length characteristic this field is ignored.
 * @param Value_Offset The offset from which the attribute value has to be
 * updated.
 * @param Value_Length Length of the Value parameter in octets
 * @param Value Updated characteristic value
 * @return Value indicating success or error code.
 */
tBleStatus aci_gatt_update_char_value_ext( uint16_t Conn_Handle_To_Notify,
 uint16_t Service_Handle,
 uint16_t Char_Handle,
 uint8_t Update_Type,
 uint16_t Char_Length,
 uint16_t Value_Offset,
 uint8_t Value_Length,
 const uint8_t* Value );