This month, the Zephyr Project™ makes available its second long-term support
(LTS) release of Zephyr OS, an open-source real time operating system (RTOS) for embedded devices.
Notably, this release will include full platform support for the powerful i.MX RT685 crossover MCU
from NXP, among other updates and improvements. As this important LTS milestone is reached, it
seems a good time to recap why NXP took the step to be a founding member of the Zephyr Project and
where we plan to go next.
A Look Back – Open Source Innovation at NXP
Microcontrollers (MCUs) continue to make significant strides in capability, with new application
development stretching far into next generation devices. With the introduction of NXP’s i.MX RT
crossover MCUs that enabled a new class of edge connectivity and performance, we’ve also seen
increased interest from developers to utilize an RTOS, rather than a bare metal implementation, to
really leverage the capabilities of those more feature-rich devices.
Thus it began. A recognition in 2016 of the need for a scalable, configurable RTOS that could
provide developers what they needed. We weren’t the only ones, and so by working with other Zephyr
Project founders, collectively we helped build a secure, safe RTOS from the ground up. The goal
was clear: an open software approach with collaborative efforts to accelerate development and
drive to higher quality software. Over time the benefits would become even clearer.
The Zephyr community has grown rapidly and now boasts over 1000 active contributors and a number
of Zephyr-based products successfully launched in the embedded market. The open-source software
project has moved beyond the expected scheduling kernel, with Zephyr OS slated for networking,
connectivity and memory protection features developed by a diverse and growing open source
community. This community puts security first, implementing auditable code bases and processes in
the LTS 2 release to address the security needs of connected IoT devices.
Why Zephyr?
While i.MX RT crossover MCUs were a compelling reason for NXP to become a founding member of the
Zephyr Project, the RTOS is not limited to, or suitable only for, these high performance devices.
We want to enable scalability across our
EdgeVerse™ portfolio
of MCUs, applications processors and software.
A glance at the
Zephyr supported boards page will quickly show just how broad the range of platform support is, spanning several
processor architectures and performance points. Zephyr OS‘s hardware abstraction and easy
configurability make code reuse a far simpler task. Beyond the traditional benefits of hardware
abstraction, Zephyr OS also provides a power manager, working with the drivers to optimize power
without developers having to keep an eye on the state of all these drivers independently.
Putting these together, the developer now has the ability to get derivative products to market
much faster and without comprising performance, but also has the flexibility to move to
alternative MCUs when needed. You can learn more about this in our tutorial
Application Portability Made Easy With Zephyr™ OS and NXP.
Why Should You Care?
The motivations for how Zephyr OS began are clear, but there are advantages of Zephyr beyond the
features and security capabilities that are not immediately obvious. In fact, some aspects of
Zephyr, such as the way project configuration borrows concepts from Linux®, can
initially seem alien and even intimidating to MCU developers who are used to a simpler, more
traditional RTOS-based coding approach. However, with Zephyr OS, the learning curve is not as
steep as one might think. The benefits of code portability and middleware reuse are considerable.
Significant time savings can be achieved with documentation and automated testing. Help is also
close at hand for adoption of Zephyr by way of a vibrant community of engineers willing to help
with access to excellent documentation.
You can hear about the experiences of a seasoned embedded systems expert using Zephyr for the
first time, including more details about those benefits, in our recent webinar with Eli Hughes:
“Should I care about Zephyr?”. In this enlightening talk, Eli shares his personal experiences with using Zephyr OS, including
comparing code porting with traditional methods.
For those readers who are familiar with the MCUXpresso suite of software and development tools,
the question in your minds may be, “how does this relate?” NXP uses the MCUXpresso SDK drivers as
the basis for our Zephyr platform support, so all of the investment in this high-quality software
is leveraged effectively and customers wishing to port to other platforms can do the same – as can
be seen from code in the Zephyr repository. MCUXpresso IDE can also be used to debug Zephyr OS
projects and you can learn how to do this using the SEGGER J-link probes in this
tutorial.
A Look Ahead
NXP continues to invest in expanding our Zephyr OS platform support for our broad portfolio of
MCUs, seeding the community with baseline enablement soon after each new product introduction,
followed by expansion of the Zephyr platform capabilities over subsequent mainline releases until
full support is in place. The i.MX RT685 is our latest platform to reach this level of full
platform support, with several more planned for release in 2022.
Get Started
Co-contributor Eli Hughes – Professional Support Engineer, NXP.