Added AF/EON list screen

Long press Band in Advanced RDS view to open the list.
This commit is contained in:
Sjef Verhoeven PE5PVB
2023-07-10 21:43:21 +02:00
parent de160fb178
commit 4acdd5f01f
2 changed files with 998 additions and 882 deletions
+175 -71
View File
@@ -39,6 +39,7 @@ TFT_eSPI tft = TFT_eSPI(240, 320);
#endif
bool advancedRDS;
bool afscreen;
bool artheadold;
bool batterydetect = true;
bool BWreset;
@@ -194,6 +195,7 @@ IPAddress remoteip;
String cryptedpassword;
String CurrentThemeString;
String ECColdtxt;
String eonpsold[11];
String LIColdString;
String PIold;
String pinstringold;
@@ -278,7 +280,7 @@ byte screensaver_IRQ = OFF;
void setup() {
setupmode = true;
EEPROM.begin(263);
if (EEPROM.readByte(43) != 29) DefaultSettings();
if (EEPROM.readByte(43) != 30) DefaultSettings();
frequency = EEPROM.readUInt(0);
VolSet = EEPROM.readInt(4);
@@ -594,7 +596,7 @@ void loop() {
if (seek == true) Seek(direction);
if ((SStatus / 10 > LowLevelSet) && LowLevelInit == false && menu == false && band == BAND_FM) {
if (screenmute == false && !advancedRDS) {
if (screenmute == false && !advancedRDS && !afscreen) {
tft.setFreeFont(FONT7);
tft.setTextColor(ActiveColor);
if (showmodulation) {
@@ -618,7 +620,7 @@ void loop() {
if ((SStatus / 10 <= LowLevelSet) && band == BAND_FM) {
if (LowLevelInit == true && menu == false) {
if (screenmute == false && !advancedRDS) {
if (screenmute == false && !afscreen && !advancedRDS) {
tft.setFreeFont(FONT7);
tft.fillRect(20, 139, 12, 8, GreyoutColor);
tft.fillRect(34, 139, 12, 8, GreyoutColor);
@@ -670,7 +672,7 @@ void loop() {
doSquelch();
readRds();
GetData();
if (screenmute == false && advancedRDS == false) ShowModLevel();
if (screenmute == false && afscreen == false && advancedRDS == false) ShowModLevel();
}
}
@@ -704,9 +706,9 @@ void loop() {
if (screensaverset && !menu) ScreensaverTimerRestart();
}
if (digitalRead(ROTARY_BUTTON) == LOW) ButtonPress();
if (digitalRead(MODEBUTTON) == LOW && screenmute == false) ModeButtonPress();
if (digitalRead(BWBUTTON) == LOW && screenmute == false) BWButtonPress();
if (digitalRead(ROTARY_BUTTON) == LOW) if (!afscreen) ButtonPress();
if (digitalRead(MODEBUTTON) == LOW && screenmute == false) if (!afscreen) ModeButtonPress();
if (digitalRead(BWBUTTON) == LOW && screenmute == false) if (!afscreen) BWButtonPress();
if (store == true) change++;
@@ -751,19 +753,23 @@ void loop() {
void GetData() {
if (screenmute == false) {
if (band == BAND_FM) {
if (advancedRDS) ShowAdvancedRDS();
if (advancedRDS && !afscreen) ShowAdvancedRDS();
if (afscreen) ShowAFEON();
if (!afscreen)
{
showPI();
showPTY();
showPS();
doAF();
showECC();
showRadioText();
}
ShowStereoStatus();
}
ShowRSSI();
ShowBattery();
ShowOffset();
ShowSignalLevel();
if (!afscreen) ShowSignalLevel();
ShowBW();
}
}
@@ -829,6 +835,9 @@ void ScreensaverInterrupt()
}
void BANDBUTTONPress() {
if (afscreen) {
BuildAdvancedRDS();
} else {
unsigned long counterold = millis();
unsigned long counter = millis();
if (menu == false && power) {
@@ -854,7 +863,7 @@ void BANDBUTTONPress() {
}
} else {
if (band == BAND_FM) {
if (advancedRDS) BuildDisplay(); else BuildAdvancedRDS();
if (advancedRDS) BuildAFScreen(); else BuildAdvancedRDS();
}
}
while (digitalRead(BANDBUTTON) == LOW) delay(50);
@@ -879,6 +888,7 @@ void BANDBUTTONPress() {
}
}
}
}
}
void StoreFrequency() {
@@ -1959,6 +1969,7 @@ void ButtonPress() {
void KeyUp() {
rotary = 0;
if (!afscreen) {
if (menu == false) {
switch (tunemode) {
case TUNE_MAN:
@@ -2364,10 +2375,12 @@ void KeyUp() {
}
}
}
}
}
void KeyDown() {
rotary = 0;
if (!afscreen) {
if (menu == false) {
switch (tunemode) {
case TUNE_MAN:
@@ -2774,6 +2787,7 @@ void KeyDown() {
}
}
}
}
}
void ShowMemoryPos() {
@@ -2814,6 +2828,7 @@ void readRds() {
if (band == BAND_FM) {
RDSstatus = radio.rds.hasRDS;
ShowRDSLogo(RDSstatus);
if (!afscreen) {
if (RDSstatus == 0 && screenmute == false) {
tft.setTextColor(SecondaryColor);
tft.setFreeFont(FONT14);
@@ -2840,6 +2855,7 @@ void readRds() {
dropout = false;
}
}
}
if ((RDSstatus == 1 && RDSSPYUSB == true) || (RDSstatus == 1 && RDSSPYTCP == true)) {
RDSSPYRDS = "G:\r\n";
@@ -3484,12 +3500,98 @@ void MuteScreen(int setting) {
}
}
void ShowAFEON() {
tft.setTextColor(PrimaryColor);
if (radio.rds.hasAF) {
if (af_counterold != radio.af_counter) {
byte af_counter_show;
if (af_counter_show < 21) {
af_counter_show++;
tft.fillRect(2, 48, 150, 170, BackgroundColor);
for (byte i = 0; i < radio.af_counter; i++) tft.drawRightString((radio.af[i].filler ? "(f) " : "") + String(radio.af[i].frequency / 100) + "." + (radio.af[i].frequency % 100 < 10 ? "0" : "") + String(radio.af[i].frequency % 100), (i > 10 ? 145 : 60), 48 + (15 * i) - (i > 10 ? 165 : 0), GFXFF);
if (radio.af_counter > 10) tft.drawLine(75, 48, 75, 218, FrameColor);
}
af_counterold = radio.af_counter;
}
} else {
tft.drawString(myLanguage[language][87], 6, 45, GFXFF);
}
if (radio.rds.hasEON) {
if (haseonold == false) {
tft.setTextColor(BackgroundColor);
tft.drawString(myLanguage[language][88], 164, 45, GFXFF);
tft.setTextColor(PrimaryColor);
}
haseonold = true;
for (byte i = 0; i < radio.eon_counter; i++) {
byte eon_counter_show;
if (eon_counter_show < 11) {
eon_counter_show++;
tft.drawRightString(String(radio.eon[i].picode), 200, 48 + (15 * i), GFXFF);
if (radio.eon[i].ps.length() > 0) {
tft.setTextColor(ActiveColor);
tft.drawString("PS :", 210, 30, GFXFF);
tft.setTextColor(PrimaryColor);
if (radio.eon[i].ps != eonpsold[i]) {
tft.setTextColor(BackgroundColor);
tft.drawString(String(eonpsold[i]), 210, 48 + (15 * i), GFXFF);
eonpsold[i] = radio.eon[i].ps;
}
tft.drawString(String(radio.eon[i].ps), 210, 48 + (15 * i), GFXFF);
}
if (radio.eon[i].mappedfreq > 0) {
tft.setTextColor(ActiveColor);
tft.drawRightString("FREQ:", 310, 30, GFXFF);
tft.setTextColor(PrimaryColor);
tft.drawRightString(String(radio.eon[i].mappedfreq / 100) + "." + (radio.eon[i].mappedfreq % 100 < 10 ? "0" : "") + String(radio.eon[i].mappedfreq % 100), 310, 48 + (15 * i), GFXFF);
}
}
}
} else {
tft.drawString(myLanguage[language][88], 164, 45, GFXFF);
}
}
void BuildAFScreen() {
afscreen = true;
advancedRDS = false;
if (theme == 0) {
tft.invertDisplay(colorinvert);
tft.fillScreen(BackgroundColor);
tft.drawRect(0, 0, 320, 240, FrameColor);
tft.drawLine(0, 30, 320, 30, FrameColor);
tft.drawLine(0, 218, 320, 218, FrameColor);
tft.drawLine(160, 30, 160, 218, FrameColor);
tft.setTextColor(ActiveColor);
tft.setFreeFont(FONT14);
tft.drawString("kHz", 225, -5, GFXFF);
tft.setTextColor(ActiveColor);
tft.setFreeFont(FONT7);
tft.drawRightString("AF : ", 60, 30, GFXFF);
tft.drawRightString("PI : ", 200, 30, GFXFF);
tft.drawCentreString(myLanguage[language][93], 160, 218, GFXFF);
RDSstatusold = false;
Stereostatusold = false;
haseonold = false;
BWreset = true;
SStatusold = 2000;
rssiold = 2000;
batteryold = 6;
af_counterold = 254;
for (byte i = 0; i < 11; i++) eonpsold[i] = "";
}
}
void BuildAdvancedRDS() {
afscreen = false;
advancedRDS = true;
ScreensaverTimerSet(OFF);
if (theme == 0) {
tft.invertDisplay(colorinvert);
tft.fillScreen(BackgroundColor);
tft.drawRect(0, 0, 320, 240, FrameColor);
tft.drawLine(0, 30, 320, 30, FrameColor);
tft.drawLine(0, 70, 320, 70, FrameColor);
tft.drawLine(0, 103, 320, 103, FrameColor);
@@ -3507,24 +3609,24 @@ void BuildAdvancedRDS() {
tft.setTextColor(ActiveColor);
tft.setFreeFont(FONT7);
tft.drawString("ERRORS:", 6, 30, GFXFF);
tft.drawString("ERRORS : ", 6, 30, GFXFF);
tft.drawRightString("dBμV", 310, 45, GFXFF);
if (region == 0) tft.drawString("PI:", 216, 76, GFXFF);
if (region == 1) tft.drawString("ID:", 216, 76, GFXFF);
tft.drawString("PS:", 6, 76, GFXFF);
tft.drawString("PTY:", 6, 105, GFXFF);
tft.drawString("RT+:", 6, 146, GFXFF);
tft.drawString("EON:", 6, 171, GFXFF);
tft.drawString("AF:", 6, 196, GFXFF);
tft.drawString("RT:", 6, 218, GFXFF);
tft.drawString("PTYN:", 216, 105, GFXFF);
tft.drawString("A:", 60, 30, GFXFF);
tft.drawString("B:", 100, 30, GFXFF);
tft.drawString("C:", 140, 30, GFXFF);
tft.drawString("D:", 180, 30, GFXFF);
tft.drawString("ECC:", 216, 190, GFXFF);
tft.drawString("LIC:", 216, 205, GFXFF);
tft.drawString("PIN:", 216, 220, GFXFF);
if (region == 0) tft.drawString("PI : ", 216, 76, GFXFF);
if (region == 1) tft.drawString("ID : ", 216, 76, GFXFF);
tft.drawString("PS : ", 6, 76, GFXFF);
tft.drawString("PTY : ", 6, 105, GFXFF);
tft.drawString("RT + : ", 6, 146, GFXFF);
tft.drawString("EON : ", 6, 171, GFXFF);
tft.drawString("AF : ", 6, 196, GFXFF);
tft.drawString("RT : ", 6, 218, GFXFF);
tft.drawString("PTYN : ", 216, 105, GFXFF);
tft.drawString("A : ", 60, 30, GFXFF);
tft.drawString("B : ", 100, 30, GFXFF);
tft.drawString("C : ", 140, 30, GFXFF);
tft.drawString("D : ", 180, 30, GFXFF);
tft.drawString("ECC : ", 216, 190, GFXFF);
tft.drawString("LIC : ", 216, 205, GFXFF);
tft.drawString("PIN : ", 216, 220, GFXFF);
tft.drawRightString("Dynamic PTY", 300, 128, GFXFF);
tft.drawRightString("Artificial Head", 300, 143, GFXFF);
tft.drawRightString("Compressed", 300, 158, GFXFF);
@@ -3545,7 +3647,7 @@ void BuildAdvancedRDS() {
tft.setTextColor(ActiveColor);
tft.setFreeFont(FONT14);
tft.drawString("kHz", 225, -5, GFXFF);
tft.setTextColor(ActiveColor);
tft.drawCircle(81, 15, 10, GreyoutColor);
tft.drawCircle(81, 15, 9, GreyoutColor);
tft.drawCircle(91, 15, 10, GreyoutColor);
@@ -3564,7 +3666,7 @@ void BuildAdvancedRDS() {
tft.drawString("AF", 42, 45, GFXFF);
tft.drawString("CT", 62, 45, GFXFF);
tft.drawString("TMC", 82, 45, GFXFF);
tft.drawString("RT+", 116, 45, GFXFF);
tft.drawString("RT + ", 116, 45, GFXFF);
tft.drawString("EON", 148, 45, GFXFF);
tft.drawString("M", 185, 45, GFXFF);
tft.drawString("S", 198, 45, GFXFF);
@@ -3573,7 +3675,6 @@ void BuildAdvancedRDS() {
RDSstatusold = false;
ShowFreq(0);
Stereostatusold = false;
updateBW();
SStatusold = 2000;
SStatus = 100;
rssiold = 2000;
@@ -3587,6 +3688,7 @@ void BuildAdvancedRDS() {
MSold = 0;
ECCold = 254;
licold = 254;
af_counterold = 254;
TAold = false;
TPold = false;
hastmcold = false;
@@ -3606,6 +3708,7 @@ void BuildAdvancedRDS() {
}
void BuildDisplay() {
afscreen = false;
advancedRDS = false;
if (theme == 0) {
tft.invertDisplay(colorinvert);
@@ -3634,21 +3737,21 @@ void BuildDisplay() {
}
tft.setTextColor(ActiveColor);
tft.setFreeFont(FONT7);
if (showsquelch) tft.drawString("SQ:", 216, 150, GFXFF);
tft.drawString("S/N", 250, 164, GFXFF);
if (showsquelch) tft.drawString("SQ : ", 216, 150, GFXFF);
tft.drawString("S / N", 250, 164, GFXFF);
tft.drawString("dB", 300, 164, GFXFF);
tft.drawString("S", 6, 100, GFXFF);
if (region == 0) tft.drawString("PI:", 216, 191, GFXFF);
if (region == 1) tft.drawString("ID:", 216, 191, GFXFF);
tft.drawString("PS:", 6, 191, GFXFF);
tft.drawString("PTY:", 6, 164, GFXFF);
if (region == 0) tft.drawString("PI : ", 216, 191, GFXFF);
if (region == 1) tft.drawString("ID : ", 216, 191, GFXFF);
tft.drawString("PS : ", 6, 191, GFXFF);
tft.drawString("PTY : ", 6, 164, GFXFF);
tft.drawString("1", 24, 116, GFXFF);
tft.drawString("3", 48, 116, GFXFF);
tft.drawString("5", 72, 116, GFXFF);
tft.drawString("7", 96, 116, GFXFF);
tft.drawString("9", 120, 116, GFXFF);
tft.drawString("+10", 134, 116, GFXFF);
tft.drawString("+30", 174, 116, GFXFF);
tft.drawString(" + 10", 134, 116, GFXFF);
tft.drawString(" + 30", 174, 116, GFXFF);
if (!showmodulation) tft.setTextColor(GreyoutColor);
tft.drawString("M", 6, 132, GFXFF);
tft.drawString("20", 20, 146, GFXFF);
@@ -3657,7 +3760,7 @@ void BuildDisplay() {
tft.drawString("80", 110, 146, GFXFF);
tft.drawString("100", 134, 146, GFXFF);
tft.drawString("120", 164, 146, GFXFF);
tft.drawString("%", 196, 146, GFXFF);
tft.drawString(" % ", 196, 146, GFXFF);
tft.setTextColor(ActiveColor);
tft.setFreeFont(FONT14);
tft.drawString("kHz", 225, -5, GFXFF);
@@ -3703,7 +3806,7 @@ void BuildDisplay() {
tft.setFreeFont(GUI2_FONT12);
tft.setTextColor(ActiveColor);
tft.drawString("PI:", 26, 102, GFXFF);
tft.drawString("PI : ", 26, 102, GFXFF);
tft.setFreeFont(GUI2_FONT12);
tft.setTextColor(PrimaryColor);
@@ -3719,7 +3822,7 @@ void BuildDisplay() {
tft.setTextColor(ActiveColor);
tft.setFreeFont(GUI2_FONT7);
tft.drawRightString("dB S/N", 294, 132, GFXFF);
tft.drawRightString("dB S / N", 294, 132, GFXFF);
tft.setFreeFont(GUI2_FONT7);
tft.setTextColor(PrimaryColor);
@@ -3727,7 +3830,7 @@ void BuildDisplay() {
tft.setTextColor(PrimaryColor);
tft.setFreeFont(GUI2_FONT12);
tft.drawCentreString("R-ZURNAL", 160, 156, GFXFF);
tft.drawCentreString("R - ZURNAL", 160, 156, GFXFF);
tft.setTextColor(TFT_DARKGREY);
tft.setFreeFont(GUI2_FONT7);
@@ -3767,11 +3870,11 @@ void BuildDisplay() {
tft.setFreeFont(GUI2_FONT7);
tft.setTextColor(ActiveColor);
tft.drawCentreString("21:35", 160, -4, GFXFF);
tft.drawCentreString("21 : 35", 160, -4, GFXFF);
tft.setFreeFont(GUI2_FONT7);
tft.setTextColor(ActiveColor);
tft.drawString("89 %", 243, -4, GFXFF);
tft.drawString("89 % ", 243, -4, GFXFF);
tft.setFreeFont(GUI2_FONT12);
tft.setTextColor(PrimaryColor);
@@ -3780,7 +3883,7 @@ void BuildDisplay() {
tft.setFreeFont(GUI2_FONT7);
tft.setTextColor(TFT_DARKGREY);
tft.drawString("1 3 5 7 9 +10 +30", 30, 220, GFXFF);
tft.drawString("1 3 5 7 9 + 10 + 30", 30, 220, GFXFF);
tft.drawString("20 50 70 100 120", 204, 220, GFXFF);
for (;;);
@@ -3800,6 +3903,7 @@ void BuildDisplay() {
SStatus = 100;
rssiold = 2000;
SNRold = 254;
af_counterold = 254;
batteryold = 6;
rds_clockold = "";
strcpy(programTypePrevious, "0");
@@ -3897,8 +4001,8 @@ void ShowFreq(int mode) {
if (wifi) {
Udp.beginPacket(remoteip, 9030);
Udp.print("from=TEF tuner;freq=");
if (band != BAND_FM) Udp.print(String(frequency_AM) + "000;ClearRDS=1"); else Udp.print(String(frequency) + "0000;ClearRDS=1");
Udp.print("from = TEF tuner; freq = ");
if (band != BAND_FM) Udp.print(String(frequency_AM) + "000; ClearRDS = 1"); else Udp.print(String(frequency) + "0000; ClearRDS = 1");
Udp.endPacket();
}
}
@@ -3984,7 +4088,7 @@ void ShowSignalLevel() {
}
if (wifi) {
Udp.beginPacket(remoteip, 9030);
Udp.print("from=TEF tuner;RcvLevel=");
Udp.print("from = TEF tuner; RcvLevel = ");
Udp.print(SStatus / 10);
Udp.endPacket();
}
@@ -4141,7 +4245,7 @@ void ShowBW() {
BWreset = false;
if (wifi) {
Udp.beginPacket(remoteip, 9030);
Udp.print("from=TEF tuner;Bandwidth=");
Udp.print("from = TEF tuner; Bandwidth = ");
Udp.print(BW * 1000);
Udp.endPacket();
}
@@ -4189,7 +4293,7 @@ void doSquelch() {
if (XDRGTKUSB == false && XDRGTKTCP == false) {
Squelch = analogRead(PIN_POT) / 4 - 100;
if (Squelch > 920) Squelch = 920;
if (showsquelch && !advancedRDS) {
if (showsquelch && !advancedRDS && !afscreen) {
if (seek == false && menu == false && Squelch != Squelchold) {
tft.setTextColor(BackgroundColor);
if (Squelchold == -100) {
@@ -4230,7 +4334,7 @@ void doSquelch() {
SQ = true;
}
}
if (screenmute == false && showsquelch == true && !advancedRDS) {
if (screenmute == false && showsquelch == true && !advancedRDS && !afscreen) {
if (Squelch != Squelchold) {
tft.setTextColor(BackgroundColor);
if (Squelchold == -1) tft.drawCentreString("ST", 224, 164, GFXFF); else tft.drawCentreString(String(Squelchold / 10), 224, 164, GFXFF);
@@ -4264,18 +4368,18 @@ void doSquelch() {
void updateBW() {
tft.setFreeFont(FONT7);
if (BWset == 0) {
if (screenmute == false && advancedRDS == false) {
if (screenmute == false && advancedRDS == false && afscreen == false) {
tft.drawRoundRect(249, 35, 68, 20, 5, ActiveColor);
tft.setTextColor(ActiveColor);
}
radio.setFMABandw();
} else {
if (screenmute == false && advancedRDS == false) {
if (screenmute == false && advancedRDS == false && afscreen == false) {
tft.drawRoundRect(249, 35, 68, 20, 5, GreyoutColor);
tft.setTextColor(GreyoutColor);
}
}
if (advancedRDS == false) tft.drawCentreString("AUTO BW", 282, 33, GFXFF);
if (screenmute == false && advancedRDS == false && afscreen == false) tft.drawCentreString("AUTO BW", 282, 33, GFXFF);
}
void updateiMS() {
@@ -4617,14 +4721,14 @@ void Communication() {
Udp.read(packetBuffer, packetSize);
Udp.endPacket();
String packet = String(packetBuffer);
if (packetBuffer == "from=StationList;freq=?;bandwidth=?") {
if (packetBuffer == "from = StationList; freq = ?; bandwidth = ? ") {
ShowFreq(0);
Udp.beginPacket(remoteip, 9030);
Udp.print("from=TEF tuner;Bandwidth=");
Udp.print("from = TEF tuner; Bandwidth = ");
Udp.print(BW * 1000);
Udp.endPacket();
} else {
int symPos = packet.indexOf("freq=");
int symPos = packet.indexOf("freq = ");
String stlfreq = packet.substring(symPos + 5, packetSize);
if ((stlfreq.toInt()) / 10000 > 6500 && (stlfreq.toInt()) / 10000 < 10800) {
if (band != BAND_FM) {
@@ -4684,9 +4788,9 @@ void Communication() {
SelectBand();
}
XDRGTKTCP = true;
RemoteClient.print("o1,0\n");
RemoteClient.print("o1, 0\n");
store = true;
} else if (RDSSPYTCP == false && XDRGTKTCP == false && data_str.length() < 5 && data_str == ("*R?F"))
} else if (RDSSPYTCP == false && XDRGTKTCP == false && data_str.length() < 5 && data_str == ("*R ? F"))
{
RDSSPYTCP = true;
} else if (RDSSPYTCP == true) {
@@ -4713,7 +4817,7 @@ void Communication() {
{
String data_str = Serial.readStringUntil('\n');
int data = data_str.toInt();
if (data_str.length() > 1 && data_str == ("*D*R?F")) RDSSPYUSB = true;
if (data_str.length() > 1 && data_str == ("*D * R ? F")) RDSSPYUSB = true;
int symPos = data_str.indexOf("*F");
if (symPos >= 5) {
String freq = data_str.substring(0, symPos);
@@ -4971,7 +5075,7 @@ void XDRGTKRoutine() {
case 'Q':
Squelch = atoi(buff + 1);
if (Squelch == -1) {
DataPrint("Q-1\n");
DataPrint("Q - 1\n");
} else {
Squelch *= 10;
DataPrint("Q\n");
@@ -5039,11 +5143,11 @@ void XDRGTKRoutine() {
for (freq_scan = scanner_start; freq_scan <= scanner_end; freq_scan += scanner_step) {
radio.SetFreq(freq_scan);
DataPrint(String(freq_scan * 10, DEC));
DataPrint("=");
DataPrint(" = ");
delay(10);
if (band == BAND_FM) radio.getStatus(SStatus, USN, WAM, OStatus, BW, MStatus); else radio.getStatusAM(SStatus, USN, WAM, OStatus, BW, MStatus);
DataPrint(String((SStatus / 10) + 10, DEC));
DataPrint(",");
DataPrint(", ");
}
DataPrint("\n");
if (screenmute == false) {
@@ -5139,7 +5243,7 @@ void XDRGTKRoutine() {
DataPrint("Sm");
}
}
DataPrint(String(((SStatus * 100) + 10875) / 1000) + "." + String(((SStatus * 100) + 10875) / 100 % 10) + "," + String(WAM / 10) + "," + String(SNR) + "\n");
DataPrint(String(((SStatus * 100) + 10875) / 1000) + "." + String(((SStatus * 100) + 10875) / 100 % 10) + ", " + String(WAM / 10) + ", " + String(SNR) + "\n");
}
void TuneUp() {
@@ -5217,8 +5321,8 @@ void TuneUp() {
frequency_SW = frequency_AM;
}
radio.clearRDS(fullsearchrds);
if (RDSSPYUSB == true) Serial.print("G:\r\nRESET-------\r\n\r\n");
if (RDSSPYTCP == true) RemoteClient.print("G:\r\nRESET-------\r\n\r\n");
if (RDSSPYUSB == true) Serial.print("G : \r\nRESET------ -\r\n\r\n");
if (RDSSPYTCP == true) RemoteClient.print("G : \r\nRESET------ -\r\n\r\n");
}
void TuneDown() {
@@ -5296,8 +5400,8 @@ void TuneDown() {
frequency_SW = frequency_AM;
}
radio.clearRDS(fullsearchrds);
if (RDSSPYUSB == true) Serial.print("G:\r\nRESET-------\r\n\r\n");
if (RDSSPYTCP == true) RemoteClient.print("G:\r\nRESET-------\r\n\r\n");
if (RDSSPYUSB == true) Serial.print("G : \r\nRESET------ -\r\n\r\n");
if (RDSSPYTCP == true) RemoteClient.print("G : \r\nRESET------ -\r\n\r\n");
}
void EdgeBeeper() {
@@ -5321,8 +5425,8 @@ void Seek(bool mode) {
store = true;
} else {
seek = true;
if (RDSSPYUSB == true) Serial.print("G:\r\nRESET-------\r\n\r\n");
if (RDSSPYTCP == true) RemoteClient.print("G:\r\nRESET-------\r\n\r\n");
if (RDSSPYUSB == true) Serial.print("G : \r\nRESET------ -\r\n\r\n");
if (RDSSPYTCP == true) RemoteClient.print("G : \r\nRESET------ -\r\n\r\n");
}
}
}
@@ -5527,7 +5631,7 @@ void passwordcrypt() {
}
void DefaultSettings() {
EEPROM.writeByte(43, 29);
EEPROM.writeByte(43, 30);
EEPROM.writeUInt(0, 10000);
EEPROM.writeInt(4, 0);
EEPROM.writeUInt(8, 0);
+25 -13
View File
@@ -1,6 +1,6 @@
// [number of languages][number of texts][max. length of text]
static const char* const myLanguage[12][93] = {
static const char* const myLanguage[12][94] = {
{ "English", // English
"Rotary direction changed", // 1
"Please release button", // 2
@@ -93,7 +93,8 @@ static const char* const myLanguage[12][93] = {
"No RT+ available", // 89
"FM default stepsize", // 90
"Screensaver", // 91
"Sec" // 92
"Sec", // 92
"PRESS BAND TO CLOSE" // 93
},
{ "Nederlands", // Dutch
@@ -188,7 +189,8 @@ static const char* const myLanguage[12][93] = {
"RT+ niet beschikbaar", // 89
"FM stapgrootte", // 90
"Schermbeveiliging", // 91
"sec." // 92
"sec.", // 92
"DRUK OP BAND OM AF TE SLUITEN" // 93
},
{ "Polski", // Polish
@@ -283,7 +285,8 @@ static const char* const myLanguage[12][93] = {
"No RT+ available", // 89
"FM min stepsize", // 90
"Screensaver", // 91
"Sec" // 92
"Sec", // 92
"PRESS BAND TO CLOSE" // 93
},
{ "Hrvatski", // Croatian
@@ -378,7 +381,8 @@ static const char* const myLanguage[12][93] = {
"No RT+ available", // 89
"FM min stepsize", // 90
"Screensaver", // 91
"Sec" // 92
"Sec", // 92
"PRESS BAND TO CLOSE" // 93
},
{ "Ελληνικά", // Greek
@@ -473,7 +477,8 @@ static const char* const myLanguage[12][93] = {
"Μη διαθέσιμο RT+", // 89
"Μέγεθος βήματος FM", // 90
"Screensaver", // 91
"Sec" // 92
"Sec", // 92
"PRESS BAND TO CLOSE" // 93
},
{ "Romana", // Romanian
@@ -568,7 +573,8 @@ static const char* const myLanguage[12][93] = {
"No RT+ available", // 89
"FM min stepsize", // 90
"Screensaver", // 91
"Sec" // 92
"Sec", // 92
"PRESS BAND TO CLOSE" // 93
},
{ "Deutsch", // German
@@ -663,7 +669,8 @@ static const char* const myLanguage[12][93] = {
"No RT+ available", // 89
"FM min stepsize", // 90
"Screensaver", // 91
"Sec" // 92
"Sec", // 92
"PRESS BAND TO CLOSE" // 93
},
{ "Czech", // Czech
@@ -758,7 +765,8 @@ static const char* const myLanguage[12][93] = {
"No RT+ available", // 89
"FM min stepsize", // 90
"Screensaver", // 91
"Sec" // 92
"Sec", // 92
"PRESS BAND TO CLOSE" // 93
},
{ "Slovak", // Slovak
@@ -853,7 +861,8 @@ static const char* const myLanguage[12][93] = {
"No RT+ available", // 89
"FM min stepsize", // 90
"Screensaver", // 91
"Sec" // 92
"Sec", // 92
"PRESS BAND TO CLOSE" // 93
},
{ "France", // French
@@ -948,7 +957,8 @@ static const char* const myLanguage[12][93] = {
"RT+ indisponible", // 89
"Valeur du pas FM par défaut", // 90
"Screensaver", // 91
"Sec" // 92
"Sec", // 92
"PRESS BAND TO CLOSE" // 93
},
{ "Български", // Bulgarian
@@ -1043,7 +1053,8 @@ static const char* const myLanguage[12][93] = {
"RT+ опцията не е налична", // 89
"Размер на стъпката по подразбиране на FM", // 90
"Screensaver", // 91
"Sec" // 92
"Sec", // 92
"PRESS BAND TO CLOSE" // 93
},
{ "Русский", // Russian
@@ -1138,7 +1149,8 @@ static const char* const myLanguage[12][93] = {
"Нет доступного RT+", // 89
"Шаг FM по умолчанию", // 90
"Экран выкл. через", // 91
"сек" // 92
"сек", // 92
"PRESS BAND TO CLOSE" // 93
}
};