Commit Graph

157 Commits

Author SHA1 Message Date
Andrey 6e8d248408 brutal encapsulation 2022-09-07 19:37:11 -04:00
Andrey 173ceae146 extracting prime_injection 2022-09-07 16:27:56 -04:00
Andrey 2d9dbbd6b8 extracting prime_injection 2022-09-07 16:25:50 -04:00
Andrey 197454ac34 tear down Engine god object #4511
just trying different things
2022-09-07 15:38:15 -04:00
rusefillc a7af8ecec9
Engine Sniffer into TS data logs fix #4535 (#4537) 2022-09-05 19:49:27 -04:00
Andrey 13c42ead92 tear down Engine god object #4511
just trying different things
2022-09-05 04:28:47 -04:00
Andrey 4934d76d88 tear down Engine god object #4511
just trying different things
2022-09-05 04:24:17 -04:00
Andrey c1b218b772 refactoring: let's use different names for different things 2022-09-05 01:16:24 -04:00
Andrey 0ed576031e refactoring: moving method closer to usage 2022-09-05 00:32:36 -04:00
Andrey e240ac84d3 refactoring: reducing outputChannels copy 2022-09-01 01:06:49 -04:00
Andrey 705dda095e dead code 2022-09-01 00:23:33 -04:00
Andrey da66fa055c refactoring: enum name clean-up 2022-09-01 00:23:33 -04:00
Andrey 9f4f85a097 let spark deal with spark limpManager 2022-08-31 23:59:40 -04:00
Andrey 28d797d5c2 moving confusion further away from fuel control 2022-08-31 23:59:40 -04:00
Andrey 6d3a6dc2f8 readability 2022-08-31 23:29:47 -04:00
Andrey 4cbaddcc60 less code is better 2022-08-31 23:14:20 -04:00
Andrey 039f70b18e unused parameter 2022-08-31 22:59:05 -04:00
Andrey fef406a5a6 english do you speak it 2022-08-31 22:56:38 -04:00
Andrey c8e821ce16 dead 2022-08-31 22:45:35 -04:00
Andrey a4805dace0 dead console command and minor refactoring 2022-08-31 22:41:58 -04:00
Andrey cecc5a9d6e https://github.com/rusefi/hellen154hyundai/issues/60
extra logging
2022-08-25 19:58:10 -04:00
rusefillc 5d2096f906 require full sync for odd cylinder count #4478 2022-08-23 22:58:33 -04:00
Matthew Kennedy c0f290b922
Injector scheduled by angle, not tooth index (#4208)
* trigger decoder returns a result

* TriggerFormDetails

* s

* don't reach out and touch the engine

* injection doesn't care about teeth

* fix up existing tests

* oh look, we can actually test this logic now without trying to depend on trigger shape!!!

* fix a real bug

* simplify
2022-06-24 17:43:23 -04:00
Matthew Kennedy 720c463ffb
trigger decoder returns a result (#4206) 2022-05-28 09:01:45 -04:00
Matthew Kennedy fe77f5127e
12 tooth crank mode (#4179)
* 12 tooth crank

* comment

* s

* rusefi config
2022-05-17 21:38:24 -04:00
rusefillc 7ca32951ec An option to disable semi-random ignition fix #4151 2022-05-08 09:16:43 -04:00
Matthew Kennedy bc6a87cadc
allow enum_class in rusefi_hw_enums.h (#4104)
* make things c++ friendly

* install various canaries in coal mines

* using is much clearer than typedef

* fixing builds

* lps25

* trigger includes were a mess

* c -> c++ cleanup

* os util

* why did so many include os_util.h?

* fwd declare

* cypress/kinetis

* s

* eg33 happy

* happy sim

* cypress usb

* pch

* cypress

* doesn't need to include all that

* h7
2022-04-25 20:38:16 -04:00
rusefillc 71275e841b
m_hasSynchronizedSymmetrical handling improvements #4099 (#4101) 2022-04-23 19:45:29 -04:00
rusefillc 6b5747d4c8 refactoring: method rename 2022-04-02 21:01:29 -04:00
Matthew Kennedy f742ae8b7e
limp mangaer handles more stuff (#3983) 2022-03-20 09:28:17 -04:00
Benas Brazdziunas 2035c2fa7f
Launch fuel and spark cut issue (#3988)
* Launch fual and spark cut issue

* moved launch cuts to limp_manager

* Applied recomendations

* Auto-generated configs and docs

* Added recomendations

* Auto-generated configs and docs

Co-authored-by: GitHub build-firmware Action <action@github.com>
Co-authored-by: Benas <bbrazdziunas@gavea.co.uk>
2022-03-11 09:27:42 -05:00
Matthew Kennedy b5232ab5e6
decouple TPS accel enrichment from trigger (#3825)
* move call site

* move thresholding out of fast path

* adjust config

* test
2022-01-23 15:31:39 -05:00
Andrey 365f2f24f0 Good news RPM is now float
open question if I've affected performance negativelly or not.
2022-01-21 00:56:13 -05:00
Andrey 33df88d3f7 fixing NOISY_RPM handling via Sensor framework 2022-01-21 00:21:45 -05:00
Andrey cda2b711cf migrating to SensorType::Rpm API 2022-01-20 23:32:59 -05:00
rusefillc 177a5faa63 limp ClearReason 2022-01-08 22:13:20 -05:00
Matthew Kennedy ab3e3ac83f
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 b3de217c1b
adjustment to #3722 (#3723)
* s

* behold, another bug a test caught

* test

* test generates usable trigger pattern so it works correctly

* comment

* don't need that
2021-12-31 01:21:21 -05:00
Matthew Kennedy c3b712aa3b
remove vvtSyncTimeNt (#3722)
* s

* poke

* poke again for science

* kick for science

* kick

* kick

* comment kick

* s

* don't try to compare the array decay pointer to 0 (!)

* collateral damage

* adjust miata sync

* reset trigger states correctly on engine stop

* s

* check synchronized bit

* now we don't need it at all?!

* and *NOT* synced

* start VVT sync earlier
2021-12-28 00:00:26 -05:00
Matthew Kennedy 95ad75318d
improved noFiringUntilVvtSync logic (#3696)
* s

* poke

* poke again for science

* kick for science

* kick

* kick

* comment kick

* s

* don't try to compare the array decay pointer to 0 (!)

* collateral damage

* adjust miata sync

* reset trigger states correctly on engine stop

* s

* nissan MR too
2021-12-27 12:09:38 -05:00
rusefillc 82c061a8e0 MAP phase sensing #3544 2021-12-16 21:11:29 -05:00
Matthew Kennedy 4148ee76bf
smarter priming logic (#3674)
* ignition controller detects rising edge on voltage

* update test

* comment

* ignore negative transients

* tweak

* test

* priming happens on ignition-on

* priming has its own scheduling

* config & UI

* dead config

* implementation

* look, the test caught a bug

* keep the watchdog happy

* bad merge

* changelog

* easier to read the test

* test naming
2021-12-08 16:20:19 -05:00
Matthew Kennedy 2050580a16
prime upon ignition voltage, not on power on (#3662)
* ignition controller detects rising edge on voltage

* update test

* comment

* ignore negative transients

* tweak

* test

* priming happens on ignition-on

* priming has its own scheduling

* test

* dead adjacent line of code
2021-12-08 07:26:49 -05:00
Matthew Kennedy 3a95e86112
calculate per-cylinder ignition timing (#3652)
* simplify cylinder phasing

* per cylinder timing

* s

* s

* s

* why was there a divide by 2?
2021-12-06 21:19:37 -05:00
Andrey 48ed80ffb9 MAP phase sensing #3544 2021-11-24 23:06:52 -05:00
Matthew Kennedy 3334a6963c
oh my god we've had no asserts (#3595) 2021-11-22 17:52:03 -05:00
Matthew Kennedy d40ca0f581
fuel pump doesn't use fsio (#3576)
* fuel pump

* s

* call correct callback

* more dead

* test adjustment

* don't overflow

* don't need separate function

* java

* give it a name

* generated

* generated

* add to generate script

* import *

* this is so cheap we don't need a flag
2021-11-19 22:23:12 -05:00
Scott Smith 18c27a6e9c
Separate out scheduleOrQueue into it's own standalone scheduler. (#3573)
It's a large enough entity that it shouldn't be buried in ignition logic.
2021-11-18 14:27:21 -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 69d36dad6e
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