Commit Graph

655 Commits

Author SHA1 Message Date
Andrey a2eef06a7e blend result returns blend parameter value for TS UI 2023-04-30 02:01:00 -04:00
Matthew Kennedy 2b6fd2315c blend result returns blend parameter value for TS UI
(cherry picked from commit 1bc1e76efa4a926cf4fe53e70d9f57f2f76d42c4)
2023-04-30 01:42:36 -04:00
GitHub gen-configs Action 4a3cd0008c Auto-generated configs and docs 2023-04-30 03:32:27 +00:00
Matthew Kennedy 757d12e97b convert throttle model to g/s instead of kg/s
(cherry picked from commit c47d7394c5ebf43c45869fcd44a30ec505e3e84e)
2023-04-29 23:23:00 -04:00
Matthew Kennedy b0d43e2c18 throttle model gets real max engine flow
(cherry picked from commit 6a05413e52a1282a66cb61827ef91476ef6bf864)
2023-04-29 23:22:05 -04:00
Matthew Kennedy 3df13d10af throttle model runs a little bit
(cherry picked from commit 2ba3881ba03b55eaad65c17d979975067e2df6c1)
2023-04-29 23:21:27 -04:00
GitHub gen-configs Action 673ac1fc98 Auto-generated configs and docs 2023-04-30 02:50:18 +00:00
Andrey 715627483b making matters green? 2023-04-29 22:48:49 -04:00
Andrey 91acff8ff8 sperry picking to make matters green 2023-04-29 22:20:07 -04:00
GitHub gen-configs Action 37c60a3267 Auto-generated configs and docs 2023-04-30 02:10:53 +00:00
Matthew Kennedy a0264f4740 stub throttle model generated
(cherry picked from commit 4e619c54947c76e4438a7cc950401ce06af94c35)
2023-04-29 20:15:49 -04:00
Matthew Kennedy 1a1372ffe9 throttle model tests
(cherry picked from commit d14d442157c76fb901ed3647ad5ecdcd3c9c79ad)
2023-04-29 19:29:13 -04:00
Matthew Kennedy a9dd5ee404 Throttle model #63
(cherry picked from commit 7ee63df142fc363c4ab927a5ba9078aab9bad70d)
2023-04-29 19:14:53 -04:00
Matthew Kennedy 25a3589edf pause closed loop fuel after cuts
(cherry picked from commit a861d76da613f0337f54400d8f5cb4e61ad15406)
2023-04-29 07:10:28 -04:00
Andrey 51d0f6e347 it's going to be painful 2023-04-29 00:44:00 -04:00
Matthew Kennedy 61e5b4b1ad change ObdCode to enum class builds firmware 2023-04-29 00:44:00 -04:00
Matthew Kennedy 01f7e4068d rename obd_code_e -> ObdCode
(cherry picked from commit d6534157a03d19bb2e8aeece301642c053a081d0)
2023-04-29 00:44:00 -04:00
Andrey f296e30fb5 it's going to be painful 2023-04-28 21:01:08 -04:00
Matthew Kennedy 2857e9527d remove specs_s struct, flatten config
(cherry picked from commit f090a97b0b7771dfe02e4b4bb9919d50a6a11ef5)
2023-04-28 20:59:11 -04:00
Andrey 588bf77492 wow we have two separate per-cylinder trims?! fix #5237
refactoring: bringing two offsets much closer together, no change in overall logic
2023-04-12 15:04:14 -04:00
rusefillc e1b4ed2a41 https://github.com/rusefi/rusefi/issues/5237
only renaming variable here
2023-04-12 11:49:11 -04:00
Andrey 0c1859b77e totalFuel and totalIgnition correction gauges in Tunerstudio #4955 2023-01-14 15:33:17 -05:00
rusefillc f82f604a3f ohhh we already have FO_1_2_3_4_5_6_7_8 2022-12-20 21:23:25 -05:00
rusefillc 4e61d92099 FO_1_2_3_4_5_6_7_8 2022-12-20 21:13:33 -05:00
rusefillc 18165e4b02 guards 2022-12-17 14:36:27 -05:00
rusefillc 57ad9b7311 random getOrZero clean-up 2022-12-14 19:48:07 -05:00
rusefillc 55062b1ef6
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 23698be5f8
without ValueProvider3D interface how do we mock? (#4829)
Co-authored-by: rusefillc <sdfsdfqsf2334234234>
2022-11-26 11:23:54 -05:00
Matthew Kennedy 5c50ad2db4
infer useOnlyRisingEdge by trigger type (#4621)
* most of the plumbing

* easy tests

* trigger types that are rise only

* configs

* change mode of various triggers

* vvt

* 898 test is now impossible 🥳

* s

* instant rpm test

* actually remove useOnlyRisingEdgeForTrigger

* remove vvtCamSensorUseRise

* s

* print

* one happy test

* another test

* happy testSomethingWeird

* happy testCamInput

* maybe fix it a different way

* better

* quad cam

* nb2 happy

* bad merge

* vvt test

* trigger.test1995FordInline6TriggerDecoder

* hellen gm e67

* changelog
2022-11-08 21:48:39 -05:00
rusefi ec77afeaa0 reducing ugly 2022-11-06 20:47:57 -05:00
rusefillc fd86dc2b0f minor trigger refactoring 2022-11-05 22:30:08 -04:00
Andrey b57bf2903a minor trigger refactoring 2022-11-05 21:43:12 -04:00
Matthew Kennedy 2bc8fbce7d
VE blend tables (#4640)
* blendy ve too

* ui

* small optimizations

* save kinetis memory

* changelog
2022-10-19 06:42:22 -04:00
Matthew Kennedy dfe1b47b4d
remove ignitionPin (#4608)
* remove ignitionPin

* now that's gone

* BMW test
2022-09-23 17:30:10 -04:00
rusefillc 9e7f36a5ca tear down Engine god object #4511 2022-09-15 21:28:27 -04:00
Andrey 82cda62bac inline method to reduce confusion 2022-09-14 01:34:52 -04:00
Andrey 6b0941b8ed inline method to reduce confusion 2022-09-14 01:24:19 -04:00
Andrey b536651a24 some dead nonsense 2022-09-14 01:15:26 -04:00
Andrey fedfd42989 removing dead parameter 2022-09-14 01:13:57 -04:00
Andrey e522c7d149 tear down Engine god object #4511
just trying different things
2022-09-14 01:09:32 -04:00
Andrey G 91d4844e38
time routines refactor (#4563)
* Extract time helpers from engine_controller_misc to efitime.cpp

* Rename currentTimeMillis() to getTimeNowMs()

We have getTimeNowNt(), getTimeNowUs(), currentTimeMillis() and getTimeNowSeconds()
Align a bit.

find . -type f -name '*.c*' -exec sed -i 's/currentTimeMillis/getTimeNowMs/g' {} \;

* Rename getTimeNowSeconds() to getTimeNowS()

To align with Nt, Us, Ms versions.

* Some comments about getTimeNowLowerNt()
2022-09-11 13:06:03 -04:00
Andrey 4934d76d88 tear down Engine god object #4511
just trying different things
2022-09-05 04:24:17 -04:00
Andrey d329f8ae10 tear down Engine god object #4511
just trying different things
2022-09-03 07:44:24 -04:00
rusefillc 25f4ebbc01
moving state into specific class (#4520)
* moving state into specific class

* moving state into specific class
2022-09-02 14:38:03 -04:00
Andrey c63fb29aaf refactoring: reducing outputChannels copy 2022-09-01 00:13:55 -04:00
rusefillc d7802e6373 dead initial value? 2022-07-30 16:07:40 -04:00
Matthew Kennedy 483915f20f
correct behavior in case of failed CLT but not failed IAT (#4406) 2022-07-30 15:44:54 -04:00
Matthew Kennedy 932f5e1f30
cam/crank sync improvements (#4152)
* clarify getOperationMode

* wait for phase synchronize to transition to sequential mode

* one test

* encapsulate vvtSyncCounter

* test

* Add option to stop VVT sync above some RPM

* getOrZero

* Revert "synchronized Phase handling improvements fix #4099"

This reverts commit 32d46d1f09.

* Revert "m_hasSynchronizedSymmetrical handling improvements #4099"

This reverts commit d5e131b1d0.

* remove synchronizedPhase

* only crank needs this

* changelog

* needsDisambiguation()

* test

* s

* bad merge

* put the timer back

* s

* s

* changelog

* test for new behavior

* correct parameter order

* spelling

* s

* s

* s

* tests merge happy

* bad merge

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2022-06-09 17:21:22 -04:00
Matthew Kennedy 66fffee321
More trigger encapsulation (#4207)
* trigger decoder returns a result

* TriggerFormDetails

* s

* don't reach out and touch the engine
2022-05-29 13:49:00 -04:00
rusefillc 7df4f36f88 Revert "Ford Mustang firing order 1-5-4-2-6-3-7-8 fix #4150"
This reverts commit 76243afa9c.
2022-05-08 07:10:54 -04:00
rusefillc 76243afa9c Ford Mustang firing order 1-5-4-2-6-3-7-8 fix #4150 2022-05-08 07:07:34 -04:00
Andrey e62877964a Move curves out of engineConfiguration in order to reduce RAM usage #4127 2022-05-01 23:43:43 -04:00
Matthew Kennedy 38213bbc00
more missing autoscale (#4112)
* autoscale m_config->timeConstant

* min/max afr

* more

* dwell voltage

* closed loop fuel

* knock

* map estimate

* applyNonlinearBelowPulse

* fix

* add a test while we're at it for un-covered code

* test fallback MAP since we touched that

* always compute fallback MAP even if sensor is OK
2022-04-28 08:16:02 -04:00
rusefillc 0b21ddce9c random progress 2022-04-16 16:39:52 -04:00
rusefillc 3c7eb93fe1 steps towards ignition live data 2022-04-13 16:48:25 -04:00
Matthew Kennedy 7d657106d7
warning cleanup (#4020) 2022-03-22 16:53:24 -04:00
Matthew Kennedy 40e96a03d5
table for tcharge interpolation (#3855)
* extract getTChargeCoefficient

* new table
2022-01-30 08:45:11 -05:00
Matthew Kennedy 28950acf3e
disable fuel trim shortly after DFCO (#3847)
* vss based dfco

* fix digits while we're here

* fix some other digits for fun

* don't use custom assert

* simplify test

* less than or equal, test vss behavior

* disable closed loop fuel after dfco1

* I can't type

* correct comparison helps

* poke
2022-01-28 21:35:23 -05:00
Andrey 3b6ecb432b migrating to SensorType::Rpm API 2022-01-20 22:38:08 -05:00
rusefillc 71b2dc762a https://en.wikipedia.org/wiki/Pi 2022-01-14 21:23:27 -05:00
Matthew Kennedy 7d341cfc9d
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
rusefillc d9175696a2 mk files refactoring 2022-01-06 21:40:48 -05:00
Matthew Kennedy 3a4a0ba18d
simplify some table lookups (#3692)
* simplify

* expand interpolation test
2021-12-20 08:14:30 -05:00
Matthew Kennedy 0810198185
clean up timing table defaults (#3705)
* less crazy configs

* cleanup

* make that test happy
2021-12-20 08:02:38 -05:00
Andrey 76768d6ac4 2 byte table axis #3045
fixing build
2021-12-20 01:50:23 -05:00
rusefillc 66f82a0cdb 2 byte table axis #3045 2021-12-19 22:43:10 -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
Matthew Kennedy 555a8d5f43
simplify cylinder phasing (#3650) 2021-12-05 10:46:35 -05:00
rusefillc fda7a3a775 Engine phase wrap around in log #3645
refactoring & docs
2021-12-02 17:06:20 -05:00
rusefillc de0680209b why so many channels are hidden in debug ? #3614 2021-11-29 10:15:28 -05:00
Matthew Kennedy 3334a6963c
oh my god we've had no asserts (#3595) 2021-11-22 17:52:03 -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
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
Matthew Kennedy 8cdac4cac0
remove engine pointer passing (#3556)
* some

* more

* more

* the last?!
2021-11-16 04:15:29 -05:00
rusefillc 6d0dfe4542 refactoring - magic constant bad 2021-11-07 00:09:17 -04:00
rusefi 475edecee5 this warning should be promoted to fatal! 2021-10-26 17:10:53 -04:00
rusefillc d84cf5eea8 splitting accelerations 2021-10-16 20:16:40 -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
Matthew Kennedy 9797d25b7c
getOrZero (#3319) 2021-10-05 19:59:07 -04:00
rusefillc b4884498cb OBD error renames 2021-10-03 01:30:42 -04:00
rusefillc c4ff0cd19d more firing orders! 2021-09-18 00:18:06 -04:00
Matthew Kennedy 520d81d75c
Dwell voltage correction (#3234)
* cfg + impl

* ui

* value_or

* changelog

* fix
2021-09-15 08:07:33 -04:00
rusefillc 6b6c8abfc4 firing order for some 911 2021-08-24 07:31:55 -04:00
rusefillc 24ff3a5cd5 firing order for some 911 2021-08-24 07:28:56 -04:00
Matthew Kennedy d24f1462e2
even more pch (#3112)
* s

* more

* s

* f7
2021-08-04 19:30:52 -04:00
Matthew Kennedy 25414ebdad
yet more pch (#3068)
* big pch energy

* put back ramdisk stub

* tests are happy

* h743 nucleo

* kinetis

* I love deleting code!

* make stepper happy

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-08-03 22:05:01 -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
Andrey 643aa672e4 VH41DE (Japaneese Y32 Variant) firing order 2021-07-20 21:16:51 -04:00
Matthew Kennedy 2ce7777865
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
Andrey 3d0ba4af5c VAG canned tunes 2021-07-08 20:42:35 -04:00
Matthew Kennedy 9377a01aec
store cylinder count as plain number (#2915)
* update test framework

* eh

* hey look it's fewer warnings

* unwind

* fix

* config

* configs

* logic

* even java had some

* no need to be a typedef

* paste in actual cylinder count
2021-07-07 08:31:05 -04:00
Matthew Kennedy 2eb0b2a631
Unified cyl count macro (#2914)
* update test framework

* eh

* hey look it's fewer warnings

* unwind

* fix

* config

* configs

* logic

* even java had some

* console needs help
2021-07-06 20:14:08 -04:00
Matthew Kennedy 7d2057e74a
remove cranking dwell angle (#2814)
* config & impl

* settings

* engines & boards

* this test doesn't do anything interesting
2021-06-13 07:52:07 -04:00
Matthew Kennedy 3ef969d743
warnings & assorted cleanup (#2793)
* lua hook

* validateBuffer

* tables

* simplify fsio table

* test

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-06-03 14:30:25 -04:00
Matthew Kennedy 981e8f5047
defaults cleanup: base engine & fuel (#2790)
* build

* fuel and base

* fix build

* cleanup

* extern

* tps/tps

* alternator

* tps

* iat timing

* cranking RPM

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-06-03 00:50:07 +03:00
Matthew Kennedy de7879b6e4
convert a table to scaled_channel (#2724)
* scaled VE table

* use setTable

* efi::clear

* ratio -> struct
2021-05-20 20:00:32 -04:00
Andrey a762853d3b refactoring magic constant STOICH_RATIO 2021-05-20 02:39:20 -04:00
Matthew Kennedy da6518dcb1
remove deprecated getEngineLoadT (#2676)
* remove

* few more
2021-05-10 08:30:41 -04:00
Matthew Kennedy 4474f9f1c2
Maf in sensor model (#2672)
* init

* consumers

* hasMafSensor

* consumers

* remove

* remove

* s

* guard

* tiny bit of ram

* ram
2021-05-09 20:59:06 -04:00
Matthew Kennedy ad71016862
rip the bandaid: find-replace most of scheduleMsg (#2572)
* biiiig find replace

* more trivial find replace

* pwm

* almost all of them

* few more

* gpio

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-04-21 12:53:13 -04:00