 Well, thank you everybody for joining My name is Augustin Benito and I gonna be presenting the state of art of the Geneva development platform together with Two Engineers that I work with on weekly or daily basis Shangyong Bai who it's a maintainer one of the three maintainers of GDP He he does this working On his personal time, although he works for LG electronics and One contributor to the project which in this case is Leon and Abby that will help us on the delivery side by testing and and also Has a particular contribution that he will talk about at the end of the of the talk Yeah, so Let me start by by saying Just a few words about Geneva, which is a consortium that Automotive consortium with more than a hundred and forty companies That Well host the project, okay And the mission basically is to drive open sourcing to IVI system and into the industry in the automotive industry in general Basically Geneva does five things development development of automotive specific software components What some people call middleware But also some some other parts of one IVI system And then also trying to go a little bit beyond the IVI system with software that relates directly or Connects or has a direct relation with IVI then the delivery side of of Geneva it tries to develop systems that people can use with different target audiences Geneva has an important part which are specs. This is an industry driven by specs And also there is a compliance program and a certification program the fourth thing it's Well promoting open source development among the the members and in general in the industry and They organize quite a few activities and events to promote the Geneva code The specification the compliance program and in general open source This picture is an IVI oops an IVI system, right? And you see there are tons of little boxes. So Well, this is what every single company in this business has to basically provide In an IVI so what Geneva is trying to do is make sure that it's an open source Alternative for each one of those boxes some of them are just extensions of a standard open source code and some others needs to be developed specifically for the car so we're gonna talk a little about the delivery side of things of Geneva and They are basically three derivatives or outcomes of that Geneva produces baseline which is is formed by Specific automotive components that comes out of the compliance program the compliance program has as a route the specifications So it's the first route of produce a way of producing software in Geneva from specs to proof of concepts to Maturity of components that goes into production And goes through the compliance process There are basically two one produced with Yachto the other one produced with base rock Then there is the second outcome, which is we call it master. It's nothing but a rolling release We will talk a little bit more and finally GDP is the most well-known because it's targeting application developers and Well, it's what we are going to show here and There are two more initiative the next week in the Geneva members event Will be presented one of them is a in fact we put here SDK, but it's more an SDE software development environment Try to reduce the amount of effort that a developer has to put to produce applications for develop applications for this system And the second one is what we are calling GDP spins for now, which are basically companies or people that produces systems Using GDP as a base targeting a specific audiences next week. There will be presented one targeting cute developers So we're going to talk specifically about two which are the ones we are working on The first one is master is the rolling release Master is where the collaboration takes place There are most of the collaboration that we do in in the delivery side of Geneva We tried it's integration the central integration point So all the new software goes there it gets integrated there tested there and Available there for those of you who knows how to build the systems with Yachto, so if you know how to do that you go to master and Through some configurations you decide which parts of master you want to build into your system and for which boards Or if you want QM you so you just build it and Touch a few configuration files and build it and you have there you have it the latest software that we are producing right there and Obviously targets people that are interested in automotive systems and knows how to work with Yachto And It's based on pokey that's that's an important point and We have their two main repos so when you get the slides you will be able to I think Leon is gonna show one of them. So all our repos are in github Everything is there. So there are two main repos that we work with and then we have GDP GDP is the Out of that Software that is integrated we take most of it and we produce binaries and we work We work them out in a way that they are very easy to consume So basically this the experience you get with this system is this the same experience you get with any Linux system in your laptop you just in this case did he Make a DD on a SD card Plug it in it boots and it works. That's the goal and right now. We have GDP working for several boards and also obviously for QM you so We tried it goes through a stabilization phase to make sure that that experience is possible Which is not always possible with up-to-date with very new software that is recently integrated In master so this is for more conservative users And especially we try to make sure that people the people that consumes these images do not need to know Anything related with jocto in the same way that in a distributed in a normal distribution You don't need to know anything about packaging to consume a Linux desktop nowadays well What we talk about GDP's Geneva development platform And I think one of the Throughout the journey of this last year one of the key points for us for everybody that is working behind a project was to make sure That this is a project that follows all the standards of any open source project out there So we put quite a lot of effort at the beginning of the project to make sure that that was a reality I would like to say thank you for the organizers of here ELC because it's the second time that we come here The first one was in in in the US and back then we were nothing but a but a An interesting future pro open source project, right? So they they made a bet by bringing us back then and now it's a reality So we are very happy to be able to not just to talk about the reality of the project that you can go and check by yourself obviously, but also to show actual software that is working So GDP is based on master. So we take a master We make a snapshot of the software we want and then we build it we go through a stabilization phase a lot of testing on hardware and And we ship it we release it The current stable version is the ninth version Which was released back in spring and Currently we have what we are going to show is a new one is a release candidate two of the new GDP 11 the numbering Is related with meta IVI which I show on the slides before is the outcome of the compliance process program So it has nothing to do with there is no GDP 10. Let's say Yes, and What has GDP on it? What is when we talk about GDP we make a block diagram too So it's easier to understand and I will go through it very very quickly because at the very end what we want is to show the software So we have obviously there the hardware then the BSP comes with the kernel and the drivers and the firmware So depending on which board we select this is proprietary or less proprietary, right Raspberry Pi is less proprietary or even Open depending on which component we are talking about Compared to others then we have an important layer is a meta IVI. So most of the Automotive specific software components developed by Geneva are included in this meta IVI layer So obviously we have a base Linux system here, right? based on job toe and then on top of that we have obviously cute and then some other Automotive specific components that haven't gone through the compliance program but still some of them are proof of concept some of them are Partly mature some of there are mature some of them are in production. It depends They are mostly maintained by OEMs and tier ones and Then we have here some proof of concepts and QML Examples the ones that we're gonna show in RC to are the old ones the ones that comes from last year And next week we will be presenting the the new ones the CEO of Geneva will be presenting them And obviously I was not going to be a spoiler, you know, if you want to be friend of the CEO You don't do that. So I am not going to show them today For good reasons and then I talked about before the SDK which is also new It's gonna be new next week. So the the slide is up to date I said before that we we we follow every standard of any open source project and that means that people goes first and We have three maintainers two of them Work for code thing like myself and then Shangyong who's here Is the third one and then we have contributors and testers like Leon and some others on the development side Geneva is organized on expert groups and Then also depending on the software. There are external people taking care of that software that lands on GDP so You have some software that gone goes from spec to compliance Some of them even to certification and there is a second way to get software within Geneva, which is from outside You go directly to master Then end up in GDP and from there some software end up also Getting into compliance and specs Okay, so we try so yeah the open source way code first and you have the spec way the traditional automotive way and then there are other teams That are related directly and directly with other people with the GDP from the LR team their license review team Obviously we have a PMO office and yeah, there are maintainers of the BSPs For instance, I don't know renaissance. For instance, there is Stephen works I spent a lot of time in Geneva making sure that whatever we produce works for renaissance boards And then we have a community manager and obviously we need services nowadays and IT services for producing the software and Yeah, one of the last points. We also use some tools for producing all this nothing that Nothing fancy here. We are again a very standard open source project in that regard and I gonna hand it to to To shag you on to We let me explain first the setup. Yeah, okay So we have their Raspberry Pi 3 with the 7-inch touchscreen the new the new one there from their their foundation and Connected to a battery and he's just gonna boot it and serial cable the SD card has a plain GDP 11 release candidate to so downloaded DD into the SD card and that's it. No No magic no demo Whatever just plain Image and he's booting it and what it's going to show in a few seconds is the the old HMI with some demos QML demos that basically show some functionality very very very simple Again next week we will have the new ones and he will get with the serial port into the system and show That is nothing but a Linux system with some steroids automotive asteroids Okay, go ahead. Yeah Hello This I am Changhyuk and I am one of the maintainer on the GDP So actually I am working for the LG Electronics. This is the console. I put the Raspberry Pi 3 with the Genevieve development platform actually, you can see the Serial the message that we connected with the Raspberry Pi 3 and this laptop so here Here's system D. Actually, we are GDP is using the system D and also Raspberry Pi 3 Our the GDP current GDP is using the Yachto based build system The you know the who is the family with the Yachto raise your hand. Oh, very good. Yeah We are supporting the many device like Raspberry Pi Pi 3 and the Dragon board and NASA supporter interminable and max and Turbo so because of the we are using Yachto then we can support many Devices so I log in here Then currently we are using the corner 4.4 point 16 because this the Raspberry Pi 3 touch screen and using is using the DSI interface DSI is the Display serial interface and we also using the DRM the direct rendering manager Before one or one month ago the Raspberry Pi 3 corner doesn't support the DSI interface with the DRM, but however now on the in the corner 4.4 point 16 The DSI is supported. So currently we are using this. I Said the GDP is using the DRM and In the Raspberry Pi DRM is the VC4 which is supported by the Broadcom and So our compositor is the San English keyboard so For him is new Yeah, we are using the Western compositor. It means the Our compositor is the working through the wayland and also the Genevieve is supported the Genevieve's own Wayland because Wayland shell we call the IVI shell Wayland IVI shell. I thought I remember the Genevieve Wayland IVI shell is the merged into the Qt official version 5.7. So we are using the Western and Wayland compositor So then our I will show just demonstration I'm very sorry to the very small this this screen. Can you see? No I'm sorry Yeah, we have several HMI applications and the application and media media and browser and the audio If I click the Audio manager, this is the audio test monitors. It means that there are many Audio sound in the car. You can sometimes you can see that you can't listen the call or listen the music and Other something then we can control the music Cars sound and call. The technology, actual technology is that we are using the Perse Audio and the Genevieve is implement the audio manager and the GDP is also rapper the audio manager on the Audio manager demo and also we are Supporting the Browser, the browser is using the Qt-based and Qt-wacket Currently, we are using the every application with Qt. However, we have the Qt version 5.6 We now we are discussing about the Qt version upgrade because the as you know the Qt 5.7 from Qt 5.7 We have the license issues So currently we are using Qt 5.6 Then in here you can just see the network, but Internet zero The Raspberry Pi is supporting the Wi-Fi However, this RC2 version is not integrated the Wi-Fi driver However, the next GDP 11 official release we will support this Yeah, I think that the release candidate 3 already have it. Yes This is our process List We are using the Yeah, this is DLT-Demon, which is the log managers then We can you can the download in DLT viewer in the Genevieve website then You can see the this kind of Devices application log on the your laptop or another Device Also, we are using the command This is for the network manager and HCCI is for the Bluetooth and Often, you know that this module is for the 3G of network The WPS applicant is for the wireless This Starting from the GDP prefix, there are four process The HMI applications and launchers. This launcher is the demo process and so The node state manager is managed by some nodes. Node means each the functions on car Yes, now I'll explain some technologies and Yeah Go ahead Leon. Thank you Wait Let me put you back this light. Maybe you have to go back, right? Okay, thank you very much Augustine and Shangyong. Thank you very much for inviting me on stage with you My name is Leona V and I'm a senior software engineer and consumer group I'm also an open source enthusiast So I'm really happy that I'm among the people who are contributing both to a Geneva development platform and Automotive-grade Linux. I'm here to share my experience with integrating the Geneva SOTA project into Geneva development platform It's a project that has been actively developed by ADS advanced thematic systems The idea is that Importing updating software is important and it's very hard to make Users update their devices, especially if we're talking about vehicles the SOTA project is a complete suit for Uploading, managing, queuing, transmitting, validating and deploying software updates over the year It contains a server which lives in the cloud and a client which is installed on the embedded devices in our case on the vehicles It's an open source project that lives in the Geneva GitHub repositories It's implemented in the REST programming language REST is relatively new programming language. It's quite modern It has a lot of advantages and I believe because of this it was chosen as Primarily language for the implementation of the client The SOTA client supports two protocols both remote vehicle interaction and HTTPS communication based on JSON RPC It is now integrated in both automotive platforms we started in April by Contributing it to Geneva development platform and right now We're working on the integration in automotive grade Linux both of the distributions are based on Yachto and open embedded So our work was quite similar There is a layer called matter REST and we need this Yachto layer as a dependency In Geneva development platform because it provides the required Yachto and open embedded recipes for building the compiler of the REST programming language and cargo cargo is Package manager for the REST programming language in the terminology of this in the REST Terminology the packages are called crates. So using cargo. We are installing and managing crates that we need to build the SOTA client We have added This recipe into the meta layer meta Geneva dev It deploys it builds and deploys the RBI SOTA client into the images that are that are built with BitBake and The next step is to integrate a system that deploys the downloaded content into the system a system such as OS 3 So the repositories of all these projects are in GitHub Here you can have a look at them Actually, I'm not going into a deep technical dive about the SOTA client Just because ADS advanced automatic systems are having a boot on the first floor So you can go there and you can see a live demo of what I'm presenting here. I Would like to switch to The web browser just to show you the repositories because I Believe my experience in contributing Geneva development platform is valuable and actually it's very very simple How many of you are familiar with github? Okay, so you are ready to contribute to Geneva development platform You this is this is the main repository It contains all the metal layers that are required to to build an image So you just grab the source code you follow the instructions the exact steps in the Geneva development Platform wiki here are the steps for example for Raspberry Pi The steps are quite standard if you are familiar with the Yachto project and open embedded Here you can see the matter rust layer that I mentioned it is added specifically because of RBI SOTA client one of the most important layers that we have here Actually, there are two of them. The first is meta IVI the second one is meta Geneva dev Let's have a look at meta Geneva dev So if you Want to do an upstream contribution to meta Geneva dev? This is this is the project just push a standard github pull request And the the maintainers will review it and eventually merge it the The upstream project of the RBI SOTA client is in the Geneva repositories now here I'm showing you the downstream project of advanced automatic systems. They're doing developing here development here So as you can see everything is in github and since I believe pretty much all of you have the knowledge How to use git and github you are ready to become contributors If you're wondering how to get started It's actually quite easy there is a wiki Augustine and the the team of Geneva are putting a lot of efforts as well as some contributors like Shangyong and me We're trying to keep it up to date. So visit the wiki. Have a look at the exact steps if you have any questions Please I do not hesitate to join the mailing list and ask there or the RC channel For for community point of view Probably raspberry pi is the most important Target board because it is super easy to get one to build an image in a couple of hours and to see what we have in here Okay, thank you very much for your attention. It's now turn again. Thank you Leon I think I didn't mention before that you work for consult company, okay Let me go back to the slides before we go into the into the questions Let me just show a couple more I have prepared here and okay now Okay, yeah, so what we are showing here is release candidate to so we are basically around this week next week is them Geneva members meeting and Yeah in the members meeting we will decide When we will release The 11th one is up. It's not up today because there should be here a release candidate three in fact it's kind of a preview of the New HMI and demo apps so our late features, you know, we get the software when it comes and some companies has Publish some software that we want to incorporate so we have extended a little bit the cycle So we are expecting we will decide it tomorrow But sometime before Christmas to have the final release with a new layout and new demo apps They have already talked about what comes in in the new in the new release. Let me just highlight some of the things we have said This is the first time we show it by the way, so yeah, you're told 2.1 cute 6 5 6 You have it there met IVI 11 whale and IVI extension. There are lots of when it comes Events and big shows we have tons of support requests about whale and IVI extension for multi monitors and things like that and The ports there were mentioned before but they are quite a few I would also like to say that we have a very good support for renaissance boards in master. We don't ship and ship them as binaries because of License with some of the drivers but In master we have very good support for porter and silk and renaissance work a lot on that also and And Yeah, so we have this new launcher next week You will be able to see more. Hopefully it will be recorded and I will try to add some links about that We have as I said to new deliverables or outcomes. There's CKS DE. We call it I found out that the name this week So I that's why I haven't updated their slides and then this GDP sleep spins and then on the process side We are doing Obviously we with so many boards and the system is getting bigger and bigger Then we need to look obviously at efficiency doing the work that we are currently doing more efficiently So the the current amount of people are working on it can handle more so we are taking a spare steps toward acceptance testing and We are starting to trying to study If the contents that we are writing and and the critical path that somebody has to go from downloading to getting to the write instructions If that path is okay and people are consuming the contents that we have designed it So people don't get lost looking for instructions that are right there So we are starting to look into these kind of things to make sure that we have the minimum amount of pages and goes There go to the point just two examples of some improvements we are doing on the delivery side of things and Yeah, above all we are trying to get more and more focus on on developers and our number one activity In times like these with events and it's support, right? So there most we get a lot of Support requests from from people that is the first time they are approaching in the an automotive system. So It's it consumes a lot of our time, which is a very good thing and Well, there is a link there for for the blog where we publish the latest news. I Provide we provide in the slides lots of links to so you don't have to dive in too much You go you go directly to this page and you can find almost everything we have talked about and Yeah, since we released last week or the week before I don't know October 4th The release candidate to we welcome we welcome some testing and questions about the system and Basically, we have about 15 more minutes. So I would like to Open time for questions and if we have some time I will tell us a few more things So does anybody has a question about what I've seen go ahead, please to your car No in practice in practice, no you cannot do it to your car yet It's we are not there yet. What what we are trying just to do is to get to get an environment that in which you can start thinking about developing applications for cars or if you are a of you are if you are an automotive Component developer Then you need a system in which other you can find other automotive components that they are integrated and talked to each other In order to be able to have an experience So right now after the first year doing this as a standard open source project This is the goal we are having And I think it's gonna take still some time before we can really think about Providing something that somebody can Think of using in in in production What I mean companies like like The ones those two guys are working for on myself. We are also doing Projects in production and what we are doing there is a still way different. That's what we are doing here May add something yeah, of course I completely understand your question because I also enjoy do it yourself gadgets But the target of Geneva development platform is not exactly the use case is different This is a platform that should Get let's say 80 or 90 percent of the software that should go into your car. And this is something that Manufacturers should take they should put customization to finish it like 20 percent more and then to ship it into real products This is the use case It's not easy to to grab the source code and to put it into something existing on the market primarily because you don't know what is The The head unit of your car. You don't know the drivers. You don't have The Linux kernel for it. Probably you can reverse engineer it, but it's a lot of work Eventually one day I'll be super happy if it's possible to grab something like things like this that Changyong showed us and to put it into a car, but even for this we're Still way unfortunately, but we're going in that direction any other question. Go ahead, please Okay, so I'll just repeat the question the first one I'll just paraphrase it to make it shorter. The first one is regarding crossbury pie It's a hobbyist question. Is it possible to access the canvas via the raspberry pie and additional components? This sounds as something very interesting I have not seen it done with the Geneva development platform But why not we can give it a try as hobbyist. It would be a great project. I have seen it I've never tried it, but yes, it's such things exist Regarding the the second question it goes to me since I'm the one looking after the integration of the soda client into Into Geneva development platform Yes, of course the soda client is it is designing a way to meet the requirements of the automotive industry There are several components in the soda client The smart component is actually the cloud that makes the decisions. What to download what should be downloaded to the car and The the soda client written which is integrated in Geneva development platform and in automotive grade Linux Gets the content downloads it to the to the to the vehicle and after that handles it to the system for system installation in AGL we are using Austria to Apply the update the the the benefit of Austria is that it Supports incremental updates. So you can just download the static the static Delta Which means that you are down downloading less information less content Which means the download will be faster and you pay less for the traffic and Of course, the roadmap includes further integration of For Austria not only in automotive grade Linux, but in Geneva development platform The soda clan has further advantages because it supports The deep bus interface which provides you an opportunity to communicate with the other Geneva APIs that exist in the Geneva development Platform furthermore it has support for web sockets So if you are having an HTML5 application, you can directly communicate to it through a Web socket is that I talk about it, right? Is that I talk about it here? DLC I don't think that there is a specifically talk about the soda client, but ATS is having a boot upstairs. So please join them. Yeah, I think that going to the booth You will get all the details about the about this Just to finish my colleague from Kansaka group the city of the company Mac Porter had a brilliant talk about all the different open-source tools for Upgrades so you can reference to his slides for more details Any other question? Go ahead Okay, the question is if if there are there is an idea of using this for entertaining Systems the answer is no to my knowledge so well, it's well for the entertainment if Let me rephrase it IVI also includes entertainment. It's just that We are not we are not there yet. So we are not thinking about We are thinking about enable enabling developers, but we are still not thinking about what the developers are going to do with that We are not there yet So not to my knowledge at this point Go ahead, please No, I I cannot provide you details on common API Because I'm not into the development. We our part is delivery integration. So from our point of view I mean, it's a stable enough for us obviously because it's I mean, it's one of our components using production. So We for the standards of some of the components that are out there. It's very very stable now if we are thinking about production I should refer that question to to One of the developers of the expert groups the good point about What I think is one of the good points about the The Geneva setup is that by asking in the public mailing list You are also accessing to experts from tire once and and OEMs I think I think that it's one of the most powerful Features that having an open source site in this big consortium have Because otherwise it's very hard to reach the engineers themselves Right, you always have to go through a marketing product manager or something like that and through Geneva through the public mailing list those guys Answer questions about the modules they have developed So I would refer this kind of questions to the mailing list and if not My mail and contact is in the slides. Please send me an email and I will route it Okay, but we try to bring all those guys all those developers into the public mailing list with Sometimes it's not as easy as it seemed because they are not used to To be exposed right like we are in open source Any other question? We have still some minutes I think yeah five minutes Go ahead, okay, so the question is he's new to automotive and what are difference between a GL and Geneva? basically the OEMs that drive them one I Would say that a GL is a Linux foundation project So because you are in the Linux foundation you have a specific setup, right? And so and some culture and Geneva it's an industry consortium made with built with some rules or some processes that Somehow resonate more to how the industry used to work or still works so The platforms today are very much alike. I mean there are differences But not very big. I mean for instance Leo is contributing to both and in the mailing list or in the chat Shang-Yong for instance answers questions from Basic questions that people are asking about a GL Because we share we share the same we said we share the same chat So I wouldn't say that they are major difference I have the obviously if things keep going as today both of them will diverge over time Because the companies that are working on it and and putting effort on it are different. So There are some that are the same like like like Consulco like mine cold thing, but some others not so I assume I'm in my mind in two years They will diverge way more than today Met mess just a second just a second At the very end Geneva When we arrived to Geneva Geneva had already quite a lot of components so the priority was to put those components into the hands of open source developers and When you already have software that and part of that software is even in production Yeah, the priority is like, you know, let's put this software into the hands of the people because it's already open source It's just not easy to consume. So you need to be an expert or already have a Production system an automotive production system to really Make it use of it. So very only they were only used by by experts from tire ones and and OEMs so our main goal was no let's let's wrap this and let's put this software into the hands And and that's been the driver for this first year I would say at least the first few months and that's the first thing and in order to do that You have to do a lot of groundwork to make the system stable enough because at the very end We are used to stand the you know We are used to the standard of our laptop. That's that's what we are used to and Embedded experts are used to all you know Going there and put a lot of instructions and it's fine You know to spend one day or two days building something But that's not what we want if we want to bring this to the masses We have the experience needs to be like it like in a laptop. So that's been the driver now What it's going to happen this second year Well, I think that Geneva is now in a position to to really think about okay Now we have a system now what we want to do with it where we want to point where we want to go and Obviously, there are a lot of people with several ideas. It looks like that There is a strong demand for applications So that that is that is one force very strong force and other forces Let's ex if cars are going to be connected Security is one aspect updates. It's another aspect. So there is like a second force in that direction. So But I cannot tell I honestly cannot tell I think that this event next week will we'll answer some questions I think we run out of time. We have one more minute one more question time for one Can I add a small command as a yes, of course Well engineer so there are a lot of similarities between the two platforms. There are some differences the similarities are that they're both GNU Linux distributions with using the Linux kernel Using system D using Wayland and Western They have a cute for the HMI interfaces for the demo HMI applications there the difference is in in the security and In the application frameworks as well as in some of the APIs use there So the best way to experience best these platforms since they're open source is just grab the source code to build it There are exact steps in both we case and to give it a try Okay, one minute. So one more question Now, okay, thank you all and please download it and try and test and let us know what you think. Thank you