Matthew Kennedy
9673ff01f3
implement staged injection ( #331 )
...
* output channel
* duty cycle etc math for second stage
* action_s utility
* basic enable switch
* staging fraction math
* implement staging logic
* wire up pins for second stage injectors
* staging UI
* Improve staged injection test, check scheduler arguments for other injection tests
* Stage 2 last pulse output channel, correct fuel consumption logic
* wall wet on the whole shot
* int vs size_t
* use a define instead of function so we get line numbers
* fix batch injection
* gauges
* bad test merge
* stub out secondary injector model
2024-01-07 15:22:39 -08:00
Matthew Kennedy
7b955cb1b3
fixAngle -> wrapAngle
2023-10-19 14:34:29 -07:00
Matthew Kennedy
5e01450fee
lock injection timing at high duty cycle to avoid skipped injections
2023-10-11 23:43:31 -07:00
Matthew Kennedy
e34a341b54
Always log normalized cylinder filling #249
2023-09-16 23:07:32 -07:00
Matthew Kennedy
8b5825adc4
indent formatting
2023-06-01 11:10:58 -07:00
Matthew Kennedy
b1b1ec7fdf
add postState flag to airmass model calls #107
2023-05-15 17:18:35 -07:00
Matthew Kennedy
a8fef36342
more log fields cleanup, lots of duplicates around fuel logic #98
2023-05-05 02:09:42 -07:00
Matthew Kennedy
d5f9479f28
ObdCode is enum class ( #77 )
...
* change ObdCode to enum class builds firmware
* test builds
* don't need this line at all
* can we go down to uint16_t?
2023-04-12 23:44:33 -07:00
Matthew Kennedy
f090a97b0b
remove specs_s struct, flatten config
2023-03-27 00:58:18 -07:00
Matthew Kennedy
6a05413e52
throttle model gets real max engine flow
2023-03-16 01:11:19 -07:00
Matthew Kennedy
00e1f2c9aa
renumber airmass mode enum to start at 0 ( #4986 )
...
* #1690
* hw ci tests
2023-01-21 08:12:27 +05:30
Andrey
e57403618a
totalFuel and totalIgnition correction gauges in Tunerstudio #4955
2023-01-14 15:33:17 -05:00
Andrey
badd5c6de8
totalFuel and totalIgnition correction gauges in Tunerstudio #4955
2023-01-14 05:36:25 -05:00
Andrey
00e8cc4262
test coverage for antilag #4920
...
fuel correction bugfix & test
2022-12-31 14:48:25 -05:00
rusefillc
c641ed6fdc
antilag and anti-lag #2403
...
TurboMarian is the ALS boss
2022-12-21 21:29:01 -05:00
rusefillc
6b7b05ac3a
antilag and anti-lag #2403
...
TurboMarian is the ALS boss
2022-12-21 20:24:39 -05:00
rusefillc
bdbc0bb2cf
antilag and anti-lag #2403
...
TurboMarian is the ALS boss
2022-12-21 19:46:31 -05:00
rusefillc
c729b10bbe
refactoring: constexpr fuel computer ( #4830 )
...
* refactoring: constexpr fuel computer
* refactoring: constexpr fuel computer
* refactoring: constexpr fuel computer
Co-authored-by: rusefillc <sdfsdfqsf2334234234>
2022-11-26 12:25:04 -05:00
rusefillc
d63f1af40d
without ValueProvider3D interface how do we mock? ( #4829 )
...
Co-authored-by: rusefillc <sdfsdfqsf2334234234>
2022-11-26 11:23:54 -05:00
rusefi
7d1b17d760
Add fuel adder to launch fix #4777
2022-11-13 20:23:19 -05:00
rusefillc
9dd78f785d
target lambda & afr log fields broken #4727
2022-11-02 22:25:16 -04:00
rusefillc
955a90327d
target lambda & afr log fields broken #4727
2022-11-02 22:17:00 -04:00
Andrey
e6b8b08853
refactoring: encapsulation
2022-09-28 22:42:08 -04:00
Andrey
76b74a85ba
tear down Engine god object #4511
...
just trying different things
2022-09-05 02:44:06 -04:00
Andrey
841cd4f962
refactoring: moving field
2022-09-05 00:53:05 -04:00
Andrey
93032c7c1f
tear down Engine god object #4511
...
just trying different things
2022-09-03 11:07:26 -04:00
Andrey
e56924310b
tear down Engine god object #4511
...
just trying different things
2022-09-03 07:44:24 -04:00
Andrey
51396deefa
dead
2022-09-03 06:59:00 -04:00
Matthew Kennedy
14b39b7b0a
unexpected contains information about why it failed ( #4393 )
...
* unexpected can contain information
* info printing
* sensors return appropriate error codes
* remove reliance on undefined behavior
* s
2022-07-28 10:04:28 +03:00
rusefillc
ab711cddc5
dead code
2022-05-15 10:13:47 -04:00
Andrey
03662e48c4
Move curves out of engineConfiguration in order to reduce RAM usage #4127
2022-05-01 23:43:43 -04:00
Matthew Kennedy
72dabf4057
Flex fuel cranking improvements ( #4043 )
...
* improve flex cranking
* call it e85
* don't re-warn
* warning name
* ui
2022-04-04 17:41:36 -04:00
Matthew Kennedy
c9e1b9a79a
flex cranking math ( #3791 )
...
* flex cranking math
* simplify
* s
* simplify
2022-02-01 20:53:14 -05:00
Matthew Kennedy
5978df2855
refactor decel fuel cut ( #3830 )
...
* refactor dfco
* s
* output channel logs dfco
* slightly cheeky comment
2022-01-23 19:44:41 -05:00
Andrey
a8e016f162
migrating to SensorType::Rpm API
2022-01-20 22:27:48 -05:00
Matthew Kennedy
78119b7df4
improve maf output channels and logging ( #3743 )
...
* maf channels
* s
* binary log
* if only I could type
* can
* instant RPM too
* s
* test
* graceful zero rpm
* test works
* float near
2022-01-12 15:41:35 -05:00
Matthew Kennedy
265f005239
hook up fuel trims ( #3715 )
...
* hook up fuel trims
* pass all the params
* store per-cylinder fuel mass directly
* main trigger callback only touches per-cylinder, no banks!
* test test test test
* move UI to happy land
* changelog
2022-01-01 02:19:59 -05:00
Matthew Kennedy
2ba4c7844d
simplify some table lookups ( #3692 )
...
* simplify
* expand interpolation test
2021-12-20 08:14:30 -05:00
Scott Smith
b3e0b28c75
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
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
racer-coder
55ac8d56b8
Fix the types in various fuel functions that actually refer to grams, not ms. ( #3458 )
2021-11-04 11:50:19 -04:00
rusefillc
1f1c538fc0
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
Matthew Kennedy
d3ec2b21d1
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
e3849b95d5
don't require EXTERN_ENGINE in every file ( #2969 )
...
* move enginePins
* no more extern engine
* uses
* more
* extern config too
* put this where it belongs
* include correct header
* merge
2021-07-16 18:13:33 -04:00
Matthew Kennedy
b68469822e
lua hooks for custom airmass model ( #2697 )
...
* lua airmass
* not const any more
* bad merge
* don't change the position of others
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-07-16 00:49:14 -04:00