boards/nxp/frdm_mcxw72/doc/index.rst
.. zephyr:board:: frdm_mcxw72
Overview
The FRDM-MCXW72
The MCX W72x family features a 96 MHz Arm® Cortex®-M33 core coupled with a multiprotocol radio subsystem supporting Matter, Thread, Zigbee and Bluetooth LE. The independent radio subsystem, with a dedicated core and memory, offloads the main CPU, preserving it for the primary application and allowing firmware updates to support future wireless standards.
Hardware
For more information about the MCXW72 SoC and FRDM-MCXW72 board, see:
MCXW72 SoC Website_FRDM-MCXW72 Website_.. zephyr:board-supported-hw::
Fetch Binary Blobs
To support Bluetooth, frdm_mcxw72 requires fetching binary blobs, which can be achieved by running the following command:
.. code-block:: console
west blobs fetch hal_nxp
Programming and Debugging
.. zephyr:board-supported-runners::
Build and flash applications as usual (see :ref:build_an_application and
:ref:application_run for more details).
A debug probe is used for both flashing and debugging the board. This board is configured by default to use the J-Link Onboard Debug Probe.
J-Link is the default runner for this board.
Follow the instructions in :ref:mcu-link-jlink-onboard-debug-probe
to reprogram the default MCU-Link firmware. This only needs to be done if
the default onboard debug circuit firmware was changed. To put the board
in DFU mode to program the firmware, short jumper JP5.
The second option is to attach a :ref:jlink-external-debug-probe to the
10-pin SWD connector (J12) of the board.
The onboard debug circuit can be updated with Linkserver firmware by following
the instructions in :ref:mcu-link-cmsis-onboard-debug-probe.
To be able to program the firmware, you need to put the board in DFU mode
by shortening the jumper JP5.
Use the -r linkserver option with west to use the linkserver runner.
.. code-block:: console
west flash -r linkserver
Connect a USB cable from your PC to J14, and use the serial terminal of your choice (minicom, putty, etc.) with the following settings:
.. zephyr-app-commands:: :zephyr-app: samples/net/sockets/echo_server :board: frdm_mcxw72 :goals: build :gen-args: -DEXTRA_CONF_FILE=overlay-ot.conf
.. zephyr-app-commands:: :zephyr-app: samples/net/sockets/echo_client :board: frdm_mcxw72 :goals: build :gen-args: -DEXTRA_CONF_FILE=overlay-ot.conf
Here is an example for the :zephyr:code-sample:hello_world application.
.. zephyr-app-commands:: :zephyr-app: samples/hello_world :board: frdm_mcxw72 :goals: flash
Open a serial terminal, reset the board (press the RESET button), and you should see the following message in the terminal:
.. code-block:: console
*** Booting Zephyr OS build v3.7.0-xxx-xxxx *** Hello World! frdm_mcxw72
Here is an example for the :zephyr:code-sample:hello_world application.
.. zephyr-app-commands:: :zephyr-app: samples/hello_world :board: frdm_mcxw72 :goals: debug
Open a serial terminal, step through the application in your debugger, and you should see the following message in the terminal:
.. code-block:: console
*** Booting Zephyr OS build v3.7.0-xxx-xxxx *** Hello World! frdm_mcxw72
To boot the MCU in ISP mode, follow these steps:
FRDM-MCXW72 board from all power sources.SW3 button on the board pressed, while connecting
the board to the host computer USB port.SW3 button. The MCXW72 MCU boots in ISP mode.When running an application with low power mode enabled (CONFIG_PM=y), flashing
via the standard debug probe (MCU-Link or J-Link) may fail. This is because the
MCU enters low power states where the SWD debug interface becomes unresponsive.
To flash a board running a low power image, enter ISP mode (see Entering ISP Mode).
BLE functionality requires to fetch binary blobs, so make sure to follow
the Fetch Binary Blobs section first.
Two images must be written to the board: one for the host (CM33) and one for the NBU (CM3).
To flash the application (CM33) refer to the Application Flashing section above.
To flash the NBU Flashing, follow the instructions below:
blhost from NXP's website. This is the tool that will allow you to flash the NBU.Entering ISP Mode)... tabs::
.. group-tab:: DYN NBU - Windows
.. code-block:: console
:caption: Flash Dynamic NBU (BLE + 15.4) on Windows
blhost.exe -p COMxx flash-erase-all 0
blhost.exe -p COMxx flash-erase-all 2
blhost.exe -p COMxx write-memory 0x48800000 <nbu-firmware.bin>
.. group-tab:: DYN NBU - Linux
.. code-block:: console
:caption: Flash Dynamic NBU (BLE + 15.4) on Linux
./blhost -p /dev/ttyxx flash-erase-all 0
/blhost -p /dev/ttyxx flash-erase-all 2
/blhost -p /dev/ttyxx write-memory 0x48800000 <nbu-firmware.bin>
Please consider changing COMxx on Windows or ttyxx on Linux to the serial port used by your board.
The NBU files can be found in : <zephyr workspace>/modules/hal/nxp/zephyr/blobs/mcxw72/ folder.
.. include:: ../../common/segger-ecc-systemview.rst.inc
.. include:: ../../common/board-footer.rst.inc
References
.. target-notes::
.. _FRDM-MCXW72 Website: