The Motorola CM140 is a mobile two-way radio from the Commercial Series that requires specific Customer Programming Software (CPS) and a compatible cable for configuration. Programming Requirements
Software: The radio is managed using Commercial Series CPS. Compatible versions often cited include R05.16 or older versions like 05.05 through 05.13.
Operating Systems: The software is compatible with Windows XP, 7, 8, 8.1, and 10. Hardware Interface:
A USB to RJ45 or RS-232 to RJ45 programming cable is required.
FTDI-based cables are recommended for better reliability on modern Windows versions.
The radio's programming port is the RJ45 microphone jack on the front panel. Essential Documentation & Downloads
For detailed technical instructions, the following "papers" (manuals and guides) are available: MOTOROLA CM140 | Radical Tech Tutorials - TechRad
The Challenge
John, a radio technician at a busy dispatch center, was tasked with programming a fleet of Motorola CM140 mobile radios for a local public safety agency. The agency had just upgraded their communication system and needed to reprogram the radios to work with the new infrastructure.
The CM140 radios were a popular choice for public safety agencies due to their reliability and durability. However, programming them required specialized software and a good understanding of radio configuration.
The Solution
John had used the Motorola CM140 programming software, also known as CPS (Customer Programming Software), before, but he hadn't used it in a while. He downloaded the latest version from the Motorola website and installed it on his computer.
The CPS software allowed John to create and edit radio configurations, including setting frequencies, tone squelching, and other parameters. He also used the software to upload and download programming data to and from the radios.
The Task
John's task was to program 20 CM140 radios with the new configuration. He started by creating a new project in the CPS software and selecting the CM140 radio model. He then entered the radio's serial number and selected the desired configuration from a pre-existing library.
Next, John configured the radio's frequencies, setting the transmit and receive frequencies, as well as the tone squelching and other parameters. He also programmed the radio's ID and alias, which would display on the radio's LCD screen.
The Benefits
Using the Motorola CM140 programming software made John's task much easier. The software provided a user-friendly interface that guided him through the programming process. He was able to:
- Create and edit radio configurations: The CPS software allowed John to create and edit radio configurations quickly and easily.
- Upload and download programming data: The software enabled John to upload and download programming data to and from the radios, ensuring that the radios were properly configured.
- Troubleshoot issues: The software's built-in troubleshooting tools helped John identify and fix any issues that arose during the programming process.
The Outcome
John successfully programmed all 20 CM140 radios using the Motorola CPS software. The radios were then tested and deployed to the public safety agency, who reported no issues with the new configuration.
The agency's communication system was now fully operational, and John had gained valuable experience with the Motorola CM140 programming software. He was able to efficiently program the radios, ensuring that the agency's first responders had reliable communication equipment.
Best Practices
Based on John's experience, here are some best practices for using the Motorola CM140 programming software:
- Use the latest software version: Ensure you have the latest version of the CPS software to take advantage of new features and bug fixes.
- Create a backup: Create a backup of your radio configurations and programming data to prevent loss in case of a software failure or other issue.
- Test thoroughly: Thoroughly test the programmed radios to ensure they are functioning correctly.
By following these best practices and using the Motorola CM140 programming software, technicians like John can efficiently program and maintain complex communication systems.
Review: Motorola CM140 Programming Software (CPS)
Verdict: A utilitarian "dinosaur" that gets the job done, but provides a frustrating user experience for modern Windows users.
Step-by-Step Installation Guide (Windows 10/11)
Modern operating systems often struggle with legacy Motorola software. Follow these steps precisely:
6. Reverse Engineering the Protocol (Simplified Logic Analyzer Capture)
A Saleae Logic capture of a read operation shows:
Time (ms) | USB (PC→Radio) | UART (Radio→PC)
0 | 55 01 00 00 |
100 | | AA 02
150 | 55 04 00 00 1C |
200 | | [Block 0, 128 bytes]
350 | | [Block 1, 128 bytes] ...
The inter-block delay must be exactly 150 ms; faster or slower causes checksum fails.
References
- Motorola Inc. (2002). Commercial Series CM140 Service Manual (68P81096C85-O).
- Repeater-Builder.com. (2019). Motorola Codeplug Structure – A Technical Reference.
- USB Implementers Forum. (2000). Legacy Serial Communication on Modern Windows.
- Saleae Inc. (2021). Analyzing Asynchronous Serial Protocols – Logic Capture Examples.
Appendix A: Checksum Calculation (Python)
def crc16_ibm(data):
crc = 0
for byte in data:
crc ^= byte << 8
for _ in range(8):
crc <<= 1
if crc & 0x10000:
crc ^= 0x1021
crc &= 0xFFFF
return crc
Appendix B: Pinout of Ribless Programming Cable (to 3.5mm TRS)
- Tip: TX (radio output) → PC RX
- Ring: RX (radio input) → PC TX
- Sleeve: Ground
1. Interface and Usability
Score: 3/10
- Dated Design: The software hails from the early 2000s. The interface is a maze of drop-down menus and nested tabs. There are no "wizards" or visual guides. You are presented with raw data fields for frequencies, PL/DPL codes, and signalling.
- The "Wide/Narrow" Issue: One of the biggest headaches in the interface is the bandwidth selection. Depending on the specific firmware version of the radio and the software, managing the switch between 12.5kHz (Narrow) and 25kHz (Wide) can be confusingly labeled or hidden in signalling profiles rather than the main channel info.
- No Undo Button: This is the most critical flaw for new users. If you accidentally overwrite a codeplug (the radio's configuration file) or blank out a channel, there is no "undo." One wrong click in the "Read/Write" menu can brick the radio, requiring a trip to a service center to recover the firmware.
The Verdict Up Front
The Motorola CM140 programming software is functional, stable, and rugged, mirroring the hardware it supports. However, it is decidedly "old school." It is not user-friendly for beginners, requires specific legacy hardware to run, and has a notoriously steep learning curve compared to modern radio software (like CHIRP or current MotoTRBO applications).
For a radio technician, it is a standard tool; for a hobbyist, it is a frustration engine.

