diff --git a/openrtx/include/ui/SpanishStrings.h b/openrtx/include/ui/SpanishStrings.h
new file mode 100644
index 00000000..28c9451d
--- /dev/null
+++ b/openrtx/include/ui/SpanishStrings.h
@@ -0,0 +1,100 @@
+/****************************************************************************
+ * Copyright (C) 2024 by Federico Amedeo Izzo IU2NUO, *
+ * Niccolò Izzo IU2KIN *
+ * Frederik Saraci IU2NRO *
+ * Silvano Seva IU2KWO *
+ * Joseph Stephen VK7JS *
+ * Juan I. Pucheu LW7EMN *
+ * *
+ * This program is free software; you can redistribute it and/or modify *
+ * it under the terms of the GNU General Public License as published by *
+ * the Free Software Foundation; either version 3 of the License, or *
+ * (at your option) any later version. *
+ * *
+ * This program is distributed in the hope that it will be useful, *
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of *
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
+ * GNU General Public License for more details. *
+ * *
+ * You should have received a copy of the GNU General Public License *
+ * along with this program; if not, see *
+ ***************************************************************************/
+#ifndef SPANISHSTRINGS_H
+#define SPANISHSTRINGS_H
+
+#include "ui/ui_strings.h"
+
+const stringsTable_t spanishStrings =
+{
+ .languageName = "Español",
+ .off = "Apagado",
+ .on = "Encendido",
+ .banks = "Banks",
+ .channels = "Canales",
+ .contacts = "Contactos",
+ .gps = "GPS",
+ .settings = "Ajustes",
+ .backupAndRestore = "Backup & Restaurar",
+ .info = "Info",
+ .about = "Acerca de",
+ .display = "Display",
+ .timeAndDate = "Fecha & Hora",
+ .fm = "FM",
+ .m17 = "M17",
+ .dmr = "DMR",
+ .defaultSettings = "Ajustes de fábrica",
+ .brightness = "Brillo",
+ .contrast = "Contraste",
+ .timer = "Cronómetro",
+ .gpsEnabled = "GPS habilitado",
+ .gpsSetTime = "GPS Ajustar hora",
+ .UTCTimeZone = "Zona Horaria UTC",
+ .voice = "Voz",
+ .level = "Nivel",
+ .phonetic = "Fonético",
+ .beep = "Bip",
+ .backup = "Backup",
+ .restore = "Restarurar",
+ .batteryVoltage = "Voltage Bat.",
+ .batteryCharge = "Carga Bat.",
+ .RSSI = "RSSI",
+ .model = "Modelo",
+ .band = "Banda",
+ .VHF = "VHF",
+ .UHF = "UHF",
+ .LCDType = "Tipo de LCD",
+ .Niccolo = "Niccolo' IU2KIN",
+ .Silvano = "Silvano IU2KWO",
+ .Federico = "Federico IU2NUO",
+ .Fred = "Fred IU2NRO",
+ .Joseph = "Joseph VK7JS",
+ .allChannels = "Todos los canales",
+ .menu = "Menu",
+ .gpsOff = "GPS Apagado",
+ .noFix = "Sin posición",
+ .fixLost = "Posición perdida",
+ .error = "ERROR",
+ .flashBackup = "Guardar Backup",
+ .connectToRTXTool = "Conectar con RTXTool",
+ .toBackupFlashAnd = "guardar flash y",
+ .pressPTTToStart = "Apretar PTT para iniciar",
+ .flashRestore = "Flash restore",
+ .toRestoreFlashAnd = "to restore flash and",
+ .openRTX = "OpenRTX",
+ .gpsSettings = "Ajustes de GPS",
+ .m17settings = "Ajustes de M17",
+ .callsign = "Licencia:",
+ .resetToDefaults = "Reseatear a fábrica",
+ .toReset = "Para resetear:",
+ .pressEnterTwice = "Apretar Enter 2 veces",
+ .macroMenu = "Menú macro",
+ .forEmergencyUse = "Sólo Emergencias",
+ .pressAnyButton = "Apretar cualquier botón.",
+ .accessibility = "Accesibilidad",
+ .usedHeap = "Memoria heap usada",
+ .broadcast = "TODOS",
+ .radioSettings = "Ajustes de Radio",
+ .frequencyOffset = "Offset de frecuencia",
+ .macroLatching = "Macro Latching"
+};
+#endif // SPANISHSTRINGS_H
diff --git a/openrtx/include/ui/ui_strings.h b/openrtx/include/ui/ui_strings.h
index 9a9061b6..4a80e150 100644
--- a/openrtx/include/ui/ui_strings.h
+++ b/openrtx/include/ui/ui_strings.h
@@ -20,7 +20,7 @@
#ifndef UI_STRINGS_H
#define UI_STRINGS_H
-#define NUM_LANGUAGES 1
+#define NUM_LANGUAGES 2
/*
* NOTE: This string table's order must not be altered as voice prompts will be
diff --git a/openrtx/src/ui/default/ui_strings.c b/openrtx/src/ui/default/ui_strings.c
index eb54e4a9..2d249ac9 100644
--- a/openrtx/src/ui/default/ui_strings.c
+++ b/openrtx/src/ui/default/ui_strings.c
@@ -23,8 +23,9 @@
#include
#include
#include
+#include
-const stringsTable_t languages[NUM_LANGUAGES] = {englishStrings};
+const stringsTable_t languages[NUM_LANGUAGES] = {englishStrings,spanishStrings};
const stringsTable_t* currentLanguage = &languages[0];
int GetEnglishStringTableOffset(const char* text)