Commit Graph

160 Commits

Author SHA1 Message Date
Matthew Kennedy 6a202f40dd optional after start fuel mutliplier table 2024-09-14 23:51:31 -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 d565951b10 tcharge uses a timer instead of hand spun 2024-04-25 16:26:37 -07:00
Matthew Kennedy 84faa1b6ee
staged injection uses AFR table Y axis (#413) 2024-04-17 00:52:10 -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 ec676a1a83 shadow avoidance 2023-11-01 14:08:24 -07:00
Matthew Kennedy ce2198270e avoid some misc shadowing 2023-11-01 13:58:39 -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 4b354f047b
trip odometer (#260) 2023-09-25 13:16:17 -07:00
Matthew Kennedy a63930a5c4 lambda monitor wiring 2023-06-28 23:49:50 -07:00
Matthew Kennedy 41339c5418 change to log base timing 2023-05-31 11:22:41 -07:00
Matthew Kennedy d0c645bad5 Add gego channel to make VE analyze happy #82 2023-05-04 14:22:36 -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 d6534157a0 rename obd_code_e -> ObdCode 2023-04-11 16:32:47 -07:00
Matthew Kennedy f090a97b0b remove specs_s struct, flatten config 2023-03-27 00:58:18 -07:00
Matthew Kennedy bc0444acdb switch to use gitversion.h 2023-02-22 15:39:27 -08:00
Matthew Kennedy 959f14fae6 more dead 2023-02-21 11:54:24 -08:00
Andrey 3d096b2ac1 totalFuel and totalIgnition correction gauges in Tunerstudio #4955 2023-01-15 08:26:38 -05:00
Andrey df2b073c49 totalFuel and totalIgnition correction gauges in Tunerstudio #4955 2023-01-14 23:21:23 -05:00
Andrey e57403618a totalFuel and totalIgnition correction gauges in Tunerstudio #4955 2023-01-14 15:33:17 -05:00
rusefillc 886ec74442 antilag and anti-lag #2403
TurboMarian is the ALS boss
2022-12-21 20:12:00 -05:00
TurboMarian 428b887cb4 LUA FuelAdd update
(cherry picked from commit a54cdbb0771b1a48aa8e24bffbaf554e10d55f3a)
2022-12-16 20:22:48 -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
Matthew Kennedy 7b47e77e58 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
Matthew Kennedy 58a5569006 require ignition on for firing (#4628)
* require ignition on for firing

* too much havoc for a unit test

* patch up references

* last one

* fix changelog mangling

* fix the changelog template too

* bad merge

* fix the template again

* s

* fake battery voltage on hw ci

* ugh merge

* ugh merge
2022-10-04 20:36:03 -04:00
Andrey 25b6d39802 os_access.h dead? 2022-09-07 15:56:45 -04:00
Andrey ab3d92b995 tear down Engine god object #4511
just trying different things
2022-09-05 04:24:17 -04:00
Andrey 841cd4f962 refactoring: moving field 2022-09-05 00:53:05 -04:00
Andrey e56924310b tear down Engine god object #4511
just trying different things
2022-09-03 07:44:24 -04:00
Matthew Kennedy 6218edd040 allow logging multiple warnings at once (#4414)
* allow logging multiple warnings at once

* comment

* .Code

* Revert ".Code"

This reverts commit 2b986bd50035aeec051d11aafd83fdbc1694351c.

* add a better comparison operator instead of conversion

* dot code

* Revert "dot code"

This reverts commit 35f6ae1007c41e3b30ea129a324f33ab4205036d.

* force gcc-10 maybe?

* Revert "force gcc-10 maybe?"

This reverts commit 4ddf8bcefddd354ccdc1da682c5fff1e68d44273.

* vq

* dot code

* dead

* dot code

* return may be null

* static_vector; maybe cyclic_buffer is broken or wrong tool for the job?

* move static vector

* put cyclic buffer back how it was since we don't use it now
2022-08-17 01:12:25 -04:00
rusefillc ee455d23f8 [SECURITY] Cheap password protection against tune modification fix #4243
helping build
2022-07-30 14:33:11 -04:00
rusefillc e19b61aa5b [SECURITY] Cheap password protection against tune modification fix #4243 2022-07-30 12:23:53 -04:00
rusefillc 9e8bfe92d8 #4308 progress 2022-07-14 12:36:55 -04:00
rusefillc 129e4df5bf Uniform reset pattern for all Lua adjustments #4308
no progress only preparation
2022-06-30 20:07:27 -04:00
Matthew Kennedy 808287dc71 fix (#4254) 2022-06-17 21:20:47 -04:00
Matthew Kennedy 5f1801f9d6 trigger configuration refactoring for clarity (#4212)
* This field was ignored.

* move pad out

* gone

* make trigger configuration a little clearer

* even simpler!

* format

* test fix
2022-05-30 19:36:47 -04:00
Matthew Kennedy 8650686ab7 knock threshold table fix (#4077)
* fix knock threshold table

* defaults

* knock controller is engine module

* testable

* test builds

* knock tests work

* s

* format

* everyone loves changelogs
2022-04-18 08:03:16 -04:00
rusefillc 0ba512c925 logging of live data structs was: data points #3614
progress
2022-04-16 21:04:02 -04:00
rusefillc 089d7f5cd1 steps towards ignition live data 2022-04-13 16:48:25 -04:00
Matthew Kennedy 47b4ace4cb less dependence on that logger (#3884)
* less dependence on that logger

* comma

* refactor a bit, make it clear what this thing actually *does*

* static

* shrink the buffer a bit and make names useful

* dead util that's just subtraction lol
2022-02-09 06:53:16 -05:00
Matthew Kennedy 31c0afc79f remove mock adc (#3888)
* remove mock adc

* do these do /anything/?
2022-02-03 20:43:34 -05:00
Matthew Kennedy e95d8469c0 dead StartupFuelPumping (#3883)
* dead

* test

* dead config too
2022-02-03 08:01:21 -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 92cbba3256 migrating to SensorType::Rpm API 2022-01-20 22:42:13 -05:00
Andrey 5d6985f085 migrating to SensorType::Rpm API 2022-01-20 22:12:04 -05:00
Matthew Kennedy c2cc5c8cc7 cylinder ignition trim (#3709)
* cylinder ignition trim

* changelog

* changelog

* test

* move UI
2022-01-01 15:47:47 -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 c058698859 Nb2 crank sync special case (#3727)
* extract isSyncPoint

* test because why not

* check vvt resync nb2

* custom nb decoder

* test only resyncs once!

* good job valgrind, you found a bug!
2021-12-31 15:47:25 -05:00
Matthew Kennedy aa8584d89a 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