Bluetooth LE SDK Version 10.1.0 (July 21, 2025) - Release Notes#

Bluetooth LE Version 10.1.0

Simplicity SDK Version 2025.6.1

The Bluetooth Host Stack is a Bluetooth 6.0-compliant stack that provides the core functionality along with multiple API to simplify development. The core functionality offers both standalone mode, allowing a developer to create and run their application directly on the SoC, or in NCP mode allowing for the use of an external host MCU.

Click here for earlier releases.

Release Summary#

Key Features | API Changes | Bug Fixes | Chip Enablement

Key Features#

Added in 10.1.0#

None.

Added in 10.0.0#

  • Support for larger BGAPI payload size in SoC applications with compile-time configurability.

  • Support for larger ATT MTU size.

API Changes#

Changed in 10.1.0#

None.

Changed in 10.0.0#

  • Modified GATT client and server APIs for supporting larger ATT MTU size.

  • New APIs for Periodic Advertising Synchronization Transfer (PAST) over Periodic Advertising with Responses (PAwR).

  • New APIs for sending a notification or indication to the GATT client with additional options.

Bug Fixes#

  • Bug fixes in Periodic Advertising, GATT caching and bonding.

Chip Enablement#

None.

Key Features#

New Features | Enhancements | Removed Features | Deprecated Features

New Features#

Added in 10.1.0#

  • The parameters of a PAwR train can be changed while the advertising is active.

  • Periodic Advertising Synchronization Transfer (PAST) over PAwR provides an efficient mechanism to synchronize with another PAwR train or to maintain synchronization when the parameters of an ongoing PAwR train change.

Added in 10.0.0#

  • The BGAPI payload size is configurable with SL_BGAPI_MAX_PAYLOAD_SIZE in component bgapi_protocol at application compile-time.

The configuration affects all software components that use the BGAPI protocol, i.e., Bluetooth host stack and Bluetooth Mesh software.

The value defaults to the previous hardcoded value of 256 bytes.

  • Maximum ATT MTU size supported by the host stack is calculated from the BGAPI payload size at run time. The maximum ATT MTU size is set as (BGAPI payload size - 7) bytes.

  • New component bluetooth_feature_gatt_client_att_mtu_request_only provides a minimal GATT Client to automatically initiate an ATT MTU exchange procedure when the GATT connection is open. This component does not provide the GATT Client API. Use the GATT Server API sl_bt_gatt_server_set_max_mtu to set the maximum size of ATT MTU in the Bluetooth Host Stack.

Enhancements#

Added in 10.1.0#

None.

Added in 10.0.0#

  • New components bluetooth_feature_connection_role_central and bluetooth_feature_connection_role_peripheral provide the support for a specific connection role. When an application includes bluetooth_feature_connection, the application should also include one or both of the role-specific components based on the application's needs. This approach helps minimize the code size by keeping only the necessary functionality in the build. For existing projects that only use bluetooth_feature_connection, an upgrade rule will automatically add role-specific components to ensure backward compatibility when the project is upgraded.

  • The Bluetooth security manager now automatically drops the central or peripheral state machine if either the bluetooth_feature_connection_role_central or the bluetooth_feature_connection_role_peripheral component, respectively, is not included in the application.

  • New configuration SL_BT_CONFIG_EXTERNAL_LOCAL_IRK in the bluetooth_feature_external_bonding_database component to allow the application to store the local IRK.

Removed Features#

Removed in 10.1.0#

None.

Removed in 10.0.0#

Removed Feature

Was Deprecated?

The BLE support for Amazon AWS IoT

Yes

Deprecated Features#

None.

API Changes#

New APIs | Modified APIs | Removed APIs | Deprecated APIs

New APIs#

Added in 10.1.0#

None.

Added in 10.0.0#

New API Signature

Deprecated API replaced by this (if any)

sl_status_t sl_bt_past_receiver_set_default_sync_receive_over_sync_parameters

N/A

sl_status_t sl_bt_past_receiver_set_sync_receive_over_sync_parameters

N/A

sl_status_t sl_bt_pawr_advertiser_change_parameters

N/A

sl_status_t sl_bt_advertiser_past_transfer_over_pawr_advertiser

N/A

sl_status_t sl_bt_gatt_server_send_notification_with_options

N/A

sl_status_t sl_bt_gatt_server_send_indication_with_options

N/A

sl_status_t sl_bgapi_obtain_message_buffer

N/A

sl_status_t sl_bgapi_release_message_buffer

N/A

sl_status_t sl_bgapi_execute_binary_command

sl_bgapi_lock, sl_bgapi_unlock, sl_bgapi_handle_command, sl_bgapi_get_command_response

Modified APIs#

Modified in 10.1.0#

None.

Modified in 10.0.0#

Old API

Modified

sl_bt_evt_pawr_sync_transfer_received

sl_bt_evt_pawr_sync_transfer_received has a new field receiving_sync to identify the sync that received the periodic advertising synchronization information, if the transfer occurred over periodic advertising.

sl_status sl_bt_gatt_read_multiple_characteristic_values

A new message ID is assigned. The 8-bit length field of the data array is replaced with a 16-bit length field.

sl_status sl_bt_gatt_read_variable_length_characteristic_values

A new message ID is assigned. The length field of the data array is changed from 8-bit to 16-bit.

sl_status sl_bt_gatt_write_characteristic_value

A new message ID is assigned. The length field of the data array is changed from 8-bit to 16-bit.

sl_status sl_bt_gatt_write_characteristic_value_without_response

A new message ID is assigned. The length field of the data array is changed from 8-bit to 16-bit.

sl_status sl_bt_gatt_prepare_characteristic_value_write

A new message ID is assigned. The length field of the data array is changed from 8-bit to 16-bit.

sl_status sl_bt_gatt_prepare_characteristic_value_reliable_write

A new message ID is assigned. The length field of the data array is changed from 8-bit to 16-bit.

sl_status sl_bt_gatt_write_descriptor_value

A new message ID is assigned. The length field of the data array is changed from 8-bit to 16-bit.

sl_status sl_bt_gatt_server_read_attribute_value

A new message ID is assigned. The length field of the data array is changed from 8-bit to 16-bit.

sl_status sl_bt_gatt_server_write_attribute_value

A new message ID is assigned. The length field of the data array is changed from 8-bit to 16-bit.

sl_status sl_bt_gatt_server_send_user_read_response

A new message ID is assigned. The length field of the data array is changed from 8-bit to 16-bit.

sl_status sl_bt_gatt_server_send_notification

A new message ID is assigned. The length field of the data array is changed from 8-bit to 16-bit.

sl_status sl_bt_gatt_server_send_user_prepare_write_response

A new message ID is assigned. The length field of the data array is changed from 8-bit to 16-bit.

sl_bt_evt_gatt_characteristic_value

A new message ID is assigned. Type uint8array in the data structure is changed to byte_array.

sl_bt_evt_gatt_descriptor_value

A new message ID is assigned. Type uint8array in the data structure is changed to byte_array.

sl_bt_evt_gatt_server_attribute_value

A new message ID is assigned. Type uint8array in the data structure is changed to byte_array.

sl_bt_evt_gatt_server_user_write_request

A new message ID is assigned. Type uint8array in the data structure is changed to byte_array.

sl_status sl_bt_system_get_version

The parameter build is unused and the value is set to 0.

sl_bt_evt_system_boot

The parameter build is unused and the value is set to 0.

Removed APIs#

Removed in 10.1.0#

None.

Removed in 10.0.0#

Removed API Name

Was Deprecated?

BG_VERSION_MAJOR

Yes

BG_VERSION_PATCH

Yes

BG_VERSION_BUILD

Yes

BG_VERSION_HASH

Yes

SL_BT_VERSION_BUILD

Yes

Deprecated APIs#

Deprecated in 10.1.0#

None.

Deprecated in 10.0.0#

Deprecated API Name

Planned Removal Date

sl_status_t sl_bgapi_lock

June 2026

void sl_bgapi_unlock

June 2026

void sl_bgapi_handle_command

June 2026

void* sl_bgapi_get_command_response

June 2026

Field linklayer_priorities of sl_bt_stack_config_t in stack configuration sl_bt_stack_config.h is deprecated and replaced by configuration SL_BTCTRL_SCHEDULER_PRIORITIES in the Bluetooth Low Energy Controller component.

June 2026

Bug Fixes#

Fixed in 10.1.0#

None.

Fixed in 10.0.0#

ID Issue Description GitHub / Salesforce Reference (if any) Affected Software Variants, Hardware, Modes, Host Interfaces
1410345 Fixed an issue in the Bluetooth stack that the TX power value is not included in the extended advertising packet if the extended advertising is automatically started by command sl_bt_periodic_advertiser_start with the SL_BT_PERIODIC_ADVERTISER_INCLUDE_TX_POWER flag. None All; generic software issue
1438770 Ensure that GATT caching does not calculate the hash if the application configuration causes GATT caching feature to be nonfunctional (e.g., when AES-CMAC is not enabled). None All; generic software issue
1458635 Fixed an issue in the host stack that the bonding on a new connection will fail if the local device as the central role uses privacy and has enabled scanning before initiating the new connection creation. The workaround for this issue is to disable and enable the privacy again before initiating a new connection creation. None All; generic software issue

Impact of Release Changes#

Impact Statements and Migrations from 9.x to 10.0.0#

Change Migration Guide Affected Software Variants if applicable Affected Modes Affected OPNs / Boards / OPN Combinations Affected Host Interfaces
Message ID changes in GATT client and server APIs affect NCP host applications that use the binary format of BGAPI. Rebuild NCP host applications on SiSDK 2025.6. All NCP Hardware agnostic N/A
The increase in data array length field of GATT client and server APIs may cause compiler warnings if the application uses 8-bit variables for the length of GATT data. Update the variable to 16-bit unsigned integer type. All All Hardware agnostic N/A
The type change from 'uint8array' to 'byte_array' in the data structures of GATT client and server events causes compiling errors if type 'uint8array' is used in event handling functions for directly passing the user data of a received event. Change the type from 'uint8array' to 'byte_array'. All All Hardware agnostic N/A
The increase in data array length field of GATT client and server APIs adds one byte to the BGAPI overhead. Consequently, the default configuration of 256 bytes for the BGAPI payload will now allow an ATT MTU of 249 bytes, which is one byte less than the previous 250 bytes. To achieve higher ATT MTU values, applications can configure SL_BGAPI_MAX_PAYLOAD_SIZE to a value greater than the default 256 bytes. All All Hardware agnostic N/A

Known Issues and Limitations#

ID Issue or Limitation Description GitHub / Salesforce Reference (if any) Workaround (if any) Affected Software Variants, Hardware, Modes, Host Interfaces
1417141 The OTA DFU fast mode in the Bootloader with Apploader is unreliable due to the chance of packet losses. None Use OTA DFU reliable mode. All