+ All Categories
Home > Documents > In the Driver’s Seat - d33sqmjvzgs8hq.cloudfront.net€¦ · • Developing Qt or HTML5 on...

In the Driver’s Seat - d33sqmjvzgs8hq.cloudfront.net€¦ · • Developing Qt or HTML5 on...

Date post: 26-Apr-2020
Category:
Upload: others
View: 2 times
Download: 0 times
Share this document with a friend
35
In the Driver’s Seat Use Cases of Qt in Automotive Dr Tuukka Ahoniemi Product Manager [email protected]
Transcript
Page 1: In the Driver’s Seat - d33sqmjvzgs8hq.cloudfront.net€¦ · • Developing Qt or HTML5 on desktop is nice but might give an unrealistic view of performance or possible features

In the Driver’s Seat

Use Cases of Qt in Automotive

Dr Tuukka AhoniemiProduct Manager

[email protected]

Page 2: In the Driver’s Seat - d33sqmjvzgs8hq.cloudfront.net€¦ · • Developing Qt or HTML5 on desktop is nice but might give an unrealistic view of performance or possible features

Contents

• Requirements for Automotive Systems

• Transition of Automotive Software

• Power of Ecosystem

• Qt GUI Offering• Qt Quick and HTML5

• Qt Automotive APIs

• Why Qt Makes a Lot of Sense in Automotive?

Page 3: In the Driver’s Seat - d33sqmjvzgs8hq.cloudfront.net€¦ · • Developing Qt or HTML5 on desktop is nice but might give an unrealistic view of performance or possible features

The Automotive Industry is Changing

Software Will Take Over the Form Factor

Page 4: In the Driver’s Seat - d33sqmjvzgs8hq.cloudfront.net€¦ · • Developing Qt or HTML5 on desktop is nice but might give an unrealistic view of performance or possible features

© 20154

Wild West of Automotive Systems

• The automotive systems are mostly based on specialized hardware and proprietary software• OEM solutions

• Tier 1 Platform solutions

• Open source solutions

• Apple, Google platforms

• Alliances and consortiums, like GENIVI and AGL• Still far from standardized platforms

Page 5: In the Driver’s Seat - d33sqmjvzgs8hq.cloudfront.net€¦ · • Developing Qt or HTML5 on desktop is nice but might give an unrealistic view of performance or possible features

© 20155

Requirements for IVI Systems

• Flexibility and Scalability• Customization for different makes and models, and for setups

• Different HW

• Plugins

• Global presence: internationalization/localization

• Fluent performance• Multitasking

• Fast boot-up, pre-loading

Page 6: In the Driver’s Seat - d33sqmjvzgs8hq.cloudfront.net€¦ · • Developing Qt or HTML5 on desktop is nice but might give an unrealistic view of performance or possible features

© 20156

Multi-Screen Challenge

Page 7: In the Driver’s Seat - d33sqmjvzgs8hq.cloudfront.net€¦ · • Developing Qt or HTML5 on desktop is nice but might give an unrealistic view of performance or possible features

A Platform is Only as Good as the Content for the Platform

Page 8: In the Driver’s Seat - d33sqmjvzgs8hq.cloudfront.net€¦ · • Developing Qt or HTML5 on desktop is nice but might give an unrealistic view of performance or possible features

© 2015 The Qt Company

Building your Automotive Ecosystem

Biggest value for the consumers and for

the car brand comes with innovative

automotive applications and services

which developed and controlled by OEM.

Applications extend functionality

infotainment system not only inside but

also outside of the car.

Qt’s Application Framework provides fast and safe basis for

the OEM’s applications and services.

Page 9: In the Driver’s Seat - d33sqmjvzgs8hq.cloudfront.net€¦ · • Developing Qt or HTML5 on desktop is nice but might give an unrealistic view of performance or possible features

© 2015 The Qt Company

Target All Your Platforms with One Technology

My

Software

Solution

Desktop:Windows, Linux, Mac,

Solaris, Enterprise UNIX

Embedded:Embedded Linux, Embedded Android,

Windows Embedded, QNX,

VxWorks, INTEGRITY

Mobile:Android, iOS, Windows Phone,

WindowsRT, BlackBerry 10, Sailfish

Qt’s cross-platform SW framework runs all

major Operating Systems with native

speed. Investing one technology instead of

many brings huge cost savings.

Page 10: In the Driver’s Seat - d33sqmjvzgs8hq.cloudfront.net€¦ · • Developing Qt or HTML5 on desktop is nice but might give an unrealistic view of performance or possible features

Automotiveelectronics andcontrol systems

Qt SerialBus API

Automotive bus(CAN)

IVI System

Instrument ClusterQML

QML

APIBuilt-in

applications

2nd / 3rd partysoftware services

PassengeriPhone / iPad

QML

PassengerAndroid device

QML

BackseatInfotainment

QML

Bring Your Own Device(BYOD)

Solving the Multi-Screen Challenge

HUD

QML

Page 11: In the Driver’s Seat - d33sqmjvzgs8hq.cloudfront.net€¦ · • Developing Qt or HTML5 on desktop is nice but might give an unrealistic view of performance or possible features

Transition of Industry

Page 12: In the Driver’s Seat - d33sqmjvzgs8hq.cloudfront.net€¦ · • Developing Qt or HTML5 on desktop is nice but might give an unrealistic view of performance or possible features

From Black Box Systems into White Box

Page 13: In the Driver’s Seat - d33sqmjvzgs8hq.cloudfront.net€¦ · • Developing Qt or HTML5 on desktop is nice but might give an unrealistic view of performance or possible features

© 201513

Requirements for More Transparency

• Build Systems

• Contribution model

• Sharing Code• Style

• Comments

• Language

Page 14: In the Driver’s Seat - d33sqmjvzgs8hq.cloudfront.net€¦ · • Developing Qt or HTML5 on desktop is nice but might give an unrealistic view of performance or possible features

Power of Ecosystem

Page 15: In the Driver’s Seat - d33sqmjvzgs8hq.cloudfront.net€¦ · • Developing Qt or HTML5 on desktop is nice but might give an unrealistic view of performance or possible features

The Qt Ecosystem

• 20 years of experience and knowledge of• Build systems

• Porting Qt to various platforms (OS and HW)

• Open Source contribution model (Qt Project)

• CI (Continuous Integration) systems

• Documentation, tutorials, examples

• Companies, partners

• Around million developers• People writing content

Page 16: In the Driver’s Seat - d33sqmjvzgs8hq.cloudfront.net€¦ · • Developing Qt or HTML5 on desktop is nice but might give an unrealistic view of performance or possible features

© 201516

Customer Case: Porting Example

• Qt for Renesas R-Car• Customer had legacy build system

• Once build system was fixed, getting Qt on top of that was easy

• Small backend implementation for eglfs

• Uses general KMS API

• Runs on Intel platforms -> desktop development, rapid workflow

• Then, porting to NVidia Jetson TK-1/ Jetson Pro• Same KMS API than Renesas

• Different buffer mechanism

• Took only 1 week to adopt Qt stack

Page 17: In the Driver’s Seat - d33sqmjvzgs8hq.cloudfront.net€¦ · • Developing Qt or HTML5 on desktop is nice but might give an unrealistic view of performance or possible features

© 201517

Why Qt Solved the Problem?

• Qt gives you a wide HW support out-of-box and very flexible and easy ways of customizing the stack into other HW• Flexibility is built-in to Qt

• This is very unique in the Automotive world• Often OEMs have hundreds of people working for a proprietary stack, where

as with Qt, a handful of people can handle that

Page 18: In the Driver’s Seat - d33sqmjvzgs8hq.cloudfront.net€¦ · • Developing Qt or HTML5 on desktop is nice but might give an unrealistic view of performance or possible features
Page 19: In the Driver’s Seat - d33sqmjvzgs8hq.cloudfront.net€¦ · • Developing Qt or HTML5 on desktop is nice but might give an unrealistic view of performance or possible features

19

Create Modern Automotive GUIs with Qt

• Qt Quick – Declarative UI, C++ backend• Designer/Developer workflow

• Full touch-based experience

• Existing UI controls, easy customization

• Smooth and easy animations

• 3D effects

• Integration of 3D graphics

• Localization

Page 20: In the Driver’s Seat - d33sqmjvzgs8hq.cloudfront.net€¦ · • Developing Qt or HTML5 on desktop is nice but might give an unrealistic view of performance or possible features

© 201520

Rapid Workflow with Qt Quick

Developer

Declarative UI Design

Stunningly Fluent Modern User Interfaces, written with QML. Ideal for rapid UI prototyping.

Imperative Logic

Power of Cross-Platform Native Qt/C++

Qt Quick

Core

Processes, Threads,IPC, Containers,I/O, Strings,Etc.

Network

HTTPFTPSSL

Sql

SQL&OracleDatabases

XM

L

Blu

eto

oth

Po

siti

on

ing

NFC

Se

ria

l Po

rt

Designer

+ Direct Hardware Access

Page 21: In the Driver’s Seat - d33sqmjvzgs8hq.cloudfront.net€¦ · • Developing Qt or HTML5 on desktop is nice but might give an unrealistic view of performance or possible features

© 2015 The Qt Company

Qt Instrument Cluster Demo

Page 22: In the Driver’s Seat - d33sqmjvzgs8hq.cloudfront.net€¦ · • Developing Qt or HTML5 on desktop is nice but might give an unrealistic view of performance or possible features

© 201522

Example Case: Modernizing Workflow with Qt Quick

• A large automotive OEM• Designers used iPads

• 6 weeks from design to running on car

• Changed the workflow to Qt Quick based• Immediately see the change in real environment

• Same kind of agility for embedded / automotive development than on desktop/mobile• Rapid workflow

• Modern software development

Page 23: In the Driver’s Seat - d33sqmjvzgs8hq.cloudfront.net€¦ · • Developing Qt or HTML5 on desktop is nice but might give an unrealistic view of performance or possible features

© 201523

Qt and HTML5

• Qt and HTML5 are not mutually exclusive

• Qt provides a powerful HTML5 engine, Qt WebEngine• Convenient port of the Chromium

• Cross-platform

• Fully integrated into the Qt graphics stack

• Everything else around the engine -> the whole Qt framework!

Page 24: In the Driver’s Seat - d33sqmjvzgs8hq.cloudfront.net€¦ · • Developing Qt or HTML5 on desktop is nice but might give an unrealistic view of performance or possible features

© 201524

Experiences with HTML5 from Customer Cases

• HTML5 is not designed for GUI creation• Inconveniences

• Performance problems

• HTML5 is very good for some use cases and needed for certain dynamic cross-platform functionality• Qt wants to provide the best platform for HTML5 as well

• We strongly recommend a wise hybrid development strategy• Qt Quick for the GUI controls and graphics, for best native performance

• HTML5 for the rest

• Mix and match freely

Page 25: In the Driver’s Seat - d33sqmjvzgs8hq.cloudfront.net€¦ · • Developing Qt or HTML5 on desktop is nice but might give an unrealistic view of performance or possible features

© 201525

Experiences with HTML5 from Customer Cases

• Start testing in real hardware as early as possible• Developing Qt or HTML5 on desktop is nice but might give an unrealistic view

of performance or possible features

• Integration introduces problems that are too late to be fixed properly

• Upgrade and select Qt WebEngine as the engine, and do it from the start• Even the old Qt WebKit will introduce performance issues on real usage

• Qt tooling for Embedded gives rapid development workflow for embedded• Rapid design-develop-deploy-test cycles on real hardware

• Wiser development strategy

• Shorter time-to-market

Page 26: In the Driver’s Seat - d33sqmjvzgs8hq.cloudfront.net€¦ · • Developing Qt or HTML5 on desktop is nice but might give an unrealistic view of performance or possible features

Contents of the Qt Automotive Suite Offering

Page 27: In the Driver’s Seat - d33sqmjvzgs8hq.cloudfront.net€¦ · • Developing Qt or HTML5 on desktop is nice but might give an unrealistic view of performance or possible features

© 201527

Quick Look to Qt Automotive APIs

• Qt Speech• Speech recognition (PocketSphinx, Nuance VoCon)

• Qt SerialBus• CAN Bus

• Other Buses, for various industries, FlexRay (planned)

• Qt Virtual Keyboard

• SCXML

• Qt Quick Controls• ISO Automotive icons

• Qt Automotive API (planned)• W3C Automotive API implementation

Page 28: In the Driver’s Seat - d33sqmjvzgs8hq.cloudfront.net€¦ · • Developing Qt or HTML5 on desktop is nice but might give an unrealistic view of performance or possible features

© 201528

CAN Bus

• Qt SerialBus will provide a CAN Bus API• Technology preview with Qt 5.6

• Different CAN Bus backends supported:

Vendor Backend Brief description

CAN over Linux sockets SocketCAN CAN bus backend using Linux sockets and open source drivers.

PEAK-System PeakCAN CAN bus backend using the PCAN adapters.

MHS Elektronik TinyCAN CAN bus backend using the Tiny-CAN adapters.

Page 29: In the Driver’s Seat - d33sqmjvzgs8hq.cloudfront.net€¦ · • Developing Qt or HTML5 on desktop is nice but might give an unrealistic view of performance or possible features

© 2014 Digia

Qt Virtual Keyboard

• A complete virtual keyboard solution

• Solid C++ backend and versatile Qt Quick UI

• Fully customizable graphics and styling

• Extendable input methods and word prediction engines

• Support for different keyboard layouts

• Good language support, also from left-to-right

• Handwriting recognition

• Supports also 5-way or 2-way navigation

Page 30: In the Driver’s Seat - d33sqmjvzgs8hq.cloudfront.net€¦ · • Developing Qt or HTML5 on desktop is nice but might give an unrealistic view of performance or possible features

• Existing: Qt State Machine Framework

• Existing for many years in Qt Core

• Bug fixes, performance improvements

• Improved compatibility with SCXML standard

• New: Qt SCXML Compiler and Runtime

• New module developed by The Qt Company, not yet released

• SCXML parser and runtime

• SCXML Compiler: similar to Qt Quick Compiler, produces C++ binary of the state machine

• Coming: State Chart Editor Plugin for Qt Creator

• Edit State Charts directly within Qt Creator

• Textual editing

• Visual drag & drop editor

© 2015 The Qt Company

Qt State Chart Offering

Qt State Machine FW

SCXML Compiler & Runtime

SCXMLextension

SCXML Editor

Page 31: In the Driver’s Seat - d33sqmjvzgs8hq.cloudfront.net€¦ · • Developing Qt or HTML5 on desktop is nice but might give an unrealistic view of performance or possible features

Summary

Page 32: In the Driver’s Seat - d33sqmjvzgs8hq.cloudfront.net€¦ · • Developing Qt or HTML5 on desktop is nice but might give an unrealistic view of performance or possible features

© 2015 The Qt Company

High Value from Cross-platform Solution

Application Processor

Vehicle bus(es)

Instrument Display Secondary DisplayCenter Console

Display

Operating System

Instrument Cluster App

Secondary Information Display

App

Center Console App(s)

HMI, UI & Application Framework

Car Middleware

OS

HWApplication Processor

Qt solution allows to change OS and HW which provides additional value and safety for future needs.

Page 33: In the Driver’s Seat - d33sqmjvzgs8hq.cloudfront.net€¦ · • Developing Qt or HTML5 on desktop is nice but might give an unrealistic view of performance or possible features

© 2015 The Qt Company

Return of Investment

Building future proof foundation for the solution and using value added

development and testing assets will ensure the best return on investment.

Qt Core Networking

Sensors

Speech

recognition

layer

Application

framework

Hand writing

interface

layer

Screen

composition

Cloud

OTA

Qt

co

mp

onen

ts

Qt

au

tom

otive

too

ls &

co

mp

one

nts

State

machineTest

framework

Car bus

interface layer

Mapping

interface

PositioningUI controls

3D

Audio

handling

Advanced

debugging

Sandboxing

Web Engine

Multimedia

Advanced

profiling

Page 34: In the Driver’s Seat - d33sqmjvzgs8hq.cloudfront.net€¦ · • Developing Qt or HTML5 on desktop is nice but might give an unrealistic view of performance or possible features

© 2015 The Qt Company

Total Costs of Ownership

Using Qt’s building blocks, Qt automotive packages and Enterprise tooling solution

cost less than traditional development models with other technologies.

Functionalityand features

development costs

Traditional

development

Testing costs

Costs

Expandability costsQt

Automotive

Suite

Functionality and features done with

Qt framework

Qt testing framework

Expandability costs with Qt

Maintenance costs

Maintenance costs

Qt Enterprise framework

provides numerous cost saving

elements.

Modern, fast, up to date Web

Browser Engine is included,

Availability off source codes

decrease maintenance costs

Qt’s plug-in architecture makes

solution expandability really

easy.

Qt’s test sets and framework

increases testing efficiency

Qt’s functionality and Enterprise

feature sets speed up the

development.

Web Browser Engine

Page 35: In the Driver’s Seat - d33sqmjvzgs8hq.cloudfront.net€¦ · • Developing Qt or HTML5 on desktop is nice but might give an unrealistic view of performance or possible features

www.qt.io

Thank You!


Recommended