Zephyr Fundamentals Course 2026

iomico has been working with Zephyr RTOS for over 6 years (since 2020) and is actively involved in helping the Zephyr Project ecosystem mature. We want to share our real-world experience to help embedded engineers learn faster and avoid common pitfalls.

Certification

Attendance Certificate — awarded to participants who meet one of the following criteria:

  • Attend at least 5 out of 8 lectures, or

  • Attend fewer than 5 lectures but complete at least 5 homework assignments.

Completion Certificate — awarded to participants who meet the attendance requirements and successfully complete the practical assignments.

Instructors

Dawid Marszalkiewicz

Dawid Marszalkiewicz

Embedded Software Engineer, Tech Lead

Embedded Software Engineer, Tech Lead

Dawid Marszałkiewicz is an Embedded Software Engineer and former CTO specializing in Zephyr RTOS, embedded Linux, and secure connected devices. He combines leadership experience with hands-on engineering, helping teams build reliable embedded products and adopt modern development practices. Passionate about knowledge sharing, Dawid regularly conducts technical training and enjoys solving complex engineering challenges alongside development teams.

Dawid Marszałkiewicz is an Embedded Software Engineer and former CTO specializing in Zephyr RTOS, embedded Linux, and secure connected devices. He combines leadership experience with hands-on engineering, helping teams build reliable embedded products and adopt modern development practices. Passionate about knowledge sharing, Dawid regularly conducts technical training and enjoys solving complex engineering challenges alongside development teams.

Mariano Franceschetti

Mariano Franceschetti

Embedded Software Engineer

Embedded Software Engineer

Mariano Franceschetti is an Embedded Software Engineer with experience since 2018. Throughout his career, he has contributed to and enabled innovative solutions across a wide range of industries. Mariano has been working with the Zephyr RTOS for several years and has extensive experience in designing secure and scalable firmware architectures. He enjoys tackling complex engineering challenges and delivering robust, high-quality solutions.

Mariano Franceschetti is an Embedded Software Engineer with experience since 2018. Throughout his career, he has contributed to and enabled innovative solutions across a wide range of industries. Mariano has been working with the Zephyr RTOS for several years and has extensive experience in designing secure and scalable firmware architectures. He enjoys tackling complex engineering challenges and delivering robust, high-quality solutions.

Natalia Pluta

Natalia Pluta

Embedded Software Engineer

Embedded Software Engineer

Natalia Pluta is an Embedded Software Engineer at Iomico. Her journey with Zephyr RTOS began in 2022 at Nordic Semiconductor. Today, she uses that specialized knowledge to help Iomico's clients navigate the complexities of bringing their own projects to life. By pairing firmware expertise with solid testing and clear documentation, she ensures customers have the robust foundations needed to turn complex hardware ideas into reality.

Natalia Pluta is an Embedded Software Engineer at Iomico. Her journey with Zephyr RTOS began in 2022 at Nordic Semiconductor. Today, she uses that specialized knowledge to help Iomico's clients navigate the complexities of bringing their own projects to life. By pairing firmware expertise with solid testing and clear documentation, she ensures customers have the robust foundations needed to turn complex hardware ideas into reality.

What you'll learn

Working with upstream Zephyr

  • Managing complex multi-repository projects using west manifests

  • Creating and modifying Kconfig and devicetree configurations with confidence

  • Defining custom board support from scratch

  • Developing Zephyr-compliant device drivers, including shell integration

  • Packaging drivers and libraries as reusable Zephyr modules

  • Writing and running unit tests using ztest

🎁 Bonus lecture: Edge AI for MCUs using Neuton.ai and Edge Impulse

Prerequisites

To get the most out of this course, you should meet the following prerequisites before the course starts.
These topics are not covered during the course.

Programming

  • Proficiency in C/C++

    • Bitwise and logical operators (AND, OR, NOT, XOR)

    • Memory organization (layout, sections, endianness)

    • Pointers and memory management

    • Structs, enums, and function pointers

    • Preprocessor macros

Development Environment

Hardware