USB Updates - Challenges, Approaches and Practical Tips

USB Updates - Challenges, Approaches and Practical Tips

Over-the-air updates have established themselves as the standard for networked devices, but the effort involved in operating the server side is not always commensurate with the benefits. In such cases, the supposedly simple and quick solution of implementing updates via USB is often chosen. But is it really always that uncomplicated? What considerations are necessary to implement USB updates effectively?

This presentation provides an insight into the challenges of USB updates and presents solutions and practical tips for successful implementation. Find out which aspects need to be considered in order to optimize USB updates and ensure a smooth process

USB-Updates: Herausforderungen, Lösungsansätze und Praxiserfahrungen

Over-the-Air Updates haben sich als Standard für vernetzte Geräte etabliert, doch nicht immer steht der Aufwand, der mit dem Betrieb der Server-Seite verbunden ist, im angemessenen Verhältnis zum Nutzen. In solchen Fällen wird häufig die vermeintlich einfache und schnelle Lösung gewählt, Updates über USB zu implementieren. Doch ist das wirklich immer so unkompliziert? Welche Überlegungen sind notwendig, um USB-Updates effektiv umzusetzen?

Dieser Vortrag gewährt einen Einblick in die Herausforderungen von USB-Updates und präsentiert Lösungsansätze sowie praxisnahe Tipps für eine erfolgreiche Umsetzung. Erfahren Sie, welche Aspekte berücksichtigt werden müssen, um USB-Updates optimal zu gestalten und dabei einen reibungslosen Ablauf zu gewährleisten.

Presented at

  • buildingIoT, Munich, 2024

Download slides Blog post: Updating Embedded Systems via USB

Related Posts

Beyond the Release: Managing Long-Term Risk and Compliance in Embedded Linux with Yocto

Beyond the Release: Managing Long-Term Risk and Compliance in Embedded Linux with Yocto

The embedded systems of the future will be judged by their long-term resilience and security. For many manufacturers, however, the shift from a product release to continuous lifecycle management is a significant operational hurdle.
Regulations like the EU’s Cyber Resilience Act (CRA) are formalizing this challenge, demanding ongoing vulnerability management and creating a backdraft of responsibility that impacts the entire supply chain.

This presentation highlights that a robust and reproducible build system is the cornerstone of any sustainable product strategy in this new environment. It will explore how the Yocto Project provides the essential framework for building future-proof and maintainable systems.
The discussion will cover how its architecture enables the critical features needed to manage long-term risk: full-stack patchability for targeted CVE fixes, reproducible builds for maintaining legacy devices, and automated Software Bill of Materials (SBOM) generation for regulatory transparency.
Attendees will gain actionable strategies for implementing lifecycle-aware embedded development and transforming existing product portfolios to meet evolving regulatory requirements.

Read Post
Patching Unpatchable Files

Patching Unpatchable Files

In the Yocto world, the .bbappend file is a well-known and documented mechanism for altering recipe files, and an essential part of daily operations. While not common, there are instances where it becomes necessary to modify other file types, such as .inc or .bbclass, which do not offer an equivalent append mechanism. This session will summarize various strategies for effectively handling these file types when patching cannot be avoided.

In my recent presentation at the Yocto Developer Day in Vienna, I mentioned using the KAS patch mechanism for minor modifications to files like .inc or .bbclass, where the Yocto internal overwriting mechanism via .bbappend files does not apply. Initially intended as a helpful side note on how I navigated a few unique situations, this part quickly escalated into the most discussed segment of the talk. Half of the attendees I spoke with found it valuable, while the other half expressed strong objections.

Read Post
How a modern Yocto setup could look like

How a modern Yocto setup could look like

In 2015, we built a sophisticated meeting room information system based on Android Things as a student project. As Android Things was deprecated in 2021, we started to use our Yocto Project experience to develop a maintainable, future proof embedded system.

When setting up a new project from scratch, we focused on proper solutions for

  • a maintainable, well supported and patchable build environment for the embedded systems
  • version control, reproducible builds and continuous integration
  • license management
  • a secure and stable update mechanism on image base and
  • managing releases The talk aims to show how we build a system that matches our requirements using the Yocto Project, KAS, Gitlab CI, and Mender.io. Besides, we will have a short outlook to the application built in Flutter.

Presented at

  • Yocto Project Summit 2022.11, virtual, 2022
  • buildingIoT, Munich, 2023

Download original slides (Yocto Project Summit) Download updated slides (buildingIoT)

Read Post