Episode Transcript
Available transcripts are automatically generated. Complete accuracy is not guaranteed.
Kyle Dando (00:10):
Welcome everyone to another
episode of the NXP EdgeVerse Techcast,
your go-to spot for software, toolsand technologies for embedded systems.
I'm Kyle Dando, and I'm one of yourhosts and I'm here to make sure that
we break it all down in a way thatmakes sense and at the same time, we
have a little fun while we're at it.
Bridgette Stone (00:32):
I'm Bridgette Stone,
Kyle's partner in Tech Talk, bringing all
the energy and excitement to the podcast.
Just kidding, Kyle, I know you contribute.
We're really excited tohave you with us today.
Whether you're tuning in on your commute,at the office, or just relaxing at home,
we've got a great episode lined up.
We're thrilled to haveBrendon Slade with us today.
(00:53):
Brendon is the director of theHorizontal Enablement Team in the
Secure Connected Edge business at NXP.
Now that is a mouthful.
Welcome Brendon, and fun fact for ourlisteners, Brendon and I like to joke
about our matching "BS" initials.
It's like we were destined to teamup and you know, "BS" in the best
way possible on today's episode.
Brendon Slade (01:15):
Thank
you Bridgette and Kyle.
It's, it really is a pleasure to be here.
I listen to the podcast.
I've been a regular subscriber since itstarted, and, I'm excited to be here.
And yeah, I think for theengineers, the question is, is
it "BS" squared or is it just BS?
So I'm based in San Jose,despite the British accent.
Yes.
I'm from the UK originally.
So, being in the semiconductor industry,oh gosh, about 35 years in various forms.
(01:41):
So much longer than I care to admit.
So I, as Bridgette said, I look afterthe horizontal enablement team, and
that's really all about the kindof software and tools that every
customer needs when they're using ourmicrocontrollers and microprocessors.
So very broad and very horizontal interms of markets, and hence the name.
Kyle Dando (02:00):
Excellent.
Well, thanks Brendon.
So if you've chosen to listen tothis episode, you're probably pretty
curious to learn more about Zephyr.
Well, you're in luck because today we'regoing to focus on the Zephyr Project
and we're gonna explore how it's havinga growing impact in the embedded space.
So, Brendon, why don't we kick things off.
(02:22):
Could you share what the ZephyrProject is to the listeners and
why it's becoming more significantin the embedded systems landscape?
Brendon Slade (02:29):
Yeah, certainly.
So the Zephyr Project is at its heart,an open source, real-time operating
system designed for resource constraineddevices across various architectures.
And while it's based on an RTOS, as Isaid, at it's heart is also comes with
a lot of middleware and like networking,wireless communication, security, a
lot of other different things thatcome as part of the whole package.
(02:52):
It also has test infrastructureand it even has specially designed
build tools like West, which havebeen developed specifically to
make it reach its full potential.
So it's tailored for Embedded Systems.
It's not from a desktop lineage.
It's not a form of Linux like a lotof people seem to misunderstand.
And it offers a scalable, modularplatform, which is suitable for
(03:15):
applications ranging all the way fromvery simple sensor nodes, all the
way up to pretty complex IoT devices.
Kyle Dando (03:22):
Okay, Brendon, so
how is Zephyr differentiated from
all those other RTOS choices thatare available to the listeners?
Brendon Slade (03:29):
Yeah, so anyone who's
been in the embedded microcontroller
space for 10 years or more will knowthat there's a whole host of different
RTOSes that have been developed forvarious different reasons over time.
And a lot of those continueto exist and are widely used.
But what really makes Zephyr stand out atthe moment is its momentum in the market,
along with also the infrastructure andmiddleware enablement that comes with it.
(03:54):
So the project's growing very quickly,currently as 49 members, and this is
made up of an interesting mix of notonly semiconductor vendors like NXP,
but also software companies and bigOEMs in a lot of different markets.
So we have Automotive ones,we have Compute space ones, we
have Industrial ones as well.
Some very cool ones like,Vestas who make wind turbines.
(04:16):
So bringing all of this together, youget a broad spectrum of suppliers and
end product developers, meaning you geta very good eclectic mix and views of
how we want to develop software together.
There's also training companiesand academic institutions in there
as well that I should mention,companies like Doulos and AC6.
(04:36):
And, in addition to thosecompanies, several contribute to
the project without being members.
And this can be other large OEMs as well.
So, the project is open tonon-members and that also
contributes to the momentum it has.
Bridgette Stone (04:51):
So Brendon
NXP has been part of the Zephyr
Project for quite a while now.
What made us decide to takeour involvement up a notch and
really deepen that commitment?
Brendon Slade (05:01):
Yeah, we were a founder
of the project way back in 2015 when
it started, and our decision to beinvolved really comes from the evolving
needs of the customers in the industry.
So as IoT and Edge compute applicationsare getting more and more complex and
sophisticated, there's a growing demandfor flexible, secure and scalable
solutions and Zephyr's architecturealigns really well with those
(05:23):
requirements and their fundamental aimsof what the project was created for.
There were also signs of momentumtowards open source software for MCUs
The head of our MCU and MPU productportfolio at the time, Geoff Lees, was
frustrated with the way we were havingto invest a lot of effort in Bluetooth
stacks when others already existed.
(05:44):
He had the vision to see it was amuch better to collaborate on these
kind of things that are broadly usedand spread the technical debt across
multiple companies for common benefit.
By intensifying our involvement, weaim to be one of the drivers of this
innovation and help ensure robustsupport to our customer developer
community by being focused on Zephyr.
(06:05):
Our decision to help found the projectis now proving to have been a really
good bet because we have customers askingabout Zephyr support on a daily basis.
Bridgette Stone (06:15):
Sounds like
a pretty solid bet to me.
I'm curious, beyond the customerdemand, how is NXP contributing
to the Zephyr community?
You know, what's your team's role inensuring Zephyr's continued growth
and shaping the project's future?
Brendon Slade (06:29):
Yeah, so the obvious thing
to do here is to contribute support for
your own platforms, and that's important.
Otherwise customers don't havethe choice to choose the silicon
platform they want to run on.
But we're also very actively contributingto a lot of other aspects of the project.
This can include thingslike new driver definitions.
We just have a request forcomment out about Distributed
(06:51):
Switch Architecture right now.
We have the lead of our testorganization is also the
chairman for the test committee.
And we are constantly lookingat areas where Zephyr has gaps
or needs improvements and howwe can help work together with
the other members to do that.
So this can span a wide range ofdifferent aspects of the project.
(07:13):
There's other examples where we'veseen strong demand for better low
power management features, and we'veworked there to help enhance Zephyr's
capabilities, but also show the community,how you can use what Zephyr can do
along with other technology, which maybe vendor specific, but you can mix the
two together and still have a portableapplication and look to optimize further
(07:35):
where the options are there in thesilicon, like we have in the iMX RT500.
That's an example you'll be ableto see out-there on the NXP site.
For customers who want to see ourcontribution in hard numeric terms
you can look at the most recentrelease from March, which is release
4.1, and you can see the NXP wasin the top three contributors there
with about 10% of the pull requests.
Kyle Dando (07:56):
So you mentioned that
this customer demand has helped NXP
invest more into the Zephyr project.
Can you talk specifically abouta few customer requirements that
have influenced what NXP hasactually contributed to the project?
Brendon Slade (08:11):
Yeah, absolutely.
One of the biggest drivers forour increased investment in Zephyr
has been from direct feedbackfrom customers requesting support.
So I mentioned the DistributedSwitch Architecture request for
comment we have out right now.
That came from a customer lookingto exploit the very specialized NETC
switch we have in our iMX RT1180.
(08:32):
The customers are looking tostandardize on software platforms that
give them more productivity withoutlocking them into a single vendor,
though that's the bigger picture.
We've seen a rapid move to this kindof approach since, really, since a bit
of an inflection point that came outof this worldwide supplies shortages,
that hit all the semiconductor vendorsand their customers and that was
(08:53):
obviously a result of the Covid pandemic.
And we've seen this big shifthappening more rapidly than I've
seen in my 12 years in the MCU space.
Where large OEMs are pushing toconsolidate their products and move away
from fragmented collections of differentOSes and MCUs that they've built up over
time through various project groups orinorganic growth by acquiring companies.
(09:18):
Companies really want to consolidateon a smaller number of suppliers and
make their software more portable.
And customers are also attractedto open source RTOS choices, but
they can be hesitant about thelong-term viability of those.
That's been a barrier before.
We've seen a lot of upheaval in the lastfew years where well established RTOSes
(09:40):
have been acquired by large corporations,who then changed strategies or even
divested the technology completely.
So some other products are owned bysmall specialist companies who do a very,
very good job, but they are small andinherently there is risk because of that.
Plus there's a cost involved.
So while they can be very good, they'renot free, and they may also lack the
(10:03):
kind of middleware or a way to influencethe middleware that's developed.
So that's put off customers fromtaking the plunge of going very
specifically to one RTOS choice.
And as cybersecurity regulations arenow upon us, that's become even more
of a concern 'cause companies haveto think about their product being
out there for at least five yearsand where they're gonna go and get
(10:26):
help when security issues come up.
And so the beauty of well-supportedopen source projects like Zephyr is that
they evolve based on the needs of thedeveloper community and the members.
And of course that all depends onthe community in question having
critical mass and motivation.
So you can have an open source project,but if there's any one maintainer who has
(10:46):
all the control or not enough companiesto make it viable to actually move things
forward, then nothing really happens.
So we work closely with the customers,gather their feedback and use that as
input to help guide us on what we wantto meaningfully contribute to Zephyr.
So it's very much a collaborative effort.
And we have frenemies in theproject, companies we compete
(11:06):
with that we joined forces on tomove forward for the common good.
But one of the especially goodthings about Zephyr Project is
members just aren't only software orsemiconductor vendors I mentioned.
It's the fact that we have thesemajor OEMs who are often our
customers, from a range of differentindustries, and anyone can get
involved and contribute to the project.
Bridgette Stone (11:27):
Very cool.
Thanks Brendon.
And I'm gonna shift gears just alittle bit now, and I'd like to ask
you, how does Zephyr align with NXP'svery broad processing portfolio?
Brendon Slade (11:39):
Yeah, it really is a
perfect fit for NXP's broad range of
embedded processing solutions 'causethat one of our strengths is we have
this great portfolio of devices.
Whether you're looking at a flashbased micro or a crossover iMX RT
processor without any on chip flash,uh, and a quite different architecture.
Zephyr provides unified software platformthat allows developers to work across
(12:02):
multiple NXP product families withouthaving to start from scratch every time.
The standardized APIsprovide hardware abstraction.
That means you don't have to refactoryour code when moving from these
quite different architectures anddifferent underlying peripheral IP.
Some customers are also choosing toscale up even to iMX Microprocessors,
where Linux or Android might justbe overkill for what they need.
(12:25):
Those OSes provide a huge amount ofcapabilities in terms of middleware
and multi-threading and so on.
But it may be you don't need that.
You just want a very high performancemicrocontroller in effect.
And Zephyr can be, uh, areally good solution for that.
There could also be a need forpredictable real-time performance,
(12:46):
and that's really what's drivingthe customers to need to select an
RTOS rather than Linux or Android.
Some of these customers are evenlooking at scaling applications,
software reuse from these iMX devicesdown to iMX RT for cost reduction
across their lower end products.
This is really possible forthe first time with Zephyr OS.
It has been done before.
(13:06):
It could be done before, but it'sa lot harder with the RTOSes that
existed in the market before.
Kyle Dando (13:12):
Okay, so you're
really starting to talk about
the hardware abstraction.
You mentioned a few times.
So is the hardware abstractionreally just down to having a standard
API and how is this different fromwhat has been done by other RTOSes?
Brendon Slade (13:27):
So the APIs are really
at the heart of the code portability,
'cause obviously you need to talkto hardware in a consistent way.
But there are other features thatalso make moving applications between
platforms far more efficient than just byhaving a hardware API defined like that.
Since the project's open sourcethe API definition is as well.
(13:49):
So it's not locked to a particular vendor.
Most other RTOSes don't have a hardwareabstraction layer like Zephyr does.
The ones you see in the market are moretypically driven by a semiconductor
vendor and therefore are proprietary.
So beyond that API though,Zephyr also has the notion of
devicetree and Kconfig concepts.
And that's gonna be familiarto people who know Linux.
(14:12):
The difference is in Linuxthese are interpreted at runtime
as opposed to build time.
So put simply, devicetree is aconfiguration file that defines
how you bind from a driverto the underlying hardware.
And rather than needing to actually goand change your coding to match those
things together, you do it with thisconfiguration file and there's some very
(14:34):
cool things that have been developed bythe Zephyr Project to compile that using
the pre-processor during build time.
And so it's static.
Linux gives you more flexibility 'causeit does it at runtime, but there's a
pretty high cost in terms of memory useand performance by doing that, which
you can typically afford in a Linuxsystem, but it's something you don't
wanna carry around for a microcontroller.
(14:57):
Kconfig is another concept that alsoexists in Linux, and it's a defined way of
enabling or disabling software features.
Again, by simply changing a configurationfile and not having to touch the
source code itself in order toenable or disable software features.
So by using devicetree and Kconfigalone, you can move application
(15:19):
code between different underlyingplatforms and not having to touch
the actual source code to do that.
There's definitely some fear in themarket around devicetree and it being
a scary initial concept, but we foundvery consistently that once people
have got to grips with devicetree andhow to use it they don't look back.
(15:40):
They see massive benefitsfrom going in that direction.
Bridgette Stone (15:43):
Very interesting.
It sounds like there's a little bitof a learning curve with devicetree
and Kconfig, but once developersget the hang of it, they're all in.
So for developers just starting to exploreZephyr, what advice do you have for
them as they dive into these features?
And before we wrap up today, anythingelse you wanna share with our listeners?
Brendon Slade (16:05):
Yeah, I'd like to encourage
developers to explore the Zephyr project
site and look at how Zephyr couldreally benefit their applications.
The collaborative nature of the projectmeans there's a wealth of resources and
a very supportive community to assist.
You can get on the discord channel andask questions, and there's a whole host
of different engineers who are friendlyand helpful to help you with advice.
(16:29):
I'd also like to mention that ourMCUXpresso for VS Code extension has been
crafted to support Zephyr Developmentand the MCUXpresso Installer that
comes along with it also makes setupof the Zephyr environment super easy.
That's one of the other challengesthat people sometimes have is 'cause
Zephyr uses Python and the versioningin Python can be a little bit tricky.
(16:51):
You also need to install, other things,build systems and so on to get it to work.
But with the MCUXpresso Installer,it's just a question of checking
some boxes and hitting go and thenthe environment's ready to go.
We really want to give customers thebest possible developer experience.
So this is one of the key areasof focus for our IDE team.
I personally enjoyed listening toone of our key guys from the team,
(17:14):
Cristian Tepus, who was a gueston the tech podcast just recently.
Right?
Bridgette Stone (17:18):
Yes, Cristian was a
recent guest and gave us a nice deep
dive into MCUXpresso for Visual StudioCode and how it's been a game changer.
It's great to see how NXP continuesto enhance the developer experience
making tools like this so muchmore accessible and user friendly.
If you haven't checked outthat episode yet, I highly
(17:38):
recommend you give it a listen.
It's a must for anyone looking tooptimize their Zephyr development process.
Kyle Dando (17:46):
Well, I think that's a wrap
for today's episode and a huge thank you
to Brendon for joining us and sharingall your insights into the Zephyr
Project and how NXP's contributing.
Thanks, Brendon.
Brendon Slade (17:58):
Well, thank you guys.
It's been a real pleasurebeing your guest, and I hope
there wasn't too much BS.
Bridgette Stone (18:03):
Thank you to all
of our listeners for tuning in.
We hope you enjoy this deepdive into the world of Real Time
Operating Systems as much as we did.
Don't forget to, Like, Subscribe,and set up notifications so
you never miss an episode.
Kyle Dando (18:17):
And again, if you've got
ideas for future topics or you just wanna
provide feedback, feel free to add themin the comment section 'cause Bridgette
and I would love to hear from you.
Bridgette Stone (18:28):
Until next time, keep
innovating with us in the edge verse.