Skip to main content
BlogZephyr Developer Summit

Developer Tools for Workflow

By October 17, 2023No Comments

The Zephyr Developer Summit, hosted under the first-ever Embedded Open Source Summit in Prague, Czech Republic, on June 27-30 included presentations, BoFs, and training designed for real time problem solving and deep discussions. More than 1,300 people registered for the EOSS conference – representing 375 organizations across 56 countries around the globe. Zephyr had 75+ technical sessions (in-person and on-demand) for 3 tracks focused on users of Zephyr, developers contributing upstream, and maintainer-specific topics.

All of the videos from the Zephyr Developer Summit can be found on the Zephyr Youtube Channel. Each week, we’ll highlight a few videos in a blog for easy access. Today, we’re featuring a few sessions focused on developer tools for workflow including, “Zephyr Tools for VSCode: Get Started with Zephyr Fast,” “Zephyr & Visual Studio Code: How to Develop Zephyr Apps with a Modern, Visual IDE,” and “Full Workflow with West.”

Zephyr Tools for VSCode: Get Started with Zephyr Fast – Jared Wolff, Owner at Circuit Dojo LLC

For newcomers, Zephyr can be tough to get started with. Python installations, environment variables, toolchains and more amplify the confusion! Fortunately if you use VSCode it’s easier to get started with Zephyr using Zephyr Tools by Circuit Dojo. Recently released as open source with the Apache 2.0 license, the goal of these tools is to make it easier for anyone in the Zephyr community to get their projects off the ground no matter what toolchain or architecture. In this talk, Jared will talk about:

  • Initializing the extension
  • Starting a project from scratch
  • Fetching dependencies
  • Building, flashing and viewing console output


Zephyr & Visual Studio Code: How to Develop Zephyr Apps with a Modern, Visual IDE – Jonathan Beri, CEO of Golioth

Visual Studio Code (or VS Code) has become a very popular developer environment for frontend and backend projects. But increasingly, embedded developers are turning to this tool too. “How do I get started with Visual Studio Code” is the most asked question in the Zephyr community Discord server. Out of the box VS Code isn’t setup up for embedded development but by leveraging extensions, supporting tools and the right configs, it can be a powerful IDE for you to use while building Zephyr apps. This talk will cover the current state of Zephyr support in VS Code and I’ll share my VS Code setup and tips ‘n tricks along the way.


Full Workflow With West – Al Semjonovs, Software Engineer at Google

West provides a great one place solution for building, testing, flashing, and managing repos. At Google, we’ve been working on new sub commands to help simplify developer workflow.  First we created the “west twister” subcommand. When working with multiple west projects, navigating to the correct path to twister can be cumbersome and sometimes the wrong one.  When you have a mismatch of code and twister from different projects, the test results will be inaccurate. The west twister command solves this problem by using west to identify the path to twister for the current project.  Second, we’re working on a dependency manager for python based and native tools.  From the west manifest, we can store the current version of tools needed for the project and their dependencies.  Invoking  “west update” can query this data to install the needed changes.  Another west subcommand we’re working on is “west push”, which improves Zephyr Upstream workflow and pull request management when working with multiple branches that have dependencies on each other.
Watch the rest of the Zephyr Developer Summit videos here. The schedule and links to the PPT presentations can be found here. Photos from the EOSS can be found here.

For more information about the 2024 event, stay tuned by subscribing to the Zephyr quarterly newsletter or connect with us on @ZephyrIoTZephyr Project LinkedIn or the Zephyr Discord Channel to talk with community and TSC members.

Zephyr Project