Commit Graph

1732 Commits

Author SHA1 Message Date
rusefillc a62d516a86 docs 2021-08-31 04:22:26 -04:00
rusefillc 91404018d1 docs 2021-08-31 04:20:57 -04:00
Matthew Kennedy f6e269a3ab remove old vss implementation (#3208)
* dead vss

* remove
2021-08-28 01:39:55 -04:00
Matthew Kennedy df5f7552f2 disable closed loop boost below MAP threshold (#3206)
* boost minimum map

* changelog
2021-08-27 17:54:08 -04:00
Matthew Kennedy 9d437474b2 add cancel to scheduler (#3201)
* fw

* for tests

* simulator

* sim

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-08-27 11:30:06 +03:00
Matthew Kennedy 7a4a0bb608 add & test remove from linked list (#3199) 2021-08-26 23:03:09 +03:00
Matthew Kennedy df48806ec0 start allowing ADC change while running (#3100)
* allow re-register of the same sensor

* add api to unsubscribe

* do it for tps

* clear the pin

* happy test

* maybe make afr happy for now

* tests build

* happy simulator

* active configuration

* check valid

* we need vbatt now

* manage all pin init in init_sensors.cpp

* don't need that

* cleanup

* thermistors

* do two phase reinit in the right place

* config vs engine

* finally the tests are happy
2021-08-24 16:41:16 -04:00
alxrMironov dd1b7ffa24 Vehicle speed switching to frequency sensor #3106 (#3148)
* Add vehicle_speed_converter.h with realization.

* Add test_vehicle_speed_converter.cpp with realization.

* Add test_vehicle_speed_converter.cpp to Makefile

* Edit "VehicleSpeedSensor" from function pointer sensor to frequency sensor

* Fix "VehicleSpeedSensor" init function args

* Remove "VehicleSpeedConverter" empty constructor

* Edit vehicle_speed_converter.h code style

* Fix args and engine injection in "VehicleSpeedSensor" initialization procedure

* Remove old "Vehicle Speed" module initialization

* Revert "Remove old "Vehicle Speed" module initialization"

This reverts commit 100b7caa8c615c20eed3d0c23a49824b4e556148.

* Remove old "Vehicle Speed" module initialization pieces

* Revert "Revert "Remove old "Vehicle Speed" module initialization""

This reverts commit f559a726f1f7f5a7acacd1b6517e571743e84327.

* Debug changes

* Revert "Debug changes"

This reverts commit f7e2be1a8a46c6f3f93f14f002b2f2db539da8e2.

* Another debug changes

* More debug changes

* And more debug changes.

* Revert "Another debug changes"

This reverts commit 914fbb1df42c37e4b5ecbb119bb45e7cffdf4064.

* Revert "More debug changes"

This reverts commit 0b2d96d461c3cd9b0f1ae97ed110b8effe6b0cc6.

* Revert "And more debug changes."

This reverts commit 06ae8daded0e6e1c025e4e5058b47283f4adfe92.

* Add "Vehicle Speed" sensor reconfiguration

* Revert "Add "Vehicle Speed" sensor reconfiguration"

This reverts commit a089a6d563dd710004ce1a7da1744b0b4b90c3b1.

* Revert "Revert "Add "Vehicle Speed" sensor reconfiguration""

This reverts commit 7b2bb8af4b3caa547236ca59e4c4bdb3ac1200cc.

* Debug changes

* Another debug changes

* Fix another debug changes

* Another debug changes 2

* Revert "Another debug changes 2"

This reverts commit cfad55141eec125b2f1d35fb95d9f46b54f666b6.

* Revert "Fix another debug changes"

This reverts commit 9bc2c74a3be6fd896827ff48cf4580e7657529c0.

* Revert "Another debug changes"

This reverts commit 4337ed8cad8dff508d093944eb3f75e9a69e4a77.

* Edit class  FrequencySensor, make it more RAII

* Debug changes

* Debug changes 2

* Debug changes 3

* Revert "Debug changes 3"

This reverts commit 52a7054c122b5157540fe45a055a84b57478d722.

* Revert "Debug changes 2"

This reverts commit dec79fb913344ccb4b8614910ad62e6c129a243e.

* Revert "Debug changes"

This reverts commit eb08d7a529b55ba397a7dd2c154b76eab42f212b.

* Revert "Edit class  FrequencySensor, make it more RAII"

This reverts commit 3a0bb1d3f1dd23c1b04e4cc1c526cfdc67ae86a3.

* Remove VSS pin definition in "Citroen Berlingo" engine config.

This reverts commit 3a0bb1d3f1dd23c1b04e4cc1c526cfdc67ae86a3.

* Remove VSS pin definition in "Dodge Neon" engine config

Co-authored-by: alxrMironov <330OMcorporative>
2021-08-24 00:55:41 -04:00
Andrey 8a7eb2173f zero dwell warning at zero RPM #3153 2021-08-16 09:11:30 -04:00
Matthew Kennedy e056369f05 actually remove FSIO idle stuff (#3150)
* debug mode

* pid cleanup

* more dead

* more dead

* wow more dead

* much dead many death wow
2021-08-14 09:48:45 +03:00
rusefillc d16cb0e153 dead idle FSIO 2021-08-12 18:28:55 -04:00
alxrMironov 9d1ce540c4 Begin "vehicleSpeed" refactoring. Module switched to "FunctionalPointerSensor" class. #3106 #3107 #3108. (#3132)
* Add new sensor type "VehicleSpeed"

* Add "Vehicle speed" sensor to name list

* Add Vehicle speed sensor initialization with function pointer sensor.

* Add init_vehicle_speed_sensor.cpp to Makefile

* Replace dependencies from "getVehicleSpeed" to OOP-like "Sensor::get()"

* Add warning and TODO to "mock vehicle speed" call

* Replace get & mock "VehicleSpeed" methods in tests

* Remove #warning directive (cause error by current settings)

* Remove stray tab

* Remove explicitly type casting.

* Add "InitVehicleSpeedSensor" function declaration to init.h

* Add "VehicleSpeedSensor" initialization call into "InitNewSensors"

Co-authored-by: alxrMironov <330OMcorporative>
2021-08-12 22:16:51 +03:00
GitHub build-unit-tests Action d82bdd66fb Trigger wheel definitions 2021-08-11 22:53:10 +00:00
Matthew Kennedy 7933f50ef3 skip etb init if no primary sensor (#3136)
* skip init if no primary sensor

* specific test
2021-08-12 00:45:44 +03:00
Andrey 8a4831b1dc Nissan 4 cylinder QR trigger wheel #3118 2021-08-08 07:04:18 -04:00
GitHub build-unit-tests Action 6dbbfbb9c2 Trigger wheel definitions 2021-08-08 10:24:03 +00:00
Matthew Kennedy 39388c75d8 even more pch (#3112)
* s

* more

* s

* f7
2021-08-04 19:30:52 -04:00
Matthew Kennedy d5155cfd86 don't "validate instant RPM" (#3095)
* don't "validate instant RPM"

* test actually tests the right thing

* test mode transition
2021-08-04 08:17:14 +03:00
Matthew Kennedy 4e6b61234f 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
Andrey 33dfb904cc unit test for vehicle_speed.cpp fix #3081 2021-08-03 19:54:11 -04:00
alxrMironov b6046d60d3 Unit tests for vehicle speed.cpp #3081 (#3103)
* Add test_vehicle_speed.cpp

* Add test_vehicle_speed.cpp to makefile

* Add tests for vehicle_speed.cpp

* Enable vehicle_speed.cpp testing

* Edit make some constants explicit and format code style

* Revert "Enable vehicle_speed.cpp testing"

This reverts commit bcba5219a1d69fb3375e33c7fcb97abffc190a75.

* Remove verbose variables

* Remove dead code strings

* Fix tests coupling by setMockVehicleSpeed

Co-authored-by: alxrMironov <330OMcorporative>
2021-08-03 19:49:16 -04:00
Andrey e62244a623 unit test for vehicle_speed.cpp #3081 2021-08-03 19:48:24 -04:00
Matthew Kennedy 0ebc59b80f perform extra-step-prevention in the stepper driver itself (#3038)
* perform extra-step-prevention in the stepper driver itself

* isBusy flag

* I am unable to type

* the court of public opinion has decided that greater-equal is correct

* that sets target in steps, not percent

* correct var name

* mock stepper motor

* testable stepper

* build is happy

* helping build
2021-08-02 07:03:57 -04:00
Matthew Kennedy 9a3d385ea5 call handleShaftSignal (#3097) 2021-08-02 07:02:45 -04:00
Matthew Kennedy 4ea56e4122 fix the mess (#3094)
* test

* s
2021-08-01 23:21:53 -04:00
alxrMironov 99085c6776 Unit test for flex sensor.cpp #3091 (#3093)
* Add test_flex_sensor.cpp

* Add test_flex_sensor.cpp to makefile

* Edit test_flex_sensor.cpp code formatting

* Fix test case name in test_flex_sensor.cpp

* Remove explicitly defined constructor of "FlexSensorForTests" class

* Edit included headers replaced by single one in test_flex_sensor.cpp

* Edit format to make similar to other files.

Co-authored-by: alxrMironov <330OMcorporative>
2021-08-01 22:14:01 -04:00
Matthew Kennedy e0eff6c66a unit test vss segfault fix (#3090)
* enable feature

* dynoview

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-08-01 15:05:52 -04:00
rusefillc 02e6b4aa7d Revert "unit test for vehicle_speed.cpp #3081"
This reverts commit e656a486
2021-08-01 12:54:44 -04:00
rusefillc e656a4867e unit test for vehicle_speed.cpp #3081 2021-08-01 12:20:19 -04:00
Matthew Kennedy 6eec2a1282 remove some noise from nb2 trigger log (#3078) 2021-07-30 08:19:16 -04:00
Matthew Kennedy e3e5e57eac instant rpm uses full engine cycle (#3077)
* instant rpm uses full engine cycle

* turn off fast spinup for this test
2021-07-30 08:18:24 -04:00
Matthew Kennedy d3ec2b21d1 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
GitHub build-unit-tests Action bade6de474 Trigger wheel definitions 2021-07-26 01:51:25 +00:00
Matthew Kennedy f44a84b40c set up precompiled header (#2971)
* ignore

* set up precompiled header

* makefile

* fixes

* cleanup

* only depend cpp on pch

* efifeatures in pch

* f7 efifeatures

* consolidate

* simulator

* proteus build

* error handling is a good one

* bootloader pch

* don't auto include pch

* dirs

* delete on clean

* bootloader cleans

* clean.sh deletes pch

* disable in bl for now

* there was a typo so maybe it'll work now

* remove todo

* don't need that any more

* don't need these parts

* don't need this part

* undo changes

* use a different cpp as example

* s

* Revert "cleanup"

This reverts commit 8de8698490f5d09c2df753f00a89751aa898be9a.

* also unnecessary now

* buh

* comment

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-07-25 21:23:23 -04:00
Matthew Kennedy 82b30d8f78 cleanup for pch (#3062)
* cleanup

* d
2021-07-25 20:43:02 -04:00
Matthew Kennedy be7ef805c9 fix nonlinear correction threshold (#3060)
* s

* macro

* test has to do the inverse
2021-07-25 20:42:26 -04:00
Andrey 857a5e8572 Clutch switch inverted options do not invert detected pedal position
#3545
2021-07-24 19:49:23 -04:00
Matthew Kennedy d3d2762847 adjust taper behavior (#3051)
* adjust taper behavior

* check that taper works in running state too
2021-07-24 16:12:07 -04:00
rusefillc bc9f85ff31 safer NB2 progress (#3041)
* safer NB2 progress

* one step back
2021-07-23 16:43:24 -04:00
rusefillc 2d8a06361f Update readme.md 2021-07-23 15:05:04 -04:00
Andrey e8aef0dcd3 VVT position of first cam is off on first cycle fix #2987 2021-07-22 01:02:37 -04:00
Andrey fbf6ff05be Nissan VVT trigger decoder #2887 2021-07-21 23:26:40 -04:00
Andrey e8bbea21be Nissan VVT trigger decoder #2887 2021-07-21 23:24:23 -04:00
Andrey 91e65b795c Nissan VVT trigger decoder #2887 2021-07-21 23:16:44 -04:00
Andrey 2a07c3df27 Nissan VVT trigger decoder #2887 2021-07-21 23:08:56 -04:00
rusefillc 5648067489 Nissan VVT trigger decoder #2887 2021-07-21 22:41:37 -04:00
rusefi 58f01b7ce0 nissan logic cranking 2021-07-21 21:58:00 -04:00
GitHub build-unit-tests Action 93d57ba910 Trigger wheel definitions 2021-07-22 00:45:29 +00:00
Matthew Kennedy 3cbd983c93 adjust nb2 vvt sync (#3019)
* test existing implementation

* nb2 vvt pattern sync

* update test
2021-07-21 20:07:28 -04:00
Matthew Kennedy 3237b43d47 simplify quad vvt test (#3018)
* use single tooth in quad cam test

* mod == remainder

* now the test works without changes
2021-07-21 18:48:05 -04:00
Matthew Kennedy 4f692ebe48 test existing implementation (#3017) 2021-07-21 17:48:37 -04:00
Matthew Kennedy 0fde085a44 remove TS file read (#3004)
* remove

* more defines

* test

* lots of java

* s
2021-07-21 14:24:53 -04:00
Matthew Kennedy 2a4dfd0bf8 Fix prepareEventAngles for symmetrical crank triggers (#2982)
* fix and make code legible

* update test to check every tooth

* symmetrical crank

* simplify findTriggerPosition

* make getAngle intelligable
2021-07-17 23:27:20 -04:00
Andrey df522cf60e NB2 trigger shape does not seem to match JimStim #2980
only first steps of unit test
2021-07-17 19:43:17 -04:00
Andrey c9360448cc NB2 trigger shape does not seem to match JimStim #2980
only first steps of unit test
2021-07-17 17:47:32 -04:00
GitHub build-unit-tests Action 441a200fdf Trigger wheel definitions 2021-07-17 06:30:25 +00:00
GitHub build-unit-tests Action 5beb9780c5 Trigger wheel definitions 2021-07-17 05:29:22 +00:00
Andrey e9ea68e901 kaiju is asking for vq30de trigger wheel decoder #2974 2021-07-17 00:46:39 -04:00
GitHub build-unit-tests Action 0bd565a96b Trigger wheel definitions 2021-07-17 04:46:01 +00:00
Matthew Kennedy 45d185b09d lua hooks for CAN tx (#2967)
* CanTxMessage usable from unit test

* testLuaReturnsNil

* CAN hook and tests

* it helps if parameter names exist

* nameless params

* s

* redefinition of default argument

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-07-16 14:06:26 -04:00
Andrey 85d6d6c70d trigger signal debug pins - logic level output #2959
test driven development is still amazing
2021-07-15 09:29:14 -04:00
Andrey 8a49009f44 trigger signal debug pins - logic level output #2959 2021-07-15 02:12:57 -04:00
Andrey e4c498e042 trigger signal debug pins - logic level output #2959 2021-07-15 00:50:29 -04:00
Andrey 5914ea6bd5 trigger signal debug pins - logic level output #2959 2021-07-15 00:34:22 -04:00
Andrey b53b23b140 trigger signal debug pins - logic level output #2959 2021-07-14 22:51:08 -04:00
Andrey c502239b45 FATAL on NB2 tune jim stim input signal #2965 2021-07-14 16:47:55 -04:00
Andrey 47f285c50c FATAL on NB2 tune jim stim input signal #2965 2021-07-14 16:03:00 -04:00
Andrey 36dce560cf cute example of a bug which only macoc unit test fails to compile 2021-07-13 18:15:22 -04:00
Andrey 07ea3277f6 NB2 hellen-72-rev-d something is off #2958 2021-07-13 18:02:29 -04:00
Andrey c691df4cb1 NB2 hellen-72-rev-d something is off #2958 2021-07-13 15:49:36 -04:00
Andrey 970b315bcf NB2 hellen-72-rev-d something is off #2958 2021-07-13 15:04:30 -04:00
Andrey 093b3bda89 NB2 hellen-72-rev-d something is off #2958 2021-07-13 14:39:21 -04:00
Andrey 8afa24e7eb NB2 hellen-72-rev-d something is off #2958 2021-07-13 14:24:47 -04:00
rusefillc 75f3cff924 NB2 hellen-72-rev-d something is off #2958
export as is
2021-07-13 14:07:55 -04:00
rusefillc bda416fcbb NB2 hellen-72-rev-d something is off #2958
export as is
2021-07-13 13:27:47 -04:00
Andrey 94883a651e it's spelled 'resources' :( 2021-07-13 12:36:50 -04:00
Andrey 0b4a237897 it's spelled 'resources' :( 2021-07-13 12:35:43 -04:00
rusefi 63c5315620 NB2 hellen-72-rev-d something is off #2958 2021-07-13 11:57:18 -04:00
Matthew Kennedy ff9c14c239 fix vvt indication (#2926)
* wrap logic

* rename gauges

* names and ranges

* binary log

* we actually don't need that warning

* values auto wrap

* values auto wrap

* bye warnings

* comparison
2021-07-12 16:29:07 -04:00
Matthew Kennedy 1bba234920 inject (#2938) 2021-07-09 17:02:25 -04:00
rusefillc 06c364247f random progress 2021-07-09 14:27:10 -04:00
Matthew Kennedy f169fbf615 trailing spark scheduling (#2932)
* enable bit

* implement trailing sparks

* test trailing spark

* it helps to call the correct function

* add pins

* gobblin ram
2021-07-09 08:37:46 -04:00
Andrey 130efe0f14 restore testQuadCam #2911 2021-07-08 00:11:54 -04:00
Andrey 40f823662c Matt has CUSTOM_ERR_VVT_OUT_OF_RANGE warning #2921 2021-07-07 23:55:49 -04:00
Matthew Kennedy 03c6db89f5 injector nonlinearity (#2916)
* nonlinear polynomial

* make existing tests work again

* test that nonlinearity is called

* s

* fix enum

* ui

* fix and test

* comment

* changeloggy
2021-07-07 23:46:44 -04:00
Matthew Kennedy ba331f4895 knock sensing peak detect (#2910)
* knock peak detect

* comments

* comment

* initialize

* test

* fix warnings while we're here

* those are functions, not values

* ram
2021-07-06 21:44:59 -04:00
Matthew Kennedy 16dac2e47c Disable closed loop idle during cranking->running taper (#2900)
* implement

* dead file?

* implement tests

* new phase
2021-07-06 08:47:06 -04:00
Andrey bb181ac8fd Nissan VVT trigger decoder #2887
another bug - improper handling of three-times-symmetrical
2021-07-05 23:15:44 -04:00
Andrey 416cecc104 Nissan VVT trigger decoder #2887
that looks like one bug
2021-07-05 22:50:44 -04:00
Andrey 7ec3ef4b28 Nissan VVT trigger decoder #2887
that's all very strange
2021-07-05 22:17:26 -04:00
Andrey 59e33b3577 restore testQuadCam #2911 2021-07-05 21:04:09 -04:00
Andrey 87ecec5a35 restore testQuadCam #2911 2021-07-05 20:56:24 -04:00
Matthew Kennedy a3d3638232 more graceful chibios assertion failure (#2859)
* no custom assert hook

* dead

* setjmp/longjmp

* always call tid hook

* tests get threadid

* simulator threadid

* kick

* stubs for kinetis

* make it happier

* noreturn

* oops

* comments

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-07-05 18:18:58 -04:00
Matthew Kennedy bafc376e92 shard unit tests (#2906)
* scripts

* it found problems!

* off by one

* call bash maybe?
2021-07-04 22:28:31 -04:00
Matthew Kennedy d69fc86f26 explicitly set mock vss to test (#2905) 2021-07-04 17:52:45 -04:00
Andrey 3a0fcd26d8 unit tests pass on Linux fail on Windows #2902 2021-07-04 11:15:05 -04:00
Matthew Kennedy 3247d4de00 Gate closed loop idle on road speed (#2901)
* implement

* test

* b

* config
2021-07-04 09:35:12 -04:00
Andrey c0cbe626b6 Nissan VVT trigger decoder fix #2887
TDD is amazing we are done here!
2021-07-03 12:43:01 -04:00
Andrey e34b04bd46 Nissan VVT trigger decoder #2887 2021-07-03 12:02:00 -04:00
Andrey 2ad22a262b Nissan VVT trigger decoder #2887 2021-07-03 11:08:22 -04:00
Andrey 9ad5ec8044 refactoring: getShaftSynchronized 2021-07-03 10:37:03 -04:00
Andrey 26fdfb1ab6 Nissan VVT trigger decoder #2887 2021-07-03 10:15:41 -04:00
Andrey 8689adcb95 Nissan VVT trigger decoder #2887 2021-07-03 09:43:54 -04:00
Andrey 274eff1dde docs 2021-07-02 22:06:08 -04:00
Andrey cd4842f2b8 Nissan VVT trigger decoder #2887 2021-07-02 20:28:15 -04:00
Andrey 2911e128d9 Nissan progress 2021-07-02 19:57:26 -04:00
Andrey a7075acbf1 Nissan progress 2021-07-02 19:23:52 -04:00
Andrey cb0ec0c78f Nissan progress 2021-07-02 18:33:32 -04:00
Andrey 96b2beff97 Nissan progress 2021-07-02 17:32:45 -04:00
Andrey 7ffe09aa96 Nissan progress 2021-07-02 16:31:10 -04:00
Andrey ab24b8e5f3 Nissan progress 2021-07-02 14:56:12 -04:00
GitHub build-unit-tests Action 319ef2c152 Trigger wheel definitions 2021-07-02 04:07:11 +00:00
GitHub build-unit-tests Action 1145c59555 Trigger wheel definitions 2021-07-02 02:41:10 +00:00
GitHub build-unit-tests Action 309a146614 Trigger wheel definitions 2021-07-02 02:00:29 +00:00
GitHub build-unit-tests Action c8784147c3 Trigger wheel definitions 2021-07-02 01:46:14 +00:00
Matthew Kennedy 9ae1ada582 Stricter miata sync (#2891)
* strict mazda trigger shape

* this is an even better gap

* sync point moved so things are different now

* fix

* update instantrpm in test

* s

* s

* this is safer

* test

* tests

* instant rpm

* cleanup
2021-07-01 21:29:04 -04:00
GitHub build-unit-tests Action 5dd2c1d417 Trigger wheel definitions 2021-07-01 23:10:14 +00:00
Matthew Kennedy 20937455a0 Fix pre sync timestamp copy (#2892)
* fix tests

* fix pre sync copy

* this fixes the issue
2021-07-01 18:58:28 -04:00
Matthew Kennedy 024c477be4 test multiple starts (#2888)
* test

* pi

* typo

* private

* test short gap too

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-07-01 17:29:31 -04:00
Matthew Kennedy ebf6083d95 test dc_motor.cpp (#2890)
* use ipwm where possible

* mock ipwm

* initialize

* test
2021-07-01 09:21:18 -04:00
Matthew Kennedy 2cf2db8fb2 fix instant rpm (#2886)
* fix instant rpm

* this is what it should look like!

* warning

* comment issue link

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-07-01 09:19:16 -04:00
Matthew Kennedy 77f9c68733 not const getAirmass (#2883)
* not const

* test
2021-07-01 00:05:42 -04:00
Matthew Kennedy d5481707d5 aggressively test rpm calculator (#2884)
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-07-01 00:05:24 -04:00
Matthew Kennedy ee6f49e65f Consolidate hwHandleShaftSignal (#2875)
* consolidate trigger input

* merge functions

* comment

* dead

* hw vs. not hw

* stray comma

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-06-28 10:06:22 -04:00
Matthew Kennedy 0defaccb15 no fan if stopped engine (#2822)
* no fan if stopped engine

* config

* use config

* more tests

* merge

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-06-28 08:52:54 -04:00
Matthew Kennedy fe6f123be5 Move AC logic out of FSIO (#2872)
* new impl

* remove fsio

* inject "is ac active" to fan

* include the correct code

* include

* test

* more AC features

* AC switch vs. actual AC indicators

* include

* duh
2021-06-27 18:51:34 -04:00
Andrey 84a9a423d2 VW warnings on cranking #2861 2021-06-27 13:01:56 -04:00
Andrey 43e71c12fa more minimal version of fix trigger replay #2874 2021-06-27 11:38:42 -04:00
Andrey cb9b1a7cbb crankDivider is asking for a new unit test 2021-06-27 00:51:14 -04:00
Andrey 1003056f85 refactoring - explicit read method 2021-06-26 22:07:45 -04:00
Andrey c1eda5dec8 VW warnings on cranking #2861 2021-06-26 16:05:43 -04:00
Andrey f9fba433e6 please use const char* they say 2021-06-26 01:39:04 -04:00
Andrey 8cfcdad536 VW warnings on cranking #2861 2021-06-26 01:37:55 -04:00
rusefillc 04096e57b8 VW warnings on cranking #2861 2021-06-26 01:31:50 -04:00
Andrey ec1c2fd50b VW warnings on cranking #2861 2021-06-26 00:51:09 -04:00
Andrey e2a95d566b progress 2021-06-26 00:33:28 -04:00
Andrey 89f22d3a9c progress 2021-06-26 00:16:41 -04:00
rusefillc 4e79ed0c72 VW warnings on cranking #2861 2021-06-25 22:24:41 -04:00
GitHub build-unit-tests Action d5dcac25c6 Trigger wheel definitions 2021-06-25 18:45:59 +00:00
rusefillc f262be8c99 Minor change of Miata NA trigger shape #2855 #669 (#2856)
* Minor change of Miata NA trigger shape #2855 #669

* Minor change of Miata NA trigger shape #2855 #669
2021-06-25 14:12:18 -04:00
Andrey bb5500dbb3 Trigger: warning code on normal engine start up #669
better TDC unit test approach?
2021-06-25 13:19:16 -04:00
Andrey 2013a496ef Trigger: warning code on normal engine start up #669
better TDC unit test approach?
2021-06-25 13:02:37 -04:00
Andrey d4de3a6ebc .logicdata files closer together - partial revert, that did not work as expected 2021-06-25 12:59:44 -04:00
Andrey 1c87b9ccfe .logicdata files closer together 2021-06-25 12:45:41 -04:00
Andrey bd29dedbca Trigger: warning code on normal engine start up #669
making more code unit-testable
2021-06-25 11:50:23 -04:00
Andrey af014f9e37 Trigger: warning code on normal engine start up #669 2021-06-25 01:43:15 -04:00
Andrey f567c764ab giving unit tests a chance to use tdcMarkCallback 2021-06-25 01:31:53 -04:00
Andrey 3efd959da8 better test coverage 2021-06-24 23:38:16 -04:00
Andrey 13e93f8901 refactoring - better entity names 2021-06-24 23:19:31 -04:00
Andrey a0ea828093 docs 2021-06-24 23:12:16 -04:00
Andrey 0efbbe7344 raw files #669 2021-06-24 22:39:00 -04:00
Andrey 1269e7f4ea Minor change of Miata NA trigger shape #2855 #669 2021-06-24 22:21:30 -04:00
Andrey c19479fdad Trigger: warning code on normal engine start up #669 2021-06-24 21:58:40 -04:00
Matthew Kennedy aafb2e7def misc threading/safety improvements (#2854)
* allow termination of thread controller

* no gpio if fatal

* stub for test
2021-06-24 20:18:23 -04:00
Andrey 8ba4b0ce1f Trigger: warning code on normal engine start up #669 2021-06-23 11:32:06 -04:00
Andrey feb56dad72 refactoring 2021-06-23 06:37:32 -04:00
Andrey 263bdb7eae global static not good, there shall be only one god object /s 2021-06-23 06:10:27 -04:00
Andrey 00c7b61387 Trigger: warning code on normal engine start up #669 2021-06-23 05:22:08 -04:00
Andrey 4ea9df4cc1 Trigger: warning code on normal engine start up #669 2021-06-23 05:00:26 -04:00
rusefillc 42f0b0f0f5 one can dream about a well defined framework 2021-06-19 09:56:08 -04:00
Matthew Kennedy 74ff11bccc make the test legible (#2834) 2021-06-18 22:53:22 -04:00
Andrey 837beee828 Trigger: warning code on normal engine start up #669 2021-06-18 22:52:01 -04:00
Matthew Kennedy f1a95123fb kill engine if no oil pressure (#2800)
* min oil pressure for crank

* do it time-based

* rename field

* include

* fix existing test

* tests

* fix logic

* more test

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-06-16 17:20:28 -04:00
Matthew Kennedy f15a017402 Etb rev limit (#2820)
* cfg

* impl

* a test

* don't break the ts channel

* text
2021-06-16 08:44:48 -04:00
Matthew Kennedy 63524c3f34 fan/AC idle improvements (#2818)
* fan 2 open loop bump

* we had an AC target bump all this time?!

* format

* enable test

* I can't type
2021-06-15 17:30:35 -04:00
Matthew Kennedy 322f69474f 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 0c0957f52a apply open loop idle when in automatic mode (#2745)
* always apply open loop in closed loop

* simplify flags

* comment

* move

* comment

* missed one

* config for fan bump

* adjust miata defaults

* test fan/ac open loop

* idle CL tests

* test coasting

* test integration case

* fix merge

* put back reset logic for now

* s

* don't need that part

* I guess use OL as baseIdlePosition

* reset condition
2021-06-12 14:21:11 -04:00
Matthew Kennedy 41104dcca8 hard coded fan logic (#2805)
* remove fsio

* hard code impl

* test it

* enable fan with AC

* make commented stuff match
2021-06-11 06:25:12 -04:00
Matthew Kennedy e3bf80b9d7 convert gpiochips to c++ (#2761)
* core

* basic header

* tests are happy

* tle6240

* tle8888

* 33972

* 33810

* tle8888_req_init

* unused warning

* warning

* unsigned

* 8888 debug

* fix

* don't qualify

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-06-10 04:11:01 -04:00
Matthew Kennedy 70c0db189d 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
GitHub build-unit-tests Action 8466b29ade Trigger wheel definitions 2021-06-02 16:43:30 +00:00
Matthew Kennedy de00c7fef7 Bandaid for 2735 (#2788)
* bandaid

* fix test

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-06-02 12:02:52 +03:00
Matthew Kennedy cc0547217c Cranking defaults (#2787)
* defaults

* more

* cranking fuel

* cranking timing

* cranking time digits

* ugh these tests shouldn't depend on defaults
2021-06-02 08:21:36 +03:00
Matthew Kennedy f21fa3e652 idle fan/AC open loop bump (#2785)
* idle open loop ui section

* idle bump logic

* test fan/ac bump
2021-06-01 00:45:04 +03:00
Matthew Kennedy 1f3cbd67ad iac coast table (#2784) 2021-06-01 00:43:58 +03:00
Matthew Kennedy 6fbdb3c2d0 make the implementation match what the UI claims (#2779) 2021-05-31 07:37:02 -04:00
Matthew Kennedy 1b607faeba Idle test that fails (#2781)
* make member func

* failing test
2021-05-31 06:18:15 -04:00
rusefillc f0c8b3e102 my status 2021-05-31 05:27:51 -04:00
GitHub build-unit-tests Action 6436dcf755 Trigger wheel definitions 2021-05-31 08:53:37 +00:00
Matthew Kennedy f51dd36622 require redundant pedal (#2758)
* require redundant pedal

* return false

* I don't typing good

* tests

* tests
2021-05-30 19:19:57 -04:00
GitHub build-unit-tests Action d71a40ae24 Trigger wheel definitions 2021-05-29 08:25:43 +00:00
GitHub build-unit-tests Action 82b62f5ac0 Trigger wheel definitions 2021-05-26 10:24:44 +00:00
GitHub build-unit-tests Action de48ec71f0 Trigger wheel definitions 2021-05-26 09:43:53 +00:00
Andrey 0d46d96e46 subaru 7/6 progress based on https://rusefi.com/forum/viewtopic.php?p=41021#p41021 2021-05-26 05:22:13 -04:00
Andrey e4497358f5 Override trigger gaps feature #2734 2021-05-25 17:19:20 -04:00
Andrey 9b7c9afb3b Trigger: warning code on normal engine start up #669 2021-05-24 06:03:58 -04:00
Andrey 575d2fda85 More low-level firmware coverage for the simulator/unit-tests #2656 2021-05-23 18:59:08 -04:00
Andrey 27ada27639 More low-level firmware coverage for the simulator/unit-tests #2656 2021-05-23 18:49:48 -04:00
Andrey 3ab4ee9ea5 More low-level firmware coverage for the simulator/unit-tests #2656 2021-05-21 11:07:59 -04:00
Matthew Kennedy 68ad12da53 convert a table to scaled_channel (#2724)
* scaled VE table

* use setTable

* efi::clear

* ratio -> struct
2021-05-20 20:00:32 -04:00
Matthew Kennedy 6bfaed64db lua pwm hooks (#2687)
* pwm hook

* dedicated pins

* write hook

* UI

* more info

* zero based, clamp

* memory

* don't compile lua in bootloader at all
2021-05-20 19:01:17 -04:00
Matthew Kennedy 8b042ab9b1 rewrite table3d (#2723)
* post cranking factor limits

* sensible defaults

* but not for tests

* add pointer version of get bin

* test via map3d

* put that back for a minute

* new impl

* fix order

* rename and fix table orientation

* flip the table to the correct orientation

* dead cleanup, rename

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-05-20 22:31:16 +03:00
Matthew Kennedy 4b69e7d441 compile gpiochips as cpp (#2702)
* rename

* core

* structing

* more

* makefile

* structing

* 6240 compiles

* explicit cast instead of implicit narrowing

* 8888

* no extern C

* fix tests build

* extern "C"

* 33810

* 8860

* 33810

* linker

* unbreak master

* don't need that if compiling as C++

* bump config

* fix test

* tests

* unit tests bad merge

* build

* move subaru logic to cpp file

* cpp goodness

* hpp include

* this is probably the right thing to do

* simulator
2021-05-17 08:42:56 +03:00
rusefillc bdf4766343 helping jenkins 2021-05-16 11:35:05 -04:00
Andrey G a441ff17a3 Hw layer rearrangement (#2707)
* Fix unit_tests

* simulator: fix redifinition of TS_PRIMARY_SERIAL warning
2021-05-16 15:19:34 +03:00
Andrey 9c352b4d99 More low-level firmware coverage for the simulator/unit-tests #2656 2021-05-15 16:21:24 -04:00
Andrey 06bdf52b3c More low-level firmware coverage for the simulator/unit-tests #2656 2021-05-15 05:27:33 -04:00
rusefillc eecfcd9e0e More low-level firmware coverage for the simulator/unit-tests #2656 2021-05-14 10:58:53 -04:00
Matthew Kennedy 0c03a1cb4a const airmass (#2694) 2021-05-14 07:17:22 -04:00
Matthew Kennedy 9307ab6b1e explicitly test PTC thermistors (#2681)
* test ptc

* allow hotter for air cooled people

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-05-10 18:15:09 -04:00
Matthew Kennedy 1aed5c6ae2 remove intermediate buffer (#2668)
* remove define

* goodbye intermediate logging buffer

* free ram! woo!
2021-05-10 08:01:24 -04:00
Matthew Kennedy 76f2f063d2 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
Andrey 1e887f5ecb unit tests usability: overwriting an existing profile data with a different timestamp fix #2650 2021-05-07 22:33:26 -04:00
rusefillc 77c28c6969 Break out unit tests #2627 2021-05-07 22:14:22 -04:00
rusefillc ab9d248254 Break out unit tests #2627 2021-05-07 17:45:26 -04:00
rusefillc effcf3616b Break out unit tests #2627 2021-05-07 17:43:24 -04:00
rusefillc f458b6588a Break out unit tests #2627 2021-05-07 17:18:18 -04:00
rusefillc e0f8cfaca1 Break out unit tests #2627 2021-05-07 12:36:30 -04:00
Matthew Kennedy 37a3de07cf remove stateChangeCallback from simplepwm (#2644)
* remove callback parameter from cj125

* remove from ext

* remove stateChangeCallback

* alt doesn't need that

* demorgan

* remove call

* bad cut/paste

* check the actual pin in the test
2021-05-07 09:38:41 -04:00
rusefillc b7c9002d56 Break out unit tests #2627 2021-05-06 16:33:10 -04:00
rusefillc ab11c2275f docs 2021-05-06 10:43:25 -04:00
rusefillc 71b45bb196 explicit paths 2021-05-06 10:09:18 -04:00
rusefillc c2a42cc823 explicit paths 2021-05-06 10:04:21 -04:00
Matthew Kennedy 65a8941286 more Lua hooks (#2605)
* more hooks

* zero index

* test table hook

* test works

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-04-29 22:22:04 -04:00
Matthew Kennedy a470c1eec1 lua 5.4 (#2590)
* thread priority

* build

* makefile prep

* call startup

* lua 5.1

* mk

* 5.3

* mk

* I guess lua does something?

* extract hooks, builds for tests

* a bit of error handling

* guard

* bootloader makefile

* remove lua

* submodule

* submodule update

* builds with submodule

* disabled by default

* h7 chconf

* tweaks

* add a useful hook

* move luaconf

* perf trace lua

* test helpers

* lua unit tests

* include to satiate clang
2021-04-28 22:41:25 -04:00
Matthew Kennedy 5f0791f9fb Destroy all shared logger (#2574)
* most of shared logger

* a few more

* one more

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-04-21 14:28:48 -04:00
Matthew Kennedy 8cfb63455d Logging remove 3 (#2568)
* ts logger

* sensors

* wideband too

* missed one

* init

* motors, pid, etc

* vvt

* more

* idle

* missed one

* dynoview

* launch

* can

* console IO

* s

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-04-20 14:09:41 -04:00
Matthew Kennedy 992c16b4af logging cleanup 2: sensors, pid, etb, etc (#2567)
* ts logger

* sensors

* wideband too

* missed one

* init

* motors, pid, etc

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-04-18 20:02:32 -04:00
Matthew Kennedy babb43013f rewrite text logging system (#2439)
* minor cleanup

* enable mailboxes

* priority

* implement new logger

* more cleaning

* signature

* remove debug

* put the assertion back in

* remove debugging

* spelling

* doy

* tweaks & comments

* cleaning

* size_t

* guard more

* test build now

* needs more ram until we can remove LogginWithSTorage

* hunt for memory

* bootloader

* unused

* stub simulator

* it would help to get the signature right

* geez kinetis only has 64k ram

* more guarding because kinetis

* that's now very legal and very cool

* templatify

* s

* force null terminate

* probably fix

* const

* write a test

* disable sensor chart for now

* hide SC ui

* oh nope that breaks many things

This reverts commit c3c1bb324fb484c3d9cc44b7715c234bc0392e1e.

* missed one

* reset after scheduleLogging

* we can't print out the full message because it contains commas which break parsing

* force terminate long buffers

* let's see how much memory we have to play with

* a lot, is the answer

* real thread name

* shrink this for now before its deleted

* turn that back on

* biiig comment

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-04-18 18:46:47 -04:00
GitHub build-unit-tests Action 55837e9a98 Trigger wheel definitions 2021-04-15 23:39:10 +00:00
rusefillc 9c1aa580f1 WOW major scheduling drama on NB2 running with Proteus #2533 2021-04-15 19:12:09 -04:00
GitHub build-unit-tests Action 82fe2f123d Trigger wheel definitions 2021-04-09 17:12:18 +00:00
GitHub build-unit-tests Action 7063a5bde9 Trigger wheel definitions 2021-04-09 02:45:15 +00:00
rusefillc 8080f3bde7 helping us trace CUSTOM_INTEPOLATE_ERROR 2021-04-08 16:14:06 -04:00
rusefillc c3270fb715 helping us trace CUSTOM_FSIO_STACK_SIZE 2021-04-08 15:15:12 -04:00
rusefillc f34bca916d CUSTOM_ERR_VVT_OUT_OF_RANGE warning false-positive fix #2534 2021-04-08 15:01:12 -04:00
rusefillc 9c26a84be9 trigger and VVT duty cycle integration into limp manager #2523 2021-04-07 01:21:28 -04:00
Matthew Kennedy 7782ebd7b4 Ford redundant ETB tps (#2519)
* ford tps

* configurable maximum

* initialization

* check consistency when in the low range

* print info

* default

* config field

* config parameter

* test

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-04-05 15:57:03 -04:00
rusefillc a9e822f790 'displayLogicLevelsInEngineSniffer' on VVT input reports too much into engine sniffer fix #2528 2021-04-04 23:12:07 -04:00
rusefillc b378fcdb88 engine sniffer into unit tests 2021-04-04 22:48:48 -04:00
rusefillc 549839b0de engine sniffer into unit tests 2021-04-04 22:41:38 -04:00
Andrey G 112b4d1182 Hip9011 (#2512)
* hip9011: coexistance with other spi devices

* hip9011: rework so SPI transfer is invoked from thread

also use polling spi exchange to avoid cache problems

* hip9011: move calculations from ADC callback to thread

* hip9011: big cleanup

* hip9011: simplify spi communication

* No need to set knockBandCustom if it is not custom

HIP9011 calculates knockBand from cylinderBore same way

* hip9011: make unit test happy

* hip9011: fix unit test

* hip9011: remove duplicated initialization, reorder

* hip9011: just renames and data type adjustments

* hip9011: rename BAND() to HIP9011_BAND()

* hip9011: move some code from lookup.cpp to logic.cpp

* hip9011: move initEngineNoiseTable to engine_configuration.cpp

* hip9011: move lookup tables to hip9011_logic.c

* hip9011: remove empty files

* hip9011: additional checks
2021-03-30 10:56:25 -04:00
Matthew Kennedy 72dac58f9b fix multi-serial-port insanity (#2476)
* carve out UART specific

* implement channel

* config cleanup

* use new config

* bootloader

* dead code

* s

* h7 inherits f7

* oops

* ok now it's right

* tests

* cleanup

* call setup

* put that in its own file

* cleanup

* format

* guard

* not needed

* improve guarding

* portable

* allow override of uart mode

* fixes for bootloader

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-03-28 09:06:36 -04:00
Matthew Kennedy 204aa33e9a goodbye ignitionOffset (#2503)
* remove

* set the timing map to do what the offset used to do

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-03-28 08:00:09 -04:00
Matthew Kennedy ce142907a0 replace print/printMsg with scheduleMsg (#2497)
* start cleaning

* disabled feature means don't print that it's disabled

* cli

* usages

* printMsg -> scheduleMsg

* this is alllll dead now

* no crlf please

* all hope is lost if you manage to hit this line

* tests

* tests

* ok we did actually need that part

* sim

* d

* kinetis

* it did ifdef, not if

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-03-26 17:23:26 -04:00
Matthew Kennedy 4e1d30f86d plumbing for multiple vvt (#2488)
* plumb multiple vvt

* fix test

* s

* fix barra while we're at it

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-03-25 07:39:23 -04:00
GitHub build-unit-tests Action fe2b1ddae3 Trigger wheel definitions 2021-03-22 18:33:55 +00:00
Matthew Kennedy 5e6746c3aa Implement nonlinear fuel level sender (#2473)
* table function

* config fields

* sensor type

* switch consumers

* init the sensor

* ui

* 1mv resolution

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-03-19 08:39:08 -04:00
Matthew Kennedy 910f46267f VVT uses closed loop controller framework (#2453)
* vvt uses framework

* builds

* rename, update headers

* s

* testable

* write some basic tests

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-03-14 19:31:46 -04:00
Matthew Kennedy 765895d913 Fuel pressure sensor checks (#2449)
* test for missing sensor

* test negative pressure delta checking logic

* test new hasSensor logic
2021-03-12 23:32:41 -05:00
GitHub build-unit-tests Action dee68b13f7 Trigger wheel definitions 2021-03-13 03:00:16 +00:00
rusefillc 3651883bcf test_timer 2021-03-12 00:43:48 -05:00
rusefillc 9f90387d09 vBatt -> SensorType::vBatt fix #2260 2021-03-11 23:07:18 -05:00
Matthew Kennedy ff5bf3e3c3 error accumulator (#2434)
* error accumulator

* makefile
2021-03-08 07:40:46 -05:00
slowriot b70e39d425 update all compile scripts to use available cores rather than a hardcoded value (#2425)
* fix typos, spelling

* add two V8 firing orders

* use the available number of CPU cores, not just 4

* add new firing orders to config

* updating generated files to include new v8 firing orders

* reverting update of auto-generated files

* correct firing order labels for new firing orders

* update all compile scripts to use available cores rather than a hardcoded value
2021-03-06 12:55:46 -05:00
Matthew Kennedy 89d71e4379 Compute injection duration later in the pipeline (#2175)
* injector model, test

* new math

* inject fuel based on new math

* tests

* fix

* it should work like this

* format

* update TPS AE even when we're cutting fuel

* comment

* conversion factor

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-03-03 07:30:56 -05:00
Andrey G cd548b4db2 hip9011 compilation fix, cosmetic clean-ups (#2414)
* Board subaru eg33: has HIP9011 knock sensor

* hip9011: lastExecutionCount does not exist any more

* hip9011: extranc commands to header, use logic math for bitfields
2021-02-28 15:42:57 -05:00
Matthew Kennedy 350a047ead cleanup (#2386) 2021-02-23 16:57:14 -05:00
Matthew Kennedy 12a31e5132 start making tunerstudio more sane: part 2 (#2381)
* ts cleanup part 1

* move more stuff in to the class

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-02-19 20:48:21 -05:00
Matthew Kennedy 321fe48b27 rework FSIO LEelement (#2374)
* save

* firmware

* test parsing multiple things

* split tests
2021-02-17 23:32:44 -05:00