Bluetooth Stack and SDK#

This page provides an introduction to the Silicon Labs Bluetooth Low Energy (LE) stack and SDK.

About the Bluetooth Stack#

The v3.x Silicon Labs Bluetooth stack is an advanced Bluetooth 5-compliant protocol stack implementing the Bluetooth low energy standard. It supports multiple connections, concurrent central, peripheral, broadcaster, and observer roles. The v3.x Silicon Labs Bluetooth stack is meant for Silicon Labs EFR32 SoCs and modules.

The Silicon Labs Bluetooth stack provides multiple APIs for the developer to access the Bluetooth functionality. Three modes are supported:

  1. Standalone mode, where both the Bluetooth stack and the application run in an EFR32SoC or module. The application can be developed with C programming language.

    standalone mode

  2. Network Co-Processor (NCP) mode, where the Bluetooth stack runs in an EFR32 and the application runs on a separate host MCU. For this use case, the Bluetooth stack can be configured into NCP mode where the API is exposed over a serial inter- face such as UART.

    ncp mode

  3. Radio Co-Processor (RCP) mode, where only the Link Layer of the Bluetooth stack runs on the EFR32, and the Host Layer of the stack, as well as the application, runs on a separate host MCU or PC. In this use case, the Host Layer is developed by a third party, since Silicon Labs’ Bluetooth stack is only built for EFR32 SoCs / modules. The Link Layer and the host layer communicate via HCI (Host-Controller Interface), which is a standard interface between the two layers. The HCI can be accessed via UART following the Bluetooth SIG's UART (H4) transport protocol or the Silicon Labs’ proprietary CPC (Co-Processor Communication) protocol.

    rcp mode

Bluetooth Stack Features#

The features of the Silicon Labs Bluetooth stack are listed in the following tables.

Series 1

Feature

EFR32[B|M]G1

EFR32[B|M]G12

EFR32[B|M]G13

Bluetooth version

Bluetooth 5.3

Concurrent central, peripheral, broadcaster and observer modes

Simultaneous connections

✓ (up to 8)

✓ (up to 32)

✓ (up to 8)

LE secure connections

LE Privacy 1.2

Host-based

Host-based

Host-based

LE packet length extensions

LE dual topology

Link Layer Device Filtering

LE Power Control

Bluetooth 5 GATT caching

Bluetooth 5 2M PHY

x

Bluetooth 5 LE Long Range

x

x

Bluetooth 5 advertisement sets and scan event reporting

Bluetooth 5 extended advertisements.

x

✓ (up to 1650B)

✓ (up to 1650B)

Bluetooth 5 periodic advertisements

x

✓ (up to 1650B)

✓ (up to 1650B)

Bluetooth 5 periodic advertising synchronization

x

Directed advertising

Adaptive Frequency Hopping

L2CAP Connection Oriented Channels

CTE transmitter

x

x

x

CTE receiver

x

x

x

Maximum throughput

700 kbps over 1M PHY

700 kbps over 1M PHY, 1300 kbps over 2M PHY

700 kbps over 1M PHY, 1300 kbps over 2M PHY

Encryption

AES-128

Pairing modes

Just works, numeric comparison, passkey entry, Out-Of-Band

Number of simultaneous bondings

Up to 13 with PS Store, up to 32 with NVM3

Link Layer packet size

Up to 251 B

ATT protocol packet size

Up to 250 B

Supported Bluetooth profiles and services

All GATT based profiles and services are supported

Apple HomeKit

x

Before BLE SDK 6.0.0

Host (NCP/RCP) interfaces

4-wire UART with RTS/CTS control or 2-wire UART without RTS/CTS, GPIOs for sleep and wake-up management

Wi-Fi Coexistence

Using Packet Trace Arbitration (PTA)

Non-volatile memory

NVM3 or Persistent Store (PS)**

** Example applications in the SDK that are generated for these platforms will use PS by default.

Series 2

Feature

EFR32[B|M]G21*

EFR32[B|M]G22