FRDM_RW612

Overview

The RW612 is a highly integrated, low-power tri-radio wireless MCU with an integrated 260 MHz ARM Cortex-M33 MCU and Wi-Fi 6 + Bluetooth Low Energy (LE) 5.3 / 802.15.4 radios designed for a broad array of applications, including connected smart home devices, gaming controllers, enterprise and industrial automation, smart accessories and smart energy.

The RW612 MCU subsystem includes 1.2 MB of on-chip SRAM and a high-bandwidth Quad SPI interface with an on-the-fly decryption engine for securely accessing off-chip XIP flash.

The advanced design of the RW612 delivers tight integration, low power and highly secure operation in a space- and cost-efficient wireless MCU requiring only a single 3.3 V power supply.

Hardware

  • 260 MHz ARM Cortex-M33, tri-radio cores for Wifi 6 + BLE 5.3 + 802.15.4

  • 1.2 MB on-chip SRAM

Supported Features

Interface

Controller

Driver/Component

NVIC

on-chip

nested vector interrupt controller

SYSTICK

on-chip

systick

MCI_IOMUX

on-chip

pinmux

GPIO

on-chip

gpio

USART

on-chip

serial

BLE

on-chip

Bluetooth

DMA

on-chip

dma

SPI

on-chip

spi

I2C

on-chip

i2c

TRNG

on-chip

entropy

WWDT

on-chip

watchdog

USBOTG

on-chip

usb

CTIMER

on-chip

counter

SCTIMER

on-chip

pwm

MRT

on-chip

counter

OS_TIMER

on-chip

os timer

PM

on-chip

power management; uses SoC Power Modes 1 and 2

BLE

on-chip

Bluetooth

ADC

on-chip

adc

DAC

on-chip

dac

ENET

on-chip

ethernet

The default configuration can be found in the defconfig file:

Other hardware features are not currently supported

Fetch Binary Blobs

To support Bluetooth, frdm_rw612 requires fetching binary blobs, which can be achieved by running the following command:

west blobs fetch hal_nxp

Programming and Debugging

Build and flash applications as usual (see Building an Application and Run an Application for more details).

Configuring a Debug Probe

A debug probe is used for both flashing and debugging the board. This board is configured by default to use the JLink Firmware.

Configuring a Console

Connect a USB cable from your PC to J10, and use the serial terminal of your choice (minicom, putty, etc.) with the following settings:

  • Speed: 115200

  • Data: 8 bits

  • Parity: None

  • Stop bits: 1

Flashing

Here is an example for the Hello World application. This example uses the J-Link Debug Host Tools as default.

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

Open a serial terminal, reset the board (press the RESET button), and you should see the following message in the terminal:

***** Booting Zephyr OS v3.6.0 *****
Hello World! frdm_rw612

Debugging

Here is an example for the Hello World application. This example uses the J-Link Debug Host Tools as default.

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

Open a serial terminal, step through the application in your debugger, and you should see the following message in the terminal:

***** Booting Zephyr OS zephyr-v3.6.0 *****
Hello World! frdm_rw612

Bluetooth

BLE functionality requires to fetch binary blobs, so make sure to follow the Fetch Binary Blobs section first.

frdm_rw612 platform supports the monolithic feature. The required binary blob <zephyr workspace>/modules/hal/nxp/zephyr/blobs/rw61x_sb_ble_a2.bin will be linked with the application image directly, forming one single monolithic image.

Resources