 Hello, thank you all for coming. My name is Thea Aldrich. I'm the developer advocate and evangelist for the Zephyr project And I'm here today with Michael Hall Who is the developer advocate for the edgex foundry project? And we're gonna be talking about how our two projects can be used together to give you a full IOT solution from devices to clouds Great, so the Zephyr project is a real-time operating system built specifically to go where Linux is too big We have a vibrant open-source community and we're really built with The idea that safety and security are something that's incredibly important to embedded developers We're cross-architecture with a growing developer tool support Additionally, we're vendor-neutral permissively licensed under Apache 2.0 One of the wonderful things about Zephyr is it's a completely fully integrated highly configurable Real-time operating system and we're working a lot towards Building out within the next release and perhaps the release afterwards long-term support to really Give a kickstart to some of the products that are already being built on top of Zephyr So the Zephyr project was started to address the fragmentation in the RTOS market There are a ton of options and often times none of the readily available options are quite what you need So developers are oftentimes having to roll their own Additionally existing commercial solutions Are really hard to keep pace with the rate of hardware that's being released and use cases are Expanding and new players are coming into the market and really changing things and adding additional complexity Zephyr is also Has a lot of modular infrastructure So it allows you to take the same code mix and match from samples or build write your own To reuse and get the full scope of opens the benefit of open-source And it spreads the cost of the RTOS across multiple solutions multiple organizations And again multi-architecture support is reducing switching costs and preventing vendor lock-in Again, we're open source and with Zephyr right now One of the things we're seeing is just the rate of innovation within the community is truly astounding and Providing our users with new features new functionality new supported boards all the time And Zephyr is an incredibly feature-rich RTOS. We've got low barrier of entry for new products I come from the user community and was able to get up and started relatively quickly with very little overhead And so what we're seeing with the feature richness is we're bringing people in specific from the feature Pulling them in from the features and being able to keep them with all of the robustness So when we talk about Zephyr, we break it up into three pieces When we talk about the operating system, we're talking about the kernel and the hardware abstraction layer As well as the low-level APIs and application services Surrounding that we have what we call the Zephyr project Which is the SDK the tools and the development environment Additional middleware features device management and the bootloader And then the third part we call the community and not the people But that's the third-party modules and libraries that people are using So quick overview of the Zephyr architecture again highly configurable highly modular Basically, you're able to really build based off of your use case You can pull out the pieces that you don't need so you can keep your footprint as small as possible So one of the parts that I love the most about Zephyr is that the number of supported boards So when you've got something like a 114 I think the count was today, but it's literally going up every single day or not every day But very close You know, you're really developers are now able to instead of being bound by a board or an architecture They're able to pick what they want to to put in their embedded device based off of cost and any of the other constraints that they're facing so these are the supported architectures that we have right now and a Lot of you have probably heard about Zephyr. We've been growing incredibly rapidly over the last year It's a relatively young project. Although the code base is not young and We release every 13 weeks, so we've got a fairly Predictable development cycle We had 140 developers participate in our last release and one of the bits that I'm the most Excited about is of those 140 developers 15 of them were first-time open-source contributors And so we're really seeing a lot of traction both from large companies coming in 25 companies participating in this release We only have 16 members So we're seeing a lot of a lot of people getting the full value of Zephyr even outside of the working group You know but but also being able to reach out to users and and be part of that funnel into the more Larger open-source community through Zephyr We have our release 1.14 is coming out sometime in December and we're also working on a long-term support release that will really Kickstart a lot of the the folks that are working on products built with Zephyr. All right, so Zephyr gives you a powerful flexible operating system for small board devices to read sensors control lights or door locks or anything like that And Eventually you're gonna want to get all of that data that you're gathering and you're gonna want to get it up to the cloud somehow To do some processing with it analytics logging monitoring, whatever you want to do So I mean the simplest thing is you get a board with Ethernet or Bluetooth or 4g or something and you just connect it to your cloud provider and it works and it's great And you're happy your boss is happy your company's happy So you start to roll this out So you start connecting more devices up to your cloud and this scales for a little while But once you start hitting Ten or a hundred or a thousand devices this starts to break down You don't want that many connections happening all the time sending all the data up to the cloud So eventually this will break down and you're gonna want to put something in between a gateway device or something That's going to gather the data locally And then send it up to your server in in a bundle so that you Limit your bandwidth and the cost of your bandwidth But the problem is is this this connection going from the gateway to the cloud isn't always reliable Sometimes it's slow or spotty Other times it just goes down all together And then you know you can't send your data up anymore. What's happening to it? Well, if you're just running it through a gateway, then it's going to just get dropped And you're not gonna get any of that good data anymore So you're gonna want to add some kind of persistent storage on that device so you can store and forward your readings and when your network goes down your Your IOT devices don't go down with it And that works well except for when you realize that you were pushing to a server that uses MQTT and your devices are speaking Zigbee or Modbus or OPC UA And they're not compatible with what your server application needs it to be so then Or sorry one of the 20 or so other standards that IOT devices support So you're gonna want to put something in there that's going to translate these different Protocols into whatever it is your servers supporting So you add another bit on the front end that's gonna read these different things and turn it into MQTT and That works until you start deploying to other applications that are using other protocols on the cloud end So now you got to do the same thing on this side To translate all of your protocols going out into the cloud And so now that's that's working But it's starting to get a little bit complicated and you're gonna want to manage these different components So you start adding in some kind of system management front end in front of these things And then now that you're exposing system management and an interface or an API or whatever You you want to secure that you don't want that open to the public Sitting on a public network or something and letting people control all of your data So you're gonna put some kind of security front end on that to manage access to it And and now that you're thinking about security you realize that your devices are a little bit vulnerable to and you've got You know your server credentials stored on there and plain text on the flash memory and that's That could be a bad thing. So you put some security on the devices too And now you're realizing that you don't want all of your data going to all three of these different cloud services You want some going to Amazon some going to your application on Azure some going to your data center So you put some kind of routing or analytics or something in there to Define what's going where and control that a little bit And now it's getting really complicated and things are probably gonna go wrong So you're gonna want to be able to see what's happening when things go wrong so you can fix it So now you have to add some kind of logging system in there too to keep track of everything that's going on and now finally you have the ability to connect your your board to your cloud system you have a Solution that you can deploy But what happened here? This was what you started out with this is really all you care about you have a device You want to connect it to the cloud or you have an application in the cloud? And you want to be able to bring data in from the devices Why did it get so complex? This is all things that you're eventually going to need But this bit here isn't your product This isn't something you want to build. This isn't your value add. This isn't what's going to differentiate you You just want something to drop in there to take care of all these problems for you and that's exactly what Ajax Foundry does We are a collection of companies who are all starting to build these components themselves and everybody came to the same realization that This is not their product. They need it. They need it to work and work well But they don't want to be you know the ones reinventing this for their own product So Ajax is a vendor-neutral product that's hosted by the Linux Foundation just like Zephyr is And the goal is to build this open platform that works for everybody meets the basic needs of All of the different companies who are building either IoT devices or gateways or cloud applications to facilitate that Transport of information up and down the stack We are an interoperability framework and a reference platform So we provide a set of APIs to connect these bits together And then a reference implementation that will do that for you so you can use what we provide or provide your own We're completely agnostic in terms of hardware infrastructure Architects arming so you could run it on arm. You can run it on x86 independent of operating system Independent of programming language all of our APIs internally are just REST APIs so you can implement them in anything you want The project itself is broken up into a group of microservices That like I said, they'll communicate using internal REST APIs And we implement all of those little bits that I highlighted earlier. So we've got the You can see that we've got all the device service here Which are going to connect directly to the devices read the data off them and whatever Protocol that the device is using and do the translation into An agnostic data format that we use internally. It'll then push that up the stack It'll be able to do logging and some smart filtering and stuff on that Before sending it up to the cloud application and that's where we sit. We don't do anything with hardware We don't do anything with operating systems on hardware You can use Zephyr for that or whatever else And we don't do anything in the cloud itself But we pass the data back up into whatever cloud platform or application. It is that you're using And because these are all independent microservices using a standard API you can swap them out for whatever You need it to do if our reference implementation isn't enough for example our reference core data uses MongoDB for persistent storage and we had some people from Redis who came in and they Replace that out with an implementation that uses Redis in the background and all the other microsystems Microservices they keep running as if nothing changed so you can add your own value to the internal parts of this or to the application side on the cloud or the device side and Because we are a loosely coupled set of microservices we can handle a bunch of different deployment patterns In this one. It's got everything running on one gateway device But you don't have to just stick with that you can spread it out over multiple devices You can aggregate data going up the stack So you can get a lot of data at a room level and you can aggregate that and pass it up to another Instance of edgex that's collecting data from multiple rooms Aggregating all that together Processing that passing that up to another instance that's running at like a building level To do whole building management before passing it off to the cloud to do some additional processing And you can distribute it horizontally too for different use cases enabling what's been called fog Architecture so we're really flexible in that you can spread it around you can replace bits as you need it You can have you know reference implementations running on some of these and custom implementations on others That opens up a lot of different use cases If you're a hardware manufacturer building gateway devices We give you an ecosystem that you have ready access to so you can work with a bunch of different devices or a bunch of different cloud Applications and that really gives your customers something that they can do with your gateway Right out of the box if you're an application developer We give you access to all these different devices and sensors without you having to care about what protocol they use or having to Write custom connectors for each of these different protocols and the same on the device level if you're building devices and sensors We give you the ability to interact with all of these applications that are in the cloud Without you having to care about what they are or how they're communicating and If you're an integrator, we just make it really easy to Do your job by giving you one more off the shelf piece that you can use instead of having to build your own And then of course for customers. It just gets less confusing And they are happier and get a return on their investment on an IOT solution faster We've had a busy 2018 we had one release already earlier this year the California release And that was a big one for us because the original code that was contributed to edgex foundry was all written in Java And the California release rewrote almost all of it and go So now it is a whole lot smaller and a whole lot faster than it used to be And that lets us run on much lower powered devices We can run it all on a raspberry pi now, which is a big step for us And our next release is the deli release that's coming out in mid-November That's adding some additional system management some more security layers. We just got a contribution of a whole GUI front-end that's going to be part of that And we're adding more SDKs to build device services, so Now you'll be able to build things that listen to the devices and control the devices in go or in C So that opens up a whole new level of hardware that we can run these services on We've been launched a developer kit program that will let you Purchase preconfigured boards and sensor kits that we know will work with edgex and will support working with edgex so that you can prototype Faster and get to market faster. The first one's going to be using the samsung arctic 710 board I believe it is and the grove pi sensor kit and we're opening up a marketplace around this so that all of our Member companies can start contributing their own hardware or sensors or software to run on these so that you can use a Different use cases with something that's already predefined for you We've opened up some more vertical solutions working groups these working groups Focus on specific industrial uses or commercial uses so we've opened up for smart building automation and Transportation and these groups they take a high level look at the needs for this Use case and then bring that back to the developers and say okay here are the things that we need the software to do in order to facilitate this specific use case We've built a community demonstrator Which you can see here that we showed off for the first time last week at IOT Solutions World Congress in Barcelona And this uses a bunch of different devices from our member companies to show off edgex passing data up and down the stack We use a smart building concept for this and we kind of mocked that up We have edgex split across three different devices using three different architectures Passing data up and down to Amazon web services and local analytic services So it really highlights almost everything that you can do with edgex all-in-one nice little demonstrator We did a big refresh of our website to make it easier for developers to find our developer documentation And then we published all of our developer documentation on an actual website instead of just pointing people to Pages in github so now we have docs.edgexfoundry.org. That's much nicer and easier to find We also had several big names join the project in the past year The biggest one recently is Intel which joined in the past couple of weeks So we're really starting to grow fast and getting buy-in from the the major companies in the industry Right so pass it back great, so Membership benefits why are people joining Zephyr and edgex? You know Zephyr project is really in the in the context Michael described all of those southbound devices that are sending data up to the device. They're No telling what they're you know, they're going to be incredibly diverse going to be running all kinds of different Features and functionalities collecting different types of data and needing a place to go And so one of the things that's very nice about the Zephyr project Is that our members are able to help determine the strategic goals of the project in the direction So that we make sure that we're maintaining alignment with where the industry as a whole is going We also have a lot of collaboration across organizations use cases and markets. So we're not just limited to large Smart cities or industrial IOT deployments. We're also able to be useful for users independent developers who maybe just want to create a wearable device. They're not looking to to build a hundred different sensors And so what's really nice about Zephyr is that within the confines of our working group All of those players are able to sit down and we're able to find common ground and build in a very coordinated way Additionally, we have we're vendor-neutral and so while we do do a lot of marketing and promotion We do so for the project and for all of our members not just any one in particular player So we're not having to advocate one way or another For you know, we're often asked which board should I use to try out Zephyr and the answer is which one do you want to use? because we saw we it's Very nice for our members and why we're able to have quite a bit of diversity in our membership in terms of manufacturers All sit at the same table and work very well together And you'll notice some overlap on these because we are very similar in related projects under the Linux Foundation umbrella But ejects members they get to help shape the overall project Linux Foundation takes a very hands-off approach. We provide support and organization, but direction is coming from the project members themselves We provide a lot of cross-collaboration inside the project that community demonstrator for example was a collaboration between multiple members Who are providing software or integration experience or hardware? Working together on a single project that we can promote all together And you get discounts at events that we're attending when we have access to those discounts in the IoT solutions World Congress We had four different member kiosks set up in our booth so that people can show off their own specific Projects that they were working on that were using edgex And then we just provide you know learning and engagement between our members so that they can learn from each other and grow Okay, so this is the the current Zephyr membership. We're up to 16 our platinum members Our Intel Lenaro Nordic Semiconductor and NXP But we've also got a number of you know all the way down to Independent hack spaces that we're working with to make sure that that the full spectrum of Potential Zephyr users are represented within membership If you're interested in joining please let me know so we can look like this Yeah, it ejects and this is an old slide. I don't have a lot of the new logos on here like Intel So yeah, these are all of our members and they come from a variety of backgrounds some of them are OEMs Some of them are device sensor manufacturers a lot of them are services or applications developers And they each play a different part of the overall ecosystem around edgex So getting involved is one of my favorite parts And we try to offer is as many different avenues and vectors for inclusion within Zephyr community as possible one of those is always primarily being vendor-neutral and so making sure that no matter what company you're coming from and What your interests are you're going to have a place where you're able to To collaborate without getting walked all over or also without walking all over other people We have a diverse and growing community. We've You know, we started out with a very heavy concentration in North America But we're seeing tremendous growth in the developer communities in China and India and even Brazil One of my favorite parts about the Zephyr project is that our technical calls are open to the public and so if you're interested in Whether it's learning about the API's networking The technical steering committee all of that those calls so you can see what's going on within our community and how we're making decisions How we're addressing issues all of that is open and transparent to the public We'll have links to the schedule But it's I always kind of joke that the beginning part of my week when the Zephyr calls are is always You know, I usually just sit there with a big smile on my face because they're actually Really nice calls even when we're talking about really difficult challenges that we're facing One of the other things is that our technical leadership is elected by the community And so there are avenues for making sure that there's accountability on all sides And that the people in charge of the project are reflecting The mass of the community as well as our memberships Zephyr is incredibly welcoming to new contributors You know, I came to Zephyr as a user not as a developer and It's through the Zephyr project that I've actually been able to find a place where I can learn make my first open source Contributions start writing my first applications all within the confines of an of a World-class open source project And so I want to kind of put a flag up if you're not currently contributing to an open source project And you're interested in doing so Let me know and all we can work through it. I mean that that first pull request is terrifying And so if if you need help or if you're interested in finding out how to do that But you're not comfortable doing so sort of out in the public. Please come find us We are a place that we want you whether you stay with Zephyr long term We want you to be your first experience in contributing to open source to be fantastic And so we're confident we can provide That level of experience and so we want to invite new contributors in particular To come to this community to get your feet underneath you And again, we have transparent governance As well as a transparent road and technical road map So if you want to see where we're going as a project When thing when new features are going to come out and if you want to see where you can influence I will have a link to the technical roadmap and you can actually see that and Edgex is also an open source project all of our code is up on github anybody can contribute to it Anybody can join our meetings, which are also public and we do have a link to the schedule there And all of our technical leadership also like Zephyr is elected by the technical community So you don't have to be a member of the project You don't have to pay membership fees in order to you know Participate in the leadership in the technical direction of the project paid members get access to like co-marketing And they can help to find the budget and the spending of the project But the technical decisions are all being made by people who are contributing technically to the project And that includes that the leadership roles the technical steering committee and the working group chairs are all elected by the people Who are contributing code regardless of their Member affiliation and also join us if you want to contribute to your first open source project So these are some of the very helpful links with Zephyr in addition to our Fancy website. We usually like to send people to github first You can find all of our samples there, which I am that's sort of how I got my entry I wrote my first program our first application for Zephyr by taking three or four Existing samples that other developers had put in and just mashed them together and it was an incredibly great experience So if any of you guys are interested in playing around with Zephyr Putting it on a you know a cheap device and just seeing what you can do check out the samples again We're supported on a hundred and fourteen boards all of that information is in the the github We also have great documentation our last release one point one three We entirely revamped the documentation Additionally, we are investing in doing a number of we have our YouTube channel Incredibly active IRC and mailing list, but we're working more towards Doing link language specific webinars and tutorials for folks that are not native English speakers and also trying to work To improve get more samples more Contributions so that new developers can come in and very quickly get started I like to point people to documentation first instead of github because it looks nicer there And that was really my first big contribution when I joined the project So start with docs.edgexfoundry.org. It has getting started documentation We provide Docker containers for all of our microservices, so it's really easy to get up and started It takes about five minutes and you'll have a running instance that you can play with and once you have that We actually have a full walkthrough where you can go step-by-step through all of the API calls That would happen in a real-world situation so you can see how all the services work together and how data will flow up and down the stack But we are on github, so when you want to see the source code you can go there and see all of that And our documentation is also on github So if you see something that needs to be fixed or want to add additional documentation to it Please do that also. We have a rocket chat instance where many of us are very active. I'm there all the time And you can get help live there or you can use our mailing list We have one for each of our different working groups and sub projects that are specific to that and you can get help there any time so Some quick links to the stuff you can always follow us on Twitter It's a I don't have the link up here, but we're also very active on WeChat I try to wake up at least a couple of times a week in the middle of the night So we can participate with the the developer community on the other side of the world As well as our YouTube channel the YouTube videos were one of the most Profound resources when I was coming into the program to be able to put faces to the project Get a sense for how people were talking about and interacting with the technology and also to kind of get a sense for the The type of work people were doing If you're interested in attending any of our meetings It's on the the Zephyr project Website as well as our technical roadmap is on github if you have any suggestions you want to comment start getting Started that's a great place to look If you are a more experienced developer and you're looking for a place to jump in and you want to find You know like what are they need the technical roadmap is a fantastic place to check that out We're also pretty active on Twitter and we put a lot of our videos that we record up on our YouTube channel So you can follow us there or on LinkedIn where you can get in touch with a lot of us And also we have a calendar with all of our meetings We have typically multiple meetings a day because we have one for each of the working groups And you can find them all in the calendar there and those are all public zoom meetings So anybody can join and participate in those and I didn't I couldn't squeeze it in here But we have a wiki also it's wiki.edgexfoundry.org and all of our roadmap Documentation is there as well as links to previously recorded meetings because we record almost all of them So you can go back and watch old ones and look at the notes that were taken during those All right that we'd like to thank you and our links to both of our project websites are there at the bottom And it looks like we have maybe five minutes for questions, so Question so What do you recommend as a first step to convince the enterprise architects and the enterprise? Stakeholders to use yeah those solutions. I think it's question. Maybe more to the Ajax than to Zephyr, but Zephyr also it's like better to start to I know propose the POC for the internal hackathon or show some presentation web page or rather contact you how how to start because I see that you know a Lot of custom solution you're inventing the wheel I think that everybody have something like that So what would you recommend to as a first step to yeah, I would say proof of concept is a good first step Either just getting the software and running it in a development environment or getting that dev kit that we just announced Because that is real-world hardware that you might find in a gateway So you can show you know an actual production solution and we can get you up and started with that real fast So you can have something to show that you can then leverage into an actual product really quickly I can say that the the presentation I did immediately before this was was hooking up a this board Through a gateway Sending data to the cloud and we were not used for that particular Implementation we were not using Ajax and it was it was fascinating that the gateway was where both People in the joint presentation had to spend most of our time trying to get it working And so when he so for me usually would I have to make the Ajax case? I just make them try it Without Ajax that it usually is pretty effective and depending on the level you're talking to you know You can show that the members that are part of the project that are investing in it to see that there is Industry buy-in and quite a bit of support and these projects aren't going anywhere Is there a path to get any part of this safety? Safety certified for safety critical systems Not that I know of I'm not sure what the different standards are for that or Our security is mostly focused on well safety not security. There are two different things. Okay safety is important, too I mean security is important, too, but safety critical having your paths Deterministic and there's a certain coding standards. Are you adhering to any of that? Not that I know it, but I'm not familiar with what those standards are so we might be and I'm just not aware It's more applicable to that for others correct. Yeah So we are actively working on getting ready for safety certifications Additionally on Thursday the technical steering committee is meeting at a hackathon that if you've registered you could participate in it But we're starting to strategize which safety Certifications we go after first. What are the priorities and how do we make sure that the code base is ready for that? That's this coming Thursday. Yes in two days Other questions Good on time. All right. Well, thank you everybody for coming and there's a Zephyr booth out there upstairs So you can stop by and ask any additional questions. Also if tomorrow afternoon There's and it's called IALE. It's the apprentice Linux class if you have never ever touched Any of these devices we're going to I'm going to be walking absolute beginners through setting up their development environment and getting a Flashing a device so we'll take you through the the 101 in a really nice Guided way and we'll have a number of Zephyr technical steering committee members there to Make sure if anybody gets stuck that that you end up with the your light's going to be blinking So if you've ever wanted to blink a light tomorrow's your time All right. Thank you everyone