SILICON LABS Bluetooth LE SDK Low Energy LE Software User Guide
- July 9, 2024
- SILICON LABS
Table of Contents
SILICON LABS Bluetooth LE SDK Low Energy LE Software User Guide
Silicon Labs is a leading vendor in Bluetooth hardware and software technologies, used in products such as sports and fitness, consumer electronics, beacons, and smart home applications. The core SDK is an advanced Bluetooth 5.3-compliant stack that provides all of 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.
These release notes cover SDK version(s):
5.1.4.1 GA released July 3, 2024
5.1.4.0 GA released January 24, 2024
5.1.3.0 GA released August 16, 2023 (support for EFR32xG21, Revision C and
later plus
multiprotocol updates)
5.1.2.0 GA released May 3, 2023
5.1.1.0 GA released March 8, 2023
5.1.0.0 GA released February 1, 2023
5.0.0.0 GA released December 14, 2022
Compatibility and Use Notices
For information about security updates and notices, see the Security
chapter of the Gecko Platform Release notes installed with this SDK or on the
TECH DOCS tab on https://www.silabs.com/developers/bluetooth-low-energy.
Silicon Labs also strongly recommends that you subscribe to Security
Advisories for up-to-date information. For instructions as well as notes on
using Secure Vault features, or if you are new to the Silicon Labs Bluetooth
SDK, see
BLUETOOTH
KEY FEATURES
Bluetooth
- External bonding database to support infinite number of bonding’s and key sharing
- BGAPI event for Bluetooth buffer exhaustion signaling
- Active scan improvements
- Three-Wire UART (H5) Transport Layer for HCI (experimental)
- Certification-Based Authentication and Pairing for High- and Mid-Vault devices (experimental) Multiprotocol
- Dynamic Multiprotocol Bluetooth and multi-PAN 802.15.4 in RCP mode
- BLE de-init and re-init for multiprotocol use cases
- Dynamic Multiprotocol Bluetooth and Zigbee NCP – experimental
New Items
New Features
Added in release 5.1.1.0
The TrustZone solution is now available on all Bluetooth devices. Refer to
AN1374: Series 2 TrustZone for the implementation details.
bt_soc_csr_generator and bt_soc_cbap applications are now also available as a Simplicity Studio Solution that includes both the application and the appropriate bootloader project.
Added in release 5.1.0.0
Bluetooth AppLoader OTA DFU Configurations The
Bluetooth AppLoader OTA DFU software component has configuration options now.
When a custom device address is used, by default the address is read from the
MFG_CUSTOM_EUI_64 token in the User Data page. This default behavior can be
overridden by implementing the
bootloader_apploader_get_custom_device_address() function.
Added in release 5.0.0.0
External bonding database
The external bonding database is provided in this release as an optional
feature component. When the feature is used, the application stores the
persistent data of Bluetooth bondings. The Bluetooth stack sends BGAPI events
to the application to store bonding data and to request the application to
pass bonding data when needed.
Three-Wire UART transport layer support
Three-Wire UART transport layer support for HCI is available in this release.
Per-PHY Power Limit Configuration
A new per-PHY power limit configuration is available for specifying the
maximum output power when TX power is limited by power spectral density.
New AFH configuration for enabling high power
New SL_BT_CONFIG_AFH_ENABLE_HIGH_POWER configuration option is added to the
bluetooth_feature_afh component. Customers who want the device to behave as
FHS, that is to use high power, in regions where AFH is not mandatory can
enable this option only, and disable the SL_BT_CONFIG_AFH_ENABLE_AT_BOOT
configuration.
New configurations in Bluetooth Controller
The Bluetooth Controller component has two new configurations:
- SL_BT_CONTROLLER_COMPLETED_PACKETS_THRESHOLD for defining the number of transmitted air interface ACL packets to trigger the Number Of Completed Packets HCI event
- SL_BT_CONTROLLER_COMPLETED_PACKETS_EVENTS_TIMEOUT for defining the maximum number of connection events since the previous Number Of Completed Packets HCI event to trigger reporting of any unreported completed ACL packets.
Read Version over HCI
UC component bt_hci_version is added for HCI vendor specific read version
command.
MQTT mock component
MQTT mock component is available for the bt_aoa_host_locator example
application for testing purposes.
AoD receiver NCP example
The AoD receiver NCP example is available for Simplicity Studio Direction
Finding tools.
Object Transfer Service
The Object Transfer Service (OTS) is available for applications to use the
object transfer feature.
CTE transmitter SoC example
The CTE transmitter SoC example for Angle of Departure (AoD)
New Applications for TrustZone-compatible devices
bt_soc_csr_generator and bt_soc_cbap applications are now available for all
TrustZone-compatible devices.
New APIs
Added in release 5.0.0.0
sl_bt_gap_set_identity_address command: Set the Bluetooth identity
address for central and peripheral roles.
sl_bt_external_bondingdb_set_data command: Pass bonding data of a
connection from the external bonding database to the stack.
sl_bt_evt_external_bondingdb_data_request event: The Bluetooth stack
requests the bonding data of a connection from the external bonding database.
sl_bt_evt_external_bondingdb_data event: Indicates that updated bonding
data of a connection is available.
sl_bt_evt_external_bondingdb_data_ready event: The stack has received all
the necessary bonding data from the application.
sl_bt_evt_system_resource_exhausted event: Indicates the system is
running out of resources during the use of the Bluetooth stack.
New flag in sl_bt_system_linklayer_configure command: A new configuration
flag is added for enabling reporting all SCA_RSP pack- ets even if those are
not the responses to the scan request initiated by the local device.
New version constants in header sl_bt_version.h: SL_BT_VERSION_MAJOR, SL
BT VERSION_MINOR, SL_BT VERSION_PATCH, SL_BT_VERSION_BUILD, and
SL_BT_VERSIONHASH
**VS Silicon Labs Set Max Low Tx Power (0xfc1b):** New vendor-specific HCI
command for the per-PHY power limit configuration feature.
Improvements
Changed Items
Changed in release 5.0.0.0
Stack behavioral change in case of external bonding database
Following functionality or API behavioral changes when the external
bonding database feature is used:
- sl_bt_store_bonding_configuration command must be called to define the list size before adding devices to the accept list.
- The sl_bt_get_bonding_handles, sl_bt_get_bonding_details, and find_bonding_by_address commands are unavailable.
Bluetooth RTOS adaptation
The Bluetooth RTOS adaptation (bluetooth_rtos_adaptation) kernel object uses
dynamic memory allocation for improving adaptability, beginning with this
release. The heap usage in applications using this component is increased by
roughly 4900 bytes as a result of this change.
Bluetooth API for NCP host
The host-side NCP Bluetooth API in sl_bt_ncp_host.c now accepts NULL pointers
to output parameters. If an application does not need an output value that is
merely informational, the application can pass a NULL pointer to that output
parameter and avoid allocating storage for the output.
bootloader-apploader
The bootloader-apploader component can be used for both bt_soc_csr_generator
and bt_soc_cbap. Previously, the bootloader_bgapi_uart_bootloader was used
with bt_soc_csr_generator.
bt_soc_throughput_display example app
The bt_soc_throughput_display example app is no longer supported on BRD4169x
boards
Changed APIs
Fixed Issues
Fixed in release 5.1.4.0
ID # | Description |
---|---|
11057861132177 | Fixed the extended connection bakeoff procedure behavior. Now, |
when the Link Layer fails multiple times to receive a AUX_CONNECT_RSP after a
AUX_CONNECT_REQ is sent, an increasingly random number of connectable extended
advertisements are skipped before attempting to connect again.
1124749| Fixed an issue that could cause the Bluetooth stack to enter a live-
lock situation where no progress is made if buffer resources are exhausted
when the stack is generating critical events that require a retry in out-of-
memory situations.
1131945| Fixed an issue in the Uploader that the TX power is too low on
EFR32[M|B]G1x devices.
1143531| Fixed an issue that the EDIV and random values were always set to all
zero, potentially causing encryption to fail when reconnecting to a peripheral
that has been paired with legacy pairing.
1144105| Fixed an issue that the first connection packet was not received by
the peripheral if the peripheral was advertising using LE Coded PHY with S2
coding.
1164860| Fixed a bug that caused the Bluetooth link layer to transmit invalid
Tx and Rx maximum times in the LLCP_LENGTH_REQ and LLCP_LENGTH_RSP packets to
the remote device.
1192858| Improved advertisement report handling over the HCI interface. Now it
is possible to configure maximum number of queued advertisement reports. This
improves performance over slow HCI connection.
1196365| Fixed an issue seen with DTM when watchdog timer component presents.
1218018| Optimized connection establishments in a DMP configuration.
Previously packets were not processed fast enough in certain cases, resulting
in connection loss.
1218112| Fixed a race condition between the connection termination and channel
map update procedure that could cause a double buffer free.
Fixed in release 5.1.2.0
ID # | Description |
---|---|
1115163 | Fixed an issue where Extended Advertisement packets would not be |
transmitted if AFH was enabled and the advertisement interval was longer than
the AFH interval (default: 1 second).
1117851| Fixed the BGAPI event order so that the sl_bt_evt_connection_opened
event is sent to the application before the
sl_bt_evt_external_bondingdb_data_request event when the
bluetooth_feature_external_bonding_database feature is used.
1117852| The option “Allow connections only from bonded devices” of the
sl_bt_sm_configure() command is now ignored and treated as unsupported when
the application uses the bluetooth_feature_external_bonding_database feature.
1120955| Fixed a regression where channel maps in the connection creation
packets had reserved-for-future field bits set to 1.
1129475| Fixed a memory corruption issue in the GATT server that is caused by
a data truncation operation when the data buffer used for sending a prepare
write response has extra data payload to discard.
Fixed in release 5.1.1.0
ID # | Description |
---|---|
731981 | UG434 now only describes the priorities of interrupts used by the Link |
Layer and radio. Other interrupts, such as the USART interrupt, are not used
by the Bluetooth stack. Please check the priority settings in the
corresponding component to see if it uses the default priorities or has own
setting.
840102| Fixed a crash when the stack does not properly handle received data
during the disconnection of a Bluetooth connection. The fix was first released
to the Bluetooth SDK 4.0.0, and is available on all newer SDK versions.
1016107| For TrustZone-capable devices, the CBAP workspace can be used. Users
don’t have to create their own TrustZone solutions.
1039103| Fixed a crash that may happen during the pairing process when the
Bluetooth Controller runs on RTOS.
1080356| Fixed an issue that the Bluetooth stack could run out of memory if
the remote device sends a L2CAP packet that has a very long length value in
the L2CAP header.
1103368| Fixed a case where device could get stuck when operating as central
device and opening a connection using the extended connection request
procedure.
ID #| Description
---|---
1103786| Fixed an issue in the apploader_lib component on EFR32BG24 and
EFR32BG27 devices that the libapploader.a is not included correctly in the
bootloader-apploader project.
1105833| Fixed the HCI LE Rand command such that pseudorandom values are
generated each time command is issued.
Fixed in release 5.1.0.0
ID # | Description |
---|---|
1036645 | Fixed an issue in BLE CPC NCP that prevents a client application from |
reconnecting after the first disconnection.
1084216| Fixed an issue in the HCI Three-wire UART that causes a deadlock when
the acknowledge timeout of the controller is greater than the resending
timeout of the host.
1092646| Fixed an issue in the DTM RX scheduling that may cause the stack to
become unresponsive when the stack runs in RTOS.
Fixed in release 5.0.0.0
ID # | Description |
---|---|
1019590 | Fixed an issue that the sl_bt_system_get_counters() function will |
always return 0 for GRANT denied counts when using the rail_util_coex
component with Bluetooth.
1020072| Fixed the issue where the coex REQUEST is held asserted for a longer
duration than normal when a connection event pre-empts a lower-priority
passive scan event that is at or near completion.
1039172| Fixed multiple HCI packet handling in CPC-HCI bridge that causes a
GATT discovery failure.
1039636| Fixed an issue in the Bluetooth controller that overrides the low-
power amplifier configuration to the high-power amplifier if the application
selects the low-power amplifier. This issue causes an increase in transmission
current. The fix is available since the Bluetooth SDK 4.2.0.0.
1040323| The mandatory ADI field has been added to the AUX_ADV_IND PDUs.
1042501| Fixed an issue in AppLoader causing using static random address in
Series-2 devices to fail.
1043031| Fixed an issue with RAIL’s PA auto mode that would result in
selecting an unsupported RAIL_TxPowerMode_t on chip OPNs that are missing the
higher power PAs.
1057377| Fixed an issue that the Apploader hits an assertion causing the OTA
DFU to be unable to proceed on [M|B]GM240P modules.
1057775| Add BGM240P/BGM240S support in Bluetooth sample applications.
1058017| Fixed for the bt_aoa_host_locator example to use less CPU on the host
side.
10601181067617| Fixed an issue that causes efr32[M|B]g24 devices to stop
sending Bluetooth packets properly after several hours of operation.
1063497| Fixed an issue in the bt_ncp_host that it is unable to send data to
the device. This issue was introduced in Bluetooth SDK 4.2.0.
1067967| Fixed an issue that causes sl_bt_evt_sync_opened and
sl_bt_evt_sync_transfer_received events to report a wrong adv_phy value if the
periodic advertising train uses the coded PHY.
1068798| Fixed an issue that causes sl_bt_connection_get_tx_power() and
sl_bt_connection_get_remote_tx_power() to return an error when they are called
with phy value sl_bt_gap_phy_coding_500k_coded.
1069081| Fixed the vendor specific deinit command not working properly when
called over HCI.
1069305| The stack now adds the device name to scan response data packet as
needed when handling the command sl_bt_legacy_advertiser_generate_data() for
generating advertising data for legacy advertising PDUs.
1069609| Fixed an issue that makes it impossible to set scan parameters via
command sl_bt_cmd_scanner_set_parameters() when the component
bluetooth_feature_scanner is used, but neither the
bluetooth_feature_legacy_scanner nor bluetooth_feature_extended_scanner is.
1078436| Fixed the issue in Bluetooth SDK versions 4.0.0, 4.1.0, 4.2.0, and
4.2.1, where devices previously bonded with using Bluetooth SDK versions 3.3.2
or earlier appear to be not bonded.
Known Issues in the Current Release
Issues in bold were added since the previous release. If you have missed a release, recent release notes are available on https://www.silabs.com/developers/bluetooth-low-energy in the Tech Docs tab.
ID # | Description | Workaround |
---|---|---|
361592 | The sync_data event does not report TX power. | None |
368403 | If setting CTE interval to 1, a CTE request should be sent in every | |
connection interval. But it is sent only in every second connection interval. |
None
641122| The Bluetooth stack component does not provide a configuration for RF
antenna path.| This is an issue specifically for BGM210P. One workaround is to
manually update the configuration in sl_bluetooth_config.h in text edit
mode.If the OTA with Apploader is used, include the
bluetooth_feature_ota_config component in application project. Call command
sl_bt_ota_set_rf_path() to set the RF path for OTA mode.
650079| LE 2M PHY on EFR32[B|M]G12 and EFR32[B|M]G13 doesn’twork with
smartphones using the Mediatek Helio chip due to an interoperability issue.|
No workaround exists. For application development and testing, the
disconnection can be avoided by disabling 2M PHY with
sl_bt_connection_set_preferred_phy() or
sl_bt_connection_set_default_preferred_phy().
682198| The Bluetooth stack has an interoperability issue on the 2M PHY with a
Windows PC.| No workaround exists. For application development and testing,
the disconnection can be avoided by disabling 2M PHY with
sl_bt_connection_set_preferred_phy() or
sl_bt_connection_set_default_preferred_phy().
730692| 4-7% packet error rate is observed on EFR32M|BG13 devices when RSSI is
between -25 and -10 dBm. The PER is nominal (as per the datasheet) both above
and below this range.| None
756253| The RSSI value on a Bluetooth connection returned by the Bluetooth API
is incorrect on EFR32M|B1, EFR32M|B12, EFR32M|B13, and EFR32M|B21 devices. On
EFR32M|B21 devices. It is about 8~10 dBm higher than the actual value,
according to a measurement.| Install the “RAIL Utility, RSSI” component in the
application project. This component provides a default RSSI offset for the
chip that is applied at the RAIL level and can help to achieve more accurate
RSSI measurements.
845506| When the Bluetooth_feature_afh component for AFH is included, the
feature initialization always enables AFH.| To include the component but not
to enable AFH at device boot, change the parameter value from 1 to 0 in the
function call of sl_btctrl_init_afh() in sl_bt_stack_init.c.
1031031| Changing the configuration in the bt_aoa_host_locator application
results in crash in the application.| None
1169496| There is an issue in the Bluetooth link layer that may cause a
multiprotocol application using the BLE advertisements to crash after running
for a long time.This issues does not exist on newer Bluetooth SDK versions.|
None
Deprecated Items
Deprecated in release 5.0.0.0
sl_bt_scanner_set_mode
sl_bt_scanner_set_timing
Deprecated version constants in sl_bt_version.h
- BG_VERSION_MAJOR, replaced by SL_BT_VERSION_MAJOR
- BG_VERSION_MINOR, replaced by SLBT VERSION_MINOR
- BG_VERSION_PATCH, replaced by SLBT VERSION_PATCH
- BG_VERSION_BUILD, replaced by SLBT VERSION_BUILD
- BG_VERSION_HASH, replaced by SLBT VERSION_HASH
Removed Items
Removed from release 5.0.0.0
BGAPI command sl_bt_dfu_reset
Multiprotocol Gateway and RCP
New Items
Added in release 5.1.1.0
Zigbeed now loads the CREATOR_STACK_RESTORED_EUI64, if present, from the host
tokens file, and uses it as the EUI64, overriding the EUI64 stored on the
EFR32.
Added in release 5.1.0.0
Zigbeed now supports coex EZSP commands.
Added in release 5.0.0.0
Added Dynamic Multiprotocol BLE and Zigbee NCP project (zigbee_ncp-ble_ncp-
xxx.slcp). Released as experimental quality.
Added 802.15.4 concurrent listening for EFR32MG24 CMP RCP. This is the ability
to run Zigbee and OpenThread simultaneously on
different channels using a single RCP (rcp-802154-xxx.slcp and rcp-802154
-blehci-xxx.slcp). Released as experimental quality.
Added Zigbeed support for 32-bit x86 architecture.
Added support for BLE to de-init in multiprotocol use cases, freeing up memory
resources for use by other protocol stacks.
The Stack API Trace now can be enabled for Zigbeed by setting the debug-level
to 4 or 5 in the zigbeed.conf file.
Zigbeed stack version as well as build date and time are now printed in the
logs.
Improvements
Changed in release 5.1.1.0
Reduced CPC Tx and Rx queue sizes to fit the Zigbee BLE DMP NCP onto the MG13
family.
Changed zigbee_ble_event_handler to print scan responses from legacy
advertisements in DMPLight app.
The rcp-xxx-802154 and rcp-xxx-802154-blehci apps now use 192 µsec turnaround
time for non-enhanced acks while still using 256 µsec turnaround time for
enhanced acks required by CSL.
Fixed Issues
Fixed in release 5.1.4.0
ID # | Description |
---|---|
1244459 | When sending Zigbee data packets to sleepy children of an RCP-based |
device, the framePending state for that child on the RCP could be corrupted and forced False under these conditions:
- if the delivery to the child fails due to no MAC Ack received, and·
- additional data packets for that child are waiting in the MAC Indirect queue.This corruption would leading to no further data being picked up by the sleepy end device until all those pending data have timed out in the host stack after the MAC Indirect Transmission Timeout (7680ms by default) has elapsed for each queued message.This issue has been fixed.Other ref. 1243036, 1294248
** 1199706| Fixed an issue where data polls from forgotten end device children weren’t properly setting a pending frame on the RCP to queue a Leave and Rejoin command to the former child.Other ref. 1305071**
Fixed in release 5.1.4.0
ID # | Description |
---|---|
1188521 | Fixed an RCP hang issue when running BLE Scan on with notification |
and OpenThread ping traffic.
Fixed in release 5.1.3.0
ID # | Description |
---|---|
1118077 | In the CMP RCP, Spinel messages were being dropped under heavy |
traffic load due to CPC not keeping up with the incoming packets. Fixed this
by bundling all Spinel messages ready to be sent over CPC into one payload on
the RCP, and unbundling them on the host. This dramatically improves the
efficiency of CPC so that it can keep up with the incoming radio traffic.
1113498,1135805,1139990,1143344| **** Fixed multiple intermittent Zigbeed
crashes and asserts that could be triggered when joining many Zigbee devices
simultaneously to the CMP RCP.
Fixed in release 5.1.2.0
ID # | Description |
---|---|
1130226 | Fixed issue in which the RCP would not recover if CPC became |
temporarily busy.
1129821| Fixed null pointer dereference in Zigbeed when receiving a packet if
no buffers are available.
Fixed in release 5.1.0.0
ID # | Description |
---|---|
1036645 | Solved a bug in BLE CPC NCP which prevented a client app from |
reconnecting after the first disconnection.
1068435| Fixed Green Power bidirectional commissioning timing issue.
Certification test case GPP 5.4.1.23 passes.
1074593| Fixed issue in which Just-in-time (JIT) messages to sleepy end
devices were not sent correctly by Zigbeed + RCP.
1076235| Fixed issue where ot-cli failed to run in the multiprotocol docker
container.
1080517| Z3GatewayCPC now automatically handles a reset of the NCP (CPC
secondary).
1085498| Fixed an issue where Zigbeed was not sending rejoin responses to
sleepy end devices indirectly.
1090915| Fixed issue where multiple 0x38 errors appeared when attempting to
either open a Zigbee endpoint on the Z3GatewayCPC OR to set EZSP parameters
without resetting the CPC NCP.
Fixed in release 5.0.0.0
ID # | Description |
---|---|
828785 | Fixed a bug in cpc-hci-bridge that caused an HCI packet to be dropped |
if BlueZ sent two at once.
834191| Improved the CPU utilization of the cpc-hci-bridge helper application.
1025713| Increased max length of Zigbeed device path to 4096.
1036622| Fixed a problem using cmake to build ot-cli using the multi-PAN RCP.
1040127| CPC security was failing to initialize for the rcp-uart-802154 and
rcp-spi-802154 projects on MG13 and MG14 series parts. To work around this
issue, mbedtls_entropy_adc has been added as entropy source for these parts.
That might prevent the ADC from being used in combination with CPC security.
1066422| Fixed an intermittent buffer leak in Zigbeed.
1068429| Fixed a race condition that could cause the CMP RCP to assert.
1068435| Added capability on the RCP node to check and buffer a single
bidirectional Green Power data frame and send it out upon rx offset timeout.
1068942| Fixed a leak in the RCP source match table that could prevent Zigbee
devices from joining.
ID #| Description
---|---
1074172| Fixed sending leave request from Zigbeed when receiving a poll from a
non-child.
1074290| Stopped Zigbeed from processing un-acked polls.
1079903| Fixed a bug in the CMP RCP that could cause SPINEL messages to be
dispatched incorrectly, resulting in Zigbeed and OTBR crashing or exiting.
Known Issues in the Current Release
Issues in bold were added since the previous release. If you have missed a
release, recent release notes are available on
https://www.silabs.com/developers/gecko-software-development-kit.
ID # | Description | Workaround |
---|---|---|
811732 | Custom token support is not available when using Zigbeed. | Support is |
planned in a future release.
937562| Bluetoothctl ‘advertise on’ command fails with rcp-uart- 802154-blehci
app on Raspberry Pi OS 11.| Use btmgmt app instead of bluetoothctl.
1031607| The rcp-uart-802154.slcp project is running low on RAM on an MG1
part. Adding components may reduce the heap size below what is needed to
support ECDH binding in CPC.| A workaround is to disable CPC security via the
SL_CPC_SECURITY_ENABLED configuration.
1074205| The CMP RCP does not support two networks on the same PAN id.| Use
different PAN ids for each network. Support is planned in a future release.
Deprecated Items
Removed Items
Using This Release
This release contains the following
- Silicon Labs Bluetooth stack library
- Bluetooth sample applications
For more information about the Bluetooth SDK see QSG169: Bluetooth® SDK v3.x Quick Start Guide. If you are new to Bluetooth see UG103.14: Bluetooth LE Fundamentals.
Installation and Use
The Bluetooth SDK is provided as part of the Gecko SDK (GSDK), the suite of
Silicon Labs SDKs. To quickly get started with the GSDK, install Simplicity
Studio 5, which will set up your development
environment and walk you through GSDK installation. Simplicity Studio 5
includes everything needed for IoT product development with Silicon Labs
devices, including a resource and project launcher, software configuration
tools, full IDE with GNU toolchain, and analysis tools. Installation
instructions are provided in the online Simplicity Studio 5 User’s
Guide.
Alternatively, Gecko SDK may be installed manually by downloading or cloning
the latest from GitHub. See https://github.com/SiliconLabs/gecko_sdk for
more information.
Simplicity Studio installs the GSDK by default in:
- (Windows): C:\Users\\SimplicityStudio\SDKs\gecko_sdk
- (MacOS): /Users//SimplicityStudio/SDKs/gecko_sdk
Documentation specific to the SDK version is installed with the SDK. Additional information can often be found in the knowledge base articles (KBAs). API references and other information about this and earlier releases is available on https://docs.silabs.com/.
Security Information
Secure Vault Integration
When deployed to Secure Vault High devices, sensitive keys such as the Long
Term Key (LTK) are protected using the Secure Vault Key Management
functionality. The table below shows the protected keys and their storage
protection characteristics.
Wrapped Key | Exportable / Non-Exportable | Notes |
---|---|---|
Remote Long Term Key (LTK) | Non-Exportable | |
Local Long Term Key (legacy only) | Non-Exportable | |
Remote Identity Resolving Key (IRK | Exportable | Must be Exportable for future |
compatibility reasons
Local Identity Resolving Key| Exportable| Must be Exportable because the key
is shared with other devices.
Wrapped keys that are marked as “Non-Exportable” can be used but cannot be
viewed or shared at runtime.
Wrapped keys that are marked as “Exportable” can be used or shared at runtime
but remain encrypted while stored in flash.
For more information on Secure Vault Key Management functionality, see
AN1271: Secure Key Storage.
Security Advisories
To subscribe to Security Advisories, log in to the Silicon Labs customer portal, then select Account Home. Click HOME to go to the portal home page and then click the Manage Notifications tile. Make sure that ‘Software/Security Advisory Notices & Product Change Notices (PCNs)’ is checked, and that you are subscribed at minimum for your platform and protocol. Click Save to save any changes.
Support
Development Kit customers are eligible for training and technical support.
Use the Silicon Labs Bluetooth LE web
page to obtain
information about all Silicon Labs Bluetooth products and services, and to
sign up for product support.
You can contact Silicon Laboratories support at http://www.silabs.com/support.
IoT Portfolio
www.silabs.com/IoT
SW/HW
www.silabs.com/simplicity
Quality
www.silabs.com/quality
Support & Community
www.silabs.com/community
Disclaimer
Silicon Labs intends to provide customers with the latest, accurate, and
in-depth documentation of all peripherals and modules available for system and
software implementers using or intending to use the Silicon Labs products.
Characterization data, available modules and peripherals, memory sizes and
memory addresses refer to each specific device, and “Typical” parameters
provided can and do vary in different applications. Application examples
described herein are for illustrative purposes only. Silicon Labs reserves the
right to make changes without further notice to the product information,
specifications, and descriptions herein, and does not give warranties as to
the accuracy or completeness of the included information. Without prior
notification, Silicon Labs may update product firmware during the
manufacturing process for security or reliability reasons. Such changes will
not alter the specifications or the performance of the product. Silicon Labs
shall have no liability for the consequences of use of the information
supplied in this document. This= document does not imply or expressly grant
any license to design or fabricate any integrated circuits. The products are
not designed or authorized to be used within any FDA Class III devices,
applications for which FDA premarket approval is required or Life Support
Systems without the specific written consent of Silicon Labs. A “Life Support
System” is any product or system intended to support or sustain life and/or
health, which, if it fails, can be reasonably expected to result in
significant personal injury or death. Silicon Labs products are not designed
or authorized for military applications. Silicon Labs products shall under no
circumstances be used in weapons of mass destruction including (but not
limited to) nuclear, biological or chemical weapons, or missiles capable of
delivering such weapons. Silicon Labs disclaims all express and implied
warranties and shall not be responsible or liable for any injuries or damages
related to use of a Silicon Labs product in such unauthorized applications.
Note: This content may contain offensive terminology that is now
obsolete. Silicon Labs is replacing these terms with inclusive language
wherever possible. For more information, visit www.silabs.com/about-us
/inclusive-lexicon-project
Trademark Information
Silicon Laboratories Inc.® , Silicon Laboratories® , Silicon Labs® , SiLabs®
and the Silicon Labs logo® , Bluegiga® , Bluegiga Logo® , EFM® , EFM32® , EFR,
Ember® , Energy Micro, Energy Micro logo and combinations thereof, “the
world’s most energy friendly microcontrollers”, RedpineSignals® , WiSeConnect
, n-Link, EZLink® , EZRadio® , EZRadioPRO® , Gecko® , Gecko OS, Gecko OS
Studio, Precision32®
, Simplicity Studio® , Telegesis, the Telegesis Logo® , USBXpress ® , Zentri,
the Zentri logo and Zentri DMS, Z-Wave® , and others are trademarks or
registered trademarks of Silicon Labs. ARM, CORTEX, Cortex-M3 and THUMB are
trademarks or registered trademarks of ARM Holdings. Keil is a registered
trademark of ARM Limited. Wi-Fi is a registered trademark of the Wi-Fi
Alliance. All other products or brand names mentioned herein are trademarks of
their respective holders.
Silicon Laboratories Inc.
400 West Cesar Chavez
Austin, TX 78701 USA
www.silabs.com
References
- Silicon Labs
- Silicon Labs
- About Us - Silicon Labs
- Silicon Labs Community
- Internet of Things (IoT) - Silicon Labs
- Simplicity Studio - Silicon Labs
- Technical Support - Silicon Labs
Read User Manual Online (PDF format)
Read User Manual Online (PDF format) >>