Commit Graph

386 Commits

Author SHA1 Message Date
rusefillc 9efedc0ece https://github.com/rusefi/rusefi/issues/2274 2021-02-03 11:37:47 -05:00
Matthew Kennedy 3cf6b67b87 fix #2269 (#2272)
* fix #2269

* cleanup
2021-02-03 08:04:22 -06:00
Matthew Kennedy 4e6c841729 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 5bfee13c21 fix instant rpm (#2180)
* consumers

* impl

* instant rpm in idle timing
2021-01-14 20:45:55 -05:00
Matthew Kennedy d4965d16f3 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 b61ae75fe2 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 86d3746453 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 7c38714129 Revert "Idle timing PID uses phase logic (#2156)"
This reverts commit f1ee8b43
2020-12-31 12:22:54 -05:00
Matthew Kennedy 83266c904b 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 8492f99b91 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 f1ee8b431e 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 587536ee4a use phase computation (#2152) 2020-12-29 07:49:10 -05:00
Matthew Kennedy a76d399bf6 add idle timing defaults (#2155)
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-12-29 07:47:18 -05:00
Matthew Kennedy 4a42543a3f 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 5f84cf2a07 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 5e7dc71365 move swtiches out of idle (#2148) 2020-12-26 21:31:41 -05:00
Matthew Kennedy d20a54b463 start integratig (#2147) 2020-12-26 19:44:40 -05:00
Matthew Kennedy 560061e251 Idle refactor open loop (#2146)
* impl

* typo

* tests
2020-12-26 19:34:42 -05:00
Matthew Kennedy 93cc1e84c3 more testable idle logic (#2140)
* header

* test

* impl
2020-12-26 08:32:01 -05:00
rusefi c67af9632a PROTEUS_QC_TEST_BOARD 2020-12-26 00:57:23 -05:00
Matthew Kennedy 30fd52d82d 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 d3cbed60af move target computation (#2091) 2020-12-17 17:46:51 -05:00
rusefi e5e931b5bf docs 2020-12-17 16:59:02 -05:00
rusefi 6ec1021511 fail fast! 2020-12-13 19:23:26 -05:00
Matthew Kennedy d7c56f78a9 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 412e2b1d40 Revert "Revert "Split ETB in to interface + implementation headers (#2040)""
This reverts commit dae0b606
2020-12-07 01:27:27 -05:00
rusefi e38c6d3660 Revert "Require redundant tps for ETB (#2037)"
This reverts commit c08d0b5e
2020-12-07 01:11:32 -05:00
rusefi dae0b606cb Revert "Split ETB in to interface + implementation headers (#2040)"
This reverts commit 53cbeedb
2020-12-07 01:11:19 -05:00
Matthew Kennedy 53cbeedb99 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 c08d0b5ed8 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 93e69bea93 refactoring 2020-12-06 19:04:23 -05:00
rusefillc d86c53fecf basic hw in the loop - pwm self validation #2028 2020-12-06 18:39:50 -05:00
Matthew Kennedy cf1c99b36c 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
rusefillc 7b8d20108f Starter is engaged on start-up in pull-up configuration #1969 2020-11-26 10:41:22 -05:00
Matthew Kennedy 92e36e66b5 fix etb wastegate percent output (#1988)
* wastegate etb should use percent

* percent_t

* fix test
2020-11-25 21:14:06 -05:00
Matthew Kennedy ae53889d10 Boost tolerance (#1986)
* tolerate invalid closed loop config when in open loop mode

* fix test
2020-11-25 07:27:24 -05:00
Matthew Kennedy 6f9a84e79c adjust boost (#1975) 2020-11-22 18:30:19 -05:00
Matthew Kennedy ad6c24a9cc no feed forward for wastegate (#1971)
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-11-19 20:51:30 -05:00
rusefillc ab75be8742 Something something unit test ETB does not work #1966 2020-11-18 20:12:58 -05:00
rusefillc 2af3cdf70e Starter seems to be engaged forever #1965 2020-11-18 20:01:02 -05:00
rusefillc c30d0d31f3 Starter seems to be engaged forever #1965 2020-11-18 19:51:51 -05:00
Matthew Kennedy 7d6fe4ff8e undo 1946 (#1957) 2020-11-17 17:07:56 -05:00
rusefillc 8a419291c6 DC not ETB refactoring 2020-11-16 20:07:12 -05:00
rusefillc 851478f846 DC not ETB refactoring 2020-11-16 20:05:35 -05:00
rusefillc 3fef5606ed DC not ETB refactoring 2020-11-16 19:51:36 -05:00
rusefillc c6efcb6013 DC not ETB refactoring 2020-11-16 19:43:00 -05:00
rusefillc 499d93ed49 DC not ETB refactoring 2020-11-16 19:28:30 -05:00
Matthew Kennedy 89c56a00fa minor perf tweaks (#1946)
* only start PWM if needed

* put important stuff first

* use conversion

* this broke the logic
2020-11-16 00:06:11 -05:00
Matthew Kennedy 605269c358 remove idle thread; just call from periodicSlowCallback (#1924)
* remove thread

* remove ui
2020-11-11 21:47:19 -05:00
Matthew Kennedy 74d2af9c6c Move all DECLARE_ENGINE_PTR etc to one place (#1937)
* restructure

* guard c++

* idle too

* status_loop.h
2020-11-11 19:06:04 -05:00
Matthew Kennedy e8bb0cfd00 extract idle hardware to its own file (#1923)
* extract idle hardware

* should fix the build
2020-11-03 18:06:32 -05:00
rusefi 66b61f76a7 Output pin init/deinit needs a linked list #1803 2020-11-03 00:09:42 -05:00
Matthew Kennedy 38b6e9ba2b gppwm debug (#1895)
* dbg gppwm

* fix channel

* TS guard
2020-10-21 22:49:38 -04:00
rusefi 73d53db758 code style 2020-10-21 22:13:18 -04:00
rusefi 4343f96fd4 refactoring 2020-10-19 22:44:44 -04:00
Matthew Kennedy 4d1c331eca second PID config for wastegate (#1889)
* remove

* cleanup

* implement ETB parts

* hook up to boost controller

* tests

* consume

* add cfg field

* ui maybe

* fix

* fix

* add wastegate config test
2020-10-19 08:04:27 -04:00
Matthew Kennedy 5337d9f723 Etb wastegate hookup (#1888)
* remove

* cleanup

* implement ETB parts

* hook up to boost controller

* tests
2020-10-18 21:57:04 -04:00
Matthew Kennedy 8c11a6fb4b remove (#1887) 2020-10-18 20:49:42 -04:00
Matthew Kennedy 2c23085715 Etb function cfg: actually read config (#1884)
* two throttles one thread

* look at all this RAM!

* add enum

* switch from index to function

* test fixup

* improve init logic

* remove old vw idle mode bit

* add config

* better spot for it

* use config init values

* handle null controller array

* fatal error testability

* test new init config

* defaults

* fix for default config
2020-10-18 17:26:38 -04:00
Matthew Kennedy 87d34ffcee more safe parts probably (#1883) 2020-10-15 22:04:42 -04:00
Matthew Kennedy abfa17216b etb function config 1 (#1881)
* this should all be safe...

* test fix
2020-10-14 22:02:09 -04:00
rusefillc 53c001d541 revering functional part of
Etb function cfg, try again #1860
try again from #1831
2020-10-08 17:09:00 -04:00
Matthew Kennedy cca175c6ea Etb function cfg, try again (#1860)
* two throttles one thread

* look at all this RAM!

* add enum

* switch from index to function

* test fixup

* improve init logic

* remove old vw idle mode bit

* add config

* better spot for it

* use config init values

* handle null controller array

* fatal error testability

* test new init config

* defaults

* fix for default config
2020-10-08 14:12:03 -04:00
rusefillc aee984d0c2 HW CI has failed 11 times since Oct 2 #1849
Revert "ETB function config (#1831)"

This reverts commit fd7dae8a
2020-10-03 22:00:00 -04:00
Matthew Kennedy fd7dae8ab8 ETB function config (#1831)
* two throttles one thread

* look at all this RAM!

* add enum

* switch from index to function

* test fixup

* improve init logic

* remove old vw idle mode bit

* add config

* better spot for it

* use config init values

* handle null controller array

* fatal error testability

* test new init config

* defaults

* fix for default config
2020-10-02 20:51:02 -04:00
Matthew Kennedy b79c0fefe5 replace ETB index with function enum (#1807)
* two throttles one thread

* look at all this RAM!

* add enum

* switch from index to function

* test fixup

* improve init logic

* remove old vw idle mode bit
2020-09-28 16:33:07 -04:00
Matthew Kennedy 85304392dd two throttles one thread (#1806)
* two throttles one thread

* look at all this RAM!
2020-09-18 13:47:49 -04:00
Matthew Kennedy 8079e5f292 scale tables using type system (#1776)
* store scale in the type

* efi ratio

* boost control scaling

* fix boost tests
2020-09-10 18:44:10 -04:00
rusefi d63d0e185f merge got confused 2020-09-07 15:05:47 -04:00
rusefi 5243811711 Merge remote-tracking branch 'origin/Hellen_fork_point' into master
# Conflicts:
#	firmware/controllers/algo/engine.h
#	firmware/hw_layer/drivers/drivers.mk
#	firmware/hw_layer/stepper.h
#	firmware/integration/rusefi_config.txt
#	firmware/tunerstudio/rusefi.input
#	simulator/simulator/efifeatures.h
2020-09-07 15:02:11 -04:00
rusefi 16580f0afd Hellen says isIdleMotorBusy
(cherry picked from commit 7601952548)
2020-09-07 14:43:29 -04:00
rusefi 7601952548 Hellen says isIdleMotorBusy 2020-09-07 14:12:21 -04:00
Matthew Kennedy fc02c2bdf4 fix broken master, inject engine ptr to rpmcalculator (#1759)
* fix

* oops
2020-09-05 18:49:42 -04:00
rusefi be49f46057 less hacky testing implementation 2020-09-03 22:52:29 -04:00
rusefi c476cd3b95 refactoring 2020-09-03 19:29:15 -04:00
rusefi 7d53f5859d VVT support for VAG trigger #883 2020-08-25 00:59:07 -04:00
Matthew Kennedy a2e53e8d35 guard (#1726)
* implement

* add bench mode

* add ts cal mode

* TS impl

* include guard

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-08-23 23:46:33 -04:00
Matthew Kennedy cc25333fae Auto cal dual etb (#1725)
* implement

* add bench mode

* add ts cal mode

* TS impl

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-08-23 23:41:35 -04:00
Matthew Kennedy 275def10fe parameter names 2020-07-29 02:22:31 -07:00
rusefi 39ba9a9f19 Weird VAG: DC motor idle valve not ETB #1637
misc progress
2020-07-26 15:22:14 -04:00
rusefi 2218be0d72 Weird VAG: DC motor idle valve not ETB #1637
etbTarget gauge in DC idle mode
2020-07-26 15:07:45 -04:00
rusefi bd1c43ab8f Weird VAG: DC motor idle valve not ETB #1637
should be better this way
2020-07-26 12:19:30 -04:00
rusefi 07df0c78a8 Weird VAG: DC motor idle valve not ETB
#1637
Seattle we might have a problem!
2020-07-26 12:03:36 -04:00
rusefi 0302be40ed Weird VAG: DC motor idle valve not ETB #1637 2020-07-26 10:54:51 -04:00
Matthew Kennedy e1c23e0e99 make reality match the test 2020-07-26 03:15:17 -07:00
Matthew Kennedy ab64d78eec clamp idle in VW mode 2020-07-26 03:05:59 -07:00
Matthew Kennedy 79b82da94d implement 2020-07-26 02:55:35 -07:00
Matthew Kennedy 5e762ad258 add new options 2020-07-23 02:51:08 -07:00
Andrei 57f6ad1fdb Idle PID improvements 2020-07-22 18:39:09 +03:00
rusefi 93d015598a EFI_IDLE_INCREMENTAL_PID_CIC should be a runtime parameter #806 2020-07-12 21:35:01 -04:00
rusefi ffb559d9b3 EFI_IDLE_INCREMENTAL_PID_CIC should be a runtime parameter #806 2020-07-12 21:13:04 -04:00
rusefi d70b4a5cb1 EFI_IDLE_INCREMENTAL_PID_CIC should be a runtime parameter #806 2020-07-12 19:06:26 -04:00
rusefi 93f85b0b93 EFI_IDLE_INCREMENTAL_PID_CIC should be a runtime parameter #806 2020-07-12 18:25:48 -04:00
rusefi eff12bbeb1 EFI_IDLE_INCREMENTAL_PID_CIC should be a runtime parameter #806 2020-07-12 18:11:10 -04:00
rusefi e18a03766b https://rusefi.com/forum/viewtopic.php?p=37401#p37401 2020-07-10 15:06:55 -04:00
rusefi a1b9d58361 https://rusefi.com/forum/viewtopic.php?p=37401#p37401 2020-07-10 14:19:51 -04:00
rusefi f2eadae4ea https://rusefi.com/forum/viewtopic.php?p=37401#p37401 2020-07-10 14:03:07 -04:00
rusefi 8bcd46291f migrate amazing idle from FSIO to less opaque TS #1581 2020-07-08 01:12:08 -04:00
rusefi 4e24b3ece1 idle_min through FSIO not working as intended
#1553

we now re-activated idle PID even in deadzone for half a second after A/C toggle
2020-07-06 16:40:16 -04:00
Matthew Kennedy 1bdc5fbaaa Switch fueling to new axes (#1574)
* switch tables

* missed one
2020-07-05 18:14:55 -04:00