The latest development version of this page may be more current than this released 4.0.0 version.

EFR32BG22 Thunderboard (SLTB010A)

SLTB010A is a development kit based on the EFR32BG22 SoC. Early revisions of the kit (A00 and A01) use a slightly different PCB (BRD4184A) from later revisions (BRD4184B).

Hardware

  • EFR32BG22 Blue Gecko Wireless SoC with upto 76.8 MHz operating frequency

  • ARM® Cortex® M33 core with 32 kB RAM and 512 kB Flash

  • Macronix ultra low power 8-Mbit SPI flash (MX25R8035F)

  • 2.4 GHz ceramic antenna for wireless transmission

  • Silicon Labs Si7021 relative humidity and temperature sensor

  • Silicon Labs Si1133 UV index and ambient light sensor (EFR32BG22-BRD4184A)

  • Vishay VEML6035 ambient light sensor (EFR32BG22-BRD4184B)

  • Silicon Labs Si7210 hall effect sensor

  • TDK InvenSense ICM-20648 6-axis inertial sensor

  • Two Knowles SPK0641HT4H-1 MEMS microphones with PDM output (EFR32BG22-BRD4184B)

  • One LED and one push button

  • Power enable signals and isolation switches for ultra low power operation

  • On-board SEGGER J-Link debugger for easy programming and debugging, which includes a USB virtual COM port and Packet Trace Interface (PTI)

  • Mini Simplicity connector for access to energy profiling and advanced wireless network debugging

  • Breakout pads for GPIO access and connection to external hardware

  • Reset button

  • Automatic switch-over between USB and battery power

  • CR2032 coin cell holder and external battery connector

For more information about the EFR32BG SoC and Thunderboard EFR32BG22 board:

Supported Features

The sltb010a board configuration supports the following hardware features:

Interface

Controller

Driver/Component

MPU

on-chip

memory protection unit

NVIC

on-chip

nested vector interrupt controller

SYSTICK

on-chip

systick

COUNTER

on-chip

stimer

SPI(M/S)

on-chip

spi

FLASH

on-chip

flash memory

GPIO

on-chip

gpio

UART

on-chip

serial

WATCHDOG

on-chip

watchdog

TRNG

on-chip

true random number generator

I2C(M/S)

on-chip

i2c

RADIO

on-chip

bluetooth

The default configuration can be found in boards/silabs/dev_kits/sltb010a/sltb010a_defconfig.

Connections and IOs

The EFR32BG22 SoC has four gpio controllers (PORTA, PORTB, PORTC and PORTD).

There are two variants of this board, “A” and “B”. Please take a look at your PCB, to determine which one you have, as the GPIO pin bindings vary between those two.

BRD4184A (SLTB010A revision A00 and A01):

Pin

Function

Usage

PB0

GPIO

LED0 (YELLOW)

PB1

GPIO

SW0 Push Button PB0

PA5

UART_TX

UART TX Console VCOM_TX US1_TX #1

PA6

UART_RX

UART RX Console VCOM_RX US1_RX #1

BRD4184B (SLTB010A revision A02 and newer):

Pin

Function

Usage

PA4

GPIO

LED0 (YELLOW)

PB3

GPIO

SW0 Push Button PB0

PA5

UART_TX

UART TX Console VCOM_TX US1_TX #1

PA6

UART_RX

UART RX Console VCOM_RX US1_RX #1

System Clock

The EFR32BG22 SoC is configured to use the 38.4 MHz external oscillator on the board.

Programming and Debugging

Flashing an application

Connect your device to your host computer using the USB port. The sample application Hello World is used for this example. Build the Zephyr kernel and application, then flash it to the device:

BRD4184A:

# From the root of the zephyr repository
west build -b sltb010a@0 samples/hello_world
west flash

BRD4184B:

# From the root of the zephyr repository
west build -b sltb010a@2 samples/hello_world
west flash

Note

west flash requires SEGGER J-Link software to be installed on you host computer.

Open a serial terminal (minicom, putty, etc.) with the following settings:

  • Speed: 115200

  • Data: 8 bits

  • Parity: None

  • Stop bits: 1

Reset the board and you should be able to see on the corresponding Serial Port the following message:

Hello World! sltb010a

Bluetooth

To use the BLE function, run the command below to retrieve necessary binary blobs from the SiLabs HAL repository.

west blobs fetch hal_silabs

Then build the Zephyr kernel and a Bluetooth sample with the following command. The Observer sample application is used in this example.

BRD4184A:

# From the root of the zephyr repository
west build -b sltb010a@0 samples/bluetooth/observer

BRD4184B:

# From the root of the zephyr repository
west build -b sltb010a@2 samples/bluetooth/observer