Internet of Things and Qt - … · Internet of Things and Qt ... Connectivity with Qt, within an...

Preview:

Citation preview

Internet of Things and Qt

Qt Offering for the Future of Embedded Industries

Dr Tuukka AhoniemiProduct Manager

tuukka.ahoniemi@theqtcompany.com

What is theInternet of Things?

Smart Cities

(example from enevo.com, waste management)

Connected Cars

Smart Homes

Wearables, Health sensors

Agriculture

Industry

Embedded Devices

and Sensors

Mobile Devices

Desktop PCsBig Data

© 2014 Digia

Bluetooth LEM2M Protocols

Low power SoCs /

processors

RFID / NFC

Wi-Fi CoverageSecurity

2G/3G/4G

What about Software Developers?

© 2015 The Qt Company

Qt Value Proposition for Device Creation

© 20159

• Ultimate Performance for Device Creation

• Modern User Experience

• It’s not just Embedded, It’s Everywhere!

• Shorter Time-to-Market

• Trusted Technology Partner

IoT Challenges,especially from

Software Perspective

Embedded Devices

and Sensors

Mobile Devices

Desktop PCsBig Data

© 2015 The Qt Company

Connected Embedded Devices

Big Data

Reaching End Users

Extendibility

© 2015 The Qt Company

Connected Embedded Devices

Big Data

Reaching End Users

Extendibility

© 201514

Accelerated Time-to-Market with Qt on Embedded

Cross-Platform Class Libraries

Productive development

Pre-made Embedded Solutions

Shorter Time-to-Market

Integrated Tooling

Productive development environment

© 201515

Pre-Made Embedded Solutions

• Qt Virtual Keyboard

• 2D/3D Charting

• 2D/3D Data Visualization

• Qt Quick 2D Renderer• Run Qt Quick without OpenGL

• Over-the-Air updates (coming soon)

• Full Software Stack, Boot to Qt

© 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

Qt Creator

Boot to Qt, Immediate Start with Software Stack

1. Install Qt for Device Creation• Select your hardware, flash your device with

Boot to Qt• Full Qt-optimized software stack, Yocto-

based• Full tool chains, pre-integrated into Qt

Creator2. Write your Software in Qt Creator

3. Deploy with single click• On-device debugging

You can run your software on a real embedded device

immediately!

© 2015 The Qt Company

Connectivity with Qt, within an IoT System

• Multiple non-GUI, connectivity-related modules, eg.• Qt Networking (HTTP, TCP/UDP, SSL)

• Qt Bluetooth (and Bluetooth LE)

• Qt SerialPort

• Qt SerialBus (coming in Qt 5.6)

• Qt NFC

• Easy to mix Qt and native C/C++ code for HW connection

Embedded Device(Qt)

HW / Sensors

Qt APIs

Native Code

© 2015 The Qt Company

Connectivity with Qt, Outside

• Qt Networking (HTTP, TCP/UDP, SSL)

• Qt WebEngine (integrate HTML5)

• Built-in JSON support

• QtXML

Embedded Device(Qt)

Cloud Back-endSystems

Other devices

© 2015 The Qt Company

Connected Embedded Devices

Big Data

Reaching End Users

Extendibility

© 2015 The Qt Company

© 2015 The Qt Company

Qt and Big Data

• Big Data scalability is usually an issue of backend systems• Cloud computing

• For data visualization and handling, Qt libraries are often used with large data sets• Visualization industries

• Research institutes

• Full C++ performance

• When you write your applications and backends, you should be prepared for large data sets as well

© 2015 The Qt Company

Connected Embedded Devices

Big Data

Reaching End Users

Extendibility

© 2015 The Qt Company

Qt is Cross-Platform!

• Immediate market reach

• No platform prioritization

• Maintainability, smart technology strategy

• Extendibility, future-prooving

• Maximizing code re-useOne

Code Base

Maximizing Code Re-Use

© 201529

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

© 2015 The Qt Company

Connected Embedded Devices

Big Data

Reaching End Users

Extendibility

© 2015 The Qt Company

Extendibility, in IoT context

• Future platforms

• New sensor HW

• New sensor protocols / communication mechanisms

• Additional system connections / backend systems

• As systems can be deployed everywhere, extreme flexibility is needed from the system architecture design for long lifespan

© 201532

Future-proofing with Qt

• For future platforms or platform versions, Qt as a cross-platform framework future-prooves your software to run there without changes

• For new HW Qt provides plugin-based APIs that are easy to extend

Embedded Device(Qt)

Sensor

Qt Sensor API

plugin

Sensor

plugin

Summary

© 2015 The Qt Company

Qt Developer Offering for IoT Systems

Rich UI Offering

• Rapid UI Prototyping

• Declarative UI design with Qt Quick

Integrated Embedded Tooling

• Qt Creator IDE• Easy embedded

development• Immediate

deployment• On-device

debugging and profiling

High-Level C++ Libraries

• Native performance

• Easy hardware and sensor access

• Networking• Full HTML5

engine

Cross-Platform Support• Maximize code re-use for multi-screen applications

Pre-Made Embedded Solutions

• Virtual Keyboard• OTA• Charting,• Data

visualization• 3D

www.qt.io

Thank You!

Recommended