This is the documentation for the latest (main) development branch of Zephyr. If you are looking for the documentation of previous releases, use the drop-down menu on the left and select the desired version.

MSP-EXP432P401R LaunchXL


The SimpleLink MSP‐EXP432P401R LaunchPad development kit is an easy-to-use evaluation module for the SimpleLink MSP432P401R microcontroller. It contains everything needed to start developing on the SimpleLink MSP432 low-power + performance ARM® 32-bit Cortex®-M4F microcontroller (MCU).

MSP-EXP432P401R LaunchXL development board


  • Low-power ARM Cortex-M4F MSP432P401R

  • 40-pin LaunchPad development kit standard that leverages the BoosterPack plug-in module ecosystem

  • XDS110-ET, an open-source onboard debug probe featuring EnergyTrace+ technology and application UART

  • Two buttons and two LEDs for user interaction

  • Backchannel UART through USB to PC

Details on the MSP-EXP432P401R LaunchXL development board can be found in the MSP-EXP432P401R LaunchXL User’s Guide.

Supported Features

  • The on-board 32-kHz crystal allows for lower LPM3 sleep currents and a higher-precision clock source than the default internal 32-kHz REFOCLK. Therefore, the presence of the crystal allows the full range of low- power modes to be used.

  • The on-board 48-MHz crystal allows the device to run at its maximum operating speed for MCLK and HSMCLK.

The MSP-EXP432P401R LaunchXL development board configuration supports the following hardware features:






nested vectored interrupt controller



system clock



serial port

More details about the supported peripherals are available in MSP432P4XX TRM Other hardware features are not currently supported by the Zephyr kernel.

Building and Flashing


  1. Ensure the XDS-110 emulation firmware is updated.

    Download and install the latest XDS-110 emulation package.

    Follow these xds110 firmware update directions

    Note that the emulation package install may place the xdsdfu utility in <install_dir>/ccs_base/common/uscif/xds110/.

  2. Install OpenOCD

    You can obtain OpenOCD by following these installing the latest Zephyr SDK instructions.

    After the installation, add the directory containing the OpenOCD executable to your environment’s PATH variable. For example, use this command in Linux:

    export PATH=$ZEPHYR_SDK_INSTALL_DIR/sysroots/x86_64-pokysdk-linux/usr/bin/openocd:$PATH

    If you had previously installed TI OpenOCD, you can simply switch to use the one in the Zephyr SDK. If for some reason you wish to continue to use your TI OpenOCD installation, you can set the OPENOCD and OPENOCD_DEFAULT_PATH variables in boards/ti/msp_exp432p401r_launchxl/board.cmake to point the build to the paths of the OpenOCD binary and its scripts, before including the common openocd.board.cmake file:

    set(OPENOCD "/usr/local/bin/openocd" CACHE FILEPATH "" FORCE)
    set(OPENOCD_DEFAULT_PATH /usr/local/share/openocd/scripts)


Follow the Getting Started Guide instructions for Zephyr application development.

For example, to build and flash the Hello World application for the MSP-EXP432P401R LaunchXL:

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

This will load the image into flash.

To see program output from UART0, connect a separate terminal window:

% screen /dev/ttyACM0 115200 8N1

Then press the reset button (S3) on the board to run the program.


To debug a previously flashed image, after resetting the board, use the ‘debug’ build target:

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


TI MSP432 Wiki:

TI MSP432P401R Product Page: