From 3c6df51020485107dcbcd2cacf43bd084bc7c13e Mon Sep 17 00:00:00 2001 From: Sjef Verhoeven PE5PVB Date: Tue, 28 May 2024 19:41:20 +0200 Subject: [PATCH] Extended FM band for 205 radios to start from 64MHz --- src/comms.cpp | 8 ++++---- src/comms.h | 1 + src/constants.h | 4 ++-- src/gui.cpp | 4 ++-- src/gui.h | 1 + 5 files changed, 10 insertions(+), 8 deletions(-) diff --git a/src/comms.cpp b/src/comms.cpp index c362aea..cc09bd2 100644 --- a/src/comms.cpp +++ b/src/comms.cpp @@ -22,7 +22,7 @@ void Communication() { String stlfreq = packet.substring(symPos + 5, packetSize); if (afscreen) BuildAdvancedRDS(); - if ((stlfreq.toInt()) / 10000 > 6500 && (stlfreq.toInt()) / 10000 < 10800) { + if ((stlfreq.toInt()) / 10000 > (TEF == 205 ? 6400 : 6500) && (stlfreq.toInt()) / 10000 < 10800) { unsigned int tempfreq = (stlfreq.toInt()) / 10000; if (tempfreq >= FREQ_FM_OIRT_START && tempfreq <= FREQ_FM_OIRT_END) { if (band != BAND_OIRT) { @@ -170,7 +170,7 @@ void Communication() { Serial.print("s:" + String(EE_PRESETS_FREQUENCY) + "\n"); Serial.print("o:" + String(ConverterSet) + "\n"); Serial.print("a:" + String(FREQ_LW_LOW_EDGE_MIN) + "," + String(FREQ_SW_END) + "\n"); - Serial.print("f:" + String(FREQ_FM_START) + "," + String(FREQ_FM_END) + "\n"); + Serial.print("f:" + String((TEF == 205 ? 64000 : 65000)) + "," + String(108000) + "\n"); for (byte x = 0; x < EE_PRESETS_CNT; x++) { Serial.print(x + 1); @@ -237,7 +237,7 @@ void Communication() { } else if (ConverterSet != 0 && memfreq >= FREQ_FM_OIRT_START * 10 && memfreq <= FREQ_FM_OIRT_END * 10) { memband = BAND_OIRT; memfreq /= 10; - } else if ((ConverterSet != 0 && memfreq > FREQ_FM_OIRT_START * 10) || ((ConverterSet == 0 && memfreq > FREQ_FM_OIRT_END * 10) && memfreq <= FREQ_FM_END * 10)) { + } else if ((ConverterSet != 0 && memfreq > FREQ_FM_OIRT_START * 10) || ((ConverterSet == 0 && memfreq > FREQ_FM_OIRT_END * 10) && memfreq <= 108000 * 10)) { memband = BAND_FM; memfreq /= 10; } else if (memfreq == EE_PRESETS_FREQUENCY) { @@ -556,7 +556,7 @@ void XDRGTKRoutine() { } radio.SetFreqAM(frequency_SW); } - if (freqtemp >= FREQ_FM_START && freqtemp <= FREQ_FM_END) { + if (freqtemp >= (TEF == 205 ? 64000 : 65000) && freqtemp <= 108000) { frequency = freqtemp / 10; if (afscreen) BuildAdvancedRDS(); if (band != BAND_FM) { diff --git a/src/comms.h b/src/comms.h index 54cc87a..eef6d0c 100644 --- a/src/comms.h +++ b/src/comms.h @@ -46,6 +46,7 @@ extern byte iMSset; extern byte language; extern byte memorypos; extern byte subnetclient; +extern byte TEF; extern char buff[16]; extern int ActiveColor; extern int ActiveColorSmooth; diff --git a/src/constants.h b/src/constants.h index 03935f8..8329572 100644 --- a/src/constants.h +++ b/src/constants.h @@ -54,12 +54,12 @@ #define FREQ_SW_LOW_EDGE_MAX (FREQ_SW_160M_START) #define FREQ_SW_HIGH_EDGE_MIN (FREQ_SW_11M_END) #define FREQ_SW_HIGH_EDGE_MAX (FREQ_SW_END) + #ifdef HAS_AIR_BAND #define FREQ_AIR_LOW_EDGE_MIN 108000 #define FREQ_AIR_HIGH_EDGE_MIN 137000 #endif -#define FREQ_FM_START 65000 -#define FREQ_FM_END 108000 + #define FREQ_FM_OIRT_START 6500 // use values of 1/10 * kHz #define FREQ_FM_OIRT_END 7400 // use values of 1/10 * kHz diff --git a/src/gui.cpp b/src/gui.cpp index 1d90d25..1523260 100644 --- a/src/gui.cpp +++ b/src/gui.cpp @@ -2256,7 +2256,7 @@ void MenuUp() { case ITEM2: LowEdgeSet ++; - if (LowEdgeSet > 1070) LowEdgeSet = 650; + if (LowEdgeSet > 1070) (TEF == 205 ? LowEdgeSet = 640 : LowEdgeSet = 650); OneBigLineSprite.setTextDatum(TL_DATUM); OneBigLineSprite.setTextColor(ActiveColor, ActiveColorSmooth, false); @@ -3111,7 +3111,7 @@ void MenuDown() { case ITEM2: LowEdgeSet -= 10; - if (LowEdgeSet < 650) LowEdgeSet = 1079; + if ((TEF == 205 ? LowEdgeSet < 640 : LowEdgeSet < 650)) LowEdgeSet = 1079; OneBigLineSprite.setTextDatum(TL_DATUM); OneBigLineSprite.setTextColor(ActiveColor, ActiveColorSmooth, false); diff --git a/src/gui.h b/src/gui.h index 36642ec..e945fc7 100644 --- a/src/gui.h +++ b/src/gui.h @@ -123,6 +123,7 @@ extern byte StereoLevel; extern byte StereoLevel; extern byte submenu; extern byte subnetclient; +extern byte TEF; extern byte tot; extern byte touchrotating; extern byte tunemode;