Matthew Kennedy
877b2da1bd
idle entry target ramp ( #570 )
...
* ramp target as you enter idle
* add idle threshold hysteresis
* make it optional
* test hysteresis behavior
* UI & changelog
2025-03-11 18:26:01 -07:00
Matthew Kennedy
dd67fa58e7
move idle "capture" RPM math to getTargetRpm
2025-03-09 00:52:33 -08:00
Matthew Kennedy
9608afcf01
idle fast callback ( #565 )
2025-03-07 11:32:59 -08:00
Matthew Kennedy
b8e39997fd
experimental modeled flow idle ( #561 )
...
* implement basic idle flow model
* grr percent
* experiment with incorporating timing in to modeled idle
* missed a field
* live data, reset, scaling
* livedata
2025-02-28 17:11:55 -08:00
Matthew Kennedy
54f2dd85f6
dead Pid::updateFactors
2024-12-23 13:19:56 -08:00
Matthew Kennedy
791f26ca8a
Simplify idle: no "pid industrial"
2024-12-23 00:30:04 -08:00
Matthew Kennedy
1d9efc95f2
int rpm -> float rpm
2024-09-24 23:40:49 -07:00
Matthew Kennedy
c086047ac5
let's move away from PeriodicTimerController
2024-08-12 17:58:05 -07:00
Stefan de Kraker
4c65992017
Add cranking taper duration multiplier based on CLT ( #370 )
...
* Add Cranking taper duration multiplier based on CLT
* Fixed same merge error in TS config
* Fixed existing unit test for getCrankingTaperFraction, and added a new one to test multiplier table for cranking taper duration.
* Fixed existing header file for unit test getCrankingTaperFraction
* Changed naming
* changed logic
* Forgot to update name here too
* Forgot to update name here too, second time
2024-02-25 17:36:30 -08:00
Matthew Kennedy
57263be2fe
mockable throttle model
2023-05-11 14:37:48 -07:00
Matthew Kennedy
c71ba44d61
clean up pretty useless console commands
2023-02-21 02:07:25 -08:00
Matthew Kennedy
00f3067185
idle pid cic
2023-02-20 23:01:59 -08:00
Andrey
1eb1f1a101
tear down Engine god object #4511
...
just trying different things
2022-09-05 04:00:24 -04:00
Matthew Kennedy
4035d79a91
idle always uses instant rpm ( #4499 )
...
* idle always uses instant rpm
* configs
* fully inject rpm
2022-08-29 22:18:06 -04:00
Andreika
fda9448798
[DRAFT] Air by rpm taper ( #4486 )
...
* add rpm to getOpenLoop() and getRunningOpenLoop()
* implement airByRpmTaper
* unit-test for airByRpmTaper
2022-08-25 21:23:23 -04:00
Matthew Kennedy
1fd637d27e
remove idle offset ( #4355 )
...
* remove offset
* remove more completely
* changelog
2022-07-18 15:49:43 -04:00
Andrey
b7cd7dbdb9
Extra Idle Air if Throttle is Pressed behavior #3940
...
only live data
2022-04-03 20:30:09 -04:00
rusefillc
5c16186919
safer file name ( #3861 )
...
* safer file name
* safer file name
Co-authored-by: rusefillc <sdfsdfqsf2334234234>
2022-01-31 21:51:32 -05:00
Matthew Kennedy
6fc4503ee2
XY Idle VE Table ( #3781 )
...
* config & ui
* implement
* test idle VE switching behavior
* use the interface where we can
* s
* re-bump flash version
2022-01-20 14:08:54 -05:00
rusefillc
5c68f86a0d
RE usability: live data for idle controller
2022-01-10 21:55:52 -05:00
rusefillc
5eaabf5eb6
RE usability: live data for idle controller
...
static bad, class fields better
2022-01-10 20:12:11 -05:00
rusefillc
6fd0ae24d9
RE usability: live data for idle controller
2022-01-10 19:48:58 -05:00
rusefillc
7760ddd8b6
live data for wastegate #3588
...
i want to persist state so no 'const' sorry
2021-11-23 15:52:43 -05:00
Scott Smith
659cc68be1
Final cleanup of ENGINE macros ( #3567 )
...
Fix some uses of ENGINE() not detected by regex due to parenthesis.
Remove now empty engine_ptr.h
Don't worry about EFI_* not being defined, the compiler defaults to 0 if they aren't.
2021-11-17 13:45:10 -05:00
Scott Smith
f9f13f0bad
Create a base class EngineModule for that contains various useful callbacks. ( #3548 )
...
* Create a base class EngineModule for that contains various useful callbacks.
This cleans up the API by not requiring the notifiers to know about who wants callbacks. The only
place you need to update to add a module is in one place.
* Add mockability.
* Convert InjectorModel to a Mockable EngineModule
2021-11-17 20:13:19 +03:00
Scott Smith
80091498a6
Programmatically replace ENGINE() and CONFIG() with engine-> etc ( #3565 )
...
git grep -l -w ENGINE | xargs sed -i -r "s/ENGINE\(([]a-zA-Z_0-9.[]+)\)/engine->\1/g"
git grep -l -w CONFIG | xargs sed -i -r "s/([^a-zA-Z_])CONFIG\(([]a-zA-Z_0-9.[]+)\)/\1engineConfiguration->\2/g"
2021-11-17 03:54:21 -05:00
Scott Smith
dac2ae9b1d
Programmatically remove EnginePtr/inject, EXPAND_Engine, and WITH_ENGINE_TEST_HELPER* ( #3560 )
...
* Programmatically remove EnginePtr/inject, EXPAND_Engine, and WITH_ENGINE_TEST_HELPER*
for i in ": public EnginePtr " ", public EnginePtr" "EXPAND_Engine;" "EXPAND_Engine"; do
git grep -l "$i" | xargs sed -i "s/$i//g"
done
git grep -l "inject" | xargs sed -i "/inject[(][)]/d"
for i in WITH_ENGINE_TEST_HELPER_SENS WITH_ENGINE_TEST_HELPER_BOARD_CALLBACK WITH_ENGINE_TEST_HELPER; do
git grep -l "$i" | xargs sed -i "s/$i/EngineTestHelper eth/g"
done
git checkout firmware/controllers/core/engine_ptr.h
git checkout unit_tests/global.h
* Review fixups.
2021-11-16 16:52:11 -05:00
Matthew Kennedy
7296593448
remove engine pointer passing ( #3556 )
...
* some
* more
* more
* the last?!
2021-11-16 04:15:29 -05:00
Matthew Kennedy
bd04dc8352
less macro, more c++ ( #3549 )
...
* less macro
* s
2021-11-15 12:44:40 +01:00
Andreika
99fb5e4204
[DRAFT] Fix cranking->idling taper phase for useSeparate*ForIdle tables ( #3168 )
...
* Rename Phase::CrankToRunTaper -> CrankToIdleTaper
* Change isIdling() to isIdlingOrTaper()
* test_idle_controller.cpp
* useSeparateIdleTablesForCrankingTaper setting
Co-authored-by: Andrei <andreikagit@users.noreply.github.com>
2021-10-06 12:05:20 -04:00
Matthew Kennedy
e056369f05
actually remove FSIO idle stuff ( #3150 )
...
* debug mode
* pid cleanup
* more dead
* more dead
* wow more dead
* much dead many death wow
2021-08-14 09:48:45 +03:00
rusefillc
5fed6d2ffe
Clutch switch inverted options do not invert detected pedal position #3044
2021-07-24 15:36:03 -04:00
Matthew Kennedy
16dac2e47c
Disable closed loop idle during cranking->running taper ( #2900 )
...
* implement
* dead file?
* implement tests
* new phase
2021-07-06 08:47:06 -04:00
Matthew Kennedy
3247d4de00
Gate closed loop idle on road speed ( #2901 )
...
* implement
* test
* b
* config
2021-07-04 09:35:12 -04:00
Matthew Kennedy
0c0957f52a
apply open loop idle when in automatic mode ( #2745 )
...
* always apply open loop in closed loop
* simplify flags
* comment
* move
* comment
* missed one
* config for fan bump
* adjust miata defaults
* test fan/ac open loop
* idle CL tests
* test coasting
* test integration case
* fix merge
* put back reset logic for now
* s
* don't need that part
* I guess use OL as baseIdlePosition
* reset condition
2021-06-12 14:21:11 -04:00
Matthew Kennedy
1f3cbd67ad
iac coast table ( #2784 )
2021-06-01 00:43:58 +03:00
Matthew Kennedy
1b607faeba
Idle test that fails ( #2781 )
...
* make member func
* failing test
2021-05-31 06:18:15 -04:00
Matthew Kennedy
8cfb63455d
Logging remove 3 ( #2568 )
...
* ts logger
* sensors
* wideband too
* missed one
* init
* motors, pid, etc
* vvt
* more
* idle
* missed one
* dynoview
* launch
* can
* console IO
* s
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-04-20 14:09:41 -04:00
Matthew Kennedy
d4965d16f3
Enable idle timing/ve tables based on idle phase logic ( #2213 )
...
* add helper
* advance
* ve
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-01-11 00:54:37 -05:00
Matthew Kennedy
86d3746453
Idle timing uses phase logic, remove falloff ( #2169 )
...
* use phase computation
* move & simplify implementation
* test
* bad merge
* initialize
* wonderful changelog
* now unused parameter
* put back deadzone
* ui
* test deadzone
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-01-07 08:06:36 -05:00
rusefillc
7c38714129
Revert "Idle timing PID uses phase logic ( #2156 )"
...
This reverts commit f1ee8b43
2020-12-31 12:22:54 -05:00
Matthew Kennedy
f1ee8b431e
Idle timing PID uses phase logic ( #2156 )
...
* use phase computation
* move & simplify implementation
* test
* bad merge
* initialize
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-12-29 23:50:56 -05:00
Matthew Kennedy
560061e251
Idle refactor open loop ( #2146 )
...
* impl
* typo
* tests
2020-12-26 19:34:42 -05:00
Matthew Kennedy
93cc1e84c3
more testable idle logic ( #2140 )
...
* header
* test
* impl
2020-12-26 08:32:01 -05:00
Matthew Kennedy
d3cbed60af
move target computation ( #2091 )
2020-12-17 17:46:51 -05:00
Matthew Kennedy
605269c358
remove idle thread; just call from periodicSlowCallback ( #1924 )
...
* remove thread
* remove ui
2020-11-11 21:47:19 -05:00
Matthew Kennedy
74d2af9c6c
Move all DECLARE_ENGINE_PTR etc to one place ( #1937 )
...
* restructure
* guard c++
* idle too
* status_loop.h
2020-11-11 19:06:04 -05:00
Matthew Kennedy
e8bb0cfd00
extract idle hardware to its own file ( #1923 )
...
* extract idle hardware
* should fix the build
2020-11-03 18:06:32 -05:00
rusefi
7601952548
Hellen says isIdleMotorBusy
2020-09-07 14:12:21 -04:00
rusefi
07df0c78a8
Weird VAG: DC motor idle valve not ETB
...
#1637
Seattle we might have a problem!
2020-07-26 12:03:36 -04:00