Commit Graph

386 Commits

Author SHA1 Message Date
Matthew Kennedy 2be0c8c916 NB trigger decoder maintains sync through rapid speed changes while cranking 2025-05-05 22:53:54 -07:00
Matthew Kennedy 2cb2ed2a86
calculate spark timing last minute rather than storing it (#555)
* calculate spark timing last minute rather than storing it

* handle underdwell

* f2lz avoidance

* test friendlyness

* move test hook after the underdwell bailout
2025-03-11 19:35:18 -07:00
Matthew Kennedy 442c75cc4c
Remove sensor chart (#568)
* delete sensor chart from firmware

* delete sensor sniffer UI
2025-03-07 03:28:29 -08:00
Matthew Kennedy d82f3260d1 implement underdwell protection 2025-03-01 16:50:23 -08:00
Matthew Kennedy c932c55693 overdwell test with IgnitionContext instead of event 2025-02-13 23:18:30 -08:00
Matthew Kennedy 53aa7d55d2 fix nissan VQ test 2025-02-13 22:44:31 -08:00
Matthew Kennedy 2ebd882722
Ignition outputs use a mask like fuel (#553)
* remove skipped spark check

* this test no longer does anything

* ignition mask outputs

* tests

* extract function to calculate mask

* don't even store the mask
2025-02-13 20:31:09 -08:00
Matthew Kennedy ef9032bca4
Control injectors with a mask rather than pointers (#551)
* mostly implement

* tests

* tests

* tests

* properly handle single point injection

* fix tests

* fix tests

* scheduler

* format

* fix tests

* extract calculateInjectorOutputMask

* uncomment

* split injection just barely fits!

* provide a constructor so maybe mac is happy?

* don't bother storing the mask at all

* simplify

* make the pad bits predictable
2025-02-13 17:54:42 -08:00
Matthew Kennedy 67d41ea65e put injection mass inside OneCylinder 2025-01-18 02:42:51 -08:00
Matthew Kennedy 0e2709cd91 start refactoring towards OneCylinder 2025-01-18 01:03:44 -08:00
Matthew Kennedy 3ae703d9ce dead 2025-01-01 14:31:19 -08:00
Matthew Kennedy ce33ad7073 assertEqualsM 2025-01-01 14:22:53 -08:00
Matthew Kennedy aa8ecc485a rip out assertEqualsM4 2025-01-01 14:01:18 -08:00
Matthew Kennedy 468355c4ca assertEqualsM2 2025-01-01 13:56:43 -08:00
Matthew Kennedy 40a7fd732b deprecating EFI_ERROR_CODE 2024-12-28 14:49:27 -08:00
Matthew Kennedy 20962c08a5 tests 2024-12-24 19:39:43 -08:00
Matthew Kennedy 32f319d7cd tests build 2024-12-24 02:59:54 -08:00
Matthew Kennedy 4c770b3431 unnecessary includes 2024-12-24 02:15:40 -08:00
Matthew Kennedy 8e6544a8fd broke a test 2024-12-14 14:07:54 -08:00
Matthew Kennedy 28e9f8a015 enum class-ify TriggerEvent 2024-12-12 15:37:14 -08:00
Matthew Kennedy ec043ad81f getVVTPosition returns expected<> 2024-09-12 21:25:18 -07:00
Matthew Kennedy 08c878dbb9 sorry ADC trigger, your performance was never proven and you're in the way now 2024-08-06 23:21:36 -07:00
Matthew Kennedy 7713071a8f std::isnan 2024-07-23 15:47:30 -07:00
Matthew Kennedy dd8dea61c0 rename Executor -> Scheduler 2024-07-11 17:03:13 -07:00
Matthew Kennedy 89a0b273c6 don't use scheduleByTimestamp 2024-07-11 16:32:55 -07:00
Matthew Kennedy bb1d5f26d2 for loop formatting 2024-07-03 00:22:48 -07:00
Matthew Kennedy 80358ad54e setTimeNowUs(): replace global fiddling with a functino call 2024-04-27 01:59:38 -07:00
Matthew Kennedy 5f52f5fc9f no need for getTimeNowUs on ETH 2024-04-27 01:48:02 -07:00
Matthew Kennedy 80d9fd41aa unit test global cleanup 2024-04-26 02:02:49 -07:00
Matthew Kennedy 47ee857699 haha these two functions do the same thing!? 2024-04-25 22:17:20 -07:00
Matthew Kennedy 79dfb0f2c4 wrap times in simple structs 2024-04-25 15:46:53 -07:00
Matthew Kennedy 46b3a748ba more tests that are less chaos now 2024-04-12 12:19:24 -07:00
Matthew Kennedy 3c28268a6c testFasterSpinup doesn't trigger error 2024-04-12 12:13:25 -07:00
Matthew Kennedy 9d8a23241b better log 2024-04-12 12:13:12 -07:00
Matthew Kennedy 61dd44a4ba test for noisy triggers and another fix 2024-04-12 11:29:38 -07:00
rusefillc 89462092a1
default argument to improve test API (#405) 2024-04-09 22:42:16 -07:00
Matthew Kennedy 25e2a40b53 avoid UB in tests 2024-03-22 12:07:58 -07:00
Matthew Kennedy 3a4bce217c Make toyota 3 tooth decoder more robust #382 2024-03-19 15:08:06 -07:00
Matthew Kennedy f8070a922a
implement & test backend for injection splitting (#367)
* framing dual injection

* fix test

* uncomment logic

* format

* start test

* good test

* add todo
2024-02-21 10:54:27 -08:00
Matthew Kennedy 9673ff01f3
implement staged injection (#331)
* output channel

* duty cycle etc math for second stage

* action_s utility

* basic enable switch

* staging fraction math

* implement staging logic

* wire up pins for second stage injectors

* staging UI

* Improve staged injection test, check scheduler arguments for other injection tests

* Stage 2 last pulse output channel, correct fuel consumption logic

* wall wet on the whole shot

* int vs size_t

* use a define instead of function so we get line numbers

* fix batch injection

* gauges

* bad test merge

* stub out secondary injector model
2024-01-07 15:22:39 -08:00
Matthew Kennedy 26f57fd226 no trailing semicolon 2024-01-07 12:32:18 -08:00
Matthew Kennedy a45b9ab611 minor housekeeping 2024-01-06 23:10:56 -08:00
Matthew Kennedy d38a9ef0c0 missed a spot 2024-01-06 22:37:41 -08:00
Matthew Kennedy 4ed8906748 fix tests for no shadowing 2023-11-01 17:31:08 -07:00
Matthew Kennedy 21998dae2d tests 2023-11-01 15:14:53 -07:00
Matthew Kennedy 38c873252e
smarter injector duty cycle limiting (#215)
* config for duty cycle limiting

* implement timeout duty cycle limiting

* comment

* make overlapping injections actually work!

* missed one

* test

* call addFuelEvents from fast callback

* update comment about why we call it again in main trigger callback

* one more extra call

* undo addFuelEvents change

* cleanup

* minor encapsulation

* fix

* changelog

* dead obd code
2023-10-14 14:27:19 -07:00
Matthew Kennedy 3c001f759f
Miata presets (#236)
* rename existing

* rename existing

* 1.6 progress

* nb2 progress

* format

* stub nb1

* nb1 progress

* msm

* msm

* brake switch, MSM IAT

* gppwm, clutch pin

* cleanup

* allow setting lua heap size

* Revert "allow setting lua heap size"

This reverts commit 82533b5c7b.

* guard 1.6

* everyone wins a more sensible tps/tps AE table

* guard for tests

* nb2 vvt angle tweak

* tweak tests for changed defaults
2023-09-25 11:12:34 -07:00
Matthew Kennedy 6418cba04e test 2023-09-14 13:59:04 -07:00
Matthew Kennedy a6a25ba020 toyota 3 tooth cam decoder #237 2023-09-13 22:30:14 -07:00
Matthew Kennedy 94c29d4cfb
simplify cam input single tooth modes (#178) 2023-08-03 00:52:19 -07:00