Commit Graph

842 Commits

Author SHA1 Message Date
Andrey 6b4c4a5833 refactoring: vvt is not aux
only:hellen-honda-k
2023-03-05 02:07:47 -05:00
Andrey f483535a39 progress: bringing simulator closer to real code
only:hellen-honda-k
2023-03-05 01:53:11 -05:00
Andrey 24e3aa5cc7 progress: bringing simulator closer to real code
only:hellen-honda-k
2023-03-05 01:20:03 -05:00
Andrey 9cf426e3db progress: run more code in simulator
only:hellen-honda-k
2023-03-05 01:13:43 -05:00
rusefillc 577e03c715 Ignition IAT corr IAT error what #4953 2023-01-07 17:48:58 -05:00
Matthew Kennedy e5d199272d
improve iat ignition table (#4948)
* iat ignition table

* changelog
2023-01-06 21:59:34 -05:00
rusefillc bbd7038c83 antilag and anti-lag #2403
TurboMarian is the ALS boss
2022-12-22 14:38:40 -05:00
rusefillc 4fd79577ae antilag and anti-lag #2403
TurboMarian is the ALS boss
2022-12-22 10:22:13 -05:00
rusefillc d671cee3a8 antilag and anti-lag #2403
TurboMarian is the ALS boss
2022-12-21 21:29:01 -05:00
rusefillc 7b3423a7b5 RPM correction/multiplier for Accel Enrich #4760 2022-12-13 16:36:38 -05:00
Andrey cf63cea45f ETB JNI test progress 2022-11-29 02:21:36 -05:00
Nathan Schulte 5774a315fe firmware: only print ADC info if HAL_USE_ADC 2022-11-18 23:15:54 -05:00
rusefillc f9fa729d8d less horrible constant name 2022-10-27 22:17:50 -04:00
rusefillc 98076927b0
progress: rpm register based on trigger input being none or not (#4691)
* progress: rpm register based on trigger input being none or not

* use helper functions

Co-authored-by: rusefillc <sdfsdfqsf2334234234>
2022-10-22 09:27:41 -04:00
rusefillc da0fa03f0a refactoring: wider usage of helper method 2022-10-22 08:39:55 -04:00
rusefillc f4010aa720 progress: rpm register based on trigger input being none or not 2022-10-21 23:57:37 -04:00
rusefillc 7a1e729cd8 ROLLBACK 2022-10-21 22:45:46 -04:00
rusefillc 17e340622b progress: rpm register based on trigger input being none or not (helping unit tests) 2022-10-21 22:25:05 -04:00
rusefillc 3abed33988 progress: rpm register based on trigger input being none or not 2022-10-21 22:07:41 -04:00
rusefillc 7e8f06cc42 current unused RAM metric? 2022-10-21 17:12:15 -04:00
rusefillc a36f52aaad current unused RAM metric 2022-10-21 12:10:31 -04:00
Matthew Kennedy 9d132676fd
consolidate analog vs. temp info commands (#4646)
* consolidate analog vs. temp info commands

* cleanup

* guard
2022-10-10 07:44:20 -04:00
rusefillc 8b603aae6d ingles lo hablas 2022-10-01 06:15:00 -04:00
Matthew Kennedy 264d33d30e
refactor prime (#4627) 2022-09-28 07:53:12 -04:00
rusefillc 1bfc6adac3 refactoring: renaming method 2022-09-27 22:21:18 -04:00
Andrey 12d857b99c deep rabbit holes are the best ones!
refactoring: encapsulation
2022-09-14 02:06:52 -04:00
Andrey 6b0941b8ed inline method to reduce confusion 2022-09-14 01:24:19 -04:00
Andrey G 91d4844e38
time routines refactor (#4563)
* Extract time helpers from engine_controller_misc to efitime.cpp

* Rename currentTimeMillis() to getTimeNowMs()

We have getTimeNowNt(), getTimeNowUs(), currentTimeMillis() and getTimeNowSeconds()
Align a bit.

find . -type f -name '*.c*' -exec sed -i 's/currentTimeMillis/getTimeNowMs/g' {} \;

* Rename getTimeNowSeconds() to getTimeNowS()

To align with Nt, Us, Ms versions.

* Some comments about getTimeNowLowerNt()
2022-09-11 13:06:03 -04:00
rusefillc 94762094a7 refactoring - reducing API between FW and Java 2022-09-11 01:59:44 -04:00
rusefillc 6b03f4ba68 How does rusEFI handle 23 (or 46?) days of continues operation #4554 2022-09-09 17:21:58 -04:00
Andrey ab4b451195 os_access.h dead? 2022-09-07 15:56:45 -04:00
Andrey a4805dace0 dead console command and minor refactoring 2022-08-31 22:41:58 -04:00
Matthew Kennedy 553b549b95
idle coasting table is RPM, not clt (#4487)
* idle coasting table is RPM, not clt

* default

* autoscale

* changelog
2022-08-29 08:15:04 -04:00
Matthew Kennedy 435fd9538b
Simpler thread controller (#4327)
* s

* Start -> start

* maybe tests are happy

* s

* s
2022-08-02 01:16:13 +03:00
Matthew Kennedy b99d90b006
Start -> start (#4366) 2022-07-21 15:17:32 -04:00
rusefillc 55ffb45934 FSIO is dead 2022-07-14 07:52:58 -04:00
rusefi 95c3b0bca2 https://rusefi.com/forum/viewtopic.php?p=45720#p45720 2022-06-27 23:57:56 -04:00
Andrey e62877964a Move curves out of engineConfiguration in order to reduce RAM usage #4127 2022-05-01 23:43:43 -04:00
Matthew Kennedy e4a0979dc2
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
Matthew Kennedy bc6a87cadc
allow enum_class in rusefi_hw_enums.h (#4104)
* make things c++ friendly

* install various canaries in coal mines

* using is much clearer than typedef

* fixing builds

* lps25

* trigger includes were a mess

* c -> c++ cleanup

* os util

* why did so many include os_util.h?

* fwd declare

* cypress/kinetis

* s

* eg33 happy

* happy sim

* cypress usb

* pch

* cypress

* doesn't need to include all that

* h7
2022-04-25 20:38:16 -04:00
David Holdeman 49f8daae14
More untested transmission features (#4093)
* use ISS for gearbox ratio, add gauge for TC ratio

* measure shift time

* add shift time gauge, todo notes for pc

* do conversion in the right direction

* switch to Timer and seconds

* try fixing build

* try fixing build again

* try defines, remove include

* use shift pcs

* add 3-2 pct curve

* control 3-2 solenoid

* move 3-2 to persistent config

* fix param
2022-04-23 07:34:39 -04:00
David Holdeman 7de7ea6ad0
TCU features and fixes (#4082)
* add tcc pwm freq field

* add pc fields, make trans fields conditional

* make button shift fields conditional, remove duplicates

* add 3-2 solenoid fields

* add PC curves

* try combining tcc curves

* try combining pc curves

* use airmass instead of tps for pc

* reduce airmass axis

* increase axis digits

* duplicate for per shift, change names

* add pc per shift arrays

* try moving tables

* move more tables

* init solenoid pins

* start adding pwm stuff, change some array names

* fix gear issue

* fix multiple shift issue

* fix transmission controllers not working

* fix transmission controllers not working 2

* rearrange and virtual some things

* make getMode const

* fix pwm
2022-04-18 20:09:27 -04:00
rusefillc 68e222d78c inline method to reduce confusion 2022-04-15 22:56:37 -04:00
rusefillc c76cd7fb85 Set sensible default for dwell by voltage multiplier table #4067
sad face
2022-04-13 16:05:01 -04:00
rusefillc f8a10e32e4 Set sensible default for dwell by voltage multiplier table #4067
one step back
2022-04-13 15:42:28 -04:00
rusefillc d2205a7fd6 Set sensible default for dwell by voltage multiplier table fix #4067 2022-04-13 15:21:44 -04:00
David Holdeman f305db2575
Add interface for selecting GearController and TransmissionController classes (#4048)
* save changes

* save changes

* save changes

* fix mistakes

* try adding empty method

* copy simpleTransmissionController to GM 4L6X controller

* Import 4l6x header

* add to makefile

* fix whitespace

* try enum class

* change field name

* change field name in rusefi.input

* check for gear controller mode

* add mode fields to catch if mode was changed
2022-04-06 17:37:30 -04:00
rusefi 41f925f9f3 progress 2022-02-06 19:17:22 -05:00
Matthew Kennedy 10be2d5f40
Remove FSIO, byeeeeeeeee (#3865)
* vestigial config

* replace last functionality

* engine/board configs include

* files that didn't need to include this

* remove FSIO implementation

* stragglers

* random little bits

* s

* s

* ConfigDefinition

* jar

* s
2022-02-02 02:03:31 -05:00
rusefillc 51db2371e4 that made no sense 2022-01-23 23:30:31 -05:00
Matthew Kennedy 76fdb4063e
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 5d5648f38d GDI better defaults? 2022-01-03 22:05:19 -05:00
rusefillc 7bf7fd9469 GDI Epic #1448 2021-12-31 19:08:47 -05:00
Matthew Kennedy c3b712aa3b
remove vvtSyncTimeNt (#3722)
* s

* poke

* poke again for science

* kick for science

* kick

* kick

* comment kick

* s

* don't try to compare the array decay pointer to 0 (!)

* collateral damage

* adjust miata sync

* reset trigger states correctly on engine stop

* s

* check synchronized bit

* now we don't need it at all?!

* and *NOT* synced

* start VVT sync earlier
2021-12-28 00:00:26 -05:00
Matthew Kennedy 3a4a0ba18d
simplify some table lookups (#3692)
* simplify

* expand interpolation test
2021-12-20 08:14:30 -05:00
rusefillc 6384b12f48 lua is like a virus but not really 2021-12-05 14:25:26 -05:00
rusefillc 33f3037eaa tune via CAN #3361 2021-12-04 00:33:54 -05:00
rusefillc c7db973434 proteus to have enlarged Lua 2021-12-01 09:06:16 -05:00
rusefillc ab34c8707f proteus to have enlarged Lua 2021-12-01 00:07:04 -05:00
rusefillc c8b43e9c7a proteus to have enlarged Lua 2021-11-30 21:57:15 -05:00
Matthew Kennedy a37c9bca9e
Remove the EFI_NO_CONFIG_WORKING_COPY option (#3630)
* no working copy

* oops
2021-11-29 16:44:45 -05:00
Andrey 48ed80ffb9 MAP phase sensing #3544 2021-11-24 23:06:52 -05:00
rusefi 8ed3020c07 live data for wastegate #3588 2021-11-24 15:07:48 -05:00
rusefi 4dad940160 live data for wastegate #3588 2021-11-24 15:03:06 -05:00
Matthew Kennedy 81fffe87b7
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
Scott Smith 9668626008
Move LuaThread to CCM, and shuffle a couple items out. (#3587)
Lua's stack probably doesn't need DMA.  Allows us to group more of our unused RAM together
in one place.
2021-11-21 20:35:03 -05:00
Matthew Kennedy a342bee57e
rpm calculator refactoring, gm 24x test (#3585)
* data

* stub test

* use getTimeSinceSyncPoint

* s

* s

* no

* test

* stray ;

* those were 1/10 what they were supposed to be

* actually check something

* dead log line?
2021-11-20 14:59:02 +03:00
Scott Smith 5bc1949aef
Basic framework for high pressure fuel pump control (#3476)
* Basic framework for high pressure fuel pump control

* Many changes

Move calculations to fast callback
Move main object into Engine
Respond to pin changes without requiring a reboot

* Use EngineModule for HpfpController
Schedule pin off after executing pin on so we are sure it ends, even if the motor stops.
Test scheduling.
Less RAM use by only having one event and reordering fields.

* Make scheduling test actually useful - need non-0 activation angle.

Co-authored-by: rusefillc <48498823+rusefillc@users.noreply.github.com>
2021-11-19 23:06:51 -05:00
Scott Smith 823d9a07e0
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 70ad9724c0
Make engine* and friends be const pointers in production. (#3564)
This allows the compiler to see through the pointer and make accesses faster.
It saves 1336 bytes of text.
2021-11-17 03:53:17 -05:00
Matthew Kennedy 8cdac4cac0
remove engine pointer passing (#3556)
* some

* more

* more

* the last?!
2021-11-16 04:15:29 -05:00
Scott Smith 344c9073e2
Start the process of using a global engine ptr for unit tests. (#3551)
* Start the process of using a global engine ptr for unit tests.

Passing around the engine, config, and persistent state wasn't buying anything.  Instead, use
EngineTestHelper(Base) to correctly set and clear the global variables.  Add a dummy check in
case some test tries to set them manually.

* Fix OSX build

* Adapt PR to recently added code.
2021-11-16 00:23:14 -05:00
Matthew Kennedy cb032fb1ea
(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 a831bec797
update luaaa (#3540)
* lua update

* no stdlib mode

* turn off system luaaa for now since it makes luaaa sad

* let user heap do a little

* gitmodules

* memory shuffling

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-11-12 22:10:05 -05:00
Andrey 5c99178eeb docs 2021-11-11 21:31:24 -05:00
rusefillc 80cf7b5ecd Overflow in currentTimeMillis and getTimeNowSeconds #3531 2021-11-11 17:54:31 -05:00
rusefillc 46e9269982 Overflow in currentTimeMillis and getTimeNowSeconds #3531
it now takes 1000 times longer to overflow
2021-11-11 16:43:41 -05:00
rusefillc 825a57e33a Overflow in currentTimeMillis and getTimeNowSeconds #3531
it now takes 1000 times longer to overflow
2021-11-11 16:39:23 -05:00
rusefillc 32d3d5fc67 where are we now? 2021-11-11 11:11:40 -05:00
rusefillc 1564f8aa02 where are we now? 2021-11-11 10:36:31 -05:00
rusefillc 0d5e605f75 Aux analog inputs via CAN #3378 2021-10-19 20:04:03 -04:00
rusefillc 61e2b3d5db Remove engine load acceleration enrichment fix #3357 2021-10-16 21:24:05 -04:00
Matthew Kennedy 114109bd83
dead mock iat/clt (#3293)
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-10-01 09:20:08 -04:00
Matthew Kennedy f41a2715a3
system lua: load a script! (#3231)
* load script

* test

* needs more rams

* embiggen stack

* init system lua from lua thread

* de-embiggen stack

* system needs a little more

* memory

* om nom nom delicious memory

* how much more memory could it want

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-09-23 21:45:14 -04:00
Matthew Kennedy 8cd132b8a8
dead knock code (#3255)
* more unification

* hip stub

* comment

* guard

* channel idx

* include

* hip

* move in to engine

* hip9011

* dead stuff

* dead

* fsio

* lcd

* more dead
2021-09-21 20:40:20 -04:00
rusefi 6307ffd3a6 merc128: engine config defaults #3236 2021-09-18 22:12:22 -04:00
rusefillc 38b9698fc4 let's throw gas at the problem! 2021-09-18 17:48:01 -04:00
rusefillc 410e449a22 https://rusefi.com/forum/viewtopic.php?p=42108#p42108
VVT table validation only if camInput defined
2021-09-09 14:11:48 -04:00
rusefillc 22a0b88872 my first Lua 2021-09-01 07:47:50 -04:00
rusefillc 22158cbc4a Revert "partial rollback was requested to revive HW CI"
This reverts commit 6834d0dd
2021-08-27 12:42:53 -04:00
rusefillc 6834d0dd65 partial rollback was requested to revive HW CI 2021-08-26 17:04:27 -04:00
Matthew Kennedy 52a24ee773
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
Andrey 4652c478aa zero dwell warning at zero RPM #3153 2021-08-16 07:21:07 -04:00
rusefillc 6d3b2c5b00 zero dwell warning at zero RPM #3153 2021-08-16 07:00:17 -04:00
Matthew Kennedy 25414ebdad
yet more pch (#3068)
* big pch energy

* put back ramdisk stub

* tests are happy

* h743 nucleo

* kinetis

* I love deleting code!

* make stepper happy

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-08-03 22:05:01 -04:00
Matthew Kennedy 5373594bb7
discrete VR threshold control (#3061)
* vr pwm

* rename

* scaling and ui

* hellen pin

* s

* math

* ooh, pch

* happy test

* not magic
2021-07-28 07:44:44 -04:00
Matthew Kennedy b52d50bbf2
Use pch in lots of files (#3066)
* most engine.h

* most engine_configuration

* more

* more

* more

* more

* more

* moooooore

* ok I'm done for now

* oops
2021-07-26 01:05:17 -04:00
Matthew Kennedy 2368e90ae7
dead (#3016) 2021-07-23 08:31:23 -04:00
Matthew Kennedy 2ce7777865
don't require EXTERN_ENGINE in every file (#2969)
* move enginePins

* no more extern engine

* uses

* more

* extern config too

* put this where it belongs

* include correct header

* merge
2021-07-16 18:13:33 -04:00
rusefi 173d98337c each byte counts 2021-07-14 13:15:15 -04:00