S145 SoftDevice for nRF54L15/nRF54L10/nRF54L05 API documentation 10.0.0
Loading...
Searching...
No Matches

◆ sd_ble_gatts_service_changed()

uint32_t sd_ble_gatts_service_changed ( uint16_t conn_handle,
uint16_t start_handle,
uint16_t end_handle )

#include <ble_gatts.h>

Indicate the Service Changed attribute value.

This call will send a Handle Value Indication to one or more peers connected to inform them that the Attribute Table layout has changed. As soon as the peer has confirmed the indication, a BLE_GATTS_EVT_SC_CONFIRM event will be issued.

Note
Some of the restrictions and limitations that apply to sd_ble_gatts_hvx also apply here.
Events generated
BLE_GATTS_EVT_SC_CONFIRMConfirmation of attribute table change received from peer.
Relevant Message Sequence Charts
GATTS Service Changed
Parameters
[in]conn_handleConnection handle.
[in]start_handleStart of affected attribute handle range.
[in]end_handleEnd of affected attribute handle range.
Return values
NRF_SUCCESSSuccessfully queued the Service Changed indication for transmission.
BLE_ERROR_INVALID_CONN_HANDLEInvalid Connection Handle.
NRF_ERROR_NOT_SUPPORTEDService Changed not enabled at initialization. See sd_ble_cfg_set and ble_gatts_cfg_service_changed_t.
NRF_ERROR_INVALID_STATEOne or more of the following is true:
  • Invalid Connection State
  • Notifications and/or indications not enabled in the CCCD
  • An ATT_MTU exchange is ongoing
NRF_ERROR_INVALID_PARAMInvalid parameter(s) supplied.
BLE_ERROR_INVALID_ATTR_HANDLEInvalid attribute handle(s) supplied, handles must be in the range populated by the application.
NRF_ERROR_BUSYProcedure already in progress.
BLE_ERROR_GATTS_SYS_ATTR_MISSINGSystem attributes missing, use sd_ble_gatts_sys_attr_set to set them to a known value.
NRF_ERROR_TIMEOUTThere has been a GATT procedure timeout. No new GATT procedure can be performed without reestablishing the connection.