Zephyr SDK Installation

Click the Zephyr SDK Management card to access SDK installation. The SDK provides cross-compilation toolchains for various architectures (ARM, x86, RISC-V, etc.).
SDK Management
The extension uses West’s SDK integration for version management:
- Select which SDK versions to install
- Install multiple SDKs for different architectures
- Manage SDK updates through the extension
Installation
For new users:
- Click the Zephyr SDK Management card
- Select the latest SDK version
- Choose architectures to install (or select all for convenience)
- Click Install SDK
You can add specific architectures later if storage is a concern.
Important Notes
- SDK installation is a one-time process per computer
- SDKs can be shared across multiple projects
- SDK installation uses the west SDK command
- A west workspace must be configured before SDK management can occur
Declaring Required Toolchains in zephyr-ide.json
To make a project reproducible across machines and contributors, you can
declare the toolchains your workspace requires directly in
.vscode/zephyr-ide.json:
{ "toolchains": ["arm-zephyr-eabi", "riscv64-zephyr-elf"], "sdkVersion": "0.17.0", "projects": { ... }}sdkVersion is optional. When the workspace setup flow needs to install a
Zephyr SDK to satisfy the declared toolchains, it picks the version to install
in this priority order:
- The
sdkVersiondeclared inzephyr-ide.json. - The version recorded in the Zephyr source tree’s
SDK_VERSIONfile. - Any Zephyr SDK that is already installed locally.
- The latest released SDK if none of the above is available.
The SDK panel always exposes two buttons for managing the workspace’s declared toolchain list:
- Install from zephyr-ide.json — install every declared toolchain that isn’t already available locally.
- Modify zephyr-ide.json — open a quick-pick that lets you check or
uncheck toolchains. Toolchains already installed locally are listed first;
items currently declared in
zephyr-ide.jsonare pre-checked. Saving with no items selected clears thetoolchainsfield.
When the toolchains list is non-empty, the workspace setup flow installs
any missing toolchains automatically once the Zephyr SDK is in place.
The same operations are available from the command palette:
Zephyr IDE: Modify zephyr-ide.json ToolchainsZephyr IDE: Install Toolchains from zephyr-ide.json
Declaring Required Blobs in zephyr-ide.json
Some Zephyr modules ship binary blobs (e.g. wireless firmware) that must be
fetched separately with west blobs fetch. Modules whose blobs your workspace
requires can be listed under the blobs key:
{ "blobs": ["hal_nordic", "hal_st"], "toolchains": ["arm-zephyr-eabi"]}When the workspace is set up the extension runs west blobs fetch <module> for
each declared module. You can also manage blobs interactively via:
Zephyr IDE: Modify zephyr-ide.json Blobs— opens a quick-pick listing modules that declare blobs (discovered viawest blobs list); already declared modules are pre-checked.Zephyr IDE: Install Blobs from zephyr-ide.json— fetches any blobs declared inzephyr-ide.json.
Next Steps
After installing the SDK, you’re ready to: