diff --git a/lib/bs412.c b/lib/bs412.c index 3111745..f527cdc 100644 --- a/lib/bs412.c +++ b/lib/bs412.c @@ -9,15 +9,10 @@ void init_modulation_power_measure(MPXPowerMeasurement* mpx, int sample_rate) { float measure_mpx(MPXPowerMeasurement* mpx, int deviation) { mpx->sample += 20*log10f(deviation/19000.0f); mpx->i++; - + float modulation_power = mpx->sample/mpx->i; if (mpx->i >= mpx->sample_rate) { - float modulation_power = mpx->sample/mpx->i; - mpx->sample = 0.0f; mpx->i = 0; - - return modulation_power; - } else { - return -9999.0f; - } + } + return modulation_power; } \ No newline at end of file diff --git a/src/fm95.c b/src/fm95.c index 9ed3f00..32df6bd 100644 --- a/src/fm95.c +++ b/src/fm95.c @@ -517,7 +517,7 @@ int main(int argc, char **argv) { if(sca_on) output[i] += modulate_fm(&sca_mod, hard_clip(current_sca_in, sca_clipper_threshold))*SCA_VOLUME; float mpower = measure_mpx(&power, output[i]*75000); - if(mpower != 9999.0f) { + if(mpower > 3) { printf("MPX Power (%f)\n", mpower); }