Who is this for?

This is an introductory topic for embedded developers targeting Arm-based platforms with the Zephyr RTOS using the Workbench for Zephyr extension for VS Code.

What will you learn?

Upon completion of this Learning Path, you will be able to:

  • Install and configure the Workbench for Zephyr extension in VS Code
  • Set up a complete Zephyr development environment including the SDK and toolchain
  • Create, build, and debug Zephyr applications using hands-on examples
  • Perform memory usage analysis and apply basic optimization techniques
  • Apply essential debugging workflows for embedded systems

Prerequisites

Before starting, you will need the following:

  • Basic familiarity with embedded C programming
  • Visual Studio Code
  • A Cortex-M development board
  • Windows 10+ (64-bit), macOS with Homebrew, or Linux (preferably Ubuntu 20.04+)

Summary

AI-assisted

This summary was drafted with an approved AI-assisted workflow and reviewed by Arm contributors before publication. Human technical review remains part of the process so the final page reflects engineering rigor, accuracy, and Arm editorial standards.

Close
?
You’ll use Workbench for Zephyr in Visual Studio Code to set up a Zephyr RTOS environment and build firmware for an Arm Cortex-M board. First, you’ll select a supported board and debug runner. Then, you’ll build the project, inspect memory-usage reports, set breakpoints, and step through code to verify the target’s behavior.

Frequently asked questions

AI-assisted

These FAQs were drafted with an approved AI-assisted workflow and reviewed by Arm contributors before publication. Human technical review remains part of the process so the final page reflects engineering rigor, accuracy, and Arm editorial standards.

Close
?
How do I know I installed the Workbench for Zephyr extension correctly?
The setup is correct if the extension completes SDK and toolchain configuration and you can create and build a Zephyr application without errors. A memory usage report generated after the build is another good confirmation.
Which board should I select when creating the project?
Choose your Zephyr-supported Arm Cortex-M board. NXP FRDM-MCXN947 is used as an example, and you can confirm other options in the Zephyr Supported Boards list .
Where do I configure a debug runner that Workbench for Zephyr doesn't detect?
Open the Debug Manager from the sidebar, locate your board profile, and enter the full path to the runner executable.
What result should I expect after a successful build?
Expect build artifacts for your application and a generated memory usage report from Workbench for Zephyr. These outputs indicate the project is ready for debugging on the selected board.
How do I open the memory reports after a successful build?
In the Workbench for Zephyr panel, select Memory Analysis. You can then review RAM usage, ROM usage, and Puncover analysis.
Next