From bd4096b6be27cdb1b1289cf2d080b8fd6fb83cd1 Mon Sep 17 00:00:00 2001 From: Jonathan Naylor Date: Sat, 25 Apr 2020 23:48:02 +0100 Subject: [PATCH] Revert "Make CTCSS threshold RXLevel and RXBoost agnostic" --- FMCTCSSRX.cpp | 12 ++---------- IO.cpp | 5 ----- IO.h | 2 -- 3 files changed, 2 insertions(+), 17 deletions(-) diff --git a/FMCTCSSRX.cpp b/FMCTCSSRX.cpp index 37e2772..164af75 100644 --- a/FMCTCSSRX.cpp +++ b/FMCTCSSRX.cpp @@ -113,15 +113,6 @@ CTCSSState CFMCTCSSRX::process(q15_t sample) { m_result = m_result & (~CTS_READY); - // sample / rxLevel - q15_t rxLevel = io.getRxLevel(); - q31_t sample31 = q31_t(sample) << 16; - if (((sample31 >> 31) & 1) == ((rxLevel >> 15) & 1)) - sample31 += rxLevel >> 1; - else - sample31 -= rxLevel >> 1; - sample31 /= rxLevel; - q31_t q2 = m_q1; m_q1 = m_q0; @@ -131,7 +122,7 @@ CTCSSState CFMCTCSSRX::process(q15_t sample) q31_t t3 = t2 * 2; // m_q0 = m_coeffDivTwo * m_q1 * 2 - q2 + sample - m_q0 = t3 - q2 + sample31; + m_q0 = t3 - q2 + q31_t(sample); m_count++; if (m_count == N) { @@ -152,6 +143,7 @@ CTCSSState CFMCTCSSRX::process(q15_t sample) // value = m_q0 * m_q0 + m_q1 * m_q1 - m_q0 * m_q1 * m_coeffDivTwo * 2 q31_t value = t2 + t4 - t9; + m_result = m_result | CTS_READY; if (value >= m_threshold) m_result = m_result | CTS_VALID; diff --git a/IO.cpp b/IO.cpp index afd56b0..a737693 100644 --- a/IO.cpp +++ b/IO.cpp @@ -592,8 +592,3 @@ bool CIO::hasLockout() const { return m_lockout; } - -q15_t CIO::getRxLevel() const -{ - return m_rxLevel; -} diff --git a/IO.h b/IO.h index f3ac4f9..5ad4b1d 100644 --- a/IO.h +++ b/IO.h @@ -56,8 +56,6 @@ public: void selfTest(); - q15_t getRxLevel() const; - private: bool m_started;