Industrial manufacturing
Industrial Internet of Things | Industrial materials | Equipment Maintenance and Repair | Industrial programming |
home  MfgRobots >> Industrial manufacturing >  >> Industrial Internet of Things >> Embedded

OTA Updates for Embedded Linux – Part 2: Evaluating Ready‑Made Update Platforms

In the first article we covered the fundamentals and implementation of OTA update systems for Embedded Linux. This installment evaluates popular, ready‑made open‑source platforms that can be integrated into your project today.

Mender

Mender delivers a polished, out‑of‑the‑box experience. It employs a dual‑rootfs strategy similar to the one described earlier and integrates tightly with U‑Boot, enabling seamless rollback if an image fails to boot.

Getting started is straightforward thanks to clear, step‑by‑step documentation. Reference builds for Raspberry Pi and BeagleBone Black illustrate the effort required to adapt the solution to your hardware.

In my experience, the integration took roughly three days. The process involved minor tweaks to a Yocto (Morty) build and required familiarity with OpenEmbedded and U‑Boot to configure the dual‑boot mechanism correctly.

Once built, Mender outputs an “sdimg” file containing the bootloader and filesystem, which you then write to flash. It also produces “artifacts” that bundle the new filesystem image with metadata.

Artifacts can be installed manually via the mender CLI, or uploaded to the backend server through a web interface for automated deployment to target units.

The backend management console is built on Docker, simplifying initial deployment. The web UI lets you monitor all fielded devices and push updates to individual units or groups.

click for larger image
OTA Updates for Embedded Linux – Part 2: Evaluating Ready‑Made Update Platforms
Figure 1: Mender’s custom web interface for pushing updates (Source: Mender)

Most of Mender is written in Go, so some Go knowledge is advisable for long‑term maintenance. While Go is not yet ubiquitous in embedded development, its adoption is growing.

However, Mender locks you to a single boot device (e.g., /dev/mmcblk0) and assumes specific bootloader and kernel configurations, such as support for certain filesystems. It also mandates systemd, which may exclude projects that rely on alternative init systems.

SWUpdate

SWUpdate offers a highly configurable framework. Its configuration uses the familiar kconfig syntax, letting developers tailor the system to their needs.

Key capabilities include support for multiple bootloaders (U‑Boot, GRUB, EFI Boot Guard), signing and verification of images with a public key, and optional symmetric‑key encryption of payloads.

OTA Updates for Embedded Linux – Part 2: Evaluating Ready‑Made Update Platforms
Figure 2: SWUpdate’s configuration system (Source: SWUpdate)

Embedded

  1. How Embedded Systems Drive Modern Vehicle Innovation
  2. IC Technology & Microcontrollers: The Cornerstone of Modern Embedded Systems
  3. Embedded Linux OTA Updates – Part 1: Fundamentals & Implementation
  4. Optimizing AI Models for Efficient Embedded Deployment
  5. Top 10 C# IDEs for Windows, macOS, and Linux – 2021 Review
  6. Benefits of Embedded Technologies in Modular Design
  7. Embedded Systems 101: A Beginner's Quick Reference
  8. Python’s Growing Role in Embedded Systems: Why It Matters
  9. Embedded PCBs: Powering Compact, Reliable Systems for Modern Wearables
  10. Choosing the Right 3D Vision System for Your Industrial Automation Needs