OTA Updates für Embedded Linux – Teil 2: Evaluation fertiger Update Plattformen
Im ersten Artikel deckten wir Fundamentals und Implementation von OTA Update Systemen für Embedded Linux ab. Dieses Installment evaluiert populäre, fertige Open-Source Plattformen, die heute in Ihr Projekt integriert werden können.
Mender
Mender liefert ein polished, Out-of-the-Box Erlebnis. Es employt eine Dual-Rootfs Strategie ähnlich der früher beschriebenen und integriert sich eng mit U-Boot, enabling seamless Rollback, wenn ein Image nicht bootet.
Getting Started ist straightforward dank klarer, Step-by-Step Dokumentation. Reference Builds für Raspberry Pi und BeagleBone Black illustrieren den Aufwand, die Lösung an Ihre Hardware anzupassen.
In meiner Erfahrung nahm die Integration grob drei Tage in Anspruch. Der Prozess involvierte Minor Tweaks an einem Yocto (Morty) Build und erforderte Familiarity mit OpenEmbedded und U-Boot, um den Dual-Boot Mechanism korrekt zu konfigurieren.
Einmal gebaut, outputet Mender eine „sdimg“ Datei, die Bootloader und Filesystem enthält, die Sie dann auf Flash schreiben. Es produziert auch „Artifacts“, die das neue Filesystem Image mit Metadata bundlen.
Artifacts können manuell via mender CLI installiert werden, oder zum Backend Server via Web Interface uploaded werden für automatisiertes Deployment zu Target Units.
Das Backend Management Console ist auf Docker gebaut, was initiales Deployment vereinfacht. Das Web UI lässt Sie alle fielded Devices monitoren und Updates zu einzelnen Units oder Groups pushen.
zum Vergrößern klicken
Abbildung 1: Menders Custom Web Interface für Pushing Updates (Quelle: Mender)
Der Großteil von Mender ist in Go geschrieben, daher ist Go Knowledge ratsam für langfristige Maintenance. Während Go noch nicht ubiquitous in Embedded Development ist, wächst seine Adoption.
Jedoch locked Mender Sie zu einem einzelnen Boot Device (z. B. /dev/mmcblk0) und assumes spezifische Bootloader und Kernel Konfigurationen, wie Support für bestimmte Filesystems. Es mandates auch systemd, was Projekte ausschließen mag, die auf alternative Init Systems setzen.
SWUpdate
SWUpdate bietet ein hochkonfigurierbares Framework. Seine Konfiguration nutzt die vertraute Kconfig Syntax, letting Developers das System an ihre Needs tailoren.
Key Capabilities inkludieren Support für multiple Bootloaders (U-Boot, GRUB, EFI Boot Guard), Signing und Verification von Images mit Public Key, und optional Symmetric-Key Encryption von Payloads.

Abbildung 2: SWUpdates Konfigurationssystem (Quelle: SWUpdate)
Eingebettet
- Die richtige AWS Container Orchestration Service für Ihr Business wählen
- Debugging in Embedded Systems: Typen, Techniken und Tools für zuverlässige Software
- Wie Embedded Systems moderne Fahrzeuginnovation antreiben
- Embedded Systems: Definition, Architektur und reale Anwendungen
- ST Microelectronics zeigt 28 nm FD-SOI MCUs mit Embedded PCM für Powertrain, ADAS und Electrification
- Cervoz Ultra-Dünne M.2 NVMe SSDs: High-Performance Storage für Industrial Edge Anwendungen
- Präzise Motorsteuerung für fortschrittliche robotische Systeme
- Top 10 C# IDEs für Windows, macOS und Linux – 2021 Review
- Vorteile eingebetteter Technologien im modularen Design
- Das richtige 3D-Vision-System für Ihre industrielle Automatisierung wählen