alxrMironov
7ebebd6922
Begin "vehicleSpeed" refactoring. Module switched to "FunctionalPointerSensor" class. #3106 #3107 #3108 . ( #3132 )
...
* Add new sensor type "VehicleSpeed"
* Add "Vehicle speed" sensor to name list
* Add Vehicle speed sensor initialization with function pointer sensor.
* Add init_vehicle_speed_sensor.cpp to Makefile
* Replace dependencies from "getVehicleSpeed" to OOP-like "Sensor::get()"
* Add warning and TODO to "mock vehicle speed" call
* Replace get & mock "VehicleSpeed" methods in tests
* Remove #warning directive (cause error by current settings)
* Remove stray tab
* Remove explicitly type casting.
* Add "InitVehicleSpeedSensor" function declaration to init.h
* Add "VehicleSpeedSensor" initialization call into "InitNewSensors"
Co-authored-by: alxrMironov <330OMcorporative>
2021-08-12 22:16:51 +03:00
Matthew Kennedy
90a0e47b04
skip etb init if no primary sensor ( #3136 )
...
* skip init if no primary sensor
* specific test
2021-08-12 00:45:44 +03:00
Matthew Kennedy
d24f1462e2
even more pch ( #3112 )
...
* s
* more
* s
* f7
2021-08-04 19:30:52 -04:00
Matthew Kennedy
25414ebdad
yet more pch ( #3068 )
...
* big pch energy
* put back ramdisk stub
* tests are happy
* h743 nucleo
* kinetis
* I love deleting code!
* make stepper happy
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-08-03 22:05:01 -04:00
Matthew Kennedy
a8eddbccf6
perform extra-step-prevention in the stepper driver itself ( #3038 )
...
* perform extra-step-prevention in the stepper driver itself
* isBusy flag
* I am unable to type
* the court of public opinion has decided that greater-equal is correct
* that sets target in steps, not percent
* correct var name
* mock stepper motor
* testable stepper
* build is happy
* helping build
2021-08-02 07:03:57 -04:00
Andrey
511b5c22dd
unit test for vehicle_speed.cpp #3081
2021-08-01 12:09:53 -04:00
Matthew Kennedy
ab49f61a83
gppwm vbatt axis ( #3088 )
2021-07-31 21:20:19 -04:00
rusefillc
c6dbd9caf7
121 vag defaults have fatal error fix #3059
2021-07-26 16:40:11 -04:00
Matthew Kennedy
b52d50bbf2
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
eaeade5305
Clutch switch inverted options do not invert detected pedal position
...
#3044
2021-07-24 18:59:00 -04:00
Andrey
37247db383
Clutch switch inverted options do not invert detected pedal position
...
#3044
2021-07-24 18:44:13 -04:00
Matthew Kennedy
617c2886d9
adjust taper behavior ( #3051 )
...
* adjust taper behavior
* check that taper works in running state too
2021-07-24 16:12:07 -04:00
rusefillc
ca34562d5d
Clutch switch inverted options do not invert detected pedal position #3044
2021-07-24 15:54:51 -04:00
rusefillc
9c166d86fe
Clutch switch inverted options do not invert detected pedal position #3044
2021-07-24 15:36:03 -04:00
rusefillc
4ae72f43f6
"prettyClose": some strange code inside idle controller? #3030
2021-07-22 15:30:32 -04:00
Matthew Kennedy
2ce7777865
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
a926357a01
making code more testable
2021-07-14 22:37:05 -04:00
Matthew Kennedy
5e08907590
knock sensing peak detect ( #2910 )
...
* knock peak detect
* comments
* comment
* initialize
* test
* fix warnings while we're here
* those are functions, not values
* ram
2021-07-06 21:44:59 -04:00
Andrey
aabdea4140
Option to log VVT target #2913
2021-07-06 20:00:53 -04:00
Matthew Kennedy
5bd3ae3aaa
Disable closed loop idle during cranking->running taper ( #2900 )
...
* implement
* dead file?
* implement tests
* new phase
2021-07-06 08:47:06 -04:00
Matthew Kennedy
007a390f2b
Gate closed loop idle on road speed ( #2901 )
...
* implement
* test
* b
* config
2021-07-04 09:35:12 -04:00
Matthew Kennedy
1bca4843fe
test dc_motor.cpp ( #2890 )
...
* use ipwm where possible
* mock ipwm
* initialize
* test
2021-07-01 09:21:18 -04:00
Matthew Kennedy
32f5ce6fb4
no fan if stopped engine ( #2822 )
...
* no fan if stopped engine
* config
* use config
* more tests
* merge
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-06-28 08:52:54 -04:00
Matthew Kennedy
cd5eb6a77c
Move AC logic out of FSIO ( #2872 )
...
* new impl
* remove fsio
* inject "is ac active" to fan
* include the correct code
* include
* test
* more AC features
* AC switch vs. actual AC indicators
* include
* duh
2021-06-27 18:51:34 -04:00
Matthew Kennedy
cd055a687d
dc motor api ( #2869 )
...
* iwpm
* dc motor has configure
* consume
* format
* spelling
2021-06-26 21:42:40 -04:00
Matthew Kennedy
2475cb283b
warnings ( #2862 )
...
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-06-25 20:58:38 -04:00
Matthew Kennedy
93adb8ea76
Etb rev limit ( #2820 )
...
* cfg
* impl
* a test
* don't break the ts channel
* text
2021-06-16 08:44:48 -04:00
Matthew Kennedy
a4973a6f3d
fan/AC idle improvements ( #2818 )
...
* fan 2 open loop bump
* we had an AC target bump all this time?!
* format
* enable test
* I can't type
2021-06-15 17:30:35 -04:00
Matthew Kennedy
097bf85faf
dual fans ( #2806 )
...
* remove fsio
* hard code impl
* test it
* enable fan with AC
* make commented stuff match
* second fan config
* second fan ui
* defaults
* impl
2021-06-13 08:06:45 -04:00
Matthew Kennedy
15d172ab08
apply open loop idle when in automatic mode ( #2745 )
...
* always apply open loop in closed loop
* simplify flags
* comment
* move
* comment
* missed one
* config for fan bump
* adjust miata defaults
* test fan/ac open loop
* idle CL tests
* test coasting
* test integration case
* fix merge
* put back reset logic for now
* s
* don't need that part
* I guess use OL as baseIdlePosition
* reset condition
2021-06-12 14:21:11 -04:00
Matthew Kennedy
c27549b2e8
hard coded fan logic ( #2805 )
...
* remove fsio
* hard code impl
* test it
* enable fan with AC
* make commented stuff match
2021-06-11 06:25:12 -04:00
Andrey
24131cdc0e
s/controlPin1/controlPin/
2021-06-05 16:19:01 -04:00
Matthew Kennedy
3ef969d743
warnings & assorted cleanup ( #2793 )
...
* lua hook
* validateBuffer
* tables
* simplify fsio table
* test
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-06-03 14:30:25 -04:00
Matthew Kennedy
981e8f5047
defaults cleanup: base engine & fuel ( #2790 )
...
* build
* fuel and base
* fix build
* cleanup
* extern
* tps/tps
* alternator
* tps
* iat timing
* cranking RPM
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-06-03 00:50:07 +03:00
Matthew Kennedy
f3c5ff6d54
idle fan/AC open loop bump ( #2785 )
...
* idle open loop ui section
* idle bump logic
* test fan/ac bump
2021-06-01 00:45:04 +03:00
Matthew Kennedy
39e4f70405
iac coast table ( #2784 )
2021-06-01 00:43:58 +03:00
Matthew Kennedy
7d773bfb1d
make the implementation match what the UI claims ( #2779 )
2021-05-31 07:37:02 -04:00
Matthew Kennedy
a50f8e0077
Idle test that fails ( #2781 )
...
* make member func
* failing test
2021-05-31 06:18:15 -04:00
Matthew Kennedy
d2f7e96747
code style ( #2780 )
2021-05-31 06:01:57 -04:00
Matthew Kennedy
ec8e1eee69
require redundant pedal ( #2758 )
...
* require redundant pedal
* return false
* I don't typing good
* tests
* tests
2021-05-30 19:19:57 -04:00
Matthew Kennedy
58b274c80c
safe boost duty ( #2764 )
2021-05-30 14:04:04 +03:00
Matthew Kennedy
2667810942
add pedal to gppwm ( #2748 )
...
* add pedal to gppwm
* string
2021-05-28 03:38:45 -04:00
Matthew Kennedy
13d2ee03bc
idle indicators ( #2692 )
...
* add coasting bit
* remove useless bit
2021-05-13 17:35:00 -04:00
Matthew Kennedy
dd6105cfa3
shrink canned tables ( #2651 )
...
* helper
* use it miata
* do type safe copy
* miata vvt
* etb
* default iat correction
* magic is afoot here
* hunchback
* misc
* neon
* neon
* aspire
* citroen
* neon
* missed one
* dead
* festiva
* remove andreyism
* very dead
* no need for copy of that function
* cleanup
2021-05-09 14:37:16 -04:00
Matthew Kennedy
8b30776016
remove stateChangeCallback from simplepwm ( #2644 )
...
* remove callback parameter from cj125
* remove from ext
* remove stateChangeCallback
* alt doesn't need that
* demorgan
* remove call
* bad cut/paste
* check the actual pin in the test
2021-05-07 09:38:41 -04:00
Matthew Kennedy
ca7308e910
move some stuff in to ccm ( #2645 )
...
* stuff in ccm
* used memory
2021-05-07 09:35:57 -04:00
Matthew Kennedy
c26987b96b
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
ad71016862
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
Matthew Kennedy
bd1c84fa62
Logging remove 3 ( #2568 )
...
* ts logger
* sensors
* wideband too
* missed one
* init
* motors, pid, etc
* vvt
* more
* idle
* missed one
* dynoview
* launch
* can
* console IO
* s
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-04-20 14:09:41 -04:00
Matthew Kennedy
5145ee4b62
logging cleanup 2: sensors, pid, etb, etc ( #2567 )
...
* ts logger
* sensors
* wideband too
* missed one
* init
* motors, pid, etc
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-04-18 20:02:32 -04:00
Matthew Kennedy
15a8dab795
gppwm zero option ( #2557 )
...
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-04-15 01:08:34 -04:00
Matthew Kennedy
f05b8ba675
More gppwm and fsio ( #2509 )
...
* gppwm aux temp
* fsio fuel flow rate and oil pressure
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-03-29 08:57:37 -04:00
Matthew Kennedy
1c473934b9
plumbing for multiple vvt ( #2488 )
...
* plumb multiple vvt
* fix test
* s
* fix barra while we're at it
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-03-25 07:39:23 -04:00
Matthew Kennedy
3072d54717
dead code, warnings ( #2461 )
2021-03-15 10:23:19 -04:00
Matthew Kennedy
a9c8b39dac
set 50% target for ETB autotune ( #2459 )
...
* 50% target for autotne
* pass target in
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-03-15 08:54:55 -04:00
Matthew Kennedy
1dd2180f76
VVT uses closed loop controller framework ( #2453 )
...
* vvt uses framework
* builds
* rename, update headers
* s
* testable
* write some basic tests
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-03-14 19:31:46 -04:00
Matthew Kennedy
428aaca5c5
ETB uses error accumulator ( #2435 )
...
* error accumulator
* makefile
* accumulate ETB error
* comment
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-03-08 19:18:35 -05:00
Matthew Kennedy
3d17e62d65
finish off vbatt -> sensor model ( #2433 )
...
* more vbatt
* s
* goodbye voltage
* makefile
* apparently that part was in use
* include
* mocking
2021-03-07 20:18:32 -05:00
Matthew Kennedy
b1873b3d8b
set all thread priorities in the same place ( #2412 )
...
* unify thread priority
* header
* mmc
2021-02-28 07:30:45 -05:00
rusefillc
02a49de390
aux to vvt rename
2021-02-17 08:53:39 -05:00
Matthew Kennedy
4a1d3de9a6
remove unused msg parameter ( #2360 )
...
* dead parameter
* last few
2021-02-16 09:32:16 -05:00
rusefillc
d87a38541e
M62T vanos support #2243
2021-02-10 21:44:21 -05:00
rusefillc
6416929fbd
M62T vanos support #2243
2021-02-10 19:51:14 -05:00
rusefi
6f065274e4
aux pid is now VVT
2021-02-10 12:41:38 -05:00
Matthew Kennedy
870857df36
add option to disable ETB if engine not spinning ( #2280 )
...
* config/ui
* trigger central mods
* implement
2021-02-05 17:19:57 -06:00
Matthew Kennedy
7bd3979595
eliminate idle's custom applyPinState ( #2273 )
...
* remove
* not static
2021-02-04 17:04:37 -05:00
Matthew Kennedy
9f0ebaac49
Proteus analog input ci ( #2271 )
...
* test vbatt
* test proteus vbatt
* tolerance
* these don't work on proteus
* new engine type
* test analog input
* more test points, less tolerance
* console build needs this file generated
* only include for hw ci builds
* wiring info
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-02-03 13:34:48 -06:00
rusefillc
449ff446e2
https://github.com/rusefi/rusefi/issues/2274
2021-02-03 11:37:47 -05:00
Matthew Kennedy
9151b0c6c1
fix #2269 ( #2272 )
...
* fix #2269
* cleanup
2021-02-03 08:04:22 -06:00
Matthew Kennedy
fa30efbc94
boost fixes ( #2230 )
...
* fix boost pin reinit
* call boost from periodic slow
* ui
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-01-18 07:04:14 -05:00
Matthew Kennedy
bdacda558c
fix instant rpm ( #2180 )
...
* consumers
* impl
* instant rpm in idle timing
2021-01-14 20:45:55 -05:00
Matthew Kennedy
868f0d47ac
Enable idle timing/ve tables based on idle phase logic ( #2213 )
...
* add helper
* advance
* ve
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-01-11 00:54:37 -05:00
Andrey G
2af32084f4
gpio helper ( #2195 )
...
* gpios: isBrainPinValid helper
* LCD HD44780: do not touch pins if DM_NONE or invalid gpio
* Fix isEnabled checks for GPS and Joystick
* LCD HD44780: writePad use this method wider
2021-01-08 20:01:26 -05:00
Matthew Kennedy
7a90692187
Idle timing uses phase logic, remove falloff ( #2169 )
...
* use phase computation
* move & simplify implementation
* test
* bad merge
* initialize
* wonderful changelog
* now unused parameter
* put back deadzone
* ui
* test deadzone
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-01-07 08:06:36 -05:00
rusefillc
46583b2a19
Revert "Idle timing PID uses phase logic ( #2156 )"
...
This reverts commit 9634a803
2020-12-31 12:22:54 -05:00
Matthew Kennedy
acdf6fdc85
Put map in the sensor model ( #2161 )
...
* hook up map
* check for init
* switch some consumers
* don't do limp for now
* oops
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-12-30 08:43:49 -05:00
Matthew Kennedy
342414a5f7
show when idle is closed loop ( #2160 )
...
* show when idle is closed loop
* semicolon
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-12-30 08:42:40 -05:00
Matthew Kennedy
9634a803f1
Idle timing PID uses phase logic ( #2156 )
...
* use phase computation
* move & simplify implementation
* test
* bad merge
* initialize
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-12-29 23:50:56 -05:00
Matthew Kennedy
c8ee9fcf3f
use phase computation ( #2152 )
2020-12-29 07:49:10 -05:00
Matthew Kennedy
1d4ccfff3f
add idle timing defaults ( #2155 )
...
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-12-29 07:47:18 -05:00
Matthew Kennedy
ec508d8f9d
don't write settings if cal didn't work ( #2154 )
...
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-12-28 08:03:10 -05:00
Matthew Kennedy
64d9b4b71a
limp manager can disable etb ( #2143 )
...
* move rev limit to limp manager
* call fatal error
* include order
* fix bug
* tests
* limp can disable etb
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-12-26 21:47:27 -05:00
Matthew Kennedy
898b7a82e0
move swtiches out of idle ( #2148 )
2020-12-26 21:31:41 -05:00
Matthew Kennedy
4961a25ab4
start integratig ( #2147 )
2020-12-26 19:44:40 -05:00
Matthew Kennedy
b9e96322c5
Idle refactor open loop ( #2146 )
...
* impl
* typo
* tests
2020-12-26 19:34:42 -05:00
Matthew Kennedy
542cb6a420
more testable idle logic ( #2140 )
...
* header
* test
* impl
2020-12-26 08:32:01 -05:00
rusefi
af6ad0757e
PROTEUS_QC_TEST_BOARD
2020-12-26 00:57:23 -05:00
Matthew Kennedy
6168bcea80
Fix gpio reinit race condition ( #2098 )
...
* fix unregister api for gpio
* consumers
* guard with a critical section
* index
* guard less
* unregister under lock
* fix reinit
* dead flag
* fix most tests
* initialize properly
* initialize properly
* assertions in tests
* fix message
* we must lock earlier to be truly safe
* this was using huge memory
* devirtualize
2020-12-18 17:18:12 -05:00
Matthew Kennedy
aeea50ada2
move target computation ( #2091 )
2020-12-17 17:46:51 -05:00
rusefi
eb8b1ba325
docs
2020-12-17 16:59:02 -05:00
rusefi
b3b5dfc398
fail fast!
2020-12-13 19:23:26 -05:00
Matthew Kennedy
bad0e6b949
require redundant TPS for ETB ( #2041 )
...
* Require redundant tps for ETB (#2037 )
* mod sensor api
* require redundancy
* fix tests
* check that it fails
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
* add a test that fails but should not
* fix the bug
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-12-08 06:24:20 -05:00
rusefi
2a1b585bfe
Revert "Revert "Split ETB in to interface + implementation headers ( #2040 )""
...
This reverts commit 4f4bb957
2020-12-07 01:27:27 -05:00
rusefi
bb3cb0ba22
Revert "Require redundant tps for ETB ( #2037 )"
...
This reverts commit 4f1085a8
2020-12-07 01:11:32 -05:00
rusefi
4f4bb95770
Revert "Split ETB in to interface + implementation headers ( #2040 )"
...
This reverts commit d9a82c09
2020-12-07 01:11:19 -05:00
Matthew Kennedy
d9a82c09af
Split ETB in to interface + implementation headers ( #2040 )
...
* split etb interface
* mocks
* fix master while we're at it
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-12-07 00:29:09 -05:00
Matthew Kennedy
4f1085a87a
Require redundant tps for ETB ( #2037 )
...
* mod sensor api
* require redundancy
* fix tests
* check that it fails
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-12-07 00:05:06 -05:00
rusefillc
2e8ae3ca94
refactoring
2020-12-06 19:04:23 -05:00
rusefillc
8739e192f5
basic hw in the loop - pwm self validation #2028
2020-12-06 18:39:50 -05:00
Matthew Kennedy
a5ba9d54dc
fix etb unit test idle hardware ( #1991 )
...
* move check to etb
* give it a sensor to read
2020-11-26 19:21:42 -05:00