Skip to content

Firmware Update

Industrial Edge and its components on the Edge Device provides the ability to update functions of the Edge Device in means of updating Edge Apps. To be able to update the functionalities themselves, you must use the firmware update mechanism.

Edge Device Builders can build their own firmwares and by using the provided functionalities from Industrial Edge, this firmware can be published, synchronized to a local IEM and updated onto an Edge Device.

In this section, you will find details about this process. How to build and publish your own firmware and what to do on the Edge Device side to apply the firmware.

What is the Firmware?

The firmware of an Edge Device is the combination of the operating system and some pre-installed apps on top of it.

The firmware of Industrial Edge Devices (IED) is based on Mentor's Industrial OS. On top of it, the Industrial Edge Runtime and the Industrial Edge Device Kit is running.

Firmware Update Lifecycle

The firmware update process consists of the following steps:

  1. Build
    Build your firmware and prepare the update artifact.

  2. Upload and Publish
    Upload and publish your firmware on the IE Hub.

  3. Sync to IEM
    Sync the published firmwares with your local IEM.

  4. Trigger Firmware Update
    Trigger the firmware update operation for an Edge Device through the IEM UI.

  5. Download to the Edge Device
    The Edge Device downloads the update artifact onto itself from the IEM.

  6. Apply the update and report the result
    Apply the firmware update on the Edge Device, check it's validity and report the result.

Firmware Update Flow Diagram

Step 1: Build

The Edge Device firmware gets build by collecting the operating system, Edge Device specific drivers, the Industrial Edge Device Kit and their own additional apps. Edge Device Builders prepare their own firmware.

As result, an updatable artifact, for example a *.swu file, is produced. This artifact should be known by the update mechanism on the Edge Device. For example if SWUpdate tool is used on the Edge Device to apply the update, this artifact must be a *.swu file - which essentially is a cpio archive in which metadata alongside the actual update data is packed.

The produced artifact should be validated by the Edge Device Builder before making it publicly available.

NOTICE

Contact the Industrial Edge team to get detailed information about the offerings provided to the Edge Device Builders for this step.

Step 2: Upload and Publish

The firmware gets uploaded to cloud and marked as available.

After the firmware gets build and verified, the firmware is ready to be published on the cloud. Publishing the firmware is necessary to make it available for usage. Otherwise your firmware will not be syncable with your IEM.

To publish a firmware on the IE Hub, contact the IE Ecosystem manager.

The system allows to add firmware release notes during or after publication, including previously added firmwares.

To add a release note, the designated Release Note Template should be completed and submitted.

Step 3: Sync to IEM

After the firmware is uploaded and published on the IE Hub, the firmware is now ready to be synced with the local IEM.

Using the Sycnhronize Firmware screen in the Management UI, you can synchronize the available firmware artifacts with your local IEM instance. The synchronization operation downloads the firmware artifact, for example the *.swu file, along with its meta data, such as OSS disclaimer links and its publication date:

Firmware Sycnhronizer UI

Firmware Sycnhronizer UI

NOTICE

For details refer to the Industrial Edge Management - Operation manual.

Step 4: Trigger Firmware Update

The firmware has been published to the IE Hub and then synchronized with your local IEM instance. Now the firmware is ready to be used to update connected Edge Devices' firmware.

To be able to update an Edge Device firmware, the version of the installed firmware on the Edge Device must be lower than the version of the latest published firmware. The publication date is the date the firmware was published on the IE Hub.

By using the Firmware Update screen in the IEM, you can select a desired Edge Device and trigger the firmware update process to be run on the Edge Device:

Firmware Update UI

Firmware Update UI

NOTICE

For details refer to the Industrial Edge Management - Operation manual.

This user action creates a Firmware Update job in the background. This job should be received by the Edge Device by calling APIs of the Firmware Deployment service that is running on the IEM.

Step 5: Download to the Edge Device

The created job in the IEM should be received by the Edge Device and should be applied. An agent compatible with the IEM backend service is required on the Edge Device for this task.

This agent, that is running on the Edge Device, should periodically call firmware deployment service APIs to get the job, the artifact and its meta data, such as its status.

You can use the already compatible version of the SWUpdate tool as the agent on the Edge Device.

This version's suricatta mode provides a mechanism to query some backend services. This includes:

  • Get update files
  • Download and apply the update
  • Restart the Edge Device
  • Report the status of the update job back to the backend

With its extendable Lua script modules, it can be adapted to the backend APIs and formats.

The suricatta LUA module is already compatible with the Industrial Edge firmware deployment service and can be used directly.

NOTICE

For more information, refer to the documentation of the SWUpdate tool in gitlab.

Step 6: Apply the Update and report the Result

The above mentioned version of the SWUpdate tool already handles applying the update with your provided firmware update artifact (a *.swu file for SWUpdate cases) and with the instructions in its LUA module it reports the result back to the backend.

If you want to use your own firmware update agent on your Edge Device, you should handle this operation with your agent and after finishing and validating the update, your agent should report the result to the firmware deployment backend service on the IEM to finalize the update operation.

The firmware deployment service API needs to be called to perform the status reporting operations.

After successfully marking the firmware update operation, you should see the Up to date message for your Edge Device as shown in the figure above.

Edge Device Services

SWUpdate

The SWUpdate framework is Open Source Software (OSS) and provides general software update functionality. You can find detail info this link.