Ein lauffähiges Linux reicht für ein Embedded-Produkt nicht aus

Ein Linux-Image, das auf einem Entwicklungsboard läuft, genügt für einen Prototypen – für ein seriennahes und langfristig betriebenes Produkt jedoch nicht. Softwarestände, Builds, Hardware- und Produktvarianten sowie Sicherheitsupdates müssen nachvollziehbar, kontrolliert und langfristig beherrschbar bleiben. Dazu sind erforderlich:

Definierte SoftwarebasisDefinierte Softwarebasis
Welche Pakete, Bibliotheken, Dienste und Konfigurationen gehören verbindlich zum Produkt? Eine klar definierte Softwarebasis verhindert zufällige Abhängigkeiten und schafft nachvollziehbare Release-Stände.
Reproduzierbare BuildsReproduzierbare Builds
Ein freigegebenes Image muss aus versionierten Quellen, Konfigurationen und Build-Definitionen erneut erzeugbar sein. Das reduziert Abhängigkeiten von einzelnen Personen und vereinfacht Fehleranalyse, Pflege und Auditierbarkeit.
HardwareintegrationHardwareintegration
Bootloader, Kernel, Device Tree, Treiber und Board Support Package müssen exakt zur verwendeten Hardware passen. Änderungen an Board, SoC oder Peripherie erfordern zwingend Anpassungen der Software.
Produkt und KundenvariantenProdukt- und Kundenvarianten
Unterschiedliche Geräteversionen, Displays, Schnittstellen, Hardwarestände oder Kundenvarianten benötigen eine gemeinsame technische Basis. Ohne eine saubere Struktur entstehen schnell getrennte Einzelstände, die nur noch mit hohem Aufwand gepflegt werden können.
Security und UpdatesSecurity und Updates
Für Sicherheitsbewertungen und Updates muss transparent sein, welche Komponenten in einem Produkt-Release enthalten sind. Neue Softwarestände müssen kontrolliert erstellt, getestet und freigegeben werden können.
Langfristige WeiterentwicklungLangfristige Weiterentwicklung
Kernel, BSPs, Hardwareplattformen und Softwarekomponenten entwickeln sich weiter oder werden abgekündigt. Eine Embedded-Linux-Plattform muss deshalb so aufgebaut sein, dass sie aktualisiert, migriert oder im Bedarfsfall grundlegend erneuert werden kann.

Ein Embedded-Produkt braucht kein beliebiges Linux-Image, sondern eine kontrollierbare Plattform für Entwicklung, Release, Betrieb und Weiterentwicklung.

Yocto schafft eine kontrollierbare Basis für Embedded Linux

Das Yocto Project ermöglicht individuelle Embedded-Linux-Systeme, die aus definierten Komponenten, Konfigurationen und Metadaten aufgebaut werden. Mit OpenEmbedded und BitBake lassen sich Hardware, Kernel, Root Filesystem, Anwendungen und Varianten in einem kontrollierten Build-Prozess zusammenführen.

Yocto ist besonders dann ein starker Ansatz, wenn ein Produkt über mehrere Jahre gepflegt wird, mehrere Varianten unterstützt oder tief an Hardware und Systemsoftware angepasst werden muss.

Exakt definierte Produkt-Images

Ihr Image enthält nur die Komponenten, Dienste und Konfigurationen, die Ihr Produkt benötigt.

Kontrollierte Abhängigkeiten

Softwarestände und Abhängigkeiten bleiben nachvollziehbar, testbar und gezielt aktualisierbar.

Wiederverwendbare Plattformarchitektur

Hardware-, Produkt- und Kundenanpassungen werden sauber getrennt, damit gemeinsame Komponenten wiederverwendbar bleiben.

Variantenfähigkeit über Gerätegenerationen hinweg

Mehrere Boards, SoCs und Produktvarianten lassen sich auf einer gemeinsamen Plattformbasis entwickeln und pflegen.

Wichtig für die Praxis:

Yocto schafft eine wichtige Grundlage für reproduzierbare Builds. Entscheidend sind jedoch auch versionierte Quellen, definierte Layer und Konfigurationen, kontrollierte Abhängigkeiten sowie eine stabile Build- und Release-Umgebung. So lassen sich freigegebene Images nachvollziehbar erneut erzeugen, prüfen und für weitere Produktversionen weiterführen.

Projektbeispiel: Linux-BSP und Treiber für i.MX8 Plattformen unter Yocto

Wir setzen Yocto nicht nur als theoretischen Ansatz ein, sondern entwickeln damit individuelle Plattformen für Embedded-Systeme. Ein Beispiel ist die Entwicklung eines kompletten Linux BSP inklusive der Anbindung eines joy-it Mini-Kameramoduls unter Linux Yocto für die Data Modul AG.

Wo wir bei Embedded Linux unterstützen

Sie planen ein Linux-basiertes Gerät und möchten Distribution, Hardwareintegration, Anwendungen, Security und spätere Pflege von Beginn an belastbar aufsetzen? Wir entwickeln die passende Plattform – von der Auswahl des Distributionsansatzes (bevorzugt Yocto, aber auch für andere Distributionen verfügen wir über entsprechende Fachkompetenz) über BSP, Kernel und Image bis zur Integration in Ihren Build- und Release-Prozess.

Neue Embedded-Linux-Plattform entwickeln

Sie planen ein Linux-basiertes Gerät und möchten Distribution, Hardwareintegration, Anwendungen, Security und spätere Pflege von Beginn an belastbar aufsetzen?

Neue Plattform planen

Bestehendes Linux-System stabilisieren oder modernisieren

Ihr Embedded-Linux-System ist über Jahre gewachsen, nur eingeschränkt reproduzierbar oder nicht mehr auf aktuelle Anforderungen vorbereitet? Wir analysieren beispielsweise Ihre bestehenden Build-Umgebungen, Distributionen und Hardwareabhängigkeiten und entwickeln einen nachvollziehbaren Weg für Stabilisierung, Modernisierung oder Migration.

Bestehendes System bewerten

Hardware- oder Produktgeneration wechseln

Ein Board, SoC, BSP oder Kernel muss ersetzt werden? Oder die bisherige Plattform lässt sich nicht mehr wirtschaftlich pflegen? Wir unterstützen bei der Portierung auf neue Hardware, der Migration auf aktuelle Softwarestände und der strukturierten Weiterentwicklung bis hin zum vollständigen Embedded Redesign.

Migration und Redesign besprechen

Embedded Linux vollständig entwickeln, anpassen und weiterführen

Wir unterstützen Sie über den gesamten Lebenszyklus Ihrer Embedded-Linux-Plattform. Dabei übernehmen wir einzelne technische Aufgaben ebenso wie die vollständige Konzeption, Umsetzung und Weiterentwicklung.

Wir sind nicht auf eine bestimmte Hardwareplattform, einen SoC-Hersteller oder eine Linux-Distribution festgelegt. Dadurch können wir bestehende Systeme übernehmen, Alternativen bewerten und die technische Lösung umsetzen, die zu Ihrem Produkt passt.

Ob Neuentwicklung, historisch gewachsenes Bestandssystem oder anstehender Hardwarewechsel: Wir analysieren die technische Ausgangslage und entwickeln einen passenden Weg für Ihre Linux-Plattform.

Das umfasst beispielsweise:
  • Bewertung vorhandener Linux-Distributionen und Build-Umgebungen
  • Einordnung von Yocto, Ubuntu, Debian, Buildroot oder kommerziellen Embedded-Linux-Ansätzen
  • Analyse von Produktanforderungen, Wartungszeitraum und Sicherheitszielen
  • Architektur für Produktvarianten und Hardwaregenerationen
  • Planung von Migration, Modernisierung oder vollständigem Redesign
Ihr Ergebnis

Eine nachvollziehbare Plattformstrategie mit passendem Distributionsansatz, klaren technischen Prioritäten und einer belastbaren Perspektive für die Weiterentwicklung.

Die Linux-Plattform muss exakt zur eingesetzten Hardware passen. Wir integrieren und konfigurieren die hardwarenahen Komponenten – vom Bootvorgang bis zur zuverlässigen Anbindung der benötigten Peripherie.

Das umfasst beispielsweise:
  • Board Support Packages und Board Bring-up
  • Bootloader-Integration und -Konfiguration
  • Kernel-Konfigurationen und Kernel-Patches
  • Device Tree, Treiber und hardwarenahe Dienste
  • Integration von Ethernet, WLAN, Mobilfunk, CAN, SPI, I²C, USB, Display oder Kamera
  • Anpassung an neue Boards, SoCs und Hardwaregenerationen
Ihr Ergebnis

Eine zuverlässige Hardwarebasis, auf der Bootloader, Kernel, Treiber und Peripherie kontrolliert zusammenspielen.

Wir entwickeln schlanke, funktionsorientierte Images und integrieren die Software, die Ihr Produkt benötigt: Systemdienste, Middleware, Anwendungen, Konfigurationen und produktspezifische Sicherheitsmechanismen.

Das umfasst beispielsweise:
  • Yocto-Layer, Rezepte und Image-Konfigurationen
  • Integration eigener Anwendungen und Services
  • Paket- und Abhängigkeitsmanagement
  • Trennung von Hardware-, Plattform-, Produkt- und Variantenlogik
  • Anpassung bestehender Distributionen
  • Aufbau individueller Linux-Images statt Beschränkung auf Standardimages
Ihr Ergebnis

Eine produktspezifische Embedded-Linux-Distribution mit klar definierten Komponenten, Konfigurationen und Varianten.

Eine Produktplattform muss unabhängig von einzelnen Entwicklungsrechnern und Personen gebaut, geprüft und freigegeben werden können. Deshalb integrieren wir Build-, Test- und Release-Prozesse in bestehende oder neu aufzubauende CI-Infrastrukturen.

Das umfasst beispielsweise:
  • Automatisierte Image-Builds
  • Versionierte Layer, Konfigurationen und Quellen
  • Continuous Integration für Build- und Integrationsprüfungen
  • Automatisierte Bereitstellung von Release-Artefakten
  • Nachvollziehbare Versionierung und Freigaben
  • Integration in bestehende Entwicklungs-, Test- und Release-Prozesse
Ihr Ergebnis

Automatisierte, nachvollziehbare und versionierte Build- und Release-Prozesse für Ihre Embedded-Linux-Plattform.

Auch bestehende Embedded-Linux-Produkte lassen sich weiterentwickeln. Wir analysieren vorhandene Plattformen, stabilisieren historisch gewachsene Build-Systeme und entwickeln eine technische Perspektive für die nächsten Produktjahre.

Das umfasst beispielsweise:
  • Migration auf aktuelle Yocto-, Kernel- oder BSP-Versionen
  • Aktualisierung von Systemsoftware und Abhängigkeiten
  • Portierung auf neue Boards oder SoCs
  • Konsolidierung nicht mehr nachvollziehbarer Build-Umgebungen
  • Vorbereitung von Update- und Wartungsstrategien
  • Vollständige Erneuerung im Rahmen eines Embedded Redesigns
Ihr Ergebnis

Eine langfristig planbare Embedded-Linux-Plattform, die sich aktualisieren, auf neue Hardware übertragen oder bei Bedarf gezielt neu aufsetzen lässt.

Herstellerunabhängige Technologieentscheidungen, die zu Ihrem Produkt passen

Die passende Embedded-Linux-Plattform hängt von vielen Faktoren ab: von der Hardware, dem Funktionsumfang, dem Wartungszeitraum, vorhandener Software, Sicherheitszielen und wirtschaftlichen Rahmenbedingungen.

Deshalb arbeiten wir herstellerneutral. Wir sind nicht an einzelne SoC-, Board- oder Distributionsanbieter gebunden und können Technologien anhand ihrer tatsächlichen Eignung für Ihr Produkt bewerten.

Egal ob Yocto oder eine andere Distribution (Ubuntu, Debian, kommerziell) - entscheidend ist nicht das Label, sondern die technische und wirtschaftliche Passung für Ihr Produkt.

Das bedeutet für Sie:

  • Sie erhalten keine Empfehlung, die sich an einem festen Herstellerportfolio orientiert.
  • Bestehende Hardware und vorhandene Linux-Systeme können berücksichtigt und weiterentwickelt werden.
  • Bei einem Plattformwechsel bewerten wir technische und wirtschaftliche Alternativen offen.
  • Sie behalten Entscheidungsfreiheit bei neuen Hardwaregenerationen, geänderten Anforderungen oder langfristigen Redesigns.

Alternative Distributionsansätze

Yocto ist besonders geeignet, wenn eine langlebige, individuell aufgebaute und variantenfähige Produktplattform benötigt wird. In anderen Ausgangssituationen können jedoch auch Ubuntu, Debian, Buildroot oder kommerzielle Embedded-Linux-Distributionen sinnvoll sein.

Wir empfehlen keine Distribution aus Prinzip. Wir entwickeln die Embedded-Linux-Basis, die zu Ihrem Gerät, Ihrer Organisation und Ihrem Produktlebenszyklus passt.

Besonders sinnvoll, wenn …

  • ein maßgeschneidertes Linux-Image benötigt wird,
  • mehrere Geräte-, Hardware- oder Kundenvarianten entstehen,
  • Build und Release langfristig kontrollierbar bleiben müssen,
  • BSP, Kernel, Anwendungen und Produktlogik in einer Plattform zusammengeführt werden sollen,
  • eine klare Basis für Weiterentwicklung, Migration und Produktpflege geschaffen werden soll.

Einzuplanen ist …

Yocto ist leistungsfähig, aber kein Schnellstart-Image. Layer-Struktur, Build-Infrastruktur, Upstream-Strategie und langfristige Pflege müssen von Beginn an sauber geplant und umgesetzt werden.

Besonders sinnvoll, wenn …

  • ein umfangreiches Paket- und Entwicklerökosystem genutzt werden soll,
  • leistungsfähige und vernetzte Geräte mit standardnaher Softwarebasis entstehen,
  • schnelle Anwendungsentwicklung und bekannte Linux-Werkzeuge im Vordergrund stehen,
  • vorhandene Ubuntu-Kenntnisse oder bestimmte Container- und Update-Konzepte sinnvoll eingebunden werden können.

Einzuplanen ist …

Bei stark minimierten, tief angepassten oder besonders langfristig betriebenen Produkten muss geprüft werden, ob Hardwareunterstützung, Release-Zyklus, Update-Modell und Anpassbarkeit zur Produktstrategie passen.

Besonders sinnvoll, wenn …

  • ein breites Angebot etablierter Softwarepakete benötigt wird,
  • Server-, Edge- oder IT-nahe Funktionen eine wichtige Rolle spielen,
  • vorhandene Anwendungen und Erfahrung aus dem Debian-Umfeld eingebracht werden sollen,
  • leistungsfähige Hardwareplattformen und ein standardnahes Linux-Umfeld gewünscht sind.

Einzuplanen ist …

Auch bei Debian-basierten Systemen benötigt ein Produkt ein klares Konzept für Paketstände, Konfigurationen, reproduzierbare Images, Sicherheitsupdates und Freigabeprozesse.

Besonders sinnvoll, wenn …

  • ein klar abgegrenztes und sehr schlankes System gefragt ist,
  • der Software-Stack überschaubar bleibt,
  • geringe Komplexität und kurze Build-Wege Vorrang haben,
  • keine umfangreiche Plattform mit vielen Varianten gepflegt werden muss.

Einzuplanen ist …

Bei großen Produktfamilien, komplexem Variantenmanagement oder langfristig strukturiertem Distributionsmanagement bietet Yocto häufig die umfassenderen Möglichkeiten.

Besonders sinnvoll, wenn …

  • vertraglich definierter Herstellersupport benötigt wird,
  • bestimmte Compliance-, Zertifizierungs- oder Serviceanforderungen bestehen,
  • ein kommerzielles Wartungsmodell zur Produktstrategie passt,
  • ein Anbieter über den gewünschten Produktzeitraum passende Unterstützung für Hardware und Software bieten kann.

Einzuplanen ist …

Lizenzmodell, Anbieterbindung, tatsächliche Hardwareunterstützung und Anpassbarkeit sollten langfristig zum Produktkonzept passen.

Technische Architektur und Layer-Struktur

Eine wartbare Yocto-basierte Distribution entsteht nicht durch eine einzelne Konfigurationsdatei. Entscheidend ist eine Architektur, die wiederverwendbare Plattformanteile von hardwarespezifischen und produktspezifischen Anpassungen trennt.

Die Layer-Struktur von Yocto bietet dafür eine geeignete Grundlage. Sie ermöglicht es, Verantwortlichkeiten klar zu gliedern und Änderungen gezielt in der richtigen Ebene vorzunehmen.

1. Hardware und BSP

Diese Ebene umfasst die Hardware und hardwarenahen Bestandteile:

  • SoC und Board Support Package
  • Bootloader
  • Kernel und Kernel-Konfiguration
  • Device Tree
  • Treiber und Schnittstellenanbindung
  • hardwarenahe Konfigurationen

Sie bildet die Grundlage dafür, dass das Linux-System zuverlässig auf dem jeweiligen Board und mit der benötigten Peripherie funktioniert.

2. Basisplattform

In der Basisplattform werden gemeinsame technische Komponenten zusammengeführt, die mehrere Produkte oder Varianten nutzen können:

  • Systemdienste
  • Netzwerkfunktionen
  • Middleware
  • grundlegende Security-Bausteine
  • Logging und Diagnose
  • gemeinsame Konfigurationen

Diese Ebene reduziert Doppelentwicklungen und erleichtert eine einheitliche Pflege der Plattform.

3. Produktfunktion

Hier befinden sich die Funktionen, die Ihr konkretes Gerät ausmachen:

  • Anwendungen und Benutzeroberflächen
  • Gerätekonfigurationen
  • Kommunikationsschnittstellen
  • fachliche Logik
  • produktspezifische Dienste
  • Integration externer Systeme und Komponenten

Damit bleibt die Produktsoftware klar von der darunterliegenden Hardware- und Plattformlogik getrennt.

4. Varianten und Releases

Unterschiede zwischen Geräteversionen, Kundenanforderungen, Märkten oder Hardwaregenerationen werden gezielt abgebildet. Dazu gehören auch kundenspezifische Anwendungen und Funktionen, die den eigentlichen Mehrwert des Geräts ausmachen. 

Das ermöglicht beispielsweise:

  • Varianten für unterschiedliche Boards oder SoCs
  • unterschiedliche Displays, Schnittstellen oder Speichergrößen
  • kundenspezifische Applikationen, Funktionen und Konfigurationen
  • regionale oder regulatorische Ausprägungen
  • parallele Pflege mehrerer Produktgenerationen

Security und Updates müssen Teil der Plattformstrategie sein

Sicherheit entsteht nicht allein durch eine bestimmte Linux-Distribution. Sie benötigt Transparenz über den Softwarebestand, eine kontrollierte Build- und Release-Strecke sowie ein zum Produkt passendes Update- und Betriebskonzept im Rahmen der Embedded Security.

Eine definierte Embedded-Linux-Plattform schafft die Voraussetzung, um eingesetzte Komponenten nachvollziehbar zu verwalten, Sicherheitsrisiken zu bewerten und Korrekturen reproduzierbar bereitzustellen.

Transparenz über den SoftwarebestandTransparenz über den Softwarebestand
Definierte Images, versionierte Build-Konfigurationen und klar zugeordnete Softwarekomponenten machen nachvollziehbar, welche Bestandteile zu einem konkreten Produkt-Release gehören. Das ist eine wichtige Grundlage für Wartung, Fehleranalyse und Sicherheitsbewertungen.
Schutz der System- und UpdateketteSchutz der System- und Updatekette
Abhängig von Produkt, Einsatzumgebung und Bedrohungsmodell können Sicherheitsmechanismen in die Plattform integriert werden. Dazu gehören beispielsweise abgesicherte Bootketten, signierte Images, Rechtekonzepte und kontrollierte Update-Mechanismen.
Weiterentwicklung im FeldWeiterentwicklung im Feld und über Generationen
Sicherheitskorrekturen, Funktionsupdates und technische Modernisierungen müssen getestet, freigegeben und reproduzierbar bereitgestellt werden. Wenn die bestehende Linux-Basis an Grenzen stößt, unterstützen wir bei Migration, Hardwarewechsel oder einem vollständigen Embedded Redesign.

Wichtig: Yocto ersetzt keine umfassende Updatefähigkeit und kein umfassendes Security-Konzept. Es schafft jedoch eine kontrollierbare Grundlage, auf der sich Sicherheitsmaßnahmen, Updateprozesse und langfristige Pflege strukturiert umsetzen lassen.

So läuft ein Embedded-Linux-Projekt mit der SIGMA

Ausgangslage klären

Ausgangslage & Ist-Zustand

Wir erfassen Anforderungen, Hardware, Software sowie Ziele für Security, Updates und Produktpflege. Bestehende Systeme prüfen wir bei Bedarf in einer beauftragten Analysephase.

Zielplattform festlegen

Zielplattform festlegen

Wir entwickeln die passende Architektur und definieren Distributionsansatz, Hardwareintegration und Vorgehen.

Plattform umsetzen

Plattform umsetzen

Wir entwickeln oder modernisieren BSP, Kernel, Distribution, Anwendungen und Produktvarianten.

Testen und freigeben

Testen und freigeben

Builds, Hardwareintegration und Funktionen werden geprüft. Releases entstehen nachvollziehbar und versioniert.

Übergeben und weiterentwickeln

Übergeben und weiterentwickeln

Wir dokumentieren die Plattform, ermöglichen Know-how-Transfer und unterstützen bei Updates, Migrationen oder Redesigns.

FAQ

Yocto ist besonders sinnvoll, wenn ein individuell aufgebautes Linux-System benötigt wird, das langfristig gepflegt, für mehrere Varianten genutzt oder tief an Hardware und Produktfunktionen angepasst werden soll. Typische Kriterien sind kontrollierte Build-Prozesse, definierte Softwarestände, schlanke Images, Variantenfähigkeit und die Integration in CI- und Release-Prozesse.

Nicht pauschal. Yocto, Ubuntu und Debian verfolgen unterschiedliche Ansätze und können je nach Produkt sinnvoll sein. Yocto bietet besondere Vorteile bei stark angepassten, langlebigen und variantenreichen Embedded-Produkten. Ubuntu oder Debian können passend sein, wenn ein umfangreiches Paketökosystem, vorhandene Software oder eine standardnähere Umgebung im Vordergrund stehen. Entscheidend sind die Anforderungen Ihres Produkts.

Ja, je nach Ausgangssituation kann eine bestehende Plattform schrittweise oder vollständig auf eine Yocto-basierte Distribution überführt werden. Dazu analysieren wir zunächst Hardwareunterstützung, Anwendungen, Abhängigkeiten, Build-Prozess und Wartungsbedarf. Auf dieser Grundlage entsteht eine geeignete Migrationsstrategie.

Yocto kann eine kontrollierte Grundlage für Sicherheitsupdates schaffen, weil Softwarebestandteile, Versionen und Build-Konfigurationen nachvollziehbar definiert werden. Für die Verteilung von Updates auf Geräte im Feld wird jedoch zusätzlich ein passendes Update-Konzept benötigt – etwa mit signierten Images, Update-Mechanismen, Rollback-Strategien und einer geeigneten Betriebsorganisation.

Ja. Eine sauber strukturierte Layer-Architektur ermöglicht es, gemeinsame Plattformbestandteile von hardware- und produktspezifischen Anpassungen zu trennen. Dadurch können verschiedene Boards, SoCs, Gerätevarianten oder Kundenanforderungen auf einer gemeinsamen Basis aufgebaut und gepflegt werden.

Ja. Wir können bestehende Yocto-Umgebungen analysieren, stabilisieren, erweitern und modernisieren. Das betrifft beispielsweise historisch gewachsene Layer-Strukturen, nicht mehr reproduzierbare Builds, veraltete Yocto- oder Kernel-Versionen, neue Hardwareanforderungen oder die Integration in CI- und Release-Prozesse.

Sprechen Sie mit uns!

Lösungen für Ihre Branche und Ihre Prozesse stellen wir Ihnen gerne vor. Sprechen Sie mit den Spezialisten für den Mittelstand.

Jetzt anfragen
Roxana Bergt
Roxana BergtVertrieb | Projektmanagement Embedded