introduction to automotive grade linux · • pbab binder available • wifi binder refactored •...
TRANSCRIPT
IntroductiontoAutomotiveGradeLinux
AutomotiveLinuxSummitJune20,2018WaltMiner(@VStarWalt)CommunityManager,AGL,TheLinuxFoundation
AutomotiveGradeLinux
Collaboratingtobuildthecarofthefuturethroughrapidinnovation
http://AutomotiveLinux.org
Slide2
WhatisAGL?
● Non-profit● OpensourceLinux-basedcollaborativeproject● HostedatLinuxFoundation● Focusedonrapidinnovationofvehiclesoftware
Slide3
GoalsofAGL
• Buildasinglesoftwareplatformfortheentireindustry• Develop70-80%ofthestartingpointforaproductionproject• Reducefragmentationbycombiningthebestofopensource• Developanecosystemofdevelopers,suppliers,expertise
allusingasingleplatform
Slide4
Autonomous Driving
Advanced Driver Assistance Systems
(ADAS)
Functional Safety
Heads-upDisplay(HUD)
Infotainment Instrument Cluster
Telematics/ Connectivity
theonlyorganizationaddressing
allsoftwareinthecar
Thanksforallthefish…• AGLReleases:
AA–AgileAlbacore–Jan2016BB–BrilliantBlowfish–July2016CC–CharmingChinook–Dec2016DD–DaringDab–July2017EE–ElectricEel–Jan2018FF–FunkyFlounder–July2018GG–GrumpyGuppy–Jan2019
Slide9
Top25GitCommittersin2018Commits Name Company
141 JoseBollo IoT.bzh76 MattRanostay Konsulko71 ChanghyeokBae LG68 RomainForlot IoT.bzh67 KhangNguyen Renesas51 RonanLeMartret IoT.bzh39 ThuyTran Renesas31 Jan-SimonMoeller LinuxFoundation31 KazumasaMitsunari Witz28 JonathanAillet IoT.bzh18 ThaoNguyen Renesas15 KevinHilman BayLibre15 LoicCollignon Iot.bzh
Slide10
Commits Name Company13 SebastienDouheret IoT.bzh11 MartinKelly Xevo11 MattPorter Konsulko9 HarunobuKurokawa Renesas9 KotaroHashimoto MitsubishiElectric7 LoysOllivier BayLibre7 StephaneDesneux IoT.bzh7 TadaoTanikawa Panasonic7 TobiasJahnke Microchip7 TomRini Konsulko5 ChristianGromm Microchip5 ScottMurray Konsulko5 ThierryBultel IoT.bzh
• 01Jan2018–14June2018• Commitstomaster
796TotalCommits47Committers19Companies
CommitsbyCompanyin2018Company Commits
IoT.bzh 329Renesas 140Konsulko 106LG 71Witz 33LinuxFoundation 31BayLibre 25Microchip 12MitsubishiElectric 11
Slide11
• 01Jan2018–14June2018• Commitstomaster
Company Commits
Xevo 11Panasonic 7Intel 5FiberDyne 4Individual 3QtCompany 3Nexty 2AisinAW 1CogentEmbedded 1VirtualOpenSystems 1
796TotalCommits47Committers19Companies
OtherNumbers• 137commitstoeelreleasebranchin2018• 5commitstodabreleasebranchin2018• 101uniqueindividualsand36uniquecompanieshavecontributedtoAGLsincethestartoftheproject• 11Newcommittersin2018
• 11individualsnotaffiliatedwithamembercompanyhavecontributed
• 192Jiraissuesclosedduring2018• 1082issuesclosedsincestartofproject
Slide12
2018AGLScheduleJan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec
Slide13
ElectricEel
5.0.0 5.0.25.0.1 5.0.3 5.0.4
FunkyFlounder
FeatureDevelopment
GrumpyGuppy
RC1 RC3 7.0.0RC2FeatureDevelopment
Asof15June2018
RC1 RC36.0.0 6.0.3
6.0.1 6.0.2
6.0.4
RC2
Seehttps://wiki.automotivelinux.org/schedule#latest_scheduleforlatestscheduleinformation
AGLArchitecture
Slide14
Platform • Base BSP • Security • AGL transport
• Micro Services based • Middleware and App Binding / Binder Model
• Downloaded on platform • Multi-ECU • Car to Cloud • Car to Car
AGLBinder/Binding
Slide15
Binder • Container process • Transport • Security • Standardized Async API structure
• Binding • Library called from a binder • Implements feature • Multi thread support • Standardized integration • Reference example provided
http://docs.automotivelinux.org/docs/apis_services/en/dev/#application-framework-binder
SDKforAppDevelopers• Dockerimagetoeliminatehostdependencyissues
• Availableforreferenceboardswithpublishedimagesthatincludegraphicsdrivers
• EnablesrapidAGLapplicationdevelopmentSupportforQt(HTML5coming!)
• NoYoctoknowledgeisneededorassumedforSDKusers
Slide16
http://docs.automotivelinux.org/docs/devguides/en/dev/#development-kit-build-agl-application
Visionfor2018• MajorContentProvidersDevelopAGLApps• OEMsPortLegacyAppstoAGL• Releases
• FunkyFlounder-July2018• GrumpyGuppy-January2019
Slide17
Visionfor2018• AGLAppFrameworkEvolution
• UserManagement• PowerManagement• MemoryandCPUmanagement
• HomeScreenandWindowManagerServicesComplete
• ChromiumbasedHTML5Apps
Slide18
Visionfor2018• ProductionReadyAudioSolution• VideoPlayerReferenceApp• VehicletoCloudServices• SpeechandTexttoSpeechServices• ExpandedAGLAutomatedTestSuite
Slide19
AGLDocumentation• GettingStartedhttps://wiki.automotivelinux.org/start/getting-started
• AGLdocumentationsitehttp://docs.automotivelinux.org/
• AGLWikihttps://wiki.automotivelinux.org/
• AGLJirahttps://jira.automotivelinux.org/
Slide21
GetTheCode• Pre-builtbinariesandsourcetarballsavailable
• https://www.automotivelinux.org/software/download
• LatestSourceCodeandBuildInstructions• https://wiki.automotivelinux.org/agl-distro/source-code
• ReleaseNoteshttps://wiki.automotivelinux.org/agl-distro/
release-notes
Slide22
AGLCode• AGLgerrit
http://gerrit.automotivelinux.org/• AGLgit
https://git.automotivelinux.org/• WeeklyDeveloperCall-Tuesdayshttps://wiki.automotivelinux.org/dev-call-info
Slide23
2018F2FWorkshops• Feb19-21–AGLAMM– Tokyo• Apr12–13–Karlsruhe,Germany(Microchip)• June5–8– Lorient,France(IoT.bzh)• June19–DaybeforeAutomotiveLinuxSummit-Tokyo
• EarlySep?–SantaClara(LGOffice)• October15–18-FallAMM–Dresden,Germany• Nov6-8–CESIntegrationSession–Yokohama• Dec4-6–CESIntegrationSession-Yokohama
Slide24
ActiveExpertGroups• ApplicationFrameworkandSecurity• Connectivity• ContinuousIntegrationandAutomatedTest• GraphicsandUI• Navigation• Virtualization• ReferenceHardwareSystemArchitecture• Speech• VehicletoCloud
Slide27
AppFrameworkandSecurityEG• Applicationlifecycle(install,run,remove,applications)• SDKandapplicationdeveloperexperiencebothinsecurityandAPIs
• Securityframework,policies,andstrategyforthedistribution
• NetworkandvehiclefirewallsinconjunctionwiththeConnectivityEG
• SoftwareUpdateandsecureupdate• Diagnosticlogandtrace• Secureboot
Slide28
https://wiki.automotivelinux.org/eg-app-fw
AppFrameworkAccomplishments• AGLAppFrameworkAvailable• AGLReferenceAppsavailableforbothQt5• APIsavailableasAppFWServiceBinders• SDKwithXDSAvailable
• AppTemplatesanddeveloperguide• Widgetcreation• ServiceBinderswithdeveloperguide
Slide29
AppFrameworkAccomplishments• SecurityBlueprintRevisionPublished• APIV3
• DynamicAPIcreation• ServiceBinderDiscovery
Slide30
AppFrameworkTasks• Changetorunasnon-root/Multi-user• Improveddebugcapabilities• SpeechEnablement• HTML5AppManagement
• XDGLauncher• AppUpdates• PrivacyandSecurity
• SecurityworkflowforDeviceandAppdevelopers
Slide31
ConnectivityEG• VehicleConnectivity(CAN,MOST,LIN)• Networkandvehiclefirewalls• Bluetooth,Wifi,NFC• SmartDeviceLink(SDL)
Slide32
https://wiki.automotivelinux.org/eg-connectivity
ConnectivityAccomplishments• Bluetooth
• Existingbindersrefactoredforimprovedstabilityandresponsiveness
• PBABbinderavailable• Wifibinderrefactored• Telephonybindernewfeatures• Vehiclemessaging
• Signalcomposerstabilizationandimprovements• APItodefinenewvirtualmessagesatrun-time
Slide33
ConnectivityTaskList• Networkmanagementbinding
• Connmanimprovementsorreplacement• IPv4/v6configuration• NetworkBridging,Tethering,QOSandswitching• Userprofilestoallowauthorizeduserstoconfigureinterfacing
• Supportmultiplelow-levelinterfacebindingbackendsincludingEthernet,WiFi,BTPAN,andWWAN
Slide34
ConnectivityTaskList• Signalcomposerstabilizationandimprovements• ReadytoExtendbeyondCAN• FactoryprogrammingofCANmessagesetbasedonfinalvehicleconfiguration
Slide35
ConnectivityTaskList• Wifibinder
• APMode• AdditionalWifihardwaresupport
• Telephonybinder• Extendtohardwiredtelephoneusecase
• NFCbinderandNFCforuseridentification
Slide36
CIandAutomatedTestEG• BuildandsmoketestofGerritsubmissionsonallhardware
• Dailysnapshotbuildandtesting• Devicetestsonrealhardware• TestenvironmentssuchasJTAandLava• TestsuitessuchasLTP
Slide37
https://wiki.automotivelinux.org/eg-ciat
UIandGraphicsEG• AGLCompositor,LayerManager,WindowManagerandGPUinterface
• Multimediavideomanager(includingmulti-displayanddisplaysharing)andaudiomanager,andmediamanager/player.
• BrowserEngine
Slide38
https://wiki.automotivelinux.org/eg-ui-graphics
GraphicsandUIAccomplishments• UpdatetoWayland2.0• RefactoredHomeScreenincludingsplittingoutWindowManager
• XDGLauncherstarted• Internodedisplayprotocol
• ControlICdisplayoutputfromnavirunningonIVIsystem
• Waltham• SupportforChromiumbrowserengine
Slide39
GraphicsandUIAccomplishments• ImprovedAudiomanagementconfigurationandpolicies• HighLevelaudioAPI• AGLAdvancedAudioAgent(AAAA)• UNICENSbinder• HALsavailableforUNICENS,USBaudio,RenesasandIntelon-boardaudio
Slide40
GraphicsandUITasks• FinishWindowManagerandHomescreenwork• Pop-upsupportandinteractiveuserresponse• Focusmanagementforoutoffocusapps• Improvedsecondarydisplaysupport• TransitionAnimation• Hardwareplanemanagement
• Productionreadyaudioimplementation
Slide41
NavigationEG• NavigationAPI• LocationBasedServicesAPI• ReferenceNavigationandPOIapps• Speechrecognitionintegration
Slide42
https://wiki.automotivelinux.org/eg-navi
NavigationTaskList• NavigationAPI1.0fullyimplemented• GPSbinderavailable• Mapcreationprocess• NewNaviappfromComtech
Slide44
VirtualizationEG• Hypervisor/LXC• LookingatXen,Jailhouse,andothers
Slide45
https://wiki.automotivelinux.org/eg-virt
VirtualizationAccomplishments• AutomotiveVirtualizationWhitePaperCompleted
• SeveralCESdemosraninvirtualizedenvironments(Panasonic,Denso,EB,etc.)
Slide46
VirtualizationTaskList• StandardProtocolforcommunicationsbetweenVMs
• Resourcesharing(e.g.GPU)betweenVMs• ExtendKVMsupportbeyondRenesas• Additionalopensourcehypervisors
Slide47
SpeechEG• Members:Amazon,Nuance,VoiceBoxTechnologies• CreateastandardizedsetofspeechrecognitionAPIsthatappdeveloperscanuseregardlessofunderlyingspeechengine• Naturallanguageorgrammartreebased• Onboardorcloudbasedspeech
• TexttoSpeechAPI• AmazonandNuancehaveopenAPIsthatcouldbeusedasastartingpoint• NuancestartedonaSpeechAPIBindingthatisbeingreviewedbytheteam
Slide49
SystemArchitectureTeam• OverallSystemArchitecture• Yocto• BuildsystemandDeviceProfiles• CrossEGcoordination
Slide51
V2CExpertGroup-Objectives
• RefineV2CUseCases• Telematics• Personalization• Authentication&Authorization• Etc.
• DefineReferenceArchitecture• Identifyexisting,missingorreusablecomponents
• Identifyreferenceapplication(s)52
Q&A• Thisisthesegmentwhere
• Youaskintelligent,wellthoughtoutquestions• Iramblepointlesslyandunintelligently
• And/Or• Youask“dumb”questions• Irespondwithconcise,insightful,andwell-reasonedanswers