In the Driver's Seat

In the Driver's Seat

In the Driver’s Seat Use Cases of Qt in Automotive Dr Tuukka Ahoniemi Product Manager [email protected] 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? The Automotive Industry is Changing Software Will Take Over the Form Factor 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 4 © 2015 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 5 © 2015 Multi-Screen Challenge 6 © 2015 A Platform is Only as Good as the Content for the Platform 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. © 2015 The Qt Company Target All Your Platforms with One Technology Qt’s cross-platform SW framework runs all major Operating Systems with native speed. Investing one technology instead of many brings huge cost savings. Embedded: My Embedded Linux, Embedded Android, Windows Embedded, QNX, Software VxWorks, INTEGRITY Solution Desktop: Windows, Linux, Mac, Solaris, Enterprise UNIX Mobile: Android, iOS, Windows Phone, WindowsRT, BlackBerry 10, Sailfish © 2015 The Qt Company Solving the Multi-Screen Challenge Backseat HUD Instrument Cluster Infotainment QML QML QML Passenger Qt IVI System Automotive bus Serial iPhone / iPad (CAN) Bus QML QML API Built-in applications API Automotive Passenger electronics and Android device control systems QML 2nd / 3rd party software services Bring Your Own Device (BYOD) Transition of Industry From Black Box Systems into White Box Requirements for More Transparency • Build Systems • Contribution model • Sharing Code • Style • Comments • Language 13 © 2015 Power of Ecosystem 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 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 16 © 2015 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 17 © 2015 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 19 Rapid Workflow with Qt Quick Qt Quick Declarative UI Design Stunningly Fluent Modern User Interfaces, written with Designer QML. Ideal for rapid UI prototyping. Imperative Logic Power of Cross-Platform Native Qt/C++ Developer Core Network Sql Processes, Threads, HTTP SQL IPC, Containers, FTP & NFC XML I/O, Strings, SSL Oracle Bluetooth Serial Port Serial Etc. Databases Positioning + Direct Hardware Access 20 © 2015 Qt Instrument Cluster Demo © 2015 The Qt Company 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 22 © 2015 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! 23 © 2015 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 24 © 2015 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 25 © 2015 Contents of the Qt Automotive Suite Offering 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 27 © 2015 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. 28 © 2015 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 © 2014 Digia Qt State Chart Offering • Existing: Qt State Machine Framework • Existing for many years in Qt Core • Bug fixes, performance improvements • Improved compatibility with SCXML standard SCXML Editor • New: Qt SCXML Compiler and Runtime • New module developed by The Qt Company, not yet SCXML Compiler & Runtime released • SCXML parser and runtime SCXML Qt State Machine FW • SCXML Compiler: similar to Qt Quick Compiler, extension 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 Summary High Value from Cross-platform Solution Qt solution allows to change OS and HW which provides additional value and safety for future needs. Secondary Instrument Cluster Information Display Center Console App(s) App App HMI, UI & Application Framework Car Middleware Operating System OS Center Console Instrument Display Secondary Display Display Application Application HW Processor Processor Vehicle bus(es) © 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. Multimedia UI controls Positioning Speech Cloud Sensors recognition Web Engine Mapping layer Hand writing Qt Core Networking 3D interface interface Qt components layer OTA Screen Application Car bus composition Audio framework interface layer handling Sandboxing automotive State Test Advanced Advanced debugging Qt tools & components & tools machine framework profiling © 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. Traditional Qt Enterprise framework development provides numerous cost saving elements. Costs Maintenance costs Modern, fast, up to date Web Browser Engine is included, Expandability costs Qt Automotive Availability off source codes Suite decrease maintenance costs Testing costs Maintenance costs Qt’s plug-in architecture makes Web Browser Expandability costs solution expandability really Engine with Qt easy. Qt testing framework Qt’s test sets and framework Functionality increases testing efficiency and features development costs Functionality and features done with Qt’s functionality and Enterprise Qt framework feature sets speed up the development. © 2015 The Qt Company Thank You! www.qt.io.

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    35 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us