rusefillc
cb9e33d501
dead lines
2022-11-05 17:21:30 -04:00
rusefillc
bcafeb471b
dead lines
2022-11-05 15:20:02 -04:00
Andrey G
cc9b1517ac
compile warnings: signed vs unsigned and unused ( #4713 )
2022-10-30 09:47:53 -04:00
Matthew Kennedy
f2c8a0192c
fix instant rpm clearing bug ( #4629 )
...
* improve instant rpm
* changelog
2022-09-29 07:15:59 -04:00
Matthew Kennedy
9cd5553617
plumbing parts of 4621 ( #4622 )
...
* plumbing parts of 4621
* show error list
* exit on error too!
* this test has some unhealthy undefined behavior
* no uninitialized values
* no that doesn't work
* remove the invalid data and the bug becomes obvious
2022-09-25 18:49:54 -04:00
Matthew Kennedy
dbf8a1ea2a
#4619 ( #4620 )
2022-09-25 07:40:28 -04:00
Matthew Kennedy
02aad24c59
explicitly pass which edges we sync trigger on ( #4607 )
...
* require sync edge type
* s
* fix neon
* info printing
* put enums back
* auto gen enum fiddling
2022-09-23 20:39:41 -04:00
rusefillc
b4bc5551db
tear down Engine god object #4511
2022-09-15 22:06:16 -04:00
rusefillc
918112d588
tear down Engine god object #4511
2022-09-15 22:00:07 -04:00
rusefillc
03d176ca61
tear down Engine god object #4511
2022-09-15 21:55:15 -04:00
rusefillc
1c28ca0582
tear down Engine god object #4511
2022-09-15 21:46:01 -04:00
Andrey
f5a5764429
deep rabbit holes are the best ones!
...
refactoring: encapsulation
2022-09-14 02:35:55 -04:00
Andrey
1d0f13fc41
deep rabbit holes are the best ones!
...
refactoring: encapsulation
2022-09-14 02:17:04 -04:00
Andrey
579f3df7ad
deep rabbit holes are the best ones!
...
refactoring: encapsulation
2022-09-14 01:53:17 -04:00
Andrey G
1ca5988877
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
921b97431f
refactoring: type safety
2022-09-11 03:46:50 -04:00
rusefillc
cb3c070928
refactoring: type safety
2022-09-11 02:57:35 -04:00
rusefillc
f9b849dd8f
refactoring - reducing API between FW and Java
2022-09-11 02:16:47 -04:00
rusefillc
3c647c6442
huh? dead code? how can we get NAN from eventAngles table? ( #4549 )
2022-09-07 23:45:33 -04:00
Andrey
3c1cc0b857
trigger: in corner cases like NB2 and VQ35 those are not revolutions
2022-09-07 22:24:28 -04:00
Andrey
8253156233
trigger: in corner cases like NB2 and VQ35 those are not revolutions
2022-09-07 21:45:59 -04:00
Andrey
25b6d39802
os_access.h dead?
2022-09-07 15:56:45 -04:00
Matthew Kennedy
670c2e4afe
reset instant RPM in case of cam resync ( #4544 )
2022-09-06 21:38:35 -04:00
Matthew Kennedy
fba0906942
more granular trigger error messages ( #4526 )
...
* granular trigger error messages
* adjust test expectations
* explicitly test behavior
2022-09-04 09:15:24 -04:00
rusefillc
715b799b6c
separate atomic picked from https://github.com/rusefi/rusefi/pull/4493 ( #4495 )
...
Co-authored-by: rusefillc <sdfsdfqsf2334234234>
2022-08-27 22:26:56 -04:00
rusefillc
4e6d129f27
poke 3
2022-08-23 09:02:38 -04:00
rusefillc
016cd3bc7c
poke 2
2022-08-22 23:43:06 -04:00
rusefillc
341b43e7e3
poke 1
2022-08-22 23:42:48 -04:00
rusefillc
637dc37e95
RE: reasons for verbose messages
2022-08-22 22:52:48 -04:00
rusefi
ea7597e0d6
trigger gap logging: it's a mess :(
2022-08-21 12:38:29 -04:00
rusefillc
f11480597d
todo: huh? dead code? how can we get NAN from eventAngles table?
2022-08-11 20:05:29 -04:00
rusefillc
d97bcec161
refactoring: better field name
2022-08-09 20:32:39 -04:00
Matthew Kennedy
d5f1235a43
trigger tweaks cleanup ( #4278 )
...
* simplify some math
* we say yes to the todo
* and put back that test
* test
2022-06-23 23:11:29 -04:00
rusefi
214d38f286
verbose trigger sync should reuse engineSnifferRpmThreshold fix #4259
2022-06-18 15:18:45 -04:00
rusefillc
9d942a1c4a
more info verbose trigger/vvt
2022-06-17 22:11:09 -04:00
Matthew Kennedy
27c98f70fe
cam/crank sync improvements ( #4152 )
...
* clarify getOperationMode
* wait for phase synchronize to transition to sequential mode
* one test
* encapsulate vvtSyncCounter
* test
* Add option to stop VVT sync above some RPM
* getOrZero
* Revert "synchronized Phase handling improvements fix #4099"
This reverts commit e64c8cfccb
.
* Revert "m_hasSynchronizedSymmetrical handling improvements #4099"
This reverts commit 5454b8f509
.
* remove synchronizedPhase
* only crank needs this
* changelog
* needsDisambiguation()
* test
* s
* bad merge
* put the timer back
* s
* s
* changelog
* test for new behavior
* correct parameter order
* spelling
* s
* s
* s
* tests merge happy
* bad merge
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2022-06-09 17:21:22 -04:00
Matthew Kennedy
c2f61dc95f
Remove third trigger channel ( #4226 )
...
* remove third trigger
* clean up the honda mess
* there was nothing novel about this engine config
* include
* missed a few
* s
* x
* changelog
* don't set the third trigger input
* don't redefine the same thing 3 times
* only two inputs!
* test
2022-06-01 21:24:20 -04:00
Matthew Kennedy
56e7acd869
Trigger cleanup init ( #4222 )
...
* extra parameter
* name decoders in constructor
* s
2022-06-01 00:55:34 -04:00
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