Internet of Things and Qt
Qt Offering for the Future of Embedded Industries
Dr Tuukka AhoniemiProduct Manager
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!