EFR32MG12 2.4 GHz 19 dBm (SLWRB4161A)

Overview

The EFR32MG12 Mighty Gecko Radio Board contains a Wireless System-On-Chip from the EFR32MG12 family built on an ARM Cortex®-M4F processor with excellent low power capabilities.

The BRD4161A a.k.a. SLWRB4161A radio board plugs into the Wireless Starter Kit Mainboard BRD4001A and is supported as one of Radio Boards.

Hardware

  • EFR32MG12P432F1024GL125 Mighty Gecko SoC

  • CPU core: ARM Cortex®-M4 with FPU

  • Flash memory: 1024 kB

  • RAM: 256 kB

  • Transmit power: up to +19 dBm

  • Operation frequency: 2.4 GHz and Sub-Ghz

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

For more information about the EFR32MG12 SoC and BRD4170A board, refer to these documents:

Supported Features

The slwrb4161a 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.

slwrb4161a/efr32mg12p432f1024gl125 target

Type

Location

Description

Compatible

CPU

on-chip

ARM Cortex-M4F CPU1

arm,cortex-m4f

Bluetooth

on-chip

Bluetooth HCI on Silabs boards1

silabs,bt-hci-efr32

Flash controller

on-chip

Silicon Labs Gecko flash controller1

silabs,gecko-flash-controller

GPIO & Headers

on-chip

SiLabs Gecko GPIO1

silabs,gecko-gpio

on-chip

SiLabs Gecko GPIO Port5 3

silabs,gecko-gpio-port

I2C

on-chip

Silabs Gecko I2C1 1

silabs,gecko-i2c

Input

on-board

Group of GPIO-bound input keys1

gpio-keys

Interrupt controller

on-chip

ARMv7-M NVIC (Nested Vectored Interrupt Controller)1

arm,v7m-nvic

LED

on-board

Group of GPIO-controlled LEDs1

gpio-leds

MTD

on-chip

Flash node1

soc-nv-flash

on-board

Fixed partitions of a flash (or other non-volatile storage) memory1

fixed-partitions

on-board

Properties supporting Zephyr spi-nor flash driver (over the Zephyr SPI API) control of serial flash memories using the standard M25P80-based command set1

jedec,spi-nor

Pin control

on-chip

The Silabs pin controller is a singleton node responsible for controlling pin function selection and pin properties1

silabs,gecko-pinctrl

PWM

on-chip

Silabs Gecko PWM port1

silabs,gecko-pwm

RNG

on-chip

GECKO TRNG (True Random Number Generator)1

silabs,gecko-trng

RTC

on-chip

Silabs Gecko RTCC (Real-Time Counter)1

silabs,gecko-rtcc

Sensors

on-board

Silicon Labs Si7006 Humidity and Temperature Sensor1

silabs,si7006

Serial controller

on-chip

Gecko USART1 1

silabs,gecko-usart

on-chip

Gecko LEUART1

silabs,gecko-leuart

SPI

on-chip

Silabs USART SPI2

silabs,usart-spi

SRAM

on-chip

Generic on-chip SRAM description1

mmio-sram

Timer

on-chip

ARMv7-M System Tick1

arm,armv7m-systick

Watchdog

on-chip

Silicon Labs Gecko Family Watchdog driver1 1

silabs,gecko-wdog

Connections and IOs

In the following table, the column Pin contains Pin names. For example, PA2 means Pin number 2 on PORTA, as used in the board’s datasheets and manuals.

Pin

Function

Usage

PF4

GPIO

LED0

PF5

GPIO

LED1

PF6

GPIO

Push Button PB0

PF7

GPIO

Push Button PB1

PA5

GPIO

Board Controller Enable VCOM_ENABLE

PA0

USART0_TX

UART Console VCOM_TX US0_TX #0

PA1

USART0_RX

UART Console VCOM_RX US0_RX #0

PC6

SPI_MOSI

Flash MOSI US1_TX #11

PC7

SPI_MISO

Flash MISO US1_RX #11

PC8

SPI_SCLK

Flash SCLK US1_CLK #11

PA4

SPI_CS

Flash Chip Select (GPIO)

System Clock

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

Serial Port

The EFR32MG12P SoC has four USARTs and one Low Energy UARTs (LEUART). USART0 is connected to the board controller and is used for the console.

Programming and Debugging

Flashing

Connect the BRD4001A board with a mounted BRD4161A radio module 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 slwrb4161a 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! slwrb4161a