Also known as: C4FM
C4FM (compatible four-level FM) is the four-level FSK modulation used by P25 Phase 1 and System Fusion. The carrier sits at one of four frequency deviations per symbol, carrying 2 bits each.1 It is a continuous-phase, constant-envelope modulation designed to squeeze digital voice into a 12.5 kHz land-mobile channel.
How it works
C4FM runs at 4800 symbols per second, and because each symbol is a two-bit dibit the gross bit rate is 9600 bps — the distinction between symbol rate and bit rate that lets a narrow channel carry a usable voice payload. The four levels map to nominal frequency deviations of +1800, +600, −600, and −1800 Hz, standing for dibits 01, 00, 10, and 11. To keep the signal inside its channel mask, the dibit stream is not switched abruptly between levels; it is first shaped by a root-raised-cosine-style baseband filter and then integrated into a continuous phase trajectory, so the spectrum stays compact and the envelope stays constant. That constant envelope is the whole point: it lets P25 portables use efficient, non-linear Class-C amplifiers.
The receiver reverses this: it recovers instantaneous frequency (an FM discriminator), matched-filters, and slices at the symbol instants to decide which of the four levels was sent. The four levels appear as four clusters on a constellation and as three stacked openings — a three-eye pattern — on an eye diagram. The width of those eye openings is a direct readout of noise and intersymbol interference; good timing recovery samples at the centre of the eye.
Variants
C4FM is paired with CQPSK (compatible QPSK, also called linear simulcast modulation): the two are deliberately engineered to produce the same recovered symbol stream, so a single P25 receiver detects either transmit path. C4FM is the constant-envelope, FM-family path favoured by battery-powered subscriber units; CQPSK is the linear path favoured by simulcast infrastructure because linear modulation superimposes more gracefully when overlapping transmitters are received together. System Fusion (Yaesu YSF) reuses C4FM at the same 4800 baud for amateur digital voice, and P25’s control channel uses the same modulation as its voice.
Relevance to SDR
Recognising healthy C4FM symbols is central to decoding P25 Phase 1 and Fusion, and it is exactly what GopherTrunk does: its Phase 1 decode chain recovers the 4800-baud four-level symbols, then frames, deinterleaves, error-corrects, and hands the IMBE/AMBE voice bits to the vocoder. The scopes — constellation and eye diagram — reveal SNR, tuning offset, and timing problems at a glance, which is why the GopherTrunk DSP notes lean on demod SNR and EVM to judge whether a channel will lock.
Sources
-
Project 25 — Wikipedia, for the C4FM modulation, symbol rate, and its use in P25 Phase 1. ↩