From ed91c617d9fb9d04390faf0668dff79d5bc041ab Mon Sep 17 00:00:00 2001 From: denny Date: Mon, 30 Nov 2015 19:59:06 -0500 Subject: [PATCH] Updates to P25-C4FM decoder filtering and frequency correction. --- src/module/decode/p25/C4FMSymbolFilter.java | 3 --- src/module/decode/p25/P25_C4FMDecoder.java | 7 +++++-- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/src/module/decode/p25/C4FMSymbolFilter.java b/src/module/decode/p25/C4FMSymbolFilter.java index 6983d28a..17be10ac 100644 --- a/src/module/decode/p25/C4FMSymbolFilter.java +++ b/src/module/decode/p25/C4FMSymbolFilter.java @@ -260,9 +260,6 @@ public class C4FMSymbolFilter implements FrequencyCorrectionResetListener, // .getErrorCorrection() ); mFrequencyAdjustmentRequested = 0; - - /* reset internal frequency error tracker */ - mCoarseFrequencyCorrection = 0; } } diff --git a/src/module/decode/p25/P25_C4FMDecoder.java b/src/module/decode/p25/P25_C4FMDecoder.java index 75f1669b..1bd7f486 100644 --- a/src/module/decode/p25/P25_C4FMDecoder.java +++ b/src/module/decode/p25/P25_C4FMDecoder.java @@ -24,6 +24,7 @@ import instrument.tap.stream.FloatBufferTap; import instrument.tap.stream.FloatTap; import java.util.ArrayList; +import java.util.Arrays; import java.util.List; import org.slf4j.Logger; @@ -74,8 +75,10 @@ public class P25_C4FMDecoder extends P25Decoder implements IRealBufferListener super( aliasList ); /* Filter demodulated sample buffers */ - mC4FMPreFilter = new RealFIRFilter_RB_RB( FilterFactory.getLowPass( - 48000, 6750, 7500, 60, WindowType.HANNING, true ), 1.0f ); + float[] filter = FilterFactory.getLowPass( 48000, 2500, 4000, 80, WindowType.HANNING, true ); + + mLog.debug( "Filter taps:" + filter.length + " co:" + Arrays.toString( filter ) ); + mC4FMPreFilter = new RealFIRFilter_RB_RB( filter, 1.0f ); /* Issue tuned frequency correction commands, remotely controlled by the * downstream symbol filter */