From 085b4a77c5c99cd01745239db09804a60e15b11b Mon Sep 17 00:00:00 2001 From: Sjef Verhoeven PE5PVB Date: Wed, 10 Apr 2024 17:48:07 +0200 Subject: [PATCH] Bugfixes --- TEF6686_ESP32.ino | 22 +++++++++++++++++++--- src/rds.cpp | 1 - 2 files changed, 19 insertions(+), 4 deletions(-) diff --git a/TEF6686_ESP32.ino b/TEF6686_ESP32.ino index 13c3a6d..91d33ed 100644 --- a/TEF6686_ESP32.ino +++ b/TEF6686_ESP32.ino @@ -2537,6 +2537,17 @@ bool IsStationEmpty() { return false; } +bool IsFrequencyUsed(unsigned int freq) { + bool result = false; + for (byte x = scanstart; x <= scanstop; x++) { + if (presets[x].frequency == freq) { + result = true; + break; + } + } + return result; +} + void ShowMemoryPos() { if (tunemode == TUNE_MEM) { int memposcolor = 0; @@ -2635,18 +2646,23 @@ void DoMemoryPosTune() { } } + radio.clearRDS(fullsearchrds); + String stationText = ""; if (presets[memorypos].RDSPS[0] != '\0') { - for (int i = 0; i < 9; i++) stationText += presets[memorypos].RDSPS[i]; + for (byte i = 0; i < 9; i++) stationText += presets[memorypos].RDSPS[i]; } if (presets[memorypos].RDSPI[0] != '\0') { - for (int i = 0; i < 5; i++) { + for (byte i = 0; i < 5; i++) { radio.rds.picode[i] = presets[memorypos].RDSPI[i]; } radio.rds.picode[6] = '\0'; + RDSstatus = true; } else { - radio.rds.picode[0] = '\0'; + for (byte i = 0; i < 6; i++) { + radio.rds.picode[i] = '\0'; + } } radio.rds.stationName = stationText; diff --git a/src/rds.cpp b/src/rds.cpp index 3bc00fe..82946a9 100644 --- a/src/rds.cpp +++ b/src/rds.cpp @@ -856,7 +856,6 @@ void showCT() { } void showRadioText() { -// radio.rds.stationText = "Jetzt in Ö1: Öffentlich-rechtlich auf Bewährung"; if (!screenmute) { if (radio.rds.hasRT && radio.rds.stationText.length() > 0) { if (String(radio.rds.stationText + radio.rds.stationText32).length() != Radiotextlengthold) {