GitHub build-firmware Action
174b03e8be
Auto-generated configs and docs
2021-11-22 23:12:52 +00:00
Matthew Kennedy
3334a6963c
oh my god we've had no asserts ( #3595 )
2021-11-22 17:52:03 -05:00
rusefillc
a369e7e3d3
unusedLogFormat
2021-11-22 13:37:06 -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
cbc7c61b3e
Fix potential buffer overrun in cyclic_buffer. ( #3583 )
...
This exposed a buffer overrun, so double the size of the buffer (to account for 720 degree engine
cycle vs 360 degree crank events).
Also use proper numeric limits when computing min/max.
Finally, add a lock around the call to cyclic_buffer that actually caused the contention.
2021-11-20 03:01:11 -05:00
Matthew Kennedy
bb57a4b084
detect more overflows with asan ( #3582 )
...
* overflow detector
* type list dynamic allocate
* fix the buffer length
* comment
* pr fb
* sanitize sim
* fix sim sanitizer bug
* didn't mean to turn off optimization for sim
* asan can do that, if you turn it on!
* cleaning
2021-11-20 01:38:39 -05: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
Matthew Kennedy
d40ca0f581
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
rusefillc
684622e476
debug mode for skipped count for 4 cylinders #3570
2021-11-19 07:02:21 -05:00
Matthew Kennedy
caee2a5439
delimeter is not comma ( #3533 )
...
* delimeter is not comma
* do it in config txt
* use txt
* s
* string
* compat
* also, spelling is hard
* use new name
* use new name
* generate enough for happy console
* use an even less common character
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-11-19 12:01:45 +03:00
Scott Smith
18c27a6e9c
Separate out scheduleOrQueue into it's own standalone scheduler. ( #3573 )
...
It's a large enough entity that it shouldn't be buried in ignition logic.
2021-11-18 14:27:21 -05:00
rusefillc
877535b8ff
proportional spark cut #3427
2021-11-17 23:35:26 -05:00
Scott Smith
98040ad9af
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
69d36dad6e
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
988aacdd91
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
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
Scott Smith
cc95bd6c8e
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
rusefillc
17d4646dce
spelling
2021-11-16 16:46:54 -05:00
rusefillc
dad00adc28
helping launch enter simulator
2021-11-16 16:45:14 -05:00
rusefillc
678a756275
helping launch enter simulator
2021-11-16 16:31:35 -05:00
Andrey
a61043e570
proportional spark cut #3427
2021-11-16 13:23:08 -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
Andrey
0cc88ec6e2
Not all launch control options are used #3554
2021-11-15 21:13:01 -05:00
Andrey
3b0825181c
technical debt: enableOverdwellProtection #3553
...
only documentation
2021-11-15 20:32:25 -05:00
Andrey
655b77dc3f
random refactoring: trigger central encapsulation
2021-11-15 20:22:05 -05:00
Andrey
928c673695
refactoring launch
2021-11-15 20:09:03 -05:00
Andrey
05fa6071dd
refactoring launch
2021-11-15 19:55:04 -05:00
Andrey
0d5df34f36
refactoring launch
2021-11-15 19:55:04 -05:00
Andrey
c18204325c
refactoring launch
2021-11-15 19:34:42 -05:00
Andrey
f510cb8b29
refactoring launch
2021-11-15 19:24:00 -05:00
Andrey
4002c92dcc
refactoring launch
2021-11-15 18:57:12 -05:00
Andrey
34015eceee
refactoring launch
2021-11-15 14:40:35 -05:00
Matthew Kennedy
145316c497
less macro, more c++ ( #3549 )
...
* less macro
* s
2021-11-15 12:44:40 +01:00
GitHub build-firmware Action
adbb32e9b6
Auto-generated configs and docs
2021-11-15 03:03:29 +00:00
rusefillc
6f3eea31c6
MAP phase sensing #3544
2021-11-14 21:58:01 -05:00
rusefi
e8aebc313a
Something something Automatic Compression Release #3442
2021-11-14 15:04:10 -05:00
rusefi
89ab20c35c
Epic: Remove FSIO #2928
2021-11-14 14:14:43 -05:00
rusefillc
68ebb8045d
Epic: Remove FSIO #2928
2021-11-14 11:04:51 -05:00
rusefillc
22c872d8d8
Epic: Remove FSIO #2928
2021-11-14 10:57:19 -05:00
rusefillc
c22215cea7
Epic: Remove FSIO #2928
2021-11-14 10:39:47 -05:00
rusefillc
991d0c5001
Epic: Remove FSIO #2928
2021-11-14 08:33:19 -05:00
rusefillc
0a9682c553
Epic: Remove FSIO #2928
2021-11-14 07:24:50 -05:00
rusefillc
a9bcce88d0
script settings need names!
2021-11-13 22:47:46 -05:00
GitHub build-firmware Action
b295511600
Auto-generated configs and docs
2021-11-14 03:02:10 +00:00
Matthew Kennedy
d591a5ad26
mercedes two lobe trigger testing ( #3543 )
...
* mercedes
* config
* break;
* I did the gap ratio math wrong
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-11-13 21:50:04 -05:00
rusefillc
8333234737
Something something Automatic Compression Release #3442
2021-11-13 04:24:53 -05:00
GitHub build-firmware Action
dffab7abff
Auto-generated configs and docs
2021-11-13 03:01:55 +00:00
rusefillc
6d58518fb2
Proteus Harley
2021-11-12 21:56:07 -05:00
GitHub build-firmware Action
2765d386b9
Auto-generated configs and docs
2021-11-12 01:54:56 +00:00
Andrey
562ab174d7
Bench Test IAC Valve fails #3534
...
that's not even funny
2021-11-11 20:39:01 -05:00
Andrey
8d154b94df
Bench Test IAC Valve fails #3534
2021-11-11 20:31:46 -05:00
Andrey
df98eb69d4
Bench Test IAC Valve fails #3534
2021-11-11 20:28:01 -05:00
Andrey
cd57e1fdb6
Something something Automatic Compression Release #3442
2021-11-11 20:16:46 -05:00
Andrey
aff7664c21
refactoring: less hacky implementation
2021-11-11 20:16:46 -05:00
rusefillc
2794a85ff8
Idle valve outputs not available in TS #3523
2021-11-10 20:40:42 -05:00
rusefi
8aaecb568e
pid demo progress
2021-11-08 17:31:33 -05:00
Andrey
9d2f9f0d35
docs
2021-11-08 12:23:00 -05:00
rusefillc
656b8c3429
refactoring - magic constant bad
2021-11-07 00:03:16 -04:00
GitHub build-firmware Action
ed44ee9b11
Auto-generated configs and docs
2021-11-07 03:59:47 +00:00
rusefillc
ce45a907a7
a bit of dead code
2021-11-06 23:39:56 -04:00
rusefillc
b244c59cd8
a bit of dead code
2021-11-06 21:19:56 -04:00
GitHub build-firmware Action
e065a6ca4c
Auto-generated configs and docs
2021-11-07 01:05:29 +00:00
rusefillc
4f738b366e
a bit of dead code
2021-11-06 21:01:01 -04:00
Andrey
6111355e6c
Remove Miata MX5 NB1 trigger #3488
2021-11-06 20:24:41 -04:00
GitHub build-firmware Action
05b494a726
Auto-generated configs and docs
2021-11-06 23:15:42 +00:00
rusefillc
7b8821955b
a bit of dead code
2021-11-06 18:43:19 -04:00
GitHub build-firmware Action
b1c27c95d5
Auto-generated configs and docs
2021-11-06 22:37:34 +00:00
rusefillc
1cbe2f7bef
PROTEUS_LUA_DEMO
2021-11-06 18:24:59 -04:00
GitHub build-firmware Action
ab668c5bed
Auto-generated configs and docs
2021-11-06 03:28:22 +00:00
Scott Smith
f9e36f5ea4
Configuration for HPFP control algorithm. ( #3475 )
2021-11-05 23:15:35 -04:00
Scott Smith
675460fafb
Move fuel density to a header file so it can be accessed by other components. ( #3474 )
2021-11-05 22:29:56 -04:00
Scott Smith
16378dcf59
Convert existing tables to use the simpler 3d table definition style in rusefi_config.txt ( #3473 )
...
This fixes #3465 .
2021-11-05 21:55:33 -04:00
Scott Smith
6d38fe1eb3
Allow scaled_channel to have both multiplier and divisor ( #3468 )
...
Disallow scaled_channel for float. I can't think of a reason to allow it, and it gets in the way
of rounding.
Add separate template param to setTable; let the compiler sort out whether assignment can happen
between TElement and VElement without forcing them to be the same at function call time.
2021-11-05 17:34:22 -04:00
GitHub build-firmware Action
9e8d55177a
Auto-generated configs and docs
2021-11-05 19:42:05 +00:00
Matthew Kennedy
2b9696442e
nissan MR18DE VVT cam pattern ( #3466 )
...
* refactoring nissan trigger
* comments
* plumbing
* b
* enums
* image
* image
* implement decoder
* reshuffle
* don't case unused
* dead trigger enums
2021-11-05 15:33:22 -04:00
rusefillc
b7feea1aa5
minor todo
2021-11-05 10:01:58 -04:00
GitHub build-firmware Action
618e7edc2c
Auto-generated configs and docs
2021-11-05 11:19:56 +00:00
Matthew Kennedy
365691cb37
nissan 4yl crank pattern ( #3462 )
...
* refactoring nissan trigger
* comments
* plumbing
* b
2021-11-05 07:15:03 -04:00
rusefillc
1ead914f93
more curves! also names for curves
2021-11-04 23:59:04 -04:00
rusefillc
85984928ca
more curves! also names for curves
2021-11-04 23:19:44 -04:00
rusefi
1d9aa8bd12
turboSpeedSensorMultiplier
2021-11-04 19:35:58 -04:00
racer-coder
2612db570f
Fix the types in various fuel functions that actually refer to grams, not ms. ( #3458 )
2021-11-04 11:50:19 -04:00
rusefillc
db310a4bd0
most dead miata config
2021-11-04 09:56:05 -04:00
Matthew Kennedy
59e9d05fc7
extract engine phase function ( #3456 )
...
* extract getCurrentEnginePhase
* inject engine ref
* never invalid RPM, use 0 instead
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-11-04 05:46:16 -04:00
Matthew Kennedy
24224729a3
support autoscale on table axes ( #3452 )
...
* scale map Y axis
* allow different row/col types
* scaled channel detector
* interpolation
* looks like this actually works
* tests, no manual scaling
* comment
2021-11-03 19:53:26 -04:00
Matthew Kennedy
980a7cc833
autoscale fields in generated structs ( #3444 )
...
* add to grammar
* parser
* parser
* example consumer
* build config tool
* commit the right jar
2021-11-02 18:59:19 -04:00
rusefi
e1a78cce41
docs
2021-11-02 17:11:44 -04:00
Matthew Kennedy
75a2b5ef02
Knock retard ( #3396 )
...
* output gauge
* knock controller
* don't need that
* inject engine ref
* test knock
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-11-01 23:33:59 -04:00
rusefillc
7e4ade6b0f
better VVT default?
2021-10-31 15:25:43 -04:00
rusefillc
ada747baef
Whatever we call it, no matter how we do it - we need live data / remote view into rusEFI actual state #3353
...
fail faster!
2021-10-31 12:09:11 -04:00
rusefillc
e1402818bc
live data stuff goes up
2021-10-31 12:07:44 -04:00
GitHub build-firmware Action
4d62ed9a09
Auto-generated configs and docs
2021-10-31 02:31:01 +00:00
Andrey
2de0409061
Whatever we call it, no matter how we do it - we need live data / remote view into rusEFI actual state #3353
2021-10-30 22:24:43 -04:00
Andrey
d0b2ce5654
Whatever we call it, no matter how we do it - we need live data / remote view into rusEFI actual state #3353
2021-10-30 22:21:36 -04:00
GitHub build-firmware Action
38c67baed7
Auto-generated configs and docs
2021-10-31 02:08:31 +00:00
Andrey
97e34ad0d1
Whatever we call it, no matter how we do it - we need live data / remote view into rusEFI actual state #3353
2021-10-30 22:03:19 -04:00
Andrey
432bad64ed
Whatever we call it, no matter how we do it - we need live data / remote view into rusEFI actual state #3353
2021-10-30 21:45:52 -04:00
Andrey
b6fad6ec81
Whatever we call it, no matter how we do it - we need live data / remote view into rusEFI actual state #3353
2021-10-30 21:45:37 -04:00
rusefillc
c62fedbe34
Override trigger gaps feature #2734
2021-10-30 10:45:32 -04:00
Andrey
747bbd9c6a
warning(CUSTOM_PID_DTERM, "PID: unexpected dTime")
2021-10-29 18:31:43 -04:00
rusefillc
4c164aaf5c
Honda K & default VVT pid
2021-10-29 12:16:19 -04:00
rusefi
5ca1db80bc
Honda K cam wheels #3405
2021-10-28 15:57:23 -04:00
Andrey
c57f9c325f
https://rusefi.com/forum/viewtopic.php?f=19&t=2177
2021-10-28 13:49:44 -04:00
GitHub build-firmware Action
83aa4c625a
Auto-generated configs and docs
2021-10-28 16:45:50 +00:00
Andrey
30c91040a2
https://rusefi.com/forum/viewtopic.php?f=19&t=2177
2021-10-28 12:29:56 -04:00
GitHub build-firmware Action
b0bcdaefd6
Auto-generated configs and docs
2021-10-28 16:17:08 +00:00
Andrey
aae1e5d5c5
https://rusefi.com/forum/viewtopic.php?f=19&t=2177
2021-10-28 12:12:45 -04:00
Andrey
c96e52d6f3
Honda K cam wheels #3405
2021-10-28 10:36:41 -04:00
rusefi
75d8d334b7
secondary MRE
2021-10-27 19:54:45 -04:00
Andrey
e6faf2fa15
UNUSED
2021-10-26 21:24:16 -04:00
GitHub build-firmware Action
49575edb9a
Auto-generated configs and docs
2021-10-27 01:17:33 +00:00
Andrey
45280d7435
MRE_SECONDARY_CAN
2021-10-26 21:05:38 -04:00
rusefillc
4ef959a60e
generate java enum from C enum? generate both C and java from yaml? #2102
2021-10-25 11:05:45 -04:00
rusefillc
8c95c5adf2
generate java enum from C enum? generate both C and java from yaml? #2102
2021-10-25 10:59:24 -04:00
rusefillc
76726aad7e
generate java enum from C enum? generate both C and java from yaml? #2102
2021-10-25 10:57:02 -04:00
rusefi
bedfc8517f
generate java enum from C enum? generate both C and java from yaml? #2102
2021-10-24 20:06:57 -04:00
Andrey
b9dfc32722
generate java enum from C enum? generate both C and java from yaml? #2102
2021-10-24 19:19:16 -04:00
Andrey
229419d04b
Honda K cam wheels #3405
2021-10-24 17:12:19 -04:00
Andrey
d683a06e20
generate java enum from C enum? generate both C and java from yaml? #2102
2021-10-24 17:06:59 -04:00
Andrey
785c4db197
docs
2021-10-24 17:05:37 -04:00
GitHub build-firmware Action
9d5db767d2
Auto-generated configs and docs
2021-10-24 19:28:08 +00:00
rusefillc
08bda5e1e4
generate java enum from C enum? generate both C and java from yaml? #2102
2021-10-24 14:18:23 -04:00
rusefillc
87b3df1cf5
generate java enum from C enum? generate both C and java from yaml? #2102
2021-10-24 14:17:37 -04:00
rusefillc
5f0a9b5363
generate java enum from C enum? generate both C and java from yaml? #2102
2021-10-24 14:08:21 -04:00
rusefillc
c255e630ca
generate java enum from C enum? generate both C and java from yaml? #2102
2021-10-24 13:58:04 -04:00
GitHub build-firmware Action
a10ea5f4c2
Auto-generated configs and docs
2021-10-24 17:18:25 +00:00
rusefillc
bf7ae2c76e
generate java enum from C enum? generate both C and java from yaml? #2102
2021-10-24 13:10:38 -04:00
rusefillc
8f8bb444c1
generate java enum from C enum? generate both C and java from yaml? #2102
2021-10-24 13:01:40 -04:00
rusefillc
4192aee6de
generate java enum from C enum? generate both C and java from yaml? #2102
2021-10-24 12:49:51 -04:00
Andrey
4b4314e86d
generate java enum from C enum? generate both C and java from yaml? #2102
2021-10-24 12:15:53 -04:00
rusefillc
eead8fa1f6
generate java enum from C enum? generate both C and java from yaml? #2102
2021-10-24 09:31:32 -04:00
rusefillc
c6d47c1a8a
generate java enum from C enum? generate both C and java from yaml? #2102
2021-10-24 09:16:11 -04:00
rusefillc
add98ca5ed
generate java enum from C enum? generate both C and java from yaml? #2102
2021-10-24 00:00:31 -04:00
rusefillc
4132fe9591
generate java enum from C enum? generate both C and java from yaml? #2102
2021-10-23 23:46:08 -04:00
rusefillc
923f5d1a6c
generate java enum from C enum? generate both C and java from yaml? #2102
2021-10-23 23:42:22 -04:00
rusefillc
29faddf338
generate java enum from C enum? generate both C and java from yaml? #2102
2021-10-23 23:40:14 -04:00
GitHub build-firmware Action
2b1ad1cfe0
Auto-generated configs and docs
2021-10-24 03:19:18 +00:00
rusefillc
0749d0d180
generate java enum from C enum? generate both C and java from yaml? #2102
2021-10-23 23:14:46 -04:00
rusefillc
c45003060c
generate java enum from C enum? generate both C and java from yaml? #2102
2021-10-23 23:00:04 -04:00
rusefillc
5fdc884e71
generate java enum from C enum? generate both C and java from yaml? #2102
2021-10-23 22:07:44 -04:00
GitHub build-firmware Action
5329c73206
Auto-generated configs and docs
2021-10-24 02:01:12 +00:00
rusefillc
3f3a17e366
generate java enum from C enum? generate both C and java from yaml? #2102
2021-10-23 21:47:03 -04:00
rusefillc
cd86102042
generate java enum from C enum? generate both C and java from yaml? #2102
2021-10-23 20:24:21 -04:00
Matthew Kennedy
d008b0f8c3
static ( #3381 )
2021-10-20 15:19:48 -04:00
GitHub build-firmware Action
563fd853b0
Auto-generated configs and docs
2021-10-20 17:09:44 +00:00
rusefillc
eb05f4594e
very old very dead code
2021-10-20 12:57:07 -04:00
rusefillc
e6b92ddb0c
very old very dead code
2021-10-20 10:45:43 -04:00
rusefillc
2431fa79b3
refactoring - extracting idle state
2021-10-17 00:30:26 -04:00