Software update package processing

After a software update package (SUP) has been created, it can be uploaded to the IoT Portal and deployed to your gateways.

The review of the tasks associated with software update packages and the sequence they are performed is:

  1. Creating a software update package using the Workbench.
    The software update package creation task and the reference information for the software update package library of actions are described on Creating a software update package.
  2. Uploading the SUP to the IoT Portal.
    For more information, see Management Portal -> Developer -> Files.
    All files in the Developer Files area with the .sup extension will be available as the software update package file when defining a Campaign with the gateway.sup.update task.
  3. Deploying the SUP to your gateways.
    Software update packages are deployed to gateways using the Campaign feature, and the gateway.sup.update task, of the Management Portal.
    For more information, see Management Portal -> Developer -> Campaigns.
  4. Optionally, downloading a copy of the SUP from the Management Portal-> Developer -> Files feature.

Gateway processing of software update packages as part of a Campaign

When a Campaign that uses the gateway.sup.update task starts executing, the processing that takes place on each gateway (its thing) that is a member of the Campaign includes:

  1. The IoT Portal sends a TR50 message to each gateway to indicate that there is a SUP file that should be retrieved and processed.
  2. Each gateway initiates a file transfer to retrieve the SUP file referenced by the gateway.sup.update task in the Campaign.
  3. After the SUP file is successfully transferred to the gateway, a separate "package installer" process is executed that interrogates the actions and information in the SUP file and executes each action, in sequence.

    Software update package actions

    The SUP actions you define may have operating system or deviceWISE product specific files or parameters.

    The design of the SUP file and its use on multiple gateways must take into account the operating system and deviceWISE product specific characteristics of the gateways.

    You may need to define multiple SUP files, with their actions and parameters to support your multiple gateway product types.

  4. As the package installer process executes the actions in the SUP, the deviceWISE runtime process may be stopped and started as part of the action. For example, the Firmware Update action will include the restart of the runtime process.
  5. As each action in the SUP is executed, the success or failure is tracked in a SUP confirmation file (JSON format) - "confirmation.json", which is used to generate Audit log messages on the gateway (see next item).
    The SUP confirmation file is located in the runtime's "logs" directory, and will be included with the files that are combined into a gateway's diagnostic file.
  6. When all of the SUP actions have been executed, or when there is a severe error that terminates the SUP processing, the information in the SUP confirmation file is used to generate Audit log messages on the gateway.
  7. The gateway sends a success or failure response back to the IoT Portal for the completion status of the gateway's (its thing) member record in the Campaign.

Gateway processing of software update packages using the Workbench Packages tab

In addition to using a SUP file in a Campaign defined and started in the IoT Portal, a gateway can have a SUP file applied to it by using the Workbench -> Administration -> Packages tab.
When using the Workbench -> Administration -> Packages tab, Add function, change the Files of type parameter from the default Package Files (*.pkg) to Software Update Package Files (*.sup), to be able to browse for your SUP output files.

This processing of the SUP file by the gateway is similar to its processing when it is initiated in a Campaign. The main difference is that the completion status is not reflected in the IoT Portal in a Campaign's status.