What is OTA update?
OTA update stands for “over-the-air updates”.
It means the capability to update your root file system, firmware, and/or application remotely through a wireless network (like Wi-Fi or mobile telecommunications).
Why should you use OTA update?
OTA update vs. manual update
OTA update is a crucial aspect of modern device management as it allows seamless security and device enhancements without the need for physical intervention on your device, as it was the case a few decades ago with the use of a hard disk or a flash drive to download new firmware on your devices one by one.
Resisting power ad network loss: a top priority
One of the primary goals of OTA updates is to make sure devices can withstand power and network interruptions. Such interruptions can lead to abrupt, uncontrolled software shutdowns. In scenarios where thousands or even hundreds of thousands of devices are in use, avoiding a 10% failure rate due to updates is paramount. To achieve this, we prioritize resistance to power and network losses.
How does OTA update work? The example of the A/B update schema
To achieve robustness in remote updates, we can employ A/B partitioning update. This approach involves having two copies of updateable software components: part A and part B. These partitions are crucial to maintaining system integrity during the update process.
When a device boots up, it initially runs a bootloader, responsible for managing the starting process. The bootloader’s role is to hand over control to one of the partitions, either Part A or Part B, typically containing the kernel and Root File System (Root FS). This becomes the active partition.
During an update, the new software version is installed on the inactive partition (usually Part B). If the update process is interrupted, the active partition (Part A) remains unchanged, ensuring continued functionality. A subsequent reboot directs execution to the updated partition, making it the new active partition. This approach guarantees that the device can roll back to a known, functioning state if the update on the inactive partition fails to validate correctly.

Diagram of the A/B update organization
A key feature of this update strategy is the ability to maintain two different versions of software on each partition, as a guarantee for the system to always be able to come back to a previous and functional version if the new one is in error.
Initially, in version N of the software, partition A is active while partition B is inactive, running on version N-1. However, as soon as you update your system to version N+1, partition A becomes inactive with version N, while partition B takes over, becoming active with the brand-new version N+1. And when the update to version N+2 is ready, the cycle continues, with partition A becoming active under version N+2, while partition B remains inactive under version N+1. This pattern repeats, thus ensuring a reliable and smooth update process for end-users, all while maintaining service continuity.
If you need to implement an OTA update solution on your system, the A/B update schema is a reliable mechanism to maintain system integrity. Consult our technical article on A/B partitioning.
OTA update solutions
OTA update solutions such as SWUpdate and Mender offer a simplified and efficient approach to handling firmware updates on embedded Linux systems. These tools make it easier for device manufacturers to ensure the security and functionality of devices in the field.
That’s why we’ve seamlessly incorporated them as OTA update options within Welma, our Yocto Linux distribution. This integration provides device manufacturers with a ready-to-use, robust method to keep their devices up to date.




