You've already forked TEF6686_ESP32
Added some new features
- You can now disable the squelch indicator in the menu - You can now disable the modulation meter. This can help stop disturbtion on weak signals - Added FM and AM noiseblanker - Fix for LW, lowest frequency set to 144kHz.
This commit is contained in:
@@ -54,6 +54,9 @@ bool RDSSPYTCP;
|
||||
bool BWreset;
|
||||
bool change2;
|
||||
bool cleanup;
|
||||
bool showsquelch;
|
||||
byte amnb;
|
||||
byte fmnb;
|
||||
bool direction;
|
||||
bool dropout;
|
||||
bool EONold;
|
||||
@@ -155,6 +158,7 @@ int Squelch;
|
||||
int Squelchold;
|
||||
int SStatusold;
|
||||
byte StereoLevel;
|
||||
byte showmodulation;
|
||||
int Stereostatus;
|
||||
int VolSet;
|
||||
int volume;
|
||||
@@ -223,9 +227,9 @@ WiFiUDP Udp;
|
||||
|
||||
void setup() {
|
||||
setupmode = true;
|
||||
EEPROM.begin(244);
|
||||
if (EEPROM.readByte(43) != 26) {
|
||||
EEPROM.writeByte(43, 26);
|
||||
EEPROM.begin(248);
|
||||
if (EEPROM.readByte(43) != 27) {
|
||||
EEPROM.writeByte(43, 27);
|
||||
EEPROM.writeUInt(0, 10000);
|
||||
EEPROM.writeInt(4, 0);
|
||||
EEPROM.writeUInt(8, 0);
|
||||
@@ -267,7 +271,10 @@ void setup() {
|
||||
EEPROM.writeUInt(225, 540);
|
||||
EEPROM.writeUInt(229, 1800);
|
||||
EEPROM.writeString(233, "password");
|
||||
|
||||
EEPROM.writeByte(244, 1);
|
||||
EEPROM.writeByte(245, 1);
|
||||
EEPROM.writeByte(246, 0);
|
||||
EEPROM.writeByte(247, 0);
|
||||
EEPROM.commit();
|
||||
}
|
||||
|
||||
@@ -310,6 +317,10 @@ void setup() {
|
||||
frequency_MW = EEPROM.readUInt(225);
|
||||
frequency_SW = EEPROM.readUInt(229);
|
||||
XDRGTK_key = EEPROM.readString(233);
|
||||
showsquelch = EEPROM.readByte(244);
|
||||
showmodulation = EEPROM.readByte(245);
|
||||
amnb = EEPROM.readByte(246);
|
||||
fmnb = EEPROM.readByte(247);
|
||||
|
||||
LWLowEdgeSet = FREQ_LW_LOW_EDGE_MIN; // later will read from flash
|
||||
LWHighEdgeSet = FREQ_LW_HIGH_EDGE_MAX; // later will read from flash
|
||||
@@ -484,6 +495,8 @@ void setup() {
|
||||
radio.setMute();
|
||||
radio.setSoftmuteFM(softmutefm);
|
||||
radio.setSoftmuteAM(softmuteam);
|
||||
radio.setAMNoiseBlanker(amnb);
|
||||
radio.setFMNoiseBlanker(fmnb);
|
||||
if (region == 1) radio.setDeemphasis(2);
|
||||
radio.rds.region = region;
|
||||
LowLevelInit = true;
|
||||
@@ -523,14 +536,16 @@ void loop() {
|
||||
if (screenmute == false) {
|
||||
tft.setFreeFont(FONT7);
|
||||
tft.setTextColor(TFT_WHITE);
|
||||
tft.drawString("20", 20, 146, GFXFF);
|
||||
tft.drawString("40", 50, 146, GFXFF);
|
||||
tft.drawString("60", 80, 146, GFXFF);
|
||||
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("M", 6, 132, GFXFF);
|
||||
if (showmodulation) {
|
||||
tft.drawString("20", 20, 146, GFXFF);
|
||||
tft.drawString("40", 50, 146, GFXFF);
|
||||
tft.drawString("60", 80, 146, GFXFF);
|
||||
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("M", 6, 132, 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);
|
||||
@@ -558,14 +573,16 @@ void loop() {
|
||||
tft.fillRect(174, 139, 12, 8, TFT_GREYOUT);
|
||||
tft.fillRect(188, 139, 12, 8, TFT_GREYOUT);
|
||||
tft.setTextColor(TFT_GREYOUT);
|
||||
tft.drawString("20", 20, 146, GFXFF);
|
||||
tft.drawString("40", 50, 146, GFXFF);
|
||||
tft.drawString("60", 80, 146, GFXFF);
|
||||
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("M", 6, 132, GFXFF);
|
||||
if (showmodulation) {
|
||||
tft.drawString("20", 20, 146, GFXFF);
|
||||
tft.drawString("40", 50, 146, GFXFF);
|
||||
tft.drawString("60", 80, 146, GFXFF);
|
||||
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("M", 6, 132, 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);
|
||||
@@ -1227,6 +1244,10 @@ void ModeButtonPress() {
|
||||
EEPROM.writeByte(57, showSWMIBand);
|
||||
EEPROM.writeByte(58, radio.rds.filter);
|
||||
EEPROM.writeByte(59, radio.rds.dynamicpi);
|
||||
EEPROM.writeByte(244, showsquelch);
|
||||
EEPROM.writeByte(245, showmodulation);
|
||||
EEPROM.writeByte(246, amnb);
|
||||
EEPROM.writeByte(247, fmnb);
|
||||
EEPROM.commit();
|
||||
Serial.end();
|
||||
if (wifi) remoteip = IPAddress (WiFi.localIP()[0], WiFi.localIP()[1], WiFi.localIP()[2], subnetclient);
|
||||
@@ -1567,6 +1588,36 @@ void ButtonPress() {
|
||||
tft.setTextColor(TFT_YELLOW);
|
||||
if (radio.rds.dynamicpi) tft.drawCentreString(myLanguage[language][42], 155, 110, GFXFF); else tft.drawCentreString(myLanguage[language][30], 155, 110, GFXFF);
|
||||
break;
|
||||
|
||||
case 110:
|
||||
tft.setTextColor(TFT_WHITE);
|
||||
tft.drawCentreString(myLanguage[language][62], 155, 70, GFXFF);
|
||||
tft.setTextColor(TFT_YELLOW);
|
||||
if (showsquelch) tft.drawCentreString(myLanguage[language][42], 155, 110, GFXFF); else tft.drawCentreString(myLanguage[language][30], 155, 110, GFXFF);
|
||||
break;
|
||||
|
||||
case 130:
|
||||
tft.setTextColor(TFT_WHITE);
|
||||
tft.drawCentreString(myLanguage[language][63], 155, 70, GFXFF);
|
||||
tft.setTextColor(TFT_YELLOW);
|
||||
if (showmodulation) tft.drawCentreString(myLanguage[language][42], 155, 110, GFXFF); else tft.drawCentreString(myLanguage[language][30], 155, 110, GFXFF);
|
||||
break;
|
||||
|
||||
case 150:
|
||||
tft.setTextColor(TFT_WHITE);
|
||||
tft.drawCentreString(myLanguage[language][64], 155, 70, GFXFF);
|
||||
if (amnb != 0) tft.drawString("%", 170, 110, GFXFF);
|
||||
tft.setTextColor(TFT_YELLOW);
|
||||
if (amnb != 0) tft.drawRightString(String(amnb, DEC), 155, 110, GFXFF); else tft.drawRightString(myLanguage[language][30], 155, 110, GFXFF);
|
||||
break;
|
||||
|
||||
case 170:
|
||||
tft.setTextColor(TFT_WHITE);
|
||||
tft.drawCentreString(myLanguage[language][65], 155, 70, GFXFF);
|
||||
if (fmnb != 0) tft.drawString("%", 170, 110, GFXFF);
|
||||
tft.setTextColor(TFT_YELLOW);
|
||||
if (fmnb != 0) tft.drawRightString(String(fmnb, DEC), 155, 110, GFXFF); else tft.drawRightString(myLanguage[language][30], 155, 110, GFXFF);
|
||||
break;
|
||||
}
|
||||
}
|
||||
} else {
|
||||
@@ -1867,6 +1918,50 @@ void KeyUp() {
|
||||
tft.setTextColor(TFT_YELLOW);
|
||||
if (radio.rds.dynamicpi) tft.drawCentreString(myLanguage[language][42], 155, 110, GFXFF); else tft.drawCentreString(myLanguage[language][30], 155, 110, GFXFF);
|
||||
break;
|
||||
|
||||
case 110:
|
||||
tft.setTextColor(TFT_BLACK);
|
||||
if (showsquelch) tft.drawCentreString(myLanguage[language][42], 155, 110, GFXFF); else tft.drawCentreString(myLanguage[language][30], 155, 110, GFXFF);
|
||||
if (showsquelch) showsquelch = false; else showsquelch = true;
|
||||
tft.setTextColor(TFT_YELLOW);
|
||||
if (showsquelch) tft.drawCentreString(myLanguage[language][42], 155, 110, GFXFF); else tft.drawCentreString(myLanguage[language][30], 155, 110, GFXFF);
|
||||
break;
|
||||
|
||||
case 130:
|
||||
tft.setTextColor(TFT_BLACK);
|
||||
if (showmodulation) tft.drawCentreString(myLanguage[language][42], 155, 110, GFXFF); else tft.drawCentreString(myLanguage[language][30], 155, 110, GFXFF);
|
||||
if (showmodulation) showmodulation = false; else showmodulation = true;
|
||||
tft.setTextColor(TFT_YELLOW);
|
||||
if (showmodulation) tft.drawCentreString(myLanguage[language][42], 155, 110, GFXFF); else tft.drawCentreString(myLanguage[language][30], 155, 110, GFXFF);
|
||||
break;
|
||||
|
||||
case 150:
|
||||
tft.setTextColor(TFT_BLACK);
|
||||
tft.drawRightString(String(amnb, DEC), 155, 110, GFXFF);
|
||||
amnb ++;
|
||||
if (amnb > 150 || amnb <= 50) if (amnb == 1) amnb = 50; else amnb = 0;
|
||||
tft.drawRightString(myLanguage[language][30], 155, 110, GFXFF);
|
||||
tft.drawString("%", 170, 110, GFXFF);
|
||||
tft.setTextColor(TFT_WHITE);
|
||||
if (amnb != 0) tft.drawString("%", 170, 110, GFXFF);
|
||||
tft.setTextColor(TFT_YELLOW);
|
||||
if (amnb != 0) tft.drawRightString(String(amnb, DEC), 155, 110, GFXFF); else tft.drawRightString(myLanguage[language][30], 155, 110, GFXFF);
|
||||
radio.setAMNoiseBlanker(amnb);
|
||||
break;
|
||||
|
||||
case 170:
|
||||
tft.setTextColor(TFT_BLACK);
|
||||
tft.drawRightString(String(fmnb, DEC), 155, 110, GFXFF);
|
||||
fmnb ++;
|
||||
if (fmnb > 150 || fmnb <= 50) if (fmnb == 1) fmnb = 50; else fmnb = 0;
|
||||
tft.drawRightString(myLanguage[language][30], 155, 110, GFXFF);
|
||||
tft.drawString("%", 170, 110, GFXFF);
|
||||
tft.setTextColor(TFT_WHITE);
|
||||
if (fmnb != 0) tft.drawString("%", 170, 110, GFXFF);
|
||||
tft.setTextColor(TFT_YELLOW);
|
||||
if (fmnb != 0) tft.drawRightString(String(fmnb, DEC), 155, 110, GFXFF); else tft.drawRightString(myLanguage[language][30], 155, 110, GFXFF);
|
||||
radio.setFMNoiseBlanker(fmnb);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -2160,6 +2255,50 @@ void KeyDown() {
|
||||
tft.setTextColor(TFT_YELLOW);
|
||||
if (radio.rds.dynamicpi) tft.drawCentreString(myLanguage[language][42], 155, 110, GFXFF); else tft.drawCentreString(myLanguage[language][30], 155, 110, GFXFF);
|
||||
break;
|
||||
|
||||
case 110:
|
||||
tft.setTextColor(TFT_BLACK);
|
||||
if (showsquelch) tft.drawCentreString(myLanguage[language][42], 155, 110, GFXFF); else tft.drawCentreString(myLanguage[language][30], 155, 110, GFXFF);
|
||||
if (showsquelch) showsquelch = false; else showsquelch = true;
|
||||
tft.setTextColor(TFT_YELLOW);
|
||||
if (showsquelch) tft.drawCentreString(myLanguage[language][42], 155, 110, GFXFF); else tft.drawCentreString(myLanguage[language][30], 155, 110, GFXFF);
|
||||
break;
|
||||
|
||||
case 130:
|
||||
tft.setTextColor(TFT_BLACK);
|
||||
if (showmodulation) tft.drawCentreString(myLanguage[language][42], 155, 110, GFXFF); else tft.drawCentreString(myLanguage[language][30], 155, 110, GFXFF);
|
||||
if (showmodulation) showmodulation = false; else showmodulation = true;
|
||||
tft.setTextColor(TFT_YELLOW);
|
||||
if (showmodulation) tft.drawCentreString(myLanguage[language][42], 155, 110, GFXFF); else tft.drawCentreString(myLanguage[language][30], 155, 110, GFXFF);
|
||||
break;
|
||||
|
||||
case 150:
|
||||
tft.setTextColor(TFT_BLACK);
|
||||
tft.drawRightString(String(amnb, DEC), 155, 110, GFXFF);
|
||||
amnb --;
|
||||
if (amnb > 150 || amnb <= 50) if (amnb > 150) amnb = 150; else amnb = 0;
|
||||
tft.drawRightString(myLanguage[language][30], 155, 110, GFXFF);
|
||||
tft.drawString("%", 170, 110, GFXFF);
|
||||
tft.setTextColor(TFT_WHITE);
|
||||
if (amnb != 0) tft.drawString("%", 170, 110, GFXFF);
|
||||
tft.setTextColor(TFT_YELLOW);
|
||||
if (amnb != 0) tft.drawRightString(String(amnb, DEC), 155, 110, GFXFF); else tft.drawRightString(myLanguage[language][30], 155, 110, GFXFF);
|
||||
radio.setAMNoiseBlanker(amnb);
|
||||
break;
|
||||
|
||||
case 170:
|
||||
tft.setTextColor(TFT_BLACK);
|
||||
tft.drawRightString(String(fmnb, DEC), 155, 110, GFXFF);
|
||||
fmnb --;
|
||||
if (fmnb > 150 || fmnb <= 50) if (fmnb > 150) fmnb = 150; else fmnb = 0;
|
||||
tft.drawRightString(myLanguage[language][30], 155, 110, GFXFF);
|
||||
tft.drawString("%", 170, 110, GFXFF);
|
||||
tft.setTextColor(TFT_WHITE);
|
||||
if (fmnb != 0) tft.drawString("%", 170, 110, GFXFF);
|
||||
tft.setTextColor(TFT_YELLOW);
|
||||
if (fmnb != 0) tft.drawRightString(String(fmnb, DEC), 155, 110, GFXFF); else tft.drawRightString(myLanguage[language][30], 155, 110, GFXFF);
|
||||
radio.setFMNoiseBlanker(fmnb);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -2308,7 +2447,7 @@ void showPI() {
|
||||
PIold = radio.rds.picode;
|
||||
if (wifi) {
|
||||
Udp.beginPacket(remoteip, 9030);
|
||||
Udp.print("from=TEF tuner;PI=" + String(radio.rds.picode,4));
|
||||
Udp.print("from=TEF tuner;PI=" + String(radio.rds.picode, 4));
|
||||
Udp.endPacket();
|
||||
}
|
||||
strcpy(radioIdPrevious, radio.rds.picode);
|
||||
@@ -2550,11 +2689,21 @@ void BuildMenu() {
|
||||
tft.drawString(myLanguage[language][59], 14, 50, GFXFF);
|
||||
tft.drawString(myLanguage[language][60], 14, 70, GFXFF);
|
||||
tft.drawString(myLanguage[language][61], 14, 90, GFXFF);
|
||||
tft.drawString(myLanguage[language][62], 14, 110, GFXFF);
|
||||
tft.drawString(myLanguage[language][63], 14, 130, GFXFF);
|
||||
tft.drawString(myLanguage[language][64], 14, 150, GFXFF);
|
||||
tft.drawString(myLanguage[language][65], 14, 170, GFXFF);
|
||||
if (amnb != 0) tft.drawRightString("%", 305, 150, GFXFF); else tft.drawRightString(myLanguage[language][30], 265, 150, GFXFF);
|
||||
if (fmnb != 0) tft.drawRightString("%", 305, 170, GFXFF); else tft.drawRightString(myLanguage[language][30], 265, 170, GFXFF);
|
||||
tft.setTextColor(TFT_YELLOW);
|
||||
tft.drawRightString(String(WiFi.localIP()[0]) + "." + String(WiFi.localIP()[1]) + "." + String(WiFi.localIP()[2]) + "." + String(subnetclient, DEC), 305, 30, GFXFF);
|
||||
if (showSWMIBand) tft.drawRightString(myLanguage[language][42], 305, 50, GFXFF); else tft.drawRightString(myLanguage[language][30], 305, 50, GFXFF);
|
||||
if (radio.rds.filter) tft.drawRightString(myLanguage[language][42], 305, 70, GFXFF); else tft.drawRightString(myLanguage[language][30], 305, 70, GFXFF);
|
||||
if (radio.rds.dynamicpi) tft.drawRightString(myLanguage[language][42], 305, 90, GFXFF); else tft.drawRightString(myLanguage[language][30], 305, 90, GFXFF);
|
||||
if (showsquelch) tft.drawRightString(myLanguage[language][42], 305, 110, GFXFF); else tft.drawRightString(myLanguage[language][30], 305, 110, GFXFF);
|
||||
if (showmodulation) tft.drawRightString(myLanguage[language][42], 305, 130, GFXFF); else tft.drawRightString(myLanguage[language][30], 305, 130, GFXFF);
|
||||
if (amnb != 0) tft.drawRightString(String(amnb, DEC), 265, 150, GFXFF); else tft.drawRightString(myLanguage[language][30], 265, 150, GFXFF);
|
||||
if (fmnb != 0) tft.drawRightString(String(fmnb, DEC), 265, 170, GFXFF); else tft.drawRightString(myLanguage[language][30], 265, 170, GFXFF);
|
||||
}
|
||||
analogWrite(SMETERPIN, 0);
|
||||
}
|
||||
@@ -2605,16 +2754,14 @@ void BuildDisplay() {
|
||||
}
|
||||
tft.setTextColor(TFT_WHITE);
|
||||
tft.setFreeFont(FONT7);
|
||||
tft.drawString("SQ:", 216, 150, 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);
|
||||
tft.drawString("M", 6, 132, 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("%", 196, 146, GFXFF);
|
||||
tft.drawString("1", 24, 116, GFXFF);
|
||||
tft.drawString("3", 48, 116, GFXFF);
|
||||
tft.drawString("5", 72, 116, GFXFF);
|
||||
@@ -2622,12 +2769,15 @@ void BuildDisplay() {
|
||||
tft.drawString("9", 120, 116, GFXFF);
|
||||
tft.drawString("+10", 134, 116, GFXFF);
|
||||
tft.drawString("+30", 174, 116, GFXFF);
|
||||
if (!showmodulation) tft.setTextColor(TFT_GREYOUT);
|
||||
tft.drawString("M", 6, 132, GFXFF);
|
||||
tft.drawString("20", 20, 146, GFXFF);
|
||||
tft.drawString("40", 50, 146, GFXFF);
|
||||
tft.drawString("60", 80, 146, GFXFF);
|
||||
tft.drawString("80", 110, 146, GFXFF);
|
||||
tft.drawString("100", 134, 146, GFXFF);
|
||||
tft.drawString("120", 164, 146, GFXFF);
|
||||
tft.drawString("%", 196, 146, GFXFF);
|
||||
tft.setTextColor(TFT_WHITE);
|
||||
tft.setFreeFont(FONT14);
|
||||
tft.drawString("kHz", 225, -5, GFXFF);
|
||||
@@ -3075,8 +3225,12 @@ void ShowOffset() {
|
||||
}
|
||||
|
||||
void ShowBW() {
|
||||
if (millis() >= bwupdatetimer + TIMER_BW_TIMER) { bwupdatetimer = millis(); }
|
||||
else { return; }
|
||||
if (millis() >= bwupdatetimer + TIMER_BW_TIMER) {
|
||||
bwupdatetimer = millis();
|
||||
}
|
||||
else {
|
||||
return;
|
||||
}
|
||||
|
||||
if (BW != BWOld || BWreset == true) {
|
||||
tft.setFreeFont(FONT14);
|
||||
@@ -3096,36 +3250,38 @@ void ShowBW() {
|
||||
}
|
||||
|
||||
void ShowModLevel() {
|
||||
int segments;
|
||||
int color;
|
||||
int hold = 0;
|
||||
if (showmodulation) {
|
||||
int segments;
|
||||
int color;
|
||||
int hold = 0;
|
||||
|
||||
if (SQ != false) {
|
||||
MStatus = 0;
|
||||
MStatusold = 1;
|
||||
}
|
||||
if (SQ != false) {
|
||||
MStatus = 0;
|
||||
MStatusold = 1;
|
||||
}
|
||||
|
||||
if (MStatus != MStatusold || MStatus < 10) {
|
||||
for (segments = 0; segments < 13; segments++) {
|
||||
color = TFT_GREEN;
|
||||
if (segments > 8) color = TFT_ORANGE;
|
||||
if (segments > 9) color = TFT_RED;
|
||||
if (MStatus > (segments + 1) * 10) {
|
||||
hold = segments;
|
||||
tft.fillRect(20 + segments * 14, 139, 12, 8, color);
|
||||
} else {
|
||||
if (segments != peakholdold) tft.fillRect(20 + segments * 14, 139, 12, 8, TFT_GREYOUT);
|
||||
if (MStatus != MStatusold || MStatus < 10) {
|
||||
for (segments = 0; segments < 13; segments++) {
|
||||
color = TFT_GREEN;
|
||||
if (segments > 8) color = TFT_ORANGE;
|
||||
if (segments > 9) color = TFT_RED;
|
||||
if (MStatus > (segments + 1) * 10) {
|
||||
hold = segments;
|
||||
tft.fillRect(20 + segments * 14, 139, 12, 8, color);
|
||||
} else {
|
||||
if (segments != peakholdold) tft.fillRect(20 + segments * 14, 139, 12, 8, TFT_GREYOUT);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (peakholdold < hold) peakholdold = hold;
|
||||
if (peakholdold < hold) peakholdold = hold;
|
||||
|
||||
if (peakholdmillis > peakholdtimer + 3000) {
|
||||
peakholdtimer += 3000;
|
||||
peakholdold = hold;
|
||||
if (peakholdmillis > peakholdtimer + 3000) {
|
||||
peakholdtimer += 3000;
|
||||
peakholdold = hold;
|
||||
}
|
||||
peakholdmillis = millis();
|
||||
MStatusold = MStatus;
|
||||
}
|
||||
peakholdmillis = millis();
|
||||
MStatusold = MStatus;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -3134,23 +3290,24 @@ void doSquelch() {
|
||||
if (XDRGTKUSB == false && XDRGTKTCP == false) {
|
||||
Squelch = analogRead(PIN_POT) / 4 - 100;
|
||||
if (Squelch > 920) Squelch = 920;
|
||||
|
||||
if (seek == false && menu == false && Squelch != Squelchold) {
|
||||
tft.setTextColor(TFT_BLACK);
|
||||
if (Squelchold == -100) {
|
||||
tft.drawCentreString(myLanguage[language][33], 224, 164, GFXFF);
|
||||
} else if (Squelchold == 920) {
|
||||
tft.drawCentreString("ST", 224, 164, GFXFF);
|
||||
} else {
|
||||
tft.drawCentreString(String(Squelchold / 10), 224, 164, GFXFF);
|
||||
}
|
||||
tft.setTextColor(TFT_WHITE);
|
||||
if (Squelch == -100) {
|
||||
tft.drawCentreString(myLanguage[language][33], 224, 164, GFXFF);
|
||||
} else if (Squelch == 920) {
|
||||
tft.drawCentreString("ST", 224, 164, GFXFF);
|
||||
} else {
|
||||
tft.drawCentreString(String(Squelch / 10), 224, 164, GFXFF);
|
||||
if (showsquelch) {
|
||||
if (seek == false && menu == false && Squelch != Squelchold) {
|
||||
tft.setTextColor(TFT_BLACK);
|
||||
if (Squelchold == -100) {
|
||||
tft.drawCentreString(myLanguage[language][33], 224, 164, GFXFF);
|
||||
} else if (Squelchold == 920) {
|
||||
tft.drawCentreString("ST", 224, 164, GFXFF);
|
||||
} else {
|
||||
tft.drawCentreString(String(Squelchold / 10), 224, 164, GFXFF);
|
||||
}
|
||||
tft.setTextColor(TFT_WHITE);
|
||||
if (Squelch == -100) {
|
||||
tft.drawCentreString(myLanguage[language][33], 224, 164, GFXFF);
|
||||
} else if (Squelch == 920) {
|
||||
tft.drawCentreString("ST", 224, 164, GFXFF);
|
||||
} else {
|
||||
tft.drawCentreString(String(Squelch / 10), 224, 164, GFXFF);
|
||||
}
|
||||
}
|
||||
Squelchold = Squelch;
|
||||
}
|
||||
@@ -3174,7 +3331,7 @@ void doSquelch() {
|
||||
SQ = true;
|
||||
}
|
||||
}
|
||||
if (screenmute == false) {
|
||||
if (screenmute == false && showsquelch == true) {
|
||||
if (Squelch != Squelchold) {
|
||||
tft.setTextColor(TFT_BLACK);
|
||||
if (Squelchold == -1) tft.drawCentreString("ST", 224, 164, GFXFF); else tft.drawCentreString(String(Squelchold / 10), 224, 164, GFXFF);
|
||||
|
||||
@@ -62,7 +62,7 @@ void TEF6686::setSoftmuteFM(uint8_t mode) {
|
||||
}
|
||||
|
||||
void TEF6686::setAMNoiseBlanker(uint16_t start) {
|
||||
if (start == 0) devTEF_Radio_Set_Noiseblanker_AM(0, 1000); else devTEF_Radio_Set_Noiseblanker_AM(1, (start * 10) + 500);
|
||||
if (start == 0) devTEF_Radio_Set_Noiseblanker_AM(0, 1000); else devTEF_Radio_Set_Noiseblanker_AM(1, start * 10);
|
||||
}
|
||||
|
||||
void TEF6686::setAMAttenuation(uint16_t start) {
|
||||
@@ -142,8 +142,8 @@ void TEF6686::setFMSI_Bias(int16_t band1, int16_t band2, int16_t band3, int16_t
|
||||
}
|
||||
|
||||
|
||||
void TEF6686::setNoiseBlanker(uint16_t start) {
|
||||
if (start == 0) devTEF_Radio_Set_NoisBlanker(0, 1000); else devTEF_Radio_Set_NoisBlanker(1, (start * 10) + 500);
|
||||
void TEF6686::setFMNoiseBlanker(uint16_t start) {
|
||||
if (start == 0) devTEF_Radio_Set_NoisBlanker(0, 1000); else devTEF_Radio_Set_NoisBlanker(1, start * 10);
|
||||
}
|
||||
|
||||
void TEF6686::setStereoLevel(uint8_t start) {
|
||||
|
||||
@@ -32,7 +32,7 @@ enum RADIO_TUNE_MODE {
|
||||
#define FREQ_MW_STEP_10K 10
|
||||
#define FREQ_SW_STEP_5K 5
|
||||
|
||||
#define FREQ_LW_LOW_EDGE_MIN 100
|
||||
#define FREQ_LW_LOW_EDGE_MIN 144
|
||||
#define FREQ_LW_HIGH_EDGE_MAX 519
|
||||
#define FREQ_MW_LOW_EDGE_MIN_9K 522
|
||||
#define FREQ_MW_LOW_EDGE_MIN_10K 520
|
||||
@@ -234,7 +234,7 @@ class TEF6686 {
|
||||
void setHighCutOffset(uint8_t start);
|
||||
void setStHiBlendLevel(uint16_t limit);
|
||||
void setStHiBlendOffset(uint8_t start);
|
||||
void setNoiseBlanker(uint16_t start);
|
||||
void setFMNoiseBlanker(uint16_t start);
|
||||
void setAMCoChannel(uint16_t start);
|
||||
void setAMNoiseBlanker(uint16_t start);
|
||||
void setAMAttenuation(uint16_t start);
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
// [number of languages][number of texts][max. length of text]
|
||||
|
||||
static const char myLanguage[9][62][78] = {
|
||||
static const char myLanguage[9][66][78] = {
|
||||
{ "English", // English
|
||||
"Rotary direction changed",
|
||||
"Please release button",
|
||||
@@ -62,7 +62,11 @@ static const char myLanguage[9][62][78] = {
|
||||
"Stationlist client IP",
|
||||
"Show SW wavelength",
|
||||
"RDS filter",
|
||||
"Dynamic PI"
|
||||
"Dynamic PI",
|
||||
"Show squelch",
|
||||
"Modulation meter",
|
||||
"AM Noise blanker",
|
||||
"FM Noise blanker"
|
||||
},
|
||||
|
||||
{ "Nederlands", // Dutch
|
||||
@@ -121,12 +125,16 @@ static const char myLanguage[9][62][78] = {
|
||||
"Verbind met: ",
|
||||
"om Wi-Fi in te stellen",
|
||||
"Verbinden met Wi-Fi...",
|
||||
"MISLUKT.. WiFi uitgeschakeld",
|
||||
"MISLUKT! WiFi uitgeschakeld",
|
||||
"VERBONDEN!",
|
||||
"Stationlist client IP",
|
||||
"Toon SW golflengte",
|
||||
"RDS filter",
|
||||
"Dynamische PI"
|
||||
"Dynamische PI",
|
||||
"Toon squelch",
|
||||
"Modulatie meter",
|
||||
"AM ruis filter",
|
||||
"FM ruis filter"
|
||||
},
|
||||
|
||||
{ "Polski", // Polish
|
||||
@@ -190,7 +198,11 @@ static const char myLanguage[9][62][78] = {
|
||||
"IP klienta Stationlist",
|
||||
"Pokaz dlugosci fal SW",
|
||||
"RDS filter",
|
||||
"Dynamic PI"
|
||||
"Dynamic PI",
|
||||
"Show squelch",
|
||||
"Modulation meter",
|
||||
"AM Noise blanker",
|
||||
"FM Noise blanker"
|
||||
},
|
||||
|
||||
{ "Hrvatski", // Croatian
|
||||
@@ -254,7 +266,11 @@ static const char myLanguage[9][62][78] = {
|
||||
"IP klijenta StationList",
|
||||
"Prikaži valnu duljinu KV-a",
|
||||
"RDS filter",
|
||||
"Dynamic PI"
|
||||
"Dynamic PI",
|
||||
"Show squelch",
|
||||
"Modulation meter",
|
||||
"AM Noise blanker",
|
||||
"FM Noise blanker"
|
||||
},
|
||||
|
||||
{ "Ελληνικά", // Greek
|
||||
@@ -318,7 +334,11 @@ static const char myLanguage[9][62][78] = {
|
||||
"Stationlist client IP",
|
||||
"Show SW wavelength",
|
||||
"RDS filter",
|
||||
"Dynamic PI"
|
||||
"Dynamic PI",
|
||||
"Show squelch",
|
||||
"Modulation meter",
|
||||
"AM Noise blanker",
|
||||
"FM Noise blanker"
|
||||
},
|
||||
|
||||
{ "Romana", // Romanian
|
||||
@@ -382,7 +402,11 @@ static const char myLanguage[9][62][78] = {
|
||||
"Stationlist client IP",
|
||||
"Show SW wavelength",
|
||||
"RDS filter",
|
||||
"Dynamic PI"
|
||||
"Dynamic PI",
|
||||
"Show squelch",
|
||||
"Modulation meter",
|
||||
"AM Noise blanker",
|
||||
"FM Noise blanker"
|
||||
},
|
||||
|
||||
{ "Deutsch", // German
|
||||
@@ -446,7 +470,11 @@ static const char myLanguage[9][62][78] = {
|
||||
"Stationlist client IP",
|
||||
"Show SW wavelength",
|
||||
"RDS filter",
|
||||
"Dynamic PI"
|
||||
"Dynamic PI",
|
||||
"Show squelch",
|
||||
"Modulation meter",
|
||||
"AM Noise blanker",
|
||||
"FM Noise blanker"
|
||||
},
|
||||
{ "Czech", // Czech
|
||||
"Směr enkóderu byl změněn",
|
||||
@@ -509,7 +537,11 @@ static const char myLanguage[9][62][78] = {
|
||||
"Stationlist client IP",
|
||||
"Show SW wavelength",
|
||||
"RDS filter",
|
||||
"Dynamic PI"
|
||||
"Dynamic PI",
|
||||
"Show squelch",
|
||||
"Modulation meter",
|
||||
"AM Noise blanker",
|
||||
"FM Noise blanker"
|
||||
},
|
||||
{ "Slovak", // Slovak
|
||||
"Smer enkóderu bol zmenený",
|
||||
@@ -572,6 +604,10 @@ static const char myLanguage[9][62][78] = {
|
||||
"Stationlist client IP",
|
||||
"Show SW wavelength",
|
||||
"RDS filter",
|
||||
"Dynamic PI"
|
||||
"Dynamic PI",
|
||||
"Show squelch",
|
||||
"Modulation meter",
|
||||
"AM Noise blanker",
|
||||
"FM Noise blanker"
|
||||
},
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user