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
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
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
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
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
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
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
02bc451221
Pavel says there are issues
2021-08-11 04:16:51 -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
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
Andrey
39364ced59
kaiju is asking for vq30de trigger wheel decoder #2974
2021-07-17 01:10:13 -04:00
Andrey
d76132c206
refactoring
2021-07-17 00:46:39 -04:00
Andrey
f69690a36a
kaiju is asking for vq30de trigger wheel decoder #2974
2021-07-17 00:27:56 -04:00
Matthew Kennedy
e3849b95d5
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
rusefillc
206bf7adc8
reducing warnings
2021-07-13 14:50:10 -04:00
Andrey
5416dd9906
refactoring - reusing magic constant
2021-07-05 23:07:36 -04:00
Andrey
2911e128d9
Nissan progress
2021-07-02 19:57:26 -04:00
Andrey
11def6d9e3
Nissan VVT trigger decoder #2887
2021-07-01 22:27:43 -04:00
Andrey
fd3aa4ec18
Nissan VVT trigger decoder #2887
2021-07-01 21:48:47 -04:00
Andrey
6c7d2700b3
Nissan VVT trigger decoder #2887
2021-07-01 17:28:52 -04:00
Andrey
eefba195d0
VW warnings on cranking #2861
...
same resilience for some other triggers
2021-06-27 13:29:09 -04:00
Andrey
4627707e1c
refactoring - explicit read method
2021-06-26 22:17:07 -04:00
Andrey
25afc6e67c
refactoring - explicit read method
2021-06-26 22:11:42 -04:00
Andrey
1003056f85
refactoring - explicit read method
2021-06-26 22:07:45 -04:00
Andrey
7e0d83d54b
looks like this parameter is very well used now?
2021-06-21 02:12:14 -04:00
Andrey
e4497358f5
Override trigger gaps feature #2734
2021-05-25 17:19:20 -04:00
Matthew Kennedy
5f0791f9fb
Destroy all shared logger ( #2574 )
...
* most of shared logger
* a few more
* one more
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-04-21 14:28:48 -04:00
Matthew Kennedy
737ee444b8
rip the bandaid: find-replace most of scheduleMsg ( #2572 )
...
* biiiig find replace
* more trivial find replace
* pwm
* almost all of them
* few more
* gpio
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-04-21 12:53:13 -04:00
rusefillc
2547283f45
Kawasaki KX450F trigger wheel #2538
2021-04-09 12:44:28 -04:00
rusefillc
06ada8562b
Kawasaki KX450F trigger wheel #2538
2021-04-08 22:16:14 -04:00
Matthew Kennedy
db7856523c
barra vvt cam pattern ( #2483 )
...
* barra vvt cam pattern
* two tooth sync
* I think this needs to be here too
2021-03-22 07:48:29 -04:00
Andrey G
aa05ff195d
Hip9011 and cleanups ( #2477 )
...
* hip9011: move hipCs out of EnginePins to hip9011 driver
* hip9011: cleanup debug output, save few RAM bytes
* Supress few signed vs unsigned warnings
2021-03-20 08:40:36 -04:00
Matthew Kennedy
925a6ca086
harden against various no-boot scenarios ( #2468 )
...
* zero length trigger
* validate config
* validate cylinder count
* wrong type on cylinder count
* invalid comment
* invalid SPI
2021-03-17 09:24:13 -04:00
rusefillc
c954803292
TDC Trigger Position #2428
...
any single-tooth primary trigger should automatically run with "useOnlyPrimaryForSync = true;"
2021-03-08 00:00:48 -05:00
rusefillc
11e8a35c15
Trigger pattern request Škoda Favorit fix #2302
2021-02-06 20:53:30 -05:00