Jetpack oder Yocto? Warum wir für hunderte Feldgeräte umsteigen
NVIDIA Jetpack ist großartig für den Einstieg. Sie flashen ein Jetson-Modul, haben ein funktionierendes Ubuntu mit allen NVIDIA-Bibliotheken, und in einer Stunde läuft Ihr erstes Inferenz-Skript.
Für den Prototyp reicht das. Für hunderte Geräte im Feld, die jahrelang zuverlässig laufen müssen, reicht es nicht. Wir stehen genau an diesem Punkt und migrieren von Jetpack auf eine eigene Yocto-Distribution.
Die Komfortzone: Jetpack funktioniert, bis es das nicht mehr tut
Das Verkehrserfassungssystem lief anfangs auf Jetpack 5.1.5, NVIDIAs L4T-Distribution auf Ubuntu-Basis. Für den Jetson NX war das die richtige Entscheidung: gut dokumentiert, schnell einsatzbereit, kompatibel mit dem gesamten NVIDIA-Toolstack.
Warum also wechseln? Dafür gibt es drei konkrete Gründe. Der wichtigste ist rechtlicher Natur.
GPLv3-Lizenzkonformität
Jetpack enthält über 30 Pakete unter GPLv3-Lizenzen. GPLv3 verlangt explizit, dass Nutzer modifizierte Software auf dem Gerät installieren können, was mit einem gesperrten Embedded-Gerät im öffentlichen Raum unvereinbar ist.
Für ein kommerzielles Produkt ist das kein Präferenzthema, sondern ein rechtlicher Blocker. Yocto löst das durch Lizenzfilterung (LICENSE_FLAGS_ACCEPTED) und alternative Pakete.
Aufgeblähtes Image
Jetpack liefert einen kompletten Ubuntu-Desktop-Stack mit, inklusive Tools wie LibreOffice und andere Desktop-Anwendungen, die auf einem Verkehrssensor nichts zu suchen haben. Das verschwendet:
- Speicherplatz auf dem Embedded-Gerät
- Bandbreite bei OTA-Updates über LTE
- Sicherheit durch eine größere Angriffsoberfläche
End-of-Life-Risiko
Jetpack 5 ist die letzte Version, die den Jetson NX unterstützt. NVIDIAs Zeitplan für Sicherheitsupdates nach dem End-of-Life ist unklar.
Für hunderte Einheiten im öffentlichen Raum ist das keine akzeptable Unsicherheit, insbesondere im Kontext des Cyber Resilience Act (CRA), der Anbieter verpflichtet, Updates für das Basissystem auszuliefern.
Was Yocto bringt und was es kostet
Yocto ist kein Betriebssystem, sondern ein Build-System für maßgeschneiderte Linux-Distributionen. Statt ein komplettes Ubuntu zu deployen, bauen Sie genau das System, das Ihr Gerät braucht.
Die konkreten Vorteile
Kleineres System. Mit Yocto kontrollieren wir, was im Image ist. Das Ergebnis: ein um Größenordnungen kleineres System-Image und OTA-Updates, die nur das enthalten, was sich tatsächlich geändert hat. Für Geräte über LTE ein direkter Kostenfaktor.
Granulare Kontrolle. Welche Pakete installiert sind, welche Services laufen, welche Kernel-Module geladen werden: alles definiert. Auch die Lizenzen sind kontrolliert, über Yoctos integrierte Lizenzfilterung mit LICENSE_FLAGS, die GPLv3-Pakete systematisch ausschließt.
Reduzierter Speicherbedarf. Eine Yocto-basierte Distribution kann den Memory Footprint gegenüber Ubuntu um mehrere Gigabyte reduzieren. Auf einem Embedded System mit begrenztem RAM ist das relevant.
Unabhängigkeit. Wenn NVIDIA den Support einstellt, sind wir nicht blockiert. Mit Yocto und meta-tegra können wir Sicherheitspatches eigenständig einpflegen.
Der Aufwand ist real
Die initiale Einrichtung einer Yocto-Distribution für Jetson ist erheblich. Der meta-tegra Layer muss korrekt integriert werden, CUDA-Bibliotheken müssen korrekt verpackt werden, und die Build-Zeiten sind lang. Das ist keine Wochenendaufgabe, aber für den professionellen Einsatz unabdingbar.
Docker entfernt, obwohl NVIDIA es empfiehlt
In Version 1 nutzten wir Docker für die Applikationsebene: sechs Container, orchestriert mit docker-compose.
In der Yocto-basierten v2 haben wir Docker komplett aus dem System entfernt. Der Grund: NVIDIAs L4T-Basiscontainer enthielten dieselben GPLv3-Lizenzprobleme wie Jetpack selbst. Docker beizubehalten hätte das Lizenzproblem nur von der OS-Ebene in die Container-Ebene verschoben.
Das widerspricht NVIDIAs Empfehlung. Aber Lizenzkonformität ist für ein kommerzielles Embedded-Produkt nicht verhandelbar.
Die Anwendungskomponenten laufen in v2 als native Services, verwaltet über systemd und supervisord.
Warum die Entscheidung operativ ist
Ob Jetpack oder Yocto die richtige Wahl ist, entscheidet Ihr Inbetriebnahme-Szenario:
- 5 Geräte im Labor? Jetpack, ohne Frage.
- Hunderte Geräte im Feld, jahrelanger Betrieb, LTE-Updates, Sicherheitsanforderungen? Eine eigene Distribution ist unumgänglich.
Für dieses System war die Entscheidung klar. Die GPLv3-Lizenzlage allein hätte den Wechsel erzwungen. Die Kombination aus aufgeblähtem Image, Flottengröße und End-of-Life-Risiko machte ihn dringend.
Fazit
Jetpack ist der richtige Startpunkt für Jetson-Projekte. Aber wenn Ihr Produkt in den Feldeinsatz geht, wird Yocto aus zwei Gründen zur Notwendigkeit:
- GPLv3-Lizenzkonformität ist für kommerzielle Embedded-Geräte eine harte rechtliche Vorgabe
- Operative Kontrolle: Ein System, das Jahre im Feld laufen muss, braucht die Kontrolle, die nur eine eigene Distribution bietet
Über EdgeAI Services: EdgeAI Services ist ein Joint Venture der deutschen Deep-Tech-Beratung 100 DAYS GmbH und Gradion. Wir bringen Edge-AI-Produkte vom Prototyp in die Produktion, mit tiefem NVIDIA Jetson Fachwissen, produktionsgehärteter Architektur und der Zuverlässigkeit eines 600-Ingenieure-Unternehmens. Sprechen Sie mit uns über Ihr Projekt.
Bereit für Ihr Edge AI Projekt?
Lassen Sie uns besprechen, wie wir Ihre Vision in Produktion bringen.
Projekt besprechen