Skip to content

Commit 94cd4da

Browse files
authored
Merge pull request #393 from klutvott123/pt2-pt3
Add PT2 and PT3 filter options
2 parents 485f1fd + 0452542 commit 94cd4da

File tree

1 file changed

+22
-9
lines changed

1 file changed

+22
-9
lines changed

src/SCRIPTS/BF/PAGES/filters1.lua

Lines changed: 22 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -16,18 +16,33 @@ local inc = { x = function(val) x = x + val return x end, y = function(val) y =
1616
local labels = {}
1717
local fields = {}
1818

19+
local gyroFilterType = { [0] = "PT1", "BIQUAD" }
20+
21+
if apiVersion >= 1.044 then
22+
gyroFilterType[#gyroFilterType + 1] = "PT2"
23+
gyroFilterType[#gyroFilterType + 1] = "PT3"
24+
end
25+
26+
local dtermFilterType = gyroFilterType
27+
28+
if apiVersion >= 1.036 and apiVersion <= 1.038 then
29+
dtermFilterType = { [0] = "PT1", "BIQUAD", "FIR" }
30+
end
31+
32+
local dtermFilterType2 = gyroFilterType
33+
1934
if apiVersion >= 1.041 then
2035
labels[#labels + 1] = { t = "Gyro Lowpass 1 Dynamic", x = x, y = inc.y(lineSpacing) }
2136
fields[#fields + 1] = { t = "Min Cutoff", x = x + indent, y = inc.y(lineSpacing), sp = x + sp, min = 0, max = 1000, vals = { 30, 31 } }
2237
fields[#fields + 1] = { t = "Max Cutoff", x = x + indent, y = inc.y(lineSpacing), sp = x + sp, min = 0, max = 1000, vals = { 32, 33 } }
23-
fields[#fields + 1] = { t = "Filter Type", x = x + indent, y = inc.y(lineSpacing), sp = x + sp, min = 0, max = 1, vals = { 25 }, table = { [0] = "PT1", [1] = "BIQUAD" } }
38+
fields[#fields + 1] = { t = "Filter Type", x = x + indent, y = inc.y(lineSpacing), sp = x + sp, min = 0, max = #gyroFilterType, vals = { 25 }, table = gyroFilterType }
2439
end
2540

2641
if apiVersion >= 1.016 then
2742
labels[#labels + 1] = { t = "Gyro Lowpass 1", x = x, y = inc.y(lineSpacing) }
2843
if apiVersion >= 1.039 then
2944
fields[#fields + 1] = { t = "Cutoff", x = x + indent, y = inc.y(lineSpacing), sp = x + sp, min = 0, max = 16000, vals = { 21, 22 } }
30-
fields[#fields + 1] = { t = "Filter Type", x = x + indent, y = inc.y(lineSpacing), sp = x + sp, min = 0, max = 1, vals = { 25 }, table = { [0] = "PT1", [1] = "BIQUAD" } }
45+
fields[#fields + 1] = { t = "Filter Type", x = x + indent, y = inc.y(lineSpacing), sp = x + sp, min = 0, max = #gyroFilterType, vals = { 25 }, table = gyroFilterType }
3146
else
3247
fields[#fields + 1] = { t = "Cutoff", x = x + indent, y = inc.y(lineSpacing), sp = x + sp, min = 0, max = 255, vals = { 1 } }
3348
end
@@ -36,7 +51,7 @@ end
3651
if apiVersion >= 1.039 then
3752
labels[#labels + 1] = { t = "Gyro Lowpass 2", x = x, y = inc.y(lineSpacing) }
3853
fields[#fields + 1] = { t = "Cutoff", x = x + indent, y = inc.y(lineSpacing), sp = x + sp, min = 0, max = 16000, vals = { 23, 24 } }
39-
fields[#fields + 1] = { t = "Filter Type", x = x + indent, y = inc.y(lineSpacing), sp = x + sp, min = 0, max = 1, vals = { 26 }, table = { [0] = "PT1", [1] = "BIQUAD" } }
54+
fields[#fields + 1] = { t = "Filter Type", x = x + indent, y = inc.y(lineSpacing), sp = x + sp, min = 0, max = #gyroFilterType, vals = { 26 }, table = gyroFilterType }
4055
end
4156

4257
if apiVersion >= 1.020 then
@@ -55,24 +70,22 @@ if apiVersion >= 1.041 then
5570
labels[#labels + 1] = { t = "D Term Lowpass 1 Dynamic", x = x, y = inc.y(lineSpacing) }
5671
fields[#fields + 1] = { t = "Min Cutoff", x = x + indent, y = inc.y(lineSpacing), sp = x + sp, min = 0, max = 1000, vals = { 34, 35 } }
5772
fields[#fields + 1] = { t = "Max Cutoff", x = x + indent, y = inc.y(lineSpacing), sp = x + sp, min = 0, max = 1000, vals = { 36, 37 } }
58-
fields[#fields + 1] = { t = "Filter Type", x = x + indent, y = inc.y(lineSpacing), sp = x + sp, min = 0, max = 1, vals = { 18 }, table = { [0] = "PT1", [1] = "BIQUAD" } }
73+
fields[#fields + 1] = { t = "Filter Type", x = x + indent, y = inc.y(lineSpacing), sp = x + sp, min = 0, max = #dtermFilterType, vals = { 18 }, table = dtermFilterType }
5974
end
6075

6176
if apiVersion >= 1.016 then
6277
labels[#labels + 1] = { t = "D Term Lowpass 1", x = x, y = inc.y(lineSpacing) }
6378
fields[#fields + 1] = { t = "Cutoff", x = x + indent, y = inc.y(lineSpacing), sp = x + sp, min = 0, max = 16000, vals = { 2, 3 } }
64-
if apiVersion >= 1.036 and apiVersion <= 1.038 then
65-
fields[#fields + 1] = { t = "Filter Type", x = x + indent, y = inc.y(lineSpacing), sp = x + sp, min = 0, max = 2, vals = { 18 }, table = { [0] = "PT1", [1] = "BIQUAD", [2] = "FIR" } }
66-
elseif apiVersion >= 1.039 then
67-
fields[#fields + 1] = { t = "Filter Type", x = x + indent, y = inc.y(lineSpacing), sp = x + sp, min = 0, max = 1, vals = { 18 }, table = { [0] = "PT1", [1] = "BIQUAD" } }
79+
if apiVersion >= 1.036 then
80+
fields[#fields + 1] = { t = "Filter Type", x = x + indent, y = inc.y(lineSpacing), sp = x + sp, min = 0, max = #dtermFilterType, vals = { 18 }, table = dtermFilterType }
6881
end
6982
end
7083

7184
if apiVersion >= 1.039 then
7285
labels[#labels + 1] = { t = "D Term Lowpass 2", x = x, y = inc.y(lineSpacing) }
7386
fields[#fields + 1] = { t = "Cutoff", x = x + indent, y = inc.y(lineSpacing), sp = x + sp, min = 0, max = 16000, vals = { 27, 28 } }
7487
if apiVersion >= 1.041 then
75-
fields[#fields + 1] = { t = "Filter Type", x = x + indent, y = inc.y(lineSpacing), sp = x + sp, min = 0, max = 1, vals = { 29 }, table = { [0] = "PT1", [1] = "BIQUAD" } }
88+
fields[#fields + 1] = { t = "Filter Type", x = x + indent, y = inc.y(lineSpacing), sp = x + sp, min = 0, max = #dtermFilterType2, vals = { 29 }, table = dtermFilterType2 }
7689
end
7790
end
7891

0 commit comments

Comments
 (0)