Back to news
Zephyr Tools 0.6 for VSCode Now Available!

Zephyr Tools 0.6 for VSCode Now Available!

By Jared Wolff

🚀 Zephyr Tools v0.6 is now available!

The headline of this release is a complete rework of how the Zephyr SDK is managed — including support for the new Zephyr SDK 1.0 and its gnu/<triple> toolchain layout.

SDK management is now decoupled from Setup. Multiple SDK versions coexist on your machine, and the version each workspace’s Zephyr tree requires is selected automatically. No more re-running setup just to switch Zephyr versions.

And since our last post only covered v0.5.0–0.5.3, this one also rounds up the best of the 0.5.x series you may have missed — multi-board builds, west manifest switching, nRF91xx device recovery, and faster incremental builds.

👉 Grab it on the VSCode Marketplace or the Open VSX Registry. Source lives on GitHub.

It’s been a busy stretch since the 0.5 release. Zephyr Tools v0.6 is now available on the VSCode Marketplace and the Open VSX Registry, and it brings the biggest change to how the extension handles the Zephyr SDK since the project began.

The Big One: Rethinking the Zephyr SDK

Up to now, the Zephyr SDK was tied to the one-time Setup step. That worked fine until you had two projects on two different Zephyr versions — at which point you were re-running setup just to swap toolchains. v0.6 fixes that for good.

  • Zephyr SDK 1.0 support, including its new gnu/<triple> toolchain layout.
  • SDK management is decoupled from Setup. Multiple SDK versions can live side by side, and the version each workspace’s Zephyr tree requires is selected automatically.
  • “Install SDK” — installs exactly the SDK version your current tree needs, no version prompt.
  • “Manage SDKs” — list installed SDKs, switch the active one per workspace, uninstall, or install another version.
  • Init Repo now installs the required SDK automatically as its final step, so a freshly cloned project is ready to build.
  • “Install Python Requirements” — reinstall the tree’s Python dependencies without a full west update.
  • Update Dependencies now re-resolves the SDK and refreshes Python requirements after west update, keeping your venv in sync as Zephyr versions change.

Under the hood, SDK compatibility now respects each SDK’s minimum-compatible floor, toolchain payloads are verified present before they’re used (so incomplete installs get repaired instead of failing deep in CMake), and a fully-cloned project is no longer mislabeled “Incomplete Project Found.” The fragile global SDK fallback is gone, replaced by a clean per-workspace zephyr-tools.paths.sdkInstallDir setting.

A Windows Fix Worth Calling Out (0.6.1)

If your Windows username has a space in it (e.g. C:\Users\Jared Wolff), the SDK used to install under that path and quietly break linking — GCC emits its built-in library search paths unquoted, so ld split the -L flag at the space. v0.6.1 falls back to a space-free install location (e.g. C:\.zephyrtools) and refuses a space-containing path up front with a clear message.

In Case You Missed It: Highlights Since Our Last Post

Our last blog update covered v0.5.0–0.5.3. Plenty landed across the rest of the 0.5.x series that never got its own announcement — if you’ve been away for a bit, here’s what’s waiting for you:

  • Faster incremental builds — when nothing relevant has changed, builds skip the CMake reconfigure entirely (the extension reads CMakeCache.txt and only passes full flags when needed).
  • Build Multiple Boards / Build All Boards, with pristine variants, for building several targets in one action.
  • Per-board, per-project build overrides in .zephyr-overrides.json — conf files, overlays, CMake defines, runner, and sysbuild settings follow each board automatically, and previously-used boards float to the top of the picker.
  • Conf/overlay file pickers (EXTRA_CONF_FILE / DTC_OVERLAY_FILE), custom CMake defines (-D...), and browse for projects outside the west manifest directory.
  • nRF91xx device recovery — a “Recover Device” command to unlock/erase/check locked parts, plus an automatic unlock before every probe-rs flash.
  • probe-rs debug workflow — “Create Debug Configuration” and “Debug Now” generate a launch config and start a session in one step.
  • Change West Manifest — switch between west*.yml files with auto-discovery and per-board persistence; west config stays in sync.
  • Quality-of-life — the serial monitor no longer blocks build/flash tasks, a “Zephyr Terminal” profile is selectable from the terminal dropdown, and build assets (including log_dictionary.json) are discovered by file search so non-nRF91 boards show their artifacts.

For the blow-by-blow, the full changelog has every release.

Get It

As always, feedback, ideas, and contributions are welcome — they shape where this project goes next. Happy building! 🛠️

Last updated June 20, 2026.