diff --git a/_locales/en/messages.json b/_locales/en/messages.json index 975be442..d4efe592 100755 --- a/_locales/en/messages.json +++ b/_locales/en/messages.json @@ -2076,10 +2076,19 @@ "blackboxButtonSave": { "message": "Save and reboot" }, - + "serialLogging": { + "message": "Outboard serial logging device" + }, "serialLoggingSupportedNote": { "message": "You can log to an external logging device (such as an OpenLog or compatible clone) by using a serial port. Configure the port on the Ports tab." }, + + "onboardLoggingFlashLogger": { + "message": "Onboard dataflash chip" + }, + "OnboardSDCard": { + "message": "Onboard SD card" + }, "sdcardNote": { "message": "Flight logs can be recorded to your flight controller's onboard SD card slot." }, @@ -2105,6 +2114,9 @@ "dataflashConfirmEraseNote": { "message": "This will erase any Blackbox logs or other data contained in the dataflash which will take about 20 seconds, are you sure?" }, + "dataflashEraseing": { + "message": "Erase in progress, please wait..." + }, "dataflashSavingTitle": { "message": "Saving dataflash to file" }, @@ -2315,6 +2327,9 @@ "controlAxisThrottle": { "message": "Throttle [T]" }, + "controlAxisMotor": { + "message": "Motor" + }, "radioChannelShort": { "message": "CH " }, @@ -3967,9 +3982,24 @@ "uploadedCharacters": { "message": "Uploaded $1 characters" }, + "portsIdentifier": { + "message": "Identifier" + }, + "portsConfiguration": { + "message": "Data" + }, + "portsTelemetryOut": { + "message": "Telemetry" + }, + "portsSerialRx": { + "message": "RX" + }, "portColumnSensors": { "message": "Sensors" }, + "portsPeripherals": { + "message": "Peripherals" + }, "appUpdateNotificationHeader": { "message": "New Configurator version available." }, @@ -4024,6 +4054,108 @@ "missionTotalInformationHead": { "message": "Total information" }, + "missionTotalInfoFilenameLoaded": { + "message": "Filename loaded:" + }, + "missionTotalInfoDistance": { + "message": "Distance (m):" + }, + "missionTotalInfoAvailablePoints": { + "message": "Available Points" + }, + "missionTotalInfoMissionValid": { + "message": "Mission valid" + }, + "missionDefaultPointAlt": { + "message": "Alt (cm): " + }, + "missionDefaultPointSpeed": { + "message": "Speed (cm/s): " + }, + "missionDefaultSafeRangeSH": { + "message": "Radius (m): " + }, + "missionMultiMissionsInfo": { + "message": "Missions Info:" + }, + "missionMultiActiveMission": { + "message": "Active Mission:" + }, + "missionMultiMissionNo": { + "message": "Mission No." + }, + "missionMultiUpdateAll": { + "message": "Update All" + }, + "missionMultiAddNewMission": { + "message": "Add New Mission" + }, + "missionLevelEarthDEMModel": { + "message": "Use Sea Level Earth DEM Model: " + }, + "SafehomeLegend": { + "message": "Legend : " + }, + "SafehomeMaxDistance": { + "message": "Max distance (m):" + }, + "SafehomeSafeRadius": { + "message": "Safe Radius (m):" + }, + "missionTitleHide": { + "message": "Hide" + }, + "missionTitleCancel": { + "message": "Cancel" + }, + "missionTitleSave": { + "message": "Save" + }, + "missionTitlRemove": { + "message": "Remove" + }, + "missionTitleLoadMissionFile": { + "message": "Load Mission File" + }, + "missionTitleSaveMissionFile": { + "message": "Save Mission File" + }, + "missionTitleLoadMissionFromFC": { + "message": "Load mission from FC" + }, + "missionTitleSaveMissionToFC": { + "message": "Save mission to FC" + }, + "missionTitleLoadEepromMission": { + "message": "Load Eeprom mission" + }, + "missionTitleSaveEepromMission": { + "message": "Save Eeprom mission" + }, + "missionTitleRemoveAll": { + "message": "Remove all" + }, + "missionTitleSetActive": { + "message": "Set Active" + }, + "missionTitleUpdateAll": { + "message": "Update All" + }, + "missionTitleAdd": { + "message": "Add" + }, + "missionTitleMoveToCenterView": { + "message": "move to center view" + }, + "missionTitleSaveEepromSafehome": { + "message": "Save Eeprom Safehome" + }, + "missionTitleLoadEepromSafehome": { + "message": "Load Eeprom Safehome" + }, + "missionTitlEditMission": { + "message": "Edit Mission" + }, "missionRTHsettingsTitle": { "message": "RTH settings" }, @@ -4954,7 +5086,212 @@ "mainShowLog": { "message": "Show Log" }, + "mainHideLog": { + "message": "Hide Log" + }, "waitingForData": { "message": "Waiting for data ..." + }, + "outputStatsTableAcc": { + "message": "Acc. noise RMS" + }, + "outputStatsTableCurrent": { + "message": "Current [A]" + }, + "outputStatsTableVoltage": { + "message": "Voltage [V]" + }, + "LogicConditions": { + "message": "Logic Conditions" + }, + "PIDControllers": { + "message": "PID Controllers" + }, + "sensorsGyroSelect": { + "message": "Gyroscope" + }, + "sensorsAccelSelect": { + "message": "Accelerometer" + }, + "sensorsMagSelect": { + "message": "Magnetometer" + }, + "sensorsAltitudeSelect": { + "message": "Barometer" + }, + "sensorsSonarSelect": { + "message": "Sonar" + }, + "sensorsAirSpeedSelect": { + "message": "Air speed" + }, + "sensorsTemperaturesSelect": { + "message": "Temperatures" + }, + + "sensorsDebugSelect": { + "message": "Debug" + }, + "sensorsDebugTrace": { + "message": "Open Debug Trace" + }, + "sensorsGyroscope": { + "message": "Gyroscope - deg/s" + }, + "sensorsAccelerometer": { + "message": "Accelerometer - g" + }, + "sensorsMagnetometer": { + "message": "Magnetometer - Ga" + }, + "sensorsBarometer": { + "message": "Barometer - meters" + }, + "sensorsSonar": { + "message": "Sonar - cm" + }, + "sensorsAirspeed": { + "message": "Air speed - cm/s" + }, + "sensorsTemperature0": { + "message": "Temperature 0 - °C" + }, + "sensorsTemperature1": { + "message": "Temperature 1 - °C" + }, + "sensorsTemperature2": { + "message": "Temperature 2 - °C" + }, + "sensorsTemperature3": { + "message": "Temperature 3 - °C" + }, + "sensorsTemperature4": { + "message": "Temperature 4 - °C" + }, + "sensorsTemperature5": { + "message": "Temperature 5 - °C" + }, + "sensorsTemperature6": { + "message": "Temperature 6 - °C" + }, + "sensorsTemperature7": { + "message": "Temperature 7 - °C" + }, + "sensorsTemperatureValue": { + "message": "value:" + }, + "getRunningOS": { + "message": "Running - OS: " + }, + "getConfiguratorVersion": { + "message": "Configurator: " + }, + "loadedReleaseInfo": { + "message": "Loaded release information from GitHub." + }, + "newVersionAvailable": { + "message": "New version available!" + }, + "ReceiveTime": { + "message": "Receive time: " + }, + "SendTime": { + "message": "Send time: " + }, + "ErrorWritingFile": { + "message": "Error writing file" + }, + "FileSaved": { + "message": "File saved" + }, + "selectedTarget": { + "message": "selected target = " + }, + "toggledRCs": { + "message": "toggled RCs" + }, + "noFirmwareSelectedToLoad": { + "message": "No firmware selected to load" + }, + "selectValidSerialPort": { + "message": "Please select valid serial port'" + }, + "writePermissionsForFile": { + "message": "You don\\'t have write permissions for this file" + }, + "automaticTargetSelect": { + "message": "Attempting automatic target selection" + }, + "notAWAYPOINT": { + "message": "Previous selection was not a WAYPOINT!" + }, + "startGettingSafehomePoints": { + "message": "Start of getting Safehome points" + }, + "endGettingSafehomePoints": { + "message": "End of getting Safehome points" + }, + "startSendingSafehomePoints": { + "message": "Start of sending Safehome points" + }, + "endSendingSafehomePoints": { + "message": "End of sending Safehome points" + }, + "startGetPoint": { + "message": "Start get point" + }, + "startSendPoint": { + "message": "Start send point" + }, + "errorReadingFileXml2jsNotFound": { + "message": "Error reading file (xml2js not found)'" + }, + "errorReadingFile": { + "message": "Error reading file" + }, + "errorParsingFile": { + "message": "Error parsing file" + }, + "loadedSuccessfully": { + "message": " has been loaded successfully !" + }, + "errorWritingFileXml2jsNotFound": { + "message": "Error writing file (xml2js not found)" + }, + "savedSuccessfully": { + "message": " has been saved successfully !" + }, + "endGetPoint": { + "message": "End get point" + }, + "endSendPoint": { + "message": "End send point" + }, + "osdSettingsSaved": { + "message": "OSD settings saved" + }, + "failedToOpenSerialPort": { + "message": "Failed to open serial port" + }, + "failedToFlash": { + "message": "Failed to flash" + }, + "targetPrefetchsuccessful": { + "message": "Target prefetch successful: " + }, + "targetPrefetchFail": { + "message": "Cannot prefetch target: " + }, + "targetPrefetchFailDFU": { + "message": "Cannot prefetch target: Flight Controller in DFU" + }, + "targetPrefetchFailOld": { + "message": "Cannot prefetch target: INAV Firmware too old" + }, + "targetPrefetchFailNonINAV": { + "message": "Cannot prefetch target: Non-INAV Firmware" + }, + "targetPrefetchFailNoPort": { + "message": "Cannot prefetch target: No port" } } \ No newline at end of file diff --git a/js/appUpdater.js b/js/appUpdater.js index 74044ef2..e4d36ab3 100644 --- a/js/appUpdater.js +++ b/js/appUpdater.js @@ -5,7 +5,7 @@ var appUpdater = appUpdater || {}; appUpdater.checkRelease = function (currVersion) { var modalStart; $.get('https://api.github.com/repos/iNavFlight/inav-configurator/releases', function (releaseData) { - GUI.log('Loaded release information from GitHub.'); + GUI.log(chrome.i18n.getMessage('loadedReleaseInfo')); //Git return sorted list, 0 - last release let newVersion = releaseData[0].tag_name; @@ -15,7 +15,7 @@ appUpdater.checkRelease = function (currVersion) { GUI.log(newVersion, chrome.runtime.getManifest().version); GUI.log(currVersion); - GUI.log('New version available!'); + GUI.log(chrome.i18n.getMessage('newVersionAvailable')); modalStart = new jBox('Modal', { width: 400, height: 200, diff --git a/js/msp/MSPHelper.js b/js/msp/MSPHelper.js index 5af42399..70458f65 100644 --- a/js/msp/MSPHelper.js +++ b/js/msp/MSPHelper.js @@ -3003,7 +3003,7 @@ var mspHelper = (function (gui) { if (waypointId < MISSION_PLANNER.getCountBusyPoints()) { MSP.send_message(MSPCodes.MSP_WP, [waypointId], false, loadWaypoint); } else { - GUI.log('Receive time: ' + (new Date().getTime() - startTime) + 'ms'); + GUI.log(chrome.i18n.getMessage('ReceiveTime') + (new Date().getTime() - startTime) + 'ms'); MSP.send_message(MSPCodes.MSP_WP, [waypointId], false, callback); } }; @@ -3025,7 +3025,7 @@ var mspHelper = (function (gui) { }; function endMission() { - GUI.log('Send time: ' + (new Date().getTime() - startTime) + 'ms'); + GUI.log(chrome.i18n.getMessage('SendTime') + (new Date().getTime() - startTime) + 'ms'); MSP.send_message(MSPCodes.MSP_WP_GETINFO, false, false, callback); } }; diff --git a/js/protocols/stm32.js b/js/protocols/stm32.js index bb479152..9ef0b2ac 100644 --- a/js/protocols/stm32.js +++ b/js/protocols/stm32.js @@ -81,7 +81,7 @@ STM32_protocol.prototype.connect = function (port, baud, hex, options, callback) self.initialize(); } else { - GUI.log('Failed to open serial port'); + GUI.log(chrome.i18n.getMessage('failedToOpenSerialPort')); } }); } else { @@ -108,7 +108,7 @@ STM32_protocol.prototype.connect = function (port, baud, hex, options, callback) retries++; if (retries > maxRetries) { clearInterval(interval); - GUI.log('Failed to flash ' + port); + GUI.log(chrome.i18n.getMessage('failedToFlash') + port); } } // Check for DFU devices @@ -145,7 +145,7 @@ STM32_protocol.prototype.connect = function (port, baud, hex, options, callback) }); }); } else { - GUI.log('Failed to open serial port'); + GUI.log(chrome.i18n.getMessage('failedToOpenSerialPort')); } }); } diff --git a/main.js b/main.js index 17694738..6835f190 100644 --- a/main.js +++ b/main.js @@ -85,9 +85,9 @@ $(document).ready(function () { } // alternative - window.navigator.appVersion.match(/Chrome\/([0-9.]*)/)[1]; - GUI.log('Running - OS: ' + GUI.operating_system + ', ' + + GUI.log(chrome.i18n.getMessage('getRunningOS') + GUI.operating_system + ', ' + 'Chrome: ' + window.navigator.appVersion.replace(/.*Chrome\/([0-9.]*).*/, "$1") + ', ' + - 'Configurator: ' + chrome.runtime.getManifest().version + ''); + chrome.i18n.getMessage('getConfiguratorVersion') + chrome.runtime.getManifest().version + ''); $('#status-bar .version').text(chrome.runtime.getManifest().version); $('#logo .version').text(chrome.runtime.getManifest().version); @@ -534,7 +534,7 @@ $(document).ready(function () { state = true; } - $(this).text(state ? 'Hide Log' : 'Show Log'); + $(this).html(state ? chrome.i18n.getMessage("mainHideLog") : chrome.i18n.getMessage("mainShowLog")); $(this).data('state', state); }); diff --git a/tabs/cli.js b/tabs/cli.js index c874aeac..2d6d11fa 100644 --- a/tabs/cli.js +++ b/tabs/cli.js @@ -172,10 +172,10 @@ TABS.cli.initialize = function (callback) { fs.writeFile(result, self.outputHistory, (err) => { if (err) { - GUI.log('Error writing file'); + GUI.log(chrome.i18n.getMessage('ErrorWritingFile')); return console.error(err); } - GUI.log('File saved'); + GUI.log(chrome.i18n.getMessage('FileSaved')); }); }); @@ -250,7 +250,7 @@ TABS.cli.initialize = function (callback) { fs.readFile(result, (err, data) => { if (err) { - GUI.log('Error reading file'); + GUI.log(chrome.i18n.getMessage('ErrorReadingFile')); return console.error(err); } diff --git a/tabs/firmware_flasher.js b/tabs/firmware_flasher.js index 93cc5b80..b34d3298 100755 --- a/tabs/firmware_flasher.js +++ b/tabs/firmware_flasher.js @@ -52,9 +52,9 @@ TABS.firmware_flasher.initialize = function (callback) { $('input.show_development_releases').click(function() { let selectedTarget = String($('select[name="board"]').val()); - GUI.log("selected target = " + selectedTarget); + GUI.log(chrome.i18n.getMessage('selectedTarget') + selectedTarget); buildBoardOptions(); - GUI.log("toggled RCs"); + GUI.log(chrome.i18n.getMessage('toggledRCs')); if (selectedTarget === "0") { TABS.firmware_flasher.getTarget(); } else { @@ -274,7 +274,7 @@ TABS.firmware_flasher.initialize = function (callback) { $('a.load_remote_file').click(function (evt) { if ($('select[name="firmware_version"]').val() == "0") { - GUI.log("No firmware selected to load"); + GUI.log(chrome.i18n.getMessage('noFirmwareSelectedToLoad')); return; } @@ -402,7 +402,7 @@ TABS.firmware_flasher.initialize = function (callback) { STM32.connect(port, baud, parsed_hex, options); } else { console.log('Please select valid serial port'); - GUI.log('Please select valid serial port'); + GUI.log(chrome.i18n.getMessage('selectValidSerialPort')); } } else { STM32DFU.connect(usbDevices.STM32DFU, parsed_hex, options); @@ -452,7 +452,7 @@ TABS.firmware_flasher.initialize = function (callback) { }); } else { console.log('You don\'t have write permissions for this file, sorry.'); - GUI.log('You don\'t have write permissions for this file'); + GUI.log(chrome.i18n.getMessage('writePermissionsForFile')); } }); }); @@ -635,14 +635,14 @@ TABS.firmware_flasher.cleanup = function (callback) { }; TABS.firmware_flasher.getTarget = function() { - GUI.log("Attempting automatic target selection"); + GUI.log(chrome.i18n.getMessage('automaticTargetSelect')); var selected_baud = parseInt($('#baud').val()); var selected_port = $('#port').find('option:selected').data().isManual ? $('#port-override').val() : String($('#port').val()); if (selected_port !== 'DFU') { if (selected_port == '0') { - GUI.log("Cannot prefetch target: No port"); + GUI.log(chrome.i18n.getMessage('targetPrefetchFailNoPort')); } else { console.log('Connecting to: ' + selected_port); GUI.connecting_to = selected_port; @@ -654,7 +654,7 @@ TABS.firmware_flasher.getTarget = function() { } } } else { - GUI.log("Cannot prefetch target: Flight Controller in DFU"); + GUI.log(chrome.i18n.getMessage('targetPrefetchFailDFU')); } }; @@ -686,7 +686,7 @@ TABS.firmware_flasher.onOpen = function(openInfo) { // disconnect after 10 seconds with error if we don't get IDENT data helper.timeout.add('connecting', function () { if (!CONFIGURATOR.connectionValid) { - GUI.log("Cannot prefetch target: " + chrome.i18n.getMessage('noConfigurationReceived')); + GUI.log(chrome.i18n.getMessage('targetPrefetchFail') + chrome.i18n.getMessage('noConfigurationReceived')); TABS.firmware_flasher.closeTempConnection(); } @@ -709,7 +709,7 @@ TABS.firmware_flasher.onOpen = function(openInfo) { if (CONFIG.flightControllerIdentifier == 'INAV') { MSP.send_message(MSPCodes.MSP_FC_VERSION, false, false, function () { if (semver.lt(CONFIG.flightControllerVersion, "5.0.0")) { - GUI.log("Cannot prefetch target: INAV Firmware too old"); + GUI.log(chrome.i18n.getMessage('targetPrefetchFailOld')); TABS.firmware_flasher.closeTempConnection(); } else { mspHelper.getCraftName(function(name) { @@ -721,13 +721,13 @@ TABS.firmware_flasher.onOpen = function(openInfo) { } }); } else { - GUI.log("Cannot prefetch target: Non-INAV Firmware"); + GUI.log(chrome.i18n.getMessage('targetPrefetchFailNonINAV')); TABS.firmware_flasher.closeTempConnection(); } }); }); } else { - GUI.log("Cannot prefetch target: " + chrome.i18n.getMessage('serialPortOpenFail')); + GUI.log(chrome.i18n.getMessage('targetPrefetchFail') + chrome.i18n.getMessage('serialPortOpenFail')); return; } }; @@ -736,7 +736,7 @@ TABS.firmware_flasher.onValidFirmware = function() { MSP.send_message(MSPCodes.MSP_BUILD_INFO, false, false, function () { MSP.send_message(MSPCodes.MSP_BOARD_INFO, false, false, function () { $('select[name="board"] option[value=' + CONFIG.target + ']').attr("selected", "selected"); - GUI.log("Target prefetch successful: " + CONFIG.target); + GUI.log(chrome.i18n.getMessage('targetPrefetchsuccessful') + CONFIG.target); TABS.firmware_flasher.closeTempConnection(); $('select[name="board"]').change(); diff --git a/tabs/mission_control.html b/tabs/mission_control.html index 8dfeb1c8..e4411643 100644 --- a/tabs/mission_control.html +++ b/tabs/mission_control.html @@ -1,28 +1,28 @@
-
Mission planner
+
-
Action Menu
+
- +
- - + +

- +
-
Total information
+
- +
- Filename loaded: +
- Distance (m): +
- Available Points + 0/0
- Mission valid +
@@ -67,23 +67,23 @@