Matthew Kennedy
7296593448
remove engine pointer passing ( #3556 )
...
* some
* more
* more
* the last?!
2021-11-16 04:15:29 -05:00
rusefillc
8cb1f2545c
trigger refactoring & docs
2021-11-14 15:35:11 -05:00
Matthew Kennedy
af78ab76cb
math is fun ( #3545 )
...
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-11-14 15:32:35 -05:00
Matthew Kennedy
8edc91f657
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
Scott Smith
93d31c6c9b
Convert TriggerWaveform::wave to a pointer in preparation for code-defined sequences. ( #3528 )
...
It will eventually be class to support dynamic universal patterns in addition to ROM-based
tables.
2021-11-11 13:19:25 -05:00
Scott Smith
aec887efc8
Change users of MultiChannelStateSequence to use the API ( #3524 )
...
Better than reaching into members that should be private. I didn't feel like actually making
them private though, as one user validates pinStates isn't NULL.
2021-11-11 09:19:22 -05:00
Scott Smith
1a299a3221
Move phaseCount into MultiChannelStateSequence ( #3520 )
...
We can them drop the field from a bunch of callers, simplifying the code.
2021-11-10 19:47:27 -05:00
Scott Smith
5bd7d8e372
Don't keep a separate MultiChannelStateSequence for the trigger emulator, version 2. ( #3517 )
...
All it wants is to use the main trigger state, so don't bother copying it. Instead, change
PwmConfig to take a const pointer to a Multi.*Sequence, then make all the users adapt. Worse
fallout is that SimplePwm now has its own Multi.*Sequence, but PwmConfig is downgraded to a
pointer, so that's only a net +4 bytes. And we can make the overhead of Multi.*Sequence much lower
using embedded arrays, which only the caller can do since it knows the maximum size... (for another
day...)
Also remove SimplePwm's 2nd copy of SingleChannelStateSequence. It served no purpose.
Saves 1992 bytes of BSS and 24 bytes of RAM4 (latter probably due to SimplePwm change)
2021-11-10 07:01:20 -05:00
rusefillc
38ea0d1835
Revert "Don't keep a separate MultiChannelStateSequence for the trigger emulator. ( #3513 )"
...
This reverts commit 4e220dc163
.
2021-11-09 20:42:23 -05:00
Scott Smith
4e220dc163
Don't keep a separate MultiChannelStateSequence for the trigger emulator. ( #3513 )
...
All it wants is to use the main trigger state, so don't bother copying it. Instead, change
PwmConfig to take a const pointer to a Multi.*Sequence, then make all the users adapt. Worse
fallout is that SimplePwm now has its own Multi.*Sequence, but PwmConfig is downgraded to a
pointer, so that's only a net +4 bytes. And we can make the overhead of Multi.*Sequence much lower
using embedded arrays, which only the caller can do since it knows the maximum size... (for another
day...)
Also remove SimplePwm's 2nd copy of SingleChannelStateSequence. It served no purpose.
Saves 1992 bytes of BSS and 24 bytes of RAM4 (latter probably due to SimplePwm change)
2021-11-09 14:35:07 -05:00
Scott Smith
9b40e68155
Save ~2800 bytes of RAM by not caching angle->trigger mapping ( #3506 )
...
Memory seems more valuable than CPU; use the O(lg n) lookup by angle. A side effect is that it
seems to fix trigger lookup for the second phase of TRIGGERTYPE 53 544 TT_TRI _TACH 0.00
2021-11-09 07:03:27 -05:00
Andrey
94faa375e1
reducing complexity
2021-11-07 01:57:32 -05:00
rusefillc
d0a8bbc974
typo
2021-11-07 01:51:05 -05:00
rusefillc
4f6dc57d31
refactoring - magic constant bad
...
cypress and kinetis both have this macro already
2021-11-07 01:34:16 -04:00
rusefillc
73fe152db2
refactoring - magic constant bad
...
cypress and kinetis both have this macro already
2021-11-07 01:28:28 -04:00
rusefillc
fd28e82f73
refactoring - magic constant bad
2021-11-07 00:03:16 -04:00
Matthew Kennedy
2c47f603fc
make master happy ( #3467 )
2021-11-05 16:01:13 -04:00
Matthew Kennedy
b41dbe2ed1
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
Matthew Kennedy
6b85313b04
nissan 4yl crank pattern ( #3462 )
...
* refactoring nissan trigger
* comments
* plumbing
* b
2021-11-05 07:15:03 -04:00
Andrey
cc0a93080f
Honda K cam wheels #3405
2021-10-30 21:09:58 -04:00
Andrey
1685ec95cf
Honda K cam wheels #3405
2021-10-28 19:26:59 -04:00
Andrey
94b5b3a089
Honda K cam wheels #3405
2021-10-28 11:40:31 -04:00
Andrey
df67d76968
Honda K cam wheels #3405
2021-10-26 22:47:19 -04:00
rusefi
6c554e09f8
Honda K cam wheels #3405
2021-10-26 17:29:26 -04:00
rusefillc
996a39ba6e
generate java enum from C enum? generate both C and java from yaml? #2102
2021-10-25 11:05:45 -04:00
Andrey
98fe894ce1
Honda K cam wheels #3405
2021-10-24 17:12:19 -04:00
rusefillc
45e0a0403f
very old very dead code
2021-10-20 12:57:07 -04:00
rusefillc
b7f6c40847
https://rusefi.com/forum/viewtopic.php?f=5&t=2143 Suzuki G13B tooth pattern
2021-10-04 19:59:51 -04:00
Andrey
de5af3f4ca
https://rusefi.com/forum/viewtopic.php?f=5&t=2143 Suzuki G13B tooth pattern
2021-10-04 19:29:58 -04:00
rusefillc
6350d0923a
https://rusefi.com/forum/viewtopic.php?f=5&t=2143 Suzuki G13B tooth pattern
2021-10-04 11:25:27 -04:00
rusefillc
c89b06fa07
miata NB1 is a weird half-VR/half-Hall sensor
2021-09-29 14:31:36 -04:00
Matthew Kennedy
085709b6ba
fix ( #3253 )
2021-09-21 00:27:14 -04:00
rusefillc
3962c20c3f
https://rusefi.com/forum/viewtopic.php?f=5&t=2117
2021-09-12 13:58:03 -04:00
Andrey
60fdcbbd99
https://rusefi.com/forum/viewtopic.php?f=5&t=2117
2021-09-12 11:56:12 -04:00
rusefi
fdab33d958
https://rusefi.com/forum/viewtopic.php?f=5&t=2117
...
Ford TFI PIP
2021-09-11 23:42:05 -04:00
rusefi
ed7bb0389b
https://rusefi.com/forum/viewtopic.php?f=5&t=2117
...
Ford TFI PIP
2021-09-11 23:16:22 -04:00
Matthew Kennedy
98c4e71f03
enable address sanitizer ( #3217 )
...
* enable asan
* lua
* this is dead and leaky
* leaky nissan
* fix pwm generator use-after-stack
* initializers
* prevent problems in case of invalid trigger shape
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-09-05 05:56:59 -04:00
Andrey G
aead310023
Subaru svx trigger update (not vvt) ( #3210 )
...
* trigger: subaru: SVX: some comments
* trigger: subaru: svx: fix crank 2 offset
* trigger: subaru: svx: rework a bit
* trigger: subaru: svx: fix dtc position
2021-09-04 11:42:12 -04:00
rusefillc
67eb6d9936
Subaru svx vvt #3210
...
helping or not
2021-08-31 06:05:57 -04:00
rusefillc
dff71b0764
Subaru svx vvt #3210
...
helping or not
2021-08-31 05:54:04 -04:00
rusefillc
07ac5049f4
docs
2021-08-31 04:27:31 -04:00
rusefillc
02bc451221
Pavel says there are issues
2021-08-11 04:16:51 -04:00
Andrey
76412dffde
Nissan 4 cylinder QR trigger wheel #3118
2021-08-08 06:16:19 -04:00
Andrey
b5313d395e
Nissan 4 cylinder QR trigger wheel #3118
2021-08-08 04:56:56 -04:00
Andrey
bbd855d62b
Nissan 4 cylinder QR trigger wheel #3118
2021-08-08 04:45:40 -04:00
Matthew Kennedy
d3ec2b21d1
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
rusefillc
bc9f85ff31
safer NB2 progress ( #3041 )
...
* safer NB2 progress
* one step back
2021-07-23 16:43:24 -04:00
Matthew Kennedy
3cbd983c93
adjust nb2 vvt sync ( #3019 )
...
* test existing implementation
* nb2 vvt pattern sync
* update test
2021-07-21 20:07:28 -04:00
Matthew Kennedy
2a4dfd0bf8
Fix prepareEventAngles for symmetrical crank triggers ( #2982 )
...
* fix and make code legible
* update test to check every tooth
* symmetrical crank
* simplify findTriggerPosition
* make getAngle intelligable
2021-07-17 23:27:20 -04:00
Andrey
c9360448cc
NB2 trigger shape does not seem to match JimStim #2980
...
only first steps of unit test
2021-07-17 17:47:32 -04:00