Skip to content

Commit bad5cb3

Browse files
authored
Merge pull request #399 from klutvott123/update-simplified-tuning
2 parents 511f99a + 1ae54d1 commit bad5cb3

File tree

3 files changed

+42
-27
lines changed

3 files changed

+42
-27
lines changed

src/SCRIPTS/BF/PAGES/pids1.lua

Lines changed: 18 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,14 @@ local inc = { x = function(val) x = x + val return x end, y = function(val) y =
1111
local labels = {}
1212
local fields = {}
1313

14+
local pidMax = 200
15+
local dLabel = "D"
16+
17+
if apiVersion >= 1.044 then
18+
pidMax = 250
19+
dLabel = "D Max"
20+
end
21+
1422
if apiVersion >= 1.016 then
1523
x = margin
1624
y = yMinLim - tableSpacing.header
@@ -24,26 +32,26 @@ if apiVersion >= 1.016 then
2432
y = yMinLim - tableSpacing.header
2533

2634
labels[#labels + 1] = { t = "P", x = x, y = inc.y(tableSpacing.header) }
27-
fields[#fields + 1] = { x = x, y = inc.y(tableSpacing.row), min = 0, max = 200, vals = { 1 } }
28-
fields[#fields + 1] = { x = x, y = inc.y(tableSpacing.row), min = 0, max = 200, vals = { 4 } }
29-
fields[#fields + 1] = { x = x, y = inc.y(tableSpacing.row), min = 0, max = 200, vals = { 7 } }
35+
fields[#fields + 1] = { x = x, y = inc.y(tableSpacing.row), min = 0, max = pidMax, vals = { 1 } }
36+
fields[#fields + 1] = { x = x, y = inc.y(tableSpacing.row), min = 0, max = pidMax, vals = { 4 } }
37+
fields[#fields + 1] = { x = x, y = inc.y(tableSpacing.row), min = 0, max = pidMax, vals = { 7 } }
3038

3139
x = x + tableSpacing.col
3240
y = yMinLim - tableSpacing.header
3341

3442
labels[#labels + 1] = { t = "I", x = x, y = inc.y(tableSpacing.header) }
35-
fields[#fields + 1] = { x = x, y = inc.y(tableSpacing.row), min = 0, max = 200, vals = { 2 } }
36-
fields[#fields + 1] = { x = x, y = inc.y(tableSpacing.row), min = 0, max = 200, vals = { 5 } }
37-
fields[#fields + 1] = { x = x, y = inc.y(tableSpacing.row), min = 0, max = 200, vals = { 8 } }
43+
fields[#fields + 1] = { x = x, y = inc.y(tableSpacing.row), min = 0, max = pidMax, vals = { 2 } }
44+
fields[#fields + 1] = { x = x, y = inc.y(tableSpacing.row), min = 0, max = pidMax, vals = { 5 } }
45+
fields[#fields + 1] = { x = x, y = inc.y(tableSpacing.row), min = 0, max = pidMax, vals = { 8 } }
3846

3947
x = x + tableSpacing.col
4048
y = yMinLim - tableSpacing.header
4149

42-
labels[#labels + 1] = { t = "D", x = x, y = inc.y(tableSpacing.header) }
43-
fields[#fields + 1] = { x = x, y = inc.y(tableSpacing.row), min = 0, max = 200, vals = { 3 } }
44-
fields[#fields + 1] = { x = x, y = inc.y(tableSpacing.row), min = 0, max = 200, vals = { 6 } }
50+
labels[#labels + 1] = { t = dLabel, x = x, y = inc.y(tableSpacing.header) }
51+
fields[#fields + 1] = { x = x, y = inc.y(tableSpacing.row), min = 0, max = pidMax, vals = { 3 } }
52+
fields[#fields + 1] = { x = x, y = inc.y(tableSpacing.row), min = 0, max = pidMax, vals = { 6 } }
4553
if apiVersion >= 1.041 then
46-
fields[#fields + 1] = { x = x, y = inc.y(tableSpacing.row), min = 0, max = 200, vals = { 9 } }
54+
fields[#fields + 1] = { x = x, y = inc.y(tableSpacing.row), min = 0, max = pidMax, vals = { 9 } }
4755
end
4856
end
4957

src/SCRIPTS/BF/PAGES/pids2.lua

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,12 @@ local inc = { x = function(val) x = x + val return x end, y = function(val) y =
1111
local labels = {}
1212
local fields = {}
1313

14+
local dMinMax = 100
15+
16+
if apiVersion >= 1.044 then
17+
dMinMax = 250
18+
end
19+
1420
if apiVersion >= 1.040 then
1521
x = margin
1622
y = yMinLim - tableSpacing.header
@@ -33,9 +39,9 @@ if apiVersion >= 1.040 then
3339
y = yMinLim - tableSpacing.header
3440

3541
labels[#labels + 1] = { t = "D Min", x = x, y = inc.y(tableSpacing.header) }
36-
fields[#fields + 1] = { x = x, y = inc.y(tableSpacing.row), min = 0, max = 100, vals = { 40 } }
37-
fields[#fields + 1] = { x = x, y = inc.y(tableSpacing.row), min = 0, max = 100, vals = { 41 } }
38-
fields[#fields + 1] = { x = x, y = inc.y(tableSpacing.row), min = 0, max = 100, vals = { 42 } }
42+
fields[#fields + 1] = { x = x, y = inc.y(tableSpacing.row), min = 0, max = dMinMax, vals = { 40 } }
43+
fields[#fields + 1] = { x = x, y = inc.y(tableSpacing.row), min = 0, max = dMinMax, vals = { 41 } }
44+
fields[#fields + 1] = { x = x, y = inc.y(tableSpacing.row), min = 0, max = dMinMax, vals = { 42 } }
3945
end
4046

4147
x = margin

src/SCRIPTS/BF/PAGES/simplified_tuning.lua

Lines changed: 15 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -11,29 +11,30 @@ local inc = { x = function(val) x = x + val return x end, y = function(val) y =
1111
local labels = {}
1212
local fields = {}
1313

14-
labels[#labels + 1] = { t = "Simplified Pid", x = x, y = inc.y(lineSpacing) }
15-
fields[#fields + 1] = { t = "Pid Tuning", x = x + indent, y = inc.y(lineSpacing), sp = x + sp, min = 0, max = 2, vals = { 1 }, table = { [0] = "OFF", "RP", "RPY" } }
16-
fields[#fields + 1] = { t = "Master Mult", x = x + indent, y = inc.y(lineSpacing), sp = x + sp, min = 50, max = 200, vals = { 2 }, scale = 100, mult = 5 }
17-
fields[#fields + 1] = { t = "R/P Ratio", x = x + indent, y = inc.y(lineSpacing), sp = x + sp, min = 50, max = 200, vals = { 3 }, scale = 100, mult = 5 }
18-
fields[#fields + 1] = { t = "I Gain", x = x + indent, y = inc.y(lineSpacing), sp = x + sp, min = 50, max = 200, vals = { 4 }, scale = 100, mult = 5 }
19-
fields[#fields + 1] = { t = "P/D Ratio", x = x + indent, y = inc.y(lineSpacing), sp = x + sp, min = 50, max = 200, vals = { 5 }, scale = 100, mult = 5 }
20-
fields[#fields + 1] = { t = "PD Gain", x = x + indent, y = inc.y(lineSpacing), sp = x + sp, min = 50, max = 200, vals = { 6 }, scale = 100, mult = 5 }
21-
fields[#fields + 1] = { t = "Dmin Ratio", x = x + indent, y = inc.y(lineSpacing), sp = x + sp, min = 50, max = 200, vals = { 7 }, scale = 100, mult = 5 }
22-
fields[#fields + 1] = { t = "FF Gain", x = x + indent, y = inc.y(lineSpacing), sp = x + sp, min = 50, max = 200, vals = { 8 }, scale = 100, mult = 5 }
14+
labels[#labels + 1] = { t = "Simplified PID", x = x, y = inc.y(lineSpacing) }
15+
fields[#fields + 1] = { t = "PID Tuning", x = x + indent, y = inc.y(lineSpacing), sp = x + sp, min = 0, max = 2, vals = { 1 }, table = { [0] = "OFF", "RP", "RPY" } }
16+
fields[#fields + 1] = { t = "Master Mult", x = x + indent, y = inc.y(lineSpacing), sp = x + sp, min = 0, max = 200, vals = { 2 }, scale = 100, mult = 5 }
17+
fields[#fields + 1] = { t = "P/I Gain", x = x + indent, y = inc.y(lineSpacing), sp = x + sp, min = 0, max = 200, vals = { 6 }, scale = 100, mult = 5 }
18+
fields[#fields + 1] = { t = "D Gain", x = x + indent, y = inc.y(lineSpacing), sp = x + sp, min = 0, max = 200, vals = { 5 }, scale = 100, mult = 5 }
19+
fields[#fields + 1] = { t = "FF Gain", x = x + indent, y = inc.y(lineSpacing), sp = x + sp, min = 0, max = 200, vals = { 8 }, scale = 100, mult = 5 }
20+
fields[#fields + 1] = { t = "I Gain", x = x + indent, y = inc.y(lineSpacing), sp = x + sp, min = 0, max = 200, vals = { 4 }, scale = 100, mult = 5 }
21+
fields[#fields + 1] = { t = "D Max Gain", x = x + indent, y = inc.y(lineSpacing), sp = x + sp, min = 0, max = 200, vals = { 7 }, scale = 100, mult = 5 }
22+
fields[#fields + 1] = { t = "Pitch D Gain", x = x + indent, y = inc.y(lineSpacing), sp = x + sp, min = 0, max = 200, vals = { 3 }, scale = 100, mult = 5 }
23+
fields[#fields + 1] = { t = "Pitch P/I/FF Gain", x = x + indent, y = inc.y(lineSpacing), sp = x + sp, min = 0, max = 200, vals = { 9 }, scale = 100, mult = 5 }
2324

2425
labels[#labels + 1] = { t = "Simplified Filter", x = x, y = inc.y(lineSpacing) }
25-
fields[#fields + 1] = { t = "Gyro Tuning", x = x + indent, y = inc.y(lineSpacing), sp = x + sp, min = 0, max = 1, vals = { 9 }, table = { [0] = "OFF", "ON" } }
26-
fields[#fields + 1] = { t = "Gyro Mult", x = x + indent, y = inc.y(lineSpacing), sp = x + sp, min = 50, max = 200, vals = { 10 }, scale = 100, mult = 5 }
27-
fields[#fields + 1] = { t = "D Tuning", x = x + indent, y = inc.y(lineSpacing), sp = x + sp, min = 0, max = 1, vals = { 11 }, table = { [0] = "OFF", "ON" } }
28-
fields[#fields + 1] = { t = "D Mult", x = x + indent, y = inc.y(lineSpacing), sp = x + sp, min = 50, max = 200, vals = { 12 }, scale = 100, mult = 5 }
26+
fields[#fields + 1] = { t = "Gyro Tuning", x = x + indent, y = inc.y(lineSpacing), sp = x + sp, min = 0, max = 1, vals = { 12 }, table = { [0] = "OFF", "ON" } }
27+
fields[#fields + 1] = { t = "Gyro Mult", x = x + indent, y = inc.y(lineSpacing), sp = x + sp, min = 0, max = 200, vals = { 13 }, scale = 100, mult = 5 }
28+
fields[#fields + 1] = { t = "D Tuning", x = x + indent, y = inc.y(lineSpacing), sp = x + sp, min = 0, max = 1, vals = { 10 }, table = { [0] = "OFF", "ON" } }
29+
fields[#fields + 1] = { t = "D Mult", x = x + indent, y = inc.y(lineSpacing), sp = x + sp, min = 0, max = 200, vals = { 11 }, scale = 100, mult = 5 }
2930

3031
return {
3132
read = 140, -- MSP_SIMPLIFIED_TUNING
3233
write = 141, -- MSP_SET_SIMPLIFIED_TUNING
3334
title = "Simplified Tuning",
3435
reboot = false,
3536
eepromWrite = true,
36-
minBytes = 12,
37+
minBytes = 13,
3738
labels = labels,
3839
fields = fields,
3940
}

0 commit comments

Comments
 (0)