fix it proper
This commit is contained in:
@@ -8,6 +8,7 @@ monitor_speed = 115200
|
|||||||
board = esp32dev
|
board = esp32dev
|
||||||
framework = arduino, espidf
|
framework = arduino, espidf
|
||||||
board_build.f_flash = 80000000L
|
board_build.f_flash = 80000000L
|
||||||
|
board_build.f_cpu = 160000000L
|
||||||
board_build.partitions = maxapp.csv
|
board_build.partitions = maxapp.csv
|
||||||
build_flags =
|
build_flags =
|
||||||
-Wall
|
-Wall
|
||||||
|
|||||||
+39
-41
@@ -1485,56 +1485,54 @@ void TEF6686::readRDS(byte showrdserrors) {
|
|||||||
break;
|
break;
|
||||||
|
|
||||||
case RDS_GROUP_15A: {
|
case RDS_GROUP_15A: {
|
||||||
if (showrdserrors == 3) {
|
if (pslong_process && rds.stationNameLong.length() > 0) rds.hasLongPS = true;
|
||||||
if (pslong_process && rds.stationNameLong.length() > 0) rds.hasLongPS = true;
|
uint8_t offset = (rds.rdsB & 7) * 4;
|
||||||
uint8_t offset = (rds.rdsB & 7) * 4;
|
|
||||||
|
|
||||||
pslong_buffer2[offset + 0] = pslong_buffer[offset + 0];
|
pslong_buffer2[offset + 0] = pslong_buffer[offset + 0];
|
||||||
pslong_buffer2[offset + 1] = pslong_buffer[offset + 1];
|
pslong_buffer2[offset + 1] = pslong_buffer[offset + 1];
|
||||||
pslong_buffer2[offset + 2] = pslong_buffer[offset + 2];
|
pslong_buffer2[offset + 2] = pslong_buffer[offset + 2];
|
||||||
pslong_buffer2[offset + 3] = pslong_buffer[offset + 3];
|
pslong_buffer2[offset + 3] = pslong_buffer[offset + 3];
|
||||||
pslong_buffer2[32] = '\0';
|
pslong_buffer2[32] = '\0';
|
||||||
|
|
||||||
if(!rdsCerrorThreshold) {
|
if(!rdsCerrorThreshold) {
|
||||||
pslong_buffer[offset + 0] = rds.rdsC >> 8;
|
pslong_buffer[offset + 0] = rds.rdsC >> 8;
|
||||||
pslong_buffer[offset + 1] = rds.rdsC & 0xff;
|
pslong_buffer[offset + 1] = rds.rdsC & 0xff;
|
||||||
|
}
|
||||||
|
if(!rdsDerrorThreshold) {
|
||||||
|
pslong_buffer[offset + 2] = rds.rdsD >> 8;
|
||||||
|
pslong_buffer[offset + 3] = rds.rdsD & 0xff;
|
||||||
|
}
|
||||||
|
pslong_buffer[32] = '\0';
|
||||||
|
|
||||||
|
byte endmarkerLPS = 32;
|
||||||
|
bool foundendmarker = false;
|
||||||
|
for (byte i = 0; i < endmarkerLPS; i++) {
|
||||||
|
if (pslong_buffer[i] == 0x0d) {
|
||||||
|
foundendmarker = true;
|
||||||
|
endmarkerLPS = i;
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
if(!rdsDerrorThreshold) {
|
}
|
||||||
pslong_buffer[offset + 2] = rds.rdsD >> 8;
|
|
||||||
pslong_buffer[offset + 3] = rds.rdsD & 0xff;
|
|
||||||
}
|
|
||||||
pslong_buffer[32] = '\0';
|
|
||||||
|
|
||||||
byte endmarkerLPS = 32;
|
if ((offset == 0 || foundendmarker) && (pslong_process || !rds.fastps)) {
|
||||||
bool foundendmarker = false;
|
if (strcmp(pslong_buffer, pslong_buffer2) == 0) {
|
||||||
for (byte i = 0; i < endmarkerLPS; i++) {
|
pslong_process = true;
|
||||||
if (pslong_buffer[i] == 0x0d) {
|
|
||||||
foundendmarker = true;
|
|
||||||
endmarkerLPS = i;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if ((offset == 0 || foundendmarker) && (pslong_process || !rds.fastps)) {
|
|
||||||
if (strcmp(pslong_buffer, pslong_buffer2) == 0) {
|
|
||||||
pslong_process = true;
|
|
||||||
PSLongtext = pslong_buffer;
|
|
||||||
rds.stationNameLong = extractUTF8Substring(pslong_buffer, 0, endmarkerLPS, true);
|
|
||||||
rds.stationNameLong = trimTrailingSpaces(rds.stationNameLong);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!pslong_process && rds.fastps) {
|
|
||||||
if (offset == 0) packet0long = true;
|
|
||||||
if (offset == 4) packet1long = true;
|
|
||||||
if (offset == 8) packet2long = true;
|
|
||||||
if (offset == 16) packet3long = true;
|
|
||||||
PSLongtext = pslong_buffer;
|
PSLongtext = pslong_buffer;
|
||||||
rds.stationNameLong = extractUTF8Substring(pslong_buffer, 0, endmarkerLPS, true);
|
rds.stationNameLong = extractUTF8Substring(pslong_buffer, 0, endmarkerLPS, true);
|
||||||
rds.stationNameLong = trimTrailingSpaces(rds.stationNameLong);
|
rds.stationNameLong = trimTrailingSpaces(rds.stationNameLong);
|
||||||
if ((packet0long && packet1long && packet2long && packet3long) || foundendmarker) pslong_process = true;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (!pslong_process && rds.fastps) {
|
||||||
|
if (offset == 0) packet0long = true;
|
||||||
|
if (offset == 4) packet1long = true;
|
||||||
|
if (offset == 8) packet2long = true;
|
||||||
|
if (offset == 16) packet3long = true;
|
||||||
|
PSLongtext = pslong_buffer;
|
||||||
|
rds.stationNameLong = extractUTF8Substring(pslong_buffer, 0, endmarkerLPS, true);
|
||||||
|
rds.stationNameLong = trimTrailingSpaces(rds.stationNameLong);
|
||||||
|
if ((packet0long && packet1long && packet2long && packet3long) || foundendmarker) pslong_process = true;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user