EFR32xG24 Dev Kit (xG24-DK2601B)

Overview

The EFR32MG24 Mighty Gecko Board dev kit contains a Wireless System-On-Chip from the EFR32MG24 family built on an ARM Cortex®-M33F processor with excellent low power capabilities.

Hardware

  • EFR32MG24B310F1536IM48-B Mighty Gecko SoC

  • CPU core: ARM Cortex®-M33 with FPU

  • Flash memory: 1536 kB

  • RAM: 256 kB

  • Transmit power: up to +20 dBm

  • Operation frequency: 2.4 GHz

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

  • On board devices:

    • Silicon Labs Si7021 relative humidity & temperature sensor

    • Silicon Labs Si7210 hall effect sensor

    • 2x TDK InvenSense ICS-43434 MEMS microphones with I2S output

    • TDK InvenSense ICM-20689 6-axis inertial measurement sensor

    • Vishay VEML6035 ambient light sensor

    • Bosch BMP384 pressure sensor with internal temperature sensor

    • MX25R3235F 32 Mbit SPI data flash

For more information about the EFR32MG24 SoC and BRD2601B board, refer to these documents:

Supported Features

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

xg24_dk2601b/efr32mg24b310f1536im48 target

Type

Location

Description

Compatible

CPU

on-chip

ARM Cortex-M33 CPU1

arm,cortex-m33

ADC

on-chip

Silicon Labs Gecko Family IADC1

silabs,gecko-iadc

Bluetooth

on-chip

Bluetooth HCI on Silabs boards1

silabs,bt-hci-efr32

Clock control

on-chip

Silicon Labs Series 2+ clock control node1

silabs,series-clock

on-chip

Generic fixed-rate clock provider3

fixed-clock

on-chip

Generic fixed-rate clock provider1

silabs,hfxo

on-chip

Silicon Labs LFXO peripheral (low-frequency crystal oscillator)1

silabs,series2-lfxo

on-chip

Silicon Labs HFRCODPLL peripheral (high-frequency RC oscillator with digital phase-locked loop)1

silabs,series2-hfrcodpll

on-chip

Silicon Labs HFRCOEM23 peripheral (high-frequency RC oscillator with energy mode 2 and 3 capability)1

silabs,series2-hfrcoem23

on-chip

Silicon Labs LFRCO peripheral (low-frequency RC oscillator)1

silabs,series2-lfrco

on-chip

Generic fixed factor clock provider20

fixed-factor-clock

Comparator

on-chip

Silabs ACMP (Analog Comparator)1

silabs,acmp

Cryptographic accelerator

on-chip

Silicon Labs Secure Element mailbox node1

silabs,gecko-semailbox

DMA

on-chip

Silabs LDMA controller1

silabs,ldma

Flash controller

on-chip

Silicon Labs Series 2 flash controller1

silabs,series2-flash-controller

GPIO & Headers

on-chip

SiLabs Gecko GPIO1

silabs,gecko-gpio

on-chip

SiLabs Gecko GPIO Port4

silabs,gecko-gpio-port

I2C

on-chip

Silabs Gecko I2C1

silabs,gecko-i2c

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

Miscellaneous

on-board

GPIO Wake Up Trigger for EFR32MG241

silabs,gecko-wake-up-trigger

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

Networking

on-chip

Silicon Labs Series 2 radio interface1

silabs,series2-radio

Pin control

on-chip

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

silabs,dbus-pinctrl

Regulator

on-chip

Silicon Labs Series 2 DC-DC converter1

silabs,series2-dcdc

on-board

Fixed voltage regulators1

regulator-fixed

RTC

on-chip

Silabs Gecko Sleep Timer (Real-Time Counter)1

silabs,gecko-stimer

Sensors

on-board

Vishay VEML7700 High Accuracy Ambient Light Sensor With I2C Interface1

vishay,veml7700

on-board

Si7210 hall effect magnetic position and temperature sensor1

silabs,si7210

on-board

Silicon Labs Si7006 Humidity and Temperature Sensor1

silabs,si7006

Serial controller

on-chip

Silabs USART UART1

silabs,usart-uart

SPI

on-chip

Silabs EUSART SPI1 1

silabs,eusart-spi

SRAM

on-chip

Generic on-chip SRAM description1

mmio-sram

Timer

on-chip

ARMv8-M System Tick1

arm,armv8m-systick

on-chip

SiLabs Gecko BURTC timer1

silabs,gecko-burtc

Watchdog

on-chip

Silicon Labs Gecko Family Watchdog driver1 1

silabs,gecko-wdog

Connections and IOs

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

Name

Function

Usage

PA4

GPIO

LED0

PB0

GPIO

LED1

PD2

GPIO

LED2

PB2

GPIO

Push Button 0

PB3

GPIO

Push Button 1

PA5

USART0_TX

UART Console

PA6

USART0_RX

UART Console

PC3

EUSART1_TX

SPI bus: flash, IMU

PC2

EUSART1_RX

SPI bus: flash, IMU

PC1

EUSART1_SCLK

SPI bus: flash, IMU

PC0

EUSART1_CS

SPI bus: flash

PC4

I2C0_SCL

I2C bus

PC5

I2C0_SDA

I2C bus

The default configuration can be found in boards/silabs/dev_kits/xg24_dk2601b/xg24_dk2601b_defconfig

System Clock

The EFR32MG24 SoC is configured to use the 39 MHz external oscillator on the board.

Serial Port

The EFR32MG24 SoC has one USART and two EUSARTs. USART0 is connected to the board controller and is used for the console.

Programming and Debugging

Note

Before using the kit the first time, you should update the J-Link firmware in Simplicity Studio.

Flashing

The sample application Hello World is used for this example. Build the Zephyr kernel and application:

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

Connect the xg24_dk2601b to your host computer using the USB port and you should see a USB connection.

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’ll see the following message on the corresponding serial port terminal session:

Hello World! xg24_dk2601b

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.

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