Commit Graph

657 Commits

Author SHA1 Message Date
rusefillc 507660266e proteus meta 2022-05-04 17:05:08 -04:00
Matthew Kennedy e1b2fcb2bc proteus meta 2022-05-04 17:00:38 -04:00
rusefillc 0ed0702536 Make ETB low limit configurable fix #4119 2022-05-02 05:24:50 -04:00
Andrey 473d82491f Move curves out of engineConfiguration in order to reduce RAM usage fix #4127 2022-05-02 05:04:58 -04:00
Andrey 03662e48c4 Move curves out of engineConfiguration in order to reduce RAM usage #4127 2022-05-01 23:43:43 -04:00
Matthew Kennedy 83caf1ea1b Brain pin is enum class (#4108)
* change most usages to Gpio::

* board configs

* engine configs etc

* isBrainPinValid, smart gpio

* generator

* generator

* generator

* connector yamls

* kinetis enums

* cypress txt

* kinetis config

* frankenso

* config generator

* actually do it for the others

* disable skips for pr ci

* fix tle8888

* misc

* weird cast from int

* needs this operator too

* this can be an unsigned subtract

* happy tests

* s

* kinetis isConfigurationChanged weirdness

* missed J/K

* cypress efifeatures

* build script mistake (!)

* mistake in smart gpio

* debounce

* eg33

* kinetis, so needy

* it's pretty green, we can skip these again
2022-04-28 17:32:39 -04:00
rusefillc 0c7f359912 Three names of the same thing fix #4085 2022-04-19 19:47:43 -04:00
rusefillc 7c7ac99bfb https://github.com/rusefi/alphax-2chan/issues/50
more progress
2022-04-19 15:03:38 -04:00
rusefillc f6fbb7e632 https://github.com/rusefi/alphax-2chan/issues/50
we have great CI
2022-04-19 13:57:39 -04:00
rusefillc 3f93e2165b https://github.com/rusefi/alphax-2chan/issues/50
sweet-sweet copy-pasta
2022-04-19 12:42:30 -04:00
rusefillc f39de8c094 https://github.com/rusefi/alphax-2chan/issues/50
refactoring: extract method
2022-04-19 12:40:02 -04:00
rusefillc b252533889 actually let's remove the duplicates 2022-04-18 11:43:49 -04:00
rusefillc a6108bafbf unique field names 2022-04-18 11:11:57 -04:00
GitHub build-firmware Action 783aa1451c Auto-generated configs and docs 2022-04-17 20:30:07 +00:00
rusefillc 16a6112002 one step sideways to fix build 2022-04-16 21:24:02 -04:00
rusefillc 0ba512c925 logging of live data structs was: data points #3614
progress
2022-04-16 21:04:02 -04:00
rusefillc e16117f6ce very random progress 2022-04-16 17:04:35 -04:00
rusefillc 0331193695 very random progress 2022-04-16 16:49:59 -04:00
rusefillc c93594cd1b random progress 2022-04-16 16:39:52 -04:00
rusefillc 28b0b8d460 logging of live data structs was: data points #3614
ETB
2022-04-14 15:25:01 -04:00
rusefillc b95af49688 logging of live data structs was: data points #3614
ETB
2022-04-14 14:38:32 -04:00
rusefillc 57be5a2147 logging of live data structs was: data points #3614
progress & more consistent convention
2022-04-13 20:46:55 -04:00
rusefillc 5c5d258b5f typo/grammar 2022-04-13 17:55:31 -04:00
rusefillc 5f288d88dc do not control VVT during cranking fix #3443 2022-04-10 19:22:39 -04:00
rusefillc 7213011353 Hellen NB2 default tune #4038 2022-04-10 19:11:34 -04:00
rusefillc 905fbd851e Air Conditioning Improvements #4054 2022-04-09 00:26:52 -04:00
GitHub build-firmware Action 7d61f78b38 Auto-generated configs and docs 2022-04-09 01:37:21 +00:00
rusefillc 101a7eb719 Air Conditioning Improvements #4054 2022-04-08 21:28:50 -04:00
GitHub build-firmware Action 373e7072a1 Auto-generated configs and docs 2022-04-08 16:21:15 +00:00
rusefillc 267ee7d14a Air Conditioning Improvements #4054 2022-04-08 12:12:24 -04:00
Andrey b7cd7dbdb9 Extra Idle Air if Throttle is Pressed behavior #3940
only live data
2022-04-03 20:30:09 -04:00
Matthew Kennedy 4c2518c4c0 output channel tweaks (#4023)
* shuffle around output channels

* postState should take a ref

* s

* s

* patch input file

* limits

* accel bad bounds check

* units

* units

* Revert "accel bad bounds check"

This reverts commit b2bb493be331d5d2cf40b9ed01363a53182c883e.

* missed an autoscale
2022-03-24 08:58:55 -04:00
Matthew Kennedy 4964543f09 Etb2 trim (#4004)
* wire up different logic for etb2

* clamp and actually works

* s

* happy compiler
2022-03-15 20:04:49 -04:00
rusefillc 3e16b74bf1 JNI for test coverage #3965 2022-03-15 13:05:24 -04:00
rusefillc ea7ac0ef74 JNI for test coverage #3965 2022-03-15 11:47:47 -04:00
Andrey ce7a1b8c7b JNI for test coverage #3965 2022-03-15 11:23:06 -04:00
rusefillc dc734e0c6d JNI for test coverage #3965 2022-03-15 10:33:17 -04:00
Matthew Kennedy c7f824c015 delayedShutoffRequested (#3881) 2022-02-02 14:57:19 -05:00
Matthew Kennedy f82f4d08d6 Remove fsio part 2 (#3876)
* dead config stuff

* fsio state

* remove tests

* getEngineValue

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

* main relay controller handles delayed shutoff

* main relay controller handles delayed shutdown

Co-authored-by: Matthew Kennedy <matthewkennedy@outlook.com>
Co-authored-by: rusefillc <sdfsdfqsf2334234234>
2022-02-02 00:45:11 -05:00
GitHub build-firmware Action 5099b98841 Auto-generated configs and docs 2022-02-02 04:22:53 +00:00
rusefillc 7803c112a5 main relay controller handles delayed shutdown 2022-02-01 23:12:50 -05:00
Matthew Kennedy 28b6cce9d9 Remove fsio part 1 (#3871)
* dead includes

* move last logic out of fsio

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

* safer file name

Co-authored-by: rusefillc <sdfsdfqsf2334234234>
2022-01-31 21:51:32 -05:00
Andrey 014ea2b78a migrating to SensorType::Rpm API 2022-01-20 23:54:52 -05:00
Andrey 37e700f8bd migrating to SensorType::Rpm API 2022-01-20 22:51:20 -05:00
Andrey adb00d4255 migrating to SensorType::Rpm API 2022-01-20 22:40:15 -05:00
Andrey e1f1f28045 migrating to SensorType::Rpm API 2022-01-20 22:31:07 -05:00
Andrey 72ae8dd4a1 migrating to SensorType::Rpm API 2022-01-20 22:22:52 -05:00
Matthew Kennedy 6fc4503ee2 XY Idle VE Table (#3781)
* config & ui

* implement

* test idle VE switching behavior

* use the interface where we can

* s

* re-bump flash version
2022-01-20 14:08:54 -05:00
rusefillc c625228aaf Better handling of RPM during stop of cranking #3803
refactoring: reusing existing method
2022-01-17 20:53:10 -05:00
rusefillc 597a3430d9 https://en.wikipedia.org/wiki/Pi 2022-01-14 21:23:27 -05:00
Matthew Kennedy cb368580a6 don't start boost pwm unnecessarily (#3767)
* don't start boost pwm unnecessarily

* test
2022-01-11 20:47:50 -05:00
rusefillc 8447be9c60 live view is confused by conditional compilation #3773
ops
2022-01-11 14:24:53 -05:00
rusefillc 1c0919e885 live view is confused by conditional compilation fix #3773 2022-01-11 14:10:30 -05:00
rusefillc 5c68f86a0d RE usability: live data for idle controller 2022-01-10 21:55:52 -05:00
GitHub build-firmware Action b929678129 Auto-generated configs and docs 2022-01-11 01:57:47 +00:00
rusefillc a989bb50ac RE usability: live data for idle controller 2022-01-10 20:51:49 -05:00
rusefillc d550893e85 RE usability: live data for idle controller 2022-01-10 20:32:20 -05:00
rusefillc 5eaabf5eb6 RE usability: live data for idle controller
static bad, class fields better
2022-01-10 20:12:11 -05:00
rusefillc 6fd0ae24d9 RE usability: live data for idle controller 2022-01-10 19:48:58 -05:00
Andrey G 542810cdf4 Stepper direct push pull driver (#3751)
* Init DC motor through two brain_pin_e only

* idle: stepper: allow driving stepper through 4 output_pin_e
2022-01-07 11:38:48 -05:00
Andrey G d077520d9e Move out of CMM (#3750)
This needs additional investigation. But allocating these structs
in CMM cause HardFault
2022-01-07 10:09:48 -05:00
GitHub build-firmware Action e4f828c0a1 Auto-generated configs and docs 2022-01-05 06:49:51 +00:00
GitHub build-firmware Action fd23938b2a Auto-generated configs and docs 2022-01-05 05:09:04 +00:00
rusefillc 20bcb99ee0 live data progress 2022-01-02 01:17:22 -05:00
rusefillc c647dde007 docs & refactoring 2021-12-26 12:35:41 -05:00
Matthew Kennedy 5642ef07be Autoscale all the things! (#3713)
* Map3D accepts any scaled_channel type

* consistency

* reinstate test

* fix ratio

* throttle, boost, gppwm

* scale ignition and VE

* tests
2021-12-22 08:09:41 -05:00
Matthew Kennedy c92f6b832b ui & config for fuel/ign trim tables (#3704)
* ui & config

* bump flash version

* compaction

* s

* make things happy

* fsio too

* OK, well those defaults were insane

* b

* why are these defaults insane

* adjust cylinder offset ui

* s

* cleanup
2021-12-20 21:58:53 -05:00
Matthew Kennedy 2ba4c7844d simplify some table lookups (#3692)
* simplify

* expand interpolation test
2021-12-20 08:14:30 -05:00
Matthew Kennedy 77ab5ed323 remove etb status option (#3695)
* remove

* ui

* settings cpp
2021-12-15 08:20:14 -05:00
Matthew Kennedy 3d3bf5ea4b ignition controller detects rising edge on voltage (#3636)
* ignition controller detects rising edge on voltage

* update test

* comment

* ignore negative transients

* tweak

* test
2021-12-07 21:28:04 -05:00
Andrey d2c46b3310 Let's always have TS structure so that unit tests can check values in outputChannels, kind of making outputChannels a god dump for state but whatever since Live View is coming 2021-12-07 20:18:47 -05:00
Matthew Kennedy ba6eec22c8 Alternator controller is engine module (#3663)
* alternator is engine module

* user can't set pid period
2021-12-05 18:33:50 -05:00
rusefillc 01153934f9 Requesting LUA Torque intervention #3638 2021-12-02 01:02:56 -05:00
GitHub build-firmware Action a9de68a552 Auto-generated configs and docs 2021-12-02 05:04:17 +00:00
rusefillc c01192acf6 proteus to have enlarged Lua
one step back
2021-11-30 22:35:29 -05:00
rusefillc c198e2c649 why so many channels are hidden in debug ? #3614 2021-11-29 10:15:28 -05:00
rusefillc dc7303b8f1 why so many channels are hidden in debug ? #3614 2021-11-29 01:13:04 -05:00
rusefillc c64fb3f595 why so many channels are hidden in debug ? #3614 2021-11-29 01:02:40 -05:00
GitHub build-firmware Action b3e60caa01 Auto-generated configs and docs 2021-11-28 05:54:31 +00:00
Matthew Kennedy 7164c448ec make fan control live-data-friendly (#3626)
* make fan live-data-friendly

* script

* generated for happy simulator
2021-11-28 00:40:12 -05:00
Matthew Kennedy c73f7d7623 not industrial (#3627) 2021-11-27 19:27:57 -05:00
rusefillc 3f8c0d605c automation around outputs section #197 2021-11-26 20:46:42 -05:00
Matthew Kennedy 6e4759389a AC is EngineModule (#3604)
* AC is engine module

* missed a spot with main relay while we're at it

* TS
2021-11-25 07:59:31 -05:00
rusefi 09d26c7b0b live data for wastegate #3588 2021-11-24 15:07:48 -05:00
GitHub build-firmware Action 602437ab93 Auto-generated configs and docs 2021-11-24 19:10:22 +00:00
rusefillc 3c1196c029 live data for wastegate #3588 2021-11-24 13:20:47 -05:00
rusefillc aa4e57ded6 live data for wastegate #3588 2021-11-24 13:18:07 -05:00
rusefillc 28c9d7555b live data for wastegate #3588 2021-11-24 12:59:57 -05:00
GitHub build-firmware Action d0ddd991a6 Auto-generated configs and docs 2021-11-24 13:02:01 +00:00
Matthew Kennedy 5274cffff3 main relay doesn't use fsio (#3580)
* fuel pump

* s

* call correct callback

* more dead

* test adjustment

* don't overflow

* don't need separate function

* java

* give it a name

* generated

* generated

* add to generate script

* import *

* this is so cheap we don't need a flag

* main relay

* plumbing

* dead fsio stuff

* test it

* by 100%, we mean 99.98%
2021-11-24 07:47:51 -05:00
GitHub build-firmware Action 16e025a7fc Auto-generated configs and docs 2021-11-23 21:00:29 +00:00
rusefillc 7760ddd8b6 live data for wastegate #3588
i want to persist state so no 'const' sorry
2021-11-23 15:52:43 -05:00
rusefillc 0b1b628fd3 live data for wastegate #3588 2021-11-23 15:51:30 -05:00
GitHub build-firmware Action ec7b493f6b Auto-generated configs and docs 2021-11-23 20:06:24 +00:00
rusefillc 9300866ba8 live data for wastegate #3588 2021-11-23 15:02:03 -05:00
rusefillc c5242fb720 live data for wastegate #3588 2021-11-23 15:00:47 -05:00
GitHub build-firmware Action f6730e32fe Auto-generated configs and docs 2021-11-20 03:34:23 +00:00
Matthew Kennedy e7956a53f6 fuel pump doesn't use fsio (#3576)
* fuel pump

* s

* call correct callback

* more dead

* test adjustment

* don't overflow

* don't need separate function

* java

* give it a name

* generated

* generated

* add to generate script

* import *

* this is so cheap we don't need a flag
2021-11-19 22:23:12 -05:00
Scott Smith b3e0b28c75 Make the module API more concise. (#3571)
engineModules.get<FOO>(). becomes modules<FOO>()->

I believe the new API is more conducive to supporting arrays, by doing std::array<T, N> or
std::array<Mockable<T>, N>, with the support of a helper class.
2021-11-17 21:50:00 -05:00
Scott Smith 659cc68be1 Final cleanup of ENGINE macros (#3567)
Fix some uses of ENGINE() not detected by regex due to parenthesis.
Remove now empty engine_ptr.h
Don't worry about EFI_* not being defined, the compiler defaults to 0 if they aren't.
2021-11-17 13:45:10 -05:00
Scott Smith f9f13f0bad Create a base class EngineModule for that contains various useful callbacks. (#3548)
* Create a base class EngineModule for that contains various useful callbacks.

This cleans up the API by not requiring the notifiers to know about who wants callbacks.  The only
place you need to update to add a module is in one place.

* Add mockability.

* Convert InjectorModel to a Mockable EngineModule
2021-11-17 20:13:19 +03:00
Scott Smith 80091498a6 Programmatically replace ENGINE() and CONFIG() with engine-> etc (#3565)
git grep -l -w ENGINE | xargs sed -i -r "s/ENGINE\(([]a-zA-Z_0-9.[]+)\)/engine->\1/g"

git grep -l -w CONFIG | xargs sed -i -r "s/([^a-zA-Z_])CONFIG\(([]a-zA-Z_0-9.[]+)\)/\1engineConfiguration->\2/g"
2021-11-17 03:54:21 -05:00
Scott Smith dac2ae9b1d Programmatically remove EnginePtr/inject, EXPAND_Engine, and WITH_ENGINE_TEST_HELPER* (#3560)
* Programmatically remove EnginePtr/inject, EXPAND_Engine, and WITH_ENGINE_TEST_HELPER*

for i in ": public EnginePtr " ", public EnginePtr" "EXPAND_Engine;" "EXPAND_Engine"; do
    git grep -l "$i" | xargs sed -i "s/$i//g"
done

git grep -l "inject" | xargs sed -i "/inject[(][)]/d"

for i in WITH_ENGINE_TEST_HELPER_SENS WITH_ENGINE_TEST_HELPER_BOARD_CALLBACK WITH_ENGINE_TEST_HELPER; do
    git grep -l "$i" | xargs sed -i "s/$i/EngineTestHelper eth/g"
done

git checkout firmware/controllers/core/engine_ptr.h
git checkout unit_tests/global.h

* Review fixups.
2021-11-16 16:52:11 -05:00
Matthew Kennedy 7296593448 remove engine pointer passing (#3556)
* some

* more

* more

* the last?!
2021-11-16 04:15:29 -05:00
Scott Smith c354d30a71 Use Valgrind to detect unitialized variable references. (#3555)
* Use Valgrind to detect unitialized variable references.

Fix the edge cases that pop up

* Comment and disable Mac run
2021-11-15 23:42:23 -05:00
Matthew Kennedy c1941f3a49 (void) -> () (#3550)
* static functions with (void)

* more

* Revert "more"

This reverts commit 246e53441f935451437df186ac92d7df26b62fb6.

* s

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

* s
2021-11-15 12:44:40 +01:00
Andrey 2166a5ba16 ETB: do not touch HW pins if function not selected, this way Lua can use DC motor hardware pins directly 2021-11-08 12:44:37 -05:00
Matthew Kennedy 72cdc52acc configurable etb maximum (#3469)
* etb maximum

* update tests and test new behavior
2021-11-05 18:16:19 -04:00
Matthew Kennedy 8ee86e0789 log vvt targets (#3417)
* log vvt target

* java

* make java happy probably

* sensorlogger
2021-11-02 15:03:57 -04:00
GitHub build-firmware Action 4aa8a793e2 Auto-generated configs and docs 2021-10-31 01:38:27 +00:00
Andrey de8b43cf94 looks like value is never assigned 2021-10-30 21:28:55 -04:00
rusefillc 40bf6a93d0 VVT is no longer aux pid 2021-10-28 23:51:46 -04:00
Matthew Kennedy 6125d97c6c etb pwm limit (#3408)
* etb pwm limit

* missed an arg

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-10-25 15:35:23 -04:00
GitHub build-firmware Action 7269a3a5e9 Auto-generated configs and docs 2021-10-17 04:35:27 +00:00
rusefillc d60e6eb9af refactoring - extracting idle state 2021-10-17 00:30:26 -04:00
GitHub build-firmware Action 9388adc683 Auto-generated configs and docs 2021-10-17 03:59:20 +00:00
rusefillc d4e9c1597a refactoring - extracting idle state 2021-10-16 23:55:29 -04:00
rusefillc 2748571986 refactoring 2021-10-16 23:40:02 -04:00
GitHub build-firmware Action 5ab712c51d Auto-generated configs and docs 2021-10-17 01:13:47 +00:00
rusefillc 94be3608a1 better file locations 2021-10-16 20:17:01 -04:00
rusefillc c9469f3820 let's see if CI would fail, i.e. let's see if this logic was covered 2021-10-16 19:03:36 -04:00
rusefillc 037535bc8e Whatever we call it, no matter how we do it - we need live data / remote view into rusEFI actual state #3353
progress
2021-10-14 15:18:13 -04:00
rusefillc 1f1c538fc0 Whatever we call it, no matter how we do it - we need live data / remote view into rusEFI actual state #3353
dead code
2021-10-14 15:17:09 -04:00
rusefillc 705295dbfb Whatever we call it, how ever we implement it - we need live data / remote view into rusEFI actual state #3353 2021-10-14 00:47:26 -04:00
rusefi f24cfa3698 VAG ETB calibration is a mess? 2021-10-10 22:23:33 -04:00
rusefi b62ae72c10 etb_test_hw 2021-10-10 17:10:04 -04:00
rusefi 07e6353cb5 etb_test_hw 2021-10-10 16:29:45 -04:00
Andreika 49aedb1c74 [DRAFT] IAC H-Bridge Microstepping (#3213)
* fix for stepperHbridgeHardware

* new config fields for microstepping

* add stepper dir pin mode to the dialog

* refactor stepper hw dialog & add microstepping panel

* microstepper modes enum

* stepperDcInvertedPins needed by Hellen

* add sleep() for stepper and divisor for pause()

* microstepping impl.

* make unit-tests more happy

* small progress

* fix etb-stepper dlg conflict

Co-authored-by: Andrei <andreikagit@users.noreply.github.com>
2021-10-06 13:57:04 -04:00
Andreika 99fb5e4204 [DRAFT] Fix cranking->idling taper phase for useSeparate*ForIdle tables (#3168)
* Rename Phase::CrankToRunTaper -> CrankToIdleTaper

* Change isIdling() to isIdlingOrTaper()

* test_idle_controller.cpp

* useSeparateIdleTablesForCrankingTaper setting

Co-authored-by: Andrei <andreikagit@users.noreply.github.com>
2021-10-06 12:05:20 -04:00
Matthew Kennedy dab377d15d getOrZero (#3319) 2021-10-05 19:59:07 -04:00
rusefillc 6ddce56537 https://rusefi.com/forum/viewtopic.php?p=42468#p42468 2021-10-04 19:10:31 -04:00
rusefillc 7130e86739 https://rusefi.com/forum/viewtopic.php?p=42468#p42468 2021-10-04 18:43:37 -04:00
rusefillc 873ec4cb75 wow that was a bad setting name 2021-09-26 18:07:49 -04:00
rusefi 69f6e57ac7 Revert "Hellen Nissan defaults are no longer valid fix #3143"
This reverts commit 3f81d894
2021-09-14 15:51:58 -04:00
rusefi 3f81d89482 Hellen Nissan defaults are no longer valid fix #3143 2021-09-14 15:46:21 -04:00
Matthew Kennedy f125a14497 boost debug fields (#3228) 2021-09-07 14:07:47 -04:00
rusefillc dab0ee2b9d thank you Nik - dealing with false positive CUSTOM_OBD_LOW_FREQUENCY 2021-09-06 08:09:14 -04:00
rusefillc b7a61cd363 hysteresis for GPPWM #3222 2021-09-06 07:58:17 -04:00
rusefillc 32defc75bf hysteresis for GPPWM #3222 2021-09-06 07:21:17 -04:00
rusefillc 1d95957663 hysteresis for GPPWM #3222 2021-09-05 20:18:14 -04:00
rusefillc 0d1b6f3490 hysteresis for GPPWM #3222 2021-09-05 20:16:57 -04:00
Andrey 536567cc13 SD-card log fields improvement (warning counter & last code) #3162 2021-09-05 14:43:35 -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
rusefillc 6247a50662 Revert "Revert "memory savings (#3195)""
This reverts commit 86cf9cf7
2021-08-27 06:18:05 -04:00
rusefillc 86cf9cf7c9 Revert "memory savings (#3195)"
This reverts commit 1b485ca2
2021-08-27 02:32:31 -04:00
Matthew Kennedy 1b485ca2d8 memory savings (#3195)
* d

* dead code

* all your ram are belong to me

* turn off gpiochips we don't need

* save

* save by using the same file handle

* smaller stack ok

* these can be on the stack

* this is closer

* what about ccm?

* probing available

* now probe ccm

* ccm

* put stuff in ccm

* fsio

* memory usage

* memory
2021-08-26 23:05:31 +03:00