• 13.02.2026
  • Sponsored Article

Wie entwickelt man eine GUI für eingebettete Systeme und wird dabei nicht verrückt?

Grafik zu Embedded‑GUI‑Entwicklung mit digitalem Fahrzeug‑Dashboard und einem Mann, der eine Elektronikplatine hält.

Viele eingebettete Geräte haben altmodische GUIs oder besitzen überhaupt keine GUI. Das bedeutet nicht, dass jedes Produkt ein Full-HD-Display mit einer flüssigen, modernen und absurd animierten grafischen Benutzeroberfläche benötigt. Manche Geräte benötigen überhaupt keine GUI. Die Gewohnheiten und Erwartungen der Benutzer haben sich jedoch im Laufe der Zeit weiterentwickelt, daher planen Hersteller bzw. Ihre Wettbewerber ganz selbstverständlich GUIs für die eingebetteten Systeme, die sie entwickeln.

In diesem Artikel werde ich das Gebiet der GUI-Entwicklung für eingebettete Systeme untersuchen. Wir werden auf praktische Probleme eingehen und darauf, wie man sie lösen kann. Wir werden die häufigsten Themen erklären, wie zum Beispiel:

  • die Wahl eines GUI-Software-Frameworks – Qt, LVGL oder vielleicht etwas anderes?
  • schlechtes UX/UI-Design
  • die Wahl der Hardware-Zielplattform
  • Zugang zu Fachwissen und Kosten – unsere Tipps für schnelle und effiziente GUI-Programmierung.

Was qualifiziert mich, über dieses Thema zu schreiben? Ich bin der Gründer von Somco Software – einem Unternehmen für die Entwicklung eingebetteter Systeme mit starkem Fokus auf GUI, Linux (Buildroot, Yocto, Torizon) und Konnektivität. Jedes Jahr starten wir bis zu 20 neue Projekte für Kunden, die Experten in Design, Implementierung und Deployment von GUIs für ihre Embedded-Systems-Projekte suchen. Früher habe ich selbst programmiert und hatte die Gelegenheit, an einer breiten Palette von GUI-Projekten zu arbeiten, die von Fahrzeugnavigation für einen führenden US-Hersteller bis hin zu medizinischen Geräten zur Behandlung schwerwiegender Erkrankungen reichten.

 

Eine moderne GUI für Ihre eingebetteten Systeme ist kein Luxus mehr

Warum ist das so? Lassen Sie uns das am Beispiel der Automobilhersteller erklären. Trotz einiger Ausnahmen sind die meisten neuen Autos mit einem Cockpit-Display ausgestattet. Nicht unbedingt nur mit einem, sondern oft sogar mit mehreren. Und sie werden immer größer. Auch wenn die Mehrheit der eingebetteten Systeme dieses Maß an „Verrücktheit“ nicht benötigt, bringt eine GUI, die gut aussieht, ästhetisch ist und den Bedürfnissen der Kunden entspricht, Ihr Produkt auf die nächste Stufe.

Nach mehreren Jahren Arbeit in diesem Bereich bin ich zu einigen traurigen Schlussfolgerungen gekommen, und eine davon ist, dass Menschen Bücher nach ihrem Einband beurteilen. Das ist keine Überraschung, und es gibt keinen Grund, sich von der Realität beleidigt zu fühlen. Ein Produkt, das visuell ansprechend ist, hinterlässt einen besseren Eindruck und gibt einem das Gefühl, dass es die eigenen Bedürfnisse besser erfüllen wird. Deshalb sind es bei vielen Kunden von Somco Software deren Marketingabteilungen, die den Wandel vorantreiben, um eine GUI für die von ihnen entwickelten eingebetteten Systeme einzuführen oder zu verbessern.

Natürlich ist es Ihre Aufgabe sicherzustellen, dass dieses Aussehen keine bloße Fassade ist und Ihr Gerät ein hervorragendes Produkt darstellt, aber das ist ein Thema für einen anderen Artikel.

Es gibt noch einen weiteren, praktischen Blickwinkel auf dieses Thema: Kosten und Wartung. Langfristig ist es günstiger (ich weiß, Sicherheitsaspekte einmal außen vor gelassen), einen großen Bildschirm in der Mitte zu haben, anstatt dutzender physischer Schalter, Drehknöpfe und Tasten. Warum mehrere physische Bedienelemente für die Klimaanlage (Ein/Aus, Temperatur, Luftstromrichtung, Lüftergeschwindigkeit usw.) haben, wenn man all das in der Software abbilden kann? Physische Bedienelemente müssen ebenfalls entworfen, produziert und gegebenenfalls ersetzt werden, wenn sie beschädigt werden.

Darüber hinaus öffnen Sie mit dem Übergang zur Software die Tür für Updates. Nehmen wir an, es gibt eine Funktion im Auto oder in Ihrem eingebetteten System, die mit der gesamten Hardware realisiert werden kann, die sich bereits in Ihrem Gerät befindet, aber Sie müssen das Produkt so veröffentlichen, wie es ist, und hatten keine Zeit, diese Funktion zu implementieren. Mit Software können Sie einfach einige Zeit nach der Veröffentlichung ein Update herausgeben. Ein zusätzliches physisches Bedienelement für diese neue Funktion in Geräten zu installieren, die bereits an die Kunden ausgeliefert wurden, wäre hingegen zumindest umständlich.

 

Die Auswahl eines GUI-Software-Frameworks

Qt, LVGL, TouchGFX, Flutter, Slint, Candera, Web-Frameworks, Kotlin, MAUI, Unity, Unreal… Diese Liste könnte wahrscheinlich noch viel länger sein, aber wir haben all diese Frameworks bei verschiedenen Projekten für Embedded-System-GUIs im Einsatz gesehen. Gibt es eine Lösung, die für alle Fälle deutlich besser ist? Natürlich nicht. Jede Technologie hat ihre eigenen Vor- und Nachteile sowie Anwendungsfälle, für die sie sich am besten eignet. Dennoch ist eine solche Entscheidung wichtig, da sie viele Dinge direkt beeinflusst, wie etwa die Wahl der Hardware, aber auch indirekt Ihr Business beeinflusst (Entwicklungskosten, Lizenzen, Lieferzeit).

Es gibt viele Faktoren, die berücksichtigt werden müssen. Einige davon sind:

  • Leistungsanforderungen (FPS, Bootzeit, GPU-Nutzung)
  • Unterstützung der Zielhardware
  • Speicherbedarf
  • Display-Eigenschaften (Touch, Multi-Touch, Auflösung, Farbtiefe)
  • Grafische Fähigkeiten (2D/3D, Anti-Aliasing, Video)
  • Entwicklungsgeschwindigkeit und Time-to-Market
  • Einfache Integration
  • Lizenzierung und Kosten
  • Compliance (wir kennen dieses Thema sehr gut, da Somco Software ein nach ISO 13485 und ISO 9001 zertifiziertes Unternehmen für Embedded-Software ist und wir viel mit Kunden aus dem medizinischen Bereich und anderen regulierten Branchen arbeiten)
  • Reifegrad der Community und des Ökosystems

Auch diese Liste könnte noch viel länger sein. Das Dilemma wird zusätzlich dadurch kompliziert, dass „Embedded Systems“ ein sehr weiter Begriff ist. Ein In-Vehicle-Display, ein großes medizinisches Gerät zur Wirbelsäulenoperation und eine Smartwatch sind alles eingebettete Systeme. Die beste Definition, die ich dafür gehört habe, lautet, dass es sich um ein „geschlossenes System“ handelt.

Die Faustregel lautet also: Sie werden keine gute Entscheidung treffen, wenn Sie Ihre Ziele und das, was Sie bauen müssen, nicht verstehen. Zuerst müssen Sie die Stakeholder (Management, Marketing, Engineering) zusammenbringen und die Anforderungen klären, dann das Budget festlegen, und erst danach können Sie Entscheidungen treffen. Ich kann Ihnen garantieren, dass Sie, wenn Sie den umgekehrten Weg gehen und zuerst ein bestimmtes Framework auswählen, nur weil Sie Python mögen oder aus irgendeinem anderen Grund, am Ende nur darauf wetten und beten können, dass Sie Glück haben und später keine Probleme auftreten.

Eines der bedeutenden Projekte, die wir kürzlich entwickelt haben, war die Embedded-Software für Cutera Inc. – einen Hersteller ästhetischer Lasergeräte aus den Vereinigten Staaten. Somco Software entwickelt verschiedene Aspekte der Software von Cutera, darunter das Yocto-Linux-Image, die Konnektivität zwischen Mikrocontrollern, Sicherheitsupdates und natürlich die eingebettete GUI. Wenn wir also dieses Beispiel verwenden: Was waren die Ziele dieses Kunden?

Sie sind im Beauty-Sektor tätig. Ich habe einmal eine ästhetische medizinische Klinik besucht (für einen Produktworkshop, nicht um mein Aussehen zu verbessern), in der Geräte von Cutera standen. Und ich kann Ihnen sagen, dort sah alles so aus, als wäre es absurd teuer, die Menschen waren reich und glücklich und die Welt war ein besserer Ort. Daher traf Cutera die strategische Entscheidung, dass die GUI ihrer eingebetteten medizinischen Geräte diesen Standards entsprechen muss. Sie benötigt Animationen, 3D und flüssige Übergänge.

Und genau das bestimmte die Gründe, warum Cutera sich an Qt-Entwicklungsexperten wie das bescheidene Somco gewandt hat. Dieses Framework ist die am häufigsten verwendete Technologie in unserem Unternehmen und der Kern unseres Technologie-Stacks. 

Werbegrafik für den Download des Whitepapers Embedded GUI Frameworks Comparison, welches auf einem Tablet gezeigt wird (rechts), während links eine Frau in einer Laborumgebung gezeigt wird, die am PC das Modell eines Roboterarms steuert.

Der ultimative Vergleich von GUI-Frameworks

Obwohl das Team der Embedded World wirklich sehr nett ist, haben sie eine Längenbegrenzung für diesen Gastartikel festgelegt, sodass wir hier keinen Platz haben, um die Vor- und Nachteile jeder einzelnen Technologie zu beschreiben. Wir haben Ihnen die Entscheidungsfaktoren und ein ausführliches Beispiel vorgestellt, daher können wir im Moment nur sagen, dass Sie unser kostenloses Whitepaper „Embedded GUI Frameworks Comparison“ erhalten sollten, das dieses Thema vertieft und außerdem detaillierte Performance-Benchmarks (FPS, GPU, CPU, Speicher) von Qt, LVGL, HTML, Slint und Flutter präsentiert. Wir haben außerdem einen ähnlichen Vergleich zwischen Qt und Android (Kotlin, Jetpack Compose) Stacks durchgeführt. 

Schlechtes UX- und UI-Design

Somco bietet umfassende Dienstleistungen zur Bereitstellung kompletter GUIs für eingebettete Systeme an, daher beschäftigen wir eigene Designer und arbeiten eng zusammen, um neue GUIs in höchster Qualität zu liefern. Was ist das Rezept, um Ihre Benutzer zu begeistern? UX bezieht sich nicht nur auf die Software, sondern auch auf das Gehäuse des Geräts (einige davon präsentieren wir an unserem Stand), daher ist dieser Tipp universell.

Das mag absurd einfach klingen, aber man muss seine Nutzer fragen. Man muss verstehen, wie sie das Produkt wirklich benutzen (die GUI oder das Gerät als Ganzes) und wer es benutzt. Wenn Sie eine GUI für einen Bagger oder eine Maschine entwickeln, die in einer Fabrik eingesetzt wird, bedeutet das in der Regel zwei Dinge: große Männerhände und dicke Handschuhe. Daher müssen Ihre Buttons riesig sein.

Wenn Sie ein medizinisches Gerät für Operationen entwickeln, haben Sie es mit zwei Schichten Nitrilhandschuhen, einer Schutzfolie auf dem Touch-Display und spezieller Beleuchtung zu tun. Und es ist die Aufgabe der Designer, die richtigen Fragen zu stellen, Workshops zu organisieren und all das herauszufinden.

Darstellung eines UX/UI‑Designprozesses für eine Embedded‑GUI mit Interface‑Elementen und Roboterarm‑Visualisierung

Die Wahl der Zielhardware

Die Wahl der Zielhardware ist wiederum ein sehr breites Thema, das eng mit der Wahl des Software-Frameworks verknüpft ist und umgekehrt. Auch hier lautet der Tipp, dass Sie verstehen müssen, was Sie bauen wollen und welche geschäftlichen Ziele Sie verfolgen. Somco Software hatte Kunden, die einen winzigen Mikrocontroller von STMicroelectronics oder einen ESP32 einsetzen mussten und dennoch eine moderne GUI benötigten, gleichzeitig haben wir aber auch Kunden, die sich für einen leistungsstarken Mini-PC entscheiden und denen die Kosten egal sind.

Sie müssen also verschiedene Optionen bewerten, aber das Problem entsteht, wenn Ihnen nicht genügend Fachwissen zur Verfügung steht, zum Beispiel weil sich das neue Projekt von denen unterscheidet, die Sie in der Vergangenheit entwickelt haben. In einer solchen Situation empfehle ich, eine Beratung von Somco zu diesem Thema in Anspruch zu nehmen, da wir Partner und Integratoren von Unternehmen wie Toradex, SoMLabs, Riverdi, ST und NXP sind und diese Entscheidungen für Sie bewerten sowie die besten Optionen empfehlen können.

 

Mangel an Fachwissen und Kosten

Meine Kunden stehen in der Regel vor einigen spezifischen Herausforderungen.

Erstens müssen Sie eine Embedded-GUI in Qt oder in einem ähnlichen Framework entwickeln, aber Sie verfügen schlicht nicht über alle dafür erforderlichen Fähigkeiten in Ihrem Team. Entweder fehlen die entsprechenden Kompetenzen, oder Ihre besten Ingenieure sind bereits vollständig mit anderen Aufgaben ausgelastet. Oder die Fähigkeiten, die Sie benötigen, werden nur für einige Wochen oder wenige Monate gebraucht, was es noch schwieriger macht, eine feste Anstellung zu rechtfertigen.

Zweitens ist die Rekrutierung langsam und schwierig. Selbst wenn es Ihnen gelingt, einen Kandidaten zu finden, ist es sehr schwer, dessen tatsächliche Erfahrung zu überprüfen, wenn Ihnen selbst diese Fähigkeiten fehlen. Das schafft ein hohes Risiko für Termine, Qualität und den Erfolg des Projekts.

Fangen Sie klein an und reduzieren Sie Risiken so früh wie möglich. Erstellen Sie einen groben Prototypen auf Ihrer realen Hardware, um Performance und Speichergrenzen zu validieren, bevor die vollständige Entwicklung beginnt. Nutzen Sie Referenzdesigns, Demo-Projekte und UI-Komponenten Ihres Framework-Anbieters wieder. Dokumentieren Sie Entscheidungen und Engpässe. Kurze externe Reviews oder Audits sind oft günstiger, als Monate später eine falsche Architektur korrigieren zu müssen.

Kurz gesagt: Erfolgreiche Embedded-GUI-Entwicklung bedeutet, frühzeitig fundierte technische Entscheidungen zu treffen und diese schnell zu validieren. Ein wenig Struktur, Prototyping und Realismus in Bezug auf die eigenen Grenzen sparen deutlich mehr Zeit und Geld als jede Optimierung in einer späten Projektphase.