EFR32xG21B 2.4 GHz 20 dBm (xG21-RB4196B)

Overview

The EFR32xG21B +20 dBm Radio Board is the radio board delivered with the EFR32xG21 Pro Kit +20 dBm, and is also available standalone. It contains a Wireless System-On-Chip from the EFR32MG21B family built on an ARM Cortex®-M33 processor with excellent low power capabilities.

The radio board plugs into the Wireless Pro Kit Mainboard BRD4002A and is supported in Zephyr as one of several Radio Boards.

Hardware

  • EFR32MG21B020F1024IM32 Mighty Gecko SoC

  • CPU core: ARM Cortex®-M33 with FPU

  • Flash memory: 1024 kB

  • RAM: 96 kB

  • Transmit power: up to +20 dBm

  • Operation frequency: 2.4 GHz

  • Inverted-F PCB antenna

  • Crystals for LFXO (32.768 kHz) and HFXO (38.4 MHz).

For more information about the EFR32MG21 SoC and BRD4196B board, refer to these documents:

Supported Features

The xg21_rb4196b board supports the hardware features listed below.

on-chip / on-board
Feature integrated in the SoC / present on the board.
2 / 2
Number of instances that are enabled / disabled.
Click on the label to see the first instance of this feature in the board/SoC DTS files.
vnd,foo
Compatible string for the Devicetree binding matching the feature.
Click on the link to view the binding documentation.

xg21_rb4196b/efr32mg21b020f1024im32 target

On-target memory for this board target: 96 KiB of RAM, 1 MiB of Flash.

Type

Location

Description

Compatible

CPU

on-chip

ARM Cortex-M33 CPU1

arm,cortex-m33

ADC

on-chip

Silicon Labs Series 2 IADC1

silabs,iadc

Bluetooth

on-chip

Silicon Labs Series 2 Bluetooth HCI1

silabs,bt-hci-efr32

Clock control

on-chip

Silicon Labs Series 2 CMU1

silabs,series-clock

on-chip

Silicon Labs Series 2 HFXO1

silabs,hfxo

on-chip

Silicon Labs Series 2 HFRCODPLL1

silabs,series2-hfrcodpll

on-chip

Generic fixed-rate clock provider3

fixed-clock

on-chip

Silicon Labs Series 2 LFXO1

silabs,series2-lfxo

on-chip

Silicon Labs Series 2 LFRCO1

silabs,series2-lfrco

on-chip

Silicon Labs Series 2 HFRCOEM231

silabs,series2-hfrcoem23

on-chip

Generic fixed factor clock provider15

fixed-factor-clock

Comparator

on-chip

Silicon Labs Series 2 ACMP2

silabs,acmp

Counter

on-chip

Silicon Labs TIMER Counter13

silabs,timer-counter

on-chip

Silicon Labs Series 2 BURTC1

silabs,burtc-counter

on-chip

Silicon Labs PROTIMER counter1

silabs,protimer

CRC

on-chip

Silabs General Purpose CRC1

silabs,gpcrc

Cryptographic accelerator

on-chip

Silicon Labs Series 2 SE Mailbox1

silabs,gecko-semailbox

Debug

on-chip

Silicon Labs Packet Trace Interface1

silabs,pti

on-chip

ARMv8 instrumentation trace macrocell1

arm,armv8m-itm

Display

on-board

Sharp LS0XX memory display controller1

sharp,ls0xx

DMA

on-chip

Silicon Labs Series 2 LDMA1

silabs,ldma

Flash controller

on-chip

Silicon Labs Series 2 MSC1

silabs,series2-flash-controller

GPIO & Headers

on-chip

Silicon Labs Series 2 GPIO Peripheral1

silabs,gpio

on-chip

Silicon Labs Series 2 GPIO Port4

silabs,gpio-port

on-board

Silicon Labs Kit Expansion Header1

silabs,exp-header

I2C

on-chip

Silicon Labs Series 2 I2C2

silabs,i2c

IEEE 802.15.4

on-chip

Silicon Labs EFR32 IEEE 802.15.4 radio1

silabs,efr32-ieee802154

Input

on-board

Group of GPIO-bound input keys1

gpio-keys

Interrupt controller

on-chip

ARMv8-M NVIC (Nested Vectored Interrupt Controller)1

arm,v8m-nvic

LED

on-board

Group of GPIO-controlled LEDs1

gpio-leds

on-board

Group of PWM-controlled LEDs1

pwm-leds

MMU / MPU

on-chip

ARMv8-M MPU (Memory Protection Unit)1

arm,armv8m-mpu

MTD

on-chip

Flash node1

soc-nv-flash

Networking

on-chip

Silicon Labs Series 2 Radio Interface1

silabs,series2-radio

Pin control

on-chip

Silicon Labs Series 2 DBUS Pin Controller1

silabs,dbus-pinctrl

PWM

on-chip

Silicon Labs TIMER PWM13

silabs,timer-pwm

on-chip

Silicon Labs LETIMER PWM1

silabs,letimer-pwm

Retained memory

on-chip

Silicon Labs Series 2 BURAM1

silabs,buram

RTC

on-chip

Silicon Labs Series 2 RTCC1

silabs,rtcc

Serial controller

on-chip

Silicon Labs Series 2 USART11

silabs,usart-uart

SPI

on-chip

Silicon Labs Series 2 USART1

silabs,usart-spi

SRAM

on-chip

Generic on-chip SRAM1

mmio-sram

Timer

on-chip

ARMv8-M System Tick1

arm,armv8m-systick

on-chip

Silicon Labs TIMER22

silabs,series2-timer

on-chip

Silicon Labs LETIMER1

silabs,series2-letimer

Watchdog

on-chip

Silicon Labs Series 0-2 WDOG11

silabs,gecko-wdog

Connections and IOs

The following table describes the connections provided by the BRD4002A mainboard when the BRD4196B radio board is mounted.

Name

Function

Usage

PA0

GPIO

Display EXTCOMIN

PA3

SWO

Serial wire trace

PA5

USART0_TX

Virtual COM port transmit

PA6

USART0_RX

Virtual COM port receive

PB0

GPIO

Push button 0

PB1

GPIO

Push button 1

PC0

USART2_TX

Display serial data

PC2

USART2_CLK

Display serial clock

PC3

GPIO

Display chip select

PC4

PTI_DOUT

Packet Trace Interface data

PC5

PTI_DFRAME

Packet Trace Interface frame

PD2

TIMER0_CC0

LED0 and PWM LED0

PD3

TIMER0_CC1

LED1 and PWM LED1

PD4

GPIO

Board controller enable

System Clock

The EFR32MG21B SoC is configured to use the HFRCODPLL oscillator at 80 MHz as the system clock, locked to the 38.4 MHz external crystal oscillator on the board.

Serial Port

The EFR32MG21B SoC has three USARTs. USART0 is connected to the board controller and is used for the console.

Programming and Debugging

The xg21_rb4196b board supports the runners and associated west commands listed below.

flash debug rtt debugserver attach reset
jlink ✅ (default) ✅ (default)
openocd
silabs_commander

Flashing

Connect the BRD4002A board with a mounted BRD4196B radio board to your host computer using the USB port.

Here is an example for the Hello World application.

# From the root of the zephyr repository
west build -b xg21_rb4196b samples/hello_world
west flash

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 see the following message in the terminal:

Hello World! xg21_rb4196b

Bluetooth

To use Bluetooth functionality, run the command below to retrieve necessary binary blobs from the Silicon Labs 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.

# From the root of the zephyr repository
west build -b xg21_rb4196b samples/bluetooth/observer