1
0
Fork 0
mirror of https://github.com/iNavFlight/inav-configurator.git synced 2025-07-24 16:55:22 +03:00

Merge branch 'master' into feature/uiunits

This commit is contained in:
Elgan Sayer 2021-11-11 19:51:13 +00:00 committed by GitHub
commit 1a05df71da
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
40 changed files with 1197 additions and 572 deletions

View file

@ -566,7 +566,7 @@
"message": "Settings restored to <strong>default</strong>"
},
"initialSetupEepromSaved": {
"message": "EEPROM <span style=\"color: #37a8db\">saved</span>"
"message": "EEPROM <span style=\"color: #37a8db\">saved</span>: Setup"
},
"RX_PPM": {
@ -1015,7 +1015,7 @@
"message": "Craft name. Can be displayed by OSD and by compatible RC systems."
},
"configurationEepromSaved": {
"message": "EEPROM <span style=\"color: #37a8db\">saved</span>"
"message": "EEPROM <span style=\"color: #37a8db\">saved</span>: Configuration"
},
"configurationButtonSave": {
"message": "Save and Reboot"
@ -1222,7 +1222,7 @@
"message": "PID data <strong>refreshed</strong>"
},
"pidTuningEepromSaved": {
"message": "EEPROM <span style=\"color: #37a8db\">saved</span>"
"message": "EEPROM <span style=\"color: #37a8db\">saved</span>: PID Tuning"
},
"receiverHelp": {
@ -1286,7 +1286,7 @@
"message": "RC Tuning data <strong>refreshed</strong>"
},
"receiverEepromSaved": {
"message": "EEPROM <span style=\"color: #37a8db\">saved</span>"
"message": "EEPROM <span style=\"color: #37a8db\">saved</span>: Receiver"
},
"auxiliaryHelp": {
@ -1534,9 +1534,11 @@
"message": "Save"
},
"adjustmentsEepromSaved": {
"message": "EEPROM <span style=\"color: #37a8db\">saved</span>"
"message": "EEPROM <span style=\"color: #37a8db\">saved</span>: Adjustments"
},
"programmingEepromSaved": {
"message": "EEPROM <span style=\"color: #37a8db\">saved</span>: Programming"
},
"transponderNotSupported": {
"message": "Your flight controller's firmware does not support transponder functionality."
},
@ -1562,7 +1564,7 @@
"message": "Transponder data is <span style=\"color: red\">invalid</span>"
},
"transponderEepromSaved": {
"message": "EEPROM <span style=\"color: #37a8db\">saved</span>"
"message": "EEPROM <span style=\"color: #37a8db\">saved</span>: Transponder"
},
"servosChangeDirection": {
"message": "Change Direction in TX To Match"
@ -2018,7 +2020,7 @@
"message": "Save"
},
"ledStripEepromSaved": {
"message": "EEPROM <span style=\"color: #37a8db\">saved</span>"
"message": "EEPROM <span style=\"color: #37a8db\">saved</span>: LED"
},
"controlAxisRoll": {
@ -2498,12 +2500,21 @@
"userControlMode": {
"message": "User Control Mode"
},
"posholdDefaultSpeed": {
"message": "Default navigation speed [cm/s]"
},
"posholdDefaultSpeedHelp": {
"message": "Default speed during RTH, also used for WP navigation if no speed set for WP leg. Limited to Max. navigation speed"
},
"posholdMaxSpeed": {
"message": "Max. navigation speed [cm/s]"
},
"posholdMaxManualSpeed": {
"message": "Max. CRUISE speed [cm/s]"
},
"posholdMaxManualSpeedHelp": {
"message": "Maximum horizonal velocity allowed for pilot manual control during POSHOLD/CRUISE mode"
},
"posholdMaxClimbRate": {
"message": "Max. navigation climb rate [cm/s]"
},
@ -2804,6 +2815,12 @@
"osd_plus_code_short": {
"message" : "Plus Code Remove Leading Digits"
},
"osd_esc_rpm_precision": {
"message": "ESC RPM precision"
},
"osd_esc_rpm_precision_help": {
"message": "The number of digits shown in the RPM display. If the RPM is higher than the number of digits, it will be shown in thousand RPM with as many decimal places as allowed."
},
"osd_crosshairs_style": {
"message" : "Crosshairs Style"
},
@ -3060,7 +3077,7 @@
"message": "Shows the throttle stick position in flight modes where it controls the throttle output. On navigation modes, it shows the actual throttle value applied to the motors."
},
"osdElement_GPS_SPEED": {
"message": "GPS Speed"
"message": "Ground Speed"
},
"osdElement_GPS_SPEED_HELP": {
"message": "Shows GPS ground speed."
@ -3251,6 +3268,9 @@
"osdElement_WIND_SPEED_VERTICAL_HELP": {
"message": "Shows estimated vertical wind speed and direction (up or down)."
},
"osdElement_ACTIVE_PROFILE": {
"message": "Show the active profile"
},
"osdElement_LEVEL_PIDS": {
"message": "Level PIDs"
},
@ -3363,16 +3383,16 @@
"message": "Hide unsupported elements"
},
"osd_dji_ESC_temp": {
"message" : "Source of ESC Temperature"
"message" : "Source of <i>ESC Temperature</i>"
},
"osd_dji_RSSI_source": {
"message" : "Source of RSSI"
"message" : "Source of <i>RSSI</i>"
},
"osd_dji_GPS_source": {
"message" : "Source of GPS Speed"
"message" : "Source of <i>GPS Speed</i>"
},
"osd_dji_speed_source": {
"message" : "Source of 3D Speed"
"message" : "Source of <i>3D Speed</i>"
},
"osd_dji_use_craft_name_elements": {
"message" : "Use craft name for messages and additional elements.</span><br/>Elements in <span class=\"blue\">blue</span> appear in Craft Name."
@ -3494,6 +3514,9 @@
"missionSafehomeHead": {
"message": "Safe Home manager"
},
"missionMultiMissionHead": {
"message": "Multi Missions"
},
"missionTemplateHead": {
"message": "Mission template"
},
@ -3512,6 +3535,15 @@
"confirm_delete_point_with_options": {
"message": "Do you really want to delete this Waypoint with non-Geo JUMP/SET_HEAD/RTH options? \nIf yes, Non-Geo options attached will be removed also!"
},
"confirm_multimission_file_load": {
"message": "This is a multi mission file. Loading will over write current multi mission.\nContinue?"
},
"confirm_overwrite_multimission_file_load_option": {
"message": "This will over write current multi mission.\nContinue?"
},
"multimission_active_index_saved_eeprom": {
"message": "Mission active index saved"
},
"no_waypoints_to_load": {
"message": "No waypoints to load !"
},
@ -3857,10 +3889,16 @@
"fwLevelTrimMechanics": {
"message": "Fixed Wing Level Trim"
},
"d_boost_factor": {
"message": "D-Boost Factor"
"d_boost_min": {
"message": "D-Boost Min. Scale"
},
"d_boost_factor_help": {
"d_boost_min_help": {
"message": "Defines the max allowed Dterm attenuation during stick acceleration phase. Value 1.0 mean Dterm is not attenuate. 0.5 mean it's allowed to shrink by half. Lower values result in faster response during fast stick movement."
},
"d_boost_max": {
"message": "D-Boost Max. Scale"
},
"d_boost_max_help": {
"message": "Defines the maximum Dterm boost when maximum angular acceleration is reached. 1.0 means D-Boost is disabled, 2.0 means Dterm is allowed to grow by 100%. Values between 1.5 and 1.7 are usually the sweet spot."
},
"d_boost_max_at_acceleration": {

View file

@ -0,0 +1,50 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Generator: Adobe Illustrator 18.1.1, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<svg
version="1.1"
id="Capa_1"
x="0px"
y="0px"
viewBox="0 0 141.7 141.7"
enable-background="new 0 0 141.7 141.7"
xml:space="preserve"
sodipodi:docname="cf_icon_MM_white.svg"
inkscape:version="1.1 (c68e22c387, 2021-05-23)"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg"><defs
id="defs12" /><sodipodi:namedview
id="namedview10"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:pageshadow="2"
inkscape:pageopacity="0.0"
inkscape:pagecheckerboard="true"
showgrid="false"
inkscape:zoom="3.7402965"
inkscape:cx="77.132923"
inkscape:cy="70.983678"
inkscape:window-width="1366"
inkscape:window-height="715"
inkscape:window-x="-8"
inkscape:window-y="-8"
inkscape:window-maximized="1"
inkscape:current-layer="Capa_1" />
<g
id="g7"
transform="rotate(-90,69.810245,71.05)">
<g
id="_x34_29._Network">
<g
id="g4">
<path
fill="#ffffff"
d="M 122.4,98.3 V 77.6 c 0,-7.2 -5.9,-13.1 -13.1,-13.1 H 76.6 V 43.7 C 84.2,41 89.7,33.7 89.7,25.2 89.7,14.4 80.9,5.6 70.1,5.6 59.3,5.6 50.5,14.4 50.5,25.2 50.5,33.8 56,41 63.6,43.7 V 64.5 H 30.7 c -7.2,0 -13.1,5.9 -13.1,13.1 V 98.4 C 10,101 4.5,108.3 4.5,116.8 c 0,10.8 8.8,19.6 19.6,19.6 10.8,0 19.6,-8.8 19.6,-19.6 0,-8.5 -5.5,-15.8 -13.1,-18.5 V 77.6 h 32.7 v 20.8 c -7.6,2.7 -13.1,9.9 -13.1,18.5 0,10.8 8.8,19.6 19.6,19.6 10.8,0 19.6,-8.8 19.6,-19.6 0,-8.5 -5.5,-15.8 -13.1,-18.5 V 77.6 H 109 v 20.8 c -7.6,2.7 -13.1,9.9 -13.1,18.5 0,10.8 8.8,19.6 19.6,19.6 10.8,0 19.6,-8.8 19.6,-19.6 0.4,-8.6 -5.1,-15.9 -12.7,-18.6 z m -98.2,25.1 c -3.6,0 -6.5,-2.9 -6.5,-6.5 0,-3.6 2.9,-6.5 6.5,-6.5 3.6,0 6.5,2.9 6.5,6.5 0,3.6 -2.9,6.5 -6.5,6.5 z m 45.8,0 c -3.6,0 -6.5,-2.9 -6.5,-6.5 0,-3.6 2.9,-6.5 6.5,-6.5 3.6,0 6.5,2.9 6.5,6.5 0.1,3.6 -2.9,6.5 -6.5,6.5 z m 0,-91.7 c -3.6,0 -6.5,-2.9 -6.5,-6.6 0,-3.6 2.9,-6.5 6.5,-6.5 3.6,0 6.5,2.9 6.5,6.5 0.1,3.7 -2.9,6.6 -6.5,6.6 z m 45.8,91.7 c -3.6,0 -6.5,-2.9 -6.5,-6.5 0,-3.6 2.9,-6.5 6.5,-6.5 3.6,0 6.5,2.9 6.5,6.5 0.1,3.6 -2.8,6.5 -6.5,6.5 z"
id="path2" />
</g>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 2.3 KiB

View file

@ -214,7 +214,11 @@ helper.defaultsDialog = (function () {
value: 10
},
{
key: "d_boost_factor",
key: "d_boost_min",
value: 1
},
{
key: "d_boost_max",
value: 1
},
{
@ -263,7 +267,7 @@ helper.defaultsDialog = (function () {
},
{
key: "nav_fw_pos_z_p",
value: 20
value: 15
},
{
key: "nav_fw_pos_z_d",
@ -279,7 +283,7 @@ helper.defaultsDialog = (function () {
},
{
key: "max_angle_inclination_rll",
value: 350
value: 450
},
{
key: "nav_fw_bank_angle",
@ -291,7 +295,11 @@ helper.defaultsDialog = (function () {
},
{
key: "fw_i_pitch",
value: 10
value: 5
},
{
key: "fw_d_pitch",
value: 5
},
{
key: "fw_ff_pitch",
@ -299,15 +307,19 @@ helper.defaultsDialog = (function () {
},
{
key: "fw_p_roll",
value: 10
value: 15
},
{
key: "fw_i_roll",
value: 8
value: 3
},
{
key: "fw_d_roll",
value: 7
},
{
key: "fw_ff_roll",
value: 40
value: 50
},
{
key: "fw_p_yaw",
@ -315,7 +327,7 @@ helper.defaultsDialog = (function () {
},
{
key: "fw_i_yaw",
value: 5
value: 0
},
{
key: "fw_ff_yaw",
@ -355,7 +367,7 @@ helper.defaultsDialog = (function () {
},
{
key: "nav_wp_radius",
value: 1500
value: 5000
},
],
"features": [
@ -392,7 +404,11 @@ helper.defaultsDialog = (function () {
value: 10
},
{
key: "d_boost_factor",
key: "d_boost_min",
value: 1
},
{
key: "d_boost_max",
value: 1
},
{
@ -441,7 +457,7 @@ helper.defaultsDialog = (function () {
},
{
key: "nav_fw_pos_z_p",
value: 20
value: 15
},
{
key: "nav_fw_pos_z_d",
@ -457,7 +473,7 @@ helper.defaultsDialog = (function () {
},
{
key: "max_angle_inclination_rll",
value: 450
value: 550
},
{
key: "nav_fw_bank_angle",
@ -465,11 +481,15 @@ helper.defaultsDialog = (function () {
},
{
key: "fw_p_pitch",
value: 10
value: 15
},
{
key: "fw_i_pitch",
value: 15
value: 5
},
{
key: "fw_d_pitch",
value: 5
},
{
key: "fw_ff_pitch",
@ -477,15 +497,15 @@ helper.defaultsDialog = (function () {
},
{
key: "fw_p_roll",
value: 5
value: 15
},
{
key: "fw_i_roll",
value: 8
value: 3
},
{
key: "fw_ff_roll",
value: 35
value: 50
},
{
key: "imu_acc_ignore_rate",
@ -521,7 +541,7 @@ helper.defaultsDialog = (function () {
},
{
key: "nav_wp_radius",
value: 1500
value: 5000
},
],
"features": [

View file

@ -1243,6 +1243,17 @@ var FC = {
hasOperand: [true, true],
output: "boolean"
},
41: {
name: "LOITER RADIUS OVERRIDE",
hasOperand: [true, false],
output: "boolean"
},
42: {
name: "SET PROFILE",
hasOperand: [true, false],
output: "boolean"
},
}
},
getOperandTypes: function () {
@ -1301,6 +1312,8 @@ var FC = {
32: "CRSF LQ",
33: "CRSF SNR",
34: "GPS Valid Fix",
35: "Loiter Radius [cm]",
36: "Active Profile",
}
},
3: {

View file

@ -455,7 +455,8 @@ var mspHelper = (function (gui) {
data.getInt32(10, true),
data.getInt16(14, true),
data.getInt16(16, true),
data.getInt16(18, true)
data.getInt16(18, true),
data.getUint8(20)
));
break;
case MSPCodes.MSP_BOXIDS:
@ -519,7 +520,7 @@ var mspHelper = (function (gui) {
));
}
}
break;
case MSPCodes.MSP2_INAV_LOGIC_CONDITIONS_STATUS:
@ -1297,7 +1298,7 @@ var mspHelper = (function (gui) {
CALIBRATION_DATA.magZero.Y = data.getInt16(15, true);
CALIBRATION_DATA.magZero.Z = data.getInt16(17, true);
CALIBRATION_DATA.opflow.Scale = (data.getInt16(19, true) / 256.0);
if (semver.gte(CONFIG.flightControllerVersion, "2.6.0")) {
CALIBRATION_DATA.magGain.X = data.getInt16(21, true);
CALIBRATION_DATA.magGain.Y = data.getInt16(23, true);
@ -1513,8 +1514,8 @@ var mspHelper = (function (gui) {
break;
case MSPCodes.MSP2_INAV_SET_SAFEHOME:
console.log('Safehome points saved');
break;
break;
default:
console.log('Unknown code detected: ' + dataHandler.code);
} else {
@ -2125,7 +2126,7 @@ var mspHelper = (function (gui) {
buffer.push(SENSOR_CONFIG.opflow);
break;
case MSPCodes.MSP_WP_MISSION_SAVE:
// buffer.push(0);
console.log(buffer);
@ -2985,51 +2986,50 @@ var mspHelper = (function (gui) {
self.getMissionInfo = function (callback) {
MSP.send_message(MSPCodes.MSP_WP_GETINFO, false, false, callback);
};
self.loadWaypoints = function (callback) {
MISSION_PLANER.reinit();
let waypointId = 1;
MSP.send_message(MSPCodes.MSP_WP_GETINFO, false, false, getFirstWP);
function getFirstWP() {
MSP.send_message(MSPCodes.MSP_WP, [waypointId], false, nextWaypoint)
};
function nextWaypoint() {
let waypointId = 0;
let startTime = new Date().getTime();
MSP.send_message(MSPCodes.MSP_WP_GETINFO, false, false, loadWaypoint);
function loadWaypoint() {
waypointId++;
if (waypointId < MISSION_PLANER.getCountBusyPoints()) {
MSP.send_message(MSPCodes.MSP_WP, [waypointId], false, nextWaypoint);
}
else {
MSP.send_message(MSPCodes.MSP_WP, [waypointId], false, loadWaypoint);
} else {
GUI.log('Receive time: ' + (new Date().getTime() - startTime) + 'ms');
MSP.send_message(MSPCodes.MSP_WP, [waypointId], false, callback);
}
};
};
self.saveWaypoints = function (callback) {
let waypointId = 1;
MSP.send_message(MSPCodes.MSP_SET_WP, MISSION_PLANER.extractBuffer(waypointId), false, nextWaypoint)
function nextWaypoint() {
self.saveWaypoints = function (callback) {
let waypointId = 0;
let startTime = new Date().getTime();
sendWaypoint();
function sendWaypoint() {
waypointId++;
if (waypointId < MISSION_PLANER.get().length) {
MSP.send_message(MSPCodes.MSP_SET_WP, MISSION_PLANER.extractBuffer(waypointId), false, nextWaypoint);
MSP.send_message(MSPCodes.MSP_SET_WP, MISSION_PLANER.extractBuffer(waypointId), false, sendWaypoint);
}
else {
MSP.send_message(MSPCodes.MSP_SET_WP, MISSION_PLANER.extractBuffer(waypointId), false, endMission);
}
};
function endMission() {
GUI.log('Send time: ' + (new Date().getTime() - startTime) + 'ms');
MSP.send_message(MSPCodes.MSP_WP_GETINFO, false, false, callback);
}
};
self.loadSafehomes = function (callback) {
SAFEHOMES.flush();
let safehomeId = 0;
MSP.send_message(MSPCodes.MSP2_INAV_SAFEHOME, [safehomeId], false, nextSafehome);
function nextSafehome() {
safehomeId++;
if (safehomeId < SAFEHOMES.getMaxSafehomeCount()-1) {
@ -3040,11 +3040,11 @@ var mspHelper = (function (gui) {
}
};
};
self.saveSafehomes = function (callback) {
let safehomeId = 0;
MSP.send_message(MSPCodes.MSP2_INAV_SET_SAFEHOME, SAFEHOMES.extractBuffer(safehomeId), false, nextSendSafehome);
function nextSendSafehome() {
safehomeId++;
if (safehomeId < SAFEHOMES.getMaxSafehomeCount()-1) {
@ -3208,9 +3208,9 @@ var mspHelper = (function (gui) {
});
};
self.setSetting = function (name, value) {
self.setSetting = function (name, value, callback) {
this.encodeSetting(name, value).then(function (data) {
return MSP.promise(MSPCodes.MSPV2_SET_SETTING, data);
return MSP.promise(MSPCodes.MSPV2_SET_SETTING, data).then(callback);
});
};

View file

@ -72,7 +72,7 @@ let WaypointCollection = function () {
};
self.isEmpty = function () {
return data == [];
return data.length == 0;
};
self.flush = function () {
@ -149,7 +149,7 @@ let WaypointCollection = function () {
data = tmpData;
};
self.update = function (bMWPfile=false, bReverse=false) {
self.update = function (updateEndFlag = true, bMWPfile=false, bReverse=false) {
let oldWPNumber = 0;
let optionIdx = 0;
let idx = 0;
@ -180,11 +180,15 @@ let WaypointCollection = function () {
optionIdx = 0;
idx++;
}
if (element.getNumber() == ((bMWPfile && bReverse) ? self.get().length : self.get().length-1)) {
element.setEndMission(0xA5);
}
else {
element.setEndMission(0);
/* only update EndMission flag when required and only if single mission loaded on map */
if (updateEndFlag) {
if (element.getNumber() == self.get().length - 1) {
element.setEndMission(0xA5);
}
else if ((element.getNumber() == self.get().length - 2) && element.getEndMission() == 0xA5) {
element.setEndMission(0);
}
}
}
});

View file

@ -13250,48 +13250,48 @@ MAX7456
01010101
01010101
01010101
01010000
00000101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01001010
10100000
00000101
00100000
00001010
10100001
00101010
10100101
01011000
00100101
00000001
01011000
00100100
10101000
01011000
00100100
10000010
00011000
00100100
10000010
00011000
00100100
10101000
01011000
00100100
10000001
01011000
00100100
10000101
01011000
00100101
00010101
01011000
00101010
10101010
10101000
01000000
00000000
00000001
01010101
01010101
01010101

Binary file not shown.

Before

Width:  |  Height:  |  Size: 13 KiB

After

Width:  |  Height:  |  Size: 13 KiB

Before After
Before After

BIN
resources/osd/bold/207.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

View file

@ -13253,48 +13253,48 @@ MAX7456
01010101
01010101
01010101
01010000
00000101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01001010
10100000
00000101
00100000
00001010
10100001
00101010
10100101
01011000
00100101
00000001
01011000
00100100
10101000
01011000
00100100
10000010
00011000
00100100
10000010
00011000
00100100
10101000
01011000
00100100
10000001
01011000
00100100
10000101
01011000
00100101
00010101
01011000
00101010
10101010
10101000
01000000
00000000
00000001
01010101
01010101
01010101

Binary file not shown.

Before

Width:  |  Height:  |  Size: 13 KiB

After

Width:  |  Height:  |  Size: 13 KiB

Before After
Before After

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

View file

@ -13256,48 +13256,48 @@ MAX7456
01010101
01010101
01010101
01010000
00000101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01001010
10100000
00000101
00100000
00001010
10100001
00101010
10100101
01011000
00100101
00000001
01011000
00100100
10101000
01011000
00100100
10000010
00011000
00100100
10000010
00011000
00100100
10101000
01011000
00100100
10000001
01011000
00100100
10000101
01011000
00100101
00010101
01011000
00101010
10101010
10101000
01000000
00000000
00000001
01010101
01010101
01010101

Binary file not shown.

Before

Width:  |  Height:  |  Size: 13 KiB

After

Width:  |  Height:  |  Size: 13 KiB

Before After
Before After

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

View file

@ -13250,48 +13250,48 @@ MAX7456
01010101
01010101
01010101
01010000
00000101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01001010
10100000
00000101
00100000
00001010
10100001
00101010
10100101
01011000
00100101
00000001
01011000
00100100
10101000
01011000
00100100
10000010
00011000
00100100
10000010
00011000
00100100
10101000
01011000
00100100
10000001
01011000
00100100
10000101
01011000
00100101
00010101
01011000
00101010
10101010
10101000
01000000
00000000
00000001
01010101
01010101
01010101

Binary file not shown.

Before

Width:  |  Height:  |  Size: 12 KiB

After

Width:  |  Height:  |  Size: 12 KiB

Before After
Before After

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

View file

@ -124,7 +124,8 @@ SYM_HEADING_E | SYM.HEADING_E | Heading graph East
SYM_HEADING_W | SYM.HEADING_W | Heading graph West | 203 | 0xCB
SYM_HEADING_DIVIDED_LINE | SYM.HEADING_DIVIDED_LINE | Heading graphic | 204 | 0xCC
SYM_HEADING_LINE | SYM.HEADING_LINE | Heading graphic | 205 | 0xCD
SYM_MAX | SYM.MAX | Max icon | 206 | 0xCE
SYM_MAX | SYM.MAX | Max icon | 206 | 0xCE
SYM_PROFILE | SYM.PROFILE | Profile icon | 207 | 0xCF
| | | |
SYM_LOGO_START | | INAV Logo | 257 - 280 | 0x101 - 0x118
SYM_AH_LEFT | SYM.AH_LEFT | AHI Arrow left | 300 | 0x12C

View file

@ -13250,51 +13250,51 @@ MAX7456
01010101
01010101
01010101
01000000
00000101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
00101010
10100000
00000001
00000000
00001010
10101000
00101010
10100000
00000000
00000000
00001010
10101000
00101010
10101010
10101000
00101010
00000010
10101000
00101010
00101000
10101000
00101010
00101000
10101000
00101010
00000010
10101000
00101010
00101010
10101000
00101010
00101010
10101000
00101010
10101010
10101000
00101010
10101010
10101000
01000000
00000000
00000001
01010101
01010101
01010101

Binary file not shown.

Before

Width:  |  Height:  |  Size: 13 KiB

After

Width:  |  Height:  |  Size: 13 KiB

Before After
Before After

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

View file

@ -13247,51 +13247,51 @@ MAX7456
01010101
01010101
01010101
01000000
00000101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
00101010
10100000
00000001
00000000
00001010
10101000
00101010
10100000
00000000
00000000
00001010
10101000
00101010
10101010
10101000
00101010
00000010
10101000
00101010
00101000
10101000
00101010
00101000
10101000
00101010
00000010
10101000
00101010
00101010
10101000
00101010
00101010
10101000
00101010
10101010
10101000
00101010
10101010
10101000
01000000
00000000
00000001
01010101
01010101
01010101

Binary file not shown.

Before

Width:  |  Height:  |  Size: 12 KiB

After

Width:  |  Height:  |  Size: 12 KiB

Before After
Before After

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

View file

@ -13250,51 +13250,51 @@ MAX7456
01010101
01010101
01010101
01010000
00000101
01010101
01001010
10100000
00000101
00100000
00001010
10100001
00101010
10100101
01011000
00100101
00000001
01011000
00100100
10101000
01011000
00100100
10000010
00011000
00100100
10000010
00011000
00100100
10101000
01011000
00100100
10000001
01011000
00100100
10000101
01011000
00100101
00010101
01011000
00100101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01011000
00101010
10101010
10101000
01000000
00000000
00000001
01010101
01010101
01010101

Binary file not shown.

Before

Width:  |  Height:  |  Size: 12 KiB

After

Width:  |  Height:  |  Size: 12 KiB

Before After
Before After

BIN
resources/osd/large/207.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

View file

@ -13253,48 +13253,48 @@ MAX7456
01010101
01010101
01010101
01010000
00000101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01001010
10100000
00000101
00100000
00001010
10100001
00101010
10100101
01011000
00100101
00000001
01011000
00100100
10101000
01011000
00100100
10000010
00011000
00100100
10000010
00011000
00100100
10101000
01011000
00100100
10000001
01011000
00100100
10000101
01011000
00100101
00010101
01011000
00101010
10101010
10101000
01000000
00000000
00000001
01010101
01010101
01010101

Binary file not shown.

Before

Width:  |  Height:  |  Size: 12 KiB

After

Width:  |  Height:  |  Size: 12 KiB

Before After
Before After

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

View file

@ -61,6 +61,10 @@
background-image: url(../images/icons/cf_icon_MP_removeAll_grey.svg);
}
.tab-mission-control .ic_openMultimission {
background-image: url(../images/icons/cf_icon_multimission_white.svg);
}
.tab-mission-control .ic_save {
background-image: url(../images/icons/cf_icon_MP_save_grey.svg);
}
@ -93,6 +97,10 @@
background-image: url(../images/icons/cf_icon_MP_center_grey.svg);
}
.tab-mission-control .ic_setup {
background-image: url(../images/icons/cf_icon_setup_white.svg);
}
.tab-mission-control .btnicon {
background-repeat: no-repeat;
background-position: center;
@ -277,21 +285,31 @@
.ol-touch .mission-control-settings {
top: 80px;
}
.mission-control-safehome {
top: 115px;
left: .5em;
}
.ol-touch .mission-control-safehome {
top: 120px;
}
.mission-control-elevation {
.mission-control-multimission {
top: 90px;
left: .5em;
}
.ol-touch .mission-control-elevation {
.ol-touch .mission-control-multimission {
top: 100px;
}
.mission-control-elevation {
top: 115px;
left: .5em;
}
.ol-touch .mission-control-elevation {
top: 120px;
}
.mission-control-safehome {
top: 140px;
left: .5em;
}
.ol-touch .mission-control-safehome {
top: 140px;
}
.mission-control-template {
top: 140px;
left: .5em;

View file

@ -86,7 +86,6 @@
<option value="19" i18n="adjustmentsFunction19"></option>
<option value="20" i18n="adjustmentsFunction20"></option>
<option value="21" i18n="adjustmentsFunction21"></option>
<option value="22" i18n="adjustmentsFunction22"></option>
<option value="23" i18n="adjustmentsFunction23"></option>
<option value="24" i18n="adjustmentsFunction24"></option>
<option value="25" i18n="adjustmentsFunction25"></option>

View file

@ -215,13 +215,23 @@
<select id="user-control-mode" data-setting="nav_user_control_mode"></select>
<label for="user-control-mode"><span data-i18n="userControlMode"></span></label>
</div>
<div class="number">
<div class="number">
<input id="max-speed" data-unit="cms" type="number" data-setting="nav_auto_speed" data-setting-multiplier="1" step="1" min="10" max="2000" />
<label for="max-speed"><span data-i18n="posholdMaxSpeed"></span></label>
</div>
<div class="number">
<input id="default-auto-speed" type="number" data-setting="nav_auto_speed" data-setting-multiplier="1" step="1" min="10" max="2000" />
<label for="default-auto-speed"><span data-i18n="posholdDefaultSpeed"></span></label>
<div class="helpicon cf_tip" data-i18n_title="posholdDefaultSpeedHelp"></div>
</div>
<div class="number">
<input id="max-auto-speed" type="number" data-setting="nav_max_auto_speed" data-setting-multiplier="1" step="1" min="10" max="2000" />
<label for="max-auto-speed"><span data-i18n="posholdMaxSpeed"></span></label>
</div>
<div class="number">
<input id="max-manual-speed" data-unit="cms" type="number" data-setting="nav_manual_speed" data-setting-multiplier="1" step="1" min="10" max="2000" />
<label for="max-manual-speed"><span data-i18n="posholdMaxManualSpeed"></span></label>
<div class="helpicon cf_tip" data-i18n_title="posholdMaxManualSpeedHelp"></div>
</div>
<div class="number">
<input id="max-bank-angle" type="number" data-setting="nav_mc_bank_angle" data-setting-multiplier="1" step="1" min="15" max="45" />

View file

@ -37,6 +37,7 @@
</div>
</div>
</div>
<div id="missionPlanerTotalInfo" class="gui_box grey">
<div class="gui_box_titlebar">
<div class="spacer_box_title i18n-replaced" data-i18n="missionTotalInformationHead">Total information</div>
@ -63,6 +64,7 @@
</div>
</div>
</div>
<div id="missionPlanerSettings" class="gui_box grey" style="display: none">
<div class="gui_box_titlebar">
<div class="spacer_box_title i18n-replaced" data-i18n="missionDefaultSettingsHead">Default settings</div>
@ -87,6 +89,46 @@
</div>
</div>
<div id="missionPlannerMultiMission" class="gui_box grey" style="display: none">
<div class="gui_box_titlebar">
<div class="spacer_box_title i18n-replaced" data-i18n="missionMultiMissionHead">Multi Missions</div>
<div class="btnMenu btnMenuIcon save_btn">
<div id="showHideMultimissionButton">
<a class="ic_hide" href="#" title="Hide"></a>
</div>
<a id="cancelMultimission" class="ic_cancel" href="#" title="Cancel"></a>
</div>
</div>
<div class="spacer" id="multimissionContent">
<div class="btn btnTable btnTableIcon save_btn">
<div>
<span>Missions Info:</span>
<span id="multimissionInfo">None</span>
</div>
<div style="margin-top: 5px">
<span>Active Mission:</span>
<span id="activeNissionIndex">1</span>
<a class="ic_save disabled" id="setActiveMissionButton" href="#" title="Set Active"></a>
</div>
<hr>
<div style="display: inline-block">
<label for="multimissionOptionList">Mission No.</label>
<select name="Number" id="multimissionOptionList" style="width: 50px">
<option value="0">ALL</option>
</select>
<div style="float: right">
<span>Update All</span>
<a class="ic_save disabled" id="updateMultimissionButton" href="#" title="Update All"></a>
</div>
<div style="margin-bottom: 5px; margin-top: 5px">
<label for="addMultimissionButton">Add New Mission</label>
<a class="ic_add disabled" id="addMultimissionButton" href="#" title="Add"></a>
</div>
</div>
</div>
</div>
</div>
<div id="missionPlanerHome" class="gui_box grey" style="display: none">
<div class="gui_box_titlebar">
<div class="spacer_box_title i18n-replaced" data-i18n="missionHomeHead">Take Off home</div>
@ -110,13 +152,13 @@
</thead>
<tbody id="homeTableBody">
<tr>
<td><div id="viewHomePoint" class="btnTable btnTableIcon">
<a class="ic_center" data-role="home-center" href="#" title="move to center view"></a>
</div>
</td>
<td><input type="number" class="home-lon" /></td>
<td><input type="number" class="home-lat" /></td>
<td><span id="elevationValueAtHome">N/A</span></td>
<td><div id="viewHomePoint" class="btnTable btnTableIcon">
<a class="ic_center" data-role="home-center" href="#" title="move to center view"></a>
</div>
</td>
<td><input type="number" class="home-lon" /></td>
<td><input type="number" class="home-lat" /></td>
<td><span id="elevationValueAtHome">N/A</span></td>
</tr>
</tbody>
</table>
@ -180,8 +222,11 @@
<div id="showHideWPeditButton" class="save_btn">
<a class="ic_hide" href="#" title="Hide"></a>
</div>
<div id="removePoint" class="btnMenu-danger">
<a class="ic_removeAll" href="#" title="Remove"></a>
<div id="removePoint" class="btn btnMenu-danger">
<a id="removePointButton" class="ic_removeAll" href="#" title="Remove"></a>
</div>
<div id="editMission" class="save_btn" style="display: none">
<a id="editMissionButton" class="ic_setup" href="#" title="Edit Mission"></a>
</div>
</div>
</div>
@ -238,8 +283,8 @@
<thead>
<tr>
<th style="width: 30px">
<div id="addOptionsPoint" class="btnTable btnTableIcon btnTable-success">
<a class="ic_add" data-role="waypointOptions-add" href="#" style="float: center" title="Add"></a>
<div id="addOptionsPoint" class="btn btnTable btnTableIcon btnTable-success">
<a id="addOptionsPointButton" class="ic_add" data-role="waypointOptions-add" href="#" style="float: center" title="Add"></a>
</div>
</th>
<th style="width: 50px" data-i18n="WaypointOptionId"></th>

File diff suppressed because it is too large Load diff

View file

@ -75,6 +75,11 @@
<select class="update_preview" data-setting="osd_plus_code_short" data-live="true"></select>
<span data-i18n="osd_plus_code_short"></span>
</label>
<div class="helpicon cf_tip" data-i18n_title="osd_esc_rpm_precision_help"></div>
<label>
<select class="update_preview" data-setting="osd_esc_rpm_precision" data-live="true"></select>
<span data-i18n="osd_esc_rpm_precision"></span>
</label>
<label>
<select class="update_preview" data-setting="osd_crosshairs_style" data-live="true"></select>
<span data-i18n="osd_crosshairs_style"></span>

View file

@ -100,6 +100,7 @@ SYM.AH_NM = 0x3F;
SYM.WH_NM = 0x70;
SYM.VTX_POWER = 0x27;
SYM.MAX = 0xCE;
SYM.PROFILE = 0xCF;
SYM.AH_AIRCRAFT0 = 0x1A2;
SYM.AH_AIRCRAFT1 = 0x1A3;
@ -480,7 +481,7 @@ OSD.DjiElements = {
"LONGITUDE",
"LATITUDE",
"DIRECTION_TO_HOME",
"DISTANCE_TO_HOME"
"DISTANCE_TO_HOME"
],
emptyGroups: [
"MapsAndRadars",
@ -507,7 +508,7 @@ OSD.DjiElements = {
"3D_SPEED",
"EFFICIENCY_MAH",
"TRIP_DIST"
]
]
};
OSD.constants = {
@ -784,7 +785,7 @@ OSD.constants = {
// Metric
return FONT.symbol(SYM.TRIP_DIST) + FONT.symbol(SYM.DIST_KM) + FONT.embed_dot('1.57');
}
} else {
switch (OSD.data.preferences.units) {
case 0: // Imperial
@ -900,7 +901,10 @@ OSD.constants = {
name: 'ESC_RPM',
id: 106,
min_version: '2.3.0',
preview: FONT.symbol(SYM.RPM) + '983',
preview: function(){
let rpmPreview = '112974'.substr((6 - parseInt(Settings.getInputValue('osd_esc_rpm_precision'))));
return FONT.symbol(SYM.RPM) + rpmPreview;
}
},
{
name: 'GLIDESLOPE',
@ -908,6 +912,12 @@ OSD.constants = {
min_version: '3.0.0',
preview: FONT.symbol(SYM.GLIDESLOPE) + FONT.embed_dot('12.3'),
},
{
name: 'MISSION INFO',
id: 129,
min_version: '4.0.0',
preview: 'M1/6>27WP'
},
{
name: 'VERSION',
id: 119,
@ -1712,6 +1722,13 @@ OSD.constants = {
{
name: 'osdGroupPIDs',
items: [
{
name: 'ACTIVE_PROFILE',
id: 128,
preview: function(osd_data) {
return FONT.symbol(SYM.PROFILE) + '1';
}
},
{
name: 'ROLL_PIDS',
id: 16,
@ -2455,8 +2472,8 @@ OSD.GUI.updateFields = function() {
}
$('#djiUnsupportedElements').prepend(
$('<input type="checkbox" class="toggle" />')
.attr('checked', OSD.data.isDjiHdFpv)
$('<input type="checkbox" class="toggle" />')
.attr('checked', OSD.data.isDjiHdFpv)
.on('change', function () {
OSD.GUI.updateDjiView(this.checked);
OSD.GUI.updatePreviews();
@ -2486,7 +2503,7 @@ OSD.GUI.removeBottomLines = function(){
OSD.GUI.updateDjiMessageElements = function(on) {
$('.display-field').each(function(index, element) {
var name = $(element).find('input').attr('name');
var name = $(element).find('input').attr('name');
if (OSD.DjiElements.craftNameElements.includes(name)) {
if (on) {
$(element)
@ -2494,7 +2511,7 @@ OSD.GUI.updateDjiMessageElements = function(on) {
.show();
} else if ($('#djiUnsupportedElements').find('input').is(':checked')) {
$(element).hide();
}
}
}
if (!on) {
@ -2507,7 +2524,7 @@ OSD.GUI.updateDjiMessageElements = function(on) {
OSD.GUI.updateDjiView = function(on) {
if (on) {
$(OSD.DjiElements.emptyGroups).each(function(index, groupName) {
$('#osdGroup' + groupName).hide();
$('#osdGroup' + groupName).hide();
});
var displayFields = $('.display-field');
@ -2520,10 +2537,10 @@ OSD.GUI.updateDjiView = function(on) {
var settings = $('.settings-container').find('.settings').children();
settings.each(function(index, element) {
var name = $(element).attr('class');
var name = $(element).attr('class');
if (!OSD.DjiElements.supportedSettings.includes(name)) {
$(element).hide();
}
}
});
var alarms = $('.alarms-container').find('.settings').children();
@ -2535,7 +2552,7 @@ OSD.GUI.updateDjiView = function(on) {
});
} else {
$(OSD.DjiElements.emptyGroups).each(function(index, groupName) {
$('#osdGroup' + groupName).show();
$('#osdGroup' + groupName).show();
});
$('.display-field')

View file

@ -270,13 +270,6 @@
<div class="helpicon cf_tip" data-i18n_title="gyro_main_lpf_hz_help"></div>
</td>
</tr>
<tr>
<th>Matrix Gyro Filter</th>
<td>
<select data-setting="dynamic_gyro_notch_enabled" />
<div class="helpicon cf_tip" data-i18n_title="dynamic_gyro_notch_enabled_help"></div>
</td>
</tr>
<tr>
<th>Matrix Filter Min Frequency</th>
<td>
@ -291,12 +284,6 @@
<div class="helpicon cf_tip" title="The higher value, the higher selectivity of the Matrix Filter. Values between 150 and 300 are recommended"></div>
</td>
</tr>
<tr>
<th>Unicorn Filter</th>
<td>
<select data-setting="setpoint_kalman_enabled" />
</td>
</tr>
<tr>
<th>Unicorn Filter Q Factor</th>
<td>
@ -319,13 +306,6 @@
<div class="helpicon cf_tip" data-i18n_title="dtermLpfCutoffFrequencyHelp"></div>
</td>
</tr>
<tr>
<th data-i18n="dterm_lpf2_hz"></th>
<td>
<input data-setting="dterm_lpf2_hz" type="number" class="rate-tpa_input" />
<div class="helpicon cf_tip" data-i18n_title="dterm_lpf2_hz_help"></div>
</td>
</tr>
</tbody>
</table>
</div>
@ -358,13 +338,6 @@
<div class="cf_column">
<table class="settings-table settings-table--filtering">
<tbody>
<tr>
<th data-i18n="itermRelax"></th>
<td>
<select data-setting="mc_iterm_relax" />
<div class="helpicon cf_tip" data-i18n_title="itermRelaxHelp"></div>
</td>
</tr>
<tr>
<th data-i18n="itermRelaxCutoff"></th>
<td>
@ -407,10 +380,17 @@
<table class="settings-table settings-table--filtering">
<tbody>
<tr>
<th data-i18n="d_boost_factor"></th>
<th data-i18n="d_boost_min"></th>
<td>
<input data-setting="d_boost_factor" class="rate-tpa_input" />
<div class="helpicon cf_tip" data-i18n_title="d_boost_factor_help"></div>
<input data-setting="d_boost_min" class="rate-tpa_input" />
<div class="helpicon cf_tip" data-i18n_title="d_boost_min_help"></div>
</td>
</tr>
<tr>
<th data-i18n="d_boost_max"></th>
<td>
<input data-setting="d_boost_max" class="rate-tpa_input" />
<div class="helpicon cf_tip" data-i18n_title="d_boost_max_help"></div>
</td>
</tr>
<tr>

View file

@ -54,6 +54,7 @@ TABS.programming.initialize = function (callback, scrollPosition) {
$('#save-button').click(function () {
saveChainer.execute();
GUI.log(chrome.i18n.getMessage('programmingEepromSaved'));
});
helper.mspBalancedInterval.add('logic_conditions_pull', 100, 1, function () {