Over-the-air programming (OTA programming) refers to various methods of distributing new software, configuration settings, and even updating encryption keys to devices like mobile phones, set-top boxes, electric cars or secure voice communication equipment (encrypted 2-way radios). One important feature of OTA is that one central location can send an update to all the users, who are unable to refuse, defeat, or alter that update, and that the update applies immediately to everyone on the channel. A user could 'refuse' OTA, but the 'channel manager' could also 'kick them off' the channel automatically.
In the context of the mobile content world, these include firmware-over-the-air (FOTA), over-the-air service provisioning (OTASP), over-the-air provisioning (OTAP), or over-the-air parameter administration (OTAPA); or provisioning handsets with the necessary settings with which to access services such as wireless access point (WAP) or Multimedia Messaging Service (MMS).
As mobile phones accumulate new applications and become more advanced, OTA configuration has become increasingly important as new updates and services come on stream. OTA via Short Message Service (SMS) optimises the configuration data updates in subscriber identity module (SIM) cards and handsets, and enables the distribution of new software updates to mobile phones or provisioning handsets with the necessary settings with which to access services such as WAP or MMS. OTA messaging provides remote control of mobile phones for service and subscription activation, personalisation, and programming of a new service for mobile operators and telco third parties.
Various standardisation bodies were established to help develop, oversee, and manage OTA. One of them is the Open Mobile Alliance (OMA).
More recently, with the new concepts of Wireless Sensor Networks and the Internet of Things (IoT), where the networks consist of hundreds or thousands of nodes, OTA is taken to a new direction: for the first time OTA is applied using unlicensed frequency bands (868 MHz, 900 MHz, 2400 MHz) and with low consumption and low data rate transmission using protocols such as 802.15.4 and ZigBee.
Sensor nodes are often located in places that are either remote or difficult to access. As an example, Libelium has implemented a smart and easy-to-use OTA programming system for ZigBee WSN devices. This system enables firmware upgrades without the need of physical access, saving time and money if the nodes must be re-programmed.
On modern mobile devices such as smartphones, an over-the-air update may refer simply to a software update that is distributed over Wi-Fi or mobile broadband using a function built into the operating system, with the 'over-the-air' aspect referring to its use of wireless internet instead of requiring the user to connect the device to a computer via USB to perform the update.
Firmware updates are available for download from the OTA service.
The OTA mechanism requires the existing software and hardware of the target device to support the feature, namely the receipt and installation of new software received via the wireless network from the provider.
New software is transferred to the phone, installed, and put into use. It is often necessary to turn the phone off and back on for the new programming to take effect, though many phones will automatically perform this action.
Depending on implementation, OTA software delivery can be initiated upon action, such as a call to the provider's customer support system or other dial-able service, or can be performed automatically. Typically, it is done via the former method to avoid service disruption at an inconvenient time, but this requires subscribers to manually call the provider. Often, a carrier will send a broadcast SMS text message to all subscribers (or those using a particular model of phone) asking them to dial a service number to receive a software update.
Verizon Wireless in the U.S. provides a number of OTA functions to its subscribers via the *228 service code. Option 1 updates phone configuration, option 2 updates the PRL. Similarly Voitel Wireless and StraightTalk, which both use Verizon network, use 22890 service code to program Verizon based wireless phones.
To provision parameters in a mobile device OTA, the device needs to have a provisioning client capable of receiving, processing and setting the parameters. For example, a Device Management client in a device may be capable of receiving and provisioning applications, or connectivity parameters.
In general, the term OTA implies the use of wireless mechanisms to send provisioning data or update packages for firmware or software updates to a mobile device; this is so that the user does not have to go to a store or a service centre to have applications provisioned, parameters changed, or firmware or software updated. In this context, also two major types of OTA updates can be distinguished, namely OTA updates for product enhancement (e.g., customized product functions and services) and OTA updates for product optimization (e.g., repair or version updates).
Non-OTA options for a user are: a) to go to a store and seek help, b) use a PC and a cable to connect to the device and change settings on a device, add software to device, etc.
There are a number of standards that describe OTA functions. One of the first was the GSM 03.48 series. The ZigBee suite of standards includes the ZigBee Over-the-Air Upgrading Cluster which is part of the ZigBee Smart Energy Profile and provides an interoperable (vendor-independent) way of updating device firmware. The current standards do not cover harvesting of client information which is routinely done by the phone manufacturer, the service provider and the program manager (Google). No restrictions have been developed for these illegal activities.
OTA is similar to firmware distribution methods used by other mass-produced consumer electronics, such as cable modems, which use TFTP as a way to remotely receive new programming, thus reducing the amount of time spent by both the owner and the user of the device on maintenance.
Over-the-air provisioning (OTAP) is also available in wireless environments (though it is disabled by default for security reasons). It allows an access point (AP) to discover the IP address of its controller. When enabled, the controller tells the other APs to include additional information in the Radio Resource Management Packets (RRM) that would assist a new access point in learning of the controller. It is sent in plain text however, which would make it vulnerable to sniffing. That is why it is disabled by default.