From 61d215ee6d2ed065bac9a0d9f5cc69c17735f197 Mon Sep 17 00:00:00 2001 From: Zilog80 Date: Sun, 12 Mar 2023 18:35:48 +0100 Subject: [PATCH] M20: more PTU plausibility checks --- demod/mod/mXXmod.c | 10 ++++++---- demod/multi/m20base.c | 10 ++++++---- 2 files changed, 12 insertions(+), 8 deletions(-) diff --git a/demod/mod/mXXmod.c b/demod/mod/mXXmod.c index 2bd2b24..17897ca 100644 --- a/demod/mod/mXXmod.c +++ b/demod/mod/mXXmod.c @@ -621,7 +621,7 @@ static float get_Temp(gpx_t *gpx) { if (R > 0) T = 1.0/( p0 + p1*log(R) + p2*log(R)*log(R) + p3*log(R)*log(R)*log(R) ); - if (T > 333.15) T = 0; // T > 60C invalid + if (T-273.15 < -120.0 || T-273.15 > 60.0) T = 0; // T < -120C, T > 60C invalid return T - 273.15; // Celsius } @@ -688,9 +688,11 @@ static float get_RH(gpx_t *gpx) { RH = -1.0f; if (humval < 48000) { - RH = x; - if (RH < 0.0f ) RH = 0.0f; - if (RH > 100.0f) RH = 100.0f; + if (x > -20.0f && x < 120.f) { + RH = x; + if (RH < 0.0f ) RH = 0.0f; + if (RH > 100.0f) RH = 100.0f; + } } // (Hyland and Wexler) Tntc2 (T_RH) <-> Tmain ? diff --git a/demod/multi/m20base.c b/demod/multi/m20base.c index 9a4100d..f157425 100644 --- a/demod/multi/m20base.c +++ b/demod/multi/m20base.c @@ -603,7 +603,7 @@ static float get_Temp(gpx_t *gpx) { if (R > 0) T = 1.0/( p0 + p1*log(R) + p2*log(R)*log(R) + p3*log(R)*log(R)*log(R) ); - if (T > 333.15) T = 0; // T > 60C invalid + if (T-273.15 < -120.0 || T-273.15 > 60.0) T = 0; // T < -120C, T > 60C invalid return T - 273.15; // Celsius } @@ -670,9 +670,11 @@ static float get_RH(gpx_t *gpx) { RH = -1.0f; if (humval < 48000) { - RH = x; - if (RH < 0.0f ) RH = 0.0f; - if (RH > 100.0f) RH = 100.0f; + if (x > -20.0f && x < 120.f) { + RH = x; + if (RH < 0.0f ) RH = 0.0f; + if (RH > 100.0f) RH = 100.0f; + } } // (Hyland and Wexler) Tntc2 (T_RH) <-> Tmain ?