Matthew Kennedy
54c339c0a4
remove trigger duty cycle calculation ( #4213 )
...
* This field was ignored.
* move pad out
* gone
* make trigger configuration a little clearer
* even simpler!
* format
* test fix
* remove duty cycle thing
2022-05-30 22:39:57 -04:00
Matthew Kennedy
5f1801f9d6
trigger configuration refactoring for clarity ( #4212 )
...
* This field was ignored.
* move pad out
* gone
* make trigger configuration a little clearer
* even simpler!
* format
* test fix
2022-05-30 19:36:47 -04:00
Matthew Kennedy
cf51533f45
More trigger encapsulation ( #4207 )
...
* trigger decoder returns a result
* TriggerFormDetails
* s
* don't reach out and touch the engine
2022-05-29 13:49:00 -04:00
Matthew Kennedy
d85ed5f3c0
trigger decoder returns a result ( #4206 )
2022-05-28 09:01:45 -04:00
Matthew Kennedy
76a15dd711
don't rely on triggerStateListener to detect trigger errors ( #4164 )
...
* Write proper TriggerDecoder tests
* Improve logic around sync loss
* these tests I understand
* these I sort of understand....
* the one error in the noiseless decoder is gone!
2022-05-13 18:48:26 -04:00
Matthew Kennedy
cf89b42716
move logic in to trigger decoder ( #4162 )
...
* move logic in to trigger decoder
* status loop
* minor cleanup
* s
2022-05-10 23:55:28 +03:00
Matthew Kennedy
b243d3fca0
TriggerState -> TriggerDecoder ( #4157 )
2022-05-10 11:41:39 +03:00
Matthew Kennedy
05dd33ddb3
switch back to flag ( #4155 )
2022-05-10 07:52:29 +03:00
Matthew Kennedy
55fdd3f3c7
encapsulate stuff properly ( #4154 )
2022-05-09 15:46:36 -04:00
rusefillc
e64c8cfccb
synchronized Phase handling improvements fix #4099
2022-05-09 04:36:03 -04:00
rusefillc
5454b8f509
m_hasSynchronizedSymmetrical handling improvements #4099
...
API progress
2022-05-09 04:04:38 -04:00
rusefillc
23c16280f6
helping build
2022-05-08 09:14:50 -04:00
rusefillc
394d1fe961
refactoring: bringing method names up to date
2022-05-08 09:04:27 -04:00
rusefillc
b2771f9b44
Remove value copy from controller into outputChannels #4095
2022-05-08 08:50:27 -04:00
rusefillc
5f9c9d1732
humans need humane warning messages
2022-04-18 11:35:19 -04:00
rusefillc
cb4979e068
very random progress
2022-04-16 17:07:57 -04:00
Matthew Kennedy
5cf2b1bba5
warning cleanup ( #4020 )
2022-03-22 16:53:24 -04:00
rusefillc
b555d9e82b
toothed previous time #4019
2022-03-21 20:41:09 -04:00
Andrey
e0258c4c8e
migrating to SensorType::Rpm API
2022-01-20 23:36:09 -05:00
Andrey
5f3324cd6b
migrating to SensorType::Rpm API
2022-01-20 23:32:59 -05:00
Matthew Kennedy
c058698859
Nb2 crank sync special case ( #3727 )
...
* extract isSyncPoint
* test because why not
* check vvt resync nb2
* custom nb decoder
* test only resyncs once!
* good job valgrind, you found a bug!
2021-12-31 15:47:25 -05:00
Matthew Kennedy
d90d6705cf
adjustment to #3722 ( #3723 )
...
* s
* behold, another bug a test caught
* test
* test generates usable trigger pattern so it works correctly
* comment
* don't need that
2021-12-31 01:21:21 -05:00
Matthew Kennedy
041a3e12a3
extract isSyncPoint function ( #3726 )
...
* extract isSyncPoint
* test because why not
* check vvt resync nb2
* clean up noise from test case
* clarify and comment
2021-12-30 11:39:04 -05:00
Matthew Kennedy
b392a7120e
improved noFiringUntilVvtSync logic ( #3696 )
...
* 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
* nissan MR too
2021-12-27 12:09:38 -05:00
rusefillc
ddbe875d98
MAP phase sensing #3544
...
trigger sync better gauges/logging
2021-12-06 17:04:05 -05:00
rusefillc
e0d5a5afac
trigger sync better gauges/logging
2021-12-06 13:08:41 -05:00
rusefillc
631d71cea7
random note
2021-11-26 15:48:42 -05:00
Andrey
4e45297145
minor progress
2021-11-24 22:35:56 -05:00
Matthew Kennedy
b9f8409f59
correctly compute engine revolution number ( #3586 )
...
* add param
* first revolution is revolution 0, not revolution 1
* would you look at that, we sync one rev quicker!
* changelog
* rpm value
2021-11-21 09:01:27 +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
Matthew Kennedy
7296593448
remove engine pointer passing ( #3556 )
...
* some
* more
* more
* the last?!
2021-11-16 04:15:29 -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
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
Matthew Kennedy
e3e5e57eac
instant rpm uses full engine cycle ( #3077 )
...
* instant rpm uses full engine cycle
* turn off fast spinup for this test
2021-07-30 08:18:24 -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
Andrey
e8aef0dcd3
VVT position of first cam is off on first cycle fix #2987
2021-07-22 01:02:37 -04:00
Andrey
2a07c3df27
Nissan VVT trigger decoder #2887
2021-07-21 23:08:56 -04:00
Andrey
c433c20a36
simplify quad vvt test #3018
...
better parameter name and explicit constraint clarification
2021-07-21 17:45:35 -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
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
Andrey
3759028a32
unit tests pass on Linux fail on Windows fix #2902
...
reducing code duplication
2021-07-05 23:51:13 -04:00
Andrey
8f13e5711a
Nissan VVT trigger decoder #2887
2021-07-05 23:39:39 -04:00
rusefillc
32a813339d
Nissan
2021-07-05 18:37:53 -04:00
Andrey
9ad5ec8044
refactoring: getShaftSynchronized
2021-07-03 10:37:03 -04:00
Andrey
7b21e5cf29
wow we have weird code!
2021-07-02 19:49:00 -04:00
Matthew Kennedy
20937455a0
Fix pre sync timestamp copy ( #2892 )
...
* fix tests
* fix pre sync copy
* this fixes the issue
2021-07-01 18:58:28 -04:00
Andrey
4627707e1c
refactoring - explicit read method
2021-06-26 22:17:07 -04:00
Andrey
f74946e790
Override trigger gaps feature #2734
2021-05-23 20:06:19 -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
rusefi
3d89cc2093
trigger and VVT duty cycle integration into limp manager #2523
2021-04-07 15:17:01 -04:00
rusefillc
c886394947
trigger and VVT duty cycle integration into limp manager #2523
2021-04-07 12:16:23 -04:00
rusefillc
9c26a84be9
trigger and VVT duty cycle integration into limp manager #2523
2021-04-07 01:21:28 -04:00
Matthew Kennedy
d5bc14719e
trigger decoder timer ( #2427 )
...
* part 2
* stale comment
* include
* why was this a macro
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-03-07 16:35:58 -05:00
Matthew Kennedy
5bfee13c21
fix instant rpm ( #2180 )
...
* consumers
* impl
* instant rpm in idle timing
2021-01-14 20:45:55 -05:00
rusefillc
fea596e867
RAM efficiency of VR crank trigger shapes #2182
...
Audi OEM 5-cyl trigger pattern aka "Tri-Tach" https://rusefi.com/forum/viewtopic.php?f=5&t=1912
fixing build?
2021-01-04 22:13:59 -05:00
rusefillc
a51634fd2b
RAM efficiency of VR crank trigger shapes #2182
...
Audi OEM 5-cyl trigger pattern aka "Tri-Tach" https://rusefi.com/forum/viewtopic.php?f=5&t=1912
2021-01-04 22:00:37 -05:00
rusefillc
72759ab4a8
Audi OEM 5-cyl trigger pattern aka "Tri-Tach" https://rusefi.com/forum/viewtopic.php?f=5&t=1912
2021-01-04 21:30:54 -05:00
rusefillc
6eb11dc60a
Audi OEM 5-cyl trigger pattern aka "Tri-Tach" https://rusefi.com/forum/viewtopic.php?f=5&t=1912
2021-01-03 13:52:53 -05:00
rusefi
663ff4656f
FATAL while bench testing VR #2153
2021-01-01 14:07:52 -05:00
rusefillc
b463166297
minor fixes
2020-12-06 19:25:48 -05:00
Matthew Kennedy
e112bbd07e
remove virtual calls from hot path ( #1857 )
...
* const ref-ify
* no virtual ❌
* even more const
* tests
* fix tests
2020-10-05 16:42:50 -04:00
Matthew Kennedy
060cfbd778
const ref-ify trigger ( #1856 )
...
* const ref-ify
* tests
2020-10-05 14:22:59 -04:00
Matthew Kennedy
ebc884e8d5
trigger decode cleanup and perf ( #1853 )
...
* trigger decode cleanup
* test config ptr patchup
* disable CDM by default
2020-10-04 19:29:26 -04:00
rusefillc
9808e675f5
Trigger performance: variable gapTrackingLength #1851
...
cool change but looks to have made zero difference
2020-10-04 13:05:49 -04:00
rusefi
b19ffa7075
TriggerConfiguration getPrintPrefix
2020-08-29 17:25:42 -04:00
rusefi
f7b03d8e6e
common sense change? "should be safe" famous last words
2020-08-27 00:31:59 -04:00
rusefi
ed3eaf319c
VVT support for VAG trigger #883
2020-08-27 00:06:10 -04:00
rusefi
0992f90f18
VVT support for VAG trigger #883
2020-08-26 20:57:11 -04:00
rusefi
35702163ee
const
2020-08-26 17:37:15 -04:00
rusefi
f268af5165
const
2020-08-26 17:30:13 -04:00
rusefi
b64c9bd9d3
VVT support for VAG trigger #883
2020-08-25 13:14:46 -04:00
rusefi
470a9f5a5a
VVT support for VAG trigger #883
2020-08-25 12:45:18 -04:00
rusefi
7d53f5859d
VVT support for VAG trigger #883
2020-08-25 00:59:07 -04:00
rusefi
978c3ff16d
VVT support for VAG trigger #883
...
a bit of dead code?
2020-08-24 02:31:27 -04:00
rusefi
4ccb209df3
VVT support for VAG trigger #883
2020-08-24 02:23:13 -04:00
rusefi
4e333dac1c
VVT support for VAG trigger #883
2020-08-24 02:07:58 -04:00
rusefi
bdbee0d38b
VVT support for VAG trigger #883
2020-08-24 02:01:50 -04:00
rusefi
0f9e8bf83e
VVT support for VAG trigger #883
2020-08-24 01:21:42 -04:00
rusefi
f5f416951a
Trigger gap-check toothDuration array samples time at any event? fix #1658
2020-07-30 19:24:55 -04:00
rusefi
e2c62b8ab3
better unit test logging
2020-07-19 15:47:21 -04:00
rusefi
adbaf9e179
better unit test logging
2020-07-19 14:17:15 -04:00
Matthew Kennedy
a2313a853c
switch some firmware warnings to errors ( #1465 )
...
* warnings as errors
* throw instead of exit
* test massaging
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-05-23 10:46:28 -04:00
rusefi
d74f1c0951
lovely, yet another minor confusion
2020-05-13 01:16:05 -04:00
rusefi
bdb93db70d
https://github.com/rusefi/hw_microRusEfi/issues/157
2020-05-12 23:37:12 -04:00
Matthew Kennedy
a9bf0f8358
Perf Trace Improvements ( #1383 )
...
* add tid field to thread
* change perf trace format
* trace consumers
* Update java parsing
* guard for test + kinetis
* stubs
* ram
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-04-29 10:53:35 -04:00
rusefi
5e0d75b9e4
more verbose
2020-04-15 20:07:56 -04:00
Matthew Kennedy
24b0c85a9e
fix warnings ( #1282 )
...
* warnings
* don't need to template those
2020-04-12 09:39:14 -04:00
rusefi
35f08f3958
progress
2020-04-10 13:32:06 -04:00
rusefi
cb2b699db6
DBG_TRIGGER_SYNC merged into DBG_TRIGGER_COUNTERS
2020-04-10 13:19:54 -04:00
rusefi
0e15a1f215
safer version by Dron0Gus
2020-04-06 11:29:09 -04:00
Matthew Kennedy
0ac3e06149
cleanup extern mess ( #1237 )
...
* cleanup
* move outside define
2020-03-29 19:06:03 -04:00
rusEfi
627fe4ba53
better trigger LiveDocs
2020-02-22 15:39:00 -05:00
rusefi
9bd819a18d
extracting class & codes clean-up
2020-01-28 00:16:33 -05:00
rusefi
ae228dff0e
trigger refactoring
2020-01-26 14:20:55 -05:00
rusefi
19d318c8ee
trigger refactoring
2020-01-26 13:51:35 -05:00
rusefi
9bd796ab6b
trigger refactoring
2020-01-26 12:02:54 -05:00