diff --git a/TEF6686_ESP32.ino b/TEF6686_ESP32.ino index 3aab2cf..eacaaa3 100644 --- a/TEF6686_ESP32.ino +++ b/TEF6686_ESP32.ino @@ -3466,12 +3466,14 @@ void SetTunerPatch() { tft.fillScreen(BackgroundColor); analogWrite(CONTRASTPIN, ContrastSet * 2 + 27); - if (TEF == 0) tftPrint(0, myLanguage[language][35], 150, 78, ActiveColor, ActiveColorSmooth, 28); else tftPrint(0, myLanguage[language][36] + String(TEF), 150, 78, ActiveColor, ActiveColorSmooth, 28); - tftPrint(0, myLanguage[language][37], 150, 108, ActiveColor, ActiveColorSmooth, 28); + if (TEF == 0) { + tftPrint(0, myLanguage[language][35], 150, 78, ActiveColor, ActiveColorSmooth, 28); + for (;;); + } EEPROM.writeByte(EE_BYTE_TEF, TEF); EEPROM.commit(); - while (true); - for (;;); + Tuner_Reset(); + ESP.restart(); } } diff --git a/src/Tuner_Interface.cpp b/src/Tuner_Interface.cpp index 1009fc4..c292473 100644 --- a/src/Tuner_Interface.cpp +++ b/src/Tuner_Interface.cpp @@ -109,14 +109,18 @@ bool Tuner_Table_Write(const unsigned char *tab) { } } -void Tuner_Patch(byte TEF) { +void Tuner_Reset(void) { Wire.beginTransmission(0x64); Wire.write(0x1e); Wire.write(0x5a); Wire.write(0x01); Wire.write(0x5a); Wire.write(0x5a); - Wire.endTransmission(); + Wire.endTransmission(); +} + +void Tuner_Patch(byte TEF) { + Tuner_Reset(); delay(100); Wire.beginTransmission(0x64); Wire.write(0x1c); diff --git a/src/Tuner_Interface.h b/src/Tuner_Interface.h index a69ce42..a58b54f 100644 --- a/src/Tuner_Interface.h +++ b/src/Tuner_Interface.h @@ -4,3 +4,4 @@ void Tuner_Init(const unsigned char *table); bool Tuner_WriteBuffer(unsigned char *buf, uint16_t len); bool Tuner_ReadBuffer(unsigned char *buf, uint16_t len); bool Tuner_Table_Write(const unsigned char *tab); +void Tuner_Reset(void); diff --git a/src/language.h b/src/language.h index 96a95bf..2a6c641 100644 --- a/src/language.h +++ b/src/language.h @@ -42,8 +42,8 @@ static const char* const myLanguage[18][206] = { "OFF", // 33 "SCANNING...", // 34 "Tuner not detected", // 35 - "Tuner version set: v", // 36 - "Please restart tuner", // 37 + "", // 36 + "", // 37 "Show RDS errors", // 38 "Language", // 39 "Choose language", // 40 @@ -250,8 +250,8 @@ static const char* const myLanguage[18][206] = { "UIT", // 33 "ZOEKEN...", // 34 "Tuner niet herkend!", // 35 - "Tuner ingesteld: v", // 36 - "Herstart de tuner", // 37 + "", // 36 + "", // 37 "Toon RDS fouten", // 38 "Taal", // 39 "Kies taal", // 40 @@ -458,8 +458,8 @@ static const char* const myLanguage[18][206] = { "WYŁ.", // 33 "SKANOWANIE...", // 34 "Nie wykryto tunera", // 35 - "Ustawiono wersję tunera: v", // 36 - "Proszę uruchomić pon. tuner", // 37 + "", // 36 + "", // 37 "Pokaż błędy RDS", // 38 "Język", // 39 "Wybierz swój język", // 40 @@ -666,8 +666,8 @@ static const char* const myLanguage[18][206] = { "ISK.", // 33 "SKENIRANJE...", // 34 "Prijemnik nije pronađen", // 35 - "Postavljena verzija prijemnika: v", // 36 - "Molim, ponovno pokrenite prijemnik", // 37 + "", // 36 + "", // 37 "Prikaži RDS pogreške", // 38 "Jezik", // 39 "Odaberite jezik", // 40 @@ -874,8 +874,8 @@ static const char* const myLanguage[18][206] = { "ΑΝΕΝ.", // 33 "ΑΝΙΧΝΕΥΣΗ...", // 34 "Το tuner δεν εντοπίστηκε", // 35 - "Η έκδοση tuner\nορίστηκε σε: v", // 36 - "Παρακαλώ επανεκκινήστε\nτο tuner", // 37 + "", // 36 + "", // 37 "Περιθώριο σφαλμάτων\nRDS", // 38 "Γλώσσα", // 39 "Επιλογή γλώσσας", // 40 @@ -1082,8 +1082,8 @@ static const char* const myLanguage[18][206] = { "Oprit", // 33 "SCANEZ...", // 34 "Tunerul nu este prezent", // 35 - "Versiune Tuner set: v", // 36 - "Restartati tunerul", // 37 + "", // 36 + "", // 37 "Arata erorile RDS", // 38 "Limba", // 39 "Alegeti Limba", // 40 @@ -1290,8 +1290,8 @@ static const char* const myLanguage[18][206] = { "AUS", // 33 "SCANNE...", // 34 "Tuner nicht erkannt", // 35 - "Tunerversion: v", // 36 - "Bitte Tuner neustarten", // 37 + "", // 36 + "", // 37 "Zeige RDS Fehler", // 38 "Sprache", // 39 "Sprache wählen", // 40 @@ -1498,8 +1498,8 @@ static const char* const myLanguage[18][206] = { "VYP", // 33 "SKENUJI...", // 34 "Tuner nedetekován", // 35 - "Verze tuneru nastavena: v", // 36 - "Prosím, restartujte tuner", // 37 + "", // 36 + "", // 37 "Zobrazit chyby v RDS", // 38 "Jazyk", // 39 "Vyberte jazyk", // 40 @@ -1706,8 +1706,8 @@ static const char* const myLanguage[18][206] = { "VYP", // 33 "SKENUJEM...", // 34 "Tuner nedetekovaný", // 35 - "Verzia tuneru nastavená: v", // 36 - "Prosím, reštartujte tuner", // 37 + "", // 36 + "", // 37 "Zobraziť chyby v RDS", // 38 "Jazyk", // 39 "Vyberte jazyk", // 40 @@ -1914,8 +1914,8 @@ static const char* const myLanguage[18][206] = { "FERMÉ", // 33 "RECHERCHE...", // 34 "Tuner non détecté", // 35 - "Version du récepteur: v", // 36 - "Veuillez redémarrer\nle récepteur", // 37 + "", // 36 + "", // 37 "Montrer les erreurs\nde décodage RDS", // 38 "Langage", // 39 "Choix de la langue", // 40 @@ -2122,8 +2122,8 @@ static const char* const myLanguage[18][206] = { "ИЗКЛ.", // 33 "СКАНИРАНЕ", // 34 "Тунерът не е разпознат!", // 35 - "Версията на тунера е зададена: v", // 36 - "Моля рестартирайте приемника!", // 37 + "", // 36 + "", // 37 "Показване на RDS грешки", // 38 "Език", // 39 "Изберете език", // 40 @@ -2330,8 +2330,8 @@ static const char* const myLanguage[18][206] = { "ВЫКЛ.", // 33 "СКАНИРОВАНИЕ...", // 34 "Тюнер не обнаружен", // 35 - "Установлена версия тюнера: v", // 36 - "Пожалуйста, перезагрузите тюнер", // 37 + "", // 36 + "", // 37 "Уровень ошибок RDS", // 38 "Язык меню", // 39 "Язык меню: ", // 40 @@ -2538,8 +2538,8 @@ static const char* const myLanguage[18][206] = { "ВИМКН.", // 33 "СКАНУВАННЯ...", // 34 "Тюнер не виявлено", // 35 - "Версія тюнера встановлена: v", // 36 - "Будь ласка, перезавантажте тюнер", // 37 + "", // 36 + "", // 37 "Показувати помилки RDS", // 38 "Мова", // 39 "Виберіть мову", // 40 @@ -2746,8 +2746,8 @@ static const char* const myLanguage[18][206] = { "OFF", // 33 *** "SCANSIONE...", // 34 "Ricevitore non rilevato", // 35 - "Versione ricevitore impostata: v", // 36 - "Riavvia il ricevitore", // 37 + "", // 36 + "", // 37 "Mostra errori RDS", // 38 "Lingua", // 39 "Scegli la lingua", // 40 @@ -2954,8 +2954,8 @@ static const char* const myLanguage[18][206] = { "OFF", // 33 *** "搜索中...", // 34 "未检测到收音芯片", // 35 - "收音芯片版本: v", // 36 - "请重启收音机", // 37 + "", // 36 + "", // 37 "显示 RDS errors", // 38 "语言", // 39 "选择语言", // 40 @@ -3162,8 +3162,8 @@ static const char* const myLanguage[18][206] = { "AV", // 33 "SKANNER...", // 34 "Tuner ikke oppdaget", // 35 - "Tuner versjon sett: v", // 36 - "Restart radioen", // 37 + "", // 36 + "", // 37 "Vis RDS-feil", // 38 "Språk", // 39 "Velg språk", // 40 @@ -3370,8 +3370,8 @@ static const char* const myLanguage[18][206] = { "APAGADO", // 33 "ESCANEANDO...", // 34 "Sintonizador no detectado", // 35 - "Versión del sintonizador\nestablecida: v", // 36 - "Por favor, reinicie\nel sintonizador", // 37 + "", // 36 + "", // 37 "Mostrar errores RDS", // 38 "Idioma", // 39 "Elegir idioma", // 40 @@ -3578,8 +3578,8 @@ static const char* const myLanguage[18][206] = { "DESATIVADO", // 33 "ANALISANDO...", // 34 "Sintonizador não detectado", // 35 - "Versão do sintonizador definida: v", // 36 - "Por favor,\nreinicie o sintonizador", // 37 + "", // 36 + "", // 37 "Mostrar erros RDS", // 38 "Idioma", // 39 "Escolha o idioma", // 40