You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: content/learning-paths/embedded-and-microcontrollers/zephyr_vsworkbench/1_installation.md
+26-18Lines changed: 26 additions & 18 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,5 +1,5 @@
1
1
---
2
-
title: Install and configure Zephyr Workbench in VS Code
2
+
title: Install and configure Workbench for Zephyr in VS Code
3
3
weight: 2
4
4
5
5
### FIXED, DO NOT MODIFY
@@ -10,45 +10,53 @@ layout: learningpathall
10
10
11
11
Setting up a [Zephyr](https://zephyrproject.org/) RTOS development environment from scratch can be challenging, requiring you to manually install SDKs, configure toolchains, and initialize workspace directories. These steps often vary across operating systems and board vendors, leading to a fragmented and error-prone setup process.
12
12
13
-
[Zephyr Workbench](https://zephyr-workbench.com/) is an open-source Visual Studio Code extension that transforms Zephyr RTOS development into a streamlined IDE experience. Created by [Ac6](https://www.ac6.fr/en/), it automates toolchain setup, project management, and debugging, making Zephyr projects faster to start and easier to scale.
13
+
[Workbench for Zephyr](https://zephyr-workbench.com/) is an open-source Visual Studio Code [extension](https://marketplace.visualstudio.com/items?itemName=Ac6.zephyr-workbench) that transforms Zephyr RTOS development into a streamlined IDE experience. Created by [Ac6](https://www.ac6.fr/en/), it automates toolchain setup, project management, and debugging, making Zephyr projects faster to start and easier to scale.
14
14
15
-
In this Learning Path, you'll learn the essential steps to install Zephyr Workbench and configure a complete development environment on your local machine. Once complete, you'll be ready to create, build, and debug applications for Arm Cortex-M platforms using Zephyr RTOS.
15
+
In this Learning Path, you'll learn the essential steps to install Workbench for Zephyr and configure a complete development environment on your local machine. Once complete, you'll be ready to create, build, and debug applications for Arm Cortex-M platforms using Zephyr RTOS.
16
16
17
-
Zephyr Workbench provides one-click environment setup that automatically installs the required tools including Python, CMake, Ninja, and Git. It supports importing and managing Zephyr SDKs with version and architecture selection, while initializing west workspaces and creating board-specific applications from samples. The extension builds Zephyr applications and flashes hardware directly from the VS Code interface. It also provides breakpoint debugging and memory usage insights with hardware probe support.
17
+
Workbench for Zephyr provides one-click environment setup that automatically installs the required tools including Python, CMake, Ninja, and Git. It supports importing and managing Zephyr SDKs with version and architecture selection, while initializing west workspaces and creating board-specific applications from samples. The extension builds Zephyr applications and flashes hardware directly from the VS Code interface. It also provides breakpoint debugging and memory usage insights with hardware probe support.
18
18
19
-
## What you need before installing Zephyr Workbench
19
+
## What you need before installing Workbench for Zephyr
20
20
21
-
To get started with Zephyr Workbench you need to have Visual Studio Code downloaded, installed, and running on your computer.
21
+
To get started with Workbench for Zephyr you need to have Visual Studio Code downloaded, installed, and running on your computer.
22
22
23
-
For Windows, you need version 10 or later (64-bit), along with administrator privileges for installing tools and drivers.
23
+
**Windows OS:**
24
+
For Windows, you need version 10 or later (64-bit x64), along with administrator privileges for installing runners and drivers.
24
25
25
-
On macOS, the Homebrew package manager is required. To install Homebrew, run the following command:
26
+
**MacOS:**
27
+
On MacOS, the Homebrew package manager is required. To install Homebrew, run the following command:
Zephyr Workbench supports STM32 development boards (STM32 Discovery, Nucleo series), Nordic Semiconductor boards (nRF52, nRF53, nRF91 series), NXP development boards (FRDM, LPCXpresso series), Espressif boards (ESP32-based boards), and many other Zephyr-supported platforms. You need a development board to try out the code examples.
33
+
**Linux:**
34
+
- A recent 64-bit X64 distribution such as Ubuntu 20.04 or later, Fedora, Clear Linux OS, or Arch Linux
35
+
- Other distributions might work, but may require manual configuration of system packages
36
+
- After installation, use the Workbench host tools manager to verify that all required tools were installed correctly
32
37
33
-
## Configure the Zephyr Workbench extension in Visual Studio Code
38
+
39
+
Zephyr Workbench supports STM32 development boards (STM32 Discovery, Nucleo series), Nordic Semiconductor boards (nRF52, nRF53, nRF91 series), NXP development boards (FRDM, LPCXpresso series), Espressif boards (ESP32-based boards), and many other Zephyr-supported platforms like Renesas, Silabs or Infineon. You need a development board to try out the code examples.
40
+
41
+
## Configure the Workbench for Zephyr extension in Visual Studio Code
34
42
35
43
This section covers installing the Zephyr Workbench extension and configuring your Arm development environment.
36
44
37
45
### Install the extension
38
46
39
-
To install the Zephyr Workbench extension, open Visual Studio Code and navigate to the Extensions view by selecting the Extensions icon in the Activity Bar.
47
+
To install the Workbench for Zephyr extension, open Visual Studio Code and navigate to the Extensions view by selecting the Extensions icon in the Activity Bar.
40
48
41
49
You can also use the keyboard shortcut `Ctrl+Shift+X` (Windows/Linux) or `Cmd+Shift+X` (macOS).
42
50
43
-
In the search box, type "Zephyr Workbench" and locate the official "Zephyr Workbench" extension by Ac6. Select **Install** to add the extension to VS Code.
51
+
In the search box, type "Workbench for Zephyr" and locate the official "Workbench for Workbench" extension by Ac6. Select **Install** to add the extension to VS Code.
44
52
45
53
The extension icon appears in the Activity Bar, and a welcome message may appear confirming successful installation.
46
54
47
-
Once installed, the Zephyr Workbench icon appears in the sidebar with a welcome screen.
55
+
Once installed, the Workbench for Zephyr icon appears in the sidebar with a welcome screen.
48
56
49
57
### Install the required host tools
50
58
51
-
In the Zephyr Workbench panel, select **Install Host Tools** to automatically install the required dependencies.
59
+
In the Workbench for Zephyr panel, select **Install Host Tools** to automatically install the required dependencies.
52
60
53
61
This process installs Python 3.x, CMake, the Ninja build system, Git, Device Tree Compiler (DTC), and the West meta-tool.
54
62
@@ -62,7 +70,7 @@ When the installation completes, select **Verify Host Tools** to check the versi
62
70
63
71
### Import and configure the toolchain
64
72
65
-
Next, download and configure the toolchain by selecting **Import Toolchain** in the Zephyr Workbench panel. Select the toolchain family (*Zephyr SDK*) and configure the SDK Type by choosing *Minimal* for basic functionality.
73
+
Next, download and configure the toolchain by selecting **Import Toolchain** in the Workbench for Zephyr panel. Select the toolchain family (*Zephyr SDK*) and configure the SDK Type by choosing *Minimal* for basic functionality.
66
74
67
75
Select your desired version (such as v0.17.0 or v0.17.3) and choose the target architectures. For this Learning Path, you only need to select *arm*.
68
76
@@ -73,9 +81,9 @@ Specify the parent directory for SDK installation and select **Import** to downl
73
81
74
82
### Initialize the Zephyr project workspace
75
83
76
-
Zephyr uses a Git-based workspace manager called West to organize its source code, modules, and samples. Use Zephyr Workbench to initialize your first West workspace.
84
+
Zephyr uses a Git-based workspace manager called West to organize its source code, modules, and samples. Use Workbench for Zephyr to initialize your first West workspace.
77
85
78
-
In the Zephyr Workbench panel, select **Initialize Workspace** to set up your project environment. Configure the workspace settings by selecting "Minimal from template" for the source location and using the default path `https://github.com/zephyrproject-rtos/zephyr`.
86
+
In the Workbench for Zephyr panel, select **Initialize Workspace** to set up your project environment. Configure the workspace settings by selecting "Minimal from template" for the source location and using the default path `https://github.com/zephyrproject-rtos/zephyr`.
79
87
80
88
Choose a target-specific template (such as STM32 or NXP) and select your Zephyr version (such as v3.7.0 or v4.1.0). Specify the directory for your workspace, keeping in mind that initialization takes approximately 10 minutes to complete.
81
89
@@ -89,7 +97,7 @@ The workspace initialization downloads the Zephyr source code and dependencies.
89
97
90
98
### Verify setup
91
99
92
-
Test your setup by confirming that the Zephyr Workbench panel shows all components as installed successfully. Verify the host tools are installed, the SDK is imported and detected, and the West workspace is initialized. Ensure no error messages appear in the VS Code output panel.
100
+
Test your setup by confirming that the Workbench for Zephyr panel shows all components as installed successfully. Verify the host tools are installed, the SDK is imported and detected, and the West workspace is initialized. Ensure no error messages appear in the VS Code output panel.
Copy file name to clipboardExpand all lines: content/learning-paths/embedded-and-microcontrollers/zephyr_vsworkbench/2_development.md
+8-8Lines changed: 8 additions & 8 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -8,12 +8,12 @@ layout: learningpathall
8
8
9
9
## Create and build your first Zephyr application
10
10
11
-
In this session, you'll learn how to create and build your first Zephyr application using Zephyr Workbench. This step prepares you to customize, test, and expand real firmware projects on Arm Cortex-M boards.
11
+
In this session, you'll learn how to create and build your first Zephyr application using Workbench for Zephyr. This step prepares you to customize, test, and expand real firmware projects on Arm Cortex-M boards.
12
12
13
13
For demonstration, you'll use an [NXP FRDM-MCXN947](https://www.nxp.com/design/design-center/development-boards-and-designs/FRDM-MCXN947) development board as the target device. However, the same steps apply to any Zephyr-supported Arm Cortex-M board.
14
14
You can find the full list of supported boards in the [Supported Boards](https://docs.zephyrproject.org/latest/boards/#).
15
15
16
-
Depending on your board, you might need to install a different debug tool. The next module covers this setup.
16
+
Depending on your board, you might need to install a different debug tool aka `runner`. The next module covers this setup.
17
17
18
18
### Create application
19
19
@@ -30,7 +30,7 @@ In the Zephyr Workbench panel:
30
30
31
31
### Build the application
32
32
33
-
Select the **Build** button in Zephyr Workbench or press `Ctrl+Shift+B`.
33
+
Select the **Build** button in Workbench for Zephyr or press `Ctrl+Shift+B`.
34
34
35
35
The build system compiles your application and links it against the Zephyr kernel and board-specific drivers.
36
36
@@ -43,11 +43,11 @@ To enable debugging on your target hardware, you might need to install additiona
43
43
For the NXP FRDM-MCXN947, download and install the LinkServer debug utility:
44
44
- LinkServer for Microcontrollers: [NXP LinkServer Download Page](https://www.nxp.com/design/design-center/software/development-software/mcuxpresso-software-and-tools-/linkserver-for-microcontrollers:LINKERSERVER)
45
45
46
-
Once installed, Zephyr Workbench attempts to detect it automatically during a debug session.
46
+
Once installed, Workbench for Zephyr attempts to detect it automatically during a debug session.
47
47
If you're using a different board, see your vendor's documentation to install the appropriate debug utility.
48
48
49
49
{{% notice Note %}}
50
-
If Zephyr Workbench doesn't automatically detect the installed debug runner, you can manually configure it.
50
+
If Workbench for Zephyr doesn't automatically detect the installed debug runner, you can manually configure it.
51
51
Open the **Debug Manager** from the Zephyr sidebar, and enter the full path to the runner executable.
52
52
{{% /notice %}}
53
53
@@ -68,11 +68,11 @@ The following code shows a basic Zephyr application that prints a message to the
68
68
69
69
```c
70
70
#include<zephyr/kernel.h>
71
-
#include<zephyr/sys/printk.h>
71
+
#include<zephyr/stdio.h>
72
72
73
73
intmain(void)
74
74
{
75
-
printk("Hello World! %s\n", CONFIG_BOARD); // Prints board name to serial console
75
+
printk("Hello World! %s\n", CONFIG_BOARD_TARGET); // Prints board name to serial console
76
76
return 0;
77
77
}
78
78
```
@@ -83,4 +83,4 @@ int main(void)
83
83
84
84
Now that the app works, try editing the message in `printk()` or changing the board target in the application settings. Then rebuild and observe the output. This helps verify that your toolchain and workspace respond correctly to code and config changes.
85
85
86
-
With your first Zephyr application successfully built, you're ready to take the next step—debugging. In the next module, you'll launch a debug session, set breakpoints, and perform memory analysis using Zephyr Workbench. These skills help you validate and optimize applications running on real Arm Cortex-M hardware.
86
+
With your first Zephyr application successfully built, you're ready to take the next step—debugging. In the next module, you'll launch a debug session, set breakpoints, and perform memory analysis using Workbench for Zephyr. These skills help you validate and optimize applications running on real Arm Cortex-M hardware.
Copy file name to clipboardExpand all lines: content/learning-paths/embedded-and-microcontrollers/zephyr_vsworkbench/3_debug.md
+13-13Lines changed: 13 additions & 13 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -8,21 +8,21 @@ layout: learningpathall
8
8
9
9
## Analyze and debug Zephyr applications in VS Code
10
10
11
-
In this module, you'll learn how to inspect memory usage and perform live debugging on your Zephyr applications using Zephyr Workbench. These capabilities are essential for diagnosing bugs and optimizing embedded firmware performance on Arm Cortex-M platforms.
11
+
In this module, you'll learn how to inspect memory usage and perform live debugging on your Zephyr applications using Workbench for Zephyr. These capabilities are essential for diagnosing bugs and optimizing embedded firmware performance on Arm Cortex-M platforms.
12
12
13
13
## Analyze memory usage
14
14
15
-
Understanding how your application uses memory is crucial for optimizing embedded firmware on resource-constrained Arm Cortex-M systems. Zephyr Workbench provides built-in tools to generate detailed memory usage reports after a successful build, helping you identify ROM and RAM consumption hotspots early in development.
15
+
Understanding how your application uses memory is crucial for optimizing embedded firmware on resource-constrained Arm Cortex-M systems. Workbench for Zephyr provides built-in tools to generate detailed memory usage reports after a successful build, helping you identify ROM and RAM consumption hotspots early in development.
16
16
17
17
### Generate memory reports
18
18
19
-
After building your Zephyr application, analyze how memory is allocated and used. Zephyr Workbench offers built-in memory reporting tools that help you visualize RAM and ROM usage, identify inefficient memory patterns, and guide optimization efforts. These insights are especially useful when working with constrained Arm Cortex-M platforms.
19
+
After building your Zephyr application, analyze how memory is allocated and used. Workbench for Zephyr offers built-in memory reporting tools that help you visualize RAM and ROM usage, identify inefficient memory patterns, and guide optimization efforts. These insights are especially useful when working with constrained Arm Cortex-M platforms.
20
20
21
21
To generate memory reports, open the **Zephyr Workbench** panel and select **Memory Analysis** after a successful build. The tool generates detailed reports showing RAM usage (stack, heap, static variables), ROM usage (code size, constants), and **Puncover** analysis for binary analysis including function size, call graphs, and timing on Arm Cortex-M processors.
22
22
23
23
The following steps show how to generate and review memory reports:
24
24
25
-
- Open the **Zephyr Workbench** panel
25
+
- Open the **Workbench for Zephyr** panel
26
26
- Select **Memory Analysis** after a successful build
27
27
- Review detailed memory reports:
28
28
-**RAM usage**: stack, heap, static variables
@@ -159,22 +159,22 @@ Root
159
159
```
160
160
161
161
162
-
## Install and configure debug tools
162
+
## Install and configure debug Runners
163
163
164
-
Depending on your board, different debug utilities might be required. Zephyr Workbench integrates several common runners:
165
-
166
-
Go to **Host Tools > Install Debug Tools** in Zephyr Workbench. Debug tools vary depending on your target board.
164
+
Depending on your board, different debug utilities may be required. Workbench for Zephyr integrates and discovers several common runners:
167
165
168
166
-**OpenOCD**: Generic open-source debugger
169
167
-**LinkServer**: For NXP targets
170
168
-**STM32CubeProgrammer**: For STM32 boards
171
169
-**J-Link**: For SEGGER debug probes
172
170
173
-
### Install debug utilities
171
+
Workbench for Zephyr will automatically detect these tools when they are installed in their default locations and available on your system `PATH`. If a tool is installed in a custom location, you can either update your `PATH` or configure your environment so that Workbench for Zephyr can find it.
172
+
173
+
### Install Runners Utilities
174
174
175
175
To install debug tools for your specific board, go to **Host Tools > Install Debug Tools** in the Zephyr Workbench panel and select the tools applicable to your board.
176
176
177
-

177
+

178
178
179
179
## Configure debug settings
180
180
@@ -193,15 +193,15 @@ Choose the runner from OpenOCD, J-Link, LinkServer, or PyOCD. If the system does
193
193
194
194
### Manual debug runner configuration
195
195
196
-
If Zephyr Workbench doesn't automatically detect the installed debug runner, open the **Debug Manager** from the sidebar and locate your board profile to enter the path to the runner executable manually.
196
+
If Workbench for Zephyr doesn't automatically detect the installed debug runner, open the **Debug Manager** from the sidebar and locate your board profile to enter the path to the runner executable manually.
197
197
198
198
{{% notice Note %}}
199
199
Manual configuration might be required on first-time setups or if using custom runner versions.
200
200
{{% /notice %}}
201
201
202
202
## Launch and use the debugger
203
203
204
-
You can start debugging from Zephyr Workbench by selecting **Debug**, or from VS Code by going to **Run and Debug** (`Ctrl+Shift+D`), selecting the debug config, and selecting **Run**.
204
+
You can start debugging from Workbench for Zephyr by selecting **Debug**, or from VS Code by going to **Run and Debug** (`Ctrl+Shift+D`), selecting the debug config, and selecting **Run**.
205
205
206
206

207
207
@@ -222,4 +222,4 @@ The debugger provides comprehensive inspection capabilities including breakpoint
222
222
223
223
If using `pyocd`, target support might take a few seconds to initialize.
224
224
225
-
In this Learning Path, you explored how to analyze memory usage and debug Zephyr applications using Zephyr Workbench in VS Code. You learned to generate memory reports, install and configure debug tools, and launch interactive debug sessions. These steps help you troubleshoot and optimize embedded applications for Arm Cortex-M boards.
225
+
In this Learning Path, you explored how to analyze memory usage and debug Zephyr applications using Workbench for Zephyr. You learned to generate memory reports, install and configure debug tools, and launch interactive debug sessions. These steps help you troubleshoot and optimize embedded applications for Arm Cortex-M boards.
0 commit comments