Over the air update (OTA update) – How To

An over the air update is a methodology to send data over the air, with no wire connected. Where there have to be 2 sides, Server-side: responsible for sending the package which includes the data of the update. Client-side: responsible for receiving the update over the air, verify the update package content and deploy it to the device file-system as needed.

Embedded Linux devices, may need to use over the air technology to enable software update on remote devices from any kind.

What can you update with OTA update tool?

Any file system file, from files to directories, one file or even hundreds. Each file should be deployed and replace (in case a file with the same name already exist in the same path).

Also, running BASH commands to make changes that relevant to update – install new packages, rerun services, and clean old unused files.

Embedded Linux devices are not the only type of device which may need to have an over the air update capability, there are a lot of other types of devices that run different Real-Time operating system (RTOS) which also need to have the ability to update files and data on the devices.

How OTA update works?

As explained at the beginning of the article, the architecture of over the air update includes the server-side and the client-side, both need to be connected to the internet, and be able to communicate over a specific secure encrypted tunnel (example: HTTPS). Implementation of a software update has to include 3 important capabilities:

1. OTA update verification – make sure that the client-side (example: embedded Linux device) checks twice that this is the update it would like to deploy. It can be done using HASH technologies or any other update ID verifications.

2. Over the air update has to be fast and lightweight, the update package needs to be zipped using one of the known methods – ZiP, Tar.gz, etc. Zipping the package will make the file size smaller and ensure a faster deployment.

3. A secure checker mechanism that ensures the update doesn’t have anything else than the files we wanted to deploy remotely.

This architecture designed in a way where the client-side, the Linux device, make the requests to the server-side and keeps the device safe and secure in the deployment process.

What is a Micro update?

Here at JFrog Connect, we provide an Over the Air software update tool for Embedded Linux devices from any kind. The Micro update tool has been built to deploy lightweight secure software updates to thousands of products at once, with a monitoring feature that leaves behind the lack of knowledge, and brings back the confidence.

With the Micro update tool, you can deploy software updates over the air easily by filling a quick recipe with the needed actions you would like to do.

What can I update remotely with the Micro update tool?

Any file system file can be replaced by a new one. As well as deploying new software packages and applications. Read more about how to use the Micro update tool in production – best practice.

Blog post update (date: 04/20/2021):

JFrog Connect device management platform is now additionally supports container updates – for embedded Linux devices that uses Docker containers to run the device software.

JFrog Connect is a modern Linux-first IoT platform designed to efficiently update, control and monitor edge and IoT devices at scale.