simultaneously leveraging linux and android in a genivi compliant ivi system
DESCRIPTION
Simultaneously Leveraging Linux and Android in a GENIVI compliant IVI System – Andrew Patterson It is widely accepted that Linux is the operating system of choice when building a complex, in-vehicle infotainment (IVI) system. The ability to support and quickly integrate device drivers for features such as CAN, MOST, graphics accelerators, networking interfaces, and Bluetooth can result in key differentiators for any GENIVI compliant IVI-based system. But what if Android was introduced as a second operating system? This session multiple implementations integrating both Android and Linux on multicore SoCs sharing audio and video resources across both domains while maintaining GENIVI compliance. Implementations with and without hypervisor technology will also be presented.TRANSCRIPT
mentor.com/embeddedAndroid is a trademark of Google Inc. Use of this trademark is subject to Google Permissions.
Linux is the registered trademark of Linus Torvalds in the U.S. and other countries.
Embedded World Session 22
Simultaneously LeveragingLinux and Androidin Automotive IVI
Andrew PattersonBusiness Development DirectorMentor Graphics Ltd
What goes into an IVI system?
DeviceDrivers
Middleware/Libraries / Services
Applications
Proprietary OS
Technology Evolution
• 300,000 new cars and trucks would be sold in the United States this year with no CD player
• Expected to grow to 15.9 million in 2019.
• Large population of older people who don’t want to give up their CD players : Change takes time
Hi-Fi Stereo8-Track Tapes
Circa 1970
Bring in the New, Exit the Old
Paired Device 2013
John Canali - senior analyst at Strategy Analytics,
Where are the influences ?
• Android : Dominant in consumer electronics mobile devices• Automotive Standardization : Reduce costs, share non-
differentiating technology• Technology & Value : More innovation for less money
In the first 6 months of 2012 Android downloaded onto681,900 separate devices in 195 different countries
IVI Trends in Telematics : Need Linux & Android
Collision Notification Insurance Stolen Vehicle In-car services, concierge, streaming Eco-driving services Real-time Cloud data : Traffic, Weather, Road ahead Car-Car communication Driverless car Diagnostics and servicing
Consumer Electronics Influence …
■ The SmartPhone Revolution■ 3 out of 4 Smart Phones sold are Android■ Apple & Samsung account for 83% of
market■ Platform Refresh every 6 months
■ The Car is becoming a Consumer Electronic Product
■ Lifecycles— Consumer Electronics : 6 months— Automotive : 10 years?
Choices and Design Options
Consumers demand choice..
Infotainment Design Choices :
• Hardware Platform• Operating System• Architecture• Applications and App management• Phone / Internet Connectivity
0
10
20
30
40
50
60
%
2010 2012 2014 2016 2018
QNXMicrosoftGeniviAndroidOthers
Others include other Linux platforms
Copyright © 2012 IHS Inc. All Rights Reserved.
Linux to Obtain 30% IVI Market Share in 2018
Operating Systems
OS For Against
Win CE widely Established
License cost ?
Many open source variants / GENIVI / flexible platform
Development effort
Widely accepted in Mobile / CE, open source
Managed by Google, adaptation effort
Highly tuned / good control over functions by OEM/Tier 1
Cost of development and run-time, maintenance, development cycle
Proprietary OSCommercial
Platform Options / GENIVI OS Choices
GENIVI 3.0 GENIVI 2.0 GENIVI 1.0Accenture ARM Cortex-A9 (TI OMAP 4460)
Intel® Atom™(Intel® Atom™ ) (Intel® Atom™ )
MontaVista(Mentor)
Renesas R-car H1 reference board Boundary Devices Sabre-lite board
Renesas R-Car H1 (Marzen)Freescale i.MX6q Sabre-liteFreescale i.MX53 SabreFreescale i.MX53 QSBIntel Atom Crossville
Renesas R-Car M1Freescale SABRE i.MX53Freescale i.MX6q Sabre-liteTexas Instruments JacintoIntel Atom Crossville
Wind River (i.MX6 Sabre Lite) Renesas R car M1A BOCK-WTexas Instruments Jacinto 5 EVMFreescale i.MX6 Sabre LiteRenesas R car E1 – Silverstone
(Intel® Atom™ ), (ARM Cortex-A8)
Mentor (i.MX6 Sabre Lite) Intel Atom Crossville(i.MX6 Sabre Lite)
Intel Atom CrossvilleFreescale i.MX6q
Silicon Available :
• Multi core CPUS• High performance GPU• Peripherals : USB, WiFi, etc
Courtesy : GENIVI 2012
Driver and Passenger needs
Driver• Navigation• Radio / Media Player• Concierge Services• Phone• Real-time travel information
Passengers• Social Media• Streamed Services• Web Browsing• Android Apps
Courtesy : Volvo Car
mentor.com/embeddedAndroid is a trademark of Google Inc. Use of this trademark is subject to Google Permissions.
Linux is the registered trademark of Linus Torvalds in the U.S. and other countries.
The case for Linux in Infotainment
Why Move to Linux ?
Proprietary 1st generation automotive IVI operating systems are getting expensive to maintain and scale up
Linux is an Industry standard Facebook, Amazon, Twitter all Linux servers Android has a Linux Kernel
Wide choice of hardware platforms (SoC) SoC vendors increasingly “do Linux first”
Several Automotive Linux options GENIVI well established AGL (Automotive Grade Linux) ?
Linux in numbers
2010 2011 2012
1 Ubuntu Linux MINT Linux MINT
2 Fedora Ubuntu Mageia
3 Linux MINT Fedora Ubuntu
4 openSUSE openSUSE Fedora
5 PCLinuxOS Debian openSUSE
6 Debian Arch Linux Debian
7 Mandriva PCLinuxOS Arch Linux
8 Sabayon CentOS PCLinuxOS
9 Arch Linux Puppy Linux CentOS
Popularity rankings for Linux (by community access)
Where does GENIVI fit ?
• Open Source Linux software platform for Infotainment Systems Developers
• Goals :
– Reduce Costs
– Make Tier 1 development more transparent
– Contributions from many expert sources
• 170 Corporate Members• Many projects underway
GENIVI is a partial solution for OEMs
Open SourceMigration to Linux
PowerfulSoC
Multi-ModeUser Inputs
Android Support
ConnectedCar
FunctionConsolidation
HMIPerformance
Picture : Courtesy GENIVI org
Mentor GENIVI 3.0 Linux
17
OS kernel, drivers and libraries
ARM A9 Freescale Sabre, SabreLite
Audio Graphics Multimedia Speech• ALSA• PulseAudio• AudioManager
• X.Org • GENIVI Layer
Management• Chromium / Webkit
• GStreamer• GStreamer good,
base plugins• tracker
• festival• pocketsphinx
Connectivity
PackageManagement
Security System InfrastructureSystem Infrastructure
• d-bus• sqlite• qt-core• fuse• gettext
• quota• udev• usb-utils• libmtp• ...
Networking
• dhcp• libcurl• nfs-utils• ntp
• wireless tools• Wpa-supplicant• ConnMan• BlueZ
ExternalAccess
• lighttpd• lighttpd-mod-webdav
• ecryptfs-utils• gnupg2• openssl
CE-deviceCE-device
• cedevicemanager
• opkg
Linux Linux drivers GNU libc
Positioning• gypsy
Personal Information Management
• SyncEvolution
mentor.com/embeddedAndroid is a trademark of Google Inc. Use of this trademark is subject to Google Permissions.
Linux is the registered trademark of Linus Torvalds in the U.S. and other countries.
Android in IVI
In-Vehicle Android
Options• Native
• Android operating system on “bare metal”
• Parallel Domain• Android running as a parallel
operating system
• Virtual Domain, Container
• Tethered• Linked in via mobile phone
Arguments For Android
Acceptance in CE 850,000 new devices daily Over 700,000 Apps (Oct 2012) 6 billion total downloads
Car features Android “Car Mode” routes all audio to speaker Hands-Free support
Other selling points Familiar UI for users Development kits & community Automotive apps peripheral support
Top 6 Automotive Android Apps
App Description
Radaroid Radaroid shows you a map which will provide locations of places where there might be a speed camera installed
GPS HUD provide you the exact location and the speed that you are travelling at. Also, the same will be reflected in the display which can be cleverly reflected on the windscreen. Thus giving you a feel of using an HUD
Carr Matey In case you have forgotten the location where you have parked your car,
Drive Carefully
this app and it will read your messages and e-mails to you.
Geo Reader
Keep yourself and others entertained by some general knowledge about that place by using this app.
Android Challenges
Roadmap managed by Google Updates to OS / App compatibility OS fragmentation and distribution MultiMedia IVI
Audio Routing Video Layers
Security ?
Beyond Apps
Security Concerns Apps may provide gateway for
hackers / attacks May compromise / interfere with
operation of other vehicle functions
Management Which Apps are authorized? Some Auto OEMs will set up Apps
Stores
Renault R-Link Apps Store
Renault R-Link
Tethered Smart Phone
“Thin Client” on IVI head unit
Approved Apps only Internet
Connectivity Quick Android
Integration
IVIStackEntertainment
Mobile Office
Networking
Navigation
Telephony
Cloud
Speech Engine
Audio
Car Connectivity Consortium
Standard “recipes” for Smart Phone tethering Universal Plug and Play (UPnP™) is used for controlled
access to applications Virtual Network Computing (VNC™) replicates the
phone's display on the navigation screen and communicate user inputs back to the phone.
80 members 70% market share in vehicles 60% market share in smart phones.
Built-in support Samsung Galaxy III, Nokia, …
Only 34% of consumers would be willing to pay for Apps in the car (IMS Jan 2013)
mentor.com/embeddedAndroid is a trademark of Google Inc. Use of this trademark is subject to Google Permissions.
Linux is the registered trademark of Linus Torvalds in the U.S. and other countries.
IVI Architectures
Linux Container (LXC) Architecture
Hardware Layer
Common HMI
IVIStack Entertainment
Mobile Office
Networking
Navigation
Multi-Core CPU GPU
Android OS
Android Apps
Mentor IVI Linux OS / LXC Resource Management
Linux Container
Graphics Layer Management
Overview of LXC
• OS-level virtualization method• Used to run multiple isolated Linux systems
– Can be different distributions
• A single kernel is shared• LXC does not provide a virtual machine
– provides a virtual environment that has its own process and network space
• The LXC project is hosted on SourceForge– http://sourceforge.net/projects/lxc/
• Userspace control tools are provided for Linux containers• LXC has been integrated into Mentor ATP
Overview of LXC (Cont…)
Linux cgroups provide:
• Resource limiting: groups can be set to not exceed a set memory limit
• Prioritization: some groups may get a larger share of CPU or disk I/O throughput
• Accounting: to measure how much resources certain systems use for e.g. billing purposes
• Isolation: separate namespaces for groups, so they don't see each other's processes, network connections or files
• Control: freezing groups or checkpointing and restarting
Android Guest OS via Hypervisor
HyperVisor
SoC
IVIStack Entertainment
Mobile Office
Networking
Navigation
Hypervisor Virtualization
ARM Multi-core CPU
GPU, Peripherals
Android OS
AndroidApps.
Linux OS
Common HMI
Graphics Layer Management
Features of a Hypervisor solution
■ SoC Hardware resources shared between two or more operating systems
■ Multi-core CPU, GPU, Audio, Network, USB■ Independent reboot / fast boot options
■ ADAS, system start-up■ Low Overhead ( 1-4 % CPU)■ Privileges Management / Security
(General Dynamics) (Thales) (OpenSynergy)
Virtualization or Containers?
Hypervisor Virtualization Linux Container
For - Scalable to multiple domains on a single hardware platform
- Faster boot-up time
- Available as part of Mentor GENIVI Linux
- Lower Cost- HMI Integration easier to
manage- Solutions in place for Android
and AUTOSAR
Against - Cost / proprietary licensed software solution
- Substantial porting effort for device drivers
- Boot-up time : Need to wait for Linux host
- Less domain isolation
■ Option Comparison :
AUTOSAR Co-Host■ Host AUTOSAR environment on IVI or Cluster hardware■ Mentor (or partner) AUTOSAR V4
SWC 1 SWC 3
RTE
BSW
CommunicationLIN, CAN, FRAVB/EthernetOS
CommunicationStack
RTE InterfaceApplication and BSW
Application Software(e.g. ABS Algorithm)
Virtualization Layer
MCAL
Microcontroller Abstraction Layer (MCAL)
ECU nECU 2
Bus : CAN, LIN, FlexRay, AVB, MOST
SoC
ECU 1
IVILinux OS
IVI Cluster
HMI
Summary : Integrated Solutions
Hardware
IVI
Flexible architectures allowing co-existence of Android and Linux are needed