1.. zephyr:board:: frdm_rw612
2
3Overview
4********
5
6The RW612 is a highly integrated, low-power tri-radio wireless MCU with an
7integrated 260 MHz ARM Cortex-M33 MCU and Wi-Fi 6 + Bluetooth Low Energy (LE) 5.3 / 802.15.4
8radios designed for a broad array of applications, including connected smart home devices,
9gaming controllers, enterprise and industrial automation, smart accessories and smart energy.
10
11The RW612 MCU subsystem includes 1.2 MB of on-chip SRAM and a high-bandwidth Quad SPI interface
12with an on-the-fly decryption engine for securely accessing off-chip XIP flash.
13
14The advanced design of the RW612 delivers tight integration, low power and highly secure
15operation in a space- and cost-efficient wireless MCU requiring only a single 3.3 V power supply.
16
17Hardware
18********
19
20- 260 MHz ARM Cortex-M33, tri-radio cores for Wifi 6 + BLE 5.3 + 802.15.4
21- 1.2 MB on-chip SRAM
22
23Supported Features
24==================
25
26+-----------+------------+-----------------------------------+
27| Interface | Controller | Driver/Component                  |
28+===========+============+===================================+
29| NVIC      | on-chip    | nested vector interrupt controller|
30+-----------+------------+-----------------------------------+
31| SYSTICK   | on-chip    | systick                           |
32+-----------+------------+-----------------------------------+
33| MCI_IOMUX | on-chip    | pinmux                            |
34+-----------+------------+-----------------------------------+
35| GPIO      | on-chip    | gpio                              |
36+-----------+------------+-----------------------------------+
37| USART     | on-chip    | serial                            |
38+-----------+------------+-----------------------------------+
39| DMA       | on-chip    | dma                               |
40+-----------+------------+-----------------------------------+
41| SPI       | on-chip    | spi                               |
42+-----------+------------+-----------------------------------+
43| I2C       | on-chip    | i2c                               |
44+-----------+------------+-----------------------------------+
45| TRNG      | on-chip    | entropy                           |
46+-----------+------------+-----------------------------------+
47| WWDT      | on-chip    | watchdog                          |
48+-----------+------------+-----------------------------------+
49| USBOTG    | on-chip    | usb                               |
50+-----------+------------+-----------------------------------+
51| CTIMER    | on-chip    | counter                           |
52+-----------+------------+-----------------------------------+
53| SCTIMER   | on-chip    | pwm                               |
54+-----------+------------+-----------------------------------+
55| MRT       | on-chip    | counter                           |
56+-----------+------------+-----------------------------------+
57| OS_TIMER  | on-chip    | os timer                          |
58+-----------+------------+-----------------------------------+
59| PM        | on-chip    | power management; uses SoC Power  |
60|           |            | Modes 1 and 2                     |
61+-----------+------------+-----------------------------------+
62| BLE       | on-chip    | Bluetooth                         |
63+-----------+------------+-----------------------------------+
64| ADC       | on-chip    | adc                               |
65+-----------+------------+-----------------------------------+
66| DAC       | on-chip    | dac                               |
67+-----------+------------+-----------------------------------+
68| ENET      | on-chip    | ethernet                          |
69+-----------+------------+-----------------------------------+
70| Wi-Fi     | on-chip    | Wi-Fi                             |
71+-----------+------------+-----------------------------------+
72
73The default configuration can be found in the defconfig file:
74
75   :zephyr_file:`boards/nxp/frdm_rw612/frdm_rw612_defconfig`
76
77Other hardware features are not currently supported
78
79Fetch Binary Blobs
80******************
81
82To support Bluetooth or Wi-Fi, frdm_rw612 requires fetching binary blobs, which can be
83achieved by running the following command:
84
85.. code-block:: console
86
87   west blobs fetch hal_nxp
88
89Programming and Debugging
90*************************
91
92Build and flash applications as usual (see :ref:`build_an_application` and
93:ref:`application_run` for more details).
94
95Configuring a Debug Probe
96=========================
97
98A debug probe is used for both flashing and debugging the board. This board is
99configured by default to use the JLink Firmware.
100
101Configuring a Console
102=====================
103
104Connect a USB cable from your PC to J10, and use the serial terminal of your choice
105(minicom, putty, etc.) with the following settings:
106
107- Speed: 115200
108- Data: 8 bits
109- Parity: None
110- Stop bits: 1
111
112Flashing
113========
114
115Here is an example for the :zephyr:code-sample:`hello_world` application. This example uses the
116:ref:`jlink-debug-host-tools` as default.
117
118.. zephyr-app-commands::
119   :zephyr-app: samples/hello_world
120   :board: frdm_rw612
121   :goals: flash
122
123Open a serial terminal, reset the board (press the RESET button), and you should
124see the following message in the terminal:
125
126.. code-block:: console
127
128   ***** Booting Zephyr OS v3.6.0 *****
129   Hello World! frdm_rw612
130
131Debugging
132=========
133
134Here is an example for the :zephyr:code-sample:`hello_world` application. This example uses the
135:ref:`jlink-debug-host-tools` as default.
136
137.. zephyr-app-commands::
138   :zephyr-app: samples/hello_world
139   :board: frdm_rw612
140   :goals: debug
141
142Open a serial terminal, step through the application in your debugger, and you
143should see the following message in the terminal:
144
145.. code-block:: console
146
147   ***** Booting Zephyr OS zephyr-v3.6.0 *****
148   Hello World! frdm_rw612
149
150Bluetooth
151=========
152
153BLE functionality requires to fetch binary blobs, so make sure to follow
154the ``Fetch Binary Blobs`` section first.
155
156frdm_rw612 platform supports the monolithic feature. The required binary blob
157``<zephyr workspace>/modules/hal/nxp/zephyr/blobs/rw61x_sb_ble_a2.bin`` will be linked
158with the application image directly, forming one single monolithic image.
159
160Wi-Fi
161=====
162
163Wi-Fi functionality requires to fetch binary blobs, so make sure to follow
164the ``Fetch Binary Blobs`` section first.
165
166frdm_rw612 platform supports the monolithic feature. The required binary blob
167``<zephyr workspace>/modules/hal/nxp/zephyr/blobs/rw61x_sb_wifi_a2.bin`` will be linked
168with the application image directly, forming one single monolithic image.
169
170Resources
171=========
172
173.. _RW612 Website:
174   https://www.nxp.com/products/wireless-connectivity/wi-fi-plus-bluetooth-plus-802-15-4/wireless-mcu-with-integrated-tri-radiobr1x1-wi-fi-6-plus-bluetooth-low-energy-5-3-802-15-4:RW612
175