Commit Graph

672 Commits

Author SHA1 Message Date
Matthew Kennedy d7c56f78a9 require redundant TPS for ETB (#2041)
* Require redundant tps for ETB (#2037)

* mod sensor api

* require redundancy

* fix tests

* check that it fails

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>

* add a test that fails but should not

* fix the bug

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-12-08 06:24:20 -05:00
rusefi 13ac8fe744 not this line yet? 2020-12-07 01:40:26 -05:00
rusefi 412e2b1d40 Revert "Revert "Split ETB in to interface + implementation headers (#2040)""
This reverts commit dae0b606
2020-12-07 01:27:27 -05:00
rusefi e38c6d3660 Revert "Require redundant tps for ETB (#2037)"
This reverts commit c08d0b5e
2020-12-07 01:11:32 -05:00
rusefi dae0b606cb Revert "Split ETB in to interface + implementation headers (#2040)"
This reverts commit 53cbeedb
2020-12-07 01:11:19 -05:00
Matthew Kennedy 53cbeedb99 Split ETB in to interface + implementation headers (#2040)
* split etb interface

* mocks

* fix master while we're at it

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-12-07 00:29:09 -05:00
Matthew Kennedy c08d0b5ed8 Require redundant tps for ETB (#2037)
* mod sensor api

* require redundancy

* fix tests

* check that it fails

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-12-07 00:05:06 -05:00
Matthew Kennedy ab8248427c more ETB test coverage (#2039)
* test no pedal map

* test open loop

* open loop but not throttle

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-12-06 23:59:18 -05:00
Matthew Kennedy cd2d568b74 maybe fix sensor init checks (#2034)
* enums

* don't collide

* auto_generated_enums

* check based on new enum val

* maybe this will make generate tool happy

* add a test

* fix test

* fix and add another test

* make clang happier

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-12-06 23:19:57 -05:00
rusefillc 8d6255b1e2 Revert "switch rpm calculator to use timer class (#2005)"
This reverts most of 622021e799 commit.
2020-12-06 18:05:53 -05:00
Matthew Kennedy 622021e799 switch rpm calculator to use timer class (#2005)
* add api

* rpm calculator

* fix fsio

* fix float

* remove wrong comment

* fix timer

* clang didn't like this

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-12-06 16:01:45 -05:00
Matthew Kennedy 69f754bfbd don't duplicate sensor error logic (#2032)
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-12-06 15:00:30 -05:00
Matthew Kennedy 7dad3356e9 add isRedundant (#2031)
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-12-06 14:55:06 -05:00
rusefillc 63e328603f one step back #2017 2020-12-06 08:50:10 -05:00
Matthew Kennedy fbcfb4534a require TPS values to be different (#2017)
* require values to be different

* fix not

* oops

* missed another spot

* test negative cases too

* resets

* test no sensor case

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-12-06 00:41:49 -05:00
Matthew Kennedy a806053d52 round rpm instead of truncating (#2023)
* round rpm instead of truncating

* efiround is expensive

* Revert "efiround is expensive"

This reverts commit e5690f89e1b1988aacf5ced1f024d576465a7cd6.

* round is better than rintf

* testing

* it works now?!

* comment

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-12-06 00:11:57 -05:00
rusefillc 8540343d48 unit tests in clang #2012 2020-12-05 00:22:10 -05:00
shadowm60 45205e7da7 Dyno view proposal (#1999)
* DynoView creation

module implementation and unit_tests

* update acc algo

we only calcualte new acceleration value if speed has changed, not on every callback.

* added acceleration ts_channel

* fixed broken unit tests

* fixed accel sign

* review updates

* Update test_dynoview.cpp

fix unit_tests

* Update engine_controller.cpp

Fix .ram4 unused size

* Update test_dynoview.cpp
2020-12-04 20:28:48 -05:00
shadowm60 b014023560 Launch Control refactoring (#1992)
* refactor

- called from periodicFastCallback
- removed defines

* Update rusefi.input

removed unused configurations.
added clutch inversion option

* Added new tests

fixed limiting only in case we have launch condition and rpm outside of window

* Update launch_control.cpp

Unintialized config update, now it is working fine with VSS and with clutch as well.

* small fixes

updated after review findings

* Fix breaking engine rev limiter

applyLaunchControlLimiting should not overwrite booleans to false!

* Delay timer in seconds

timer uses ms, so convert seconds to ms
2020-12-01 13:03:42 -05:00
rusefillc 701f0b2e20 dead engine config 2020-11-26 20:53:44 -05:00
Matthew Kennedy cf1c99b36c fix etb unit test idle hardware (#1991)
* move check to etb

* give it a sensor to read
2020-11-26 19:21:42 -05:00
Matthew Kennedy 92e36e66b5 fix etb wastegate percent output (#1988)
* wastegate etb should use percent

* percent_t

* fix test
2020-11-25 21:14:06 -05:00
Matthew Kennedy ae53889d10 Boost tolerance (#1986)
* tolerate invalid closed loop config when in open loop mode

* fix test
2020-11-25 07:27:24 -05:00
shadowm60 e69d103461 Launch control unit tests update (#1972)
* testable launch start

* extract base class

* add a test

* fix ts debug

* Launch control unit_tests

updated launch control for a better split
VSS mock for unit tests

Co-authored-by: Matthew Kennedy <matthewkennedy@outlook.com>
2020-11-19 21:14:38 -05:00
rusefillc f3c9d67d8b Starter is engaged on start-up in pull-up configuration #1969
usability & test improvement
2020-11-19 17:15:28 -05:00
Matthew Kennedy 359a6ddc47 Launch control testable (#1967)
* testable launch start

* extract base class

* add a test

* fix ts debug
2020-11-19 08:15:56 -05:00
rusefillc dbdfd87c6d Starter seems to be engaged forever fix #1965 2020-11-18 23:54:30 -05:00
rusefillc 2c4f048e0d Starter seems to be engaged forever #1965 2020-11-18 23:06:44 -05:00
rusefillc acb65fe307 Starter seems to be engaged forever #1965 2020-11-18 22:56:05 -05:00
rusefillc 2d3ddcde9d Starter seems to be engaged forever #1965 2020-11-18 22:47:40 -05:00
rusefillc a73b2c9298 Starter seems to be engaged forever #1965 2020-11-18 20:53:03 -05:00
rusefillc ab75be8742 Something something unit test ETB does not work #1966 2020-11-18 20:12:58 -05:00
rusefillc 2af3cdf70e Starter seems to be engaged forever #1965 2020-11-18 20:01:02 -05:00
rusefillc 344423e9ab Starter seems to be engaged forever #1965 2020-11-18 19:34:09 -05:00
Matthew Kennedy 80edfe64ce Fix crc again, for real this time (#1948)
* re enable

* changelog

* fix

* fix test

* put some tests back
2020-11-15 16:59:02 -05:00
rusefillc 9262c58ea1 occasional tunerstudio CRC errors #1943
now with a bit of a unit test
2020-11-15 12:44:53 -05:00
rusefillc 1eb0f8808f occasional tunerstudio CRC errors #1943
unit test progress
2020-11-15 12:36:07 -05:00
rusefillc 05e7792ad4 occasional tunerstudio CRC errors #1943
now with a bit of a unit test
2020-11-15 12:27:47 -05:00
Matthew Kennedy 605269c358 remove idle thread; just call from periodicSlowCallback (#1924)
* remove thread

* remove ui
2020-11-11 21:47:19 -05:00
Matthew Kennedy 0fa06e2e2a compensate injector flow based on fuel pressure (#1931)
* injector compensation

* fix

* ui

* testability & comments

* hella testing

* debug channels

* enum value

* auto generated enums

* update comment

* oops too much

* update config fields

* handle failed pressure sensor

* build

* fix

* add some todos for the future

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-11-10 23:11:22 -05:00
rusefillc 14fffa5136 refactoring 2020-11-05 18:10:44 -05:00
Matthew Kennedy 789926a61d convert cranking defaults to mg (#1921)
* convert cranking defaults to mg

* fix tests
2020-11-03 14:12:26 -05:00
Matthew Kennedy bcabb51222 unused tach field (#1918) 2020-10-29 15:26:01 -04:00
Matthew Kennedy b8c2041467 Everything in lambda! (#1893)
* lambda

* default configs, fix build

* config, gauge, UI

* more digits

* change menu text

* fix that while I'm here

* doesn't need extra word

* todo note

* tests

* last test

* missed a config

* update java

* store target lambda

* more java

* format

* hopefully enough java for CI to pass
2020-10-26 18:15:17 -04:00
Matthew Kennedy 6abc80e74c convert mass -> duration later in the pipeline (#1906)
* cranking duration to mass

* implement

* units

* patch types

* suppress warning

* fix output channels

* add note about how to set it
2020-10-26 07:23:13 -04:00
Matthew Kennedy 5189e0b1d9 fix double deadtime (#1904)
* move global correction factor to fuel mass

* tests

* the fix
2020-10-25 00:12:05 -04:00
Matthew Kennedy 5296de1493 use fuel model (#1901)
* use fuel model

* spit'n'polish
2020-10-23 20:25:47 -04:00
Matthew Kennedy 4d1c331eca second PID config for wastegate (#1889)
* remove

* cleanup

* implement ETB parts

* hook up to boost controller

* tests

* consume

* add cfg field

* ui maybe

* fix

* fix

* add wastegate config test
2020-10-19 08:04:27 -04:00
Matthew Kennedy 5337d9f723 Etb wastegate hookup (#1888)
* remove

* cleanup

* implement ETB parts

* hook up to boost controller

* tests
2020-10-18 21:57:04 -04:00
Matthew Kennedy 2c23085715 Etb function cfg: actually read config (#1884)
* two throttles one thread

* look at all this RAM!

* add enum

* switch from index to function

* test fixup

* improve init logic

* remove old vw idle mode bit

* add config

* better spot for it

* use config init values

* handle null controller array

* fatal error testability

* test new init config

* defaults

* fix for default config
2020-10-18 17:26:38 -04:00
rusefillc 54c3d0f15c HW CI has failed 11 times since Oct 2 #1849 2020-10-16 13:54:12 -04:00
Matthew Kennedy 02c47eeec8 write SD header using new Writer class (#1882)
* write header

* hooray, free memory!

* fix test

* is there really this much free space...?

* no, there is not
2020-10-15 16:00:13 -04:00
Matthew Kennedy 94bd5921c5 simplify getTimeNowNt() (#1876)
* remove old impl

* add cpp wrapper to os_access

* clean up os_access

* remove touchTimeCounter

* new impl

* put comment about lock free impl

* include cpp wrappers for BL

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-10-15 08:57:13 -04:00
Matthew Kennedy abfa17216b etb function config 1 (#1881)
* this should all be safe...

* test fix
2020-10-14 22:02:09 -04:00
Matthew Kennedy 554304dac3 switch to single precision constants (#1880)
* adjust builds

* fix test
2020-10-14 20:04:35 -04:00
Matthew Kennedy c5291888d0 buffered writer - progress on #1463 (#1875)
* add buffered writer

* rename
2020-10-12 15:10:34 -04:00
rusefillc 53c001d541 revering functional part of
Etb function cfg, try again #1860
try again from #1831
2020-10-08 17:09:00 -04:00
Matthew Kennedy cca175c6ea Etb function cfg, try again (#1860)
* two throttles one thread

* look at all this RAM!

* add enum

* switch from index to function

* test fixup

* improve init logic

* remove old vw idle mode bit

* add config

* better spot for it

* use config init values

* handle null controller array

* fatal error testability

* test new init config

* defaults

* fix for default config
2020-10-08 14:12:03 -04:00
Matthew Kennedy 22a55ce7e6 switch from float to expected<float> (#1862) 2020-10-06 22:33:00 -04:00
Matthew Kennedy 7b333e60ea FSIO refactoring (#1861)
* better fsio tests

* condense operators

* minor parser cleanup too

* comments, too!
2020-10-06 21:54:49 -04:00
Matthew Kennedy 060cfbd778 const ref-ify trigger (#1856)
* const ref-ify

* tests
2020-10-05 14:22:59 -04:00
Matthew Kennedy 540fca8cc9 use expected for event queue next event (#1859)
* use expected for event queue next event

* minor cleanup

* tests
2020-10-05 13:53:34 -04:00
rusefillc aee984d0c2 HW CI has failed 11 times since Oct 2 #1849
Revert "ETB function config (#1831)"

This reverts commit fd7dae8a
2020-10-03 22:00:00 -04:00
Matthew Kennedy fd7dae8ab8 ETB function config (#1831)
* two throttles one thread

* look at all this RAM!

* add enum

* switch from index to function

* test fixup

* improve init logic

* remove old vw idle mode bit

* add config

* better spot for it

* use config init values

* handle null controller array

* fatal error testability

* test new init config

* defaults

* fix for default config
2020-10-02 20:51:02 -04:00
Matthew Kennedy b79c0fefe5 replace ETB index with function enum (#1807)
* two throttles one thread

* look at all this RAM!

* add enum

* switch from index to function

* test fixup

* improve init logic

* remove old vw idle mode bit
2020-09-28 16:33:07 -04:00
rusefi 3b9d339db0 unit test for start/stop hardware and pin repository #1811 2020-09-21 12:29:01 -04:00
rusefi 0b301fb454 unit test for start/stop hardware and pin repository #1811 2020-09-21 08:57:37 -04:00
rusefi 96d3af18f4 unit test for start/stop hardware and pin repository #1811 2020-09-21 05:02:35 -04:00
Matthew Kennedy 4a1b1b6bad fix closed loop fuel (#1797)
* fix

* add a test

* signature
2020-09-19 03:44:01 -04:00
Matthew Kennedy 85304392dd two throttles one thread (#1806)
* two throttles one thread

* look at all this RAM!
2020-09-18 13:47:49 -04:00
Matthew Kennedy 36234961c1 logging simplification: switch bare functions to member functions: try the second (#1794)
* first pass

* first pass

* const means we don't have to check!

* static

* test fixup

* fix sniffer
2020-09-13 11:49:25 +03:00
rusefi ead14bd1ca Revert "logging simplification: switch bare functions to member functions (#1788)"
This reverts commit 39280fb2
2020-09-12 04:36:24 -04:00
Matthew Kennedy 39280fb2c6 logging simplification: switch bare functions to member functions (#1788)
* first pass

* first pass

* const means we don't have to check!

* static

* test fixup
2020-09-12 03:08:11 +03:00
David Holdeman e8e2cf2cfd DebounceButton A/C switch (#1782)
* change acSwitch name, add mode

* fix

* remove some adc stuff

* remove some adc stuff

* semicolon stupid

* left behind

* add readpinstate

* wrong var name

* add functions back

* fix name

* bool, not void, plus fix name

* move

* not sure what I broke

* try setMockValue

* namespace

* whoops missed one

* switch values because adc was set up for pullup

* try 5

* comment for now

* comment for now

* uncomment tests, add function to mock, add mock to efiReadPin

* fixes

* for F's sake

* if

* add defy

* pass params

* use ASSERT_TRUE/FALSE

* advance time

* remove ifdef from readPin

* try moving if

* move to separate func

* move extern

* move include

* try engine_test_helper

* am confuse

* move func to else

* include hal

* add efi prod check

* remove include

* try extern

* move include

* semicolon stupid

* move extern again

* include

* move mockPinStates

* size

* add if

* add comment

* clean on instantiation
2020-09-10 22:16:20 -04:00
Matthew Kennedy 8079e5f292 scale tables using type system (#1776)
* store scale in the type

* efi ratio

* boost control scaling

* fix boost tests
2020-09-10 18:44:10 -04:00
Matthew Kennedy eb2bc3201c Selectable AFR axis override (#1771)
* add config fields

* config options

* new output channels

* dump out state to ts

* s

* implement override

* enums

* this test is no longer used

* test new behavior

* old

* comments

* impl

* unhide option

* fix

* tests
2020-09-08 17:15:18 -04:00
Matthew Kennedy 8adfef930f Selectable VE axis override (#1769)
* add config fields

* config options

* new output channels

* dump out state to ts

* s

* implement override

* enums

* this test is no longer used

* test new behavior

* old

* comments
2020-09-07 10:15:42 -04:00
Matthew Kennedy a3db817f6e Move ve logic (#1762)
* move ve

* fix build

* fix rendering

* duh

* cleaning

* correct scaling

* put some back

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-09-06 19:06:32 -04:00
Matthew Kennedy fc02c2bdf4 fix broken master, inject engine ptr to rpmcalculator (#1759)
* fix

* oops
2020-09-05 18:49:42 -04:00
rusefi c476cd3b95 refactoring 2020-09-03 19:29:15 -04:00
Matthew Kennedy bad69c812e move lambda in to sensor model (#1736)
* lambda sens

* fix init

* fix

* a test for good measure

* he's climbin in your windows, snatchin you ram up

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-09-01 16:22:31 -04:00
rusefi 286768477c this does not go as planned :( 2020-08-31 08:02:29 -04:00
rusefi 81db997be8 this does not go as planned :( 2020-08-31 07:54:45 -04:00
rusefi 24f12d2993 dead 2020-08-29 09:39:52 -04:00
rusefi 7d53f5859d VVT support for VAG trigger #883 2020-08-25 00:59:07 -04:00
rusefi 4e333dac1c VVT support for VAG trigger #883 2020-08-24 02:07:58 -04:00
rusefi bdbee0d38b VVT support for VAG trigger #883 2020-08-24 02:01:50 -04:00
rusefi 0f9e8bf83e VVT support for VAG trigger #883 2020-08-24 01:21:42 -04:00
rusefi d0705f14ee Allow negative VVT position feedback #1713 2020-08-23 11:49:46 -04:00
Matthew Kennedy f5036a9f84 Add injector model class (#1687)
* stub injector model

* tests

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-08-17 05:22:25 -04:00
Matthew Kennedy 581fe1808f tests 2020-08-10 22:11:25 -07:00
Matthew Kennedy 4ac3ded498 consume 2020-08-10 21:41:03 -07:00
rusefi ae606a6380 trigger and VSS hw integrated testing #1668 2020-08-08 12:03:24 -04:00
rusefi 0ebe7ba059 TS SD integration #1653 2020-08-06 22:05:26 -04:00
rusefi 63acb583c3 testHysteresisSelf 2020-08-04 17:59:31 -04:00
Matthew Kennedy ca8083f4d1 these were testing nothing 2020-08-03 12:22:00 -07:00
Matthew Kennedy 2572809535 don't rely on periodicFastCallback 2020-07-31 22:09:23 -07:00
Matthew Kennedy 1f85c023a8 this test should have never called setTestBug299 2020-07-31 19:08:18 -07:00
Matthew Kennedy 7009c82993 Merge remote-tracking branch 'upstream/master' into remove-plain-maf 2020-07-31 14:56:29 -07:00
Matthew Kennedy f502be0d8b mock airmass 2020-07-31 12:44:22 -07:00
Matthew Kennedy 40047327c5 remove getBaseTableFuel test 2020-07-31 12:43:56 -07:00
Matthew Kennedy eabdd9f458 cleanup 2020-07-30 21:20:10 -07:00
rusefi 6b2c1d4d59 NA6 progress 2020-07-29 22:48:41 -04:00
Matthew Kennedy 40c2fb8047 test cleanup 2020-07-28 14:42:02 -07:00
Matthew Kennedy eea3f2cf36 fix tests 2020-07-28 14:27:34 -07:00
rusefi dfd646cbf5 Weird VAG: DC motor idle valve not ETB #1637
ok, that's the current reality
2020-07-26 12:30:50 -04:00
rusefi 07df0c78a8 Weird VAG: DC motor idle valve not ETB
#1637
Seattle we might have a problem!
2020-07-26 12:03:36 -04:00
rusefi 0302be40ed Weird VAG: DC motor idle valve not ETB #1637 2020-07-26 10:54:51 -04:00
Matthew Kennedy 7bf98384bf add tests for VW mode 2020-07-26 03:11:56 -07:00
Matthew Kennedy 0828146ccc tests & cleanup 2020-07-25 02:00:24 -07:00
rusefillc 07ce0ae1b2 Merge pull request #1634 from mck1117/refactor-inj
move injector logic in to its own file
2020-07-24 22:47:39 -04:00
Matthew Kennedy d19e2b2499 refacto 2020-07-24 18:26:24 -07:00
Matthew Kennedy aeb5c8e8d6 improve test 2020-07-23 01:24:02 -07:00
Matthew Kennedy 7940b84778 start refactor 2020-07-22 13:11:07 -07:00
rusefillc 2e58d92fdb Merge pull request #1606 from mck1117/reset-overlap
reset overlap counter on fuel reschedule
2020-07-20 23:51:34 -04:00
Matthew Kennedy c0ea3f19b7 make private 2020-07-20 18:50:48 -07:00
Matthew Kennedy faf9279402 Merge remote-tracking branch 'upstream/master' into export-all-logicdata 2020-07-20 18:48:54 -07:00
Matthew Kennedy b40114f34f test with fix 2020-07-20 18:47:08 -07:00
Matthew Kennedy 572c347ad7 compensate for bug 2020-07-20 13:21:15 -07:00
Matthew Kennedy 5c4e22fd16 auto export all logicdata 2020-07-20 13:12:21 -07:00
Matthew Kennedy 57de48ad59 impruv 2020-07-20 12:40:23 -07:00
rusefi c1a1f384bb Merge remote-tracking branch 'origin/master' 2020-07-20 14:25:47 -04:00
rusefi a6706b7d26 unit test framework improvements for smoother event execution 2020-07-20 14:25:32 -04:00
rusefillc 7d3876148b Merge pull request #1622 from mck1117/encapsulate-wwae
put wall wetting inside InjectionEvent
2020-07-20 14:19:57 -04:00
Matthew Kennedy bac27ea8ea Merge remote-tracking branch 'upstream/master' into test-1592 2020-07-20 10:54:18 -07:00
rusefi 117e98b753 unit test framework improvements for smoother event execution 2020-07-20 12:45:26 -04:00
rusefi c4885dcc0e unit test framework improvements for smoother event execution 2020-07-20 11:16:51 -04:00
Matthew Kennedy 8282bb127d test 2020-07-20 03:29:43 -07:00
Matthew Kennedy b38c2e3863 put wall wetting inside 2020-07-20 00:04:05 -07:00
rusefi e2c8e97aa0 logicdata into unit tests 2020-07-20 00:36:10 -04:00
Matthew Kennedy e0bf2eb909 fix (#1620) 2020-07-19 18:05:31 -04:00
rusefi 5245cb1978 unit tests: order of tests multispark/sensor tests should not matter #1616
TODO
2020-07-19 14:10:55 -04:00
rusefi 09684963a1 would this work? 2020-07-19 13:59:55 -04:00
rusefi 9c22ca7202 Injectors #1 and #5 stick open #1592
two bytes of progress
2020-07-19 13:54:47 -04:00
rusefi e9c5d5be7e would this work? 2020-07-19 13:50:43 -04:00
rusefi 8c520758d6 would this work? 2020-07-19 13:45:42 -04:00
rusefi 934300465a would this work? 2020-07-19 13:33:02 -04:00
rusefi eaff13ea1f Injectors #1 and #5 stick open #1592
two bytes of progress
2020-07-19 13:32:17 -04:00
rusefi 18efd1609b one step backwards to help build? 2020-07-19 13:26:46 -04:00
rusefi 5406a60e49 Injectors #1 and #5 stick open #1592
starting somewhere
2020-07-19 13:13:25 -04:00
rusefi ec29fd9ca0 better folder structure 2020-07-19 12:57:05 -04:00
Matthew Kennedy a79153bbea correct batch fuel cylinder pairing (#1595)
* correct batch fuel cylinder pairing

* param

* only change behavior on two wire batch

* Add tests for two wire batch & sequential

* improve testing a little bit

* comments

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-07-13 14:46:55 -04:00
rusefi 93f85b0b93 EFI_IDLE_INCREMENTAL_PID_CIC should be a runtime parameter #806 2020-07-12 18:25:48 -04:00
rusefi 2b32bc8c16 PidIndustrial does not limit iTerm fix #1599 2020-07-11 15:30:40 -04:00
rusefi 2a45055289 PidIndustrial does not limit iTerm #1599
confirming issue with a unit test
2020-07-11 15:19:27 -04:00
rusefi 8bcd46291f migrate amazing idle from FSIO to less opaque TS #1581 2020-07-08 01:12:08 -04:00
rusefi bd39351055 idle_min through FSIO not working as intended #1553 2020-07-04 22:01:12 -04:00
andreika-git 8b84243dae Gen config refactor 2 (#1560)
* gen_config refactor, part II

* short board defines

* oops

* comment & undef

* define QUOTE

Co-authored-by: Andrei <andreikagit@users.noreply.github.com>
2020-07-02 12:33:31 -04:00
rusefi 21c35874a5 idle_min through FSIO not working as intended #1553 2020-07-01 20:45:37 -04:00
rusefi 7f3ce36065 1 byte issue in TuneReadWriteTest #1512 2020-06-18 22:51:07 -04:00
Matthew Kennedy aba153b814 simplify cranking corrections (#1510) 2020-06-18 08:54:02 -04:00
Matthew Kennedy 531f1c63c7 fuel math simplifications (#1485)
* simplify

* fix

* tweak

* cleaning

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-06-17 17:15:04 -04:00
rusefi 546344c78a nope, unit tests did not just fix themselves 2020-06-17 08:42:37 -04:00
Matthew Kennedy c46a6e5c0e only setup etb if primary sensor configured instead of proxy (#1489)
* only setup etb if primary sensor configured instead of proxy

* fix test

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-06-16 21:38:09 -04:00
rusefi 160d8d7462 Trigger decoding issues (60-2) #1488
unit test refactoring
2020-06-15 00:11:02 -04:00
Matthew Kennedy db29a3523a Fix gppwm properly (#1487)
* directly control output in onoff mode

* test fixing
2020-06-11 20:43:26 -04:00
Matthew Kennedy 2525a9a22c Factor out airmass logic (#1483)
* refactor

* extract more airmass

* rename, fix tests
2020-06-06 07:25:19 -04:00
Matthew Kennedy 9ecb0a4e55 refactor (#1481) 2020-06-03 21:12:12 -04:00
Matthew Kennedy c95ed26d89 Remove old thermistor implementation (#1458)
* remove test clt/iat

* remove warning since this code is nearly dead

* remove old therm impl

* tests & live doc

* not quite right
2020-05-28 17:51:33 -04:00
Matthew Kennedy 38cb254de3 remove maf2map mode (#1474)
* remove

* remove fully

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-05-28 14:06:18 -04:00
Matthew Kennedy 45e03262d0 Redundant accelerator pedal (#1470)
* add second boudns

* init logic

* test changes

* reconfigure correctly

* rams
2020-05-23 19:48:32 -04:00
Matthew Kennedy a2313a853c switch some firmware warnings to errors (#1465)
* warnings as errors

* throw instead of exit

* test massaging

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-05-23 10:46:28 -04:00
rusefi f47f5089ba Clean-up analog channels in "unit" tests #1456 2020-05-20 03:49:56 -04:00
rusefi 93a3379fce Clean-up analog channels in "unit" tests #1456 2020-05-20 03:42:09 -04:00
rusefi 60bfb2d789 Clean-up analog channels in "unit" tests #1456 2020-05-20 03:38:55 -04:00
Matthew Kennedy ce2beafb5f Redundant tps (#1427)
* add redundant sensor

* add tests

* add configure, info printing

* tests

* tests

* partial hookup

* fix

* fix

* bad makefile merge

* use second TPS config

* update test

* update test

* sensor names

* set second pin by default

* fix auto cal

* auto cal both sensors

* add reconfigure of secondary sensors

* gobblin' up your ram

* slow down write a little bit

* put split in debug gauge

* s

Co-authored-by: Matthew Kennedy <matthew@mck-mbp-15.local>
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-05-18 14:32:00 -04:00
Matthew Kennedy e6e48ce66c binary logging (#1443)
* field support

* tests

* makefiles

* test data too

* missing include dir

* write correct thing

* fix one test

* fix test

* omnomnomnom ram

* format

* use defined names

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-05-17 15:56:37 -04:00
rusefi 8253f5b931 better VVT progress 2020-05-15 21:33:25 -04:00
rusefi 2878461d25 VVT_INACTIVE 2020-05-14 23:31:01 -04:00
Matthew Kennedy 7a41df6153 Fix 100% duty injection (#1431)
* skip turn-off for high duty

* mock executor injection

* test

* switch to hard cut

* test no longer relevant
2020-05-14 07:44:32 -04:00
rusefi 2db29c7824 34-2 3 cam Toyota wheel progress 2020-05-10 18:03:11 -04:00
rusefi b6f6d28ed4 removing some unneeded flexibility 2020-05-10 02:06:15 -04:00
rusefi bfe3b2c5fb 34-2 3 cam Toyota wheel progress 2020-05-10 01:21:54 -04:00
rusefi e4cfc39b68 docs & clean-up 2020-05-10 00:59:32 -04:00
Matthew Kennedy 424a86be7b short term fuel trim: part 2 (#1405)
* add tooltip

* add other direction to deadband

* add impl

* test partitioning

* makefile

* wrong comment

* fix include
2020-05-07 08:52:32 -04:00
Matthew Kennedy 55159cae44 short term fuel trim: part 1 (#1402)
* add cell

* add stft cell tests

* add bit

* minimally generate

* config defaults
2020-05-06 21:00:40 -04:00
Matthew Kennedy 6f3736f246 Rewrite boost control in new closed loop framework (#1342)
* rewrite boost

* test

* fix build

* tests

* open loop test

* test closed loop

* fix names

* typo

* tests

* mock boost setOutput

* needs more virtual

* fix boost logic

* switch to TPS based open loop

* fix test

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-05-06 08:40:42 -04:00
Matthew Kennedy 573d6d2d55 pull out std air charge math (#1397) 2020-05-05 08:01:40 -04:00
rusefi 9353ef7d51 better state messages 2020-05-01 18:52:06 -04:00
Matthew Kennedy dee2568fd5 Minor ETB improvements (#1381)
* fix pid reset and pedal failure

* pause control later

* test pauseEtbControl

* update tooltip + field name

* update test
2020-04-28 16:52:40 -04:00
Matthew Kennedy 7e067eb0b5 Move ETB control to a thread (#1374)
* switch to thread

* actually use default frequency define

* crank ADC too

* make space in RAM

* remove TS field

* this should work for test

* fix dt

* re-resize ram
2020-04-28 07:22:31 -04:00
rusefi d84f194ab7 fixing build 2020-04-26 20:40:06 -04:00
Matthew Kennedy 738e53442d General purpose PWM: implementation & tests (#1366)
* config

* significant digits

* renumber enum, no need for a "none"

* ui

* impl base

* error handle MAP

* init & update

* don't need arg

* don't lie about sensor

* fix test build

* test stub

* initialize

* null check

* fix clamping

* test output

* types & enums

* don't need param

* test getOutput

* fix

* output pin instead of brain pin

* default config
2020-04-26 14:06:28 -04:00
Matthew Kennedy c9ca028c9c etb CL test (#1361) 2020-04-24 17:54:03 -04:00
Matthew Kennedy b1741bdd6e Improve ETB idle control (#1319)
* compress idle pos

* fix tests for new behavior
2020-04-20 17:29:03 -04:00
Matthew Kennedy ce08650f65 Inject idle to ETB (#1335)
* inject idle position

* pointer

* etb idle tests

* extract mocks

* ops

* test negative case too

* don't convert for etb

* guard
2020-04-20 16:26:35 -04:00
Matthew Kennedy 3418356b6b ETB: inject pedal map (#1334)
* add clampf

* more tests

* public

* missed a mock

* fix output duty clamping

* do it that way

* more

* ah ha!

* test negative too

* clamp pedal

* inject pedal map

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-04-20 14:34:45 -04:00
Matthew Kennedy d17afd3a63 ETB testing: output, position clamping (#1333)
* add clampf

* more tests

* public

* missed a mock

* fix output duty clamping

* do it that way

* more

* ah ha!

* test negative too

* clamp pedal

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-04-20 13:52:20 -04:00
Matthew Kennedy bb24782bc2 rewrite etb tests with gmock (#1330) 2020-04-19 20:32:41 -04:00
Matthew Kennedy 830f03c003 Closed loop controller base & ETB testing (#1322)
* closed loop controller base

* etb tps test

* closed loop controller tests

* test support

* update gtest

* fix for change

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-04-19 17:18:47 -04:00
Matthew Kennedy f54db83d67 Improve unexpected (#1323)
* use type instead of value

* fix remaining initializer-list users

* impruv

* last consumer?

* consumer

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-04-19 08:37:43 -04:00
Matthew Kennedy 363f6d5110 add expected helper class (#1321)
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-04-19 01:53:04 -04:00
rusefi 192a96838f consistency 2020-04-18 22:46:22 -04:00
Matthew Kennedy 942403cec2 Fuel/ign correctino on new temp sensors (#1318)
* corrections

* test

* adv map

* tests

* cleanup

* lcd

* fsio

* unneeded

* more math

* last consumer

* cleanup

* fix kinetis
2020-04-18 18:45:30 -04:00
Matthew Kennedy 2535d123b8 CLT consumer: fsio (#1302)
* idle

* CLT test prep

* idle target

* header

* air interpolate

* ancient comment

* fuel cut

* fuel cut, idle tests

* cleanup

* fsio test help
2020-04-15 16:20:45 -04:00
Matthew Kennedy 83592f0dff New clt consumers part 1 (#1301)
* idle

* CLT test prep

* idle target

* header

* air interpolate

* ancient comment

* fuel cut

* fuel cut, idle tests

* cleanup
2020-04-15 09:48:17 -04:00
rusefi 3f4518c324 fixing master 2020-04-14 12:55:39 -04:00
Matthew Kennedy afc5f6c99b fix maf (#1287) 2020-04-12 15:52:29 -04:00
Matthew Kennedy 3abd181f6f CLT/IAT/Aux in the new sensor world (#1269)
* hook up clt

* init test

* probably fix test

* aux temp

* relax checking

* more significant figures

* remove old aux temp

* hand generate

* claim RAM

* move to ccm

* subscribe

* info printing

* warnings

* raise high voltage failure threshold

* fix test

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-04-07 16:07:09 -04:00
Matthew Kennedy 01c87a87ee Deadband helper & tests (#1267)
* deadband

* header

* comment
2020-04-06 09:16:26 -04:00
Matthew Kennedy f161a6990a fix (#1268) 2020-04-06 09:00:26 -04:00
Matthew Kennedy 95ef31da67 Goodbye, old TPS (#1266)
* clear out tps

* boost control

* aux valves

* launch, aux valves

* unused field
2020-04-05 19:33:33 -04:00
Matthew Kennedy 44bb09d1a4 yet more tps consumers (#1258)
* advance_map

* tests

* unneeded

* idle

* use driver intent instead

* and obd and lcd

* engine load

* ve lookup

* unused

* oops we needed that

* oops needed that too

* mocking

* test mocks

* oops

* helps to use the right sensor

* and cylinder cleanup

* fuel math

* typo

* old tests

* kill dead stuff

* cleanup

* more

* fix

* test

* s

* fix signature

* fix test

* comment

* priming pulse

* remove mock tps

* remove more dead

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-04-05 09:11:25 -04:00
Matthew Kennedy 43d38a6691 TPS Initialization Testing (#1264)
* test support

* stub for tests

* plumbing so we can test this

* add test

* comments
2020-04-05 09:10:08 -04:00
Matthew Kennedy 606a7fff0d More TPS consumers: VE lookup (#1256)
* advance_map

* tests

* unneeded

* idle

* use driver intent instead

* and obd and lcd

* engine load

* ve lookup

* unused

* oops we needed that

* oops needed that too

* mocking

* test mocks

* oops

* helps to use the right sensor

* and cylinder cleanup

* fuel math

* typo

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-04-04 08:41:09 -04:00
Matthew Kennedy 9a21262cf8 TPS consumers: idle and ignition and obd2 and lcd (#1254)
* advance_map

* tests

* unneeded

* idle

* use driver intent instead

* and obd and lcd

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-04-03 19:59:08 -04:00
Matthew Kennedy d16ff88e30 run ETB on new TPS (#1248)
* run ETB on new TPS

* why did we include all those...?

* init tps for etb test

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-04-02 21:33:49 -04:00
shadowm60 baa2547da1 E30 M3 Tach output solution #907 (#1203)
* Update tachometer.cpp

Initial implementation of E30 M3 Tach output solution #907, unit_test plus debugging next

* tacho unit tests

First successfull unit test for tachometer

* RAM adjustment so it would link

* refactoring tacho, broken!

* starting to make some progress...still fails after a few seconds

* Rework with SW PWM

* Update after code review

* unit_test update

* First working unit_test

* Update .gitignore

* Update engine_controller.cpp

* Update engine_controller.cpp

* Update tachometer.h

* Update test_tacho.cpp

Co-authored-by: rusefi <rusefi@users.noreply.github.com>
2020-04-02 15:20:04 -04:00
Matthew Kennedy cee565f2b1 Add redundant sensor (#1249)
* add redundant sensor

* add tests

* add configure, info printing

* tests

* tests

* casing

Co-authored-by: Matthew Kennedy <matthew@mck-mbp-15.local>
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-04-02 08:55:21 -04:00
Matthew Kennedy 7e4f4ca97e Replace hasPedalPositionSensor (#1245)
* remove

* add Sensor::hasSensor

* consume in etb

* remove unused state

* don't use it there either

* format

* fix up tests

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-04-02 08:04:12 -04:00
rusefi b40d4d588d code style 2020-04-01 21:32:21 -04:00
Matthew Kennedy 8235d8d765 Fully switch acc pedal to new sensors (#1212)
* proxy sensor

* header

* idle

* can

* settings

* remove old mocking

* remove old impl

* etb

* oops, gotta actually register it

* fix test

* structured bindings ftw!

* driver intent for stepper

* tear out old

* oops too much
2020-04-01 20:21:03 -04:00
Matthew Kennedy cd41449459 Debuggability in the new sensor world (#1238)
* rename to avoid conflict

* fix efilib

* add sensor printing

* makefile

* that check was already there

* const

* const

* fix tests

* formatting

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-03-30 18:29:42 -04:00
Matthew Kennedy b7033bbde9 Finally rename injector_central to bench_test (#1229)
* bench test rename

* rename consumers

* good lord what are all of these externs doing

* fix tests
2020-03-26 08:03:55 -04:00
Matthew Kennedy b7b67a2a7f Multispark implementation (#1192)
* multispark prototype

* only multispark if not cut

* typo

* do some reasonableish math

* consume cfg

* todo

* bad merge

* move math out of engine2.cpp

* engine state config

* consume generated

* use new

* hand generate

* doc, debugging

* debug channel names

* don't depend on rpmcalc

* safer, fix math

* tests

* default multispark config

* remove todo

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-03-26 01:49:36 -04:00
rusefi aa28127211 random code inspired by Ola 2020-03-24 19:50:04 -04:00
Matthew Kennedy fa8036e4b6 fix (#1202)
* fix test

* shrink memory
2020-03-19 20:02:49 -04:00
rusefi 0e8acf6514 CLT stops working when using 2-0 custom trigger wheel #1171 2020-03-06 01:31:04 -05:00
Matthew Kennedy 6d8eedf9ca Split out EtbHardware (#1168)
* start tear out motor

* fix

* nuke reconfig

* guard for test

* test fixing

* format, condense headers

* fix todos

* undo todo

* format
2020-03-03 17:56:50 -05:00
rusefi 923daaa3a1 ETB: expand automated testing #115 2020-02-22 23:18:02 -05:00
rusefi 2eec300251 miata vvt trigger decoding is broken #1145 2020-02-14 13:02:27 -05:00
rusefi 67e6812dbb Merge remote-tracking branch 'remotes/origin/2019.12.25_release_1.19.12_xmas' 2020-02-14 10:51:26 -05:00
rusefi f69bbba6a4 Merge remote-tracking branch 'remotes/origin/2019.12.25_release_1.19.12_xmas' 2020-02-14 10:50:50 -05:00
rusefi eaf28b161b miata vvt trigger decoding is broken #1145 2020-02-14 10:49:22 -05:00
rusefi b4d2ce0ecd miata vvt trigger decoding is broken #1145 2020-02-14 09:33:29 -05:00
rusefi fc33789da7 miata vvt trigger decoding is broken #1145 2020-02-14 00:37:36 -05:00
rusefi 7e86765370 cam/vvt decoder test progress 2020-02-05 01:08:39 -05:00
Matthew Kennedy 734963343d Rescale TPS (#1112)
* fake adc ticks

* consumers

* fix test 1

* fix tests
2020-02-01 16:41:07 -05:00
rusefi 3f08833de2 this test is even better now! 2020-01-31 13:45:15 -05:00
rusefi f4d36f32fa VVT refactoring & assertions for VVT test 2020-01-31 01:49:10 -05:00
rusefi a124e0b934 date & VVT test progress 2020-01-31 01:23:01 -05:00
rusefi 5bb778381a lovely tiny bug which mostly affects NB2 with an impossible one tooth crank trigger wheel 2020-01-30 01:47:34 -05:00
rusefi 9bd819a18d extracting class & codes clean-up 2020-01-28 00:16:33 -05:00
rusefi ae228dff0e trigger refactoring 2020-01-26 14:20:55 -05:00
rusefi 98c6198f1d reducing code duplication 2020-01-26 06:28:33 -05:00
rusefi dfa8d9ccc9 refactoring trigger 2020-01-26 03:33:45 -05:00
rusefi a89e20a647 refactoring 2020-01-22 00:40:26 -05:00
rusefi a222ecdfe1 happy new year unification 2020-01-13 21:57:43 -05:00
rusefi abe1b8c1f3 refactoring: no need to specify parameter manually 2020-01-12 10:43:02 -05:00
Matthew Kennedy 0256b0358e Add timeout + raw value access for sensors (#1098)
* timeout

* inject stamp

* allow getting raw value

* plumb timeout

* fix tests
2020-01-12 03:25:23 -05:00
rusefi 67a3796086 better method names 2020-01-10 23:17:58 -05:00
Matthew Kennedy cb1039fe23 Inject timestamps in to hwHandleShaftSignal (#1090)
* injection

* injectors
2020-01-09 21:19:11 +03:00
rusefi 63e3e84e08 happy new year 2020-01-08 00:02:40 -05:00
Matthew Kennedy 3d8c4f4179 Strongly typed action constructor (#1087)
* strong typing

* maybe we needed that one
2020-01-07 18:10:31 -05:00
Matthew Kennedy 6703705a33 Pass action_s instead of callback/param (#1084)
* change action

* consumers

* fix test

* didn't mean to add those

* simplify

* fix simulator

* fix sim for real

* oy

* maybe this time the simulator will actually be fixed, for real

* don't rely on undefined behavior
2020-01-07 00:41:18 -05:00
rusefi 4605c64a07 that's not a worth a file 2019-12-24 00:03:53 -05:00
Matthew Kennedy 2b4b119962 Add new sensor function types (#1065)
* add functions

* add tests

* add chain tests

* float suffix
2019-12-17 09:06:29 -05:00
rusefi 95d2875672 this stuff is pretty dead 2019-12-15 21:59:25 -05:00
rusefi 19ce8b7044 and finally a unit test, like it shoud be! 2019-12-13 14:55:20 -05:00
rusefi 27f617686b progress towards ETB controller mocking 2019-12-13 13:52:34 -05:00