mirror of
https://github.com/iNavFlight/inav-configurator.git
synced 2025-07-23 16:25:19 +03:00
Drop any leftovers of Transponder feature
This commit is contained in:
parent
005efec007
commit
0be78dd37e
11 changed files with 0 additions and 301 deletions
|
@ -109,9 +109,6 @@
|
||||||
"tabFailsafe": {
|
"tabFailsafe": {
|
||||||
"message": "Failsafe"
|
"message": "Failsafe"
|
||||||
},
|
},
|
||||||
"tabTransponder": {
|
|
||||||
"message": "Race Transponder"
|
|
||||||
},
|
|
||||||
"tabGPS": {
|
"tabGPS": {
|
||||||
"message": "GPS"
|
"message": "GPS"
|
||||||
},
|
},
|
||||||
|
@ -678,12 +675,6 @@
|
||||||
"featureCHANNEL_FORWARDING": {
|
"featureCHANNEL_FORWARDING": {
|
||||||
"message": "Forward aux channels to servo outputs"
|
"message": "Forward aux channels to servo outputs"
|
||||||
},
|
},
|
||||||
"featureTRANSPONDER": {
|
|
||||||
"message": "Race Transponder"
|
|
||||||
},
|
|
||||||
"featureTRANSPONDERTip": {
|
|
||||||
"message": "Configure via the Race Transponder tab after enabling."
|
|
||||||
},
|
|
||||||
"featureSOFTSPI": {
|
"featureSOFTSPI": {
|
||||||
"message": "CPU based SPI"
|
"message": "CPU based SPI"
|
||||||
},
|
},
|
||||||
|
@ -1548,33 +1539,6 @@
|
||||||
"programmingEepromSaved": {
|
"programmingEepromSaved": {
|
||||||
"message": "EEPROM <span style=\"color: #37a8db\">saved</span>: Programming"
|
"message": "EEPROM <span style=\"color: #37a8db\">saved</span>: Programming"
|
||||||
},
|
},
|
||||||
"transponderNotSupported": {
|
|
||||||
"message": "Your flight controller's firmware does not support transponder functionality."
|
|
||||||
},
|
|
||||||
"transponderHelp": {
|
|
||||||
"message": "Configure your transponder code here. Note: Only valid codes will be recognised by race timing systems. Valid transponder codes can be obtained from <a href=\"http://seriouslypro.com/transponder-codes\" target=\"_blank\">Seriously Pro</a>."
|
|
||||||
},
|
|
||||||
"transponderInformation": {
|
|
||||||
"message": "Transponders systems allow race organizers to time your laps. The transponder is fitted to your aircraft and when your aircraft passes the timing gate the track-side receiver registers your code and records your laptime. When fitting an IR based transponder your should ensure that it points outward from your aircraft towards the track-side receivers and that the light beam is not obstructed by your airframe, battery-straps, cables, propellers, etc."
|
|
||||||
},
|
|
||||||
"transponderConfiguration": {
|
|
||||||
"message": "Configuration"
|
|
||||||
},
|
|
||||||
"transponderData": {
|
|
||||||
"message": "Data"
|
|
||||||
},
|
|
||||||
"transponderDataHelp": {
|
|
||||||
"message": "Hexadecimal digits only, 0-9, A-F"
|
|
||||||
},
|
|
||||||
"transponderButtonSave": {
|
|
||||||
"message": "Save"
|
|
||||||
},
|
|
||||||
"transponderDataInvalid": {
|
|
||||||
"message": "Transponder data is <span style=\"color: red\">invalid</span>"
|
|
||||||
},
|
|
||||||
"transponderEepromSaved": {
|
|
||||||
"message": "EEPROM <span style=\"color: #37a8db\">saved</span>: Transponder"
|
|
||||||
},
|
|
||||||
"servosChangeDirection": {
|
"servosChangeDirection": {
|
||||||
"message": "Change Direction in TX To Match"
|
"message": "Change Direction in TX To Match"
|
||||||
},
|
},
|
||||||
|
|
6
js/fc.js
6
js/fc.js
|
@ -38,7 +38,6 @@ var CONFIG,
|
||||||
DATAFLASH,
|
DATAFLASH,
|
||||||
SDCARD,
|
SDCARD,
|
||||||
BLACKBOX,
|
BLACKBOX,
|
||||||
TRANSPONDER,
|
|
||||||
RC_deadband,
|
RC_deadband,
|
||||||
SENSOR_ALIGNMENT,
|
SENSOR_ALIGNMENT,
|
||||||
RX_CONFIG,
|
RX_CONFIG,
|
||||||
|
@ -476,11 +475,6 @@ var FC = {
|
||||||
blackboxRateDenom: 1
|
blackboxRateDenom: 1
|
||||||
};
|
};
|
||||||
|
|
||||||
TRANSPONDER = {
|
|
||||||
supported: false,
|
|
||||||
data: []
|
|
||||||
};
|
|
||||||
|
|
||||||
RC_deadband = {
|
RC_deadband = {
|
||||||
deadband: 0,
|
deadband: 0,
|
||||||
yaw_deadband: 0,
|
yaw_deadband: 0,
|
||||||
|
|
|
@ -18,7 +18,6 @@ var GUI_control = function () {
|
||||||
];
|
];
|
||||||
this.defaultAllowedTabsWhenConnected = [
|
this.defaultAllowedTabsWhenConnected = [
|
||||||
'failsafe',
|
'failsafe',
|
||||||
'transponder',
|
|
||||||
'adjustments',
|
'adjustments',
|
||||||
'auxiliary',
|
'auxiliary',
|
||||||
'cli',
|
'cli',
|
||||||
|
|
|
@ -64,8 +64,6 @@ var MSPCodes = {
|
||||||
MSP_SDCARD_SUMMARY: 79,
|
MSP_SDCARD_SUMMARY: 79,
|
||||||
MSP_BLACKBOX_CONFIG: 80,
|
MSP_BLACKBOX_CONFIG: 80,
|
||||||
MSP_SET_BLACKBOX_CONFIG: 81,
|
MSP_SET_BLACKBOX_CONFIG: 81,
|
||||||
MSP_TRANSPONDER_CONFIG: 82,
|
|
||||||
MSP_SET_TRANSPONDER_CONFIG: 83,
|
|
||||||
MSP_OSD_CONFIG: 84,
|
MSP_OSD_CONFIG: 84,
|
||||||
MSP_SET_OSD_CONFIG: 85,
|
MSP_SET_OSD_CONFIG: 85,
|
||||||
MSP_OSD_CHAR_READ: 86,
|
MSP_OSD_CHAR_READ: 86,
|
||||||
|
|
|
@ -1102,17 +1102,6 @@ var mspHelper = (function (gui) {
|
||||||
case MSPCodes.MSP_SET_BLACKBOX_CONFIG:
|
case MSPCodes.MSP_SET_BLACKBOX_CONFIG:
|
||||||
console.log("Blackbox config saved");
|
console.log("Blackbox config saved");
|
||||||
break;
|
break;
|
||||||
case MSPCodes.MSP_TRANSPONDER_CONFIG:
|
|
||||||
TRANSPONDER.supported = (data.getUint8(offset++) & 1) != 0;
|
|
||||||
TRANSPONDER.data = [];
|
|
||||||
var bytesRemaining = data.byteLength - offset;
|
|
||||||
for (i = 0; i < bytesRemaining; i++) {
|
|
||||||
TRANSPONDER.data.push(data.getUint8(offset++));
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case MSPCodes.MSP_SET_TRANSPONDER_CONFIG:
|
|
||||||
console.log("Transponder config saved");
|
|
||||||
break;
|
|
||||||
case MSPCodes.MSP_VTX_CONFIG:
|
case MSPCodes.MSP_VTX_CONFIG:
|
||||||
VTX_CONFIG.device_type = data.getUint8(offset++);
|
VTX_CONFIG.device_type = data.getUint8(offset++);
|
||||||
if (VTX_CONFIG.device_type != VTX.DEV_UNKNOWN) {
|
if (VTX_CONFIG.device_type != VTX.DEV_UNKNOWN) {
|
||||||
|
@ -1744,12 +1733,6 @@ var mspHelper = (function (gui) {
|
||||||
buffer.push(FAILSAFE_CONFIG.failsafe_min_distance_procedure);
|
buffer.push(FAILSAFE_CONFIG.failsafe_min_distance_procedure);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case MSPCodes.MSP_SET_TRANSPONDER_CONFIG:
|
|
||||||
for (i = 0; i < TRANSPONDER.data.length; i++) {
|
|
||||||
buffer.push(TRANSPONDER.data[i]);
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
|
|
||||||
case MSPCodes.MSP_SET_CHANNEL_FORWARDING:
|
case MSPCodes.MSP_SET_CHANNEL_FORWARDING:
|
||||||
for (i = 0; i < SERVO_CONFIG.length; i++) {
|
for (i = 0; i < SERVO_CONFIG.length; i++) {
|
||||||
var out = SERVO_CONFIG[i].indexOfChannelToForward;
|
var out = SERVO_CONFIG[i].indexOfChannelToForward;
|
||||||
|
|
12
main.css
12
main.css
|
@ -902,18 +902,6 @@ li.active .ic_flasher {
|
||||||
background-image: url("../images/icons/cf_icon_flasher_white.svg");
|
background-image: url("../images/icons/cf_icon_flasher_white.svg");
|
||||||
}
|
}
|
||||||
|
|
||||||
.ic_transponder {
|
|
||||||
background-image: url("../images/icons/cf_icon_transponder_grey.svg");
|
|
||||||
}
|
|
||||||
|
|
||||||
.ic_transponder:hover {
|
|
||||||
background-image: url("../images/icons/cf_icon_transponder_white.svg");
|
|
||||||
}
|
|
||||||
|
|
||||||
li.active .ic_transponder {
|
|
||||||
background-image: url("../images/icons/cf_icon_transponder_white.svg");
|
|
||||||
}
|
|
||||||
|
|
||||||
.ic_calibration {
|
.ic_calibration {
|
||||||
background-image: url(../images/icons/cf_icon_cal_grey.svg);
|
background-image: url(../images/icons/cf_icon_cal_grey.svg);
|
||||||
}
|
}
|
||||||
|
|
|
@ -231,7 +231,6 @@
|
||||||
<li class="tab_osd">
|
<li class="tab_osd">
|
||||||
<a href="#" data-i18n="tabOSD" class="tabicon ic_osd" title="OSD"></a>
|
<a href="#" data-i18n="tabOSD" class="tabicon ic_osd" title="OSD"></a>
|
||||||
</li>
|
</li>
|
||||||
<!--<li class="tab_transponder"><a href="#" data-i18n="tabTransponder" class="tabicon ic_transponder" title="Transponder"></a></li>-->
|
|
||||||
<li class="tab_led_strip">
|
<li class="tab_led_strip">
|
||||||
<a href="#" data-i18n="tabLedStrip" class="tabicon ic_led" title="LED Strip"></a>
|
<a href="#" data-i18n="tabLedStrip" class="tabicon ic_led" title="LED Strip"></a>
|
||||||
</li>
|
</li>
|
||||||
|
|
3
main.js
3
main.js
|
@ -218,9 +218,6 @@ $(document).ready(function () {
|
||||||
case 'failsafe':
|
case 'failsafe':
|
||||||
TABS.failsafe.initialize(content_ready);
|
TABS.failsafe.initialize(content_ready);
|
||||||
break;
|
break;
|
||||||
case 'transponder':
|
|
||||||
TABS.transponder.initialize(content_ready);
|
|
||||||
break;
|
|
||||||
case 'setup':
|
case 'setup':
|
||||||
TABS.setup.initialize(content_ready);
|
TABS.setup.initialize(content_ready);
|
||||||
break;
|
break;
|
||||||
|
|
|
@ -1,74 +0,0 @@
|
||||||
.tab-transponder .spacer_box {
|
|
||||||
padding-bottom: 10px;
|
|
||||||
float: left;
|
|
||||||
width: calc(100% - 20px);
|
|
||||||
}
|
|
||||||
|
|
||||||
.tab-transponder .text input {
|
|
||||||
width: 100px;
|
|
||||||
padding-left: 3px;
|
|
||||||
height: 20px;
|
|
||||||
line-height: 20px;
|
|
||||||
text-align: left;
|
|
||||||
border: 1px solid silver;
|
|
||||||
border-radius: 3px;
|
|
||||||
font-size: 12px;
|
|
||||||
font-weight: normal;
|
|
||||||
}
|
|
||||||
|
|
||||||
.tab-transponder .text .disabled {
|
|
||||||
width: 43px;
|
|
||||||
padding: 0 5px;
|
|
||||||
background-color: #ececec;
|
|
||||||
}
|
|
||||||
|
|
||||||
.tab-transponder .text span {
|
|
||||||
margin-left: 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
.tab-transponder input {
|
|
||||||
float: left;
|
|
||||||
}
|
|
||||||
|
|
||||||
.tab-transponder span {
|
|
||||||
margin: 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
.tab-transponder .text
|
|
||||||
{
|
|
||||||
margin-bottom: 5px;
|
|
||||||
clear: left;
|
|
||||||
padding-bottom: 5px;
|
|
||||||
border-bottom: 1px solid #ddd;
|
|
||||||
width: 100%;
|
|
||||||
float: left;
|
|
||||||
}
|
|
||||||
|
|
||||||
.tab-transponder .text:last-child {
|
|
||||||
border-bottom: none;
|
|
||||||
padding-bottom: 0;
|
|
||||||
margin-bottom: 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
.tab-transponder .textspacer {
|
|
||||||
float: left;
|
|
||||||
width: 115px;
|
|
||||||
height: 21px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.tab-transponder .gui_box span {
|
|
||||||
font-style: normal;
|
|
||||||
font-family: 'open_sansregular', Arial,serif;
|
|
||||||
line-height: 19px;
|
|
||||||
color: #4F4F4F;
|
|
||||||
font-size: 11px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.require-transponder-supported,
|
|
||||||
.tab-transponder.transponder-supported .require-transponder-unsupported {
|
|
||||||
display: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
.tab-transponder.transponder-supported .require-transponder-supported {
|
|
||||||
display: block;
|
|
||||||
}
|
|
|
@ -1,48 +0,0 @@
|
||||||
<div class="tab-transponder toolbar_fixed_bottom">
|
|
||||||
<div class="content_wrapper">
|
|
||||||
<div class="tab_title" i18n="tabTransponder">Transponder</div>
|
|
||||||
<div class="require-transponder-unsupported note">
|
|
||||||
<div class="note_spacer">
|
|
||||||
<p i18n="transponderNotSupported"></p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="require-transponder-supported">
|
|
||||||
|
|
||||||
<div class="note" style="margin-bottom: 20px;">
|
|
||||||
<div class="note_spacer">
|
|
||||||
<p i18n="transponderHelp"></p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="gui_box grey">
|
|
||||||
<div class="gui_box_titlebar">
|
|
||||||
<div class="spacer_box_title" i18n="transponderConfiguration"></div>
|
|
||||||
</div>
|
|
||||||
<div class="spacer_box">
|
|
||||||
<div class="text transponderData">
|
|
||||||
<div class="textspacer" >
|
|
||||||
<input type="text" name="data" spellcheck="false"/>
|
|
||||||
</div>
|
|
||||||
<label for="failsafe_feature_new"><span i18n="transponderData"></span>
|
|
||||||
</label>
|
|
||||||
<div class="helpicon cf_tip" i18n_title="transponderDataHelp"></div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="clear-both"></div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="note">
|
|
||||||
<div class="note_spacer">
|
|
||||||
<p i18n="transponderInformation"></p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
</div>
|
|
||||||
<div class="content_toolbar require-transponder-supported">
|
|
||||||
<div class="btn save_btn">
|
|
||||||
<a class="save" href="#" i18n="transponderButtonSave"></a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
|
@ -1,101 +0,0 @@
|
||||||
'use strict';
|
|
||||||
|
|
||||||
TABS.transponder = {
|
|
||||||
available: false
|
|
||||||
};
|
|
||||||
|
|
||||||
TABS.transponder.initialize = function (callback, scrollPosition) {
|
|
||||||
var self = this;
|
|
||||||
|
|
||||||
if (GUI.active_tab != 'transponder') {
|
|
||||||
GUI.active_tab = 'transponder';
|
|
||||||
googleAnalytics.sendAppView('Transponder');
|
|
||||||
}
|
|
||||||
|
|
||||||
// transponder supported added in MSP API Version 1.16.0
|
|
||||||
TABS.transponder.available = semver.gte(CONFIG.apiVersion, "1.16.0");
|
|
||||||
|
|
||||||
if (!TABS.transponder.available) {
|
|
||||||
load_html();
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
function load_html() {
|
|
||||||
GUI.load("./tabs/transponder.html", process_html);
|
|
||||||
}
|
|
||||||
|
|
||||||
// get the transponder data and a flag to see if transponder support is enabled on the FC
|
|
||||||
MSP.send_message(MSPCodes.MSP_TRANSPONDER_CONFIG, false, false, load_html);
|
|
||||||
|
|
||||||
// Convert a hex string to a byte array
|
|
||||||
function hexToBytes(hex) {
|
|
||||||
for (var bytes = [], c = 0; c < hex.length; c += 2)
|
|
||||||
bytes.push(~parseInt(hex.substr(c, 2), 16));
|
|
||||||
return bytes;
|
|
||||||
}
|
|
||||||
|
|
||||||
function pad(n, width) {
|
|
||||||
n = n + '';
|
|
||||||
return n.length >= width ? n : new Array(width - n.length + 1).join('0') + n;
|
|
||||||
}
|
|
||||||
|
|
||||||
// Convert a byte array to a hex string
|
|
||||||
function bytesToHex(bytes) {
|
|
||||||
for (var hex = [], i = 0; i < bytes.length; i++) {
|
|
||||||
hex.push(pad(((~bytes[i]) & 0xFF).toString(16),2));
|
|
||||||
}
|
|
||||||
return hex.join("").toUpperCase();
|
|
||||||
}
|
|
||||||
function process_html() {
|
|
||||||
// translate to user-selected language
|
|
||||||
localize();
|
|
||||||
|
|
||||||
$(".tab-transponder")
|
|
||||||
.toggleClass("transponder-supported", TABS.transponder.available && TRANSPONDER.supported);
|
|
||||||
|
|
||||||
if (TABS.transponder.available) {
|
|
||||||
|
|
||||||
var data = bytesToHex(TRANSPONDER.data);
|
|
||||||
|
|
||||||
$('input[name="data"]').val(data);
|
|
||||||
$('input[name="data"]').prop('maxLength', data.length);
|
|
||||||
|
|
||||||
$('a.save').click(function () {
|
|
||||||
|
|
||||||
|
|
||||||
// gather data that doesn't have automatic change event bound
|
|
||||||
|
|
||||||
var dataString = $('input[name="data"]').val();
|
|
||||||
var expectedLength = TRANSPONDER.data.length;
|
|
||||||
var hexRegExp = new RegExp('[0-9a-fA-F]{' + (expectedLength * 2) + '}', 'gi');
|
|
||||||
if (!dataString.match(hexRegExp)) {
|
|
||||||
GUI.log(chrome.i18n.getMessage('transponderDataInvalid'));
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
TRANSPONDER.data = hexToBytes(dataString);
|
|
||||||
|
|
||||||
|
|
||||||
//
|
|
||||||
// send data to FC
|
|
||||||
//
|
|
||||||
function save_transponder_config() {
|
|
||||||
MSP.send_message(MSPCodes.MSP_SET_TRANSPONDER_CONFIG, mspHelper.crunch(MSPCodes.MSP_SET_TRANSPONDER_CONFIG), false, save_to_eeprom);
|
|
||||||
}
|
|
||||||
function save_to_eeprom() {
|
|
||||||
MSP.send_message(MSPCodes.MSP_EEPROM_WRITE, false, false, function () {
|
|
||||||
GUI.log(chrome.i18n.getMessage('transponderEepromSaved'));
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
save_transponder_config();
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
GUI.content_ready(callback);
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
TABS.transponder.cleanup = function (callback) {
|
|
||||||
if (callback) callback();
|
|
||||||
};
|
|
Loading…
Add table
Add a link
Reference in a new issue