Commit Graph

204 Commits

Author SHA1 Message Date
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
Matthew Kennedy 83f8b168f6 indent formatting
(cherry picked from commit 8b5825adc46f5b626e0c8df1e00e468716c3daef)
2023-06-02 00:37:45 -04:00
Matthew Kennedy 361ae48f23 disable coasting state during the crank-to-run taper
(cherry picked from commit 5373d79d9231cc4c7523b6213ad0a004fba66ec1)
2023-05-29 19:50:51 -04:00
Matthew Kennedy effdbce4ca apparently we duplicated idle position, field renaming #98
(cherry picked from commit 304458961315f3f2dbf4cb93c15e6e73d0017d0e)
2023-05-04 21:26:40 -04:00
rusefillc d1eb6d897f docs 2023-01-26 02:02:26 -05:00
rusefillc 728db11c56 Alternator Duty Cycle Adder for AC Fan fix #4973 2023-01-24 10:29:08 -05:00
rusefillc 4e0eaf7e03 TurboMarian is the ALS boss 2022-12-17 19:39:36 -05:00
rusefillc 2b4d58005b guards 2022-12-17 14:43:51 -05:00
Andrey 77a3f5d795 trigger refactoring: instance RPM #4740 2022-11-06 11:56:18 -05: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
Andrey G cb7f592848
idle_state: rename useIacTableForCoasting -> isIacTableForCoasting (#4721) 2022-10-30 17:41:18 -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 016c9ecd4b
fix typo, move bit to idle state (#4484) 2022-08-25 20:26:12 -04:00
rusefillc 6d634e3c6a Idle air add via Lua fix #4465 2022-08-21 00:32:34 -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
rusefillc e715bcc01f actually let's remove the duplicates 2022-04-18 11:43:49 -04:00
rusefillc e59ae35196 unique field names 2022-04-18 11:11:57 -04:00
rusefillc 70e4d118ef very random progress 2022-04-16 17:04:35 -04:00
rusefillc c023056d2d very random progress 2022-04-16 16:49:59 -04:00
rusefillc e1235c4f2e Air Conditioning Improvements #4054 2022-04-09 00:26:52 -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 f1742c44ff
output channel tweaks (#4023)
* shuffle around output channels

* postState should take a ref

* s

* s

* patch input file

* limits

* accel bad bounds check

* units

* units

* Revert "accel bad bounds check"

This reverts commit b2bb493be331d5d2cf40b9ed01363a53182c883e.

* missed an autoscale
2022-03-24 08:58:55 -04:00
rusefillc 5f73d9bf7b JNI for test coverage #3965 2022-03-15 10:33:17 -04:00
Andrey e945bc4bc9 migrating to SensorType::Rpm API 2022-01-20 22:51:20 -05:00
rusefillc 3528befe13 live view is confused by conditional compilation #3773
ops
2022-01-11 14:24:53 -05:00
rusefillc 1bcb3e8033 live view is confused by conditional compilation fix #3773 2022-01-11 14:10:30 -05:00
rusefillc 699a5ef302 RE usability: live data for idle controller 2022-01-10 21:55:52 -05:00
rusefillc 9f97695f4c RE usability: live data for idle controller 2022-01-10 20:32:20 -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 6ee0a55eaf RE usability: live data for idle controller 2022-01-10 19:48:58 -05:00
Andrey G 77fa9929d0
Stepper direct push pull driver (#3751)
* Init DC motor through two brain_pin_e only

* idle: stepper: allow driving stepper through 4 output_pin_e
2022-01-07 11:38:48 -05:00
Matthew Kennedy 3a4a0ba18d
simplify some table lookups (#3692)
* simplify

* expand interpolation test
2021-12-20 08:14:30 -05:00
Andrey 940b04ab24 Let's always have TS structure so that unit tests can check values in outputChannels, kind of making outputChannels a god dump for state but whatever since Live View is coming 2021-12-07 20:18:47 -05:00
rusefillc 26997ab9e3 why so many channels are hidden in debug ? #3614 2021-11-29 01:02:40 -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 98040ad9af
Make the module API more concise. (#3571)
engineModules.get<FOO>(). becomes modules<FOO>()->

I believe the new API is more conducive to supporting arrays, by doing std::array<T, N> or
std::array<Mockable<T>, N>, with the support of a helper class.
2021-11-17 21:50:00 -05:00
Scott Smith 988aacdd91
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 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
Scott Smith 62daac73c7
Use Valgrind to detect unitialized variable references. (#3555)
* Use Valgrind to detect unitialized variable references.

Fix the edge cases that pop up

* Comment and disable Mac run
2021-11-15 23:42:23 -05:00
Matthew Kennedy 145316c497
less macro, more c++ (#3549)
* less macro

* s
2021-11-15 12:44:40 +01:00
rusefillc 2431fa79b3 refactoring - extracting idle state 2021-10-17 00:30:26 -04:00
rusefillc 4533ce4764 refactoring - extracting idle state 2021-10-16 23:55:29 -04:00
rusefillc ea87d9c9be Whatever we call it, no matter how we do it - we need live data / remote view into rusEFI actual state #3353
dead code
2021-10-14 15:17:09 -04:00