Commit Graph

686 Commits

Author SHA1 Message Date
Matthew Kennedy b9e96322c5
Idle refactor open loop (#2146)
* impl

* typo

* tests
2020-12-26 19:34:42 -05:00
Matthew Kennedy ff4ce2fb1f
create limp manager (#2142)
* move rev limit to limp manager

* call fatal error

* include order

* fix bug

* tests

* comment

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-12-26 17:30:46 -05:00
Matthew Kennedy 542cb6a420
more testable idle logic (#2140)
* header

* test

* impl
2020-12-26 08:32:01 -05:00
Matthew Kennedy 17554539d1
rename (#2136)
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-12-25 08:40:54 -05:00
Matthew Kennedy 3727233e11
fix tach test 2130 (#2134)
* fix

* comment
2020-12-24 21:20:24 -05:00
rusefillc 7e201990d3 Restore testPulsePerRev #2130 2020-12-24 08:17:43 -05:00
Matthew Kennedy 3d13d03424
Purge e34 config (#2127)
* remove

* enums

* s

* func test

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-12-24 07:31:25 -05:00
Matthew Kennedy 8737ba62c2
Purge rover v8 config (#2116)
* bye

* goodbye, rover v8

* that snuck in

* use a different config for that test
2020-12-22 10:05:54 -05:00
Matthew Kennedy 690ab7e917
gpio unit tests (#2099)
* fix unregister api for gpio

* consumers

* guard with a critical section

* index

* guard less

* unregister under lock

* fix reinit

* dead flag

* fix most tests

* initialize properly

* initialize properly

* assertions in tests

* fix message

* move gpio mocking

* test gpios

* we must lock earlier to be truly safe

* this was using huge memory

* devirtualize

* test deinit
2020-12-18 17:19:02 -05:00
rusefillc 55b4e82615 naming consistency 2020-12-18 09:01:18 -05:00
Matthew Kennedy aeea50ada2
move target computation (#2091) 2020-12-17 17:46:51 -05:00
Matthew Kennedy 378d118118
test (#2071)
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-12-12 23:40:05 -05:00
Matthew Kennedy f2426677db
start fuel pump as soon as trigger events happen (#2038)
* switch pump fsio logic

* value collision

* fuel pump in tests

* mock time since trigger

* test fp

* init pin in test

* fix gpio outputs in tests

* comment

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-12-10 01:23:24 -05:00
Matthew Kennedy a08e79789d
second lambda (x-series CAN only, for now) (#2048)
* add sensor

* second sensor

* switch sensor name

* gobblin up your memory

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-12-09 20:26:23 -05:00
Matthew Kennedy bad0e6b949
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 5bae56a32a not this line yet? 2020-12-07 01:40:26 -05:00
rusefi 2a1b585bfe Revert "Revert "Split ETB in to interface + implementation headers (#2040)""
This reverts commit 4f4bb957
2020-12-07 01:27:27 -05:00
rusefi bb3cb0ba22 Revert "Require redundant tps for ETB (#2037)"
This reverts commit 4f1085a8
2020-12-07 01:11:32 -05:00
rusefi 4f4bb95770 Revert "Split ETB in to interface + implementation headers (#2040)"
This reverts commit d9a82c09
2020-12-07 01:11:19 -05:00
Matthew Kennedy d9a82c09af
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 4f1085a87a
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 efef2bfe4f
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 67269aa637
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 b3d45b909f Revert "switch rpm calculator to use timer class (#2005)"
This reverts most of a26ed3eb5a commit.
2020-12-06 18:05:53 -05:00
Matthew Kennedy a26ed3eb5a
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 c5e3657d45
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 9ccda6bbe7
add isRedundant (#2031)
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-12-06 14:55:06 -05:00
rusefillc 29141055ab one step back #2017 2020-12-06 08:50:10 -05:00
Matthew Kennedy 2d9be1077b
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 ffae0cd335
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 8c5fe1bf23 unit tests in clang #2012 2020-12-05 00:22:10 -05:00
shadowm60 864bd7fa73
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 6fb745d29c
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 f15efa7f15 dead engine config 2020-11-26 20:53:44 -05:00
Matthew Kennedy a5ba9d54dc
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 750070a496
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 492498f8d0
Boost tolerance (#1986)
* tolerate invalid closed loop config when in open loop mode

* fix test
2020-11-25 07:27:24 -05:00
shadowm60 7c793834ef
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 68c8d8c6a2 Starter is engaged on start-up in pull-up configuration #1969
usability & test improvement
2020-11-19 17:15:28 -05:00
Matthew Kennedy ee51da64ad
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 47fbb92bff Starter seems to be engaged forever fix #1965 2020-11-18 23:54:30 -05:00
rusefillc 7c2cb1d2ac Starter seems to be engaged forever #1965 2020-11-18 23:06:44 -05:00
rusefillc bec2e0b2e6 Starter seems to be engaged forever #1965 2020-11-18 22:56:05 -05:00
rusefillc a9e0bffbbd Starter seems to be engaged forever #1965 2020-11-18 22:47:40 -05:00
rusefillc 7f688f7616 Starter seems to be engaged forever #1965 2020-11-18 20:53:03 -05:00
rusefillc ee7e1880a2 Something something unit test ETB does not work #1966 2020-11-18 20:12:58 -05:00
rusefillc e29911114a Starter seems to be engaged forever #1965 2020-11-18 20:01:02 -05:00
rusefillc 35754d298a Starter seems to be engaged forever #1965 2020-11-18 19:34:09 -05:00
Matthew Kennedy 5b0a178605
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 e00a9b91c6 occasional tunerstudio CRC errors #1943
now with a bit of a unit test
2020-11-15 12:44:53 -05:00
rusefillc 43c5c7ff83 occasional tunerstudio CRC errors #1943
unit test progress
2020-11-15 12:36:07 -05:00
rusefillc a42077bef8 occasional tunerstudio CRC errors #1943
now with a bit of a unit test
2020-11-15 12:27:47 -05:00
Matthew Kennedy 0e3673e78c
remove idle thread; just call from periodicSlowCallback (#1924)
* remove thread

* remove ui
2020-11-11 21:47:19 -05:00
Matthew Kennedy 02c4d630f6
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 111b017442 refactoring 2020-11-05 18:10:44 -05:00
Matthew Kennedy cf3dc9c2c3
convert cranking defaults to mg (#1921)
* convert cranking defaults to mg

* fix tests
2020-11-03 14:12:26 -05:00
Matthew Kennedy 3e30865e6c
unused tach field (#1918) 2020-10-29 15:26:01 -04:00
Matthew Kennedy 09b41bb1bb
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 a90792fa44
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 f37ed597c5
fix double deadtime (#1904)
* move global correction factor to fuel mass

* tests

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

* spit'n'polish
2020-10-23 20:25:47 -04:00
Matthew Kennedy 06f92807cc
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 42bfad807b
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 44653da2e5
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 bd7dcf1709 HW CI has failed 11 times since Oct 2 #1849 2020-10-16 13:54:12 -04:00
Matthew Kennedy a8057cfc16
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 2083b34cf9
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 299a345c1c
etb function config 1 (#1881)
* this should all be safe...

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

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

* rename
2020-10-12 15:10:34 -04:00
rusefillc 07a905b1fe revering functional part of
Etb function cfg, try again #1860
try again from #1831
2020-10-08 17:09:00 -04:00
Matthew Kennedy 1bce3aa4c0
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 cb47cde068
switch from float to expected<float> (#1862) 2020-10-06 22:33:00 -04:00
Matthew Kennedy 8cff16e797
FSIO refactoring (#1861)
* better fsio tests

* condense operators

* minor parser cleanup too

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

* tests
2020-10-05 14:22:59 -04:00
Matthew Kennedy c885db32f0
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 367436454d HW CI has failed 11 times since Oct 2 #1849
Revert "ETB function config (#1831)"

This reverts commit af59c45a
2020-10-03 22:00:00 -04:00
Matthew Kennedy af59c45adb
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 f1c04efefa
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 2d771018e8 unit test for start/stop hardware and pin repository #1811 2020-09-21 12:29:01 -04:00
rusefi 77f15256b6 unit test for start/stop hardware and pin repository #1811 2020-09-21 08:57:37 -04:00
rusefi f8f3e74d99 unit test for start/stop hardware and pin repository #1811 2020-09-21 05:02:35 -04:00
Matthew Kennedy c1699d91d0
fix closed loop fuel (#1797)
* fix

* add a test

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

* look at all this RAM!
2020-09-18 13:47:49 -04:00
Matthew Kennedy 97cb9f45bd
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 256a4a2637 Revert "logging simplification: switch bare functions to member functions (#1788)"
This reverts commit d941bdc5
2020-09-12 04:36:24 -04:00
Matthew Kennedy d941bdc502
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 337106cd24
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 eebded8caa
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 6d1acb40f8
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 ef0b2f7be0
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 6e7d72170f
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 95798a5246
fix broken master, inject engine ptr to rpmcalculator (#1759)
* fix

* oops
2020-09-05 18:49:42 -04:00
rusefi ca21d5b4c2 refactoring 2020-09-03 19:29:15 -04:00
Matthew Kennedy 5fec6d0c04
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 efdaef81af this does not go as planned :( 2020-08-31 08:02:29 -04:00
rusefi 24cf51e883 this does not go as planned :( 2020-08-31 07:54:45 -04:00
rusefi 00572b3c30 dead 2020-08-29 09:39:52 -04:00
rusefi 540eef5e0d VVT support for VAG trigger #883 2020-08-25 00:59:07 -04:00
rusefi 3a2670d5de VVT support for VAG trigger #883 2020-08-24 02:07:58 -04:00
rusefi 7867e83e43 VVT support for VAG trigger #883 2020-08-24 02:01:50 -04:00
rusefi 95bd50da94 VVT support for VAG trigger #883 2020-08-24 01:21:42 -04:00
rusefi adf899e338 Allow negative VVT position feedback #1713 2020-08-23 11:49:46 -04:00
Matthew Kennedy 5929164fb3
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 b961944790 tests 2020-08-10 22:11:25 -07:00
Matthew Kennedy 1f64754b57 consume 2020-08-10 21:41:03 -07:00
rusefi 33d31d16f7 trigger and VSS hw integrated testing #1668 2020-08-08 12:03:24 -04:00
rusefi 526e02af53 TS SD integration #1653 2020-08-06 22:05:26 -04:00
rusefi b4862138ac testHysteresisSelf 2020-08-04 17:59:31 -04:00
Matthew Kennedy 0183f0f24a these were testing nothing 2020-08-03 12:22:00 -07:00
Matthew Kennedy 795da6ea43 don't rely on periodicFastCallback 2020-07-31 22:09:23 -07:00
Matthew Kennedy 8b97b37a24 this test should have never called setTestBug299 2020-07-31 19:08:18 -07:00
Matthew Kennedy 978fa20916 Merge remote-tracking branch 'upstream/master' into remove-plain-maf 2020-07-31 14:56:29 -07:00
Matthew Kennedy 28225a078b mock airmass 2020-07-31 12:44:22 -07:00
Matthew Kennedy 197fba8c64 remove getBaseTableFuel test 2020-07-31 12:43:56 -07:00
Matthew Kennedy 132ee12974 cleanup 2020-07-30 21:20:10 -07:00
rusefi 196337a8de NA6 progress 2020-07-29 22:48:41 -04:00
Matthew Kennedy 2253fe6eef test cleanup 2020-07-28 14:42:02 -07:00
Matthew Kennedy 8b305acf68 fix tests 2020-07-28 14:27:34 -07:00
rusefi 7e86dbc249 Weird VAG: DC motor idle valve not ETB #1637
ok, that's the current reality
2020-07-26 12:30:50 -04:00
rusefi 3857607fc2 Weird VAG: DC motor idle valve not ETB
#1637
Seattle we might have a problem!
2020-07-26 12:03:36 -04:00
rusefi d5739815b4 Weird VAG: DC motor idle valve not ETB #1637 2020-07-26 10:54:51 -04:00
Matthew Kennedy 2b212fbaab add tests for VW mode 2020-07-26 03:11:56 -07:00
Matthew Kennedy 66bd14ebad tests & cleanup 2020-07-25 02:00:24 -07:00
rusefillc 34df0862b6
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 626f55a08a refacto 2020-07-24 18:26:24 -07:00
Matthew Kennedy cad0d47443 improve test 2020-07-23 01:24:02 -07:00
Matthew Kennedy 5e7ddc9f24 start refactor 2020-07-22 13:11:07 -07:00
rusefillc c6d2a856dd
Merge pull request #1606 from mck1117/reset-overlap
reset overlap counter on fuel reschedule
2020-07-20 23:51:34 -04:00
Matthew Kennedy 27f346b0ff make private 2020-07-20 18:50:48 -07:00
Matthew Kennedy a6139c5c70 Merge remote-tracking branch 'upstream/master' into export-all-logicdata 2020-07-20 18:48:54 -07:00
Matthew Kennedy b66b8f8542 test with fix 2020-07-20 18:47:08 -07:00
Matthew Kennedy ea49647c1d compensate for bug 2020-07-20 13:21:15 -07:00
Matthew Kennedy 66b9c3ebea auto export all logicdata 2020-07-20 13:12:21 -07:00
Matthew Kennedy 1da7be3f67 impruv 2020-07-20 12:40:23 -07:00
rusefi a92a8ba262 Merge remote-tracking branch 'origin/master' 2020-07-20 14:25:47 -04:00
rusefi 1e8a9862f1 unit test framework improvements for smoother event execution 2020-07-20 14:25:32 -04:00
rusefillc d85e98d1f7
Merge pull request #1622 from mck1117/encapsulate-wwae
put wall wetting inside InjectionEvent
2020-07-20 14:19:57 -04:00
Matthew Kennedy 8dba21c702 Merge remote-tracking branch 'upstream/master' into test-1592 2020-07-20 10:54:18 -07:00
rusefi 2a45c9cbe8 unit test framework improvements for smoother event execution 2020-07-20 12:45:26 -04:00
rusefi de66f4dc6e unit test framework improvements for smoother event execution 2020-07-20 11:16:51 -04:00
Matthew Kennedy 9c736a2c3d test 2020-07-20 03:29:43 -07:00
Matthew Kennedy 46b7567195 put wall wetting inside 2020-07-20 00:04:05 -07:00
rusefi b2edd3a4f4 logicdata into unit tests 2020-07-20 00:36:10 -04:00
Matthew Kennedy d6464fffe7
fix (#1620) 2020-07-19 18:05:31 -04:00
rusefi 46a1d361b5 unit tests: order of tests multispark/sensor tests should not matter #1616
TODO
2020-07-19 14:10:55 -04:00
rusefi f7a182c170 would this work? 2020-07-19 13:59:55 -04:00
rusefi dbd3eaf7a9 Injectors #1 and #5 stick open #1592
two bytes of progress
2020-07-19 13:54:47 -04:00
rusefi c755dea256 would this work? 2020-07-19 13:50:43 -04:00
rusefi 8bce289fac would this work? 2020-07-19 13:45:42 -04:00
rusefi b67e9c9df6 would this work? 2020-07-19 13:33:02 -04:00
rusefi ded219ba78 Injectors #1 and #5 stick open #1592
two bytes of progress
2020-07-19 13:32:17 -04:00
rusefi 33b21c8bcf one step backwards to help build? 2020-07-19 13:26:46 -04:00
rusefi fdb455a004 Injectors #1 and #5 stick open #1592
starting somewhere
2020-07-19 13:13:25 -04:00
rusefi f2fd9decdd better folder structure 2020-07-19 12:57:05 -04:00
Matthew Kennedy ee6cb2c97a
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 13aef2dd77 EFI_IDLE_INCREMENTAL_PID_CIC should be a runtime parameter #806 2020-07-12 18:25:48 -04:00
rusefi 7735758ec5 PidIndustrial does not limit iTerm fix #1599 2020-07-11 15:30:40 -04:00
rusefi 84ebfe301a PidIndustrial does not limit iTerm #1599
confirming issue with a unit test
2020-07-11 15:19:27 -04:00
rusefi 720ade2319 migrate amazing idle from FSIO to less opaque TS #1581 2020-07-08 01:12:08 -04:00
rusefi 23e6ea5475 idle_min through FSIO not working as intended #1553 2020-07-04 22:01:12 -04:00
andreika-git 1e8bebd5b3
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 a83cef6934 idle_min through FSIO not working as intended #1553 2020-07-01 20:45:37 -04:00
rusefi 31f01bf26b 1 byte issue in TuneReadWriteTest #1512 2020-06-18 22:51:07 -04:00
Matthew Kennedy c8fb6993ac
simplify cranking corrections (#1510) 2020-06-18 08:54:02 -04:00
Matthew Kennedy a34201d1d1
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 fb5756fe3e nope, unit tests did not just fix themselves 2020-06-17 08:42:37 -04:00
Matthew Kennedy 65625deb32
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 9016df654c Trigger decoding issues (60-2) #1488
unit test refactoring
2020-06-15 00:11:02 -04:00
Matthew Kennedy b906d12268
Fix gppwm properly (#1487)
* directly control output in onoff mode

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

* extract more airmass

* rename, fix tests
2020-06-06 07:25:19 -04:00
Matthew Kennedy 2bdd8128db
refactor (#1481) 2020-06-03 21:12:12 -04:00
Matthew Kennedy 105460dada
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 bef53d8ba5
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 0290a268ab
Redundant accelerator pedal (#1470)
* add second boudns

* init logic

* test changes

* reconfigure correctly

* rams
2020-05-23 19:48:32 -04:00
Matthew Kennedy b11c5cd8c8
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 f2cf1358c1 Clean-up analog channels in "unit" tests #1456 2020-05-20 03:49:56 -04:00
rusefi f32e7c19f4 Clean-up analog channels in "unit" tests #1456 2020-05-20 03:42:09 -04:00
rusefi 695c8ddb03 Clean-up analog channels in "unit" tests #1456 2020-05-20 03:38:55 -04:00
Matthew Kennedy 9dda1a21bc
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 94e63e7c43
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 afc763f068 better VVT progress 2020-05-15 21:33:25 -04:00
rusefi da4c7e1a2a VVT_INACTIVE 2020-05-14 23:31:01 -04:00
Matthew Kennedy e46d9f0c99
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 1f692c4a9b 34-2 3 cam Toyota wheel progress 2020-05-10 18:03:11 -04:00
rusefi 3f7ca92241 removing some unneeded flexibility 2020-05-10 02:06:15 -04:00
rusefi 32ba492b48 34-2 3 cam Toyota wheel progress 2020-05-10 01:21:54 -04:00
rusefi ac9faf6646 docs & clean-up 2020-05-10 00:59:32 -04:00
Matthew Kennedy e2974cfeda
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 aa3bf51723
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 74d13c391f
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 745b0c04ac
pull out std air charge math (#1397) 2020-05-05 08:01:40 -04:00
rusefi c39662b5c6 better state messages 2020-05-01 18:52:06 -04:00
Matthew Kennedy d728b1ca48
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 fe4b531aeb
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 6bd5cd1112 fixing build 2020-04-26 20:40:06 -04:00
Matthew Kennedy f128b33694
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 a444e09ff8
etb CL test (#1361) 2020-04-24 17:54:03 -04:00
Matthew Kennedy 99489cff67
Improve ETB idle control (#1319)
* compress idle pos

* fix tests for new behavior
2020-04-20 17:29:03 -04:00
Matthew Kennedy 1a5e0a42f8
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 e04008610a
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 0619575716
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 8aac233a5f
rewrite etb tests with gmock (#1330) 2020-04-19 20:32:41 -04:00
Matthew Kennedy 75b009bbae
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 0d699bcfe9
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 7f60384c75
add expected helper class (#1321)
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-04-19 01:53:04 -04:00
rusefi c5a0da2db7 consistency 2020-04-18 22:46:22 -04:00
Matthew Kennedy 4d24fdd57d
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 bc15e0826d
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 044766ec70
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 697055bd9f fixing master 2020-04-14 12:55:39 -04:00
Matthew Kennedy e1301f3c47
fix maf (#1287) 2020-04-12 15:52:29 -04:00
Matthew Kennedy 8006c0a548
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 200bfe3f80
Deadband helper & tests (#1267)
* deadband

* header

* comment
2020-04-06 09:16:26 -04:00
Matthew Kennedy 595df15dfd
fix (#1268) 2020-04-06 09:00:26 -04:00
Matthew Kennedy 345bf61bd5
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 7d5df29fbd
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 3186741ddc
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 bc3f0c6b27
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 9f75c0cea6
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 b197c6ff07
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 ea4cfa9046
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 b015ec5944
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 22267e5479
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 a47dce4025 code style 2020-04-01 21:32:21 -04:00
Matthew Kennedy 50cd6549a2
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 483d4a2204
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 53679fab54
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 a5d4d06868
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 1955af0b6c random code inspired by Ola 2020-03-24 19:50:04 -04:00
Matthew Kennedy d5600995e2
fix (#1202)
* fix test

* shrink memory
2020-03-19 20:02:49 -04:00
rusefi a33d479683 CLT stops working when using 2-0 custom trigger wheel #1171 2020-03-06 01:31:04 -05:00
Matthew Kennedy 40b0783205
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 04a4e2bca3 ETB: expand automated testing #115 2020-02-22 23:18:02 -05:00
rusefi e9a3b218c4 miata vvt trigger decoding is broken #1145 2020-02-14 13:02:27 -05:00
rusefi a2c4b36edc Merge remote-tracking branch 'remotes/origin/2019.12.25_release_1.19.12_xmas' 2020-02-14 10:51:26 -05:00
rusefi ed2b7578a5 Merge remote-tracking branch 'remotes/origin/2019.12.25_release_1.19.12_xmas' 2020-02-14 10:50:50 -05:00
rusefi 243a532f84 miata vvt trigger decoding is broken #1145 2020-02-14 10:49:22 -05:00
rusefi 9790052596 miata vvt trigger decoding is broken #1145 2020-02-14 09:33:29 -05:00
rusefi 75d9417131 miata vvt trigger decoding is broken #1145 2020-02-14 00:37:36 -05:00
rusefi 4e8f9f0d30 cam/vvt decoder test progress 2020-02-05 01:08:39 -05:00
Matthew Kennedy c7dce2e38b
Rescale TPS (#1112)
* fake adc ticks

* consumers

* fix test 1

* fix tests
2020-02-01 16:41:07 -05:00
rusefi d63dae9301 this test is even better now! 2020-01-31 13:45:15 -05:00
rusefi f6e7e8871a VVT refactoring & assertions for VVT test 2020-01-31 01:49:10 -05:00
rusefi b6e0bc7ed1 date & VVT test progress 2020-01-31 01:23:01 -05:00
rusefi b6fe6555e0 lovely tiny bug which mostly affects NB2 with an impossible one tooth crank trigger wheel 2020-01-30 01:47:34 -05:00
rusefi d9b96fe509 extracting class & codes clean-up 2020-01-28 00:16:33 -05:00
rusefi 282cd8e1ac trigger refactoring 2020-01-26 14:20:55 -05:00
rusefi 51ab9f5b57 reducing code duplication 2020-01-26 06:28:33 -05:00
rusefi db2ab72d12 refactoring trigger 2020-01-26 03:33:45 -05:00