Matthew Kennedy
af7e4f6fe5
two modes trigger scheduler ( #4598 )
...
* two modes trigger scheduler
* asOld
* hpfp
2022-09-20 05:28:23 -04:00
Matthew Kennedy
3a57c41c1b
add fuel/spark cut codes to TS indicators ( #4592 )
...
* add fuel/spark cut codes to TS indicators
* fix list
* only set clearReason if not cleared
2022-09-19 22:01:03 -04:00
rusefillc
d9733199c1
"angle range findAngle#a6" critical error #4593
2022-09-19 18:33:19 -04:00
rusefillc
efb232223f
moving acceleration around
2022-09-16 00:06:57 -04:00
rusefillc
61134b452a
tear down Engine god object #4511
...
oh I hope this ends well
2022-09-15 23:41:06 -04:00
rusefillc
45d88f1d26
tear down Engine god object #4511
2022-09-15 22:21:07 -04:00
rusefillc
ec0e567989
tear down Engine god object #4511
2022-09-15 21:46:01 -04:00
rusefillc
2d21aacc08
CUSTOM_INSTANT_MAP_DECODING
2022-09-15 15:07:31 -04:00
rusefillc
888247eccd
mapFast into logs
2022-09-15 14:55:49 -04:00
Andrey
0e91914266
deep rabbit holes are the best ones!
...
refactoring: encapsulation
2022-09-14 02:35:55 -04:00
Andrey
2c0ce0ec7d
deep rabbit holes are the best ones!
...
refactoring: encapsulation
2022-09-14 02:17:04 -04:00
Andrey
6cdb0dc0af
deep rabbit holes are the best ones!
...
refactoring: encapsulation
2022-09-14 01:53:17 -04:00
Andrey
82cda62bac
inline method to reduce confusion
2022-09-14 01:34:52 -04:00
Andrey
fedfd42989
removing dead parameter
2022-09-14 01:13:57 -04:00
Andrey
28704a9970
moving IO-only away from scheduling logic
2022-09-14 00:55:55 -04:00
Andrey
b69d613192
moving IO-only away from scheduling logic
2022-09-14 00:52:24 -04:00
rusefillc
e733782920
i suspect that no one cares about these
2022-09-14 00:34:04 -04:00
Andrey G
55c1f53c75
dead code, reduce typedefs ( #4566 )
...
* Do lightweight checks first
* Dead getTimeIgnitionSeconds()
Dead since 81fffe87b7
* Get rid of efitime_t.
Purpose are not clear. Use efitick_t where ticks are used,
use efitimeus_t for uS, use efitimems_t or efitimems64_t for mS.
* Fix unit tests
* Fix misc: stm32f1_test_project
2022-09-11 16:08:11 -04:00
rusefillc
94762094a7
refactoring - reducing API between FW and Java
2022-09-11 01:59:44 -04:00
rusefillc
cfb843b315
send more of Engine Sniffer data #4560
...
hello Kinetis it has been a while!
2022-09-11 00:18:08 -04:00
rusefillc
7bc7299db1
send more of Engine Sniffer data #4560
2022-09-10 20:25:29 -04:00
Andrey
0d72d41721
refactoring: brining stuff closer
2022-09-08 00:19:24 -04:00
Andrey
a3d51d8b49
refactoring: better place for cam validation
2022-09-07 23:31:44 -04:00
Andrey
c60e0382dc
refactoring: parameter rename
2022-09-07 23:24:24 -04:00
Andrey
d3eab7c3b7
brutal encapsulation
2022-09-07 21:29:11 -04:00
Andrey
5962cbd5c2
brutal encapsulation
2022-09-07 20:31:04 -04:00
Andrey
52869d63bb
tear down Engine god object #4511
...
just trying different things
2022-09-07 20:25:49 -04:00
Andrey
ae93591755
brutal encapsulation
2022-09-07 20:20:29 -04:00
Andrey
6e8d248408
brutal encapsulation
2022-09-07 19:37:11 -04:00
Andrey
173ceae146
extracting prime_injection
2022-09-07 16:27:56 -04:00
Andrey
2d9dbbd6b8
extracting prime_injection
2022-09-07 16:25:50 -04:00
Andrey
ab4b451195
os_access.h dead?
2022-09-07 15:56:45 -04:00
Andrey
197454ac34
tear down Engine god object #4511
...
just trying different things
2022-09-07 15:38:15 -04:00
rusefillc
a7af8ecec9
Engine Sniffer into TS data logs fix #4535 ( #4537 )
2022-09-05 19:49:27 -04:00
Andrey
13c42ead92
tear down Engine god object #4511
...
just trying different things
2022-09-05 04:28:47 -04:00
Andrey
4934d76d88
tear down Engine god object #4511
...
just trying different things
2022-09-05 04:24:17 -04:00
Andrey
c9828a8b0f
tear down Engine god object #4511
...
just trying different things
2022-09-05 04:10:14 -04:00
Andrey
f1f447df45
tear down Engine god object #4511
...
just trying different things
2022-09-05 03:38:44 -04:00
Andrey
99d8801dc6
tear down Engine god object #4511
...
just trying different things
2022-09-05 02:59:38 -04:00
Andrey
268a5c7964
tear down Engine god object #4511
...
just trying different things
2022-09-05 02:44:06 -04:00
Andrey
6d72805a56
tear down Engine god object #4511
...
just trying different things
2022-09-05 02:28:46 -04:00
Andrey
7139c21e7a
Injection Offset for skipped wheel triggers fix #4536
2022-09-05 01:31:03 -04:00
Andrey
c1b218b772
refactoring: let's use different names for different things
2022-09-05 01:16:24 -04:00
Andrey
d51511a15e
refactoring: moving field
2022-09-05 00:53:05 -04:00
Andrey
ccfe2a5d58
refactoring: splitting header where cpp was already split
2022-09-05 00:48:38 -04:00
Andrey
0ed576031e
refactoring: moving method closer to usage
2022-09-05 00:32:36 -04:00
Matthew Kennedy
c4080e7c80
extract updateInjectionAngle ( #4512 )
2022-09-01 18:48:03 -04:00
Andrey
ac0b4a05fc
a bit of dead code
2022-09-01 12:05:01 -04:00
Andrey
9d8afea152
a bit of dead code
2022-09-01 11:47:56 -04:00
Andrey
e240ac84d3
refactoring: reducing outputChannels copy
2022-09-01 01:06:49 -04:00
Andrey
705dda095e
dead code
2022-09-01 00:23:33 -04:00
Andrey
da66fa055c
refactoring: enum name clean-up
2022-09-01 00:23:33 -04:00
Andrey
9f4f85a097
let spark deal with spark limpManager
2022-08-31 23:59:40 -04:00
Andrey
28d797d5c2
moving confusion further away from fuel control
2022-08-31 23:59:40 -04:00
Andrey
6d3a6dc2f8
readability
2022-08-31 23:29:47 -04:00
Andrey
4cbaddcc60
less code is better
2022-08-31 23:14:20 -04:00
Andrey
039f70b18e
unused parameter
2022-08-31 22:59:05 -04:00
Andrey
fef406a5a6
english do you speak it
2022-08-31 22:56:38 -04:00
Andrey
c8e821ce16
dead
2022-08-31 22:45:35 -04:00
Andrey
a4805dace0
dead console command and minor refactoring
2022-08-31 22:41:58 -04:00
GitHub gen-configs Action
490d9b0c93
Auto-generated configs and docs
2022-08-30 06:02:26 +00:00
Matthew Kennedy
ee97e2a7d0
knock retard limit table ( #4498 )
...
* add max retard table
* ui
* s
* better naming
* s
* test can use base class
2022-08-30 01:57:37 -04:00
Andrey
3fe2c74730
docs
2022-08-25 19:58:15 -04:00
Andrey
cecc5a9d6e
https://github.com/rusefi/hellen154hyundai/issues/60
...
extra logging
2022-08-25 19:58:10 -04:00
rusefillc
5d2096f906
require full sync for odd cylinder count #4478
2022-08-23 22:58:33 -04:00
rusefillc
c7c443ea24
https://github.com/rusefi/hellen154hyundai/issues/57
2022-08-09 13:26:11 -04:00
Matthew Kennedy
923d2c2e44
unexpected contains information about why it failed ( #4393 )
...
* unexpected can contain information
* info printing
* sensors return appropriate error codes
* remove reliance on undefined behavior
* s
2022-07-28 10:04:28 +03:00
rusefillc
232729e8bf
todo: shall we move into high_pressure_fuel_pump.txt and reduce OOP elegance or create a separate live data just for these ones?
2022-07-04 17:08:41 -04:00
Andrey
dc4fcda6da
logging of live data structs was: data points #3614
2022-06-29 03:21:53 -04:00
rusefillc
8acbf9d8df
logging of live data structs was: data points #3614
2022-06-29 03:13:35 -04:00
Matthew Kennedy
c0f290b922
Injector scheduled by angle, not tooth index ( #4208 )
...
* trigger decoder returns a result
* TriggerFormDetails
* s
* don't reach out and touch the engine
* injection doesn't care about teeth
* fix up existing tests
* oh look, we can actually test this logic now without trying to depend on trigger shape!!!
* fix a real bug
* simplify
2022-06-24 17:43:23 -04:00
rusefi
a552d58d42
verbose trigger sync should reuse engineSnifferRpmThreshold #4259
...
reducing complexity
2022-06-18 14:17:36 -04:00
Matthew Kennedy
720c463ffb
trigger decoder returns a result ( #4206 )
2022-05-28 09:01:45 -04:00
Matthew Kennedy
fe77f5127e
12 tooth crank mode ( #4179 )
...
* 12 tooth crank
* comment
* s
* rusefi config
2022-05-17 21:38:24 -04:00
rusefillc
7ca32951ec
An option to disable semi-random ignition fix #4151
2022-05-08 09:16:43 -04:00
Andrey
e62877964a
Move curves out of engineConfiguration in order to reduce RAM usage #4127
2022-05-01 23:43:43 -04:00
rusefillc
ec1a6a84db
knock reaction #202
...
LiveData
2022-04-29 15:23:22 -04:00
rusefillc
243fde13fa
knock reaction #202
...
steps towards new LiveData convention
2022-04-29 13:47:31 -04:00
rusefillc
b8c82889f3
knock reaction #202
2022-04-29 12:25:33 -04:00
GitHub build-firmware Action
acaadb476e
Auto-generated configs and docs
2022-04-29 16:04:30 +00:00
rusefillc
07201ae979
knock reaction #202
2022-04-29 11:22:24 -04:00
Matthew Kennedy
38213bbc00
more missing autoscale ( #4112 )
...
* autoscale m_config->timeConstant
* min/max afr
* more
* dwell voltage
* closed loop fuel
* knock
* map estimate
* applyNonlinearBelowPulse
* fix
* add a test while we're at it for un-covered code
* test fallback MAP since we touched that
* always compute fallback MAP even if sensor is OK
2022-04-28 08:16:02 -04:00
Matthew Kennedy
bc6a87cadc
allow enum_class in rusefi_hw_enums.h ( #4104 )
...
* make things c++ friendly
* install various canaries in coal mines
* using is much clearer than typedef
* fixing builds
* lps25
* trigger includes were a mess
* c -> c++ cleanup
* os util
* why did so many include os_util.h?
* fwd declare
* cypress/kinetis
* s
* eg33 happy
* happy sim
* cypress usb
* pch
* cypress
* doesn't need to include all that
* h7
2022-04-25 20:38:16 -04:00
rusefillc
71275e841b
m_hasSynchronizedSymmetrical handling improvements #4099 ( #4101 )
2022-04-23 19:45:29 -04:00
Matthew Kennedy
16de438ab8
knock threshold table fix ( #4077 )
...
* fix knock threshold table
* defaults
* knock controller is engine module
* testable
* test builds
* knock tests work
* s
* format
* everyone loves changelogs
2022-04-18 08:03:16 -04:00
GitHub build-firmware Action
a2cff4ee12
Auto-generated configs and docs
2022-04-17 20:30:07 +00:00
rusefillc
0b21ddce9c
random progress
2022-04-16 16:39:52 -04:00
Matthew Kennedy
497e7ffe77
allow setting injection phase by start or center of injection ( #4068 )
...
* allow SOI/COI
* other change
* renames and simplify
* clean up ownIndex
* double check in spark logic
2022-04-15 10:22:36 -04:00
rusefillc
b776003989
do not control VVT during cranking fix #3443
2022-04-10 19:22:39 -04:00
rusefillc
6b5747d4c8
refactoring: method rename
2022-04-02 21:01:29 -04:00
Matthew Kennedy
f742ae8b7e
limp mangaer handles more stuff ( #3983 )
2022-03-20 09:28:17 -04:00
Benas Brazdziunas
2035c2fa7f
Launch fuel and spark cut issue ( #3988 )
...
* Launch fual and spark cut issue
* moved launch cuts to limp_manager
* Applied recomendations
* Auto-generated configs and docs
* Added recomendations
* Auto-generated configs and docs
Co-authored-by: GitHub build-firmware Action <action@github.com>
Co-authored-by: Benas <bbrazdziunas@gavea.co.uk>
2022-03-11 09:27:42 -05:00
rusefillc
751355a04b
Limp shutdown rebase ( #3879 )
...
* limp manager handles engine stop
* use timer
* dead relevant fsio
* this stuff needs its own ticket
* if we can comment out 'business logic' and tests do not fail it's not a great sign :(
Co-authored-by: Matthew Kennedy <matthewkennedy@outlook.com>
Co-authored-by: rusefillc <sdfsdfqsf2334234234>
2022-02-01 20:47:17 -05:00
Matthew Kennedy
41ab294281
fix sequential mode cranking ( #2919 )
...
* fix
* use the right enum
* do it for fuel too
* earlier
* s
2022-02-01 19:04:20 -05:00
Matthew Kennedy
c6f45c5022
warnings fixes ( #3851 )
...
* unused things
* !!! actual bug !!!
* dead
* unused
* unused
* multi-bus lua RX was just broken
* make the compiler angry about it
* dead config
* alphax 2
* just call, no store
* compiler too angry
2022-01-31 18:37:42 -05:00
Matthew Kennedy
b5232ab5e6
decouple TPS accel enrichment from trigger ( #3825 )
...
* move call site
* move thresholding out of fast path
* adjust config
* test
2022-01-23 15:31:39 -05:00
Andrey
365f2f24f0
Good news RPM is now float
...
open question if I've affected performance negativelly or not.
2022-01-21 00:56:13 -05:00
Andrey
33df88d3f7
fixing NOISY_RPM handling via Sensor framework
2022-01-21 00:21:45 -05:00
Andrey
1bd71e4b2e
migrating to SensorType::Rpm API
2022-01-20 23:54:52 -05:00
Andrey
26c2d76f6c
migrating to SensorType::Rpm API
2022-01-20 23:36:09 -05:00
Andrey
cda2b711cf
migrating to SensorType::Rpm API
2022-01-20 23:32:59 -05:00
Andrey
c7a62bcdb3
migrating to SensorType::Rpm API
2022-01-20 22:04:45 -05:00
Andrey
5f788415ea
what's the difference between setRpmValue and assignRpmValue #3815
...
refactoring
2022-01-20 21:48:18 -05:00
Matthew Kennedy
38ee722d49
#3815 ( #3816 )
2022-01-19 17:38:17 -05:00
Matthew Kennedy
07024f4c3b
add option to always use instant RPM ( #3813 )
...
* option to always use instant RPM
* duh
2022-01-19 07:34:22 -05:00
rusefillc
729c9a1ff4
On m_event vs lobe vs scheduling #3804
2022-01-18 22:36:05 -05:00
rusefillc
0e17f9d6e8
On m_event vs lobe vs scheduling #3804
2022-01-18 21:01:49 -05:00
rusefillc
f470d93cca
On m_event vs lobe vs scheduling #3804
2022-01-18 20:57:24 -05:00
rusefillc
c23c93a384
On m_event vs lobe vs scheduling #3804
2022-01-18 10:16:47 -05:00
rusefillc
5e2ad39d91
GDI Epic #1448
2022-01-18 00:27:20 -05:00
GitHub build-firmware Action
726147da75
Auto-generated configs and docs
2022-01-18 05:10:57 +00:00
rusefillc
12ce80f1cb
live data
2022-01-18 00:05:34 -05:00
Andrey
a1374062f0
Better handling of RPM during stop of cranking #3803
...
reuse existing magic constant
2022-01-17 21:18:43 -05:00
rusefillc
bc66096574
Better handling of RPM during stop of cranking #3803
...
refactoring: reusing existing method
2022-01-17 21:00:49 -05:00
rusefillc
177a5faa63
limp ClearReason
2022-01-08 22:13:20 -05:00
GitHub build-firmware Action
2208947bb3
Auto-generated configs and docs
2022-01-05 06:49:51 +00:00
GitHub build-firmware Action
38b17f5859
Auto-generated configs and docs
2022-01-05 05:09:04 +00:00
Scott Smith
efd59d6cbc
GDI/HPFP: Don't take P term into account when clamping I. ( #3732 )
2022-01-02 18:45:31 -05:00
rusefillc
95136893de
GDI Epic #1448
2022-01-01 17:18:11 -05:00
Matthew Kennedy
ab3e3ac83f
hook up fuel trims ( #3715 )
...
* hook up fuel trims
* pass all the params
* store per-cylinder fuel mass directly
* main trigger callback only touches per-cylinder, no banks!
* test test test test
* move UI to happy land
* changelog
2022-01-01 02:19:59 -05:00
rusefillc
f715210b39
GDI Epic #1448
...
live view
2021-12-31 15:28:24 -05:00
rusefillc
bb3f8cb76f
GDI Epic #1448
2021-12-31 03:09:04 -05:00
rusefillc
268827b87b
GDI Epic #1448
2021-12-31 03:09:04 -05:00
Matthew Kennedy
b3de217c1b
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
rusefillc
12d79c138b
GDI Epic #1448
2021-12-30 19:14:49 -05:00
Matthew Kennedy
c3b712aa3b
remove vvtSyncTimeNt ( #3722 )
...
* 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
* check synchronized bit
* now we don't need it at all?!
* and *NOT* synced
* start VVT sync earlier
2021-12-28 00:00:26 -05:00
Matthew Kennedy
95ad75318d
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
06ccf524dd
MAP phase sensing #3544
...
removing dead implementation
2021-12-16 21:13:55 -05:00
rusefillc
82c061a8e0
MAP phase sensing #3544
2021-12-16 21:11:29 -05:00
Matthew Kennedy
4148ee76bf
smarter priming logic ( #3674 )
...
* ignition controller detects rising edge on voltage
* update test
* comment
* ignore negative transients
* tweak
* test
* priming happens on ignition-on
* priming has its own scheduling
* config & UI
* dead config
* implementation
* look, the test caught a bug
* keep the watchdog happy
* bad merge
* changelog
* easier to read the test
* test naming
2021-12-08 16:20:19 -05:00
Matthew Kennedy
2050580a16
prime upon ignition voltage, not on power on ( #3662 )
...
* ignition controller detects rising edge on voltage
* update test
* comment
* ignore negative transients
* tweak
* test
* priming happens on ignition-on
* priming has its own scheduling
* test
* dead adjacent line of code
2021-12-08 07:26:49 -05:00
Andrey
940b04ab24
Let's always have TS structure so that unit tests can check values in outputChannels, kind of making outputChannels a god dump for state but whatever since Live View is coming
2021-12-07 20:18:47 -05:00
Matthew Kennedy
3a95e86112
calculate per-cylinder ignition timing ( #3652 )
...
* simplify cylinder phasing
* per cylinder timing
* s
* s
* s
* why was there a divide by 2?
2021-12-06 21:19:37 -05:00
rusefillc
2f45ed205c
MAP phase sensing #3544
...
option to look for high and low peaks
2021-12-05 14:25:26 -05:00
Matthew Kennedy
555a8d5f43
simplify cylinder phasing ( #3650 )
2021-12-05 10:46:35 -05:00
rusefillc
0c91e77749
MAP phase sensing #3544
...
taking a step back to happy place
2021-12-04 18:21:10 -05:00
rusefillc
004f28a60a
MAP phase sensing #3544
2021-12-04 17:19:35 -05:00
rusefillc
3a8e7e00f9
MAP phase sensing #3544
2021-12-02 22:32:07 -05:00
rusefillc
e75590fd45
why so many channels are hidden in debug ? #3614
2021-11-29 14:11:19 -05:00
rusefillc
edb10af9f4
automation around outputs section #197
2021-11-27 13:36:37 -05:00
Andrey
48ed80ffb9
MAP phase sensing #3544
2021-11-24 23:06:52 -05:00
Andrey
e2fa1af527
MAP phase sensing #3544
2021-11-24 22:36:36 -05:00
Matthew Kennedy
992689ced5
bye ( #3609 )
2021-11-24 22:03:17 -05:00
Matthew Kennedy
bc1c2e78fd
fix map avg logging ( #3606 )
...
* s
* s
2021-11-24 18:24:39 -05:00
Matthew Kennedy
09bf989995
map averaging usability ( #3603 )
2021-11-24 14:39:54 -05:00
rusefillc
446252d77d
MAP phase sensing #3544
2021-11-24 14:26:41 -05:00
Matthew Kennedy
3334a6963c
oh my god we've had no asserts ( #3595 )
2021-11-22 17:52:03 -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
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