A blog about MOTOTRBO and other things.

8 March 2013

Over The Air Programming (OTAP) Part 1

This is the first in a series of five posts discussing Radio Management and Over The Air Programming.

When the need to program a radio or a fleet of radios occurs, the process can take place at the customer location or the workshop. However, the process of programming radio parameters, features, contact lists, and others can be a time consuming and inefficient exercise. To address this need, the MOTOTRBO CPS allows over the air programming of radio parameters – known as OTAP (Over The Air Programming).

With OTAP, you are able to manage up to 5000 radio configurations per instance as well as on a group or individual basis. Optionally more radios can be managed across multiple systems in multiple locations. OTAP also allows remote connection on a server; client and device programmer basis so you are able to manage MOTOTRBO systems anywhere in the world via the Internet¹.

For added security, OTAP provides application and radio mutual authentication via a shared key. OTAP also uses the existing over-the-air encryption thereby ensuring configuration updates are not intercepted.

Configuration updates can be scheduled for off-peak periods thereby reducing the disruption and ensuring consistent performance. Updates can be performed on an unmanned batch process. The radio user receives a one-time option to accept or delay the new configuration, once received.

Most importantly, OTAP uses compressed and differential configuration transfer, so the changes are sent to the radio – not the entire codeplug. This allows configurations to be sent to multiple radios using the least amount of airtime possible. As always, MOTOTRBO gives preference to voice traffic – therefore your operations are not interrupted by OTAP.

Optionally, OTAP works with Presence Notification which allows an update to be pushed to a radio as soon as it switches on and is within range of the system. All update sessions are logged, allowing the analysis of historical reports and delinquent radios.

OTAP supports all system architectures except Connect Plus, which has its own over the air reconfiguration protocol. OTAP is also only supported in the second generation MOTOTRBO radios as of firmware version R02.05.00. OTAP is also only possible in digital mode.

The heart of any OTAP system is the Radio Management Server. The Server can be co-located on the same PC as the CPS (otherwise known as the Radio Management Client). The CPS is just the standard MOTOTRBO CPS.
The Device Programmer is the interface between the Radio Management Server and Control Station. The Control Station can be any MOTOTRBO radio - this acts as the RF Air Interface. Optionally, Presence Notifier can be used: this processes ARS messages and informs the Radio Management Server about radios present on the system.

There are five basic system topologies for OTAP. These are used as the building blocks for more complicated, large scale configurations:-

In Local Single Channel Configuration, the CPS utilizes the existing MOTOTRBO IP data service to communicate with the field radios over-the-air. This setup requires a radio to be configured as a control station, connected to the CPS PC via a USB cable and utilized as the data gateway into the radio system. No other over- the-air data application is supported on the same PC as the CPS.
Figure 1 - Local Single Channel Configuration
Figure 2 - Local Single Channel with Remote Client
Figure 3 - Multiple Device Programmers on a single Radio Management server

Optionally, the CPS can utilize the Presence Notifier (PN) to optimize over-the-air operations. If utilized, the PN must be installed on the same computer as the control stations. Without the PN, the CPS attempts to contact each radio one by one, regardless if they are present on the system or not. For optimal performance, it is recommended that this be utilized in conjunction with ARS in the radios.

If the system administrator is not within RF coverage of the system, it is possible for the CPS Client to be installed on a different PC and remotely access the CPS Server and Device Programmer over an IP network. Direct network connectivity is required between the CPS Client and the CPS Server, therefore a VPN must be used or they must reside on a private network. The CPS Server, CPS Device Programmer, and control stations are located on the same PC.

The CPS Client can connect to any CPS Server, but only one at a time. This allows the system administrator access to different customers with non-overlapping RF coverage from one location. Although the CPS Server, Device Programmer, and control stations must be within RF coverage, the CPS Client does not. Each CPS Server manages its own set of radios. Direct network connectivity is required between the CPS Client and the CPS Server; hence a VPN must be used or they must reside on a private network. However, it is not necessary for the network connection between the CPS Client and the CPS Server to be up all the time. The system administrator can set up a job with one CPS Server, and then disconnect. The CPS Server continues to execute.

The CPS Server can support up to 128 CPS Device Programmers. This allows the system administrator to have all radios in one CPS Server and have access to different sites with non- overlapping RF coverage. The Device Programmer and control stations must be within RF coverage of their corresponding systems, which is unnecessary for the CPS Server. The CPS Client can also be remote from the CPS Server. Stable, direct network connectivity is required between the CPS Server and CPS Device Programmers. Therefore a VPN must be used, or they must reside on a private network. If a stable, direct network connectivity is not possible, a Remote Client Configuration with multiple CPS Servers installed on the same PC as the Device Programmers, may be required.

If utilizing the Presence Notifier, the Device Programmer where the target radio has registered, services jobs for that radio. A Device Programmer can also be configured to only service a specified set of radios. This is accomplished by setting the radios to a group within the CPS Server, and then configuring the Device Programmer to service the group.

Multiple conventional channels are supported per CPS Device Programmer in both local and remote configurations. This requires a control station per channel, up to 16 are allowed. Because radios can move from channel to channel, this configuration requires the MCDD and Presence Notifier to be installed on the same PC. The MCDD tracks the location of the radios as they move from channel to channel as they register with the PN and updates the routing accordingly.

It is not recommended to utilize multiple control stations without the MCDD and PN. There is no method for CPS messages to be properly routed on the appropriate channel. Specific routing can be added in the PC, but this means radios can only be contacted on a specific channel. Another option is to configure the PC to broadcast on all channels, but this is an extreme waste of bandwidth.

The CPS works the same regardless if the control stations are communicating in direct mode, single site repeater mode, dynamic mixed mode, IP Site Connect mode, Capacity Plus mode, or Linked Capacity Plus mode.

Read further....


  1. Hi,

    I have read the whole part about OTAP and i have my RM server ready and some devices here I want to test with.
    I get an error saying that the ID and KEY are not a match when i try to read over the air.
    You state in your post that is should be filled in in the basic codeplug first but WHAT should be fillen in in every radio? The same values or different values in every radio? that is not clear to me and nowhere else is a manual to be find AFTER you do all the installations step. How to use it, a User manual I cannot find.
    Any help with this would be appriciated.



    1. Hi, have a look at this video http://youtu.be/aHo3YZu6Az8

    2. The key mismatch sound like the OTAP key in the radio does not match that in RM. The ID mismatch could be as a result of the radio being out of range. If you are using a control station first verify that you can communicate between the radios. It might be worthwhile to use ARS to be sure that the radio is in range etc. before attempting a read.

    3. The OTAP key must be the same on all radios and the RM server. Each radio (and repeater or control station) must have a unique Radio ID.

    4. [Sorry about the multi-part reply. Safari for iOS doesn't like long replies on blogs]

    5. I forgot to add: the 'basic configuration' is the day one (starter) configuration for the radio which would allow it to communicate on the system. The template codeplug could be used for this. keep in mind that the more changes required after the initial basic configuration, the more airtime OTAP will require to push those changes to the radios.


Due to the number of spam messages I get, comments are moderated. This means that it may take some time for your comment to appear on the page. Please bear with me...

Please Note

The postings on this site are my own and do not necessarily represent the positions, strategies, or opinions of my employer, Motorola Solutions.

Translate this page

Popular Posts