Commit Graph

2165 Commits

Author SHA1 Message Date
GitHub build-unit-tests Action d2c07806ae Trigger wheel definitions 2022-06-20 15:54:57 +00:00
GitHub build-unit-tests Action 784cbc0573 Trigger wheel definitions 2022-06-20 12:39:12 +00:00
Matthew Kennedy 27c98f70fe 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 e64c8cfccb.

* Revert "m_hasSynchronizedSymmetrical handling improvements #4099"

This reverts commit 5454b8f509.

* 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
GitHub build-unit-tests Action 32e15a6942 Trigger wheel definitions 2022-06-02 01:35:22 +00:00
Matthew Kennedy c2f61dc95f Remove third trigger channel (#4226)
* remove third trigger

* clean up the honda mess

* there was nothing novel about this engine config

* include

* missed a few

* s

* x

* changelog

* don't set the third trigger input

* don't redefine the same thing 3 times

* only two inputs!

* test
2022-06-01 21:24:20 -04:00
Matthew Kennedy 56e7acd869 Trigger cleanup init (#4222)
* extra parameter

* name decoders in constructor

* s
2022-06-01 00:55:34 -04:00
rusefillc 767790621f helping build 2022-05-31 10:45:32 -04:00
rusefillc 2c5419df23 heling build 2022-05-31 08:48:24 -04:00
GitHub build-unit-tests Action c71a293f90 Trigger wheel definitions 2022-05-31 02:50:12 +00:00
Matthew Kennedy 54c339c0a4 remove trigger duty cycle calculation (#4213)
* This field was ignored.

* move pad out

* gone

* make trigger configuration a little clearer

* even simpler!

* format

* test fix

* remove duty cycle thing
2022-05-30 22:39:57 -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 cf51533f45 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
GitHub build-unit-tests Action b4fbdd7aa7 Trigger wheel definitions 2022-05-24 19:05:09 +00:00
rusefillc 5d8f43789a spaces in JAVA_HOME usability 2022-05-24 14:42:42 -04:00
Matthew Kennedy 65db5aacaa Fix trigger error indicator (#4185)
* test and fix

* more shards!
2022-05-19 09:43:42 -04:00
GitHub build-unit-tests Action 9310aede26 Trigger wheel definitions 2022-05-18 03:24:52 +00:00
rusefillc a324d6ff09 reduce flash footprint by smarter code generation #4163 2022-05-16 00:00:47 -04:00
rusefillc 3c3689d2b3 Revert "Revert "reduce flash footprint by smarter code generation #4163""
This reverts commit eb650fe19f.
2022-05-15 15:15:06 -04:00
rusefillc eb650fe19f Revert "reduce flash footprint by smarter code generation #4163"
This reverts commit b88c155f7a.
2022-05-15 15:14:04 -04:00
rusefillc b88c155f7a reduce flash footprint by smarter code generation #4163 2022-05-15 12:05:38 -04:00
Andrey 90f0ae6057 reduce flash footprint by smarter code generation #4163 2022-05-15 10:07:17 -04:00
Andrey 009929fc20 altering technical debt 2022-05-15 10:07:17 -04:00
rusefillc d690544793 Timestamp Error scheduleByTimestampNt too far #3395
improving error message
2022-05-14 21:24:19 -04:00
Matthew Kennedy 76a15dd711 don't rely on triggerStateListener to detect trigger errors (#4164)
* Write proper TriggerDecoder tests

* Improve logic around sync loss

* these tests I understand

* these I sort of understand....

* the one error in the noiseless decoder is gone!
2022-05-13 18:48:26 -04:00
GitHub build-unit-tests Action 0fff9cde31 Trigger wheel definitions 2022-05-11 10:54:37 +00:00
Matthew Kennedy 4e54e66b88 Proper decoder testing (#4166)
* Write proper TriggerDecoder tests

* patch test for un-patched decoder
2022-05-11 06:14:45 -04:00
Matthew Kennedy b243d3fca0 TriggerState -> TriggerDecoder (#4157) 2022-05-10 11:41:39 +03:00
rusefillc 178721c809 Remove value copy from controller into outputChannels #4095 2022-05-09 06:12:17 -04:00
rusefillc b2771f9b44 Remove value copy from controller into outputChannels #4095 2022-05-08 08:50:27 -04:00
Matthew Kennedy e94738a2c8 support better wbo format (#4000)
* new format

* comment

* pr feedback

* heater duty

* extra

* comment

* test multi-accept logic

* s

* test new format

* this comment made no sense

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2022-05-07 02:19:51 -04:00
GitHub build-unit-tests Action 1b911ce7ce Trigger wheel definitions 2022-05-06 12:37:23 +00:00
Matthew Kennedy 997565ac22 Trigger gm 3 vs 5 (#4140)
* add parameter

* two modes

* add new mode to list

* format

* s

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2022-05-06 08:25:44 -04:00
Matthew Kennedy b66a226a76 Scaled channel ints (#4129)
* test that fails today

* Revert "int32 scaled_channel has float precision #4128"

This reverts commit eb82fbc162.

* fix the problem

* format

* x

* s
2022-05-02 15:20:02 -04:00
Andrey 7bd22b589d helping build 2022-05-02 06:30:06 -04:00
rusefillc 97a8fee3c9 helping build 2022-05-02 05:57:53 -04:00
Andrey 03662e48c4 Move curves out of engineConfiguration in order to reduce RAM usage #4127 2022-05-01 23:43:43 -04:00
rusefillc 06e6f90d29 Technical debt: ENUM_32_BITS #3874 2022-05-01 08:48:54 -04:00
rusefillc a0da677a1e this seems mostly dead? 2022-04-30 13:43:09 -04:00
rusefillc f341ce561e 2 byte pin index #4097 (#4102)
* 2 byte pin index #4097

* 2 byte pin index #4097

good time to defragment configuration

* 2 byte pin index #4097

new fancy way

* 2 byte pin index #4097

smart comment

Co-authored-by: rusefillc <sdfsdfqsf2334234234>
2022-04-29 19:35:31 -04:00
Matthew Kennedy 83caf1ea1b Brain pin is enum class (#4108)
* change most usages to Gpio::

* board configs

* engine configs etc

* isBrainPinValid, smart gpio

* generator

* generator

* generator

* connector yamls

* kinetis enums

* cypress txt

* kinetis config

* frankenso

* config generator

* actually do it for the others

* disable skips for pr ci

* fix tle8888

* misc

* weird cast from int

* needs this operator too

* this can be an unsigned subtract

* happy tests

* s

* kinetis isConfigurationChanged weirdness

* missed J/K

* cypress efifeatures

* build script mistake (!)

* mistake in smart gpio

* debounce

* eg33

* kinetis, so needy

* it's pretty green, we can skip these again
2022-04-28 17:32:39 -04:00
Matthew Kennedy 2d033df11b 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
Matthew Kennedy c3532b4635 fix vss/iss filter parameter validation (#4114)
* fix filter parameter validation

* use values that don't get clipped
2022-04-27 22:29:51 -04:00
rusefillc a0c8e8493d Remove value copy from controller into outputChannels #4095 2022-04-23 20:38:48 -04:00
rusefillc 1ce5be5629 m_hasSynchronizedSymmetrical handling improvements #4099 (#4101) 2022-04-23 19:45:29 -04:00
Andrey 1e83d52f97 m_hasSynchronizedSymmetrical handling improvements #4099 2022-04-23 19:03:59 -04:00
Andrey 435563ad51 m_hasSynchronizedSymmetrical handling improvements #4099 2022-04-23 18:46:12 -04:00
rusefillc e0e61f7f44 FasterEngineSpinUp should be enabled by default fix #4094 2022-04-23 09:51: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
Matthew Kennedy 75c7fb3b18 fragment refactoring (#4072)
* fragment refactoring

* jar

* jar?
2022-04-16 09:24:45 -04:00
rusefi b6483c2d8b steps towards better commands encapsulation 2022-04-14 01:44:35 -04:00
rusefillc 7ab25d135a logging of live data structs was: data points #3614
handling request past end of fragments
2022-04-13 23:31:32 -04:00
rusefillc cd080b159f logging of live data structs was: data points #3614
support for null fragments
2022-04-13 20:46:55 -04:00
rusefillc 089d7f5cd1 steps towards ignition live data 2022-04-13 16:48:25 -04:00
Matthew Kennedy e57a1b4f08 make the vss fliter parameter work again (#4056)
* vss has adjustable filter

* tooltip and validate

* s
2022-04-09 09:00:19 -04:00
Matthew Kennedy 7aedc7d029 gear detection validation (#4053)
* gear detection validation

* test validation because why not
2022-04-09 08:59:07 -04:00
Matthew Kennedy 88ff526764 Gear detection implementation (#4052)
* gear detect improvements

* ui

* ui for gear ratios

* ui

* output channel

* output channels etc

* implement gear detection

* name

* s

* status loop

* missing function

* ui tweaking

* s
2022-04-07 09:21:11 -04:00
Matthew Kennedy 405f7f3b43 Gear detection improvements (#4047)
* gear detect improvements

* ui

* ui for gear ratios

* ui
2022-04-06 16:15:58 -04:00
rusefillc 5cb1516ade JNI for test coverage #3965 2022-04-04 22:33:30 -04:00
Andrey b7cd7dbdb9 Extra Idle Air if Throttle is Pressed behavior #3940
only live data
2022-04-03 20:30:09 -04:00
GitHub build-unit-tests Action cbfdece739 Trigger wheel definitions 2022-04-03 22:10:40 +00:00
Andrey 5e0263d2f0 Proper cam speed labels in triggers #4021 2022-04-03 17:56:47 -04:00
GitHub build-unit-tests Action d60e2d662b Trigger wheel definitions 2022-04-03 16:42:45 +00:00
rusefillc bc08418280 Proper cam speed labels in triggers #4021 2022-04-03 12:22:47 -04:00
Matthew Kennedy fc4e6cbdb3 fix 4032 (#4034)
* fix 4032

* board defaults should not set these things
2022-04-03 06:58:25 -04:00
Andrey 20dbc1ff82 Trigger setup in TS is highly confusing: hide operation mode from users? #4031
WOW it works?!
2022-04-03 02:30:43 -04:00
Andrey 298ea5f8c0 Trigger setup in TS is highly confusing: hide operation mode from users? #4031 2022-04-03 02:21:37 -04:00
Andrey 3cacb94140 Trigger setup in TS is highly confusing: hide operation mode from users? #4031
progress: this way test is less fake!
2022-04-03 02:13:56 -04:00
Andrey 4adaf71e18 Trigger setup in TS is highly confusing: hide operation mode from users? #4031 2022-04-03 01:02:13 -04:00
Andrey b96c51874c Trigger setup in TS is highly confusing: hide operation mode from users? #4031 2022-04-03 00:34:18 -04:00
rusefillc 9ae96ea7e5 refactoring: method rename 2022-04-02 21:01:29 -04:00
GitHub build-unit-tests Action dd8c85e4fe Trigger wheel definitions 2022-04-02 23:28:57 +00:00
rusefillc 3dbee88f53 Refactoring, technical debt: export more of trigger attributes into triggers.txt file #2077 2022-04-02 19:08:22 -04:00
GitHub build-unit-tests Action 81e3a61696 Trigger wheel definitions 2022-04-02 19:26:13 +00:00
rusefillc f274922935 Refactoring, technical debt: export more of trigger attributes into triggers.txt file #2077 2022-04-01 22:05:25 -04:00
GitHub build-unit-tests Action 9b1d906c8b Trigger wheel definitions 2022-03-24 00:18:03 +00:00
GitHub build-unit-tests Action 9a4230d9cc Trigger wheel definitions 2022-03-22 10:45:51 +00:00
rusefillc b555d9e82b toothed previous time #4019 2022-03-21 20:41:09 -04:00
GitHub build-unit-tests Action 15cc6d4216 Trigger wheel definitions 2022-03-21 00:24:31 +00:00
GitHub build-unit-tests Action 9945733775 Trigger wheel definitions 2022-03-20 02:22:26 +00:00
GitHub build-unit-tests Action 9802b98450 Trigger wheel definitions 2022-03-20 00:11:47 +00:00
Andrey cc1c4620be Refactoring, technical debt: export more of trigger attributes into triggers.txt file #2077 2022-03-19 19:59:36 -04:00
GitHub build-unit-tests Action e71ed00888 Trigger wheel definitions 2022-03-19 23:45:58 +00:00
GitHub build-unit-tests Action cc2a6f4d12 Trigger wheel definitions 2022-03-19 21:05:36 +00:00
GitHub build-unit-tests Action f48260afbd Trigger wheel definitions 2022-03-19 20:14:32 +00:00
GitHub build-unit-tests Action 74462b9cdf Trigger wheel definitions 2022-03-19 16:35:49 +00:00
rusefillc 2bdee233ea JNI for test coverage #3965 2022-03-19 11:55:44 -04:00
Matthew Kennedy d01d24490b test AEM X-Series wideband protocol (#4002)
* break out acceptFrame, test CanListener

* test AEM xseries protocol

* tweaks

* tweaks

* maybe everyone compiles happily now
2022-03-15 15:52:50 -04:00
rusefillc e9625b3cd8 JNI for test coverage #3965 2022-03-15 13:57:40 -04:00
rusefillc 3e16b74bf1 JNI for test coverage #3965 2022-03-15 13:05:24 -04:00
rusefillc 07e6d14558 JNI for test coverage #3965 2022-03-15 11:09:54 -04:00
rusefillc f8f311bb87 gtest in library is hard (#3998)
* Revert "Revert "JNI for test coverage #3965""

This reverts commit d1df67b8d5.

* JNI for test coverage #3965

Co-authored-by: rusefillc <sdfsdfqsf2334234234>
2022-03-14 22:15:21 -04:00
GitHub build-unit-tests Action 044cd1f7bf Trigger wheel definitions 2022-03-15 00:55:36 +00:00
Matthew Kennedy e4fa4b29ca break out acceptFrame, test CanListener (#4001) 2022-03-14 19:09:01 -04:00
Matthew Kennedy 9d213b6584 things are happy without gtest (#3999)
* things are happy without gtest

* this is not a static lib
2022-03-14 15:00:02 -04:00
rusefillc 691be1cf2d spelling 2022-03-14 13:11:10 -04:00
rusefillc 311d00dfd7 JNI for test coverage #3965 2022-03-14 00:10:01 -04:00
rusefillc 8c2f6888d7 JNI for test coverage #3965 2022-03-13 21:36:25 -04:00
rusefillc d82985a467 JNI for test coverage #3965 2022-03-13 21:04:04 -04:00
rusefillc 65ff145a8d Jni engine (#3995)
* JNI for test coverage #3965

* JNI for test coverage #3965

* JNI for test coverage #3965
2022-03-13 20:03:49 -04:00
rusefillc e8a45742de JNI for test coverage #3965 2022-03-13 00:25:10 -05:00
rusefillc a3c5005a49 JNI for test coverage #3965 2022-03-13 00:06:26 -05:00
rusefillc 08029bce9b JNI for test coverage #3965 2022-03-13 00:01:16 -05:00
rusefillc ecac4bc6d9 JNI for test coverage #3965 2022-03-12 23:47:38 -05:00
Matthew Kennedy 0c6a369777 flash storage uses 32 bit CRC (#3984)
* better flash logic and warning message

* comment

* s

* ssssss

* simplify logic

* use 32 bit crc

* s

* don't test things that don't exist
2022-03-08 23:17:35 -05:00
rusefillc 121aedda31 JNI for test coverage #3965
strange work-around
2022-03-01 00:37:08 -05:00
rusefillc 2f9f3a5fc4 JNI for test coverage #3965
strange work-around
2022-03-01 00:34:39 -05:00
rusefillc 2dc7394ac7 JNI for test coverage #3965
strange work-around
2022-03-01 00:30:36 -05:00
rusefillc 02cfd6e6a2 JNI for test coverage #3965
strange work-around
2022-03-01 00:29:28 -05:00
rusefillc 223eb0dd16 JNI for test coverage #3965
strange work-around
2022-03-01 00:27:04 -05:00
rusefillc c993808626 JNI for test coverage #3965 2022-03-01 00:13:39 -05:00
rusefillc 1f005073d9 JNI for test coverage #3965 2022-02-28 12:54:33 -05:00
rusefillc 73dcd9abe0 JNI for test coverage #3965 2022-02-26 21:52:52 -05:00
rusefillc a073c341cd JNI for test coverage #3965
hello darwin
2022-02-26 21:02:34 -05:00
rusefillc 142b30a576 JNI for test coverage #3965 2022-02-26 21:02:34 -05:00
rusefillc ceb5acaefb JNI for test coverage #3965 2022-02-26 21:02:34 -05:00
rusefillc 382f30f18f JNI for test coverage #3965 2022-02-26 18:12:34 -05:00
rusefillc 1e413e6f4f JNI for test coverage #3965 2022-02-26 18:12:34 -05:00
Andrey G b160134b31 cli registry: rework this hell, add FFF and FFFFF (#3964)
* cli registry: rework this hell, add FFF and FFFFF

* kinetis: no nodefaultlib

* revert back token helpers

* cli_registery: argument parser: do not eat qoutes

* Unit test for FFF

* cli_registry: remove debug
2022-02-26 16:58:10 -05:00
rusefillc bb6b16ad24 one step back: helping master 2022-02-26 13:52:39 -05:00
rusefillc 901a180774 dead code: THUMB really does not apply here 2022-02-26 13:48:51 -05:00
rusefillc c978e947de JNI for test coverage #3965 2022-02-26 13:10:57 -05:00
rusefillc df02bad7d9 refactoring 2022-02-26 13:03:22 -05:00
rusefillc 8b9e421fd0 JNI for test coverage #3965 2022-02-26 12:51:50 -05:00
rusefillc 26b13ed510 BMW 6HP gatewy #3954 2022-02-22 23:13:32 -05:00
rusefillc fd1fb0fcef Revert "lua: TDD of enabling base lib"
This reverts commit ec97bf2cb5.
2022-02-22 20:50:38 -05:00
rusefillc ec97bf2cb5 lua: TDD of enabling base lib 2022-02-22 16:25:41 -05:00
rusefillc d9c574c666 BMW 6HP gatewy #3954 2022-02-22 15:35:50 -05:00
rusefillc af5b2bafb0 N73 2022-02-21 11:29:46 -05:00
rusefillc ee73f97050 N73 2022-02-19 20:46:04 -05: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
Andreika e6c705ece1 hellen_board_id + hellen-common.mk (#3885)
* Hellen_board_id

* move EXTI init before config load

* add NT2USF()

* Hellen_board_id unit-tests

* hellen-common.mk

* fix for older macos compiler
2022-02-03 11:24:31 -05:00
Matthew Kennedy e95d8469c0 dead StartupFuelPumping (#3883)
* dead

* test

* dead config too
2022-02-03 08:01:21 -05:00
Matthew Kennedy d1ea6d6386 test organization (#3882)
* organize actuators

* this test can be useful

* don't name things misc

* fewer tests called misc

* fewer tests called "big" (?)

* unnecessary
2022-02-02 16:36:35 -05:00
Matthew Kennedy 57525283ac Remove FSIO, byeeeeeeeee (#3865)
* vestigial config

* replace last functionality

* engine/board configs include

* files that didn't need to include this

* remove FSIO implementation

* stragglers

* random little bits

* s

* s

* ConfigDefinition

* jar

* s
2022-02-02 02:03:31 -05:00
Matthew Kennedy f82f4d08d6 Remove fsio part 2 (#3876)
* dead config stuff

* fsio state

* remove tests

* getEngineValue

* put part back
2022-02-02 00:49:44 -05:00
rusefillc a4cdf72734 Main relay shutdown rebase (#3880)
* aggregate

* main relay controller handles delayed shutoff

* main relay controller handles delayed shutdown

Co-authored-by: Matthew Kennedy <matthewkennedy@outlook.com>
Co-authored-by: rusefillc <sdfsdfqsf2334234234>
2022-02-02 00:45:11 -05:00
Matthew Kennedy 28b6cce9d9 Remove fsio part 1 (#3871)
* dead includes

* move last logic out of fsio

* dead functions
2022-02-01 15:42:04 -05:00
rusefillc 5c16186919 safer file name (#3861)
* safer file name

* safer file name

Co-authored-by: rusefillc <sdfsdfqsf2334234234>
2022-01-31 21:51:32 -05:00
GitHub build-unit-tests Action 7d5d1251aa Trigger wheel definitions 2022-01-31 23:31:07 +00:00
Matthew Kennedy 60b9ddeb1e vss based dfco (#3845)
* 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

* even better than comments are tooltips
2022-01-27 14:05:18 -05:00
Matthew Kennedy 50c31b78ae extract logic from wall wetting AE (#3848)
* extract logic

* extract interface

* explicitly test wall fuel
2022-01-27 07:45:50 -05:00
Matthew Kennedy 4804a736f0 vss and flex are filtered (#3839)
* vss and flex are filtered

* turbo

* freq sensor test
2022-01-26 17:33:04 -05:00
Matthew Kennedy 1a0682aa0e dfco checks driver throttle intent (#3832) 2022-01-24 14:26:39 -05:00
Matthew Kennedy b07127614b 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
Matthew Kennedy a1647fd66e baro fully in sensor model (#3829)
* consumers and api

* dead test

* baro uses sensor model

* remove old (copy of?) map lookup logic

* I guess we don't need FastInterpolation any more?

* don't double init analog input
2022-01-23 09:42:11 -05:00
Andrey 4e676e1a86 fixing NOISY_RPM handling via Sensor framework 2022-01-21 00:21:45 -05:00
Andrey 014ea2b78a migrating to SensorType::Rpm API 2022-01-20 23:54:52 -05:00
Andrey 970f81c5b3 migrating to SensorType::Rpm API 2022-01-20 23:43:18 -05:00
Andrey 5f3324cd6b migrating to SensorType::Rpm API 2022-01-20 23:32:59 -05:00
Andrey 5353d13d96 migrating to SensorType::Rpm API 2022-01-20 23:19:48 -05:00
Andrey 670bd91658 migrating to SensorType::Rpm API 2022-01-20 23:03:45 -05:00
Andrey f7f6a31530 migrating to SensorType::Rpm API 2022-01-20 22:58:12 -05:00
Andrey 37e700f8bd migrating to SensorType::Rpm API 2022-01-20 22:51:20 -05:00
Andrey 779e2fcbc5 migrating to SensorType::Rpm API 2022-01-20 22:44:59 -05:00
Andrey 92cbba3256 migrating to SensorType::Rpm API 2022-01-20 22:42:13 -05:00
Andrey adb00d4255 migrating to SensorType::Rpm API 2022-01-20 22:40:15 -05:00
Andrey e1f1f28045 migrating to SensorType::Rpm API 2022-01-20 22:31:07 -05:00
Andrey a168a94628 migrating to SensorType::Rpm API 2022-01-20 22:26:05 -05:00
Andrey 72ae8dd4a1 migrating to SensorType::Rpm API 2022-01-20 22:22:52 -05:00
Andrey 5d6985f085 migrating to SensorType::Rpm API 2022-01-20 22:12:04 -05:00
Andrey 3a6597464f migrating to SensorType::Rpm API 2022-01-20 22:04:45 -05:00
Andrey c27ed2525f what's the difference between setRpmValue and assignRpmValue #3815
refactoring
2022-01-20 21:57:27 -05:00
Matthew Kennedy 6fc4503ee2 XY Idle VE Table (#3781)
* config & ui

* implement

* test idle VE switching behavior

* use the interface where we can

* s

* re-bump flash version
2022-01-20 14:08:54 -05:00
GitHub build-unit-tests Action ad6251b5b3 Trigger wheel definitions 2022-01-20 02:18:29 +00:00
David Holdeman 38c1aaef93 use -C flag (#3811) 2022-01-18 19:25:59 -05:00
Andrey eb5206dada Remove legacy check fix #3808 2022-01-18 16:01:27 -05:00
Andrey b927134b0f https://rusefi.com/forum/viewtopic.php?p=44100#p44100 2022-01-18 10:24:08 -05:00
rusefillc 60e8eaf290 gcov coverage seems stale #3805 2022-01-18 08:35:37 -05:00
rusefillc f1862b9cad https://en.wikipedia.org/wiki/Pi 2022-01-14 21:51:03 -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
rusefillc dd4950f850 Code style for methods with zero arguments #3535 2022-01-11 22:40:52 -05:00
Matthew Kennedy cb368580a6 don't start boost pwm unnecessarily (#3767)
* don't start boost pwm unnecessarily

* test
2022-01-11 20:47:50 -05:00
rusefillc 5c68f86a0d RE usability: live data for idle controller 2022-01-10 21:55:52 -05:00
rusefillc 5eaabf5eb6 RE usability: live data for idle controller
static bad, class fields better
2022-01-10 20:12:11 -05:00
rusefi 53b118d54e we can live without this test 2022-01-08 20:34:31 -05:00
rusefillc 0335802d7e mk files refactoring
saving build
2022-01-06 22:19:00 -05:00
rusefillc d447e34344 mk files refactoring 2022-01-06 21:48:48 -05:00
rusefillc 47f0423b73 mk files refactoring 2022-01-06 20:32:39 -05:00
rusefillc 1955c5a3c2 mk files refactoring 2022-01-06 20:06:31 -05:00
rusefillc 433ff5c62e Live Data progress 2022-01-06 19:02:35 -05:00
Andrey 5e9fcca6f9 Live Data progress 2022-01-05 20:41:51 -05:00
Andrey 6c1b363d37 Live Data progress 2022-01-05 20:15:23 -05:00
rusefillc 5737590d94 itoa unit test, not a very detailed one 2022-01-03 03:31:57 -05:00
Matthew Kennedy 4627bace31 Improve NA/NB miata sync parameters (#3730)
* NA sync parameters

* NB vvt pattern too

* zach's car says tighten the gap

* look at that, we sync one cycle sooner!
2022-01-01 21:39: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
rusefillc 213c22fde3 GDI Epic #1448
live view
2021-12-31 15:28:24 -05:00
Matthew Kennedy d90d6705cf 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 041a3e12a3 extract isSyncPoint function (#3726)
* extract isSyncPoint

* test because why not

* check vvt resync nb2

* clean up noise from test case

* clarify and comment
2021-12-30 11:39:04 -05:00
rusefillc e525bf06a7 E65 2021-12-29 00:50:17 -05:00
Andrey ea8e8fcc4b extract method 2021-12-27 21:09:41 -05:00
Andrey 89ceae63ba E65 2021-12-26 14:48:00 -05:00
rusefillc 917c13ef50 docs 2021-12-26 13:41:10 -05:00
rusefillc 98423f2046 live data 2021-12-26 13:00:17 -05:00
rusefillc 774e452738 E65 2021-12-24 17:35:27 -05:00
Andrey aedf984089 E65 2021-12-24 16:58:12 -05:00
Andrey f1705e83a9 E65 2021-12-24 16:56:17 -05:00
Andrey 1bcc0c9c92 E65 2021-12-24 16:53:24 -05:00
Andrey 436dec6df5 refactoring 2021-12-24 16:51:31 -05:00
Matthew Kennedy 5642ef07be Autoscale all the things! (#3713)
* Map3D accepts any scaled_channel type

* consistency

* reinstate test

* fix ratio

* throttle, boost, gppwm

* scale ignition and VE

* tests
2021-12-22 08:09:41 -05:00
Matthew Kennedy 0f133f88a1 Map3D accepts any scaled_channel type (#3712)
* Map3D accepts any scaled_channel type

* consistency

* reinstate test

* fix ratio
2021-12-21 18:52:46 -05:00
Andrey 1fc31cd565 Map3D needs some changes to allow autoscale RPM bin #3707 2021-12-21 16:04:16 -05:00
Matthew Kennedy f2312facd6 tables support non-integer-scaled scaled_channel (#3708)
* support dividers

* float

* format
2021-12-21 00:59:07 -05:00
Matthew Kennedy 2ba4c7844d simplify some table lookups (#3692)
* simplify

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

* cleanup

* make that test happy
2021-12-20 08:02:38 -05:00
rusefillc c8e1bde986 2 byte table axis #3045 2021-12-20 02:07:03 -05:00
Andrey faa29f0dc2 2 byte table axis #3045
fixing build
2021-12-20 01:50:23 -05:00
Andrey 842c787645 are we missing something? 2021-12-19 23:57:36 -05:00
rusefillc 7eca4d663b 2 byte table axis #3045 2021-12-19 22:43:10 -05:00
Matthew Kennedy e076ea4a04 make macos happy (#3699)
* s

* explicitly include it because that's a good idea.
2021-12-19 09:58:49 -05:00
Andrey be448c56f3 ISO-TP accounting for new buffer size 2021-12-19 01:10:13 -05:00
rusefillc 7a2d55fd53 is that all it needs? 2021-12-19 00:54:20 -05:00
Andrey 62d8ba2ae7 PCAN sandbox - error requestOutputChannels fix #3698 2021-12-19 00:29:30 -05:00
Andrey b9022a926d TS via TCP connector and ISO-TP via PCAN #3667 2021-12-18 21:46:49 -05:00
GitHub build-unit-tests Action ae52b4c5f5 Trigger wheel definitions 2021-12-17 03:17:55 +00:00
rusefillc b0c1a8fb2e MAP phase sensing fix #3544
removing dead implementation
2021-12-16 21:28:27 -05:00
rusefillc 02e31e1555 MAP phase sensing #3544
removing dead implementation
2021-12-16 21:13:55 -05:00
Andrey 3034dcc752 Lua to read tsOutputs #3376
unit test fix
2021-12-15 09:23:06 -05:00
rusefillc c82df1adef Lua to read tsOutputs #3376
let's break master!
2021-12-15 08:56:59 -05:00
rusefillc dafeaeaa31 Lua to read tsOutputs #3376 2021-12-14 23:16:05 -05:00
GitHub build-unit-tests Action 991511552d Trigger wheel definitions 2021-12-15 02:30:21 +00:00
Matthew Kennedy 8afee6c233 Honda K 12+1 decoder adjustment (#3694)
* adjust trigger

* real cranking

* mk
2021-12-14 21:10:01 -05:00
GitHub build-unit-tests Action d696a1620c Trigger wheel definitions 2021-12-14 00:05:57 +00:00
Matthew Kennedy d6a0154f79 maybe more working MAP sampling (#3689)
* what if we do this

* cleanup

* s

* test
2021-12-11 03:01:28 -04:00
Andrey 04cbd91b8c MAP phase sensing #3544 2021-12-10 17:28:03 -05:00
Andreika adfe24c801 can_isotp fix? (#3678)
Co-authored-by: Andrei <andreikagit@users.noreply.github.com>
2021-12-08 18:12:51 -05:00
Matthew Kennedy bdf6583306 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
rusefillc e2e482d2b1 docs 2021-12-08 16:05:57 -05:00
Andreika 95adac3f03 CAN ISO-TP progress (+unit-tests fix) (#3677)
Co-authored-by: Andrei <andreikagit@users.noreply.github.com>
2021-12-08 15:11:19 -05:00
rusefillc 98dbf0a352 rusEFI console ISO-TP via PCAN #3667 2021-12-08 12:01:28 -05:00
rusefillc d735f8d198 rusEFI console ISO-TP via PCAN #3667 2021-12-08 11:55:34 -05:00
Matthew Kennedy e80654511d 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 3d3bf5ea4b ignition controller detects rising edge on voltage (#3636)
* ignition controller detects rising edge on voltage

* update test

* comment

* ignore negative transients

* tweak

* test
2021-12-07 21:28:04 -05:00
Andrey d3afd617d2 MAP phase sensing #3544
new implementation seems complete?
2021-12-07 21:08:25 -05:00
Andrey 0f6c9e15c3 MAP phase sensing #3544
new implementation
2021-12-07 20:00:04 -05:00
Andrey 7046d737ba docs 2021-12-07 19:59:43 -05:00
Andrey 1d52e84e35 refactoring 2021-12-07 17:00:42 -05:00
Andrey c793b19538 MAP phase sensing #3544
look new unit test!
2021-12-07 16:58:10 -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
rusefillc 2b465be253 MAP phase sensing #3544
option to look for high and low peaks
2021-12-05 14:25:26 -05:00
rusefillc e0559a8548 MAP phase sensing #3544
taking a step back to happy place
2021-12-04 18:21:10 -05:00
rusefillc 216b5d9e7a tune via CAN #3361
CAN testability
2021-12-04 01:01:48 -05:00
rusefillc 82044e579a header style 2021-12-04 01:01:48 -05:00
Andrei d1f30f10b1 CAN update 2021-12-03 21:44:15 -05:00
rusefillc 9dcaa2ecbc trigger_adc helping simulator 2021-12-01 14:17:16 -05:00
rusefillc a13bc09fe4 trigger_adc unit tests 2021-12-01 13:35:44 -05:00
Andrei 6c01dd5791 trigger_adc unit-test data files 2021-12-01 12:28:48 -05:00
rusefillc 52eace58e4 proteus to have enlarged Lua 2021-11-30 21:37:17 -05:00
Matthew Kennedy 565a94ea34 Remove the EFI_NO_CONFIG_WORKING_COPY option (#3630)
* no working copy

* oops
2021-11-29 16:44:45 -05:00
rusefillc 7e99e9123d Epic: Remove FSIO #2928 2021-11-28 17:54:26 -05:00
Matthew Kennedy aed334f9ac better VSS configuration (#3542)
* vss uses real values

* some defaults

* test and correct math

* km, not miles!

* comment

* tooltip

* that macro went away

* 100hz and default settings gives 9kph

* changelog

* order of operations safety

* make the test like the pwm test

* housekeeping

* this is why we need sensor automation

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-11-27 08:49:07 -05:00
GitHub build-unit-tests Action 63e0b8b599 Trigger wheel definitions 2021-11-26 02:09:34 +00:00
GitHub build-unit-tests Action 0519ad2acb Trigger wheel definitions 2021-11-25 23:54:51 +00:00
Andrey 695557f709 MAP phase sensing #3544 2021-11-24 22:36:36 -05:00
Andrey d8799e7e8e MAP phase sensing #3544 2021-11-24 21:53:32 -05:00
Andrey c1196988a0 MAP phase sensing #3544 2021-11-24 21:53:16 -05:00
Matthew Kennedy 5274cffff3 main relay doesn't use fsio (#3580)
* 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

* main relay

* plumbing

* dead fsio stuff

* test it

* by 100%, we mean 99.98%
2021-11-24 07:47:51 -05:00
rusefillc 7760ddd8b6 live data for wastegate #3588
i want to persist state so no 'const' sorry
2021-11-23 15:52:43 -05:00
rusefillc d9e8509440 harley 2021-11-22 19:16:57 -05:00
Matthew Kennedy 9bd8a19564 oh my god we've had no asserts (#3595) 2021-11-22 17:52:03 -05:00
rusefillc 5271d9791a j1850 SAE crc8 Lua 2021-11-22 14:19:19 -05:00
rusefillc 3d8ddbceea j1850 SAE crc8 2021-11-22 14:03:52 -05:00
Scott Smith 9d61fb4cfd Drop SingleChannelStateSequence in favor of MultiChannelStateSequenceWithData (#3519)
* Drop SingleChannelStateSequence in favor of MultiChannelStateSequenceWithData

Most all the users were Multi* anyways, so just improve that:
1. Allow up to 8 waveforms to share one byte per timestamp.  It could be better but this is simple
   and gets most of the benefit.
2. Use a wrapper structure to handle reserving space for the arrays.  Makes the interface simpler
   and more rigid.  Also saves 4 bytes per Multi*.  Downside is access is now via -> and *,
   not . and (nothing).

Saves 224 bytes of BSS, 1832 bytes of RAM4/CCM, 952 bytes of TEXT, and 103 bytes of RODATA

* Instantiate a base_t to make debugging easier.
Also fixes crash on real firmware by using &m_base instead - LTO optimization issue?

* No magical templated StaticAlloc thingy.  Just virtual functions.
2021-11-21 04:56:07 -05:00
Matthew Kennedy b9f8409f59 correctly compute engine revolution number (#3586)
* add param

* first revolution is revolution 0, not revolution 1

* would you look at that, we sync one rev quicker!

* changelog

* rpm value
2021-11-21 09:01:27 +03:00
Matthew Kennedy e2a4504728 rpm calculator refactoring, gm 24x test (#3585)
* data

* stub test

* use getTimeSinceSyncPoint

* s

* s

* no

* test

* stray ;

* those were 1/10 what they were supposed to be

* actually check something

* dead log line?
2021-11-20 14:59:02 +03:00
rusefillc 8029f8446a only c++ because lua does some things asan doesn't like, but don't actually cause overruns. 2021-11-20 03:04:52 -05:00
Matthew Kennedy 568dc8a277 don't do things that don't work in clang (#3584)
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-11-20 02:40:41 -05:00
Matthew Kennedy 569415930c detect more overflows with asan (#3582)
* overflow detector

* type list dynamic allocate

* fix the buffer length

* comment

* pr fb

* sanitize sim

* fix sim sanitizer bug

* didn't mean to turn off optimization for sim

* asan can do that, if you turn it on!

* cleaning
2021-11-20 01:38:39 -05:00
rusefillc 03b13af2db On -fpermissive in Windows in unit tests fix #3581 2021-11-20 00:26:52 -05:00
rusefillc 6766ff8cab On -fpermissive in Windows in unit tests #3581 2021-11-20 00:23:27 -05:00
rusefillc 18aacc0ef6 On -fpermissive in Windows in unit tests #3581 2021-11-20 00:16:03 -05:00
Scott Smith 07d30285fc Basic framework for high pressure fuel pump control (#3476)
* Basic framework for high pressure fuel pump control

* Many changes

Move calculations to fast callback
Move main object into Engine
Respond to pin changes without requiring a reboot

* Use EngineModule for HpfpController
Schedule pin off after executing pin on so we are sure it ends, even if the motor stops.
Test scheduling.
Less RAM use by only having one event and reordering fields.

* Make scheduling test actually useful - need non-0 activation angle.

Co-authored-by: rusefillc <48498823+rusefillc@users.noreply.github.com>
2021-11-19 23:06:51 -05:00
Matthew Kennedy e7956a53f6 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
Matthew Kennedy a79b0c424c turn on c++ 20 (#3579)
* set flags

* emit initializers

* jar
2021-11-19 22:19:34 -05:00
Scott Smith aba4e5167e 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 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 14578ddae7 Remove a bunch of macros from engine_ptr.h (#3562) 2021-11-17 10:01:39 +03: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
rusefillc 774d96493e spelling 2021-11-16 16:46:54 -05:00
Matthew Kennedy 7296593448 remove engine pointer passing (#3556)
* some

* more

* more

* the last?!
2021-11-16 04:15:29 -05:00
Scott Smith 2cfc4af998 Start the process of using a global engine ptr for unit tests. (#3551)
* Start the process of using a global engine ptr for unit tests.

Passing around the engine, config, and persistent state wasn't buying anything.  Instead, use
EngineTestHelper(Base) to correctly set and clear the global variables.  Add a dummy check in
case some test tries to set them manually.

* Fix OSX build

* Adapt PR to recently added code.
2021-11-16 00:23:14 -05:00
Scott Smith c354d30a71 Use Valgrind to detect unitialized variable references. (#3555)
* Use Valgrind to detect unitialized variable references.

Fix the edge cases that pop up

* Comment and disable Mac run
2021-11-15 23:42:23 -05:00
Andrey b545743f7d Not all launch control options are used #3554 2021-11-15 21:13:01 -05:00
Andrey 7b790d36f6 random refactoring: trigger central encapsulation 2021-11-15 20:22:05 -05:00
Andrey 837cdf2cfb refactoring launch 2021-11-15 19:55:04 -05:00
Scott Smith d09166d439 Test for stack use after free in ASAN. (#3552)
Fix two cases that didn't affect the product, but did affect our ability to test.
2021-11-15 19:44:39 -05:00
Andrey bc3befd0ac refactoring launch 2021-11-15 18:57:12 -05:00
Andrey bafd5e0e17 refactoring launch 2021-11-15 14:40:35 -05:00
Matthew Kennedy c1941f3a49 (void) -> () (#3550)
* static functions with (void)

* more

* Revert "more"

This reverts commit 246e53441f935451437df186ac92d7df26b62fb6.

* s

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-11-15 13:02:34 +01:00
Matthew Kennedy bd04dc8352 less macro, more c++ (#3549)
* less macro

* s
2021-11-15 12:44:40 +01:00
GitHub build-unit-tests Action 56a5b4ac78 Trigger wheel definitions 2021-11-14 23:14:04 +00:00
rusefi 468cc07811 Lua: changing "table" API 2021-11-14 16:44:52 -05:00
rusefillc 5f1aadf638 Epic: Remove FSIO #2928 2021-11-14 10:39:47 -05:00
rusefillc 94320910e9 Epic: Remove FSIO #2928 2021-11-14 07:30:26 -05:00
GitHub build-unit-tests Action 54ebe6bd21 Trigger wheel definitions 2021-11-14 03:05:33 +00:00