Our Qt embedded system is displayed on a monitor mounted in portrait orientation. The system runs the Wayland compositor Weston as a window manager. HMI applications are shown rotated by 90 degrees – in landscape orientation. The system toolbar of Weston is visible. How can we configure Weston so that the applications are shown...
Category: Qt
Migrating a Harvester HMI from Qt 5.12 to Qt 6.0
December 2020 saw the launch of Qt 6 – the first new major version since 2012. I wanted to find out how fit Qt 6.0 is for Qt embedded systems. I took the driver terminal of the ROPA sugar beet harvesters and migrated it from Qt 5.12 to Qt 6.0 as a side project....
Burkhard on Qt Embedded Systems: No. 13
The December issue of my newsletter went out to 284 people. Please sign up here, if you want to enjoy the full contents. The last three episodes are complimentary for your sign-up. Here is the table of contents of Episode 13 (December 2020). My Blog Posts Determining the Architecture of Qt Embedded Systems: Getting...
Determining the Architecture of Qt Embedded Systems: Getting Started
Which system-on-chip is best suited for your Qt embedded system? Should you build a custom Linux system with Yocto, use a container OS or a desktop Linux? Should you use Qt Commercial or Qt LGPLv3? How will the system be updated? What are the operating conditions of the system? How does the system communicate...
Burkhard on Qt Embedded Systems: No. 12
The November issue of my newsletter went out to 254 people. As it is the 1st anniversary of my newsletter, you can find the full content here. If you like it, please sign up for the monthly newsletter. The last three episodes are complimentary for your sign-up. Here is the table of contents of Episode...
Cross-Compiling Qt Embedded Applications with QtCreator and CMake
We change the code of our Qt application in QtCreator and press the Run button to try the changes on an embedded device. QtCreator cross-compiles the application, deploys it to the device and runs it on the device. QtCreator performs these steps in a breeze, because we spent quite some time to define a...
Burkhard on Qt Embedded Systems: No. 11
The October issue of my newsletter went out to 242 people. Please sign up here, if you want to enjoy the full contents. The last three episodes are complimentary for your sign-up. Here is the table of contents of Episode 11 (October 2020). My Blog Posts Book Review: “A Philosophy of Software Design” by John...
Burkhard on Qt Embedded Systems: No. 10
The September issue of my newsletter went out to 219 people. Please sign up here, if you want to enjoy the full contents. The last three episodes are complimentary for your sign-up. Here is the table of contents of Episode 10 (September 2020). My Blog Posts Breaking Dependency Cycles in Qt Applications. My Thoughts on...
Breaking Dependency Cycles in Qt Applications
A fairly common anti-pattern found in Qt applications is to derive a class MyApplication from QApplication and to have it hand out pointers to a dozen or more major components of the application. Similar to Qt’s qApp macro, these applications introduce a macro myApp pointing to the single MyApplication object. The global variable myApp...
CppDepend: A C++ Dependency Analyser
I evaluated the dependency analyser CppDepend on a real-life embedded application. My goal was to find all dependency cycles between classes in the application. I know that the application contains 50+ dependency cycles. CppDepend only found less than 10% of the cycles. Without rewriting the the source code, CppDepend would have found no cycles...