Commit Graph

86 Commits

Author SHA1 Message Date
rusefi a42092826a only: setTimeNowUs(): replace global fiddling with a function call 2024-04-27 10:10:59 -04:00
rusEFI LLC 02a5237942 only: airTaperRpmRange no UI no usages, looks dead, removing 2024-04-23 21:00:50 -04:00
Patryk Chmura 0a7cd2b08c
Closed Loop Idle Ignition Timing small improvements (#5635)
* After-start enrichment handling more similar to OEM and other Standalone EFI systems

* Corrections and tidying-up

* Corrected small mistake in TunerStudio definition

* Compatibility fixes

* Readability fix

* Changed to more appropriate cycles instead of seconds, bugfix for TS

* Typo fix...

* Idle Ignition Timing improvements

* Uninitialized variable for Unit Tests?

* Zero value should disable new feature

---------

Co-authored-by: pchmura4 <>
2023-10-24 17:43:29 -04:00
rusefi 1a8cacf7c1 Dashpot for return-to-idle from coasting 2023-06-12 15:39:49 -04:00
Andrey 77c55b9f88 Dashpot for return-to-idle from coasting #5303
third step towards unit test
2023-06-11 18:42:58 -04:00
Andrey 926d113725 Dashpot for return-to-idle from coasting #5303
second step towards unit test
2023-06-11 18:09:36 -04:00
Andrey 2ae85de636 Dashpot for return-to-idle from coasting #5303
small step towards test
2023-06-11 18:04:23 -04:00
rusefi 415b3d55df Technical debt: ENUM_32_BITS #3874
poking the bear
2023-06-01 01:45:53 -04:00
Matthew Kennedy 1269428044
remove idle timing deadzone (#4731)
* remove idle timing deadzone

* test

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2022-11-04 15:02:20 -04:00
Matthew Kennedy cbe70f8dec
idle always uses instant rpm (#4499)
* idle always uses instant rpm

* configs

* fully inject rpm
2022-08-29 22:18:06 -04:00
Matthew Kennedy 553b549b95
idle coasting table is RPM, not clt (#4487)
* idle coasting table is RPM, not clt

* default

* autoscale

* changelog
2022-08-29 08:15:04 -04:00
Andreika c24712bed7
[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 e1254f84b9
remove idle offset (#4355)
* remove offset

* remove more completely

* changelog
2022-07-18 15:49:43 -04:00
rusefillc 2132cec3fc Remove value copy from controller into outputChannels #4095 2022-05-09 06:12:17 -04:00
Andrey e62877964a Move curves out of engineConfiguration in order to reduce RAM usage #4127 2022-05-01 23:43:43 -04:00
Andrey 8053aeb9cf Extra Idle Air if Throttle is Pressed behavior #3940
only live data
2022-04-03 20:30:09 -04:00
Matthew Kennedy a718f3a30a
Remove fsio part 1 (#3871)
* dead includes

* move last logic out of fsio

* dead functions
2022-02-01 15:42:04 -05:00
rusefillc ca98e270e1
safer file name (#3861)
* safer file name

* safer file name

Co-authored-by: rusefillc <sdfsdfqsf2334234234>
2022-01-31 21:51:32 -05:00
Andrey e945bc4bc9 migrating to SensorType::Rpm API 2022-01-20 22:51:20 -05:00
rusefillc 699a5ef302 RE usability: live data for idle controller 2022-01-10 21:55:52 -05:00
rusefillc 339b906aa9 RE usability: live data for idle controller
static bad, class fields better
2022-01-10 20:12:11 -05:00
rusefillc c75291f415 live data for wastegate #3588
i want to persist state so no 'const' sorry
2021-11-23 15:52:43 -05:00
Scott Smith 823d9a07e0
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 cc95bd6c8e
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 8cdac4cac0
remove engine pointer passing (#3556)
* some

* more

* more

* the last?!
2021-11-16 04:15:29 -05:00
Matthew Kennedy 145316c497
less macro, more c++ (#3549)
* less macro

* s
2021-11-15 12:44:40 +01:00
Andreika d917cc8cc2
[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 2ad4a9df1e
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 86e4664b2d dead idle FSIO 2021-08-12 18:28:55 -04:00
alxrMironov 7ebebd6922
Begin "vehicleSpeed" refactoring. Module switched to "FunctionalPointerSensor" class. #3106 #3107 #3108. (#3132)
* Add new sensor type "VehicleSpeed"

* Add "Vehicle speed" sensor to name list

* Add Vehicle speed sensor initialization with function pointer sensor.

* Add init_vehicle_speed_sensor.cpp to Makefile

* Replace dependencies from "getVehicleSpeed" to OOP-like "Sensor::get()"

* Add warning and TODO to "mock vehicle speed" call

* Replace get & mock "VehicleSpeed" methods in tests

* Remove #warning directive (cause error by current settings)

* Remove stray tab

* Remove explicitly type casting.

* Add "InitVehicleSpeedSensor" function declaration to init.h

* Add "VehicleSpeedSensor" initialization call into "InitNewSensors"

Co-authored-by: alxrMironov <330OMcorporative>
2021-08-12 22:16:51 +03:00
Andrey 8fe2d99254 unit test for vehicle_speed.cpp #3081 2021-08-03 19:48:24 -04:00
Matthew Kennedy b52d50bbf2
Use pch in lots of files (#3066)
* most engine.h

* most engine_configuration

* more

* more

* more

* more

* more

* moooooore

* ok I'm done for now

* oops
2021-07-26 01:05:17 -04:00
Matthew Kennedy 617c2886d9
adjust taper behavior (#3051)
* adjust taper behavior

* check that taper works in running state too
2021-07-24 16:12:07 -04:00
Matthew Kennedy 5bd3ae3aaa
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 992570f322
explicitly set mock vss to test (#2905) 2021-07-04 17:52:45 -04:00
Matthew Kennedy 007a390f2b
Gate closed loop idle on road speed (#2901)
* implement

* test

* b

* config
2021-07-04 09:35:12 -04:00
Matthew Kennedy a4973a6f3d
fan/AC idle improvements (#2818)
* fan 2 open loop bump

* we had an AC target bump all this time?!

* format

* enable test

* I can't type
2021-06-15 17:30:35 -04:00
Matthew Kennedy 15d172ab08
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 f3c5ff6d54
idle fan/AC open loop bump (#2785)
* idle open loop ui section

* idle bump logic

* test fan/ac bump
2021-06-01 00:45:04 +03:00
Matthew Kennedy 39e4f70405
iac coast table (#2784) 2021-06-01 00:43:58 +03:00
Matthew Kennedy 7d773bfb1d
make the implementation match what the UI claims (#2779) 2021-05-31 07:37:02 -04:00
Matthew Kennedy a50f8e0077
Idle test that fails (#2781)
* make member func

* failing test
2021-05-31 06:18:15 -04:00
Matthew Kennedy 7a90692187
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 46583b2a19 Revert "Idle timing PID uses phase logic (#2156)"
This reverts commit 9634a803
2020-12-31 12:22:54 -05:00
Matthew Kennedy 9634a803f1
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 b9e96322c5
Idle refactor open loop (#2146)
* impl

* typo

* tests
2020-12-26 19:34:42 -05:00
Matthew Kennedy 542cb6a420
more testable idle logic (#2140)
* header

* test

* impl
2020-12-26 08:32:01 -05:00
Matthew Kennedy aeea50ada2
move target computation (#2091) 2020-12-17 17:46:51 -05:00
rusefillc a9e0bffbbd Starter seems to be engaged forever #1965 2020-11-18 22:47:40 -05:00
rusefillc e29911114a Starter seems to be engaged forever #1965 2020-11-18 20:01:02 -05:00