Firmware Update Application
The Firmware Update Application
The Firmware Update Application (FUA) is an application intended to act as a generic firmware update engine for boards running on RidgeRun’s SDK or other build systems; it can be easily invoked as a stand-alone application, from a command line interface or by other applications.
It is intended to solve the major issues found while trying to upgrade the software/firmware in your device. It provides a platform-independent application that automates and standardizes the firmware update process for platforms running RidgeRun's software. Not only does it provide tools to easily create and supply updates, but it also minimizes the necessary human interaction after these have been applied.
FUA works with fub packages. Fub packages consist of specially packed files containing the data to be installed in the target device, among other optional files such as bash scripts, allowing the tool to execute actions in the upgrade process automatically.
The fub packages can be transferred to the target by any means to meet a variety of customer requirements. Once in the target, there are two ways to initiate the upgrade process:
a) Manual Upgrade Execution: FUA can be executed manually allowing any third party process to initiate the upgrade process specifying the fub package to execute.
b) Automatic Upgrade Execution: FUA implements an FUA Monitor application, which is a daemon that will be monitoring a user-specified directory. Each time a fub package is copied to this directory FUA validates it and automatically starts the upgrade process.
Firmware Update Application Key Features
FUA has been designed to cover almost all possible upgrade scenarios such as:
Entire file system upgrade
Partial file system upgrade (files upgrade)
Bootloader upgrade (bootloader support is platform dependent)
Additionally, it provides some other features, including:
Checksum verification of the fub packages
Execution of customized scripts
Can work together with fall-back partitions for secure upgrade allowing the system to recover from a failed upgrade