diff --git a/impl/src/layer1/rx.c b/impl/src/layer1/rx.c index e264178..0f8b1cf 100644 --- a/impl/src/layer1/rx.c +++ b/impl/src/layer1/rx.c @@ -274,8 +274,11 @@ result_t layer1_rx_process(layer1_rx_t *rx, const float complex *samples, size_t switch(update_and_check_squelch(rx, i)) { case SQUELCH_CLOSED: - // ignore this sample - continue; + if(rx->state == RX_STATE_ACQUISITION) { + // ignore this sample + continue; + } + break; case SQUELCH_JUST_OPENED: symsync_crcf_reset(rx->symsync); @@ -614,7 +617,7 @@ result_t layer1_rx_reset(layer1_rx_t *rx) bool layer1_rx_is_busy(const layer1_rx_t *rx) { - return is_squelch_open(rx); + return (rx->state != RX_STATE_ACQUISITION) || is_squelch_open(rx); }