Home > On-Demand Archives > Q&A Sessions >

Live Q&A - An Introduction to The Zephyr Project RTOS

Mohammed Billoo - Watch Now - EOC 2023 - Duration: 25:53

Live Q&A - An Introduction to The Zephyr Project RTOS
Mohammed Billoo
Live Q&A with Mohammed Billoo for the talk titled An Introduction to The Zephyr Project RTOS
italicssurround text with
boldsurround text with
**two asterisks**
or just a bare URL
surround text with
strikethroughsurround text with
~~two tilde characters~~
prefix with

Score: 0 | 1 year ago | no reply

Thank you Mohamed, for this intro to Zephyr. Looking forward to my first go on it.
Perhaps they named it Zephyr because it's a breeze to use...

Score: -1 | 1 year ago | 1 reply

Devicetree is an abomination. OMG is it bad. Just about any vendor, NXP, Renasas and Cypress have serious tools to set up various subsystems, pin assignments and what things to include much, much, much better. Way better. Device tree is not even close to the abilities of any of those tools.

Score: 0 | 1 year ago | 2 replies

It's true that it gets some getting used to, unless one comes from the (embedded) Linux kernel build environment (the resemblance is a good design choice by Zephyr committee in my opinion). But the flexibility and modularity it brings in makes it well worth it, a testament to this are the overlays Mohammed alluded to and node aliasing so that application code can remain the same while targeting different hardware just by DT configutation, Mike Szczys covers this use case nicely in his presentation.

Score: 0 | 1 year ago | 1 reply

Agreed. While it takes a bit getting used to, the reusability that devicetrees offer makes for cleaner code, in my opinion.

Score: 0 | 1 year ago | no reply

If using Nordic tools, the new Device Tree action in the latest nRF Connect SDK VS code extension is pretty nice. Very easy to visualize pin assignments, peripherals, etc.

Score: -1 | 1 year ago | no reply

targeting different hardware: If your code isn't very, very interested in what's under it; you're not doing embedded. It is never the case that I change hardware without changes to the application above it. And when I do, I track it carefully along with the application. This idea that I'd take anything and willy nilly move it to another board is ridiculous; the code is part and parcel of the hardware it lives in context with. I absolutely DO NOT want layering of hardware setups as that makes it a lot harder to find what is going on really.

Score: 0 | 1 year ago | 1 reply

Thanks for the presentation. One question I have regarding custom hardware What is the best way to handle it in your opinion: copy dev kit board and create a new devicetree ? or use an overlay over a dev kit (and build using the dev kit name) ?

Score: 0 | 1 year ago | no reply

Great question. Creating a new devicetree is overkill. Instead, you can use an overlay over a dev kit (since you're most likely using a dev kit as a starting point and only adjusting the pinout).

Score: 0 | 1 year ago | 1 reply

Thanks Mohammed for an insightful presentation. I didn't appreciate how well integrated Zephyr & VSCode are! I think this is an important point for developers accustomed to a front end IDEs so very appropriate to cover it for an introduction to Zephyr.

Score: 0 | 1 year ago | no reply

Awesome! The integration with VS Code is a game-changer for Zephyr.

Score: 0 | 1 year ago | 1 reply

If you never used Zephyr, as I, this is a great Kick-Off to start with, thank you Mohammend for the compact presentation.!

Score: 0 | 1 year ago | no reply

Excellent! Glad you found the talk useful.

09:34:04	 From  Keith J : So is Zephyr Linux?
09:34:09	 From  Keith J : 😃
09:34:14	 From  Keith J : Sorry - couldn't resist
09:35:14	 From  Randy Lee : DeviceTree: So where's the grammer for the thing and where is the keyword/dictionary index for it?
09:38:09	 From  Al Anway : You made a statement that leaving a config option blank pulls in needed default drivers.  Can you then see or explicitly include all of those drivers so they are not invisible within your project?
09:39:42	 From  Al Anway : thanks!
09:50:19	 From  BobF : FPGA portable ... custom processor depenedent?
09:50:56	 From  Keith J : Thanks for the presentation Mohammed.  I'm keeping an eye on Zephyr but the barrier to entry is still to high unless using Nordic
09:51:11	 From  Keith J : meaning difficult
09:54:27	 From  BobF : Origins of name ... Zephyr?
09:54:28	 From  Raul Pando : Would you consider Zephyr for application type processors (Cortex-A) ?
09:56:02	 From  BobF : One day .... I may take a test (ChatGBT)
09:56:05	 From  Raul Pando : Thank you
09:56:42	 From  Stephane : According to ChatGPT: The name "Zephyr" for the Zephyr Real-Time Operating System (RTOS) was inspired by the term "zephyr wind". The term "zephyr" refers to a gentle, mild breeze that usually blows from the west. The name was chosen to convey the lightweight, scalable, and adaptable nature of the Zephyr RTOS, which is designed to be highly configurable and to support a wide range of devices with varying processing power and memory capabilities. Additionally, the name "Zephyr" also represents the project's goal to provide a breath of fresh air in the highly competitive and rapidly evolving embedded systems market. The Zephyr project is an open-source project under the Linux Foundation, and it is gaining popularity in the Internet of Things (IoT) and embedded systems communities.
09:56:57	 From  Jacob Beningo : Reacted to "According to ChatGPT..." with 👍
09:57:12	 From  Keith J : 😄
09:57:21	 From  BobF : Thanks Stephane
09:57:34	 From  Stephane : Reacted to "Thanks Stephane" with 👍