Over the Air Service¶
1. Introduction¶
Over the Air (OTA) Update Service provides the ability to securely install and update applications and configurations in remote devices connected to TCUP (TCS Connected Universe Platform). It provides the facility to remotely upload patches to a device and upgrade application software or configuration files on the device. OTA service can also be used for execution of commands/scripts on the target device (for example reboot/restart of device).
1.1 Intended Audience¶
The intended audience of this document is anyone who wants to have an overview of TCUP OTA Service. After going through this document, the user will understand the capability of TCUP OTA Service in IoT platform.
2. Key Concepts¶
In order to use TCUP OTA Service, a user needs to understand some of the basic concepts of the service. Please refer to the following section:
2.1 OTA Agent¶
A software component running on the device to enable TCUP to provide OTA service to that device. The OTA agent must be installed on the device using some suitable method beforehand.
2.2 Endpoint ID¶
Endpoint ID is a device identification number that is given to each device connected to TCUP to get uniquely identified in the system. This is also known as EPN ID.
2.3 Staging Area¶
This is the file system directories where OTA update packages are stored for scanning and limited use. End user can use package management API’s to upload packages here.
2.4 Repository Area¶
This is the file system directories where OTA update packages are stored and ready for download.
3. Functional Capabilities¶
The following are the functional capabilities of Over the Air Service:
Registration of a new device where OTA agent is pre-installed. This enables the device to get recognized in the system.
This service allows a user to securely send OTA update package to connected devices. The update package is combination of data and scripts needed to install the upgrade
The OTA service keeps track of the update progress. It allows a user to query the status of any given update process.
This service supports a mode called the block or chunk mode of package sending to device. The block mode is useful when the network speed is low and package size to be sent is large. In this mode the package is broken into multiple blocks and sent to the device via multiple messages. The receiving device reassembles all the pieces together and forms the complete package.
Support is provided for sending packages to multiple devices (group updates) of having the exact same device model number.
APIs are provided for sending remote commands (like reboot/restart etc.) to the device. Also, APIs are provided to monitor package download progress status when packages are sent in block mode.
This service can also connect low footprint ARM MCU devices and provide secured FOTA update.
Incremental or delta update for FOTA is also supported. OTA package creator tool can be used to generate delta image from old and new firmware images. This tool can also compress a package during creation and bundling.
Agent can also be configured to automatically search for new versions in repository and trigger an update. Maximum 8 applications can be configured.
Agent also keeps history of all successful package installations for audit trail in plain text file containing package name, version, and timestamp.
4. Purpose/Usage¶
OTA is a key component of TCUP since it provides secure remote update of applications in devices. Some of the common usage patterns are as follows:
Installation of applications in remote devices.
Installation or upgrade of TCUP Device Agent itself can be done using the OTA service. This can be used for mobile operating system update.
Update application binary or configuration files. As an example, configuration files used for data pre-processing at the edge can be updated using OTA.
Remote command to reboot devices or restart OTA agent.
5. Examples¶
It is essential for Original Equipment Manufacturer (OEM) to manage the software efficiently over the lifecycle of the device.
Consider an example of an Engine Monitoring System. The engine has an ECU attached and this ECU is connected to a gateway via the CAN bus. The gateway is again connected to TCUP via a wireless internet connection. The gateway runs an embedded Linux operating system.
OTA agent and data acquisition applications are running on the gateway. The data acquisition software uses Sensor Observation Service to push data to TCUP cloud. Now this application needs to be updated (or patched) in order to accommodate more IO readings from the field.
The gateway Endpoint ID is registered to OTA service. Developer releases new version of data acquisition software and stores OTA package in repository for update.
6. Reference Document¶
Please refer to the following documents for more details about this service:
API Guide