new PID scaling (same as in the CLI)
parent
dc786c42c5
commit
12bce912c9
|
@ -378,20 +378,20 @@ var MSP = {
|
||||||
case 7:
|
case 7:
|
||||||
case 8:
|
case 8:
|
||||||
case 9:
|
case 9:
|
||||||
PIDs[i][0] = data.getUint8(needle) / 10;
|
PIDs[i][0] = data.getUint8(needle);
|
||||||
PIDs[i][1] = data.getUint8(needle + 1) / 1000;
|
PIDs[i][1] = data.getUint8(needle + 1);
|
||||||
PIDs[i][2] = data.getUint8(needle + 2);
|
PIDs[i][2] = data.getUint8(needle + 2);
|
||||||
break;
|
break;
|
||||||
case 4:
|
case 4:
|
||||||
PIDs[i][0] = data.getUint8(needle) / 100;
|
PIDs[i][0] = data.getUint8(needle);
|
||||||
PIDs[i][1] = data.getUint8(needle + 1) / 100;
|
PIDs[i][1] = data.getUint8(needle + 1);
|
||||||
PIDs[i][2] = data.getUint8(needle + 2) / 1000;
|
PIDs[i][2] = data.getUint8(needle + 2);
|
||||||
break;
|
break;
|
||||||
case 5:
|
case 5:
|
||||||
case 6:
|
case 6:
|
||||||
PIDs[i][0] = data.getUint8(needle) / 10;
|
PIDs[i][0] = data.getUint8(needle);
|
||||||
PIDs[i][1] = data.getUint8(needle + 1) / 100;
|
PIDs[i][1] = data.getUint8(needle + 1);
|
||||||
PIDs[i][2] = data.getUint8(needle + 2) / 1000;
|
PIDs[i][2] = data.getUint8(needle + 2);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1157,20 +1157,20 @@ MSP.crunch = function (code) {
|
||||||
case 7:
|
case 7:
|
||||||
case 8:
|
case 8:
|
||||||
case 9:
|
case 9:
|
||||||
buffer.push(Math.round(PIDs[i][0] * 10));
|
buffer.push(parseInt(PIDs[i][0]));
|
||||||
buffer.push(Math.round(PIDs[i][1] * 1000));
|
buffer.push(parseInt(PIDs[i][1]));
|
||||||
buffer.push(parseInt(PIDs[i][2]));
|
buffer.push(parseInt(PIDs[i][2]));
|
||||||
break;
|
break;
|
||||||
case 4:
|
case 4:
|
||||||
buffer.push(Math.round(PIDs[i][0] * 100));
|
buffer.push(parseInt(PIDs[i][0]));
|
||||||
buffer.push(Math.round(PIDs[i][1] * 100));
|
buffer.push(parseInt(PIDs[i][1]));
|
||||||
buffer.push(parseInt(PIDs[i][2]));
|
buffer.push(parseInt(PIDs[i][2]));
|
||||||
break;
|
break;
|
||||||
case 5:
|
case 5:
|
||||||
case 6:
|
case 6:
|
||||||
buffer.push(Math.round(PIDs[i][0] * 10));
|
buffer.push(parseInt(PIDs[i][0]));
|
||||||
buffer.push(Math.round(PIDs[i][1] * 100));
|
buffer.push(parseInt(PIDs[i][1]));
|
||||||
buffer.push(Math.round(PIDs[i][2] * 1000));
|
buffer.push(parseInt(PIDs[i][2]));
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1706,4 +1706,3 @@ MSP.SDCARD_STATE_CARD_INIT = 2;
|
||||||
MSP.SDCARD_STATE_FS_INIT = 3;
|
MSP.SDCARD_STATE_FS_INIT = 3;
|
||||||
MSP.SDCARD_STATE_READY = 4;
|
MSP.SDCARD_STATE_READY = 4;
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
<div class="content_wrapper">
|
<div class="content_wrapper">
|
||||||
<div class="tab_title" i18n="tabPidTuning"></div>
|
<div class="tab_title" i18n="tabPidTuning"></div>
|
||||||
<div class="cf_doc_version_bt">
|
<div class="cf_doc_version_bt">
|
||||||
<a id="button-documentation" href="https://github.com/betaflight/betaflight/releases" target="_blank"></a>
|
<a id="button-documentation" href="https://github.com/cleanflight/cleanflight/releases" target="_blank"></a>
|
||||||
</div>
|
</div>
|
||||||
<div class="cf_column half">
|
<div class="cf_column half">
|
||||||
<div class="controller">
|
<div class="controller">
|
||||||
|
@ -44,22 +44,22 @@
|
||||||
<tr class="ROLL">
|
<tr class="ROLL">
|
||||||
<!-- 0 -->
|
<!-- 0 -->
|
||||||
<td></td>
|
<td></td>
|
||||||
<td><input type="number" name="p" step="0.1" min="0" max="25.5" /></td>
|
<td><input type="number" name="p" step="1" min="0" max="255" /></td>
|
||||||
<td><input type="number" name="i" step="0.001" min="0" max="0.255" /></td>
|
<td><input type="number" name="i" step="1" min="0" max="255" /></td>
|
||||||
<td><input type="number" name="d" step="1" min="0" max="255" /></td>
|
<td><input type="number" name="d" step="1" min="0" max="255" /></td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="PITCH">
|
<tr class="PITCH">
|
||||||
<!-- 1 -->
|
<!-- 1 -->
|
||||||
<td></td>
|
<td></td>
|
||||||
<td><input type="number" name="p" step="0.1" min="0" max="25.5" /></td>
|
<td><input type="number" name="p" step="1" min="0" max="255" /></td>
|
||||||
<td><input type="number" name="i" step="0.001" min="0" max="0.255" /></td>
|
<td><input type="number" name="i" step="1" min="0" max="255" /></td>
|
||||||
<td><input type="number" name="d" step="1" min="0" max="255" /></td>
|
<td><input type="number" name="d" step="1" min="0" max="255" /></td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="YAW">
|
<tr class="YAW">
|
||||||
<!-- 2 -->
|
<!-- 2 -->
|
||||||
<td></td>
|
<td></td>
|
||||||
<td><input type="number" name="p" step="0.1" min="0" max="25.5" /></td>
|
<td><input type="number" name="p" step="1" min="0" max="255" /></td>
|
||||||
<td><input type="number" name="i" step="0.001" min="0" max="0.255" /></td>
|
<td><input type="number" name="i" step="1" min="0" max="255" /></td>
|
||||||
<td><input type="number" name="d" step="1" min="0" max="255" /></td>
|
<td><input type="number" name="d" step="1" min="0" max="255" /></td>
|
||||||
</tr>
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
|
@ -72,15 +72,15 @@
|
||||||
<tr class="ALT">
|
<tr class="ALT">
|
||||||
<!-- 3 -->
|
<!-- 3 -->
|
||||||
<td></td>
|
<td></td>
|
||||||
<td><input type="number" name="p" step="0.1" min="0" max="25.5" /></td>
|
<td><input type="number" name="p" step="1" min="0" max="255" /></td>
|
||||||
<td><input type="number" name="i" step="0.001" min="0" max="0.255" /></td>
|
<td><input type="number" name="i" step="1" min="0" max="255" /></td>
|
||||||
<td><input type="number" name="d" step="1" min="0" max="255" /></td>
|
<td><input type="number" name="d" step="1" min="0" max="255" /></td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="Vario">
|
<tr class="Vario">
|
||||||
<!-- 9 -->
|
<!-- 9 -->
|
||||||
<td>VEL</td>
|
<td>VEL</td>
|
||||||
<td><input type="number" name="p" step="0.1" min="0" max="25.5" /></td>
|
<td><input type="number" name="p" step="1" min="0" max="255" /></td>
|
||||||
<td><input type="number" name="i" step="0.001" min="0" max="0.255" /></td>
|
<td><input type="number" name="i" step="1" min="0" max="255" /></td>
|
||||||
<td><input type="number" name="d" step="1" min="0" max="255" /></td>
|
<td><input type="number" name="d" step="1" min="0" max="255" /></td>
|
||||||
</tr>
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
|
@ -93,7 +93,7 @@
|
||||||
<tr class="MAG">
|
<tr class="MAG">
|
||||||
<!-- 8 -->
|
<!-- 8 -->
|
||||||
<td></td>
|
<td></td>
|
||||||
<td><input type="number" name="p" step="0.1" min="0" max="25.5" /></td>
|
<td><input type="number" name="p" step="1" min="0" max="255" /></td>
|
||||||
<td></td>
|
<td></td>
|
||||||
<td></td>
|
<td></td>
|
||||||
</tr>
|
</tr>
|
||||||
|
@ -107,23 +107,24 @@
|
||||||
<tr class="Pos">
|
<tr class="Pos">
|
||||||
<!-- 4 -->
|
<!-- 4 -->
|
||||||
<td></td>
|
<td></td>
|
||||||
<td><input type="number" name="p" step="0.01" min="0" max="2.55" /></td>
|
<td><input type="number" name="p" step="1" min="0" max="255" /></td>
|
||||||
<td><input type="number" name="i" step="0.01" min="0" max="2.55" /></td>
|
<!-- <td><input type="number" name="i" step="1" min="0" max="255" /></td> -->
|
||||||
|
<td></td>
|
||||||
<td></td>
|
<td></td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="PosR">
|
<tr class="PosR">
|
||||||
<!-- 5 -->
|
<!-- 5 -->
|
||||||
<td></td>
|
<td></td>
|
||||||
<td><input type="number" name="p" step="0.1" min="0" max="25.5" /></td>
|
<td><input type="number" name="p" step="1" min="0" max="255" /></td>
|
||||||
<td><input type="number" name="i" step="0.01" min="0" max="2.55" /></td>
|
<td><input type="number" name="i" step="1" min="0" max="255" /></td>
|
||||||
<td><input type="number" name="d" step="0.001" min="0" max="0.255" /></td>
|
<td><input type="number" name="d" step="1" min="0" max="255" /></td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="NavR">
|
<tr class="NavR">
|
||||||
<!-- 6 -->
|
<!-- 6 -->
|
||||||
<td></td>
|
<td></td>
|
||||||
<td><input type="number" name="p" step="0.1" min="0" max="25.5" /></td>
|
<td><input type="number" name="p" step="1" min="0" max="255" /></td>
|
||||||
<td><input type="number" name="i" step="0.01" min="0" max="2.55" /></td>
|
<td><input type="number" name="i" step="1" min="0" max="255" /></td>
|
||||||
<td><input type="number" name="d" step="0.001" min="0" max="0.255" /></td>
|
<td><input type="number" name="d" step="1" min="0" max="255" /></td>
|
||||||
</tr>
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
</div>
|
</div>
|
||||||
|
@ -145,8 +146,8 @@
|
||||||
<tr class="LEVEL">
|
<tr class="LEVEL">
|
||||||
<!-- 7 -->
|
<!-- 7 -->
|
||||||
<td></td>
|
<td></td>
|
||||||
<td><input type="number" name="p" step="0.1" min="0" max="25.5" /></td>
|
<td><input type="number" name="p" step="1" min="0" max="255" /></td>
|
||||||
<td><input type="number" name="i" step="0.001" min="0" max="0.255" /></td>
|
<td><input type="number" name="i" step="1" min="0" max="255" /></td>
|
||||||
<td><input type="number" name="d" step="1" min="0" max="255" /></td>
|
<td><input type="number" name="d" step="1" min="0" max="255" /></td>
|
||||||
</tr>
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
|
|
|
@ -6,7 +6,6 @@ TABS.pid_tuning = {
|
||||||
|
|
||||||
TABS.pid_tuning.initialize = function (callback) {
|
TABS.pid_tuning.initialize = function (callback) {
|
||||||
var self = this;
|
var self = this;
|
||||||
|
|
||||||
if (GUI.active_tab != 'pid_tuning') {
|
if (GUI.active_tab != 'pid_tuning') {
|
||||||
GUI.active_tab = 'pid_tuning';
|
GUI.active_tab = 'pid_tuning';
|
||||||
}
|
}
|
||||||
|
@ -44,13 +43,13 @@ TABS.pid_tuning.initialize = function (callback) {
|
||||||
$('.pid_tuning .ROLL input').each(function () {
|
$('.pid_tuning .ROLL input').each(function () {
|
||||||
switch (i) {
|
switch (i) {
|
||||||
case 0:
|
case 0:
|
||||||
$(this).val(PIDs[0][i++].toFixed(1));
|
$(this).val(PIDs[0][i++]);
|
||||||
break;
|
break;
|
||||||
case 1:
|
case 1:
|
||||||
$(this).val(PIDs[0][i++].toFixed(3));
|
$(this).val(PIDs[0][i++]);
|
||||||
break;
|
break;
|
||||||
case 2:
|
case 2:
|
||||||
$(this).val(PIDs[0][i++].toFixed(0));
|
$(this).val(PIDs[0][i++]);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
@ -59,13 +58,13 @@ TABS.pid_tuning.initialize = function (callback) {
|
||||||
$('.pid_tuning .PITCH input').each(function () {
|
$('.pid_tuning .PITCH input').each(function () {
|
||||||
switch (i) {
|
switch (i) {
|
||||||
case 0:
|
case 0:
|
||||||
$(this).val(PIDs[1][i++].toFixed(1));
|
$(this).val(PIDs[1][i++]);
|
||||||
break;
|
break;
|
||||||
case 1:
|
case 1:
|
||||||
$(this).val(PIDs[1][i++].toFixed(3));
|
$(this).val(PIDs[1][i++]);
|
||||||
break;
|
break;
|
||||||
case 2:
|
case 2:
|
||||||
$(this).val(PIDs[1][i++].toFixed(0));
|
$(this).val(PIDs[1][i++]);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
@ -74,13 +73,13 @@ TABS.pid_tuning.initialize = function (callback) {
|
||||||
$('.pid_tuning .YAW input').each(function () {
|
$('.pid_tuning .YAW input').each(function () {
|
||||||
switch (i) {
|
switch (i) {
|
||||||
case 0:
|
case 0:
|
||||||
$(this).val(PIDs[2][i++].toFixed(1));
|
$(this).val(PIDs[2][i++]);
|
||||||
break;
|
break;
|
||||||
case 1:
|
case 1:
|
||||||
$(this).val(PIDs[2][i++].toFixed(3));
|
$(this).val(PIDs[2][i++]);
|
||||||
break;
|
break;
|
||||||
case 2:
|
case 2:
|
||||||
$(this).val(PIDs[2][i++].toFixed(0));
|
$(this).val(PIDs[2][i++]);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
@ -89,33 +88,33 @@ TABS.pid_tuning.initialize = function (callback) {
|
||||||
$('.pid_tuning .ALT input').each(function () {
|
$('.pid_tuning .ALT input').each(function () {
|
||||||
switch (i) {
|
switch (i) {
|
||||||
case 0:
|
case 0:
|
||||||
$(this).val(PIDs[3][i++].toFixed(1));
|
$(this).val(PIDs[3][i++]);
|
||||||
break;
|
break;
|
||||||
case 1:
|
case 1:
|
||||||
$(this).val(PIDs[3][i++].toFixed(3));
|
$(this).val(PIDs[3][i++]);
|
||||||
break;
|
break;
|
||||||
case 2:
|
case 2:
|
||||||
$(this).val(PIDs[3][i++].toFixed(0));
|
$(this).val(PIDs[3][i++]);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
i = 0;
|
i = 0;
|
||||||
$('.pid_tuning .Pos input').each(function () {
|
$('.pid_tuning .Pos input').each(function () {
|
||||||
$(this).val(PIDs[4][i++].toFixed(2));
|
$(this).val(PIDs[4][i++]);
|
||||||
});
|
});
|
||||||
|
|
||||||
i = 0;
|
i = 0;
|
||||||
$('.pid_tuning .PosR input').each(function () {
|
$('.pid_tuning .PosR input').each(function () {
|
||||||
switch (i) {
|
switch (i) {
|
||||||
case 0:
|
case 0:
|
||||||
$(this).val(PIDs[5][i++].toFixed(1));
|
$(this).val(PIDs[5][i++]);
|
||||||
break;
|
break;
|
||||||
case 1:
|
case 1:
|
||||||
$(this).val(PIDs[5][i++].toFixed(2));
|
$(this).val(PIDs[5][i++]);
|
||||||
break;
|
break;
|
||||||
case 2:
|
case 2:
|
||||||
$(this).val(PIDs[5][i++].toFixed(3));
|
$(this).val(PIDs[5][i++]);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
@ -124,13 +123,13 @@ TABS.pid_tuning.initialize = function (callback) {
|
||||||
$('.pid_tuning .NavR input').each(function () {
|
$('.pid_tuning .NavR input').each(function () {
|
||||||
switch (i) {
|
switch (i) {
|
||||||
case 0:
|
case 0:
|
||||||
$(this).val(PIDs[6][i++].toFixed(1));
|
$(this).val(PIDs[6][i++]);
|
||||||
break;
|
break;
|
||||||
case 1:
|
case 1:
|
||||||
$(this).val(PIDs[6][i++].toFixed(2));
|
$(this).val(PIDs[6][i++]);
|
||||||
break;
|
break;
|
||||||
case 2:
|
case 2:
|
||||||
$(this).val(PIDs[6][i++].toFixed(3));
|
$(this).val(PIDs[6][i++]);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
@ -139,33 +138,33 @@ TABS.pid_tuning.initialize = function (callback) {
|
||||||
$('.pid_tuning .LEVEL input').each(function () {
|
$('.pid_tuning .LEVEL input').each(function () {
|
||||||
switch (i) {
|
switch (i) {
|
||||||
case 0:
|
case 0:
|
||||||
$(this).val(PIDs[7][i++].toFixed(1));
|
$(this).val(PIDs[7][i++]);
|
||||||
break;
|
break;
|
||||||
case 1:
|
case 1:
|
||||||
$(this).val(PIDs[7][i++].toFixed(3));
|
$(this).val(PIDs[7][i++]);
|
||||||
break;
|
break;
|
||||||
case 2:
|
case 2:
|
||||||
$(this).val(PIDs[7][i++].toFixed(0));
|
$(this).val(PIDs[7][i++]);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
i = 0;
|
i = 0;
|
||||||
$('.pid_tuning .MAG input').each(function () {
|
$('.pid_tuning .MAG input').each(function () {
|
||||||
$(this).val(PIDs[8][i++].toFixed(1));
|
$(this).val(PIDs[8][i++]);
|
||||||
});
|
});
|
||||||
|
|
||||||
i = 0;
|
i = 0;
|
||||||
$('.pid_tuning .Vario input').each(function () {
|
$('.pid_tuning .Vario input').each(function () {
|
||||||
switch (i) {
|
switch (i) {
|
||||||
case 0:
|
case 0:
|
||||||
$(this).val(PIDs[9][i++].toFixed(1));
|
$(this).val(PIDs[9][i++]);
|
||||||
break;
|
break;
|
||||||
case 1:
|
case 1:
|
||||||
$(this).val(PIDs[9][i++].toFixed(3));
|
$(this).val(PIDs[9][i++]);
|
||||||
break;
|
break;
|
||||||
case 2:
|
case 2:
|
||||||
$(this).val(PIDs[9][i++].toFixed(0));
|
$(this).val(PIDs[9][i++]);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
Loading…
Reference in New Issue