Site icon The Temboo Blog

How to Approach OTA Updates for IoT

What Are OTA Updates? | Three OTA Update Architectures | Important OTA Design Considerations For IoT Systems | Five Questions To Ask Yourself When Considering OTA Updates for IoT | OTA Updates at Temboo

I was recently discussing a new IoT project with a global top 3 consulting firm, and their most pressing questions and product requirements centered around OTA (over-the-air) device updates.

Consequently, I thought it would be useful to share some best practices for supporting OTA updates, since they are an increasingly important factor in determining IoT system success.

What Are OTA Updates & Why Are They Important?

OTA updates are a mechanism for remotely updating internet-connected hardware with new settings, software, and / or firmware.

You’ve probably heard about the numerous OTA-related horror stories in the past couple of years that have seen people locked outside rental properties by bricked smart locks, stuck watching a single channel on their smart TVs, and far more seriously, unwittingly driving cars that can be remotely controlled by hackers.

In this post, I’m going to outline how we approach designing OTA update capabilities so that you can avoid building a system with a similar fate.  

The OTA update mechanism is a core part of a system’s architecture, with the remote hardware device being responsible for identifying and applying updates to itself, and the cloud server responsible for distributing updates to its connected hardware clients.

At this point in the evolution of IoT, it is well established that a robust OTA update mechanism is an essential component for any successful IoT system design.

It’s not feasible to update devices deployed in the field using the traditional manual method, which involves connecting each embedded device to a PC with a cable.

The traditional method doesn’t scale beyond the development phase, and failure to update geographically dispersed devices means missing out on everything from critical security patches and bug fixes to the latest product features.

The Three OTA Update Architectures for IoT

There’s no-one-size-fits all approach to OTA updates.

The right approach for a given IoT project depends on the nature of the hardware under consideration, the overall system architecture, the abilities of the team building the product, and the product itself.

The most common OTA update scenarios are as follows:

Going into the technical details of each OTA architecture is outside the scope of this overview, but what’s more important are the numerous design considerations that you should be paying attention to, regardless of which OTA update approach applies to the IoT product or system that you’re building.

Important OTA Design Considerations For IoT Systems

As I mentioned earlier, many IoT horror stories involve customers being left with bricked devices as a result of failed OTA updates.

What these incidents have in common is not only that the new device image was buggy, a perpetual risk when software is involved, but that the OTA mechanism was not implemented in a fail-safe manner, meaning that neither the user nor the manufacturer could easily rollback or overwrite the bad image.

Here are some key considerations to take into account when thinking about OTA update solutions for IoT systems:

Five Questions To Ask Yourself When Considering OTA Updates for IoT

Before I wrap up, here’s five questions to ask yourself when considering an OTA update technology in the IoT context:

  1. Does the OTA update mechanism support automatic recovery from failed updates while preserving its connection to the update server?
  2. Is security a first-class feature of the OTA mechanism and not something bolted on as an afterthought?
  3. Can OTA updates be applied in an efficient manner, minimizing resources like network bandwidth, storage, and compute?
  4. Can OTA updates be applied at various levels within a given application e.g., application configuration updates versus device firmware updates?
  5. Does the OTA update mechanism leverage container technology (or similar) to work seamlessly across diverse hardware and software environments?

OTA Updates at Temboo

As part of Temboo’s new Kosmos IoT system, we’re providing OTA update support across IoT device and connectivity landscapes.

As head of product, I’m particularly excited about this, because it addresses requirements that we’ve heard repeatedly from customers in a wide range of industries.

Temboo’s OTA support, combined with the work we’re doing on edge connectivity with mesh networks, and our machine learning initiatives, make Kosmos a very powerful option for developing large-scale IoT applications.

If you’re interested in learning more about OTA updates for your IoT solution, contact us today. And make sure to sign up for a free trial of Kosmos here!

-Cormac Driver, Head of Product, Temboo

Exit mobile version