CMX882 Baseband Processor with GPS Data Signalling for FRS, MURS, PMR446 and GMRS Leisure Radios

Questions

In addition to extensive and flexible audio processing functions, the CMX882 incorporates an FFSK/MSK data modem and protocol processor, which is ideally suited for data and text messaging on FRS/GMRS/MURS and PMR446 radios. 
Listed here are a number of FAQs related to the CMX882 which should be helpful in the pursuit of new design-in opportunities.
This document is also available in PDF format

 

FCC Rule Background

On 10 February 2003 the FCC revised FRS rules to allow data transmissions, with some restrictions.  Key points are:

1.   [new rule] Brief text (data) messages can be transmitted.  A data transmission cannot be longer than 1 second and a radio cannot transmit data more often than once each 30 seconds.  (See special exception to 30 second limit in 2.    [new rule] A radio may autonomously transmit its location data when polled to do so by another radio.  A radio polled more often than once each 30 seconds (because multiple radios are issuing the poll requests) is allowed to autonomously respond to those poll requests more often than once each 30 seconds., below.

2.    [new rule] A radio may autonomously transmit its location data when polled to do so by another radio.  A radio polled more often than once each 30 seconds (because multiple radios are issuing the poll requests) is allowed to autonomously respond to those poll requests more often than once each 30 seconds.

3.    [new rule] RF emissions for sending data must be of ‘type F2D.’

4.    [old rule that continues] Audio tone signaling is permitted for up to 15 seconds at the beginning of an RF transmission.

5.    [old rule that continues] Subaudio tone signaling (e.g. CTCSS) is permitted during voice transmissions and the tone may persist for the entire transmission.

Signal processing functions

Q: What are the CMX882’s signal processing functions?

A: The CMX882 provides many signal processing functions including:

·         High performance ‘extended range’ FFSK/MSK data modem for text messaging/paging.  This modem operates beyond voice range (when Rx signal quality has degraded to approximately 12dB SINAD) to connect to users with text messages/pages when voice transmissions cannot.

·         FFSK/MSK data modem packet protocol engine with choice of packet modes reduces data errors, maximizes the error-free data rate and increases operating range without requiring a powerful host µC

·         Digital data modem scrambler

·         CTCSS encoder/decoder with ‘zero talkdown’ performance and recognition of an unknown CTCSS tone in a single decode response time

·         XTCSS encoder/decoder

·         DCS encoder/decoder

·         Voice scrambler/descrambler

·         Voice compander

·         Automatic Rx signal type identification, including data modem bit rate

·         All Call decoding identifies and decodes urgent transmissions from other talk or text groups

·         Tx channel filter - configurable for 12.5kHz and 25kHz channel bandwidths including FCC FRS, FCC GMRS and ETSI PMR446 types

·         Tx soft limiter

·         High performance ‘separation filters’ for audio and subaudio signals

·         Signal path selection switches for three sources (mic1, mic2 and discriminator output)

·         Audio tone generator - may be used for ring/call tones

Q: What valuable end product features are made possible by the CMX882’s FFSK/MSK modem and protocol processor?

A: The CMX882’s modem and protocol processor are powerful building blocks customers may use in combination with their own host firmware etc. to implement the following concept features.

·         Text messaging/paging a.k.a. ‘free SMS’

o        The high performance of the CMX882’s modem provides extended range text messaging/paging that can operate beyond ‘voice range’ (when Rx signal quality has degraded to approximately 12dB SINAD) – a key differentiator for the CMX882.

o        ‘Private’ digital text messaging/paging groups can be user selected to make it more difficult for others to eavesdrop on messages.  This is enabled by the CMX882’s data scrambler function.

·         Longer text messages/pages.  The FCC permits data bursts to be no longer than one second.  The CMX882 data modem is faster than others so it can send longer messages in the one second time limit.

·         Caller location.  This might be determined via any of: GPS receiver, some other location system or, perhaps, user text entry of his current location.

·         Digital poll of remote radio location

·         Confirm the delivery of a previously transmitted text message/page
This is a subtle but potentially valuable feature that would allow ‘Mom’ to confirm that ‘Johnny’ received her earlier text message/page instructing him to come home.  It would piggyback a message-received confirmation, perhaps a three bytes, on a polled radio’s location response e.g. Mom would poll Johnny’s location and his radio would respond with location and the ‘number’ of the most recent text message/page it had previously received.  Note the FCC rule permits only remote activated polling of a radio’s location.

·         Caller identification via text message preceding a voice call.

·         Unique ring tone at receiver based on incoming caller ID.  This is similar to a feature supported by high tier cellular phones.

·         Text message/page priority.  A customer implemented protocol could include a digital priority code along with each message to cause the receiving radio to vibrate etc. according to message priority.

·         Used to develop a type F2D emission as required by the FCC.

Q: What is XTCSS?

A: XTCSS is a new and unique in-band tone signaling scheme that combines with CTCSS to enable new radio features.  When enabled XTCSS operates so quickly it does not degrade radio key-on or squelch open response time relative to regular CTCSS operation.  XTCSS adds an ‘invisible’ message to each transmission that can be used in many ways e.g. to identify whether Tx scrambling is enabled or disabled.  XTCSS also provides 99 new ‘quiet codes’ where standard CTCSS is limited to 38.  Lastly, it can also be used to transmit manufacturer-defined codes e.g. to make a remote radio vibrate or emit a unique ring tone.  The CMX882 data bulletin provides a detailed description of XTCSS operation.

Q: What is All Call?

A: CTCSS is used to create call groups so radio channels can be shared and opening squelch (turning on Rx audio or decoding a data message) only when a call is from the same group.  XTCSS provides the same and other enhanced capabilities.  Data message addressing similarly allows one to configure text groups.  In some situations, however, a user may want to urgently call other radio users, even those outside the configured talk/text group.  All Call is a unique capability that allows CMX882-based radios to send and receive urgent transmissions, even when the transmitting CMX882-based radio is configured for a different CTCSS, XTCSS or data modem address group.  It is based on the following technology:

·         A special code, ‘40’, is reserved for All Call operation in each of CTCSS (tone ‘40’), XTCSS (address ‘40’) and data modem (frame head address ‘40’) operating modes.

·         Each mode’s code ‘40’ does not interfere with regular codes.  For example, CTCSS tone ‘40’ is a new subaudio tone and leaves the standard 39 CTCSS tone set available for regular use.

·         When normally decoding configured CTCSS tones or XTCSS or FFSK/MSK data modem frame head addresses the CMX882 simultaneously also watches for and decodes All Call transmissions so, when operating in each of these three signaling modes, it acts as two code decoders in one.

·         An CMX882-based radio uses tone or address ‘40’ to label a transmission as All Call (i.e. urgent) so it can be decoded by CMX882-based radios outside its own talk/text group.

Unique CMX882 processing capabilities, combined with external host uC firmware, can bring this valuable All Call feature to end users.

 

Ease and cost to integrate my existing radio circuits and host µC with an CMX882

Q: The CMX882 provides many attractive signal processing features.  Will adding the CMX882 to my existing and proven FRS/GMRS radio design require a lot of external components, external component cost, design time and risk?

A: No.  The CMX882 is a highly optimized mixed signal IC so it combines analog and digital functions with all required external interfaces to reduce parts count, total radio size and power.

 

CMX882 analog interfaces are compatible with ‘traditional’, simple analog FM radio circuits to be compatible with existing FRS/GMRS radio circuits.  Analog interfaces and related controls are:

·         Mic input amplifier,

·         Mic volume control,

·         Tx modulation output,

·         Tx modulation deviation soft trim,

·         2nd tx modulation output (for synthesizer reference oscillator modulation, if desired),

·         2nd tx modulation output soft trim,

·         Audio signal output,

·         Audio signal output soft volume control

·         Auxiliary ADC input to monitor an externally developed signal e.g. RSSI or battery level, etc.

·         Signal summing/splits to combine and split internal signals without external circuits.

·         FFSK/MSK modem signal is combined with Tx output signal and can be directly applied to Tx radio modulation input without adding external switches or trims

Digital interfaces and related controls are:

·         Simple four-wire C-BUS serial control interface and associated IRQ signal are easy to support with simple host µCs.  This interface provides easy access to all CMX882 configuration parameters, soft trims and signal status indications.  Low speed operation is permitted so a combination of µC general purpose digital I/O and a software driver can be used.  High speed is also supported and can be used with a µC SPI port, if desired.

In summary, to create an CMX882-based radio design all you need is your existing RF circuits and simple host µC, an CMX882, an CMX882 clock source (or external XTAL) and a few resistors and capacitors.  The CMX882 is highly integrated, offers a rich feature set and is compatible with typical FRS/GMRS radio and host µC circuits.  It provides users the shortest time to market and minimal design risk for creating full-featured FRS/GMRS radios.

CTCSS decoder performance

Q: What is ‘zero talkdown’ performance?

A: Many CTCSS subaudio decoders can be ‘fooled’ by talkers with low frequency voices because those voices have energy similar to the CTCSS subaudio signal band.  A talkdown event is when radio squelch mistakenly closes and blanks received voice.  The root cause is poor CTCSS decoder performance that mistakenly indicates loss of the CTCSS signal.  The CMX882’s high performance Tx and Rx signal processing eliminates many CTCSS talkdown cases and can significantly outperform other CTCSS implementations.

 

Q: Some CTCSS decoders extend their response time to accurately decode low frequency CTCSS tones.  Others provide a choice of faster low frequency tone decoding at the expense of accuracy, which is not acceptable to me.  Does the CMX882’s CTCSS ‘full accuracy’ decode response time increase for low frequency tones?

A: No.  The CMX882’s CTCSS decoder provides best response time decode performance for all valid tones (the industry standard set) so there is no need to choose fast response time at the expense of poor decode accuracy.  Minimum response time is 140mS – fast.

 

Data privacy

Q: I want to use the CMX882’s FFSK/MSK data modem in a text messaging FRS/GMRS radio design but would like users to have some privacy, if they desire.  How can I provide data privacy?

A: The CMX882 includes a configurable data scrambler in its FFSK/MSK data modem.  A configurable key, changed under software control, determines the data scrambling code.  If desired, a radio could allow users to select their key.  Setting radios to the same key would make them ‘data compatible’ to send/receive compatible text/paging messages.  Radios set to different key values would not be able to read text/data messages.

Minimize design time, design cost and manufacturing cost by creating multiple radio models from one design

Q: I offer several FRS/GMRS radio models with different features to suit different market tiers and user profiles.  How can I do that if I use the CMX882?

A: All the CMX882’s processing and trim functions are soft selectable so user features to be enabled by the manufacturer by simply changing host µC code.  In the simplest case, one printed circuit board design could be used for multiple radio models and each model’s features would be selected by including a printed circuit board jumper or solder bridge at the time of manufacture or final assembly.  This approach increases manufacturing quantities to reduce manufactured cost.

 

Backward compatibility

Q: Is the CMX882 backward compatible with less capable radios?

A: Yes.  All advanced CMX882 features (e.g. companding, scrambling, XTCSS, etc.) can be disabled to allow and CMX882-based radio to operate with simpler FRS radios, if desired.  Non-CTCSS and common CTCSS operating modes are supported.  Disabling the CMX882’s advanced features could be made a user configuration choice.

 

Circuit ‘tuning’ and performance degradation due to component drift

Q: What CMX882 component trimming is required to achieve optimum performance?

A: None.  The CMX882 performance is not susceptible to internal or external component drift due to time and temperature.  So long as the CMX882 is provided a clock source and supply voltage within specified tolerance it will provide top performance.  The CMX882 even includes some soft trims to allow the external RF FM modulator’s deviation sensitivity to be trimmed without adding and having to adjust an external potentiometer.

Total radio size

Q: I want to design very small and thin FRS/GMRS radios.  How can the CMX882 help?

A: The CMX882, with its complete set of functions, is available in a 28 pin TSSOP, which small footprint and very low height support designs featuring of extremely small form factor.

 

Development tools

Q: Do you provide any development support tools so I can quickly prototype with the CMX882 and confirm my new design?

A: Yes.  When fitted with an CMX882 device the EV8810 evaluation kit provides a printed circuit board for integration with your other prototype circuits.  The EV8810 makes use of a host PC (not provided) to simply and quickly control and configure the CMX882 by setting and displaying the target CMX882’s configuration parameters.  Develop prototype circuits and conduct design experiments immediately with the EV8810.

 

Supply voltage

Q: My radio circuits operate at 3V, nominal.  Can the CMX882?

A: Yes, the CMX882 supply voltage is 2.7 to 3.6V to be compatible with other popular low voltage components and circuits.

 

Radio ease-of-use

FRS/GMRS radios are consumer products and user are often confused by the configuration process.  Configuration errors, such as mismatching CTCSS codes, cause radio communications to fail and so are very annoying.  The CMX882 supports CTCSS, XTCSS, scrambling, companding, and MSK modem (with multiple packet types) functions.

Q: With so many attractive but potentially incompatible feature configurations won’t it take a very long time to configure a set of CMX882-based radios and won’t problematic configuration errors prove too cumbersome to real users?

A: No.  The CMX882 includes several unique and important features to deliver its many benefits to radio users without taking much time or causing configuration errors.  The key features are:

·         The CMX882 can very quickly analyze incoming signals and correctly identify their type.  Some competing CTCSS decoders would take several seconds to identify an unknown CTCSS code whereas the CMX882 can do so nearly as quickly as it can decode a specific, known tone.  This capability applies to the popular industry-standard 38 tone CTCSS tone set.

·         XTCSS can transparently identify certain transmission types (e.g. whether a transmission is voice scrambled) so the receiving radio can dynamically configure receiving functions (e.g. enable/disable the CMX882 voice descrambler).

These features allow CMX882-based radios to automate most of their configuration by cloning another radio’s CTCSS and/or XTCSS configuration.  Instead of manually configuring 2nd, 3rd, etc. radios they are easily cloned from a single, already configured, radio.  In concept, a user need only configure one ‘master’ radio, push its PTT button and then push a ‘clone’ button on the other radios in the group.  Each cloned radio will use the CMX882’s signal recognition features to learn the master radio’s signal configuration and reprogram its own configuration to match.

 

Firmware and IRQ’s

Q: I do not fully understand the different types of data format used in the CMX882 and am not sure which interrupts to consider in my radio receiver interrupt service routine?

A: The CMX882 FFSK/MSK data transfers operate in 1 of 6 modes, according to the bit settings in the Modem Control register ($C7).  The following provides a simple illustrative guide in how to handle the interrupts generated when any of the 6 type of data transmissions is received.

 

In each illustration the real FFSK/MSK data that is being received is shown in blue.  The black representation presents the received data, as the programmer would see it.  The red arrows are idealised representations of the interrupt flags and where in the receive state they appear.   Lastly the black text shows the Status register ($C6) bits that are actually set.

 

With all of the following Types if any of the appropriate bits are unmasked and are set in the Status register ($C6) then the IRQ bit ($C6 = b15) flag will also be set (if it to is unmasked).

 

Notes

 

1)       With the types 1 to 5, that include Frame Heads; if CRC A does not match the Address, Format, Size or CRC bytes the frame head will be ignored; no interrupts will be generated.  If CRC A is valid the Frame Head address byte will then be checked.

2)       For FFSK/MSK Types 4 and 5, the total length of user data must be included in the Frame Head (size byte) up to a maximum of $FF.

 

 

Type 0 = Unformatted data

Status Register Settings for Type 0

 

$C6 – b3 = 1200bps data present if set

$C6 – b4 = 2400bps data present if set

$C6 – b6 = FFSK Rx data transfer required 

 

 

Type 1 = Frame head only

Status Register Settings for Type 1

 

$C6 – b3 = 1200bps data present if set

$C6 – b4 = 2400bps data present if set

$C6 – b6 = FFSK/MSK Rx data transfer required

$C6 – b7 = End of FFSK Rx data.

 

Type 2 - Frame Head followed by unformatted data

Status Register Settings for Type 2

 

$C6 – b4 = 2400bps data present if set

$C6 – b3 = 1200bps data present if set

$C6 – b6 = FFSK/MSK Rx data transfer required

 

Type 3 – Frame Head Followed by FEC coded data only

Status Register Settings for Type 3

 

$C6 – b4 = 2400bps data present if set

$C6 – b3 = 1200bps data present if set

$C6 – b6 = FFSK/MSK Rx data transfer required

 

 

Type 4 – Frame Head followed by FEC coded data with CRC at the end of user data

Status Register Settings for Type 4

 

$C6 – b3 = 1200bps data present if set

$C6 – b4 = 2400bps data present if set

$C6 – b5 = If data checksum (CRC B) is incorrect this bit will be set

$C6 – b6 = FFSK/MSK Rx data transfer required

$C6 – b7 = End of FFSK Rx data.

 

 

Type 5 - Frame Head followed by FEC coded data with CRC at the end of interleaved user data

Status Register Settings for Type 5

 

$C6 – b3 = 1200bps data present if set

$C6 – b4 = 2400bps data present if set

$C6 – b5 = If data checksum (CRC B) is incorrect this bit will be set

$C6 – b6 = FFSK/MSK Rx data transfer required

$C6 – b7 = End of FFSK Rx data

 

This document is also available in PDF format