Commit Graph

294 Commits

Author SHA1 Message Date
Matthew Kennedy 6f228a1222
Adjust fuel qty for mode at the last minute (#554) 2025-02-14 10:05:45 -08:00
Matthew Kennedy 4165df2cb2 pull getInjectionModeDurationMultiplier out of base fuel math calc 2025-02-11 19:12:38 -08:00
Matthew Kennedy 9736b3b64f refactoring timing math 2024-12-24 02:48:26 -08:00
Matthew Kennedy 2efa469421 extract isCranking 2024-12-24 02:33:57 -08:00
Matthew Kennedy e25962569c don't inject VE table, prep #459 2024-09-25 00:49:16 -07:00
Matthew Kennedy fca72c4366 airmass takes a ptr for VE table 2024-09-25 00:27:40 -07:00
Matthew Kennedy 28fc04ee3d int rpm -> float rpm 2024-09-25 00:04:00 -07:00
Matthew Kennedy a329b3afca int rpm -> float rpm 2024-09-24 23:21:39 -07:00
Matthew Kennedy f3045af367 AE is engine module 2024-08-01 21:45:54 -07:00
Matthew Kennedy f086b94c81 cisnan -> std::isnan 2024-07-22 16:00:59 -07:00
Matthew Kennedy aa5ea293e6 cisnan -> std::isnan 2024-07-22 12:15:40 -07:00
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