Commit Graph

329 Commits

Author SHA1 Message Date
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
rusefi bd39351055 idle_min through FSIO not working as intended #1553 2020-07-04 22:01:12 -04:00
rusefi c6d0a015cc idle_min through FSIO not working as intended #1553
better idle state logging
2020-07-01 19:10:42 -04:00
rusefi 14fc5a54df idle_min through FSIO not working as intended #1553
making logging less confusing
2020-07-01 16:37:25 -04:00
rusefi 2c83db49fb restoring ldmp 2020-06-17 19:03:10 -04:00
Matthew Kennedy c46a6e5c0e only setup etb if primary sensor configured instead of proxy (#1489)
* only setup etb if primary sensor configured instead of proxy

* fix test

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-06-16 21:38:09 -04:00
Matthew Kennedy db29a3523a Fix gppwm properly (#1487)
* directly control output in onoff mode

* test fixing
2020-06-11 20:43:26 -04:00
rusefi ad0c6355bb docs 2020-06-01 08:50:54 -04:00
Matthew Kennedy d13bd0b77c Hardware pwm (#1283)
* hard pwm

* fix, comments

* PC6-9 and PD12-15

* PB6-9

* dynamic frequency

* f7 mcuconf

* format

* relocate to common, support variable frequency

* error handling

* oops

* fix test build

* noop kinetis

* better guards

* guard for bl

* guards don't work if they have typos

* more mapping

* oops

* don't use for slow pwm

* enable pwm

* guard properly

* save a little memory

* use less mem

* correct timers

* all your ram are belong to us

* update limit & comment

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-05-28 16:02:41 -04:00
rusefi 804f4b9db5 better file name 2020-05-25 13:02:05 -04:00
Matthew Kennedy 441fe43dab warnings (#1462)
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-05-21 01:08:07 -04:00
Matthew Kennedy ce2beafb5f Redundant tps (#1427)
* add redundant sensor

* add tests

* add configure, info printing

* tests

* tests

* partial hookup

* fix

* fix

* bad makefile merge

* use second TPS config

* update test

* update test

* sensor names

* set second pin by default

* fix auto cal

* auto cal both sensors

* add reconfigure of secondary sensors

* gobblin' up your ram

* slow down write a little bit

* put split in debug gauge

* s

Co-authored-by: Matthew Kennedy <matthew@mck-mbp-15.local>
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-05-18 14:32:00 -04:00
rusefi 74d5799626 refactoring: extracting magic constant 2020-05-08 22:05:44 -04:00
rusefi 9d2cbd682b helping build 2020-05-08 21:39:35 -04:00
dron0gus 35af083a6e idle thread: debug output for bipolar stepper (#1409) 2020-05-08 20:05:05 -04:00
dron0gus 7007627b70 [SAFE] Debug cleanups (#1403)
* electronic throttle: inprove debug

* idle thread: show debug info for configured idle driver

* gpio-chips: make private functions static
2020-05-06 20:06:50 -04:00
Matthew Kennedy 6f3736f246 Rewrite boost control in new closed loop framework (#1342)
* rewrite boost

* test

* fix build

* tests

* open loop test

* test closed loop

* fix names

* typo

* tests

* mock boost setOutput

* needs more virtual

* fix boost logic

* switch to TPS based open loop

* fix test

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-05-06 08:40:42 -04:00
Matthew Kennedy 950ff9cb80 ETB auto-PID: auto set values in TS (#1400)
* switch to thread

* actually use default frequency define

* crank ADC too

* make space in RAM

* remove TS field

* this should work for test

* auto cal

* wire up bench testing

* auto gains too

* s

* fix

* rearrange a bit

* inject

* remove unused bit

* mock repair

* move

* add maintainconstantvalue

* add disable button

* cleaning

* move state inside

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-05-06 08:39:02 -04:00
Matthew Kennedy 5ac535c5e5 Support 4 h-bridges (#1392)
* update dc motor api

* add more etbio

* get out of two arrays

* hand generate enough

* forgot engine param

* ram

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-05-02 17:54:28 -04:00
rusefi 93ee6c36e3 https://github.com/rusefi/rusefi_documentation/issues/37 2020-04-29 18:41:40 -04:00
Matthew Kennedy fefafd61b8 TPS Auto Calibration with ETB (#1382)
* switch to thread

* actually use default frequency define

* crank ADC too

* make space in RAM

* remove TS field

* this should work for test

* auto cal

* wire up bench testing

* s

* fix

* rearrange a bit

* inject

* remove unused bit

* mock repair

* guard for ECUs without ETB
2020-04-28 19:31:41 -04:00
Matthew Kennedy dee2568fd5 Minor ETB improvements (#1381)
* fix pid reset and pedal failure

* pause control later

* test pauseEtbControl

* update tooltip + field name

* update test
2020-04-28 16:52:40 -04:00
rusefi 4460d92a30 useful content from Move ETB control to a thread #1374 2020-04-28 08:05:18 -04:00
Matthew Kennedy 7e067eb0b5 Move ETB control to a thread (#1374)
* switch to thread

* actually use default frequency define

* crank ADC too

* make space in RAM

* remove TS field

* this should work for test

* fix dt

* re-resize ram
2020-04-28 07:22:31 -04:00
rusefi 0ec3ce595e dead code 2020-04-26 17:40:12 -04:00
Matthew Kennedy 738e53442d General purpose PWM: implementation & tests (#1366)
* config

* significant digits

* renumber enum, no need for a "none"

* ui

* impl base

* error handle MAP

* init & update

* don't need arg

* don't lie about sensor

* fix test build

* test stub

* initialize

* null check

* fix clamping

* test output

* types & enums

* don't need param

* test getOutput

* fix

* output pin instead of brain pin

* default config
2020-04-26 14:06:28 -04:00
Matthew Kennedy 2fbedc000f ETB autotune in its own function (#1350)
* pull out autotune

* oops
2020-04-22 22:22:28 -04:00
Matthew Kennedy b1741bdd6e Improve ETB idle control (#1319)
* compress idle pos

* fix tests for new behavior
2020-04-20 17:29:03 -04:00
Matthew Kennedy ce08650f65 Inject idle to ETB (#1335)
* inject idle position

* pointer

* etb idle tests

* extract mocks

* ops

* test negative case too

* don't convert for etb

* guard
2020-04-20 16:26:35 -04:00
rusefi 1bcbed3cb5 reducing code duplication 2020-04-20 15:57:03 -04:00
Matthew Kennedy 3418356b6b ETB: inject pedal map (#1334)
* add clampf

* more tests

* public

* missed a mock

* fix output duty clamping

* do it that way

* more

* ah ha!

* test negative too

* clamp pedal

* inject pedal map

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-04-20 14:34:45 -04:00
rusefi ceb8b6d9b4 idle duty cycle clamping 2020-04-20 14:11:40 -04:00
Matthew Kennedy d17afd3a63 ETB testing: output, position clamping (#1333)
* add clampf

* more tests

* public

* missed a mock

* fix output duty clamping

* do it that way

* more

* ah ha!

* test negative too

* clamp pedal

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-04-20 13:52:20 -04:00
rusefi 385f4b12e8 Better handling in case of ETB idle without ETB #1332 2020-04-19 23:55:27 -04:00
Matthew Kennedy bb24782bc2 rewrite etb tests with gmock (#1330) 2020-04-19 20:32:41 -04:00
Matthew Kennedy 830f03c003 Closed loop controller base & ETB testing (#1322)
* closed loop controller base

* etb tps test

* closed loop controller tests

* test support

* update gtest

* fix for change

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-04-19 17:18:47 -04:00
Matthew Kennedy 83592f0dff New clt consumers part 1 (#1301)
* idle

* CLT test prep

* idle target

* header

* air interpolate

* ancient comment

* fuel cut

* fuel cut, idle tests

* cleanup
2020-04-15 09:48:17 -04:00
Matthew Kennedy d666743ab5 filter ETB autotune results (#1281)
* Astrom-Hagglund

* enums

* comments

* dead

* fix

* changed enum

* ts guard

* safety

* etb autotune debug channels

* filter results

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-04-11 22:28:50 -04:00
Matthew Kennedy 9bbb7bc497 etb autotune (#1274)
* Astrom-Hagglund

* enums

* comments

* dead

* fix

* changed enum

* ts guard

* safety

* etb autotune debug channels

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-04-11 22:15:49 -04:00
Matthew Kennedy 1a59950240 support ETB disable pin (#1273)
* config & hand gen

* board configs

* add dc motor support

* initialization

* also set duty to zero

* use disable in etb

* fix proteus default

* add TS fields

* I guess we needed 8 bytes

* :D

* comment

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-04-10 17:27:13 -04:00
Matthew Kennedy b934cb666b simplify (#1275) 2020-04-10 08:12:16 -04:00
dron0gus 281e8ac754 idle: add two coil idle valve support (#1271) 2020-04-06 17:55:41 -04:00
Matthew Kennedy 95ef31da67 Goodbye, old TPS (#1266)
* clear out tps

* boost control

* aux valves

* launch, aux valves

* unused field
2020-04-05 19:33:33 -04:00
Matthew Kennedy 44bb09d1a4 yet more tps consumers (#1258)
* advance_map

* tests

* unneeded

* idle

* use driver intent instead

* and obd and lcd

* engine load

* ve lookup

* unused

* oops we needed that

* oops needed that too

* mocking

* test mocks

* oops

* helps to use the right sensor

* and cylinder cleanup

* fuel math

* typo

* old tests

* kill dead stuff

* cleanup

* more

* fix

* test

* s

* fix signature

* fix test

* comment

* priming pulse

* remove mock tps

* remove more dead

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-04-05 09:11:25 -04:00
Matthew Kennedy 8badc4cca3 remove ETB controlPinMode (#1260) 2020-04-04 08:41:45 -04:00
Matthew Kennedy 9a21262cf8 TPS consumers: idle and ignition and obd2 and lcd (#1254)
* advance_map

* tests

* unneeded

* idle

* use driver intent instead

* and obd and lcd

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-04-03 19:59:08 -04:00
Matthew Kennedy cd3dc7f91b fix (#1251) 2020-04-03 07:48:12 -04:00
Matthew Kennedy d16ff88e30 run ETB on new TPS (#1248)
* run ETB on new TPS

* why did we include all those...?

* init tps for etb test

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-04-02 21:33:49 -04:00
Matthew Kennedy 7e4f4ca97e Replace hasPedalPositionSensor (#1245)
* remove

* add Sensor::hasSensor

* consume in etb

* remove unused state

* don't use it there either

* format

* fix up tests

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-04-02 08:04:12 -04:00
rusefi 48baff1789 partial revert 2020-04-02 00:37:02 -04:00
rusefi be5b4fb3c6 less ETB in case of critical 2020-04-02 00:32:03 -04:00
Matthew Kennedy 8235d8d765 Fully switch acc pedal to new sensors (#1212)
* proxy sensor

* header

* idle

* can

* settings

* remove old mocking

* remove old impl

* etb

* oops, gotta actually register it

* fix test

* structured bindings ftw!

* driver intent for stepper

* tear out old

* oops too much
2020-04-01 20:21:03 -04:00
Matthew Kennedy 67f01ff9c7 Friendlier pin names (#1233)
* enable TS error readout

* friendlier text for common errors

* improve comment

* friendlier ADC errors

* ign/inj names

* more pin names
2020-03-29 19:07:07 -04:00
Matthew Kennedy 0ac3e06149 cleanup extern mess (#1237)
* cleanup

* move outside define
2020-03-29 19:06:03 -04:00
rusefi c6ac5ed888 progress 2020-03-28 20:56:58 -04:00
rusefi 612131cbd5 #203 2020-03-26 19:22:14 -04:00
Matthew Kennedy b7033bbde9 Finally rename injector_central to bench_test (#1229)
* bench test rename

* rename consumers

* good lord what are all of these externs doing

* fix tests
2020-03-26 08:03:55 -04:00
Matthew Kennedy 2e12329199 Default to applyPinState (#1219)
* make applyPinState default

* consumers

* format
2020-03-25 18:14:09 -04:00