Firmware Over-The-Air, or FOTA for short, is the process of remotely updating code on an embedded system. Not every device is capable of this mechanism. In the initially installed firmware, appropriate options must be provided for this.
In the case of LoRaWAN, FOTA is also considered at the level of standard specification 1.1. The definition of FOTA by the committee guarantees a high quality and a consistent approach to the challenge of transmitting firmware updates via so-called delta packs with a relatively low payload. (We all feel the success of such a specification in the relatively low failures of iOS and Android mobile phones after you have received an update).
To quickly illustrate the scope of FOTA, a brief description of the process without "over the air" is sufficient: to update the firmware on a device, physical access to the hardware is required. It must be connected in some way (usually via USB or a serial adapter) to a computer, which then transfers the new software to the device.
However, this process cannot be scaled. The Internet of Things does not have a single device. It is about countless devices, many of which no one can say exactly where they are. The logistical challenge of manually updating the firmware is a Sisyphean task.
Jeffree Lee names Chrysler as a famous representative of the company, which itself has not shied away from such an undertaking. The response of the media to this action was not long in coming:
"Six weeks after hackers revealed vulnerabilities in a 2014 Jeep Cherokee that they could use to take over its transmission and brakes, Chrysler has pushed out its patch for that epic exploit. Now it's getting another round of criticism for what some are calling a sloppy method of distributing that patch: On more than a million USB drives mailed to drivers via the US Postal Service."(wired.com)
The advantage of FOTA
Tesla 2016, for example, proved that firmware updates can also make positive headlines when it equipped its customers' cars with an intelligent parking system overnight.
Besides good PR, there are of course other advantages for Firmware Over-The-Air:
- As a responsible manufacturer, firmware updates always give you the opportunity to react to software malfunctions and security gaps.
- Updates with new or modified functions can only be sent to subsets of the devices for testing in a real application environment. Sensitive handling and open communication with the test customers should be a matter of course.
- The cost savings compared to firmware updates that require a physical presence are obvious. This is further optimized by a uniform interface for updating large fleets of devices. - We know from experience that work is still done at command line level in many places. We ourselves are big fans of consoles, but we believe that to avoid errors when updating firmware in the IoT world, specially developed applications should be used. A bug in a software update can, in the worst case, render a device completely useless if it is then no longer addressable via radio (the joking term for this is One-Click-to-Brick).
- With small and manageable updates, development teams can safely continue to develop, adapt and continuously optimize the device even after the sale of a product. With FOTA, functions can also be unlocked for a large number of devices after the devices are in the field. This makes products more sustainable and future-proof.
Challenges of implementing a FOTA ecosystem
Even though FOTA has become part of the LoRaWAN standard, for example, there is still no guarantee that the use of this option will be smooth. Our engineers participated in one of the first FOTA workshops at The Things Conference and were able to see for themselves how sensor manufacturers are preparing the FOTA function on the hardware and software side and what challenges still need to be overcome.
Among other things, reliable systems for managing large numbers of devices that can communicate with the microprocessors and local software on the IoT devices are still important.
The challenge becomes even greater once mixed connectivityThis means that the use of different radio standards is used. The basic communication for FOTA, for example, is different for devices communicating via NB-IoT than for other LPWAN technologies. Here the system should homogenize the processes for the user.
Security is the most important aspect of FOTA besides smooth processing: the communication channels should meet high security standards and update packages must be digitally signed. The keys for this must be well protected both on the manufacturer's management system and on the device in the field. Since this ecosystem often has to be developed and established beyond the manufacturer's boundaries, this challenge should not be underestimated. As a manufacturer of an IoT product, one usually has two options: Either the manufacturer implements everything from hardware, firmware, and keys to update servers himself, or he turns to experts who offer ready-to-use system components.
What is your FOTA strategy?
Let us know what your questions about FOTA are. What is your opinion? We are mainly interested in what we can do to further support you on this topic.
We have started working on the newly specified PHOTA for LoRaWAN 1.1, which we will implement in our software module. Our maxim is to work in a very general way and to create internal standards so that other radio protocols can be used with the same usage paradigms. Our focus is clearly on the uniformity of the application across all LPWAN technologies.
There are already many sensors, adapters and IoT devices on the market that offer considerable flexibility thanks to their remote configurability. In our IoT online shop you will find a selection of hardware that has been tested by us and in many cases supports the function of remote configuration. On the software side, our component offers everything to be able to use these functions efficiently even when operating with large quantities of devices.
In our view, the extended capabilities of Firmware Over-The-Air are another very important evolutionary step for IoT devices, which - if carefully implemented - will provide more security, more flexibility, higher quality and overall more sustainable products. This will quickly find acceptance on the market.