You are here: Home / OSADL / News / 
2017-10-22 - 15:55
2009-06-02 12:00 Age: 8 Years

Do you need a graphical user interface for your embedded system?

By: Carsten Emde

The Linux kernel is ideally suitable for all variants of embedded systems - but many devices need a GUI on top of it. The Qt toolkit and services from basysKom make it possible.

Traditionally, Unix systems - and Linux in particular - use a three-level graphics system to realize a graphical user interface (GUI) on a desktop computer

  • Graphics server (often the X Window System)
  • Application programming interface (API) library such as FLTK, GTK, Qt, WxWidgets etc.
  • Window manager that normally is built on top of one of the available APIs (GNOME use GTK, KDE uses Qt, etc.)

In embedded systems, however, things may be different, since the size of the available memory and the given performance of the CPU require to reduce the number of interfaces - preferably to a single library with direct access of the graphics hardware. In cases where the same GUI must be made available for desktop and embedded systems, it is highly desirable that the API supports direct graphics access and also the use of a graphics server. An overview about GUI toolkits is available here.

Qt and Embedded Qt

The widely used GUI toolkit Qt (pronounced as "cute") consists of a class library, development tools and an integrated development environment; it is running on a number of different operating systems and platforms and used successfully in many embedded systems. Originally developed by the independent Norwegian software company Trolltech, Qt was acquired by Nokia in June 2008 when Trolltech became a wholly owned subsidiary of Nokia. Initially, Qt was licensed under a special proprietary license that was incompatible with the Open Source Definition as setup by the Open Source Initiative. Lateron, "more compatible" versions of the license were released. Finally, since January 2009, Qt is distributed under the terms of the GNU Lesser General Public License (GNU LGPL) so there is no doubt that Qt is Free and Open Source Software. However, Qt may also be licensed under a commercial license, if requested.

OSADL member basyKom who joined us in January 2008 OSADL member basysKom, Darmstadt, Gemanyis specialized on services around Qt. They offer consulting, design, implementation of entire applications and support related to Qt. Over their many years of expertise with using Qt in embedded systems, they have often seen compatibility issues between a given set of required Qt features and a particular graphics hardware. basyKom is, therefore, offering a new service called The Qt Compliance Check. But let them speak for themselves: "This check gives you reliable decision support for the deployment of Qt on your hardware. It is based on careful examination of each component, its functionality and compliance with Qt and has a duration of five working days. The results will be made available in a report containing a structured overview of the test results. Either you receive a cost estimation to fully enable Qt on your hardware or, ideally, a ready-to-go startup guide."