Embassy
nrf-softdevice-s132

Crates

git

Versions

default

Flavors

pub unsafe fn sd_ble_gatts_service_changed(
conn_handle: u16,
start_handle: u16,
end_handle: u16
) -> u32
Expand description

@brief Indicate the Service Changed attribute value.

@details 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 @ref BLE_GATTS_EVT_SC_CONFIRM event will be issued.

@note Some of the restrictions and limitations that apply to @ref sd_ble_gatts_hvx also apply here.

@events @event{@ref BLE_GATTS_EVT_SC_CONFIRM, Confirmation of attribute table change received from peer.} @endevents

@mscs @mmsc{@ref BLE_GATTS_SC_MSC} @endmscs

@param[in] conn_handle Connection handle. @param[in] start_handle Start of affected attribute handle range. @param[in] end_handle End of affected attribute handle range.

@retval ::NRF_SUCCESS Successfully queued the Service Changed indication for transmission. @retval ::BLE_ERROR_INVALID_CONN_HANDLE Invalid Connection Handle. @retval ::NRF_ERROR_NOT_SUPPORTED Service Changed not enabled at initialization. See @ref sd_ble_cfg_set and @ref ble_gatts_cfg_service_changed_t. @retval ::NRF_ERROR_INVALID_STATE One 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 @retval ::NRF_ERROR_INVALID_PARAM Invalid parameter(s) supplied. @retval ::BLE_ERROR_INVALID_ATTR_HANDLE Invalid attribute handle(s) supplied, handles must be in the range populated by the application. @retval ::NRF_ERROR_BUSY Procedure already in progress. @retval ::BLE_ERROR_GATTS_SYS_ATTR_MISSING System attributes missing, use @ref sd_ble_gatts_sys_attr_set to set them to a known value. @retval ::NRF_ERROR_TIMEOUT There has been a GATT procedure timeout. No new GATT procedure can be performed without reestablishing the connection.