Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Reorganize Idle Settings #494

Open
wants to merge 2 commits into
base: master
Choose a base branch
from
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
53 changes: 27 additions & 26 deletions firmware/tunerstudio/tunerstudio.template.ini
Original file line number Diff line number Diff line change
Expand Up @@ -1834,13 +1834,11 @@ menuDialog = main
subMenu = cltCrankingTaperDurationCurve, "Cranking taper duration multiplier", 0, {useCrankingIdleTaperTableSetting}

menu = "&Idle" @@if_ts_show_idle
subMenu = idleSettings, "Idle settings" @@if_ts_show_idle
subMenu = idlehw, "Idle hardware" @@if_ts_show_idle
subMenu = std_separator @@if_ts_show_idle
subMenu = cltIdleRPMCurve, "Target RPM" @@if_ts_show_idle
subMenu = cltIdleCurve, "CLT multiplier" @@if_ts_show_idle
subMenu = idleSettingsOpen, "Open Loop Idle" @@if_ts_show_idle
subMenu = idleSettingsClosed, "Closed Loop Idle" @@if_ts_show_idle
subMenu = idlehw, "Idle hardware" @@if_ts_show_idle
subMenu = std_separator @@if_ts_show_idle
subMenu = idleTimingPidCorrDialog, "Closed-loop idle timing" @@if_ts_show_idle
subMenu = iacPidMultTbl, "IAC PID multiplier", 0, {idleMode == 0 && useIacPidMultTable} @@if_ts_show_idle
subMenu = iacCoastingCurve, "Coasting IAC position", 0, {useIacTableForCoasting} @@if_ts_show_idle
subMenu = std_separator @@if_ts_show_idle
Expand Down Expand Up @@ -3345,18 +3343,20 @@ cmd_set_engine_type_default = "@@TS_IO_TEST_COMMAND_char@@@@ts_command_e_TS_
field = "Electronic throttle idle range", etbIdleThrottleRange
panel = idleHwType

dialog = idlePidSettings, "Closed Loop Idle"
field = "P-factor", idleRpmPid_pFactor
field = "I-factor", idleRpmPid_iFactor
field = "derivativeFilterLoss", idle_derivativeFilterLoss
field = "antiwindupFreq", idle_antiwindupFreq
field = "D-factor", idleRpmPid_dFactor
field = "Min", idleRpmPid_minValue
field = "Max", idleRpmPid_maxValue
field = "iTerm Min", idlerpmpid_iTermMin
field = "iTerm Max", idlerpmpid_iTermMax
field = "PID Extra for low RPM", pidExtraForLowRpm
field = "Use IAC PID Multiplier Table", useIacPidMultTable
dialog = idlePidSettings, "IAC Position"
field = "Idle control mode", idleMode
field = "RPM deadzone", idlePidRpmDeadZone { idleMode == @@idle_mode_e_IM_AUTO@@ }
field = "P-factor", idleRpmPid_pFactor { idleMode == @@idle_mode_e_IM_AUTO@@ }
field = "I-factor", idleRpmPid_iFactor { idleMode == @@idle_mode_e_IM_AUTO@@ }
field = "derivativeFilterLoss", idle_derivativeFilterLoss { idleMode == @@idle_mode_e_IM_AUTO@@ }
field = "antiwindupFreq", idle_antiwindupFreq { idleMode == @@idle_mode_e_IM_AUTO@@ }
field = "D-factor", idleRpmPid_dFactor { idleMode == @@idle_mode_e_IM_AUTO@@ }
field = "Min", idleRpmPid_minValue { idleMode == @@idle_mode_e_IM_AUTO@@ }
field = "Max", idleRpmPid_maxValue { idleMode == @@idle_mode_e_IM_AUTO@@ }
field = "iTerm Min", idlerpmpid_iTermMin { idleMode == @@idle_mode_e_IM_AUTO@@ }
field = "iTerm Max", idlerpmpid_iTermMax { idleMode == @@idle_mode_e_IM_AUTO@@ }
field = "PID Extra for low RPM", pidExtraForLowRpm { idleMode == @@idle_mode_e_IM_AUTO@@ }
field = "Use IAC PID Multiplier Table", useIacPidMultTable { idleMode == @@idle_mode_e_IM_AUTO@@ }

dialog = idleOpenLoop, "Open Loop Idle"
slider = "Open loop base position", manIdlePosition, horizontal
Expand All @@ -3369,7 +3369,6 @@ cmd_set_engine_type_default = "@@TS_IO_TEST_COMMAND_char@@@@ts_command_e_TS_
dialog = idleGating, "Idle Detection Thresholds"
field = "TPS threshold", idlePidDeactivationTpsThreshold
field = "RPM upper limit", idlePidRpmUpperLimit
field = "RPM deadzone", idlePidRpmDeadZone
field = "Max vehicle speed", maxIdleVss

dialog = idleExtra, "Extra Idle Features"
Expand All @@ -3379,20 +3378,19 @@ cmd_set_engine_type_default = "@@TS_IO_TEST_COMMAND_char@@@@ts_command_e_TS_
field = "Use idle tables for cranking taper", useSeparateIdleTablesForCrankingTaper
field = "Use coasting idle table", useIacTableForCoasting

dialog = idleSettings, "", yAxis
field = "Idle control mode", idleMode

dialog = idleSettingsLeft, "", yAxis
field = "! Solenoid idle control is disabled at zero RPM"

; gating applies both to open loop and closed loop!
panel = idleGating
; closed loop mode is an addition on top of open loop, so idleOpenLoop stays open even when closed loop is selected
panel = idleOpenLoop
panel = idlePidSettings, { idleMode == @@idle_mode_e_IM_AUTO@@ }
panel = idleExtra

dialog = idleTimingPidCorrDialog, "", yAxis
field = ""
dialog = idleSettingsOpen, "", xAxis
panel = idleSettingsLeft
panel = cltIdleCurve

dialog = idleTimingPidCorrDialog, "Ignition Timing", yAxis
field = "Enable closed loop idle ignition timing", useIdleTimingPidControl
field = ""
field = "#Gain is in degrees advance per rpm away from target"
Expand All @@ -3402,9 +3400,12 @@ cmd_set_engine_type_default = "@@TS_IO_TEST_COMMAND_char@@@@ts_command_e_TS_
field = ""
field = "Min adjustment (retard)", idleTimingPid_minValue, {useIdleTimingPidControl}
field = "Max adjustment (advance)", idleTimingPid_maxValue, {useIdleTimingPidControl}
field = ""
field = "#Use debug mode 'Timing' to view idle timing adjustment"

dialog = idleSettingsClosed, "", xAxis
panel = idlePidSettings
panel = idleTimingPidCorrDialog

; Engine->Fan Settings
dialog = fan1Settings, "Fan 1"
field = "Output", fanPin
Expand Down
Loading