Importing and exporting contacts in CPS2 and RM!



MOTOTRBO Radio Management and CPS2 version 2.134.76.0 allows you to import and export the contact list to and from a CSV (comma separated value) file. The CSV file can be edited or created in applications like Microsoft Excel; Apache OpenOffice Calc; LibreOffice Calc and so forth.

Another useful function is the ability to delete all the contacts with one click.

I use Microsoft Excel 2016 at work. When opening CSV files, Excel goes through a guided process to import columns. It's important to select Delimited in step 1 (below).

In step 2 in also important to only select Comma. Once this is done you can usually click Finish


When saving, you need to save the spreadsheet as a CSV file.


A quirk with Microsoft Excel 2016 or CPS/RM

My System Locale is en-us;English (United States) but my Input Locale is de;German (Germany). If your locale are both English or a language which uses a comma as the thousand separator, you can skip this section.

You can also skip this if you only use Google Sheets or any other spreadsheet application which does not have the below issue.

The above settings on my PC mean that I have a QWERTZ keyboard and (more importantly) monetary values are written as €1.000.000,00 (one million Euros, I wish :-/).

The value of e, note the comma.

The above has an effect on the way in which Excel will write to CSV files. Creating or editing a contact list in Excel then saving it as a CSV file - in my case - means that Excel uses a semicolon as the separator, rather than a comma on most(?) computers.

When attempting to import this into CPS/RM, an error will appear saying that some or other heading is missing. To solve this you need to either:
  1. Save the file as CSV, open it using a text editor and replace the semicolons with commas then save it using the same filename and extension.
  2. Change the system separator setting in Excel or whatever you you. For example, in Excel 2016, go to Options>>Advanced>>Editing Options. Untick Use system separators and set the decimal separator to a dot and the thousand separator to a comma. Save the CSV file then go back and tick Use system separators again to put things back to normal.



The CSV file contents

The imported (or created) spreadsheet contains the following column headers. There needs to be at least one entry in the columns I've highlighted red (below).

I have created some spreadsheets which have the right column headers and the above information included. You can use it as a template to create your own. These can be found here (SHA1: 02740606be656adc809b7e5ce53d6c7fb254f9f9).

ContactNameThis is the contact name as it would appear on the radio display.
Delete_Contact. Leaving this cell blank or entering FALSE has no effect. Entering TRUE will delete the contact in this row.

Rename_Contact. Leaving this cell blank has no effect. If you want to rename the contact, enter the new value here.

Comments. This allows you to add a comment. 

Delete_FiveToneCalls. Leaving this cell blank or entering FALSE has no effect. Entering TRUE will delete the 5-Tone Telegram and Address in this row (essentially, the two entries below).
FiveToneCalls-S5CLDLL_5TTELEGRAM. This is the 5-Tone Telegram used for this contact. This may only be applicable to EMEA and APAC radio models' which support select-5 signaling.

FiveToneCalls-S5CLDLL_5TCALLADD. This is the 5-Tone Address for this contact. This may only be applicable to EMEA and APAC radio models' which support select-5 signaling.

Delete_MDCCalls. Leaving this cell blank or entering FALSE has no effect. Entering TRUE will delete the MDC1200 information shown in this row (essentially, the six entries below starting with MDCCalls).

MDCCalls-AU_CALLLSTID. This is the four byte (character) hexadecimal MDC ID. The number must be preceded by 0x. So 1234 as shown in RM/CPS would be written as 0x1234 in the sheet.

MDCCalls-AU_MDCSYS. This is the MDC System Name that comes from the MDC Systems set.

MDCCalls-AU_RVRTPERS_Zone. This is the MDC1200 revert zone name. This has to be a valid Zone from the Zone/Channel Assignment set.

MDCCalls-AU_RVRTPERS. This is the MDC1200 revert personality name. This has to be a valid Channel from the Zone/Channel Assignment set.

MDCCalls-AU_SPTPLDPL. Setting this cell to TRUE will cause the MDC1200 bursts to be sent without PL or DPL. 

MDCCalls-AU_CALLTYPE. This sets the MDC1200 call type.

Delete_QuikCallIICalls. Leaving this cell blank or entering FALSE has no effect. Entering TRUE will delete the Quik Call 2 (QCII or also known as two-tone) information shown in this row (essentially, the nine entries below starting with QuikCallIICalls).

QuikCallIICalls-QU_QCIISYS. This sets the Quik Call 2 System.

QuikCallIICalls-QU_RVRTPERS_Zone. This sets the revert zone.

QuikCallIICalls-QU_RVRTPERS. This sets the revert personality.

QuikCallIICalls-QU_CALLFORMAT. This sets the call format.

QuikCallIICalls-QU_TONEATXFRE. This sets tone A's frequency.

QuikCallIICalls-QU_CODEA. This sets Tone A's reed code.

QuikCallIICalls-QU_TONEBTXFREThis sets tone B's frequency.

QuikCallIICalls-QU_CODEBThis sets Tone B's reed code.

QuikCallIICalls-QU_STRIPPLDPL. Setting this to TRUE will make the radio send the QCII call without PL or DPL. 

Delete_DigitalCalls. Leaving this cell blank or entering FALSE has no effect. Entering TRUE will delete the Digital Call information shown in this row (essentially, the seven entries below starting with DigitalCalls).

DigitalCalls-DU_CALLLSTID. This is the Radio or Talkgroup ID. 

DigitalCalls-DU_ROUTETYPE. This sets the route for the call. For regular voice and text, you can leave this blank or set it to Regular. Setting it to Option Board or Non-IP Peripheral will cause inbound and outbound calls to be routed to that hardware.

DigitalCalls-DU_CALLPRCDTNEN. Setting this to TRUE will make the radio sound a receive tone for talkgroup calls.

DigitalCalls-DU_RINGTYPE. This sets the ring style for OACSU individual calls and call alerts.

DigitalCalls-DU_TXTMSGALTTNTP. Setting this to Repetitive will make the radio constantly ring when a text message is received.

DigitalCalls-DU_CALLTYPE. This sets the call type. This cell must either be Group Call, Private Call, All Call, Dispatch or PC.

DigitalCalls-DU_OVCMCALL. This indicates that the call uses Open Voice Channel Mode.

Delete_CapacityPlusCalls. Leaving this cell blank or entering FALSE has no effect. Entering TRUE will delete the Capacity Plus information shown in this row (essentially, the six entries below starting with CapacityPlusCalls).

CapacityPlusCalls-CAPPLUSUCL_CALLLSTID. This is the Radio or Talkgroup ID. The valid range for radios is 1 to 65535 and for Talkgroups it's 1 to 254. You can set this to 255 but then CapacityPlusCalls-CAPPLUSUCL_CALLTYPE must be set to All Call.

CapacityPlusCalls-CAPPLUSUCL_ROUTETYPE.  This sets the route for the call. For regular voice and text, you can leave this blank or set it to Regular. Setting it to Option Board or Non-IP Peripheral will cause inbound and outbound calls to be routed to that hardware.

CapacityPlusCalls-CAPPLUSUCL_CALLPRCDTNEN. Setting this to TRUE will make the radio sound a receive tone for talkgroup calls.

CapacityPlusCalls-CAPPLUSUCL_RINGTYPE. This sets the ring style for call alerts.

CapacityPlusCalls-CAPPLUSUCL_TXTMSGALTTNTP. Setting this to Repetitive will make the radio constantly ring when a text message is received.

CapacityPlusCalls-CAPPLUSUCL_CALLTYPE. This sets the call type. This cell must either be Group Call, Private Call, All Call, Dispatch or PC. If set to All Call, CapacityPlusCalls-CAPPLUSUCL_CALLLSTID must be set to 255.

Delete_PhoneCalls. Leaving this cell blank or entering FALSE has no effect. Entering TRUE will delete the Phone Call information shown in the row.

PhoneCalls-PHNUCLELL_CALLID. This is the number to be dialled, incuding * and #. To include a pause, use P.

PhoneCalls-PHNUCLELL_RINGTYPEThis sets the ring style for inbound private calls from PSTN or PABX.

Powered by Blogger.