Qt for Automation Overview


Qt for Automation includes several components built on Qt and the Qt Creator integrated development environment.


Cross-platform Qt development libraries and core tools are developed through an open-source collaboration model. Qt is a full development framework designed to streamline the creation of applications and user interfaces for desktop, embedded, and mobile platforms.

The Qt libraries provide high-level APIs for a large variety of both non-GUI and GUI related functionality. For UI creation, Qt provides a number of approaches: traditional C++, declarative UI design with Qt Quick or HTML5/hybrid user interfaces with the Qt WebEngine module.

For overview about Qt libraries see the Qt reference documentation.

Qt modules that are especially useful for automation:

  • Qt Virtual Keyboard - complete virtual keyboard solution with word-prediction and multiple languages supported.
  • Qt Quick Controls 2 - provides a set of controls for building complete user interfaces in Qt Quick.
  • Qt Quick Compiler - enables compiling .qml source files into application binaries, improving load times and security for code assets.
  • Qt WebEngine - provides a web browser engine based on the Chromium project.
  • Qt Serial Bus - access various industrial serial buses and protocols such as ModBus.
  • Qt Quick WebGL Streaming Plugin - allows running Qt Quick applications remotely in a WebGL-enabled browser.

Development Environment

The development environment in Qt for Automation is built around Qt Creator.

Qt Configuration Tool

The Qt Configuration Tool allows browsing and selecting features that are included in the Qt build configuration, making it easy to optimize Qt libraries for minimal footprint, performance and start-up time.

Automation APIs

Qt for Automation comes with additional modules for machine-to-machine communication and building automation:


MQTT (Message Queue Telemetry Transport) is an extremely lightweight machine-to-machine (M2M) connectivity protocol utilizing the publish-and-subscribe paradigm, and is suitable for carrying telemetry data with minimal overhead.


KNX is a stardard for controlling home and building management equipment, such as lighting, blinds and shutters, security systems, heating and energy management, and more.


Device deployment can be done directly from the Qt Creator IDE to a device connected via USB or local area network, or to an emulator running the same full software stack as the devices.

As with any Qt application, the same project can be deployed to desktop or mobile targets as well.

© 2017 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.