Re: OP25 FSK4 Demodulator Error

Hi, Before I start working on Op25 I want to know what kind of
demodulator
detector is op25 using? Correlation filters or frequency discriminator
(quadrature demod) ? Which algos for symbol timing and frequency offset,
Equalization?


Bob

Hi Bob

 On Thursday, February 26, 2015 12:40 PM, bob wole 

[email protected] wrote:

Hi, Before I start working on Op25 I want to know what kind of
demodulator detector is op25> using? Correlation filters or frequency
discriminator (quadrature demod) ? Which algos> for symbol timing and
frequency offset, Equalization?
Any given P25 system might use one of two different, quasi-compatible
modulation families: so-called “C4FM” and “CQPSK”. In practice we’ve
yet to find a single receiver algo that optimally receives both these
two different modulation types; accordingly, there are two different
user-selectable demodulator chains in OP25.
C4FM is conventional 4-level FSK at 4800 baud. The OP25 demodulator for
this flavor consists of an FM demodulator [quadrature_demod_cf(), or
often just a piece of hardware tapped after the FM discriminator stage]
feeding into Frank’s FSK4 demod block for GNU Radio which is detailed
here:
https://sites.google.com/site/radiorausch/GnuradioFourLevelFSK.html
CQPSK is a variation of PI/4 DQPSK in which the transmitter power is
not constant (as it would be with C4FM). In CQPSK the carrier amplitude
may be reduced to virtually zero halfway between each successive data
symbol. OP25 uses an analog Costas/Gardner loop followed by a
differential demodulator for this modulation format. Here is a page I
put together some time back with some more technical info about the
waveform

http://www.lightlink.com/mhp/demod/

As to your question about equalization, that’s a very interesting
question and it’s one of the things that would be very nice to add (in a
world where infinite time existed, it might already be). One of the
complications with this is the use of P25 “LSM” simulcast, in which the
same signal is sent over multiple transmitters at the same time. This
makes it very challenging to come up with a plausible-looking model for
the channel. In addition, we suspect that some flavors of LSM contain a
slow signalling side channel that appears to be used for dynamic
equalization training, but it’s undocumented and proprietary…
Max

This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.

| Privacy Policy | Terms of Service | Remote Ruby Jobs